/* X Synergy public pages (NET1B). Tokens follow the judged prototype (net1/prototype/arena.css, from thundrillium-os xsynergy/styles.css). */
@font-face{font-family:"Big Shoulders";src:url(fonts/big-shoulders-display-latin-800-normal.woff2) format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Big Shoulders";src:url(fonts/big-shoulders-display-latin-900-normal.woff2) format("woff2");font-weight:900;font-display:swap}
@font-face{font-family:"Inter";src:url(fonts/inter-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url(fonts/jetbrains-mono-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}

:root{
  --bg:#030817;--bg2:#06152d;--panel:rgba(8,22,46,.78);--panel-solid:#071530;--line:rgba(160,190,255,.16);--line2:rgba(160,190,255,.28);
  --text:#f4f8ff;--muted:#a9bbd9;--faint:#91a5c8;
  --a:#ad8dff;--b:#35d6ff;--c:#ff5bd6;--d:#42e59a;--gold:#ffbf55;--gold-ink:#241500;
  --display:"Big Shoulders","Arial Narrow",sans-serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"JetBrains Mono",ui-monospace,monospace;
  --r:14px;--r2:22px;--gut:clamp(16px,4vw,48px);--max:1240px;
  color-scheme:dark;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;background:#071d3c}
body{margin:0;min-height:100vh;color:var(--text);font:400 16px/1.55 var(--sans);font-feature-settings:"cv11","ss01";overflow-x:hidden;
  background:radial-gradient(1100px 620px at 85% -8%,rgba(141,92,255,.20),transparent 62%),radial-gradient(900px 520px at -10% 30%,rgba(53,214,255,.09),transparent 60%),linear-gradient(180deg,var(--bg) 0%,var(--bg2) 55%,#071d3c 100%)}
::selection{background:rgba(255,191,85,.85);color:var(--gold-ink)}
a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}
a:hover{text-decoration-color:var(--gold)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px}
svg{display:block;max-width:100%}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
.skip{position:absolute;left:-9999px;top:8px;z-index:50;background:var(--gold);color:var(--gold-ink);padding:10px 14px;border-radius:10px;font-weight:700}
.skip:focus{left:12px}

/* Top bar */
.top{position:sticky;top:0;z-index:30;backdrop-filter:saturate(1.3) blur(14px);-webkit-backdrop-filter:saturate(1.3) blur(14px);background:rgba(3,8,23,.78);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;gap:14px;height:60px}
.brand{display:flex;align-items:center;gap:10px;min-height:44px;text-decoration:none;font:800 21px/1 var(--display);letter-spacing:.06em;text-transform:uppercase}
.brand .mark{width:30px;height:30px}
.brand small{font:500 12px/1.2 var(--sans);letter-spacing:0;text-transform:none;color:var(--muted);border-left:1px solid var(--line2);padding-left:10px;max-width:24ch}
.top nav{margin-left:auto}
.signin{display:inline-flex;align-items:center;min-height:44px;border:1px solid var(--line2);border-radius:999px;padding:0 16px;text-decoration:none;font-size:14px}
.signin:hover{border-color:var(--text)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border-radius:12px;border:0;text-decoration:none;
  font:800 19px/1 var(--display);letter-spacing:.07em;text-transform:uppercase;transition:transform .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s}
.btn svg{width:18px;height:18px}
.btn-gold{background:linear-gradient(180deg,#ffd27f,#ffb440);color:var(--gold-ink);box-shadow:0 10px 28px -8px rgba(255,180,64,.6),inset 0 1px 0 rgba(255,255,255,.55)}
.btn-gold:hover{transform:translateY(-2px);box-shadow:0 16px 34px -10px rgba(255,180,64,.75),inset 0 1px 0 rgba(255,255,255,.55);text-decoration:none}
.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--line2)}
.btn-ghost:hover{border-color:var(--text)}

/* Chips and small labels */
.chip{display:inline-flex;align-items:center;gap:7px;font:700 11.5px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:999px;border:1px solid currentColor;color:#7fe3ff;white-space:nowrap}
.chip::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.chip.ok{color:#5af0a8}.chip.ok::before{display:none}.chip svg{width:13px;height:13px}
.ai{display:inline-block;font:700 10.5px/1 var(--mono);letter-spacing:.1em;color:var(--b);border:1px solid currentColor;border-radius:4px;padding:2px 4px;vertical-align:2px}
.dot{width:4px;height:4px;border-radius:50%;background:var(--faint)}

/* Hero */
.hero{padding:clamp(28px,5vw,64px) 0 0}
.kicker{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 14px;color:var(--muted);font:700 12.5px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.hero h1{margin:0;font:900 clamp(50px,7.4vw,104px)/.9 var(--display);text-transform:uppercase;letter-spacing:.016em;word-spacing:.04em;text-wrap:balance;max-width:16ch;overflow-wrap:anywhere}
.hero h1.h1-proof{font-size:clamp(40px,5.6vw,76px);max-width:22ch}
.hero .lede{margin:18px 0 0;max-width:62ch;color:var(--muted);font-size:clamp(16px,1.6vw,19px)}
.hero .lede a{color:var(--text)}
.act{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,.95fr);align-items:center;gap:14px 32px;margin-top:28px}
.act .btn-gold{min-width:300px;min-height:72px;font-size:23px;flex-direction:column;gap:7px;padding:10px 28px}
.act .btn-gold .bt{display:inline-flex;align-items:center;gap:10px}
.act .btn-gold small{font:700 13px/1 var(--mono);letter-spacing:.02em;text-transform:none;color:#5a3a00}
.hook{margin:0;font:900 clamp(28px,2.6vw,34px)/1 var(--display);text-transform:uppercase;letter-spacing:.02em;color:var(--gold)}
.fine{margin:0;color:var(--muted);font-size:14.5px;line-height:1.45;max-width:46ch}
.fine b{color:var(--text);font-weight:620}
.hero .fine svg{display:inline-block;width:16px;height:16px;vertical-align:-3px;margin-right:6px;color:var(--d)}
.stats{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.stat{--tone:var(--b);display:flex;align-items:baseline;gap:14px;border-radius:var(--r2);padding:18px 22px;border:1px solid color-mix(in srgb,var(--tone) 42%,transparent);
  background:linear-gradient(180deg,color-mix(in srgb,var(--tone) 14%,transparent),rgba(6,18,40,.6) 75%);position:relative;overflow:hidden}
.stat::after{content:"";position:absolute;left:22px;bottom:0;width:38%;height:4px;border-radius:3px 3px 0 0;background:var(--tone)}
.stat[data-tone=d]{--tone:var(--d)}.stat[data-tone=gold]{--tone:var(--gold)}
.stat b{font:900 clamp(48px,5vw,72px)/.85 var(--display);letter-spacing:.01em}
.stat[data-tone=gold] b{color:var(--gold)}
.stat span{font:700 12.5px/1.25 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}

/* Hero side: proof that this is alive, and a seat for you */
.hero-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:28px clamp(28px,4vw,56px);align-items:start}
.hero-grid .act{grid-template-columns:auto minmax(0,1fr)}
.hero-grid .act .fine{grid-column:1/-1}
.side{display:grid;gap:14px;margin-top:8px}
.side .label{display:flex;align-items:center;gap:8px;margin:0 0 10px;font:700 12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}
.side .label svg{width:15px;height:15px;color:var(--d)}
.latest{border:1px solid rgba(66,229,154,.35);border-radius:var(--r2);padding:22px;background:linear-gradient(180deg,rgba(66,229,154,.08),rgba(6,18,40,.6))}
.latest .lt{display:block;margin:0;font:900 30px/1 var(--display);text-transform:uppercase;letter-spacing:.02em;text-decoration:none;text-wrap:balance}
a.lt:hover{text-decoration:underline;text-decoration-color:var(--d)}
p.lt{font:500 16px/1.45 var(--sans)!important;text-transform:none!important;color:var(--muted)}
.latest .by{margin:10px 0 0;font:600 13px/1.3 var(--mono);color:var(--muted)}
.crew{border:1px solid var(--line);border-radius:var(--r2);padding:22px;background:var(--panel)}
.crew ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.crew a{display:block;position:relative;border-radius:16px}
.crew .you{display:flex;align-items:center;gap:8px;color:var(--faint);text-decoration:none;font:700 13px/1 var(--mono);text-transform:uppercase;letter-spacing:.06em}
.crew .you span{color:var(--gold)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Sections */
section{padding:clamp(56px,8vw,104px) 0 0}
.h2{font:900 clamp(34px,5vw,58px)/.94 var(--display);text-transform:uppercase;letter-spacing:.022em;margin:0 0 12px;text-wrap:balance}
.lede{color:var(--muted);max-width:60ch;margin:0;font-size:17px}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap;margin-bottom:24px}
.empty{margin:0;padding:20px 22px;border:1px dashed var(--line2);border-radius:var(--r);color:var(--muted)}

.roles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.role{padding:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:10px}
.role h3{margin:0;font:900 28px/1 var(--display);text-transform:uppercase;letter-spacing:.02em;overflow-wrap:anywhere}
.role p{margin:0;color:var(--muted);font-size:15px}
.role .meta{margin-top:auto;padding-top:6px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;font:700 12.5px/1 var(--mono);color:var(--faint);text-transform:uppercase;letter-spacing:.06em}
.role .meta a{display:inline-flex;align-items:center;gap:6px;min-height:44px;color:var(--gold);text-decoration:none}
.role .meta a svg{width:15px;height:15px}

.two{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(24px,4vw,56px);align-items:start}
.feed{list-style:none;margin:0;padding:0}
.item{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}
.item:first-child{padding-top:0}
.ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(66,229,154,.12);color:var(--d);border:1px solid rgba(66,229,154,.35)}
.ico svg{width:22px;height:22px}
.item .h4{display:inline-block;font-weight:620;font-size:16.5px;line-height:1.35;text-decoration:none}
.item .h4:hover{text-decoration:underline}
.item p{margin:4px 0 0;color:var(--muted);font-size:14.5px}
.item .when{font:600 12px/1.4 var(--mono);color:var(--faint);margin-top:8px;display:flex;gap:6px 12px;flex-wrap:wrap;align-items:center}
.item .when a{color:var(--b)}
.ok{display:inline-flex;align-items:center;gap:4px;color:#5af0a8}.ok svg{width:13px;height:13px}

.people{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.people li{display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid var(--line);border-radius:var(--r);background:var(--panel)}
.people a{display:flex;align-items:center;gap:10px;text-decoration:none;min-height:44px}
.people a{min-width:0}
.people b{font-weight:620;font-size:14.5px;min-width:0;overflow-wrap:break-word}
.people li > span{font-size:13px;color:var(--muted);padding-left:54px;margin-top:-8px;text-transform:capitalize}
.sigil{flex:none;border-radius:14px}

.steps{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;counter-reset:s}
.steps li{padding:22px;border:1px solid var(--line);border-radius:var(--r2);background:var(--panel);counter-increment:s;position:relative}
.steps li::before{content:counter(s);position:absolute;top:18px;right:20px;font:900 40px/1 var(--display);color:var(--gold);opacity:.8}
.steps svg{width:30px;height:30px;color:var(--gold)}
.steps h3{margin:12px 0 6px;font:900 26px/1 var(--display);text-transform:uppercase;letter-spacing:.02em}
.steps p{margin:0;color:var(--muted);font-size:15px}

.final{margin-top:clamp(48px,7vw,88px);border-radius:28px;padding:clamp(28px,5vw,56px);position:relative;overflow:hidden;
  background:radial-gradient(80% 120% at 100% 0%,rgba(141,92,255,.28),transparent 60%),radial-gradient(70% 100% at 0% 100%,rgba(53,214,255,.16),transparent 60%),var(--panel-solid);border:1px solid var(--line2)}
.final h2{margin:0 0 12px;font:900 clamp(38px,6vw,80px)/.9 var(--display);text-transform:uppercase;max-width:18ch;letter-spacing:.016em}
.final p{margin:0 0 24px;color:var(--muted);max-width:52ch}
.final .row,.notice .row{display:flex;gap:14px 20px;flex-wrap:wrap;align-items:center}
.alt{font-size:15px;color:var(--muted)}
a.alt{color:var(--text);display:inline-flex;align-items:center;min-height:44px}

/* Profile and proof */
.profile{display:grid;grid-template-columns:auto 1fr auto;gap:24px 32px;align-items:center}
.profile .sigil{width:96px;height:96px;border-radius:28px}
.profile h1{font-size:clamp(46px,6vw,84px)}
.handle{margin:8px 0 0;font:700 15px/1 var(--mono);color:var(--b)}
.profile .stats{margin:0;grid-template-columns:repeat(2,minmax(150px,1fr))}
.summary{margin-top:24px;max-width:70ch;padding:22px 24px;border:1px solid rgba(66,229,154,.35);background:var(--panel);border-radius:var(--r)}
.summary p{margin:0;font-size:17px;white-space:pre-line}
.evidence{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin:24px 0 0;color:var(--faint);font-size:14px}
.hero .fine{margin-top:18px}
.notice{padding-bottom:40px}
.notice .row{margin-top:26px}

/* Footer */
.foot{margin-top:clamp(64px,9vw,120px);border-top:1px solid var(--line);padding:36px 0 48px;color:var(--faint);font-size:14px}
.foot .wrap{display:grid;gap:22px;grid-template-columns:1.3fr 1fr 1fr}
.foot .h4{margin:0 0 8px;color:var(--text);font:800 16px/1 var(--display);letter-spacing:.08em;text-transform:uppercase}
.foot p{margin:0;max-width:46ch}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}

/* Phone: one column, the action stays in reach (the dock reserves its own space at the bottom). */
.dock{display:none}
@media (max-width:1100px){.hero-grid{grid-template-columns:minmax(0,1fr)}.side{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}}
@media (max-width:1000px){.act{grid-template-columns:1fr 1fr}.act .fine{grid-column:1/-1}.steps{grid-template-columns:1fr 1fr}}
@media (max-width:900px){.two{grid-template-columns:1fr}.profile{grid-template-columns:auto 1fr}.profile .stats{grid-column:1/-1}}
@media (max-width:760px){
  body{padding-bottom:calc(86px + env(safe-area-inset-bottom))}
  .brand small{display:none}
  .hero{padding-top:22px}
  .hero h1{font-size:clamp(44px,12.6vw,62px);letter-spacing:.012em}
  .hero .lede{margin-top:12px;font-size:15.5px;line-height:1.5}
  .kicker{margin-bottom:12px}
  .act,.hero-grid .act{grid-template-columns:minmax(0,1fr);gap:12px;margin-top:18px}
  .act .hook{order:-1;font-size:27px}
  .act .btn-gold{width:100%;min-width:0;min-height:68px;font-size:22px}
  .act .fine{font-size:13.5px}
  .stats{gap:8px;margin-top:20px}
  .stat{flex-direction:column;gap:6px;padding:14px 12px 16px;border-radius:16px}
  .stat::after{left:12px}
  .stat b{font-size:44px}
  .stat span{font-size:10.5px;letter-spacing:.06em}
  .steps{grid-template-columns:1fr}
  .side{grid-template-columns:minmax(0,1fr)}
  .latest .lt{font-size:26px}
  .foot .wrap{grid-template-columns:1fr}
  .foot{padding-bottom:24px}
  .dock{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;padding:10px 16px calc(10px + env(safe-area-inset-bottom));gap:12px;align-items:center;
    background:rgba(3,8,23,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line)}
  .dock .btn{flex:1 1 0;min-width:0;min-height:52px;padding:0 16px}
  .dock small{flex:0 1 38%;min-width:0;color:var(--muted);font-size:12px;line-height:1.3}
  .profile .sigil{width:72px;height:72px;border-radius:22px}
  .profile h1{font-size:clamp(40px,11vw,56px)}
}
/* The dock slides in once the hero's own button has scrolled away (no script: a scroll-driven animation where supported). */
@supports (animation-timeline: scroll()){
  @media (max-width:760px){.dock{animation:dock-in linear both;animation-timeline:scroll(root);animation-range:0 520px}}
  @keyframes dock-in{0%,75%{transform:translateY(115%)}100%{transform:none}}
}
@media (prefers-reduced-motion:reduce){*:not(.dock),*::before,*::after{animation:none!important;transition:none!important}}
/* Reduced motion: the dock still waits for the hero button to scroll away, but appears without moving. */
@supports (animation-timeline: scroll()){
  @media (max-width:760px) and (prefers-reduced-motion:reduce){.dock{animation-name:dock-show}}
  @keyframes dock-show{0%,75%{visibility:hidden;opacity:0}100%{visibility:visible;opacity:1}}
}

/* Round 2 (judge): a role picker at the action, the visitor's own slot, live-source line, evidence links. */
.act .pick,.act .fine{grid-column:1/-1}
.pick .label{margin:0 0 8px;font:700 12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}
.pick ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pick a{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid rgba(255,191,85,.55);background:rgba(255,191,85,.08);color:#ffe4b4;font-weight:620;font-size:15px;text-decoration:none}
.pick a:hover,.pick a:focus-visible{background:rgba(255,191,85,.18);border-color:var(--gold)}
.pick a span{color:var(--gold);font:700 13px/1 var(--mono)}
.next-you{border:2px dashed rgba(255,191,85,.45);border-radius:var(--r2);padding:20px 22px;background:rgba(255,191,85,.04)}
.next-you .label svg{color:var(--gold)}
.side .next-you .lt{margin:0;font:900 28px/1 var(--display);text-transform:uppercase;letter-spacing:.02em;color:#ffe4b4}
.next-you .by{margin:10px 0 0;font:600 13px/1.3 var(--mono);color:var(--gold)}
.next-you .note{margin:8px 0 0;font-size:14px;color:var(--muted)}
.source{display:flex;align-items:flex-start;gap:8px;margin:14px 0 0;font-size:13.5px;color:var(--muted)}
.source svg{flex:none;width:16px;height:16px;margin-top:1px;color:var(--d)}
.item .ev{margin:6px 0 0}
.item .ev a{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:620;font-size:14px;color:var(--text)}
.item .ev svg{width:14px;height:14px}
@media (max-width:760px){.pick a{font-size:14.5px;padding:0 14px}.next-you .lt{font-size:24px}}

/* Round 3 (pivot): the crew board. Members' sigils fill seats, open roles are empty gold seats; the hero lists each seat's first task. */
.crew .seats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.crew .seat{display:flex;flex-direction:column;align-items:center;gap:8px;min-height:44px;padding:10px 6px;border-radius:16px;text-decoration:none;color:var(--muted);font:600 12.5px/1.2 var(--mono);text-align:center}
.crew .seat span{max-width:100%;overflow-wrap:break-word;font-size:12px;line-height:1.25}
.crew .seat.open{color:#ffe4b4}
.crew .seat:hover,.crew .seat:focus-visible{background:rgba(255,255,255,.05)}
.crew .note{margin:12px 0 0;font-size:13.5px;color:var(--muted)}
.pick ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.pick a{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;min-height:44px;padding:12px 16px;border-radius:16px;height:100%}
.pick a b{font-weight:700;font-size:16px;color:#ffe4b4}
.pick a small{font-weight:450;font-size:13.5px;line-height:1.4;color:var(--muted)}
@media (max-width:760px){.pick ul{grid-template-columns:minmax(0,1fr)}.pick a{padding:10px 14px}.crew .seats{gap:8px}}
.source b{color:var(--text);font-weight:650}
/* Round 2: each seat names what it is worth; the credit ticket previews the reward on the visitor's own profile. */
.pick .st{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}
.pick .pts{display:inline-flex;align-items:center;gap:6px;flex:none;font:700 13px/1 var(--mono);font-style:normal;color:var(--gold-ink);background:var(--gold);border-radius:999px;padding:6px 10px}
.pick .pts svg{width:13px;height:13px}
.credit{grid-column:1/-1}
.credit .label{margin:0 0 8px;font:700 12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}
.ticket{display:flex;align-items:center;gap:14px;max-width:520px;padding:12px 16px;border-radius:16px;border:1px dashed rgba(255,191,85,.6);background:linear-gradient(90deg,rgba(255,191,85,.12),rgba(255,191,85,.03))}
.ticket .you{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:14px;border:2px dashed var(--gold);color:var(--gold);font:800 15px/1 var(--display);letter-spacing:.06em;text-transform:uppercase}
.ticket .tk{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.ticket .tk b{color:var(--text);font-weight:650;font-size:15px;overflow-wrap:anywhere}
.ticket .tk small{color:var(--muted);font-size:13px;overflow-wrap:anywhere}
.ticket .ok{color:var(--d);font-weight:600}
.ticket .ok svg{display:inline-block;width:13px;height:13px;vertical-align:-2px;margin-right:3px}
.ticket .pts{flex:none;font:900 34px/1 var(--display);color:var(--gold);letter-spacing:.02em}
.pick a .st{font:inherit;color:inherit}
.pick a .st b{font:700 16px/1.25 var(--sans);color:#ffe4b4}
.pick a .st b span{font:700 13px/1 var(--mono);color:var(--gold)}
@media (max-width:760px){.kicker .kind,.kicker .kind+.dot{display:none}}
@media (min-width:761px){.pick a .st{flex-wrap:wrap;row-gap:6px}.pick a .st b{white-space:nowrap}}
.hero .what{display:none}
@media (max-width:760px){.hero .what{display:block;margin:0 0 12px;color:var(--muted);font-size:14px;line-height:1.4}}
.final h2{max-width:none;text-wrap:balance}
/* One loud action: the seat reward reads as gold text, not a second gold button. */
.pick .pts{background:none;color:var(--gold);padding:0;font:700 14px/1 var(--mono)}
.side .credit{margin-top:0}
.side .credit .ticket{max-width:none}

/* ================================================================================================================ NET2B */
/* Lanes keep one colour each across the page, the card and the app: a violet, b cyan, c pink, d green. */
[data-lane=a]{--lane:var(--a)}[data-lane=b]{--lane:var(--b)}[data-lane=c]{--lane:var(--c)}[data-lane=d]{--lane:var(--d)}
.t-a{fill:var(--a)}.t-b{fill:var(--b)}.t-c{fill:var(--c)}.t-d{fill:var(--d)}
.crest{width:var(--cs,40px);height:var(--cs,40px);flex:none;color:var(--lane,var(--a))}
.crest.mini{--cs:22px}
.top nav{display:flex;align-items:center;gap:4px}
.navlink{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;font-size:14px;color:var(--muted);text-decoration:none}
.navlink:hover{color:var(--text)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:root{scrollbar-color:rgba(160,190,255,.3) var(--bg)}

/* Status chips (lanes and battles); the live script swaps st-* classes only. */
.chip i{display:none}
.chip[class*=st-]::before{display:none}
.chip[class*=st-] i{display:block;width:7px;height:7px;border-radius:50%;background:currentColor}
.chip b{font:inherit}
.st-queued{color:var(--muted)}.st-building{color:#7fe3ff}.st-testing{color:#c4b0ff}.st-submitted,.st-done{color:#5af0a8}
.st-retrying,.st-failed{color:#ff9aa9}.st-scheduled{color:var(--gold)}.st-judging{color:#c4b0ff}
.chip.live.st-live{color:#ff8a9c;border-color:rgba(255,138,156,.6);background:rgba(255,91,124,.08)}
.chip.live.st-live i{animation:pulse 1.6s ease-out infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(255,138,156,.7)}100%{box-shadow:0 0 0 8px rgba(255,138,156,0)}}

/* Battle head */
.bhead{padding:clamp(22px,4vw,44px) 0 0}
.crumbs{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:14px;color:var(--muted)}
.crumbs a{text-decoration:none;display:inline-flex;align-items:center;min-height:32px}.crumbs a:hover{color:var(--text)}
.crumbs .sep{color:var(--faint)}
.headrow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 40px;align-items:end;margin-top:10px}
.title h1{margin:0;font:900 clamp(84px,12.5vw,176px)/.8 var(--display);text-transform:uppercase;letter-spacing:.02em;overflow-wrap:anywhere;text-wrap:balance}
.clockbox{text-align:right}
.clockbox .lbl{margin:0;display:flex;gap:10px;justify-content:flex-end;align-items:center;font:700 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.clockbox .t{margin:10px 0 0;font:700 clamp(54px,6.6vw,92px)/1 var(--mono);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.clockbox .t.win{font:900 clamp(48px,6vw,80px)/1 var(--display);letter-spacing:.02em;text-transform:uppercase;color:var(--gold)}
.bhead .q{margin:18px 0 0;max-width:78ch;font-size:17px;color:var(--muted)}
.bhead .q b{color:var(--text);font-weight:620}
.bhead .q q{color:var(--text)}
.track{margin-top:22px}
.track svg{width:100%;height:14px}
.track .rail{fill:rgba(160,190,255,.14)}.track .fill{fill:var(--gold)}.track .lockmark{fill:var(--gold)}
.track .tk{display:flex;justify-content:space-between;gap:12px;margin:8px 0 0;font:700 11.5px/1.2 var(--mono);color:var(--faint);letter-spacing:.02em}
.track .lk{display:inline-flex;align-items:center;gap:6px;color:var(--gold)}.track .lk svg{width:13px;height:13px}

/* The call: hook, split, one-tap lane pills, reward */
.call{margin-top:20px}
.call .ql{margin:0 0 12px;font:900 clamp(30px,3.4vw,44px)/1 var(--display);text-transform:uppercase;letter-spacing:.022em;text-wrap:balance}
.call .ql em{font-style:normal;color:var(--gold)}
.qbar{display:block;width:100%;height:8px;margin:0 0 12px}
.pills{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:10px}
.pill{display:flex;align-items:center;gap:10px;min-height:56px;padding:0 16px 0 10px;border-radius:999px;border:1.5px solid color-mix(in srgb,var(--lane) 62%,transparent);
  background:color-mix(in srgb,var(--lane) 13%,transparent);font:800 20px/1 var(--display);letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--text);
  transition:background .18s cubic-bezier(.2,.8,.2,1),transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s}
.pill .crest{--cs:32px}
.pill .pn{flex:1;min-width:0;overflow-wrap:anywhere}
.pill .pc{font:700 15px/1 var(--mono);letter-spacing:0;color:color-mix(in srgb,var(--lane) 70%,#fff)}
a.pill:hover,a.pill:focus-visible{background:color-mix(in srgb,var(--lane) 28%,transparent);transform:translateY(-2px);box-shadow:0 10px 24px -12px var(--lane)}
.pill.won{border-color:var(--gold);background:rgba(255,191,85,.14)}
.pill .crown{color:var(--gold)}.pill .crown svg{width:20px;height:20px}
.reward{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:12px;padding:14px 18px;border-radius:14px;border:1px solid rgba(255,191,85,.55);
  background:linear-gradient(90deg,rgba(255,191,85,.17),rgba(255,191,85,.04))}
.reward b{font:900 26px/1.05 var(--display);text-transform:uppercase;letter-spacing:.03em;color:var(--gold)}
.reward b span{color:var(--text)}
.reward small{flex:1 1 320px;font-size:14px;line-height:1.45;color:#f1dcb8}
.reward.closed{border-color:var(--line2);background:var(--panel)}
.reward.closed b{color:var(--text)}.reward.closed small{color:var(--muted)}
.splitnote{margin:10px 0 0;font-size:14px;color:var(--muted)}
.bhead .source{margin-top:16px}
[data-live-state][data-mode=off]{color:#ff9aa9}

/* Lanes */
.lanes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.ln{display:flex;flex-direction:column;gap:14px;border-radius:var(--r2);padding:16px;border:1px solid color-mix(in srgb,var(--lane) 36%,transparent);
  background:linear-gradient(180deg,color-mix(in srgb,var(--lane) 13%,transparent),rgba(6,18,40,.72) 55%)}
.ln.won{border-color:var(--gold);box-shadow:0 18px 40px -24px rgba(255,191,85,.7)}
.ln header{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.ln header .crest{--cs:44px}
.ln .nm{display:grid;gap:4px;min-width:0;flex:1 1 calc(100% - 60px)}
.ln .nm span{font:700 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--lane)}
.ln .nm b{font:900 30px/.9 var(--display);text-transform:uppercase;letter-spacing:.02em}
.ln .via{margin:0;color:var(--muted);font-size:14px}
.ladder{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.ladder li{position:relative;padding:12px 0 0;font:700 11px/1.2 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}
.ladder li::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;border-radius:3px;background:rgba(160,190,255,.14)}
.ladder li.past{color:var(--muted)}.ladder li.past::before{background:color-mix(in srgb,var(--lane) 55%,transparent)}
.ladder li.now{color:var(--text)}.ladder li.now::before{background:var(--lane);box-shadow:0 2px 10px -2px var(--lane)}
.ln footer{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.ln .play{min-height:46px;font-size:16px;padding:0 16px}
.ln .play svg{width:16px;height:16px;color:var(--lane)}
.sealed{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:600 13px/1.2 var(--mono);color:var(--faint)}
.sealed svg{width:16px;height:16px}
.wonbadge{display:inline-flex;align-items:center;gap:6px;font:900 18px/1 var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}
.wonbadge svg{width:18px;height:18px}
.steps.three{grid-template-columns:repeat(3,1fr)}

/* Season */
.meta-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 14px;color:var(--muted);font:700 12.5px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.meta-line a{color:var(--text);display:inline-flex;align-items:center;min-height:32px}
.meta-line .chip svg{width:13px;height:13px}
.season-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,1fr);gap:28px clamp(28px,4vw,56px);align-items:start}
.hero .lede.small{font-size:15px;margin-top:14px}
.feature{border-radius:26px;padding:clamp(18px,2.4vw,28px);border:1px solid rgba(255,191,85,.45);display:grid;gap:14px;
  background:radial-gradient(90% 70% at 100% 0%,rgba(255,191,85,.12),transparent 60%),var(--panel-solid);box-shadow:0 24px 60px -30px rgba(0,0,0,.8)}
.fstate{margin:0;display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;font:700 12px/1 var(--mono);color:var(--faint);letter-spacing:.06em;text-transform:uppercase}
.feature h2{margin:0;font:900 clamp(52px,6vw,88px)/.85 var(--display);text-transform:uppercase;letter-spacing:.02em}
.feature h2 a{text-decoration:none}
.feature .pills{grid-template-columns:1fr 1fr}
.feature .reward{margin-top:0}
.feature .btn{justify-self:start}
.fwin{margin:0;display:flex;gap:8px;align-items:center;font:900 26px/1 var(--display);text-transform:uppercase;color:var(--gold)}.fwin svg{width:22px;height:22px}
.blist{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.blist a{display:grid;grid-template-columns:150px minmax(0,1fr) auto auto 20px;align-items:center;gap:16px;min-height:72px;padding:12px 4px;border-bottom:1px solid var(--line);text-decoration:none}
.blist a:hover{background:rgba(255,255,255,.03)}
.blist .bt{font:900 30px/1 var(--display);text-transform:uppercase;letter-spacing:.02em}
.blist .crests{display:flex;gap:4px}
.blist .bw{display:inline-flex;align-items:center;gap:6px;font:600 13px/1 var(--mono);color:var(--muted)}.blist .bw svg{width:15px;height:15px;color:var(--gold)}
.blist > li > a > svg:last-child{width:18px;height:18px;color:var(--faint)}
.plist{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.plist li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px 20px;align-items:center;padding:18px 20px;border:1px solid var(--line);border-radius:var(--r2);background:var(--panel)}
.plist .h4{font:900 28px/1 var(--display);text-transform:uppercase;letter-spacing:.02em;text-decoration:none}
.plist p{margin:6px 0 0;color:var(--muted);font-size:14.5px}
.plist .bk{font:700 13px/1 var(--mono);color:var(--gold)}
.plist .btn{min-height:46px;font-size:16px}.plist .btn svg,.btn-gold > svg,.bt svg:first-child{width:18px;height:18px}

/* Boards */
.boards{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,56px)}
.bh{margin:0 0 10px;font:900 26px/1 var(--display);text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.board{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.board li{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.board .rank{font:900 32px/1 var(--display);color:var(--faint);text-align:center;font-variant-numeric:tabular-nums}
.board .top .rank{color:var(--text)}.board .r1 .rank{color:var(--gold);font-size:44px}
.board a{display:flex;align-items:center;gap:12px;min-width:0;min-height:44px;text-decoration:none}
.board a b{font-weight:620;font-size:16px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.board .val{font:600 13px/1 var(--mono);color:var(--muted);white-space:nowrap}
.board .val b{font:900 28px/1 var(--display);color:var(--text);margin-right:4px}
.board .r1 .val b{color:var(--gold)}
.board.compact li{grid-template-columns:40px minmax(0,1fr) auto;padding:6px 0}
.board.compact .rank{font-size:24px}.board.compact .r1 .rank{font-size:30px}.board.compact .val b{font-size:22px}
section.first{padding-top:clamp(28px,4vw,48px)}
.boards.wide .lede{margin-bottom:16px}

/* Observatory */
.ticker{margin:30px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));border-top:1px solid var(--line2)}
.ticker div{padding:18px 18px 18px 0;border-bottom:1px solid var(--line)}
.ticker dt{font:700 12px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ticker dd{margin:8px 0 0;font:900 clamp(56px,6vw,84px)/.85 var(--display);font-variant-numeric:tabular-nums}
.ticker div:first-child dd{color:var(--gold)}
.prs,.scores,.classes{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.prs li{display:grid;gap:4px;padding:14px 0;border-bottom:1px solid var(--line)}
.prs .repo{font:700 12px/1 var(--mono);color:var(--b)}
.prs a,.prs span:not(.repo){font-weight:600;font-size:16px}
.prs a{display:flex;align-items:center;min-height:44px}
.scores li{display:grid;grid-template-columns:minmax(0,1fr) 140px 44px;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.scores svg{width:100%;height:8px}.scores .rail{fill:rgba(160,190,255,.14)}.scores .good{fill:var(--d)}.scores .mid{fill:var(--gold)}.scores .low{fill:#ff9aa9}
.scores b{font:900 28px/1 var(--display);text-align:right}
.inc-total{margin:0 0 14px;font-size:17px;color:var(--muted)}.inc-total b{font:900 64px/1 var(--display);color:var(--text);margin-right:8px}
.classes li{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);text-transform:capitalize}
.classes b{font:700 15px/1 var(--mono)}
.cost{margin:0;font-size:17px;color:var(--muted)}.cost b{display:block;font:900 clamp(64px,7vw,96px)/.9 var(--display);color:var(--text);margin-bottom:8px}

/* Passport */
.passport{margin:0;display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));gap:0;border-top:1px solid var(--line2);min-width:min(100%,340px)}
.pp{padding:14px 16px 14px 0;border-bottom:1px solid var(--line)}
.pp dt{font:700 11.5px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.pp dd{margin:6px 0 0;font:900 clamp(44px,5vw,64px)/.85 var(--display)}
.pp.gold dd{color:var(--gold)}.pp.green dd{color:var(--d)}.pp.violet dd{color:var(--a)}
.ranks{list-style:none;margin:24px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.ranks a{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;min-height:52px;padding:8px 18px;border-radius:999px;border:1px solid var(--line2);text-decoration:none;background:var(--panel)}
.ranks .rk-title{font-weight:620}.ranks .rk{font:600 13px/1 var(--mono);color:var(--muted)}.ranks .rk b{font:900 22px/1 var(--display);color:var(--gold)}
.ranks svg{width:16px;height:16px;color:var(--faint)}

/* Project page: one-tap backing leads; taking a seat is the second path. */
.act.back{grid-template-columns:auto minmax(0,1fr);gap:14px 28px}
.act.back .hook{grid-column:1/-1}
.hero-grid .act.back .fine{grid-column:auto;align-self:center}
.act .btn-gold .bt > svg:first-child{width:22px;height:22px}
.also{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:56px;padding:10px 18px;border-radius:14px;border:1px solid var(--line2);
  background:var(--panel);text-decoration:none;color:var(--muted);font-size:15px}
.also b{color:var(--text);font-weight:650}
.also svg{flex:none;width:18px;height:18px;color:var(--gold)}
.also:hover{border-color:rgba(255,191,85,.6)}
.season-link{margin:12px 0 0}
.season-link a{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:14.5px;color:var(--muted);text-decoration:none}
.season-link a b{color:var(--text)}.season-link svg{width:18px;height:18px;color:var(--gold);flex:none}
.side .credit{order:-1}
.side .label svg{color:var(--gold)}
.credit .note,.crew .note{margin:10px 0 0;font-size:13.5px;color:var(--muted)}
.final .btn-gold svg{width:20px;height:20px}
.dock .btn svg{width:18px;height:18px}
#seats .pick ul{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
#seats .pick a{padding:16px 18px;min-height:96px;justify-content:flex-start}
#seats .pick .pts{white-space:nowrap}

@media (max-width:1100px){.lanes{grid-template-columns:repeat(2,minmax(0,1fr))}.season-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:900px){.boards{grid-template-columns:1fr}.blist a{grid-template-columns:auto minmax(0,1fr) 20px}.blist .crests,.blist .bw{display:none}.plist li{grid-template-columns:1fr auto}.plist li > div{grid-column:1/-1}.steps.three{grid-template-columns:1fr}}
@media (max-width:760px){
  .navlink{display:none}
  .crumbs{display:none}
  .headrow{gap:8px 12px}
  .title h1{font-size:clamp(76px,23vw,104px)}
  .clockbox .lbl{flex-direction:column;align-items:flex-end;gap:8px;font-size:11px}
  .clockbox .t{font-size:40px;margin-top:8px}
  .clockbox .t.win{font-size:36px}
  .bhead .q{font-size:15px;margin-top:12px}
  .track{margin-top:16px}.track .tk span:first-child{display:none}
  .call .ql{font-size:28px;margin-bottom:10px}
  .pills.four{grid-template-columns:1fr 1fr;gap:8px}
  .pill{min-height:52px;font-size:18px;padding:0 12px 0 8px;gap:8px}.pill .crest{--cs:28px}.pill .pc{font-size:13.5px}
  .reward{padding:10px 12px;gap:4px 10px}.reward b{font-size:21px}.reward small{font-size:12.5px;flex-basis:100%}
  .lanes{gap:10px}
  .ln{padding:12px;gap:10px;border-radius:16px}.ln header .crest{--cs:32px}.ln .nm b{font-size:22px}.ln .via{font-size:13px}
  .ln .chip{font-size:10.5px;padding:5px 7px}
  .ladder li{font-size:9.5px;letter-spacing:.02em}
  .ln .play{width:100%;font-size:14px}
  .sealed{font-size:11.5px}
  .feature h2{font-size:56px}
  .passport{grid-column:1/-1}
  .act.back{grid-template-columns:minmax(0,1fr)}
  .act.back .hook{order:0}
  .hero-grid .act.back .fine{font-size:13.5px}
  .also{font-size:14px;padding:10px 14px}
  .ticker dd{font-size:52px}
  .scores li{grid-template-columns:minmax(0,1fr) 90px 36px}
}
.reward small .streak{font:700 inherit;font-family:var(--sans);font-size:inherit;color:var(--gold);text-transform:none;letter-spacing:0}

/* NET2B round 2: sample data is said plainly; the pick control is named; lane cards read at phone size. */
.samplebar{margin:0;background:rgba(255,191,85,.12);border-bottom:1px solid rgba(255,191,85,.35);color:var(--text);font-size:14px;line-height:1.4}
.samplebar .wrap{display:block;padding-top:10px;padding-bottom:10px}
.samplebar b{display:inline-block;margin-right:8px;padding:2px 8px;border-radius:6px;background:var(--gold);color:#030817;font:700 12px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.call .pl{margin:0 0 8px;font:700 12px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
@media (max-width:560px){
  .lanes{grid-template-columns:minmax(0,1fr)}
  .ln .nm b{font-size:26px}.ln .chip{font-size:12px;padding:6px 9px}
  .ladder li{font-size:11px;letter-spacing:.04em}
  .ln .play{width:auto}
  .samplebar{font-size:13px}
}

/* NET3A: reactions and comments on a public proof. Existing tokens only; each reaction keeps one guild colour for its icon. */
.social{margin-top:clamp(28px,3.4vw,40px);padding-top:0;max-width:74ch}
.react{display:flex;flex-wrap:wrap;gap:10px}
.rx{display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:0 16px 0 12px;border-radius:999px;border:1px solid var(--line2);background:var(--panel);
  color:var(--text);text-decoration:none;font-weight:600;font-size:15px;transition:border-color .18s,transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s}
.rx:hover{text-decoration:none;border-color:currentColor;transform:translateY(-1px);box-shadow:0 10px 22px -14px rgba(0,0,0,.8)}
.rx-i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(160,190,255,.08)}
.rx-i svg{width:18px;height:18px}
.rx-fire .rx-i{color:var(--gold)}.rx-clap .rx-i{color:var(--b)}.rx-mind_blown .rx-i{color:var(--c)}.rx-ship_it .rx-i{color:var(--d)}
.rx-n{font:700 14px/1 var(--mono);font-variant-numeric:tabular-nums;min-width:1.4ch;text-align:right}
.rx-n[data-n="0"]{color:var(--faint)}
.react-note{margin:12px 0 0;color:var(--muted);font-size:14px}
.h-talk{display:flex;align-items:center;gap:10px;margin:clamp(32px,4vw,44px) 0 16px;font:900 clamp(30px,4vw,44px)/.95 var(--display);text-transform:uppercase;letter-spacing:.022em}
.h-talk svg{width:26px;height:26px;color:var(--b)}
.cmts{list-style:none;margin:0;padding:0}
.cmt{display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}
.cmt:first-child{padding-top:4px}
.cmt .sigil{border-radius:12px}
.cmt-anon{width:36px;height:36px;border-radius:12px;border:1px dashed var(--line2)}
.cmt-h{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;font:600 12.5px/1.4 var(--mono);color:var(--faint)}
.cmt-h a,.cmt-h>span:first-child{color:var(--b);font-weight:700}
.cmt-b{margin:6px 0 0;font-size:16px;line-height:1.55;white-space:pre-line;overflow-wrap:anywhere}
.cmt-nav{display:flex;gap:20px;flex-wrap:wrap;margin:14px 0 0;font-size:14.5px}
.cmt-nav a{display:inline-flex;align-items:center;gap:6px;min-height:44px;color:var(--b)}
.cmt-nav svg{width:16px;height:16px}
.compose{margin-top:22px;display:flex;align-items:center;justify-content:space-between;gap:14px 24px;flex-wrap:wrap;padding:18px 20px;border:1px solid var(--line2);border-radius:var(--r);background:var(--panel)}
.compose p{margin:0;color:var(--muted);font-size:14.5px;max-width:46ch}
@media (max-width:760px){
  .react{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .rx{justify-content:flex-start;padding:0 14px 0 10px}
  .rx-n{margin-left:auto}
  .compose .btn{width:100%}
}

/* NET3B: bounties on the public project page. Gold = open money, green = paid. Facts only. */
.bounties{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px}
.bounty{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:center;padding:18px 20px;border-radius:var(--r2);border:1px solid rgba(255,191,85,.42);background:linear-gradient(135deg,rgba(255,191,85,.10),rgba(8,22,46,.78) 60%)}
.bounty.paid{border-color:rgba(90,240,168,.36);background:linear-gradient(135deg,rgba(90,240,168,.08),rgba(8,22,46,.78) 60%)}
.bounty .amt{display:flex;flex-direction:column;align-items:flex-start;min-width:5.2ch}
.bounty .amt b{font:900 clamp(34px,4.4vw,44px)/.9 var(--display);letter-spacing:.01em;color:var(--gold);font-variant-numeric:tabular-nums}
.bounty.paid .amt b{color:#5af0a8}
.bounty .amt small{font:700 11px/1 var(--mono);letter-spacing:.12em;color:var(--faint);margin-top:6px}
.bounty .bt{display:flex;flex-direction:column;gap:8px;min-width:0}
.bounty .bt b{font-weight:640;font-size:16.5px;line-height:1.3;overflow-wrap:anywhere}
.bounty .st{display:inline-flex;align-items:center;gap:6px;font:600 12.5px/1.3 var(--mono);color:#ffe4b4}
.bounty .st::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--gold)}
.bounty .st.paid{color:#5af0a8}.bounty .st.paid::before{display:none}.bounty .st svg{width:14px;height:14px}
.bounty-next{margin:16px 0 0}
.bounty-next a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:640;color:var(--gold)}
.bounty-next svg{width:16px;height:16px}
@media (max-width:760px){.bounty{padding:16px;gap:14px}}

/* NET4B: live build rooms, /x/live and the "building now" strip. Same tokens; tones come from the lane palette. */
.bn{margin-top:28px;padding:18px 20px;border:1px solid var(--line);border-radius:var(--r2);background:var(--panel)}
.bn-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0 0 14px;color:var(--muted);font-size:14px}
.bn-l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:10px 18px}
.bn-l li{display:flex;flex-direction:column;gap:2px;min-width:0}
.bn-p{display:flex;align-items:center;gap:10px;min-height:44px;text-decoration:none;min-width:0}
.bn-p .sigil{width:40px;height:40px;border-radius:13px;flex:none}
a.bn-p:hover b{text-decoration:underline;text-decoration-color:var(--gold)}
.bn-who{display:flex;align-items:center;gap:8px;min-width:0}.bn-who b{font-weight:640;font-size:15px;overflow-wrap:anywhere}
.bn-on{display:flex;flex-wrap:wrap;align-items:center;column-gap:.75em;padding-left:50px;margin-top:-10px;font-size:13.5px;color:var(--muted);overflow-wrap:anywhere}
.bn-on a{color:var(--text);display:inline-flex;min-height:44px;align-items:center}
.bn-on > span:last-child{font:600 12.5px/1 var(--mono);color:var(--faint);white-space:nowrap}
.side .bn{margin-top:0;padding:16px}
.bn-side{display:grid;gap:12px}
.bn-watch{width:100%}

.lv-head{align-items:center}
.lv-h1{margin:0;font:900 clamp(44px,6.4vw,92px)/.9 var(--display);text-transform:uppercase;letter-spacing:.016em;text-wrap:balance;overflow-wrap:anywhere}
.lv-stats{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:10px 26px;flex-wrap:wrap}
.lv-stats li{display:flex;align-items:baseline;gap:8px}
.lv-stats b{font:900 44px/.85 var(--display);font-variant-numeric:tabular-nums}
.lv-stats span{font:700 12px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.lv-state{margin-top:14px}
.lv-state[data-mode=on]::before{content:"";display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:#ff8a9c;vertical-align:1px;animation:pulse 1.6s ease-out infinite}
.lv-sec{padding-top:clamp(36px,5vw,64px)}

.tl{list-style:none;margin:8px 0 0;padding:0;position:relative}
.tl::before{content:"";position:absolute;left:21px;top:8px;bottom:8px;width:2px;border-radius:2px;background:linear-gradient(180deg,var(--line2),transparent)}
.tl-i{--tone:var(--b);position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.tl-i[data-tone=a]{--tone:var(--a)}.tl-i[data-tone=c]{--tone:var(--c)}.tl-i[data-tone=d]{--tone:var(--d)}.tl-i[data-tone=gold]{--tone:var(--gold)}
.tl-ico{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;color:var(--tone);background:color-mix(in srgb,var(--tone) 14%,var(--panel-solid));border:1px solid color-mix(in srgb,var(--tone) 40%,transparent)}
.tl-ico svg{width:20px;height:20px}
.tl-t{margin:0;font-size:16px;font-weight:540;line-height:1.4;overflow-wrap:anywhere}
.tl-i time{font:600 12.5px/1 var(--mono);color:var(--faint);font-variant-numeric:tabular-nums;white-space:nowrap}
.tl-i.is-new{animation:tl-new 2.4s cubic-bezier(.16,1,.3,1)}
@keyframes tl-new{0%{background:color-mix(in srgb,var(--tone) 22%,transparent)}100%{background:transparent}}
.tl-empty{margin-top:8px}

.lv-side{margin-top:0;align-content:start}
.lv-join{border-radius:var(--r2);padding:22px;border:1px solid rgba(255,191,85,.45);background:radial-gradient(90% 120% at 100% 0%,rgba(255,191,85,.16),transparent 62%),var(--panel-solid)}
.lv-jh{margin:0 0 8px;font:900 34px/.95 var(--display);text-transform:uppercase;letter-spacing:.02em;color:#ffe4b4}
.lv-join p{margin:0 0 18px;color:var(--muted);font-size:15px}
.lv-join .row{display:flex}.lv-join .btn{width:100%}
.lv-rules{padding:4px 2px}
.lv-rules ul{margin:0;padding:0 0 0 18px;color:var(--muted);font-size:14.5px;display:grid;gap:6px}
.lv-rules .label svg{color:var(--d)}

.blist.lv a{grid-template-columns:auto minmax(0,1fr) 20px}
.lv-t{display:flex;flex-direction:column;gap:6px;min-width:0}
.blist.lv .bt{font-size:26px;overflow-wrap:anywhere}
.lv-m{font:600 12.5px/1.3 var(--mono);color:var(--muted);font-variant-numeric:tabular-nums}
.lv-stats .chip b{font:inherit;letter-spacing:inherit}
@media (max-width:1100px){.lv-side{grid-template-columns:minmax(0,1fr)}}
@media (max-width:900px){.lv-head{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.tl-i{grid-template-columns:40px minmax(0,1fr);gap:4px 12px}.tl-i time{grid-column:2}.tl-ico{width:40px;height:40px}.tl::before{left:19px}
  .lv-stats b{font-size:36px}.blist.lv .bt{font-size:21px}.bn{padding:16px}}
.bn-w{display:inline-flex;align-items:center;gap:.3em;min-width:0}
/* NET4B: on one column the join action sits under the header, not below the whole timeline. */
.lv-join-m{display:none}
@media (max-width:900px){.lv-join-m{display:inline-flex;width:100%;margin-top:14px}}
/* XPAGE1 (blind page judge): the battle headline is sized from its own length (fit-N, set by the server), never breaks inside a word,
   and leaves the pick in the first phone viewport. */
.title h1{line-height:.9;overflow-wrap:break-word;hyphens:manual;letter-spacing:.012em}
.title h1.fit-56{font-size:min(112px,7.8vw)}
.title h1.fit-48{font-size:min(80px,5.6vw)}.title h1.fit-42{font-size:min(70px,4.9vw)}.title h1.fit-36{font-size:min(60px,4.2vw)}
.title h1.fit-32{font-size:min(54px,3.7vw)}.title h1.fit-28{font-size:min(48px,3.3vw)}
.bkick{display:none}
.call .pl b{color:var(--text)}
.lcall{width:100%;min-height:48px;font-size:17px;justify-content:space-between;border-color:color-mix(in srgb,var(--lane) 60%,transparent);background:color-mix(in srgb,var(--lane) 10%,transparent)}
.lcall span{font:700 14px/1 var(--mono);letter-spacing:0;color:var(--gold)}
.lcall:hover,.lcall:focus-visible{border-color:var(--lane);background:color-mix(in srgb,var(--lane) 22%,transparent)}
.bhead .track{margin-top:18px}
@media (max-width:760px){
  .bkick{display:block;margin:0 0 10px;font:700 12px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
  .headrow{grid-template-columns:minmax(0,1fr);gap:12px;margin-top:0}
  .title h1.fit-56{font-size:min(56px,14.3vw)}
  .title h1.fit-48{font-size:min(48px,12.3vw)}.title h1.fit-42{font-size:min(42px,10.7vw)}.title h1.fit-36{font-size:min(36px,9.2vw)}
  .title h1.fit-32{font-size:min(32px,8.2vw)}.title h1.fit-28{font-size:min(28px,7.2vw)}
  .clockbox{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:10px 14px;border:1px solid var(--line2);border-radius:14px;background:var(--panel)}
  .clockbox .lbl{flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;font-size:11px}
  .clockbox .t{margin:0;font-size:30px}
  .clockbox .t.win{font-size:28px}
  .bhead .q{font-size:14.5px;line-height:1.45;margin-top:12px}
  .call{margin-top:16px}
  .call .ql{font-size:26px;margin-bottom:8px}
  .call .pl{font-size:11px;letter-spacing:.06em}
  .reward{margin-top:10px}
}
.crew .seat.priv{cursor:default}
.crew .seat.priv:hover{background:none}
.hidden-note{margin:12px 0 0;font-size:14px;color:var(--muted)}
a.ticket{text-decoration:none;color:inherit;transition:border-color .18s,background .18s}
a.ticket:hover,a.ticket:focus-visible{border-color:var(--gold);background:linear-gradient(90deg,rgba(255,191,85,.2),rgba(255,191,85,.05))}
.hero .what,.hero-main .what{display:block;margin:12px 0 0;max-width:60ch;color:var(--muted);font-size:15px;line-height:1.45}
@media (max-width:760px){.hero-main .what{margin-top:10px;font-size:14px}}

/* XPAGE2 (flip-day judge): each lane says who builds it, the call count shows from the first call, and the pages lose their dead space
   and repeated explainers. */
section{padding-top:clamp(40px,5vw,72px)}
.sec-head{margin-bottom:18px}
.pill .pn{display:flex;flex-direction:column;gap:3px}
.pill .pb{font:500 12.5px/1.2 var(--sans);letter-spacing:0;text-transform:none;color:color-mix(in srgb,var(--lane) 35%,#e8eefc)}
.pill{min-height:60px;padding-top:6px;padding-bottom:6px}
.ln .by{margin:0;font-size:14.5px;line-height:1.4;color:var(--muted)}
.ln .by b{color:var(--text);font-weight:640}
.splitnote{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:12px 0 0;font-size:14.5px;color:var(--muted)}
.splitnote b{color:var(--text);font-weight:640}
.splitnote .pulse{flex:none;width:9px;height:9px;border-radius:50%;background:#ff8a9c;box-shadow:0 0 0 4px rgba(255,138,156,.18)}
@media (prefers-reduced-motion:no-preference){.splitnote .pulse{animation:xs-pulse 1.8s ease-in-out infinite}}
@keyframes xs-pulse{50%{box-shadow:0 0 0 7px rgba(255,138,156,0)}}
.steps.three li{padding:18px 20px}
.steps.three h3{font-size:24px}
@media (max-width:760px){
  section{padding-top:36px}
  .sec-head{margin-bottom:14px}
  .h2{font-size:clamp(34px,10vw,44px)}
  .lede{font-size:15.5px;line-height:1.5}
  /* Lanes: the pills above are the call; each card is a compact status row, not a second set of buttons. */
  .ln .lcall{display:none}
  .ln{gap:8px;padding:12px 14px}
  .ln header{flex-wrap:nowrap}
  .ln header .crest{--cs:36px}
  .ln .nm b{font-size:24px}
  .ln .nm span{font-size:10.5px}
  .ln .by{font-size:14px}
  .ln footer{margin-top:0}
  .sealed{min-height:28px;font-size:12px}
  .pill{min-height:58px}
  .pill .pb{font-size:12px}
  .splitnote{font-size:14px;margin-top:10px}
  /* How Pick'em works: three short rows instead of three tall cards. */
  .steps.three{gap:0;margin-top:8px;border-top:1px solid var(--line)}
  .steps.three li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:2px 12px;padding:12px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none}
  .steps.three li::before{display:none}
  .steps.three svg{width:22px;height:22px;grid-row:1/3;margin-top:2px}
  .steps.three h3{margin:0;font-size:20px}
  .steps.three p{font-size:14px}
  .final{margin-top:36px}
}
#seats .pick a{min-height:0}
.final{margin-top:clamp(32px,4vw,56px)}
@media (max-width:760px){
  /* Pills: one row per lane, the builder's trait on the right, so the reason to pick reads at a glance and each pill stays one line tall. */
  .pills.four{grid-template-columns:minmax(0,1fr);gap:8px}
  .pill{min-height:52px;padding:0 16px 0 10px}
  .pill .pn{flex-direction:row;align-items:baseline;justify-content:space-between;gap:12px}
  .pill .pb{font-size:13px;text-align:right}
  .ln .by .tr{display:none}
  .ln .sealed{display:none}
  .ln footer:empty{display:none}
}
/* The line-up sentence repeats the pills on a phone; it stays when it quotes a prompt longer than the headline. */
@media (max-width:760px){.bhead .q.same{display:none}}
/* XPAGE2 round 2: every open pill shows that it is the call and what it pays. */
.pill .go{flex:none;display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border-radius:999px;background:var(--gold);color:var(--gold-ink);font:800 15px/1 var(--display);letter-spacing:.04em;text-transform:uppercase}
.pill .gw{display:none}
@media (max-width:760px){.pill .gw{display:inline}.pill .pn{flex-direction:column;align-items:flex-start;gap:3px}.pill .pb{text-align:left}.pill{min-height:60px;padding:6px 8px 6px 10px}}
/* XSAFE: the privacy notice and terms (/x/privacy, /x/terms). Readable prose, sentence case, no giant all-caps headings. */
.hero h1.legal-h1{font-size:clamp(40px,5.4vw,72px);max-width:20ch}
.legal{display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start;margin-top:clamp(28px,4vw,48px)}
.legal-toc{position:sticky;top:16px;border:1px solid var(--line);border-radius:var(--r);padding:16px 18px}
.legal-toc .h4{margin:0 0 10px;color:var(--text);font:800 15px/1 var(--display);letter-spacing:.08em;text-transform:uppercase}
.legal-toc ol{margin:0;padding-left:18px;display:grid;gap:0;color:var(--muted);font-size:15px}
.legal-toc a{color:var(--text);display:inline-flex;align-items:center;min-height:44px}
.legal-body{max-width:70ch;display:grid;gap:clamp(26px,3.4vw,40px)}
.legal-sec h2{margin:0 0 10px;font:800 clamp(22px,2.4vw,28px)/1.15 var(--sans,inherit);letter-spacing:0;text-transform:none;color:var(--text)}
.legal-sec p,.legal-sec li{color:var(--muted);font-size:16.5px;line-height:1.6}
.legal-sec p{margin:0 0 10px}
.legal-sec ul{margin:0;padding-left:20px;display:grid;gap:8px}
.legal-sec b{color:var(--text);font-weight:640}
.legal-sec a{color:var(--text)}
.legal .legal-sec{padding:0;scroll-margin-top:16px}
@media (max-width:760px){.legal{grid-template-columns:1fr}.legal-toc{position:static;padding:12px 16px}.legal-toc ol{display:flex;flex-wrap:wrap;gap:0 16px;list-style:none;padding:0}}

/* XHOME: the global nav, the front door, the project directory and the footer base. */
.top .wrap{gap:10px}
.xnav{display:flex;align-items:center;gap:2px;margin-left:auto}
.top .signin{margin-left:6px}
.navlink[aria-current="page"]{color:var(--text);box-shadow:inset 0 -2px 0 var(--gold)}
.home-hero h1 .gold{color:var(--gold)}
.home-cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin:26px 0 12px}
.home-cta .alt{display:inline-flex;align-items:center;min-height:44px}
.home-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center}
.heroart{display:block;width:100%;height:clamp(260px,30vw,420px);object-fit:cover;object-position:46% 50%;border-radius:var(--r2);border:1px solid var(--line);background:var(--panel-solid)}
@media (max-width:900px){.home-grid{grid-template-columns:minmax(0,1fr)}.heroart{height:clamp(150px,34vw,260px)}}
@media (max-width:760px){.heroart{display:none}}
.more{margin:18px 0 0}
.more .alt,.sec-head > .alt{display:inline-flex;align-items:center;gap:8px;min-height:44px}
.more svg,.sec-head > .alt svg{width:18px;height:18px}
.pgrid{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,330px),1fr));gap:14px}
.pcard{position:relative;display:flex;flex-direction:column;gap:10px;padding:20px 22px;border:1px solid var(--line);border-radius:var(--r2);background:var(--panel);transition:border-color .2s,transform .2s cubic-bezier(.2,.8,.2,1)}
.pcard:hover{border-color:var(--line2);transform:translateY(-2px)}
.pcard:focus-within{border-color:var(--gold)}
.pc-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;min-height:26px}
.pc-season{display:inline-flex;align-items:center;gap:6px;color:var(--gold);font:700 12px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase}
.pc-season svg{width:15px;height:15px}
.pc-t{margin:0;font:900 clamp(26px,2.4vw,30px)/1 var(--display);text-transform:uppercase;letter-spacing:.02em;overflow-wrap:anywhere}
.pc-t a{text-decoration:none}
.pc-t a::after{content:"";position:absolute;inset:0;border-radius:inherit}
.pc-t a:focus-visible{outline:none}
.pc-o{margin:0;color:var(--muted);font-size:15px;line-height:1.45}
.pc-roles{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:2px 0 0;font-size:13.5px}
.pc-k{color:var(--faint);font:700 11.5px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-right:4px}
.role-tag{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;border:1px dashed rgba(255,191,85,.55);color:#ffd99a}
.pc-more{color:var(--muted)}
.pc-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:auto 0 0;padding-top:10px;border-top:1px solid var(--line);color:var(--muted);font:600 13px/1.3 var(--mono)}
.pc-go{margin-left:auto;color:var(--gold);display:inline-flex}
.pc-go svg{width:20px;height:20px}
.sbanner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;padding:22px 26px;border-radius:var(--r2);text-decoration:none;
  border:1px solid rgba(255,191,85,.45);background:linear-gradient(120deg,rgba(255,191,85,.12),rgba(141,92,255,.14) 60%,rgba(53,214,255,.08))}
.sbanner:hover{border-color:var(--gold)}
.sb-ico{display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:rgba(255,191,85,.14);color:var(--gold)}
.sb-ico svg{width:34px;height:34px}
.sb-m{display:grid;gap:8px;min-width:0}
.sb-k{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;color:var(--muted);font:700 12px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase}
.sb-t{font:900 clamp(30px,3.4vw,44px)/.95 var(--display);text-transform:uppercase;letter-spacing:.02em}
.sb-p{color:var(--muted);font-size:15px}
.sb-go{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--gold);font:800 18px/1 var(--display);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.sb-go svg{width:18px;height:18px}
.explore{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.explore a{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 14px;align-items:center;min-height:44px;padding:18px 20px;border:1px solid var(--line);border-radius:var(--r2);background:var(--panel);text-decoration:none}
.explore a:hover{border-color:var(--line2)}
.explore svg{grid-row:1/3;width:28px;height:28px;color:var(--b)}
.explore b{font:900 24px/1 var(--display);text-transform:uppercase;letter-spacing:.03em}
.explore span{color:var(--muted);font-size:14px}
.filters{display:grid;gap:16px;margin:4px 0 8px}
.fgroup{display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px 14px;align-items:start}
.fl{margin:12px 0 0;color:var(--faint);font:700 12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.fchips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.fchip{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--line2);text-decoration:none;font-size:14.5px;color:var(--muted)}
.fchip:hover{color:var(--text);border-color:var(--text)}
.fchip[aria-current="true"]{background:var(--gold);border-color:var(--gold);color:var(--gold-ink);font-weight:700}
.list-h{margin-top:26px}
.pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:24px}
.pager .alt{display:inline-flex;align-items:center;min-height:44px}
.foot-base{grid-column:1/-1;display:grid;gap:12px;padding-top:20px;border-top:1px solid var(--line)}
.foot-nav{display:flex;flex-wrap:wrap;gap:4px 18px}
.foot-nav a{display:inline-flex;align-items:center;min-height:44px;color:var(--muted)}
.foot .aff{max-width:none;color:var(--faint)}
@media (max-width:1000px){.explore{grid-template-columns:1fr}}
@media (max-width:860px){
  .top{position:static}
  .top .wrap{flex-wrap:wrap;height:auto;padding-top:8px;padding-bottom:4px;row-gap:0}
  .top .signin{margin-left:auto}
  .xnav{order:3;width:100%;margin:0;justify-content:flex-start;gap:0}
  .xnav .navlink:first-child{padding-left:0}
  .xnav .navlink{display:inline-flex;padding:0 8px;font-size:14px}
}
@media (max-width:760px){
  .sbanner{grid-template-columns:auto minmax(0,1fr);padding:18px}
  .sb-ico{width:48px;height:48px;border-radius:14px}.sb-ico svg{width:26px;height:26px}
  .sb-go{grid-column:1/-1}
  .home-cta .btn-gold{width:100%}
  .fgroup{grid-template-columns:1fr}
  .fl{margin:0}
  .pcard{padding:18px}
}
@media (max-width:370px){.xnav .navlink{padding:0 6px;font-size:13.5px}}
/* XSHARE: share links, the feed, the team board. */
.share{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:20px 0 0;color:var(--faint);font-size:14px}
.share span{max-width:46ch}
.btn-share svg{width:18px;height:18px;margin-right:8px}
.xfeed .xf-h{margin:0;color:var(--text);font-size:16.5px;line-height:1.4}
.xfeed .xf-h a{color:var(--text);font-weight:650}
.xfeed .xf-h .h4{color:#ffe4b4}
.xfeed .xf-s{margin:2px 0 0}
.xfeed .xf-s a{color:var(--b)}
.xf-gold .ico{background:rgba(255,191,85,.12);color:var(--gold);border-color:rgba(255,191,85,.4)}
.xf-blue .ico{background:rgba(53,214,255,.1);color:var(--b);border-color:rgba(53,214,255,.35)}
.tb-list,.tb-cards{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.tb-list{grid-template-columns:repeat(auto-fill,minmax(min(100%,440px),1fr))}
.tb-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}
.tb-p,.tb-c{padding:20px 22px;border:1px solid var(--line);border-radius:var(--r2);background:var(--panel)}
.tb-p{display:flex;flex-direction:column;gap:12px}
.tb-ph{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 14px}
.tb-t{margin:0;font:900 clamp(24px,2.2vw,28px)/1 var(--display);text-transform:uppercase;letter-spacing:.02em;overflow-wrap:anywhere}
.tb-t a{text-decoration:none}.tb-t a:hover{text-decoration:underline}
.tb-m{color:var(--faint);font:600 12.5px/1 var(--mono)}
.tb-pick ul{grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr))}
.tb-c{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;align-items:start}
.tb-c .sigil{border-radius:14px}
.tb-cm{display:flex;flex-direction:column;gap:8px;min-width:0}
.tb-n{margin:0}
.tb-n a{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;min-height:44px;text-decoration:none}
.tb-n b{font-weight:680;font-size:17px;color:var(--text)}
.tb-n span{color:var(--muted);font:600 13px/1.3 var(--mono);overflow-wrap:anywhere}
.tb-n a:hover b{text-decoration:underline}
.tb-sk{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;font-size:13.5px}
.tb-note{margin:0;color:var(--muted);font-size:14.5px;line-height:1.45;overflow-wrap:anywhere}
.tb-c .when{margin:0;font:600 12px/1.4 var(--mono);color:var(--faint)}
@media (max-width:860px){.xnav{flex-wrap:wrap}}
@media (max-width:760px){.tb-p,.tb-c{padding:16px}.share .btn-share{width:100%;justify-content:center}}
