@font-face{font-family:"Source Serif 4 Display";src:url(/fonts/SourceSerif4Display-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Source Serif 4";src:url(/fonts/SourceSerif4Text-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Source Serif 4";src:url(/fonts/SourceSerif4Text-Italic.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:"Source Sans 3";src:url(/fonts/SourceSans3-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Source Sans 3";src:url(/fonts/SourceSans3-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Source Code Pro;src:url(/fonts/SourceCodePro-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--paper:#f6f1e8;--paper-raised:#fbf8f2;--stone:#d6cfc3;--dust:#6f6a62;--charcoal:#2b2925;--ink:#1c1b18;--gold:#8a6a3b;--gold-deep:#6b4f28;--sold-veil:#1c1b1847;--font-serif-display:"Source Serif 4 Display", "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--font-serif:"Source Serif 4", "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--font-sans:"Source Sans 3", "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono:"Source Code Pro", ui-monospace, "Cascadia Code", "SF Mono", Menlo, Consolas, monospace}*,:before,:after{box-sizing:border-box}html,body{background:var(--paper);color:var(--charcoal);margin:0;padding:0}body{font-family:var(--font-serif);min-height:100vh;font-size:18px;line-height:1.55}a{color:var(--charcoal);text-decoration:none}a:hover,a:focus-visible{text-decoration:underline;-webkit-text-decoration-color:var(--gold);text-decoration-color:var(--gold);text-underline-offset:.2em}:focus-visible{outline:1px solid var(--gold);outline-offset:2px}.placeholder{min-height:100vh;padding:24px 48px}.wordmark{font-family:var(--font-serif-display);letter-spacing:.02em;color:var(--charcoal);margin:0;font-size:1.5rem;font-weight:400}.home-meta{font-family:var(--font-sans);margin-top:24px;font-size:.95rem}.auth-shell{max-width:28rem;min-height:100vh;margin:0 auto;padding:48px 24px 80px}.auth-shell h1{font-family:var(--font-serif-display);color:var(--ink);margin:32px 0 16px;font-size:1.75rem;font-weight:400}.auth-form{font-family:var(--font-sans);flex-direction:column;gap:16px;display:flex}.auth-form label{flex-direction:column;gap:6px;font-size:.95rem;display:flex}.auth-form input,.auth-form textarea{font:inherit;border:1px solid var(--stone);background:var(--paper-raised);color:var(--charcoal);border-radius:2px;padding:10px 12px}.auth-form button,.text-button{font-family:var(--font-sans);border:1px solid var(--charcoal);background:var(--charcoal);min-height:44px;color:var(--paper);cursor:pointer;border-radius:2px;justify-content:center;align-items:center;padding:10px 16px;font-size:1rem;font-weight:500;transition:background .12s,transform 80ms,box-shadow .12s,color .12s;display:inline-flex;box-shadow:0 1px #1a1916}.auth-form button:hover,.auth-form button:focus-visible,.text-button:hover,.text-button:focus-visible{color:var(--paper);background:#4a453e;text-decoration:none;transform:translateY(-1px);box-shadow:0 3px #1a1916}.auth-form button:active,.text-button:active{color:var(--paper);box-shadow:none;background:#1a1916;transform:translateY(1px)}.text-button{background:var(--paper-raised);color:var(--charcoal);box-shadow:0 1px 0 var(--stone)}.auth-error,.auth-note,.auth-hint,.auth-links{font-family:var(--font-sans);color:var(--dust);font-size:.95rem}.auth-error{color:var(--charcoal)}.auth-links{gap:16px;margin-top:24px;display:flex}.totp-qr{width:192px;height:192px;color:var(--charcoal)}.totp-qr svg{width:192px;height:192px}code{font-family:var(--font-mono);font-size:.9em}.recovery{font-family:var(--font-mono);padding-left:1.25rem}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
