.auth-avatar{width:32px;height:32px;border-radius:50%;border:2px solid var(--gold-border);background:var(--accent-control);color:var(--accent-contrast);font-family:var(--font-ui);font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s ease;box-shadow:none;padding:0}.auth-avatar:hover{transform:scale(1.05)}.auth-avatar:active{transform:scale(.95)}.auth-avatar--guest{background:var(--bg-surface);border-color:var(--border-subtle);color:var(--text-muted);box-shadow:none}.auth-avatar--guest:hover{background:var(--bg-hover);color:var(--text-primary)}.auth-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:236px;padding:8px;border-radius:var(--panel-radius);border:1px solid var(--border-default);background:var(--bg-surface);box-shadow:var(--shadow-modal);z-index:100;animation:authDropIn .2s ease}@keyframes authDropIn{0%{opacity:0;transform:translateY(-8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-dropdown-identity{display:flex;align-items:center;gap:12px;padding:6px 8px 12px}.auth-avatar--static{cursor:default;flex-shrink:0}.auth-avatar--static:hover{transform:none}.auth-dropdown-id{min-width:0}.auth-dropdown-name{font-size:13.5px;font-weight:700;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-dropdown-email{font-size:11.5px;color:var(--text-muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-dropdown-theme{padding:0 8px 8px}.auth-dropdown-theme-label{font-family:var(--font-display);font-size:9px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-dim);margin-bottom:6px}.auth-theme-options.settings-theme-options{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0}.auth-theme-options .settings-theme-choice-ui{min-height:46px;font-size:.65rem}.auth-theme-options .settings-theme-swatch{width:18px;height:18px}.auth-dropdown-sep{height:1px;margin:4px 8px;background:var(--border-subtle)}.auth-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 8px;border-radius:var(--control-radius);text-align:left;font-size:13px;font-weight:500;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;transition:background .15s ease,color .15s ease;font-family:var(--font-ui);white-space:nowrap}.auth-dropdown-item:hover{background:var(--bg-hover);color:var(--text-primary)}.auth-dropdown-item--action{color:var(--text-muted);font-weight:600}.auth-dropdown-item--action:hover{color:var(--text-primary)}.auth-modal-backdrop{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#0006;animation:authFadeIn .18s ease;padding:20px}@keyframes authFadeIn{0%{opacity:0}to{opacity:1}}.auth-modal{position:relative;width:100%;max-width:420px;padding:36px 32px 28px;border-radius:var(--panel-radius);border:1px solid var(--border-default);background:var(--bg-surface);box-shadow:var(--shadow-modal);animation:authModalIn .18s var(--ease-out)}@keyframes authModalIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.auth-modal-close{position:absolute;top:12px;right:16px;width:28px;height:28px;border-radius:var(--compact-radius);border:none;background:var(--bg-hover);color:var(--text-muted);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.auth-modal-close:hover{background:var(--bg-active);color:var(--text-primary)}.auth-modal-header{text-align:center;margin-bottom:24px}.auth-modal-logo{width:48px;height:48px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center}.auth-modal-logo onyx-brand{width:48px;height:48px}.auth-modal-header h2{font-family:var(--font-display);font-size:22px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.auth-modal-sub{font-size:13px;color:var(--text-muted);margin:0}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-field label{display:block;font-size:12px;font-weight:500;color:var(--text-muted);margin-bottom:5px;text-transform:uppercase;letter-spacing:.5px}.auth-input{width:100%;padding:10px 14px;border-radius:var(--control-radius);border:1px solid var(--border-subtle);background:var(--bg-inset);font-size:14px;font-family:var(--font-ui);color:var(--text-primary);outline:none;transition:border-color .2s ease,box-shadow .2s ease}.auth-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-light)}.auth-input::placeholder{color:var(--text-dim)}.auth-google-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:11px 16px;border-radius:var(--control-radius);border:1px solid var(--border-subtle);background:var(--bg-base);color:var(--text-primary);font-size:14px;font-weight:500;font-family:var(--font-ui);cursor:pointer;transition:background .15s ease,transform .15s ease;box-shadow:none}.auth-google-btn:hover{background:var(--bg-hover);transform:translateY(-1px)}.auth-google-btn:active{transform:translateY(0) scale(.98)}.auth-google-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-google-btn svg{flex-shrink:0}.auth-divider{display:flex;align-items:center;gap:12px;margin:4px 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border-subtle)}.auth-divider span{font-size:12px;color:var(--text-muted);text-transform:lowercase;font-weight:500;letter-spacing:.5px}.auth-submit{width:100%;padding:12px;margin-top:4px;border-radius:14px;border:none;background:linear-gradient(135deg,var(--gold) 0%,var(--gold-soft) 100%);color:var(--bg-base);font-size:14px;font-weight:600;font-family:var(--font-ui);cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,opacity .2s;box-shadow:0 4px 16px rgba(var(--accent-rgb),.26)}.auth-submit:hover{transform:translateY(-1px);background:var(--accent-hover);box-shadow:0 6px 20px rgba(var(--accent-rgb),.34)}.auth-submit:active{transform:translateY(0) scale(.98)}.auth-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-error{padding:8px 12px;border-radius:10px;background:#dc262614;border:1px solid rgba(220,38,38,.2);color:var(--danger-text);font-size:12px;line-height:1.4}.auth-success{padding:8px 12px;border-radius:10px;background:#16a34a14;border:1px solid rgba(22,163,74,.2);color:#15803d;font-size:12px;line-height:1.4}.auth-modal-footer{margin-top:18px;text-align:center;font-size:13px;color:var(--text-muted);display:flex;flex-direction:column;gap:6px}.auth-modal-footer a{color:var(--gold);text-decoration:none;font-weight:500;cursor:pointer}.auth-modal-footer a:hover{text-decoration:underline}@media(max-width:600px){.auth-modal{padding:28px 20px 24px;border-radius:20px;max-width:100%}.auth-dropdown{min-width:216px;right:-8px}}
