.auth-shell{background:var(--bg-base);justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.auth-container{flex-direction:column;gap:28px;width:100%;max-width:400px;display:flex}.auth-wordmark{text-align:center}.auth-wordmark-name{letter-spacing:-.02em;color:var(--accent);margin:0 0 4px;font-size:24px;font-weight:700}.auth-wordmark-tagline{color:var(--text-muted);margin:0;font-size:13px;font-style:italic}.auth-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;gap:20px;padding:32px;display:flex}.auth-card-title{color:var(--text-primary);margin:0;font-size:16px;font-weight:600}.auth-card-copy{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.55}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-field{flex-direction:column;gap:5px;display:flex}.auth-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:500}.auth-input{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-primary);transition:border-color var(--transition);width:100%;padding:9px 12px;font-size:14px}.auth-input:focus{border-color:var(--accent);outline:none}.auth-input::placeholder{color:var(--text-muted)}.auth-input:disabled{opacity:.72;cursor:not-allowed}.auth-btn-primary{background:var(--accent);width:100%;color:var(--accent-fg);border-radius:var(--radius-md);transition:opacity var(--transition);text-align:center;padding:10px 16px;font-size:14px;font-weight:600;text-decoration:none;display:block}.auth-btn-primary:hover:not(:disabled){opacity:.88}.auth-btn-primary:disabled{opacity:.45;cursor:not-allowed}.auth-btn-secondary{border:1px solid var(--border);width:100%;color:var(--text-secondary);border-radius:var(--radius-md);transition:border-color var(--transition), color var(--transition);text-align:center;background:0 0;padding:10px 16px;font-size:14px;font-weight:500;text-decoration:none;display:block}.auth-btn-secondary:hover:not(:disabled){border-color:var(--text-muted);color:var(--text-primary)}.auth-btn-secondary:disabled{opacity:.45;cursor:not-allowed}.auth-btn-content{justify-content:center;align-items:center;gap:8px;display:inline-flex}.auth-spinner{border:2px solid;border-right-color:#0000;border-radius:999px;width:14px;height:14px;animation:.75s linear infinite auth-spin}.auth-pending{color:var(--text-secondary);text-align:center;margin:-2px 0 0;font-size:12px}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-divider{color:var(--text-muted);align-items:center;gap:10px;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-error{color:var(--danger);margin:0;font-size:13px}.auth-notice{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);text-align:center;flex-direction:column;gap:6px;padding:16px;display:flex}.auth-notice-success{border-color:color-mix(in srgb, #5ec45e 45%, var(--border))}.auth-notice-warning{border-color:color-mix(in srgb, #f0a030 45%, var(--border))}.auth-notice-title{color:var(--text-primary);margin:0;font-size:14px;font-weight:600}.auth-notice-body{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.auth-notice-body a,.auth-beta-copy a{color:var(--text-primary);text-underline-offset:2px;text-decoration:underline}.auth-actions{flex-direction:column;gap:10px;display:flex}.auth-beta-panel{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;gap:6px;padding:14px;display:flex}.auth-beta-title{color:var(--text-primary);margin:0;font-size:13px;font-weight:600}.auth-beta-copy{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.auth-footer{color:var(--text-muted);text-align:center;flex-direction:column;gap:4px;font-size:13px;display:flex}.auth-footer a{color:var(--text-secondary);text-underline-offset:2px;text-decoration:underline}.auth-footer a:hover{color:var(--accent)}.auth-footer-note{color:var(--text-muted);text-align:center;margin:0;font-size:12px}