.auth-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0c10c7;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1.5rem;animation:authFadeIn .22s ease-out}.auth-modal-dialog{position:relative;width:100%;max-width:480px;background:#16181df2;border:1px solid rgba(0,212,255,.25);border-radius:16px;box-shadow:0 20px 60px #000000b3,0 0 30px #00d4ff1f;max-height:92vh;overflow-y:auto;animation:authScaleUp .25s cubic-bezier(.16,1,.3,1)}.auth-modal-close-btn{position:absolute;top:1.25rem;right:1.25rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#868e96;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;z-index:10}.auth-modal-close-btn:hover{background:#00d4ff26;border-color:#00d4ff;color:#00d4ff;transform:rotate(90deg)}.auth-card{padding:2.25rem 2.25rem 2rem;box-sizing:border-box;width:100%}.auth-card.in-modal{padding:2.5rem 2.25rem 2rem}.auth-card-header{text-align:center;margin-bottom:1.6rem}.auth-badge{display:inline-flex;align-items:center;gap:.5rem;background:#00d4ff14;border:1px solid rgba(0,212,255,.3);color:#00d4ff;padding:.35rem .85rem;border-radius:9999px;font-size:.72rem;font-weight:800;letter-spacing:2px;text-transform:uppercase;margin-bottom:.85rem}.auth-badge-dot{width:6px;height:6px;border-radius:50%;background:#00d4ff;box-shadow:0 0 8px #00d4ff}.auth-card-title{font-size:1.65rem;font-weight:900;color:#fff;margin:0 0 .5rem;letter-spacing:-.5px}.auth-card-subtitle{font-size:.88rem;color:#868e96;line-height:1.5;margin:0}.auth-tabs{display:flex;background:#0a0c10cc;border:1px solid #2a2e35;border-radius:10px;padding:4px;margin-bottom:1.5rem}.auth-tab{flex:1;padding:.65rem .75rem;border-radius:8px;background:transparent;border:none;color:#868e96;font-size:.85rem;font-weight:700;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:1px}.auth-tab.active{background:#00d4ff1f;color:#00d4ff;border:1px solid rgba(0,212,255,.3);box-shadow:0 0 15px #00d4ff26}.auth-tab:hover:not(.active){color:#fff}.auth-social-buttons{display:flex;flex-direction:column;width:100%;margin-bottom:1.25rem}.auth-social-btn{display:flex;align-items:center;justify-content:center;width:100%;gap:.85rem;padding:.85rem 1.25rem;background:#ffffff0a;border:1px solid #2a2e35;border-radius:10px;color:#fff;font-size:.92rem;font-weight:600;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);box-sizing:border-box}.auth-social-btn:hover:not(:disabled){background:#ffffff14;border-color:#4285f499;box-shadow:0 4px 18px #4285f433;transform:translateY(-1px)}.auth-social-btn:disabled{opacity:.6;cursor:not-allowed}.auth-social-icon{display:flex;align-items:center;justify-content:center}.auth-divider{display:flex;align-items:center;text-align:center;margin:.5rem 0 1.25rem;color:#6c757d;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px}.auth-divider:before,.auth-divider:after{content:"";flex:1;border-bottom:1px solid rgba(255,255,255,.08)}.auth-divider span{padding:0 .85rem}.auth-alert{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border-radius:10px;font-size:.86rem;margin-bottom:1.25rem;line-height:1.4}.auth-alert.error{background:#ef44441f;border:1px solid rgba(239,68,68,.35);color:#fca5a5}.auth-alert.success{background:#10b9811f;border:1px solid rgba(16,185,129,.35);color:#6ee7b7}.alert-icon{display:flex;align-items:center;flex-shrink:0}.auth-form{display:flex;flex-direction:column;gap:1.15rem}.auth-form-group{display:flex;flex-direction:column;gap:.45rem}.auth-form-label{font-size:.78rem;font-weight:700;color:#adb5bd;text-transform:uppercase;letter-spacing:1px}.form-label-row{display:flex;justify-content:space-between;align-items:center}.auth-link-btn{background:transparent;border:none;color:#00d4ff;font-size:.78rem;font-weight:600;cursor:pointer;padding:0;text-transform:none;transition:opacity .2s ease}.auth-link-btn:hover{text-decoration:underline;opacity:.85}.auth-input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:1rem;color:#6c757d;pointer-events:none;display:flex;align-items:center}.auth-input{width:100%;padding:.85rem 1rem .85rem 2.75rem;background:#0f1115cc;border:1px solid #2a2e35;border-radius:10px;color:#fff;font-size:.92rem;font-family:inherit;transition:all .25s ease;box-sizing:border-box}.auth-input:focus{outline:none;border-color:#00d4ff;box-shadow:0 0 0 3px #00d4ff33;background:#16181df2}.auth-input:-webkit-autofill,.auth-input:-webkit-autofill:hover,.auth-input:-webkit-autofill:focus,.auth-input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px #0f1115 inset!important;box-shadow:0 0 0 1000px #0f1115 inset!important;-webkit-text-fill-color:#ffffff!important;color:#fff!important;caret-color:#00d4ff!important;border-color:#00d4ff66!important;transition:background-color 50000s ease-in-out 0s}.auth-input:autofill,.auth-input:autofill:hover,.auth-input:autofill:focus,.auth-input:autofill:active{box-shadow:0 0 0 1000px #0f1115 inset!important;color:#fff!important;border-color:#00d4ff66!important;filter:none!important}.auth-input::placeholder{color:#495057}.password-toggle-btn{position:absolute;right:.85rem;background:transparent;border:none;color:#6c757d;cursor:pointer;padding:.3rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.password-toggle-btn:hover{color:#fff}.auth-submit-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.5rem;background:#00d4ff;color:#0b1118;font-weight:800;font-size:.9rem;text-transform:uppercase;letter-spacing:1.5px;border:none;border-radius:10px;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 18px #00d4ff4d;margin-top:.5rem}.auth-submit-btn:hover:not(:disabled){background:#3df;transform:translateY(-2px);box-shadow:0 6px 24px #00d4ff73}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed}.btn-arrow{display:flex;align-items:center;transition:transform .2s ease}.auth-submit-btn:hover .btn-arrow{transform:translate(3px)}.auth-card-footer{text-align:center;margin-top:1.6rem;font-size:.86rem;color:#868e96}.auth-card-footer p{margin:0}.auth-inline-link{background:transparent;border:none;color:#00d4ff;font-weight:700;cursor:pointer;padding:0;font-family:inherit;transition:opacity .2s ease}.auth-inline-link:hover{text-decoration:underline;opacity:.85}.auth-page-wrapper{min-height:100vh;display:flex;flex-direction:column;position:relative;background-color:#16181d;color:#fff}.auth-page-nav{padding:30px 50px;display:flex;justify-content:space-between;align-items:center;z-index:10}.auth-back-link{color:#868e96;text-decoration:none;font-size:.85rem;font-weight:800;letter-spacing:2px;transition:all .2s ease}.auth-back-link:hover{color:#00d4ff;text-shadow:0 0 8px rgba(0,212,255,.4)}.auth-brand-link{display:flex;align-items:center;gap:15px;text-decoration:none}.auth-brand-logo{height:48px;width:auto}.auth-brand-name{color:#fff;font-weight:900;font-size:1.25rem;letter-spacing:1px}.auth-page-main{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem 1.5rem 4rem;z-index:10}.auth-page-main .auth-card{background:#16181deb;border:1px solid #2a2e35;border-radius:16px;max-width:480px;box-shadow:0 25px 60px #0009,0 0 25px #00d4ff14}.user-menu-container{position:relative;display:inline-block}.user-profile-trigger{display:flex;align-items:center;gap:10px;background:#ffffff08;border:1px solid rgba(0,212,255,.3);padding:6px 14px 6px 8px;border-radius:30px;color:#fff;cursor:pointer;transition:all .25s ease;font-family:inherit}.user-profile-trigger:hover{background:#00d4ff14;border-color:#00d4ff;box-shadow:0 0 15px #00d4ff33}.user-avatar-img{width:32px;height:32px;border-radius:50%;object-fit:cover;border:1px solid #00d4ff}.user-avatar-placeholder{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#00d4ff,#07a);color:#000;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:.9rem}.user-display-name{font-size:.85rem;font-weight:700;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;background:#16181dfa;border:1px solid rgba(0,212,255,.25);border-radius:12px;box-shadow:0 15px 40px #000000b3,0 0 20px #00d4ff1a;padding:.6rem;z-index:100;animation:authFadeIn .2s ease-out}.user-dropdown-header{padding:.6rem .8rem}.dropdown-user-name{font-weight:800;color:#fff;font-size:.9rem}.dropdown-user-email{font-size:.78rem;color:#868e96;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}.user-dropdown-divider{height:1px;background:#ffffff14;margin:.4rem 0}.user-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:.65rem .8rem;color:#adb5bd;text-decoration:none;font-size:.85rem;font-weight:600;border-radius:8px;background:transparent;border:none;cursor:pointer;transition:all .2s ease;font-family:inherit;box-sizing:border-box}.user-dropdown-item:hover{background:#00d4ff1a;color:#00d4ff}.user-dropdown-item.logout-item:hover{background:#ef44441f;color:#fca5a5}.profile-container{max-width:800px;width:100%;margin:20px auto 60px;padding:0 25px;z-index:10}.profile-card{background:#16181de6;border:1px solid rgba(0,212,255,.2);border-radius:16px;padding:2.5rem;box-shadow:0 20px 50px #0009}.profile-header{display:flex;align-items:center;gap:24px;margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.08)}.profile-avatar-wrap{flex-shrink:0}.profile-avatar-large{width:84px;height:84px;border-radius:50%;object-fit:cover;border:2px solid #00d4ff;box-shadow:0 0 20px #00d4ff4d}.profile-avatar-placeholder-large{width:84px;height:84px;border-radius:50%;background:linear-gradient(135deg,#00d4ff,#07a);color:#000;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:2.4rem;box-shadow:0 0 20px #00d4ff4d}.profile-badge{display:inline-flex;align-items:center;gap:6px;background:#00d4ff14;border:1px solid rgba(0,212,255,.3);color:#00d4ff;padding:3px 10px;border-radius:20px;font-size:.72rem;font-weight:800;letter-spacing:1.5px;margin-bottom:6px}.profile-name{margin:0 0 6px;font-size:1.75rem;font-weight:900;color:#fff}.profile-email-row{display:flex;align-items:center;gap:8px;color:#868e96;font-size:.9rem}.profile-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:2rem}.profile-stat-box{background:#0a0c1099;border:1px solid #2a2e35;border-radius:12px;padding:1.25rem 1rem;display:flex;flex-direction:column;gap:6px}.stat-label{font-size:.7rem;font-weight:700;color:#6c757d;letter-spacing:1px}.stat-value{font-size:.95rem;font-weight:700;color:#fff}.text-accent{color:#00d4ff}.profile-form{display:flex;flex-direction:column;gap:1.25rem}.section-title{margin:0;font-size:1.1rem;font-weight:800;color:#fff;letter-spacing:.5px}.profile-actions-row{display:flex;justify-content:space-between;align-items:center;margin-top:1rem}.profile-save-btn{background:#00d4ff;color:#000;font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:1.5px;padding:10px 24px;border-radius:30px;border:none;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 15px #00d4ff40}.profile-save-btn:hover:not(:disabled){background:#3df;box-shadow:0 6px 20px #00d4ff66;transform:translateY(-2px)}.profile-logout-btn{display:flex;align-items:center;gap:8px;background:transparent;border:1px solid rgba(239,68,68,.4);color:#fca5a5;font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:1.5px;padding:10px 20px;border-radius:30px;cursor:pointer;transition:all .25s ease}.profile-logout-btn:hover{background:#ef444426;border-color:#ef4444;color:#ef4444}@keyframes authFadeIn{0%{opacity:0}to{opacity:1}}@keyframes authScaleUp{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.profile-avatar-clickable{position:relative;display:inline-block;cursor:pointer;border-radius:50%;overflow:hidden}.avatar-edit-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#00d4ff;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;opacity:0;transition:opacity .2s ease;border-radius:50%}.profile-avatar-clickable:hover .avatar-edit-overlay{opacity:1}.profile-tabs{display:flex;gap:10px;background:#0a0c10bf;border:1px solid #2a2e35;border-radius:12px;padding:5px;margin-bottom:2rem}.profile-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:.75rem 1rem;border-radius:8px;background:transparent;border:none;color:#868e96;font-size:.88rem;font-weight:700;cursor:pointer;transition:all .2s ease;font-family:inherit}.profile-tab.active{background:#00d4ff1f;color:#00d4ff;border:1px solid rgba(0,212,255,.3);box-shadow:0 0 15px #00d4ff26}.profile-tab:hover:not(.active){color:#fff}.profile-section-block{background:#0a0c1080;border:1px solid #2a2e35;border-radius:14px;padding:1.5rem;margin-bottom:1.5rem}.section-subtitle{font-size:.82rem;color:#868e96;margin:4px 0 1.25rem}.avatar-upload-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:1.25rem}.avatar-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;font-size:.82rem;font-weight:700;cursor:pointer;transition:all .2s ease;font-family:inherit}.avatar-btn.primary{background:#00d4ff1f;border:1px solid rgba(0,212,255,.4);color:#00d4ff}.avatar-btn.primary:hover{background:#00d4ff;color:#000;box-shadow:0 0 15px #00d4ff59}.avatar-btn.danger{background:#ef444414;border:1px solid rgba(239,68,68,.3);color:#fca5a5}.avatar-btn.danger:hover{background:#ef444433;color:#ef4444}.preset-avatars-section{border-top:1px solid rgba(255,255,255,.06);padding-top:1.15rem}.preset-label{display:block;font-size:.78rem;font-weight:700;color:#adb5bd;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.5px}.preset-avatar-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.preset-avatar-item{background:#ffffff08;border:1px solid #2a2e35;border-radius:12px;padding:8px 4px;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;transition:all .2s ease}.preset-avatar-item:hover{border-color:#00d4ff;background:#00d4ff14;transform:translateY(-2px)}.preset-avatar-item.active{border-color:#00d4ff;box-shadow:0 0 15px #00d4ff4d;background:#00d4ff1f}.preset-img{width:44px;height:44px;border-radius:50%}.preset-name{font-size:.68rem;color:#868e96;font-weight:600;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.security-card{background:#0a0c108c;border:1px solid #2a2e35;border-radius:14px;padding:1.75rem}.security-card-header{display:flex;align-items:flex-start;gap:12px;color:#00d4ff;margin-bottom:1.25rem}.security-card-header h3{margin:0 0 4px;font-size:1.1rem;color:#fff}.security-card-header p{margin:0;font-size:.82rem;color:#868e96}.security-form{display:flex;flex-direction:column;gap:1.15rem}.google-auth-notice{display:flex;align-items:flex-start;gap:15px;background:#4285f414;border:1px solid rgba(66,133,244,.3);border-radius:12px;padding:1.5rem;color:#4285f4}.google-auth-notice h4{margin:0 0 6px;color:#fff;font-size:1rem}.google-auth-notice p{margin:0;font-size:.86rem;color:#868e96;line-height:1.5}@media (max-width: 768px){.preset-avatar-grid{grid-template-columns:repeat(3,1fr)}.profile-tabs{flex-direction:column}.profile-stats-grid{grid-template-columns:1fr}.profile-header{flex-direction:column;text-align:center}.profile-email-row{justify-content:center}.auth-page-nav{padding:20px 25px}.profile-actions-row{flex-direction:column;gap:15px}.profile-save-btn,.profile-logout-btn{width:100%;justify-content:center}}.saves-container{display:flex;flex-direction:column;gap:2.25rem}.saves-category{background:#0a0c1099;border:1px solid #2a2e35;border-radius:14px;padding:1.6rem;box-shadow:0 8px 30px #0006}.saves-category-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:.85rem;border-bottom:1px solid rgba(255,255,255,.08)}.saves-category-title{display:flex;align-items:center;gap:10px;font-size:1.15rem;font-weight:700;color:#fff;margin:0}.saves-category-badge{background:#00d4ff1f;border:1px solid rgba(0,212,255,.3);color:#00d4ff;font-size:.75rem;font-weight:700;padding:.2rem .65rem;border-radius:999px}.saves-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.save-card{background:#12141ad9;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:all .25s cubic-bezier(.16,1,.3,1)}.save-card:hover{border-color:#00d4ff66;transform:translateY(-3px);box-shadow:0 10px 24px #00000080,0 0 15px #00d4ff1a}.save-card-thumbnail{width:100%;height:120px;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.05)}.save-card-thumbnail img{width:100%;height:100%;object-fit:cover;image-rendering:pixelated}.save-card-thumbnail-icon{font-size:2.2rem;opacity:.7}.save-card-content{padding:1rem 1.1rem;flex:1;display:flex;flex-direction:column}.save-card-name{font-size:1.05rem;font-weight:700;color:#fff;margin:0 0 .5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.save-card-meta{display:flex;flex-direction:column;gap:.3rem;font-size:.8rem;color:#868e96;margin-bottom:1rem;flex:1}.save-meta-row{display:flex;justify-content:space-between;align-items:center}.save-meta-row strong{color:#adb5bd}.save-card-actions{display:flex;gap:.6rem;margin-top:auto}.save-btn-primary{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;background:linear-gradient(135deg,#00d4ff33,#00d4ff0d);border:1px solid #00d4ff;color:#00d4ff;padding:.55rem .85rem;border-radius:6px;font-size:.82rem;font-weight:700;cursor:pointer;text-decoration:none;transition:all .2s ease}.save-btn-primary:hover{background:#00d4ff;color:#000;box-shadow:0 0 12px #00d4ff66}.save-btn-delete{background:#ff3b301a;border:1px solid rgba(255,59,48,.3);color:#ff3b30;padding:.55rem .75rem;border-radius:6px;font-size:.82rem;font-weight:700;cursor:pointer;transition:all .2s ease}.save-btn-delete:hover{background:#ff3b30;color:#fff;border-color:#ff3b30}.empty-saves-box{padding:2rem 1.5rem;text-align:center;background:#0003;border:1px dashed rgba(255,255,255,.1);border-radius:8px}.empty-saves-box p{color:#868e96;font-size:.88rem;margin:0 0 1rem}.empty-action-link{display:inline-flex;align-items:center;gap:6px;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:#fff;padding:.5rem 1rem;border-radius:6px;font-size:.82rem;font-weight:600;text-decoration:none;transition:all .2s ease}.empty-action-link:hover{border-color:#00d4ff;color:#00d4ff;background:#00d4ff14}
