:root{color:#211812;font-family:var(--font-sans);--ink:#211812;--font-sans:"Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", serif;--font-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--paper:#fffdf9;--paper-soft:#f7f0e5;--page:#f3eee6;--surface-quiet:#eee4d6;--line:#6f6459;--line-soft:#6f64596b;--frame-line:#9a8e82;--muted:#6f6459;--chrome-ink:#16181b;--chrome-ink-selected:#25282d;--chrome-on-ink:#f4f4f2;--chrome-divider:#f4f4f22e;--chrome-hover:#f4f4f21a;--state-positive:#5d6f61;--state-warning:#816b4d;--state-danger:#81514b;--state-info:#626875;--active-border:#6f645994;--motion-fast:.14s;background:#f3eee6;font-size:14px}*{box-sizing:border-box}html,body,#root{width:100%;min-width:0;height:100%;margin:0;overflow:hidden}body{background:var(--page)}button,input,select,textarea{font:inherit}button{transition:background var(--motion-fast) ease;border:0}button[aria-pressed=true]{font-weight:800}a{color:inherit}.access-shell svg{stroke-width:1.8px}.access-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.access-panel{background:var(--paper);border:1px solid #d8d2c8;border-radius:8px;gap:18px;width:min(100%,520px);padding:24px;display:grid}.access-panel h1{font-family:var(--font-serif);margin:0;font-size:46px;font-weight:500;line-height:1.02}.access-panel p{color:var(--muted);margin:0;line-height:1.45}.access-badge,.section-kicker{width:fit-content;color:var(--ink);font-family:var(--font-mono);letter-spacing:.055em;text-transform:uppercase;align-items:center;gap:6px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.access-badge{background:#f4f1eb;border:1px solid #d8d2c8;border-radius:999px;padding:8px 10px}.section-kicker{color:#4f463d}.access-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.access-steps span{color:#8a8379;border-bottom:2px solid #ddd7cd;padding-bottom:9px;font-size:12px;font-weight:700}.access-steps span.active,.access-steps span.done{color:var(--ink);border-color:#4f4941}.access-steps span.done{opacity:.68}.access-form{gap:8px;display:grid}.access-form label{color:var(--muted);text-transform:uppercase;gap:7px;font-size:12px;font-weight:760;display:grid}.access-form>input{border:1px solid var(--line);background:var(--paper);width:100%;min-width:0;height:42px;color:var(--ink);border-radius:4px;padding:0 12px}.access-input-row{border:1px solid var(--line);background:var(--paper);border-radius:4px;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;display:grid}.access-input-row input{min-width:0;height:42px;color:var(--ink);background:0 0;border:0;border-radius:6px;outline:0;padding:0 12px}.access-input-row.otp-row input{font-family:var(--font-mono);letter-spacing:.28em;font-size:22px}.access-input-row input:disabled{cursor:default;opacity:.62}.access-input-row button,.icon-text-button{background:var(--ink);min-height:40px;color:var(--paper);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:13px;font-weight:760;display:inline-flex}.icon-text-button{border:1px solid var(--line);background:var(--paper);color:var(--ink)}.access-input-row button:disabled,.icon-text-button:disabled{cursor:default;opacity:.68;border-style:dashed}.access-input-row button:hover:not(:disabled),.icon-text-button:hover:not(:disabled){box-shadow:inset 0 0 0 1px var(--active-border)}.access-input-row button:active:not(:disabled),.icon-text-button:active:not(:disabled),.state-box button:active:not(:disabled){transform:translateY(1px)}.access-form-actions{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:5px;display:flex}.quiet-fallback{justify-content:flex-end}.access-form-actions button{color:#625c54;cursor:pointer;background:0 0;border-bottom:1px solid #0000;min-height:32px;padding:4px 0;font-size:12px}.access-form-actions button:hover:not(:disabled){color:var(--ink);border-color:currentColor}.access-form-actions button:disabled{cursor:default;opacity:.52}.authenticator-panel{gap:16px;display:grid}.state-box.authenticator-gate{align-items:start}.authenticator-gate div{gap:4px;display:grid}.authenticator-gate span{color:var(--muted);font-size:13px;line-height:1.5}.totp-enrollment{text-align:center;background:#f7f4ee;border:1px solid #d8d2c8;border-radius:4px;justify-items:center;gap:16px;padding:16px;display:grid}.totp-enrollment>div:first-child{justify-items:center;gap:7px;display:grid}.totp-enrollment h2{font-family:var(--font-serif);margin:0;font-size:25px;font-weight:500}.totp-enrollment p{max-width:380px;color:var(--muted);margin:0;font-size:13px;line-height:1.55}.totp-enrollment img{background:#fff;border:10px solid #fff;border-radius:2px;width:184px;height:184px;display:block}.manual-key{border-top:1px solid #d8d2c8;gap:6px;width:min(100%,380px);padding-top:14px;display:grid}.manual-key span{color:var(--ink);font-size:12px;font-weight:760}.manual-key code{overflow-wrap:anywhere;background:var(--paper);color:var(--ink);font-family:var(--font-mono);letter-spacing:.08em;border:1px solid #d8d2c8;border-radius:7px;padding:10px;font-size:13px}.manual-key small{color:var(--muted);font-size:11px;line-height:1.45}.state-box{border:1px solid var(--line-soft);background:var(--paper);border-radius:4px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.state-box strong,.state-box span{display:block}.state-box span{color:var(--muted);font-size:13px;line-height:1.35}.state-box button{border:1px solid var(--line);background:var(--paper);min-height:40px;color:var(--ink);cursor:pointer;border-radius:4px;padding:8px 10px;font-size:13px;font-weight:760}.state-box.danger{background:#f8efec}.state-box.info{background:#f0efed}.loading-state{place-items:start}input:focus-visible,select:focus-visible,textarea:focus-visible,.access-input-row:focus-within{box-shadow:inset 0 0 0 1px var(--active-border);outline:0}button:focus-visible,a:focus-visible{outline:2px solid var(--state-info);outline-offset:2px}@media (width<=760px){.access-shell{padding:10px}.access-panel{padding:14px}.access-panel h1{font-size:40px}.access-input-row,.state-box{grid-template-columns:minmax(0,1fr)}.access-input-row button,.icon-text-button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.access-panel,.access-badge,.access-input-row,.state-box,.totp-enrollment,.manual-key code{border-color:canvastext}}
