.auth-page{background:var(--ds-surface-subtle);height:100dvh;padding:var(--ds-space-16) var(--ds-space-6) var(--ds-space-8);flex-direction:column;align-items:center;display:flex;overflow-y:auto}.auth-brand{margin:0 0 var(--ds-space-10);font-size:var(--ds-text-xl);padding:0}.auth-card{width:min(100%,420px);padding:var(--ds-space-8);background:var(--ds-surface);border:1px solid var(--ds-border);border-radius:var(--ds-radius-xl);box-shadow:var(--ds-shadow-md)}.auth-heading{margin-bottom:var(--ds-space-8)}.auth-eyebrow{color:var(--ds-text-muted);font-size:var(--ds-text-xs);margin-bottom:var(--ds-space-3)}.auth-card h1{font-size:var(--ds-text-2xl);font-weight:var(--ds-weight-semibold);letter-spacing:var(--ds-tracking-tight);line-height:var(--ds-leading-heading);margin:0}.auth-description{color:var(--ds-text-muted);font-size:var(--ds-text-xs);line-height:var(--ds-leading-prose);margin:var(--ds-space-2) 0 0}.auth-card .field+.field{margin-top:var(--ds-space-5)}.auth-card .field label{margin-bottom:var(--ds-space-2)}.auth-card .field input{min-height:var(--ds-control-lg);background:var(--ds-surface-subtle)}.auth-card .field input[aria-invalid=true]{border-color:var(--ds-danger)}.auth-card .form-error{margin-top:var(--ds-space-1-5);font-size:var(--ds-text-xs)}.auth-password{position:relative}.auth-password input{padding-right:var(--ds-space-16)}.auth-reveal{height:var(--ds-control-sm);padding:0 var(--ds-space-2);color:var(--ds-text-muted);border-radius:var(--ds-radius-sm);font-size:var(--ds-text-xs);background:0 0;border:0;position:absolute;top:6px;right:8px}.auth-reveal:hover{background:var(--ds-surface-hover)}.auth-submit{justify-content:center;gap:var(--ds-space-2);width:100%;min-height:var(--ds-control-lg);margin-top:var(--ds-space-6);display:flex}.auth-switch{justify-content:center;gap:var(--ds-space-2);margin:var(--ds-space-6) 0 0;font-size:var(--ds-text-xs);color:var(--ds-text-muted);display:flex}.auth-switch a,.auth-inline-link{color:var(--ds-accent-text);font-weight:var(--ds-weight-medium);text-decoration:none}.auth-switch a:hover,.auth-inline-link:hover{text-decoration:underline}.auth-caption{color:var(--ds-text-muted);margin:var(--ds-space-6) 0 0;font-size:var(--ds-text-xs)}.auth-error{padding:var(--ds-space-2-5) var(--ds-space-3);border-radius:var(--ds-radius-md);background:var(--ds-surface-subtle);color:var(--ds-danger);font-size:var(--ds-text-xs);line-height:var(--ds-leading-relaxed);margin-top:var(--ds-space-4)}.auth-inline-link{margin-top:var(--ds-space-1-5);font-size:var(--ds-text-xs);display:block}.auth-info{background:var(--ds-accent-soft);color:var(--ds-accent-text);border:1px solid var(--ds-border);padding:var(--ds-space-3) var(--ds-space-3);border-radius:var(--ds-radius-md);font-size:var(--ds-text-xs);line-height:var(--ds-leading-relaxed);margin-bottom:var(--ds-space-6)}.auth-check{color:var(--ds-text-muted);padding:var(--ds-space-12) var(--ds-space-5);font-size:var(--ds-text-sm)}.account-menu{padding-top:var(--ds-space-5);flex-shrink:0;margin-top:auto}.account-trigger{width:100%;padding:var(--ds-space-3) var(--ds-space-2);align-items:center;gap:var(--ds-space-2);border:1px solid var(--ds-border);background:var(--ds-surface-subtle);border-radius:var(--ds-radius-md);text-align:left;display:flex}.account-avatar{border-radius:var(--ds-radius-full);background:var(--ds-accent-soft);width:29px;height:29px;color:var(--ds-accent-text);font-size:var(--ds-text-xs);flex-shrink:0;place-items:center;display:grid}.account-email{font-size:var(--ds-text-xs);color:var(--ds-text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.account-popup{min-width:210px;max-width:calc(100vw - 24px)}.account-popup-label{padding:var(--ds-space-2) var(--ds-space-3);color:var(--ds-text-muted);font-size:var(--ds-text-xs);overflow-wrap:anywhere}.account-error{font-size:var(--ds-text-xs);color:var(--ds-danger);padding:var(--ds-space-2) var(--ds-space-1)}@media (width<=600px){.auth-page{padding:var(--ds-space-8) var(--ds-space-4) var(--ds-space-16)}.auth-brand{margin-bottom:var(--ds-space-6)}.auth-card{padding:var(--ds-space-8) var(--ds-space-6)}.auth-card h1{font-size:var(--ds-text-xl)}}.session-content{display:contents}.session-content[hidden]{display:none}.auth-gate{min-height:100dvh;padding:var(--ds-space-8);justify-content:center;align-items:center;gap:var(--ds-space-4);text-align:center;flex-direction:column;display:flex}body[data-session-locked] .session-content,body[data-session-locked] [role=presentation][data-base-ui-inert],body[data-session-locked] .dialog-backdrop,body[data-session-locked] .dialog-popup,body[data-session-locked] .menu-positioner,body[data-session-locked] [role=listbox],body[data-session-locked] [data-floating-ui-portal]{visibility:hidden!important;pointer-events:none!important}.auth-recovery{gap:var(--ds-space-3);margin-top:var(--ds-space-4);display:grid}.auth-theme-control{align-items:center;gap:var(--ds-space-2);margin-top:var(--ds-space-6);font-size:var(--ds-text-xs);color:var(--ds-text-muted);display:flex}.auth-theme-control select{min-height:var(--ds-control-sm);padding:var(--ds-space-1) var(--ds-space-8) var(--ds-space-1) var(--ds-space-2);border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-sm);background-color:var(--ds-surface);color:var(--ds-text-secondary);font:inherit}.auth-theme-control select:focus-visible{outline:2px solid var(--ds-focus);outline-offset:2px}
