.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px 16px}.auth-card{width:100%;max-width:420px;padding:32px;background:#fff;border:1px solid #dce3ed;border-radius:12px;display:grid;gap:16px}.auth-card h1,.auth-card p{margin:0}.auth-brand{color:#1d4ed8;font-weight:700}.auth-actions{display:grid;gap:12px}.session-bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:14px}.session-bar details{position:relative}.session-bar summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-family:monospace}.session-menu{position:absolute;top:100%;right:0;z-index:10;width:min(360px,calc(100vw - 32px));border:1px solid #dce3ed;border-radius:12px;background:#fff;padding:16px;display:grid;gap:12px;overflow-wrap:anywhere;box-shadow:0 8px 24px #17203314}@media(max-width:767px){.auth-card{padding:24px 16px}.session-menu{position:fixed;top:96px;right:16px;max-height:calc(100dvh - 112px);overflow-y:auto}}:root{color-scheme:light;--color-background: #f6f8fb;--color-surface: #ffffff;--color-text: #172033;--color-muted: #536176;--color-border: #dce3ed;--color-primary: #1d4ed8;--color-primary-hover: #1e40af;--color-success: #166534;--color-success-bg: #dcfce7;--color-warning: #92400e;--color-warning-bg: #fef3c7;--color-error: #b91c1c;--color-error-bg: #fee2e2;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--radius-control: 8px;--radius-card: 12px;--font-mono: ui-monospace, SFMono-Regular, Consolas, monospace}*{box-sizing:border-box}html{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.5;color:var(--color-text);background:var(--color-background);scroll-padding-bottom:8rem}body{margin:0;min-width:280px}button,input,select,textarea{font:inherit}button,input,select,textarea,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}a{color:var(--color-primary);text-underline-offset:3px}h1{font-size:1.75rem;line-height:1.2;margin:0 0 var(--space-6)}h2{font-size:1.25rem;margin:0 0 var(--space-4)}h3{font-size:1rem;margin:0 0 var(--space-2)}p{margin:0 0 var(--space-4)}code{font-family:var(--font-mono);overflow-wrap:anywhere}input:not([type=radio]):not([type=checkbox]),select,textarea{min-height:44px;width:100%;border:1px solid var(--color-muted);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);padding:var(--space-2) var(--space-3)}input[type=radio],input[type=checkbox]{width:20px;height:20px;accent-color:var(--color-primary)}label:has(input[type=radio]),label:has(input[type=checkbox]){display:flex;align-items:center;gap:var(--space-2);min-height:44px}textarea{resize:vertical}input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border-color:var(--color-error)}fieldset{min-width:0;border:1px solid var(--color-border);border-radius:var(--radius-control);padding:var(--space-4)}legend{padding:0 var(--space-2)}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-4);border:1px solid transparent;border-radius:var(--radius-control);font-weight:600;text-decoration:none;white-space:normal}.button--primary{background:var(--color-primary);color:#fff}.button--primary:hover:not(:disabled){background:var(--color-primary-hover)}.button--secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-muted)}.button--secondary:hover:not(:disabled){background:var(--color-background)}.button--danger{background:var(--color-error);color:#fff}.field{display:grid;gap:var(--space-2);margin-bottom:var(--space-4);min-width:0}.field>label{font-weight:600}.field__hint,.field__error{font-size:.875rem}.field__hint{color:var(--color-muted)}.field__error{color:var(--color-error)}.notice{display:grid;gap:var(--space-1);padding:var(--space-4);border-radius:var(--radius-control);overflow-wrap:anywhere}.notice--info{color:var(--color-text);background:#e8efff}.notice--success{color:var(--color-success);background:var(--color-success-bg)}.notice--warning{color:var(--color-warning);background:var(--color-warning-bg)}.notice--error{color:var(--color-error);background:var(--color-error-bg)}.before-after{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);margin:var(--space-4) 0}.before-after>section{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);overflow-wrap:anywhere}.before-after>section:last-child{background:var(--color-background)}.copy-value{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);min-width:0}.copy-value__status{color:var(--color-muted);font-size:.875rem}.copy-value__status:empty{display:none}.dialog-backdrop{position:fixed;inset:0;z-index:100;background:#17203373;display:flex;align-items:center;justify-content:center;padding:var(--space-6)}.dialog{width:min(640px,100%);max-height:calc(100dvh - 48px);overflow-y:auto;background:var(--color-surface);border-radius:var(--radius-card);padding:var(--space-6);overflow-wrap:anywhere}.dialog__content{margin-bottom:var(--space-4)}.dialog__actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6)}.form-actions{position:sticky;bottom:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-3);background:var(--color-surface);border-top:1px solid var(--color-border);padding:var(--space-4) 0;margin-top:var(--space-6);z-index:2}.form-actions>:first-child:not(button){margin-right:auto}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:var(--space-6);min-width:0}.muted{color:var(--color-muted)}.stack{display:grid;gap:var(--space-4)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}@media(max-width:767px){html{scroll-padding-bottom:16rem}.before-after{grid-template-columns:minmax(0,1fr)}.dialog-backdrop{padding:var(--space-2)}.dialog{max-height:calc(100dvh - 16px);padding:var(--space-4)}.dialog__actions{flex-direction:column-reverse}.form-actions>button,.dialog__actions>button{width:100%}.card{padding:var(--space-4)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
