[hidden]{display:none!important}.nav-auth-btn,.nav-account-trigger{display:flex;align-items:center;gap:6px;background:transparent;border:1.5px solid var(--border);color:var(--text);font-family:Fredoka,sans-serif;font-size:14px;font-weight:600;padding:7px;border-radius:6px;cursor:pointer;letter-spacing:.03em;transition:border-color .15s,color .15s;white-space:nowrap;line-height:1}.nav-auth-btn:hover,.nav-account-trigger:hover{border-color:var(--accent);color:var(--accent)}.nav-auth-text{display:none}@media(min-width:521px){.nav-auth-btn,.nav-account-trigger{padding:7px 14px}.nav-auth-text{display:inline}}.nav-auth-icon{flex-shrink:0}.nav-account{position:relative}.nav-account-label{display:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}@media(min-width:521px){.nav-account-label{display:inline}}.nav-account-chevron{flex-shrink:0;transition:transform .2s}.nav-account.open .nav-account-chevron{transform:rotate(180deg)}.nav-account-menu{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid var(--border);border-radius:10px;padding:6px;min-width:172px;box-shadow:0 8px 24px #0000001a;opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .15s,transform .15s;z-index:200}.nav-account.open .nav-account-menu{opacity:1;transform:translateY(0);pointer-events:auto}.nav-account-menu-header{padding:9px 12px 7px}.nav-account-menu-name{display:block;font-family:Lilita One,cursive;font-size:14px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:.02em}.nav-account-menu-item{display:flex;align-items:center;gap:9px;width:100%;background:none;border:none;padding:9px 12px;text-align:left;font-family:Fredoka,sans-serif;font-size:14px;font-weight:600;color:var(--text);border-radius:6px;cursor:pointer;transition:background .12s;text-decoration:none}.nav-account-menu-item:hover{background:#f5f0e8}.nav-account-menu-item--active{color:#1e7d40;font-weight:600}.nav-account-menu-item--danger{color:#c0392b}.nav-account-menu-item--danger:hover{background:#fdf0ee}.nav-account-menu-divider{height:1px;background:var(--border);margin:5px 6px}.auth-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#050c07b8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px;overflow:hidden;opacity:0;pointer-events:none;transition:opacity .2s}.auth-overlay.open{opacity:1;pointer-events:auto}.auth-overlay.open .auth-modal{transform:translateY(0) scale(1);opacity:1}.auth-modal{background:#1b2d1f;border:1px solid #30493a;border-radius:16px;padding:36px 32px 32px;width:100%;max-width:400px;position:relative;transform:translateY(20px) scale(.97);opacity:0;transition:transform .25s cubic-bezier(.34,1.56,.64,1),opacity .2s;box-shadow:0 24px 64px #00000080,0 0 0 1px #ffffff0a}.auth-close{position:absolute;top:14px;right:14px;background:#ffffff0f;border:none;border-radius:6px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:20px;color:#7a9c82;cursor:pointer;transition:background .15s,color .15s;line-height:1}.auth-close:hover{background:#ffffff1a;color:#edf2ee}.auth-logo{text-align:center;margin-bottom:24px}.auth-logo img{width:48px;height:48px}.auth-tabs{display:flex;background:#ffffff0d;border:1px solid #30493a;border-radius:8px;padding:4px;margin-bottom:24px;gap:4px}.auth-tab{flex:1;background:transparent;border:none;border-radius:5px;padding:9px 0;font-family:Bebas Neue,sans-serif;font-size:15px;letter-spacing:.1em;color:#7a9c82;cursor:pointer;transition:background .15s,color .15s}.auth-tab:hover{color:#edf2ee}.auth-tab.active{background:#243529;color:#f5c800;box-shadow:0 1px 4px #0000004d}.auth-message{border-radius:7px;padding:10px 14px;font-family:DM Mono,monospace;font-size:12px;line-height:1.5;margin-bottom:16px}.auth-message--error{background:#e030301f;border:1px solid rgba(224,48,48,.3);color:#f08080}.auth-message--success{background:#27a0501f;border:1px solid rgba(39,160,80,.3);color:#6fcf97}.auth-form{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-field label{font-family:Bebas Neue,sans-serif;font-size:12px;letter-spacing:.15em;color:#7a9c82}.auth-field input{background:#243529;border:1px solid #30493a;border-radius:8px;padding:11px 14px;color:#edf2ee;font-family:DM Mono,monospace;font-size:14px;outline:none;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none}.auth-field input::placeholder{color:#4a6652}.auth-field input:focus{border-color:#27a050;box-shadow:0 0 0 3px #27a05026}.auth-submit{background:#27a050;border:none;border-radius:8px;padding:13px;color:#fff;font-family:Bebas Neue,sans-serif;font-size:16px;letter-spacing:.12em;cursor:pointer;transition:background .15s,transform .1s;margin-top:2px}.auth-submit:hover{background:#1e7d40}.auth-submit:active{transform:scale(.98)}.auth-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.auth-divider{display:flex;align-items:center;gap:12px;margin-bottom:16px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#30493a}.auth-divider span{font-family:DM Mono,monospace;font-size:11px;color:#4a6652;letter-spacing:.1em}.auth-google{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:#ffffff0d;border:1px solid #30493a;border-radius:8px;padding:12px;color:#edf2ee;font-family:DM Mono,monospace;font-size:13px;cursor:pointer;transition:background .15s,border-color .15s}.auth-google:hover{background:#ffffff14;border-color:#4a6652}.auth-link-btn{background:none;border:none;padding:0;cursor:pointer;font-family:Fredoka,sans-serif;font-size:13px;color:#4a6652;transition:color .15s;letter-spacing:.01em}.auth-link-btn:hover{color:#27a050}.auth-forgot-hint{font-family:Fredoka,sans-serif;font-size:14px;color:#7a9c82;line-height:1.6;margin-bottom:20px;text-align:center}@media(max-width:480px){.auth-overlay{padding:0;align-items:flex-end}.auth-modal{max-width:100%;border-radius:20px 20px 0 0;padding:32px 24px 40px;transform:translateY(40px) scale(1)}.auth-overlay.open .auth-modal{transform:translateY(0) scale(1)}}
