/* Shared look for the landing, sign-in, account and policy pages. Matches the Film Room. */
:root{
  --bg:#F2F4F8;--surface:#fff;--surface-2:#E8ECF3;--ink:#111C36;--ink-2:#465471;--ink-3:#6B7892;--line:#D3DAE6;
  --chrome:#13244A;--on-chrome:#EEF2F9;--on-chrome-2:#A9B7D4;--ball:#D8F03C;--on-ball:#18220A;--ball-ink:#566300;
  --seam:#CF2A3E;--good:#17804F;--good-bg:#DFF3E8;--flag:#C5263A;--flag-bg:#FBE2E5;--watch:#A85800;--watch-bg:#FCEBD3;
  --font-display:"Barlow Condensed","Arial Narrow",system-ui,sans-serif;--font-body:"Barlow","Segoe UI",system-ui,-apple-system,sans-serif;
  --r:10px;--r-sm:6px;color-scheme:light
}
@media (prefers-color-scheme:dark){:root{
  --bg:#0B1322;--surface:#121D33;--surface-2:#1A2743;--ink:#E9EEF8;--ink-2:#A8B4CC;--ink-3:#8290AC;--line:#26355A;
  --chrome:#080E1C;--ball-ink:#D8F03C;--seam:#FF6272;--good:#48D597;--good-bg:#10362A;--flag:#FF6272;--flag-bg:#401820;--watch:#FFB04D;--watch-bg:#3A2A10;color-scheme:dark}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 var(--font-body)}
h1,h2,h3{font-family:var(--font-display);font-weight:700;line-height:1.05;margin:0;text-transform:uppercase;letter-spacing:.01em;text-wrap:balance}
h1{font-size:clamp(38px,7vw,64px)}h2{font-size:30px}h3{font-size:22px}
p{margin:0}a{color:inherit}
.wrap{max-width:1080px;margin:0 auto;padding:0 max(18px,env(safe-area-inset-left))}
.top{background:var(--chrome);color:var(--on-chrome);padding-top:env(safe-area-inset-top)}
.top .wrap{display:flex;align-items:center;gap:16px;min-height:56px}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:22px;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:inherit}
.brand svg{width:26px;height:26px}
.top nav{margin-left:auto;display:flex;gap:4px}
.top nav a{font-family:var(--font-display);font-weight:600;font-size:17px;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--on-chrome-2);padding:6px 10px}
.top nav a:hover{color:var(--on-chrome)}
.muted{color:var(--ink-2)}.small{font-size:14px}
.eyebrow{font-family:var(--font-display);font-weight:600;font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:9px 18px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface);color:var(--ink);font:600 15px/1.1 var(--font-body);text-decoration:none;cursor:pointer}
.btn:hover{border-color:var(--ink-3)}
.btn.primary{background:var(--ball);border-color:var(--ball);color:var(--on-ball)}
.btn.danger{color:var(--flag);border-color:var(--flag)}
.btn.quiet{background:transparent;border-color:transparent;text-decoration:underline}
.btn[disabled]{opacity:.55;cursor:not-allowed}
.btn.block{width:100%}
:focus-visible{outline:2px solid var(--ball-ink);outline-offset:2px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:22px}
.stack{display:flex;flex-direction:column;gap:14px}
.field{display:flex;flex-direction:column;gap:5px}
.field label{font-family:var(--font-display);font-weight:600;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
input[type=email],input[type=password],input[type=text]{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 12px;min-height:44px;width:100%}
.check{display:flex;gap:10px;align-items:flex-start;font-size:15px}
.check input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--ink)}
.msg{padding:10px 12px;border-radius:var(--r-sm);font-size:15px}
.msg.err{background:var(--flag-bg);color:var(--flag)}
.msg.ok{background:var(--good-bg);color:var(--good)}
.msg.info{background:var(--surface-2);color:var(--ink-2)}
.auth{max-width:440px;margin:40px auto 60px}
.code{font:600 26px/1 ui-monospace,Menlo,monospace;letter-spacing:.3em;text-align:center}
.qr{background:#fff;border-radius:var(--r-sm);padding:10px;width:200px;height:200px;margin:0 auto}
.qr img{width:100%;height:100%}
.secret{font:14px ui-monospace,Menlo,monospace;word-break:break-all;background:var(--surface-2);padding:8px 10px;border-radius:var(--r-sm)}
.row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.pill{display:inline-block;font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;padding:2px 10px;border-radius:99px;background:var(--surface-2);color:var(--ink-2)}
.pill.good{background:var(--good-bg);color:var(--good)}.pill.watch{background:var(--watch-bg);color:var(--watch)}.pill.flag{background:var(--flag-bg);color:var(--flag)}
footer.site{border-top:1px solid var(--line);padding:24px 0 40px;color:var(--ink-2);font-size:14px}
footer.site .wrap{display:flex;flex-wrap:wrap;gap:8px 20px}
.prose{max-width:70ch;margin:32px auto 60px;display:flex;flex-direction:column;gap:14px}
.prose h2{margin-top:14px;font-size:24px}
.prose ul{margin:0;padding-left:22px}
.note{border-left:4px solid var(--watch);background:var(--watch-bg);padding:10px 14px;border-radius:4px}
[hidden]{display:none!important}
@media (max-width:480px){.brand{font-size:18px;gap:8px}.top .wrap{gap:10px}.top nav a{font-size:15px;padding:6px}}
