/* Growth HQ sign-in pages (login, set password, chooser). YouGrow-only:
   nothing here names or styles a label, because these pages are served
   before anyone has proved which label they belong to. */
:root{
  --bg:#f6f8f7;--paper:#fff;--ink:#1d1f1e;--ink2:#3b3b3b;--mute:#6b736f;--line:#e4e9e6;
  --deep:#1B5036;--deep2:#246b48;--bad:#a3271c;--badbg:#fbeceb;--okbg:#e8f3ec;--focus:#2f7d55;
}
@media (prefers-color-scheme: dark){
  :root{--bg:#121514;--paper:#1b1f1d;--ink:#eef2f0;--ink2:#cfd6d2;--mute:#9aa49f;--line:#2c3330;
    --deep:#7fd0a4;--deep2:#9bdcb8;--bad:#ff8a7d;--badbg:#3a1d1a;--okbg:#17301f;--focus:#7fd0a4}
}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--bg);color:var(--ink);font:16px/1.5 Catamaran,"Segoe UI",system-ui,-apple-system,sans-serif;min-height:100vh}
body.center{display:flex;align-items:center;justify-content:center;padding:16px}
.card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:28px;width:100%;max-width:420px}
.logo{display:block;height:44px;width:auto;margin:0 0 18px}
h1{font-size:20px;line-height:1.25;margin:0 0 6px;font-weight:900}
h2{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--deep);margin:22px 0 8px;font-weight:900}
p{margin:0 0 12px;color:var(--ink2)}
.mute{color:var(--mute);font-size:14px}
label{display:block;font-weight:800;font-size:14px;margin:12px 0 4px}
input[type=email],input[type=password],input[type=text]{width:100%;height:42px;padding:0 12px;border:1px solid var(--line);border-radius:9px;
  background:var(--paper);color:var(--ink);font:inherit}
input:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.code{letter-spacing:.3em;font-variant-numeric:tabular-nums;text-align:center;font-size:20px}
button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 18px;border-radius:9px;
  border:1px solid var(--deep);background:var(--deep);color:#fff;font:inherit;font-weight:800;cursor:pointer;text-decoration:none}
@media (prefers-color-scheme: dark){button,.btn{color:#0f1a14}.logo{background:#fff;border-radius:8px;padding:4px 6px;box-sizing:content-box}}
button.ghost,.btn.ghost{background:transparent;color:var(--deep)}
button[disabled]{opacity:.6;cursor:default}
.wide{width:100%;margin-top:14px}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px}
.or{display:flex;align-items:center;gap:10px;color:var(--mute);font-size:13px;margin:20px 0 4px}
.or::before,.or::after{content:"";flex:1;height:1px;background:var(--line)}
.msg{border-radius:9px;padding:10px 12px;margin:12px 0 0;font-size:14px}
.msg:empty{display:none}
.msg.bad{background:var(--badbg);color:var(--bad)}
.msg.ok{background:var(--okbg);color:var(--deep)}
.key{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:15px;word-break:break-all;background:var(--bg);
  border:1px solid var(--line);border-radius:8px;padding:8px 10px}
.qr{margin:12px 0;min-height:0}
.qr img,.qr canvas{background:#fff;padding:8px;border-radius:8px}
ul.labels{list-style:none;margin:12px 0 0;padding:0}
ul.labels li{border-top:1px solid var(--line)}
ul.labels li:first-child{border-top:0}
ul.labels a{display:block;padding:12px 4px;color:var(--ink);font-weight:800;text-decoration:none}
ul.labels a:hover{color:var(--deep)}
ul.labels small{display:block;color:var(--mute);font-weight:600}
[hidden]{display:none !important}
