/* Devil's Advocate — fight-card look. Ink ground, red for the Devil, amber for you. */
:root{
  --bg:#0F0E11;--card:#1A181E;--sunk:#141217;--field:#120F14;--btn:#231F28;
  --ink:#F3EEE8;--ink2:#E4DED8;--muted:#B5AEBA;--dim:#9B94A0;--faint:#6E6873;
  --line:#2B2730;--line2:#3A3540;
  --red:#C8242A;--red-hi:#FF5A5D;--red-dk:#A81E23;--red-bub:#2A1416;--red-bub-line:#4A2023;
  --amber:#F4A259;--amber-hi:#FFC48A;--amber-bub:#2E2620;--amber-tint:#241C17;
  --green:#8FD6B0;
  --display:Anton,Impact,"Arial Narrow",sans-serif;
  --sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 var(--sans)}
a{color:var(--amber)} a:hover{color:var(--amber-hi)}
input,textarea,select,button{font:inherit}
input::placeholder,textarea::placeholder{color:var(--faint)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* header / footer */
.top{border-bottom:1px solid var(--line)}
.top-in{max-width:1160px;margin:0 auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none}
.brand span{font-family:var(--display);font-size:20px;letter-spacing:1px;text-transform:uppercase}
.top nav{display:flex;gap:22px;align-items:center;flex-wrap:wrap;font-size:15px}
.top nav a{color:var(--muted);text-decoration:none} .top nav a:hover{color:var(--ink)}
.livepill{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--muted)}
.livepill i{width:10px;height:10px;border-radius:50%;background:var(--red-hi);animation:blink 1.4s infinite}
@keyframes blink{50%{opacity:.35}}
.foot{border-top:1px solid var(--line);margin-top:40px}
.foot-in{max-width:1160px;margin:0 auto;padding:24px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--dim);font-size:14px}
.foot strong{color:var(--ink)}
.wrap{max-width:1160px;margin:0 auto;padding:24px}
.narrow{max-width:880px}
.flash{background:#3a1b1d;border:1px solid var(--red);padding:10px 14px;border-radius:10px;margin-bottom:16px}

/* type */
.eyebrow{margin:0;color:var(--amber);font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase}
.display{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:.5px;line-height:.95}
.muted{color:var(--dim)} .small{font-size:13px} .center{text-align:center}

/* buttons */
.btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 20px;border-radius:12px;border:1px solid var(--line2);background:var(--btn);color:var(--ink);font-weight:600;cursor:pointer;text-decoration:none}
.btn:hover{color:var(--ink);border-color:#4f4956}
.btn.primary{background:var(--red);border-color:var(--red);color:#fff;font-weight:700}
.btn.primary:hover{background:var(--red-dk);color:#fff}
.btn.amber{background:var(--amber);border-color:var(--amber);color:var(--bg)}
.btn.big{min-height:54px;font-size:17px;padding:0 26px}
.btn.on{background:var(--amber-tint);border-color:var(--amber);color:var(--amber-hi)}
.btn:disabled{opacity:.5;cursor:default}
.btn svg{flex:0 0 auto}

/* cards */
.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:24px}
.card.sunk{background:var(--sunk)}

/* ---------- home: fight card ---------- */
.fight{max-width:1160px;margin:0 auto;padding:40px 24px 0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}
.vs-row{display:flex;align-items:center;justify-content:center;gap:clamp(16px,4vw,48px);flex-wrap:wrap}
.vs-row .who{font-family:var(--display);text-transform:uppercase;line-height:.9;font-size:clamp(60px,11vw,150px)}
.vs-row .devil{color:var(--red-hi)}
.vs-badge{font-family:var(--display);font-size:clamp(26px,4vw,46px);color:var(--bg);background:var(--amber);border-radius:999px;width:clamp(62px,8vw,96px);height:clamp(62px,8vw,96px);display:flex;align-items:center;justify-content:center}
.fight .lead{margin:8px 0 0;color:var(--muted);font-size:19px;max-width:620px}
.arena{max-width:920px;margin:0 auto;padding:40px 24px 0}
.arena form{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:10px;display:flex;flex-direction:column;gap:10px}
.believe{display:flex;align-items:center;gap:14px;background:var(--field);border:1.5px solid var(--line2);border-radius:16px;padding:6px 18px 6px 22px;flex-wrap:wrap}
.believe:focus-within{border-color:var(--amber)}
.believe label{font-family:var(--display);font-size:26px;text-transform:uppercase;color:var(--amber);letter-spacing:.5px}
.believe input{flex:1 1 260px;min-width:0;font-size:22px;font-weight:600;color:var(--ink);background:transparent;border:0;padding:14px 0;outline:none}
.ctx{padding:0 6px}
.ctx summary{cursor:pointer;color:var(--dim);font-size:14px;padding:4px 0;list-style:none}
.ctx summary::-webkit-details-marker{display:none}
.ctx textarea{width:100%;margin-top:6px;color:var(--ink);background:var(--field);border:1px solid var(--line2);border-radius:12px;padding:12px 14px;resize:vertical}
.modes{display:flex;flex-wrap:wrap;gap:8px;padding:4px 6px;align-items:center;border:0;margin:0}
.modes legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.pill{position:relative}
.pill input{position:absolute;opacity:0;inset:0;cursor:pointer;margin:0}
.pill span{min-height:44px;display:flex;align-items:center;padding:0 18px;border-radius:999px;border:1.5px solid var(--line2);color:var(--ink2);font-size:15px;font-weight:700;cursor:pointer}
.pill span small{opacity:.75;font-weight:500;font-size:15px;margin-left:5px}
.pill input:checked+span{background:var(--amber);border-color:var(--amber);color:var(--bg)}
.pill input:focus-visible+span{outline:2px solid var(--amber-hi);outline-offset:2px}
.mode-blurb{flex:1 1 200px;color:var(--dim);font-size:14px;text-align:right}
.ways{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.way{min-height:76px;display:flex;align-items:center;gap:14px;padding:0 20px;background:var(--btn);color:var(--ink);border:1px solid var(--line2);border-radius:14px;cursor:pointer;text-align:left}
.way:hover{border-color:#4f4956}
.way b{display:block;font-size:17px}
.way small{display:block;font-size:13px;color:#A9A2AE;font-weight:400}
.way.primary{background:var(--red);border-color:var(--red);color:#fff}
.way.primary:hover{background:var(--red-dk)}
.way.primary small{color:#FFE1E1}
.starters{padding:22px 6px 0;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center}
.starters .muted{font-size:14px;margin-right:4px}
.chip{min-height:44px;padding:0 16px;background:transparent;color:var(--ink2);border:1px dashed #4A4450;border-radius:999px;font-size:14px;cursor:pointer}
.chip:hover{border-color:var(--amber);color:var(--amber-hi)}
.rules{max-width:1160px;margin:0 auto;padding:88px 24px 40px}
.rules-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:2px solid var(--ink);padding-bottom:12px;margin-bottom:8px}
.rules-head h2{margin:0;font-size:44px}
.rule{display:flex;gap:24px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}
.rule .n{flex:0 0 64px;font-family:var(--display);font-size:36px;color:var(--red-hi);line-height:1}
.rule b{flex:1 1 260px;font-size:22px}
.rule span{flex:2 1 340px;color:#A9A2AE}
.example{max-width:1160px;margin:0 auto;padding:24px 24px 40px}
.example a{display:flex;flex-wrap:wrap;align-items:center;gap:28px;justify-content:space-between;background:var(--amber);color:var(--bg);border-radius:22px;padding:32px 36px;text-decoration:none}
.example .q{font-size:26px;font-weight:700;line-height:1.25;display:block;margin:6px 0}
.example .score{display:flex;align-items:center;gap:16px;font-family:var(--display);font-size:32px}
.example .score b{font-size:76px;line-height:1;font-weight:400}
.example .score b:first-child{color:#8E1C1F}

/* ---------- live (voice + chat) ---------- */
.live{max-width:1200px;margin:0 auto;padding:32px 24px;display:flex;flex-wrap:wrap;gap:24px;align-items:stretch}
.stage{flex:999 1 560px;min-width:0;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:36px;display:flex;flex-direction:column;align-items:center;gap:26px;text-align:center}
.stage h1{margin:0;font-size:30px;font-weight:600;line-height:1.25;max-width:560px}
.orb{position:relative;width:240px;height:240px;display:flex;align-items:center;justify-content:center}
.orb .r1,.orb .r2,.orb .core{position:absolute;border-radius:50%}
.orb .r1{inset:0;border:1.5px solid #3A1E21}
.orb .r2{inset:26px;border:1.5px solid #5A2528}
.orb .core{inset:52px;background:#2A1C25;transition:background .2s,box-shadow .2s,transform .2s}
.orb .bars{position:relative;display:flex;gap:6px;align-items:center;height:56px;opacity:.25;transition:opacity .2s}
.orb .bars span{width:6px;border-radius:3px;background:#FFE8E8;height:14px}
.orb.live .core{background:#3B1A1D}
.orb.talking .core{background:var(--red);box-shadow:0 0 80px rgba(229,56,59,.45)}
.orb.talking .bars{opacity:1}
.orb.talking .bars span{animation:bar .7s ease-in-out infinite alternate}
.orb.talking .bars span:nth-child(2){animation-delay:.1s}.orb.talking .bars span:nth-child(3){animation-delay:.25s}
.orb.talking .bars span:nth-child(4){animation-delay:.05s}.orb.talking .bars span:nth-child(5){animation-delay:.3s}
.orb.talking .bars span:nth-child(6){animation-delay:.15s}.orb.talking .bars span:nth-child(7){animation-delay:.2s}
@keyframes bar{from{height:10px}to{height:52px}}
.orb.listening .core{background:#163327;box-shadow:0 0 60px rgba(143,214,176,.35)}
.orb.listening .r2{border-color:var(--green)}
.status b{display:block;font-size:17px}
.status span{color:var(--dim);font-size:14px}
.clock{display:flex;flex-direction:column;align-items:center}
.clock b{font-family:var(--display);font-weight:400;font-size:72px;line-height:1;letter-spacing:2px;font-variant-numeric:tabular-nums}
.clock span{color:var(--dim);font-size:13px;letter-spacing:1.5px;text-transform:uppercase}
.clock.low b{color:var(--red-hi)}
.controls{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.side{flex:1 1 320px;min-width:0;display:flex;flex-direction:column;gap:16px}
.side .card{padding:22px}
.side h2{margin:0 0 10px;font-size:13px;color:var(--muted);font-weight:700;letter-spacing:1.5px;text-transform:uppercase}
.tlines{display:flex;flex-direction:column;gap:14px;overflow:auto;max-height:560px}
.tline .who{font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--amber)}
.tline.da .who{color:var(--red-hi)}
.tline p{margin:2px 0 0;font-size:15px;color:var(--ink2)}
.belief-card .q{font-size:20px;font-weight:600;line-height:1.3;display:block;margin-top:6px}
.side .clock{align-items:flex-start}
.side .clock b{font-size:56px}
.meter{margin-top:10px;height:6px;border-radius:3px;background:var(--line);overflow:hidden}
.meter i{display:block;height:100%;background:var(--amber);width:0;transition:width .5s linear}
.hits{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.hits li{display:flex;gap:8px;align-items:flex-start;color:var(--ink2)}
.hits li svg{flex:0 0 auto;margin-top:3px}
.hits .none{color:var(--dim);font-size:14px}

/* chat */
.chatbox{flex:999 1 560px;min-width:0;background:var(--card);border:1px solid var(--line);border-radius:20px;display:flex;flex-direction:column;height:calc(100vh - 150px);min-height:560px}
.msgs{flex:1 1 auto;padding:28px;display:flex;flex-direction:column;gap:16px;overflow-y:auto}
.sys{align-self:center;background:var(--amber-tint);border:1px solid #5A3E26;color:#F4C08F;border-radius:999px;padding:6px 16px;font-size:14px;font-weight:600;text-align:center}
.msg{display:flex;flex-direction:column;gap:4px;max-width:78%;align-self:flex-start}
.msg .who{font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--red-hi)}
.msg p{margin:0;padding:12px 16px;background:var(--red-bub);border:1px solid var(--red-bub-line);border-radius:16px 16px 16px 4px;white-space:pre-wrap;overflow-wrap:anywhere}
.msg.me{align-self:flex-end;align-items:flex-end}
.msg.me .who{color:var(--amber)}
.msg.me p{background:var(--amber-bub);border-color:#3D3229;border-radius:16px 16px 4px 16px}
.msg.err p{background:#3a1b1d;border-color:var(--red)}
.typing{display:flex;gap:8px;align-items:center;color:var(--dim);font-size:14px}
.typing i{width:8px;height:8px;border-radius:50%;background:var(--red-hi);animation:blink 1s infinite}
.composer{border-top:1px solid var(--line);padding:16px;display:flex;gap:10px;align-items:flex-end}
.composer textarea{flex:1 1 auto;min-width:0;font-size:16px;color:var(--ink);background:var(--field);border:1px solid var(--line2);border-radius:14px;padding:12px 14px;resize:none;max-height:160px}
.composer textarea:focus{outline:none;border-color:var(--amber)}
.send{flex:0 0 auto;width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:var(--red);color:#fff;border:0;border-radius:14px;cursor:pointer}
.send:hover{background:var(--red-dk)} .send:disabled{opacity:.45;cursor:default}

/* phone page */
.phone-wrap{max-width:880px;margin:0 auto;padding:40px 24px;display:flex;flex-direction:column;gap:22px}
.phone-wrap h1{margin:6px 0 0;font-size:28px;font-weight:600;line-height:1.25}
.phone-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;align-items:stretch}
.ring{display:flex;flex-direction:column;gap:12px;align-items:center;text-align:center}
.ring h2,.ringme h2{margin:0;font-size:13px;color:var(--muted);font-weight:700;letter-spacing:1.5px;text-transform:uppercase}
.ring .num{font-size:24px;font-weight:700;color:var(--ink);text-decoration:none}
.code{font-family:var(--display);font-size:60px;line-height:1;letter-spacing:6px;color:var(--amber);font-variant-numeric:tabular-nums}
.ringme{display:flex;flex-direction:column;gap:12px}
.ringme label{font-weight:600}
.ringme input{font-size:18px;color:var(--ink);background:var(--bg);border:1px solid var(--line2);border-radius:12px;padding:13px 14px}
.waiting{display:flex;align-items:center;gap:10px;color:var(--dim);font-size:14px;justify-content:center}

/* debrief */
.debrief{max-width:880px;margin:0 auto;padding:48px 24px 40px;display:flex;flex-direction:column;gap:28px}
.debrief h1{margin:8px 0 0;font-size:clamp(30px,4vw,42px);font-weight:700;line-height:1.15}
.scoreboard{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;padding:28px 32px}
.scores{display:flex;align-items:center;gap:22px;font-family:var(--display);text-transform:uppercase}
.scores div{display:flex;flex-direction:column;align-items:center}
.scores b{font-weight:400;font-size:88px;line-height:1}
.scores small{font-size:15px;letter-spacing:1.5px;color:var(--muted)}
.scores .dash{font-size:44px;color:#5A5460}
.scores .d b{color:var(--red-hi)}
.scoreboard .why{margin:0;flex:1 1 240px;font-size:19px;font-weight:600}
.sec h2{margin:0 0 10px;color:var(--amber);font-size:14px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}
.sec p{margin:0 0 6px;font-size:18px}
.args{display:flex;flex-direction:column;gap:12px}
.arg{display:flex;gap:18px;align-items:flex-start;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px 20px}
.arg b{flex:0 0 auto;font-family:var(--display);font-weight:400;font-size:30px;line-height:1;color:var(--red-hi)}
.arg p{margin:0;color:var(--ink2);font-size:16px}
.pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}
.pair .card{padding:22px}
.pair h2{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:14px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}
.pair .gave h2{color:#FF8A8C} .pair .held h2{color:var(--green)}
.pair ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;color:var(--ink2)}
.pair p{margin:0;color:var(--ink2)}
.summary h3{color:var(--amber);margin:22px 0 6px;font-size:14px;text-transform:uppercase;letter-spacing:1.5px}
.summary p,.summary li{margin:4px 0}
.share{display:flex;gap:10px;flex-wrap:wrap}
.share form{display:contents}
.transcript{border-top:1px solid var(--line);padding-top:18px}
.transcript summary{cursor:pointer;color:var(--muted);font-weight:600}
.transcript .tlines{max-height:none;margin-top:14px}
.pending{display:flex;gap:10px;align-items:center;color:var(--dim)}

/* ---------- admin ---------- */
.ad{min-height:100vh;display:flex;flex-wrap:wrap;font-size:15px}
.ad-nav{flex:1 1 220px;max-width:100%;background:var(--sunk);border-right:1px solid var(--line);padding:22px 16px;display:flex;flex-direction:column;gap:4px}
.ad-nav .brand{padding:0 8px 18px}
.ad-nav .brand span span{display:block}
.ad-nav .brand .sub{font-family:var(--sans);font-size:12px;color:var(--dim);letter-spacing:0;text-transform:none}
.ad-nav a.item{min-height:44px;display:flex;align-items:center;gap:10px;padding:0 12px;border-radius:10px;color:var(--muted);text-decoration:none}
.ad-nav a.item:hover{color:var(--ink);background:#1D1A21}
.ad-nav a.item.on{background:var(--amber-tint);color:var(--amber-hi);font-weight:600}
.ad-nav .grow{flex:1 1 auto}
.ad-nav a.quiet{min-height:44px;display:flex;align-items:center;padding:0 12px;color:var(--dim);text-decoration:none;font-size:14px}
.ad-main{flex:999 1 560px;min-width:0;padding:32px;display:flex;flex-direction:column;gap:22px}
.ad-main.slim{max-width:920px}
.ad-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.ad-head h1{margin:0;font-size:44px;line-height:1.05}
.seg{display:flex;gap:4px;background:var(--sunk);border:1px solid var(--line);border-radius:12px;padding:4px}
.seg a,.seg label span{min-height:36px;display:flex;align-items:center;padding:0 14px;border-radius:9px;font-size:14px;font-weight:600;color:var(--muted);text-decoration:none;cursor:pointer}
.seg a.on,.seg input:checked+span{background:var(--amber);color:var(--bg)}
.seg label{position:relative}
.seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.seg input:focus-visible+span{outline:2px solid var(--amber-hi);outline-offset:2px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.stat{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px;color:var(--muted);font-size:13px}
.stat b{display:block;font-family:var(--display);font-weight:400;font-size:34px;line-height:1.1;color:var(--ink)}
.stat.amber b{color:var(--amber)} .stat.green b{color:var(--green)} .stat.red b{color:var(--red-hi)}
.split{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 18px;display:flex;flex-wrap:wrap;gap:18px;align-items:center}
.split .lbl{color:var(--muted);font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}
.split .bar{flex:1 1 320px;display:flex;height:12px;border-radius:6px;overflow:hidden;background:var(--line)}
.split .key{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:var(--ink2)}
.split .key span{display:flex;align-items:center;gap:6px}
.split .key i{width:10px;height:10px;border-radius:2px}
.c-web{background:var(--red)} .c-chat{background:var(--amber)} .c-phone{background:var(--green)}
.filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.filters input[type=search]{flex:1 1 260px;min-width:0;min-height:44px;color:var(--ink);background:var(--field);border:1px solid var(--line2);border-radius:12px;padding:0 14px}
.fchip{min-height:44px;display:inline-flex;align-items:center;padding:0 16px;border-radius:999px;border:1.5px solid var(--line2);color:var(--ink2);font-size:14px;font-weight:600;text-decoration:none}
.fchip.on{background:var(--amber-tint);color:var(--amber-hi);border-color:var(--amber)}
.tablebox{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:14px}
.tablebox table{min-width:820px}
th{text-align:left;color:var(--dim);font-size:12px;letter-spacing:1px;text-transform:uppercase;font-weight:700;padding:14px 8px}
td{padding:14px 8px;border-top:1px solid var(--line);vertical-align:top}
th:first-child,td:first-child{padding-left:16px} th:last-child,td:last-child{padding-right:16px}
td.r,th.r{text-align:right}
td.when{color:var(--muted);white-space:nowrap}
td a.bel{color:var(--ink);font-weight:600;text-decoration:none} td a.bel:hover{color:var(--amber-hi)}
td .meta{display:block;color:var(--dim);font-size:12px}
td.score{font-family:var(--display);font-size:18px;white-space:nowrap} td.score .d{color:var(--red-hi)} td.score .sep{color:var(--faint)}
.badge{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap;background:var(--btn);color:var(--ink2)}
.b-web{background:#3A1A1D;color:#FF9A9C} .b-chat{background:#3A2A1A;color:var(--amber-hi)} .b-phone{background:#16302A;color:var(--green)}
.b-live{background:var(--red);color:#fff} .b-ended,.b-new{color:var(--dim)} .b-new{background:transparent;border:1px solid var(--line2)}
.b-feat{background:var(--amber-tint);color:var(--amber-hi)}
.empty{padding:40px 16px;text-align:center;color:var(--dim)}
.facts{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.facts div{background:var(--card);padding:14px 16px}
.facts dt{color:var(--dim);font-size:12px;letter-spacing:1px;text-transform:uppercase}
.facts dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.two{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}
.two>.main{flex:999 1 460px;min-width:0}
.two>.aside{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:16px}
.at{display:grid;grid-template-columns:56px minmax(0,1fr);gap:12px}
.at .ts{color:var(--faint);font-size:12px;font-variant-numeric:tabular-nums;padding-top:2px}
.mini-score{display:flex;align-items:center;gap:18px;font-family:var(--display);text-transform:uppercase}
.mini-score div{display:flex;flex-direction:column;align-items:center}
.mini-score b{font-weight:400;font-size:56px;line-height:1} .mini-score .d b{color:var(--red-hi)}
.mini-score small{font-size:12px;letter-spacing:1px;color:var(--muted)}
.mini-score .sep{font-size:28px;color:#5A5460}
.mini-score p{font-family:var(--sans);text-transform:none;font-size:14px;color:var(--ink2);flex:1;margin:0}
.h-label{margin:0 0 10px;color:var(--muted);font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}
.h-label.amber{color:var(--amber)}
.btn.ghost-red{background:transparent;color:#FF8A8C;border-color:#5A2528}
.btn.feat{background:var(--amber-tint);color:var(--amber-hi);border-color:var(--amber)}
.inline{display:inline}
/* settings */
.form-sec{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;display:flex;flex-direction:column;gap:16px}
.form-sec h2{margin:0;font-size:18px;display:flex;align-items:center;gap:10px}
.form-sec h2 .dot{width:10px;height:10px;border-radius:50%}
.form-sec .row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.field{display:flex;flex-direction:column;gap:6px;font-weight:600}
.field input,.field select{font-weight:400;color:var(--ink);background:var(--field);border:1px solid var(--line2);border-radius:10px;padding:11px 12px;min-width:0}
.field input:focus,.field select:focus{outline:none;border-color:var(--amber)}
.field .help{font-weight:400;color:var(--dim);font-size:13px}
.ok{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--green)}
.notset{font-size:13px;color:#FF8A8C}
.engine{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.engine>b{flex:0 0 150px}
.engine input[type=text]{flex:1 1 200px;min-width:0;color:var(--ink);background:var(--field);border:1px solid var(--line2);border-radius:10px;padding:11px 12px}
.hook{background:var(--field);border:1px dashed var(--line2);border-radius:12px;padding:14px 16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.hook>span{flex:1 1 300px;min-width:0}
.hook code{font-size:14px;color:var(--amber-hi);overflow-wrap:anywhere}
.check{display:flex;align-items:center;gap:12px;cursor:pointer}
.check input{width:20px;height:20px;accent-color:var(--amber)}
.check small{display:block;color:var(--dim);font-size:13px}
.login-box{max-width:420px;margin:60px auto;padding:0 16px}
.form label{display:block;margin-bottom:14px;font-weight:600}
.form input,.form select{width:100%;margin-top:6px;padding:11px 12px;border-radius:10px;border:1px solid var(--line2);background:var(--field);color:var(--ink)}
.form .help{font-weight:400;color:var(--dim);font-size:13px}
.changelog h3{color:var(--amber);font-size:15px;margin:18px 0 6px}
.changelog li{margin:4px 0;color:var(--ink2)}
@media (min-width:820px){.ad-nav{flex:0 0 240px;min-height:100vh;position:sticky;top:0;align-self:flex-start;height:100vh}}
@media (max-width:819px){.ad-nav{flex-direction:row;flex-wrap:wrap;align-items:center;border-right:0;border-bottom:1px solid var(--line);padding:14px}.ad-nav .brand{flex:1 1 100%;padding-bottom:8px}.ad-nav .grow{display:none}.ad-main{padding:20px 16px}}

@media (max-width:600px){
  .stage{padding:24px 18px}
  .clock b{font-size:56px}
  .orb{width:200px;height:200px}
  .chatbox{height:calc(100vh - 120px)}
  .msgs{padding:18px}
  .msg{max-width:90%}
  .mode-blurb{text-align:left}
  .scoreboard{padding:22px}
  .scores b{font-size:68px}
}
