/* sign-in screens (scoped so they never affect the app) */
.gate{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:24px 16px;background:#f4f6fb;color:#14213d;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
:root{--g-ink:#14213d;--g-muted:#5b6475;--g-line:#dfe3ec;--g-brand:#1d4ed8;--g-ok:#15803d;--g-crit:#b91c1c}
.gate{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:24px 16px}
.gate .card{background:#fff;border-radius:16px;padding:28px 24px;width:100%;max-width:460px;margin:12px 0;box-shadow:0 6px 24px rgba(20,33,61,.08)}
.gate .wide{max-width:760px}
.gate h1{margin:0 0 6px;font-size:1.6rem}
.gate h2{margin:0 0 10px;font-size:1.15rem}
.gate .muted{color:var(--g-muted)}
.gate .small{font-size:.88rem}
.gate .ok{color:var(--g-ok);font-weight:700}
.gate .crit{color:var(--g-crit);font-weight:600}
.gate label{display:block;font-size:.9rem;color:var(--g-muted);margin:12px 0 4px}
.gate input,.gate select{width:100%;padding:11px 12px;border:1px solid var(--g-line);border-radius:10px;font-size:1rem;background:#fff;color:var(--g-ink)}
.gate .row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.gate .chk{display:flex;gap:8px;align-items:center;color:var(--g-ink);margin:6px 0}
.gate .chk input{width:auto}
.gate button{font:inherit;cursor:pointer;border-radius:10px;padding:11px 16px;border:1px solid var(--g-line);background:#fff;color:var(--g-ink)}
.gate button.primary{background:var(--g-brand);border-color:var(--g-brand);color:#fff;font-weight:600;width:100%;margin-top:16px}
.gate button.link{border:0;background:none;color:var(--g-brand);padding:6px 0;text-decoration:underline}
.gate .msg{margin-top:12px;min-height:1.2em}
.gate table{width:100%;border-collapse:collapse;font-size:.9rem}
.gate td,.gate th{text-align:left;padding:6px 4px;border-bottom:1px solid var(--g-line)}
.gate .pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.8rem;background:#eef1f7}
.gate .pill.ok{background:#e7f6ec}
.gate .pill.no{background:#fdeaea;color:var(--g-crit)}
.gate code{background:#eef1f7;padding:2px 6px;border-radius:6px;font-size:1.05rem;letter-spacing:.08em}
