@layer theme,base,components,utilities;@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/roboto-400.woff2) format("woff2")}@font-face{font-family:Roboto;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/roboto-500.woff2) format("woff2")}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/roboto-700.woff2) format("woff2")}:root{--ink:#132b2a;--muted:#667671;--line:#dce4df;--soft-line:#e9eeeb;--canvas:#f4f6f2;--paper:#fffefa;--white:#fff;--teal:#16796d;--teal-dark:#0d5c54;--teal-soft:#e4f3ee;--navy:#173b47;--gold:#d6a54f;--clay:#c77963;--shadow:0 12px 30px rgba(28,59,51,.07);--font-ui: Roboto, ui-sans-serif, system-ui, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, "Cascadia Mono", "Segoe UI Mono", Menlo, Consolas, monospace;--rail-open: 232px;--rail-shut: 48px;--sidebar-w: 260px;--fs-2xs: 12px;--fs-xs: 13px;--fs-sm: 14px;--fs-md: 15px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 24px;--fs-3xl: 32px;--lh-body: 1.5;--lh-tight: 1.35}*{box-sizing:border-box}html{background:var(--canvas)}body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--font-ui);font-size:var(--fs-md);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,select,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(22,121,109,.22);outline-offset:2px}h1,h2,h3,h4{font-family:var(--font-ui)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select{min-height:40px;font-size:var(--fs-md)}textarea{font-size:var(--fs-md);line-height:var(--lh-body)}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.eyebrow{display:block;color:var(--teal);font-size:var(--fs-2xs);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.primary-button{min-height:40px;border-radius:8px;padding:0 15px;font-size:var(--fs-md);font-weight:700;cursor:pointer;transition:transform .18s,background .18s;border:1px solid var(--teal);background:var(--teal);color:#fff}.primary-button:hover{transform:translateY(-1px);background:var(--teal-dark)}.check-control{display:flex!important;align-items:flex-start!important;grid-template-columns:none!important;gap:9px!important;text-transform:none!important;letter-spacing:0!important}.check-control input{flex:0 0 auto;width:16px!important;height:16px!important;min-height:16px!important;margin-top:2px;accent-color:var(--teal)}.check-control span{display:grid;gap:3px}.check-control strong{font-size:var(--fs-2xs)}.check-control small{color:#7b8984;font-size:var(--fs-2xs);font-weight:500}.login-shell{min-height:100vh;display:grid;place-items:center;padding:28px;background:linear-gradient(160deg,#102e31,#173b3d 42%,#f4f6f2 42%)}.login-card{width:min(520px,100%);padding:28px 28px 24px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow);font-family:var(--font-ui)}.login-card h1{margin:8px 0 6px;font-family:var(--font-ui);font-size:28px;font-weight:500}.login-card p{margin:0 0 16px;color:var(--muted);font-size:var(--fs-md);line-height:var(--lh-body)}.login-card label{display:block;margin:0 0 12px;color:#556660;font-size:var(--fs-2xs);font-weight:700}.login-card input,.login-card select{width:100%;height:40px;margin-top:6px;padding:0 11px;border:1px solid #cfd9d3;border-radius:8px;background:#fff;font-family:var(--font-ui);font-size:var(--fs-md)}.login-card .check-control input{margin-top:6px}.login-tabs{display:flex;gap:6px;margin-bottom:16px}.login-tabs button{flex:1;min-height:40px;border:1px solid var(--line);border-radius:8px;background:#f6f8f5;font-family:var(--font-ui);font-size:var(--fs-sm);font-weight:700;cursor:pointer}.login-tabs button.active{background:var(--teal);border-color:var(--teal);color:#fff}.login-error{margin:0 0 12px;color:#a14646;font-size:var(--fs-md)}.login-actions{display:flex;justify-content:flex-end;margin-top:8px}.login-core-choice{grid-column:1/-1;margin:0 0 14px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#f8faf8}.login-core-choice legend{padding:0 6px;font-size:var(--fs-md);font-weight:700;color:var(--ink)}.login-core-choice p,.login-help{margin:0 0 10px;color:var(--muted);font-size:var(--fs-md);line-height:var(--lh-body)}.login-core-choice .check-control{margin:8px 0;font-size:var(--fs-md)!important;font-weight:500;text-transform:none;letter-spacing:0}.login-core-choice .check-control span{font-size:var(--fs-md);color:var(--ink);font-weight:500}.mfa-qr{display:block;width:240px;max-width:100%;height:auto;margin:12px auto 18px;border:1px solid var(--line);border-radius:10px;background:#fff}.mfa-qr-loading{display:grid;place-items:center;width:240px;max-width:100%;min-height:240px;margin:12px auto 18px;border:1px solid var(--line);border-radius:10px;background:#f8faf8;color:var(--muted)}.mfa-manual{margin:0 0 16px;color:var(--muted)}.mfa-manual summary{color:var(--teal);font-weight:700;cursor:pointer}.mfa-secret{display:block;margin:12px 0;padding:12px;border-radius:8px;background:#f3f6f4;font:700 16px var(--font-mono);letter-spacing:.08em;overflow-wrap:anywhere}.mfa-uri{display:inline-block;margin:0 0 16px;color:var(--teal);font-weight:700}.recovery-codes{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 12px 12px 32px;border:1px solid var(--line);border-radius:8px;background:#f8faf8}.recovery-codes code{font:700 14px var(--font-mono)}
