.auth-page{min-height:100dvh;padding:max(1rem, env(safe-area-inset-top)) 1.25rem max(1rem, env(safe-area-inset-bottom));background:var(--surface-canvas);color:var(--text-primary);color-scheme:normal}.auth-frame{grid-template-rows:auto minmax(0,1fr) auto;gap:0;width:min(100%,26.25rem);min-height:calc(100dvh - 2rem);margin-inline:auto;display:grid}.auth-header{justify-content:space-between;align-items:center;gap:var(--space-4);border:0;min-height:4.25rem;display:flex}.auth-brand{align-items:center;gap:var(--space-2);min-height:2.75rem;color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--weight-bold);letter-spacing:-.03em;text-decoration:none;display:inline-flex}.auth-brand i{border:.35rem solid var(--accent-default);width:1.125rem;height:1.125rem;box-shadow:none;border-radius:.4rem}.auth-workspace{align-items:center;min-width:0;padding-block:clamp(3.5rem,10vh,7rem);display:grid}.auth-main{width:100%;min-width:0;animation:auth-main-enter var(--duration-slow) var(--ease-out) both}@keyframes auth-main-enter{0%{opacity:0;transform:translateY(.5rem)}}.auth-copy{gap:var(--space-3);margin-bottom:var(--space-8);display:grid}.auth-copy h1{color:var(--text-primary);font-size:clamp(2rem,9vw,2.5rem);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:-.045em;margin:0}.auth-copy>p:last-child{max-width:35ch;color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--leading-normal);margin:0}.auth-form{gap:var(--space-5);display:grid}.auth-field-row,.auth-field{gap:var(--space-2);min-width:0;display:grid}.auth-label{color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.auth-input{width:100%;min-height:3.5rem;padding:0 var(--space-4);border:1px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-default);color:var(--text-primary);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out);outline:0}.auth-input::placeholder{color:var(--text-tertiary)}.auth-input:focus-visible{border-color:var(--border-focus);background:var(--surface-raised);box-shadow:0 0 0 3px var(--accent-ring-color)}.auth-input[aria-invalid=true]{border-color:var(--border-error)}.auth-password-control{position:relative}.auth-password-control .auth-input{padding-right:4.75rem}.auth-password-toggle{min-width:3.75rem;min-height:2.75rem;padding-inline:var(--space-2);border-radius:calc(var(--radius-control) - 2px);color:var(--text-tertiary);font-size:var(--text-xs);font-weight:var(--weight-semibold);cursor:pointer;background:0 0;border:0;position:absolute;top:.375rem;right:.375rem}.auth-hint,.auth-error,.auth-status,.auth-pending{font-size:var(--text-sm);line-height:var(--leading-snug);margin:0}.auth-hint,.auth-pending{color:var(--text-tertiary)}.auth-error,.auth-status.error{color:var(--status-danger-text)}.auth-status{min-height:1.25rem;margin-bottom:var(--space-3)}.auth-form-error{padding:var(--space-3);border:1px solid var(--status-danger-border);border-radius:var(--radius-control);background:var(--status-danger-bg)}.auth-submit,.auth-dev-submit{width:100%;min-height:3.5rem;padding-inline:var(--space-5);border-radius:var(--radius-control);font-size:var(--text-md);font-weight:var(--weight-bold);cursor:pointer;transition:border-color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), transform var(--duration-instant) var(--ease-out);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.auth-submit{border:1px solid var(--accent-default);background:var(--accent-default);color:var(--text-on-accent)}.auth-dev-access{gap:var(--space-3);margin-top:var(--space-1);padding-top:var(--space-5);border-top:1px solid var(--border-subtle);display:grid}.auth-dev-access>span{color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em}.auth-dev-submit{border:1px solid var(--border-default);background:var(--surface-default);color:var(--text-primary)}.auth-submit:active,.auth-dev-submit:active{transform:scale(.99)}.auth-submit:disabled,.auth-dev-submit:disabled{opacity:.55;cursor:wait}.auth-inline-link,.auth-links a{min-height:2.75rem;color:var(--accent-text);font-size:var(--text-sm);text-decoration:underline;-webkit-text-decoration-color:var(--accent-ring-color);text-decoration-color:var(--accent-ring-color);text-underline-offset:.25rem;align-items:center;display:inline-flex}.auth-inline-link{justify-self:end}.auth-links{margin-top:var(--space-6);color:var(--text-secondary);text-align:center}.auth-links p{font-size:var(--text-sm);margin:0}.auth-complete{justify-items:start;gap:var(--space-3);display:grid}.auth-complete-mark{border:1px solid var(--accent-ring-color);background:var(--accent-soft-surface);width:2.75rem;height:2.75rem;color:var(--accent-text);border-radius:50%;place-items:center;display:grid}.auth-complete-mark svg{width:1.25rem;height:1.25rem}.auth-complete h2{color:var(--text-primary);font-size:var(--text-2xl);line-height:var(--leading-snug);margin:0}.auth-complete p{margin:0 0 var(--space-3);color:var(--text-secondary);font-size:var(--text-sm)}.auth-complete .auth-submit{width:auto;min-width:10rem}.auth-footer{justify-content:space-between;align-items:center;gap:var(--space-4);min-height:3.25rem;color:var(--text-tertiary);font-family:var(--font-mono);font-size:var(--text-xs);border:0;display:flex}@media (hover:hover) and (pointer:fine){.auth-password-toggle:hover,.auth-inline-link:hover,.auth-links a:hover{color:var(--text-primary)}.auth-submit:hover{border-color:var(--accent-hover-color);background:var(--accent-hover-color)}.auth-dev-submit:hover{border-color:var(--border-strong);background:var(--surface-raised)}}@media (max-width:30rem){.auth-page{padding-inline:1.125rem}.auth-workspace{align-items:start;padding-top:clamp(3.25rem,11vh,6rem)}.auth-footer span:last-child{display:none}}
