:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--brand:#6366f1;--accent:#4f46e5;--accent-hover:#4338ca;--accent-active:#3730a3;--accent-tint:#eef2ff;--navy:#1b2537;--navy-ink:#e7e9f2;--ink:#1e2536;--muted:#5c6579;--line:#e4e7ee;--bg-page:#f4f5f9;--bg:#fff;--yes:#15803d;--danger:#c81e1e;--radius:.75rem;--radius-sm:.5rem;--shadow:0 1px 2px #1018280f, 0 1px 3px #1018281a}*{box-sizing:border-box}body{color:var(--ink);background:var(--bg-page);margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}.skip-link{position:absolute;top:auto;left:-9999px}.skip-link:focus{background:var(--accent);color:#fff;border-radius:var(--radius-sm);padding:.5rem .75rem;top:1rem;left:1rem}.app-header{background:var(--bg);border-bottom:1px solid var(--line);padding:.85rem 1.25rem}.brand{color:var(--accent);margin:0;font-weight:700}.app-nav ul{flex-wrap:wrap;gap:1rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.app-nav a{color:var(--accent);align-items:center;min-height:2.75rem;font-weight:600;display:inline-flex}.app-nav a[aria-current=page]{text-decoration:underline}.app-main{max-width:64rem;margin:0 auto;padding:1.5rem 1rem}.app-main.login,.app-main.passkeys{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);width:min(100% - 2rem,27rem);box-shadow:var(--shadow);margin:3rem auto;padding:1.75rem}.app-main.passkeys{width:min(100% - 2rem,34rem)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}h1{color:var(--ink);font-size:1.5rem}.lede{color:var(--muted)}.field{flex-direction:column;gap:.25rem;max-width:20rem;display:flex}.field label{font-weight:600}select{font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);min-height:2.75rem;color:var(--ink);padding:.55rem .65rem}button.provider{font:inherit;border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;min-height:2.75rem;padding:.6rem 1.1rem;font-weight:600;transition:background .15s,border-color .15s}button.provider:hover{background:var(--accent-hover);border-color:var(--accent-hover)}button.provider:focus-visible{outline:3px solid var(--brand);outline-offset:2px}button.provider:disabled{opacity:.6;cursor:default}button.provider.secondary{background:var(--bg);color:var(--accent)}button.provider.secondary:hover{background:var(--accent-tint)}button.linklike{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;align-self:flex-start;min-height:2.75rem;padding:.5rem 0;text-decoration:underline}button.linklike:hover{color:var(--accent-hover)}button.linklike:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.provider-buttons{flex-direction:column;gap:.75rem;max-width:22rem;margin:1rem 0;display:flex}.messages:empty{display:none}.error{color:var(--danger);font-weight:700}.status{color:var(--ink)}.status:empty,.error:empty{display:none}.sign-in-form .field{max-width:22rem}.sign-in-form input[type=text]{font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);width:100%;min-height:2.75rem;color:var(--ink);padding:.55rem .7rem}.sign-in-form input[type=text]:focus-visible{outline:3px solid var(--brand);outline-offset:1px;border-color:var(--accent)}.sign-in-form input[aria-invalid=true]{border-color:var(--danger);outline:2px solid var(--danger);outline-offset:1px}.sign-in-form .hint{color:var(--muted);font-size:.9rem}.sign-in-form .signed-in-as{color:var(--ink);max-width:36rem;font-size:1.05rem}.sign-in-form .choose-prompt{color:var(--muted);margin:.35rem 0 0;font-size:.95rem}.sign-in-form .provider{width:100%;max-width:22rem}.sign-in-start{flex-wrap:wrap;align-items:stretch;gap:.5rem;max-width:30rem;display:flex}.sign-in-start input[type=text]{flex:12rem;width:auto}.sign-in-start .provider{flex:none;width:auto;max-width:none;margin:0}.signed-in .signed-in-as{color:var(--ink);font-size:1.05rem}.signed-in-as strong{color:var(--ink)}.signed-in #sign-in-success:focus{outline:3px solid var(--brand);outline-offset:2px}.or-divider{max-width:22rem;color:var(--muted);align-items:center;gap:.75rem;margin:1rem 0;display:flex}.or-divider:before,.or-divider:after{content:"";background:var(--line);flex:auto;height:1px}.passkey-option{max-width:22rem;margin-bottom:.5rem}.actions{flex-direction:column;gap:.75rem;max-width:22rem;margin-top:1rem;display:flex}.passkey-prompt-overlay{z-index:50;background:#1b253773;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.passkey-prompt{background:var(--bg);width:min(100% - 2rem,28rem);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:.85rem;padding:1.5rem;display:flex;box-shadow:0 12px 34px #10182840}.passkey-prompt-title{margin:0;font-size:1.05rem;font-weight:600}.passkey-prompt-suppress{color:var(--muted);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.passkey-prompt .actions{flex-direction:row;gap:.75rem;max-width:none;margin-top:.25rem}.passkey-prompt .actions .provider{flex:auto;width:auto;max-width:none;margin:0}.passkey-list{flex-direction:column;gap:.5rem;margin:1rem 0;padding:0;list-style:none;display:flex}.passkey-item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem .9rem;display:flex}.passkey-meta code{color:var(--ink);font-size:.9rem}.passkey-added{color:var(--muted);font-size:.85rem;display:block}.passkey-status{color:var(--muted);font-weight:600}.passkey-status.warn{color:var(--danger)}.passkey-actions{margin:1rem 0}.passkey-note,.hint{color:var(--muted);font-size:.9rem}.passkey-note{margin:.5rem 0}.passkey-back{margin-top:1.25rem}.passkey-back a,a{color:var(--accent)}.passkey-loading,.passkey-unavailable{color:var(--muted)}.admin-console-title{color:var(--ink)}.admin-section{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);max-width:32rem;margin:1rem 0;padding:1.25rem}.admin-section h2{color:var(--ink);margin-top:0;font-size:1.15rem}.admin-form{flex-direction:column;gap:.75rem;display:flex}.admin-form input,.admin-form select{font:inherit;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);min-height:2.75rem;color:var(--ink);padding:.55rem .7rem}.admin-coverage{color:var(--muted)}.admin-coverage.warn{color:var(--danger);font-weight:600}.perm-grid{border-collapse:collapse;width:100%;margin-top:1rem;font-size:.95rem}.perm-grid caption{text-align:left;margin-bottom:.5rem;font-weight:600}.perm-grid th,.perm-grid td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:.4rem .6rem}.perm-grid thead th,.perm-grid tbody th{background:var(--accent-tint)}.cell.yes{color:var(--yes);font-weight:600}.cell.no{color:var(--muted)}.scope{color:var(--ink);font-weight:400}.login .lede{max-width:36rem}.under-construction{text-align:center;margin-top:3rem}.dev-note{color:var(--muted);border-top:1px solid var(--line);max-width:36rem;margin-top:1.5rem;padding-top:.75rem;font-size:.9rem}@media (width<=30rem){.app-main.login,.app-main.passkeys{margin:2rem auto;padding:1.5rem}.perm-grid{font-size:.85rem}.perm-grid th,.perm-grid td{padding:.35rem .4rem}}
