.auth-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.auth-modal{background:var(--surface-solid);border-radius:var(--r-lg);border:1px solid var(--border);width:380px;max-width:90vw;box-shadow:var(--shadow-3);padding:32px;position:relative}.auth-close{color:var(--text-3);cursor:pointer;background:0 0;border:none;padding:4px;font-size:22px;line-height:1;position:absolute;top:12px;right:16px}.auth-close:hover{color:var(--text)}.auth-title{color:var(--text);margin-bottom:6px;font-size:22px;font-weight:700}.auth-desc{color:var(--text-3);margin-bottom:24px;font-size:13px}.auth-google{border:1px solid var(--border);border-radius:var(--r-pill);background:var(--surface);width:100%;color:var(--text);cursor:pointer;justify-content:center;align-items:center;gap:10px;padding:12px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.auth-google:hover:not(:disabled){background:var(--glass-strong)}.auth-google:disabled{opacity:.5;cursor:not-allowed}.auth-divider{color:var(--text-3);align-items:center;gap:12px;margin:18px 0;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--divider);flex:1;height:1px}.auth-form{flex-direction:column;gap:12px;display:flex}.auth-input{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);width:100%;color:var(--text);outline:none;padding:12px 14px;font-size:14px;transition:border-color .2s}.auth-input:focus{border-color:var(--text-3)}.auth-input::placeholder{color:var(--text-3)}.auth-error{color:#e74c3c;border-radius:var(--r-sm);background:#e74c3c14;padding:8px 12px;font-size:13px}.auth-success{color:#27ae60;border-radius:var(--r-sm);background:#27ae6014;padding:8px 12px;font-size:13px}.auth-forgot{text-align:center;width:100%;color:var(--text-3);cursor:pointer;background:0 0;border:none;padding:8px 0 0;font-size:13px;transition:color .2s;display:block}.auth-forgot:hover{color:var(--primary)}.auth-submit{border-radius:var(--r-pill);background:var(--primary);color:#fff;cursor:pointer;border:none;width:100%;margin-top:4px;padding:12px;font-size:14px;font-weight:600;transition:all .2s}[data-theme=dark] .auth-submit{color:#1a1a1a;background:#f0f0f0}[data-theme=dark] .auth-google{color:#eee;background:#ffffff14;border-color:#ffffff26}[data-theme=dark] .auth-google:hover:not(:disabled){background:#ffffff1f}[data-theme=dark] .auth-input{color:#eee;background:#ffffff14;border-color:#ffffff1f}[data-theme=dark] .auth-divider{color:#666}[data-theme=dark] .auth-divider:before,[data-theme=dark] .auth-divider:after{background:#ffffff1a}.auth-submit:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.auth-switch{text-align:center;color:var(--text-3);margin-top:20px;font-size:13px}.auth-switch-btn{color:var(--text);cursor:pointer;background:0 0;border:none;margin-left:4px;font-size:13px;font-weight:600;text-decoration:underline}.auth-switch-btn:hover{opacity:.8}@media (max-width:768px){.auth-modal{max-height:90vh;padding:24px 20px;overflow-y:auto}.auth-title{font-size:18px}.auth-desc{margin-bottom:16px}}.user-menu-wrap{align-items:center;display:inline-flex;position:relative}.user-menu-trigger{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill);cursor:pointer;color:var(--text);align-items:center;gap:6px;padding:3px 10px 3px 3px;font-family:inherit;transition:background .15s,border-color .15s;display:inline-flex}.user-menu-trigger:hover{background:var(--glass-strong);border-color:var(--text-3)}.user-menu-avatar{color:#fff;background:#6b7280;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:12px;font-weight:600;display:inline-grid}.user-menu-avatar-lg{width:42px;height:42px;font-size:16px}.um-accent-free .user-menu-avatar{background:#6b7280}.um-accent-monthly .user-menu-avatar{background:#3b82f6}.um-accent-annual .user-menu-avatar,.um-accent-admin .user-menu-avatar{background:linear-gradient(135deg,#8b5cf6,#ec4899)}.um-accent-monthly .user-menu-trigger{border-color:#3b82f68c}.um-accent-annual .user-menu-trigger,.um-accent-admin .user-menu-trigger{background:linear-gradient(var(--surface), var(--surface)) padding-box, linear-gradient(135deg, #8b5cf6bf, #ec4899bf) border-box;border-color:#8b5cf694}.user-menu-pill{border-radius:var(--r-pill);color:#3b82f6;letter-spacing:.01em;white-space:nowrap;background:#3b82f61f;padding:2px 8px;font-size:11px;font-weight:600}.um-accent-annual .user-menu-pill,.um-accent-admin .user-menu-pill{color:#8b5cf6;background:linear-gradient(135deg,#8b5cf629,#ec489929)}.user-menu-pill-warning{color:#ea580c;background:#ea580c26;animation:2.2s ease-in-out infinite umPulse}@keyframes umPulse{0%,to{opacity:1}50%{opacity:.55}}.user-menu-chev{color:var(--text-3);margin-left:2px;transition:transform .15s}.user-menu-trigger[aria-expanded=true] .user-menu-chev{transform:rotate(180deg)}.user-menu-panel{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--r-lg);min-width:320px;max-width:360px;box-shadow:var(--shadow-3);z-index:100;padding:4px;animation:.12s ease-out umFadeIn;position:absolute;top:calc(100% + 8px);right:0}@keyframes umFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.user-menu-header{border-bottom:1px solid var(--divider);padding:14px 14px 12px}.user-menu-email-row{align-items:center;gap:12px;margin-bottom:10px;display:flex}.user-menu-email-block{flex:1;min-width:0}.user-menu-email{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.user-menu-label-row{align-items:center;gap:6px;margin-top:3px;display:flex}.user-menu-plan-label{border-radius:var(--r-pill);color:#3b82f6;background:#3b82f61f;padding:2px 9px;font-size:11px;font-weight:600}.user-menu-plan-label.um-accent-annual,.user-menu-plan-label.um-accent-admin{color:#8b5cf6;background:linear-gradient(135deg,#8b5cf629,#ec489929)}.user-menu-plan-label.um-accent-warning{color:#ea580c;background:#ea580c26}.user-menu-plan-label.um-accent-free{color:var(--text-2);background:var(--surface);border:1px solid var(--border)}.user-menu-warning-dot{color:#fff;background:#ea580c;border-radius:50%;place-items:center;width:16px;height:16px;font-size:11px;font-weight:700;display:inline-grid}.user-menu-expiry{color:var(--text-2);font-size:12px;line-height:1.5}.user-menu-expiry.warning{color:#ea580c;font-weight:600}.user-menu-expiry.expired{color:#c62828;font-weight:600}.user-menu-cta{color:#fff;border-radius:var(--r-md);background:#3b82f6;margin-top:12px;padding:8px 14px;font-size:12px;font-weight:600;text-decoration:none;transition:opacity .15s;display:inline-block}.user-menu-cta:hover{opacity:.88}.user-menu-cta-warning{background:#ea580c}.um-accent-annual .user-menu-cta,.um-accent-admin .user-menu-cta{background:linear-gradient(135deg,#8b5cf6,#ec4899)}.user-menu-section{border-bottom:1px solid var(--divider);padding:12px 14px 8px}.user-menu-section-title{color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;font-size:10px;font-weight:700}.user-menu-benefits{grid-template-columns:1fr;gap:2px;margin:0;padding:0;list-style:none;display:grid}.user-menu-benefits li{color:var(--text);justify-content:space-between;align-items:center;gap:10px;padding:5px 2px;font-size:12px;display:flex}.user-menu-benefits li .ub-label{min-width:0;color:var(--text-2);flex:1}.user-menu-benefits li .ub-value{color:#2e7d32;white-space:nowrap;align-items:center;gap:4px;font-weight:600;display:inline-flex}[data-theme=dark] .user-menu-benefits li .ub-value{color:#66bb6a}.user-menu-benefits li.locked .ub-value{color:var(--text-3)}.user-menu-actions{flex-direction:column;gap:1px;padding:6px 4px;display:flex}.user-menu-item{color:var(--text);border-radius:var(--r-sm);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:9px 12px;font-family:inherit;font-size:13px;text-decoration:none;transition:background .12s;display:flex}.user-menu-item:hover{background:var(--glass-strong)}.user-menu-item svg{color:var(--text-3);flex-shrink:0}.um-accent-monthly .user-menu-item:not(.user-menu-item-danger) svg{color:#3b82f6}.um-accent-annual .user-menu-item:not(.user-menu-item-danger) svg,.um-accent-admin .user-menu-item:not(.user-menu-item-danger) svg{color:#8b5cf6}.user-menu-item-danger,.user-menu-item-danger svg{color:#c62828}.user-menu-item-danger:hover{background:#c6282814}.user-menu-limits-ref{opacity:0;position:absolute;left:-9999px}@media (max-width:720px){.user-menu-panel{min-width:0;max-width:none;position:fixed;top:56px;left:8px;right:8px}}.top-nav{justify-content:flex-end;align-items:center;gap:6px;margin:0 0 12px;padding:0;display:flex}.top-nav-back{color:var(--text-2);border-radius:var(--r-pill);white-space:nowrap;flex-shrink:0;align-items:center;gap:4px;margin-right:auto;padding:6px 12px;font-size:13px;text-decoration:none;transition:all .2s;display:inline-flex}.top-nav-back:hover{color:var(--text);background:var(--surface)}.top-nav-links{align-items:center;gap:2px;display:flex}.top-nav-link{color:var(--text-3);border-radius:var(--r-pill);white-space:nowrap;padding:6px 12px;font-size:13px;text-decoration:none;transition:all .2s}.top-nav-link:hover{color:var(--text);background:var(--surface)}.top-nav-link.active{color:var(--text);background:var(--surface);font-weight:500}.top-nav-theme{background:var(--surface);border:1px solid var(--border);width:34px;height:34px;color:var(--text-2);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;margin-left:6px;transition:all .2s;display:inline-flex}.top-nav-theme:hover{background:var(--bg-warm);color:var(--text)}.top-nav-lang{color:#fff;background:var(--primary,#333);border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;letter-spacing:.02em;border:none;align-items:center;gap:5px;margin-left:10px;padding:6px 14px;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.top-nav-lang:hover{opacity:.85}.top-nav-lang svg{flex-shrink:0}.top-nav-login{color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;align-items:center;gap:5px;margin-left:6px;padding:6px 14px;font-size:13px;transition:all .2s;display:inline-flex}.top-nav-login:hover{background:var(--glass-strong);color:var(--text)}.top-nav-user{align-items:center;gap:6px;margin-left:6px;display:inline-flex}.top-nav-avatar{background:var(--primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;font-weight:600;display:flex}[data-theme=dark] .top-nav-avatar{color:#eee;background:#555}.top-nav-logout{border:1px solid var(--border);width:30px;height:30px;color:var(--text-3);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.top-nav-logout:hover{background:var(--surface);color:var(--text)}.top-nav-support{color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;align-items:center;gap:5px;margin-left:6px;padding:6px 14px;font-size:13px;text-decoration:none;transition:all .2s;display:inline-flex}.top-nav-support:hover{color:#e25555;background:#e255550f;border-color:#e25555}.top-nav-support:hover svg path{fill:#e25555;stroke:#e25555}.top-nav-hamburger{border-radius:var(--r-md);background:var(--surface);border:1px solid var(--border);width:36px;height:36px;color:var(--text-2);cursor:pointer;justify-content:center;align-items:center;margin-left:auto;transition:all .2s;display:none}.top-nav-hamburger:hover{background:var(--bg-warm);color:var(--text)}.top-nav-overlay{display:none}@media (max-width:768px){.top-nav{position:relative}.top-nav-hamburger{display:flex}.top-nav-links{background:var(--surface-solid);border:1px solid var(--border);border-radius:var(--r-lg);min-width:180px;box-shadow:var(--shadow-3);z-index:100;flex-direction:column;align-items:stretch;gap:2px;margin-top:8px;padding:8px;animation:.2s menu-slide;display:none;position:absolute;top:100%;right:0}.top-nav-links.open{display:flex}.top-nav-link{border-radius:var(--r-md);padding:10px 14px;font-size:14px}.top-nav-theme{align-self:flex-start;margin-left:0}.top-nav-lang,.top-nav-support,.top-nav-login,.top-nav-user{justify-content:center;margin-left:0}.top-nav-overlay{z-index:99;display:block;position:fixed;top:0;bottom:0;left:0;right:0}@keyframes menu-slide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}}
