:root {
    --deep: #0d1116;
    --canvas: #161d27;
    --panel: #212730;
    --panel-soft: #252f3d;
    --terminal: #080a0d;
    --line: rgba(117, 125, 137, .34);
    --line-strong: rgba(117, 125, 137, .58);
    --text: #ebe7e4;
    --copy: rgba(235, 231, 228, .78);
    --muted: #9fa4ab;
    --blue: #6a9fcc;
    --tidal: #4b607c;
    --terracotta: #b86b52;
    --rust: #844f3b;
    --sun: #e1b06e;
    --sage: #a3a473;
    --parchment: #dacbc2;
    --serif: Constantia, Charter, 'Bitstream Charter', 'Iowan Old Style', Cambria, Georgia, serif;
    --mono: 'SFMono-Regular', 'Cascadia Code', Consolas, 'Liberation Mono', monospace;
    --max: 1500px;
    --header-stack: calc(60px + .8rem);
    --hero-header-gap: 10px;
    --hero-row-gap: clamp(1.25rem, 2vw, 2rem);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 92px; background: var(--deep); }
body {
    min-height: 100vh;
    margin: 0;
    overflow-x: clip;
    background: var(--canvas);
    color: var(--text);
    font-family: var(--serif);
    font-size: 18px;
    line-height: 1.58;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}
body::before {
    content: '';
    position: fixed;
    inset: -5rem;
    z-index: 0;
    pointer-events: none;
    background-color: var(--canvas);
    background-image:
        linear-gradient(rgba(106,159,204,.018) 1px, transparent 1px),
        linear-gradient(90deg, rgba(106,159,204,.018) 1px, transparent 1px),
        linear-gradient(rgba(106,159,204,.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(106,159,204,.05) 1px, transparent 1px);
    background-size: 4px 4px, 4px 4px, 20px 20px, 20px 20px;
    mask-image: linear-gradient(to bottom, #000 0 55%, transparent 92%);
}
body::after {
    content: '';
    position: fixed;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background: linear-gradient(to bottom, rgba(13,17,22,.16), transparent 35%, var(--canvas) 95%);
}
main, footer { position: relative; z-index: 1; }
main > section { position: relative; }
main > section > * { position: relative; z-index: 2; }
.falling-card-layer { position: absolute; inset: 0; z-index: 1; overflow: hidden; pointer-events: none; }
a { color: inherit; text-decoration-color: rgba(106,159,204,.35); text-underline-offset: .16em; transition: color .15s, text-decoration-color .15s; }
a:hover, a:focus-visible { color: var(--text); text-decoration-color: var(--blue); }
button { font: inherit; }
::selection { background: rgba(106,159,204,.28); }
.skip-link { position: fixed; top: -80px; left: 1rem; z-index: 100; padding: .6rem .9rem; background: var(--blue); color: var(--deep); font: .72rem var(--mono); }
.skip-link:focus { top: 1rem; }
.agent-link { top: -80px; }
.agent-link:focus { top: 3.5rem; }

.site-header { position: sticky; top: 0; z-index: 50; padding: .8rem 1.2rem 0; pointer-events: none; }
.nav-shell {
    position: relative;
    max-width: var(--max);
    min-height: 60px;
    margin: auto;
    padding: .65rem .9rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    background: linear-gradient(180deg, rgba(33,39,48,.97), rgba(13,17,22,.93));
    border: 1px solid var(--line-strong);
    border-top-color: rgba(213,216,219,.28);
    pointer-events: auto;
}
.brand { display: inline-flex; align-items: center; gap: .65rem; color: var(--text); font: 700 .78rem var(--mono); text-decoration: none; }
.brand-mark { width: 32px; height: 32px; display: grid; place-items: center; background: var(--deep); border: 1px solid var(--line-strong); color: var(--terracotta); font-size: .85rem; }
.nav-links { display: flex; gap: clamp(.8rem, 2vw, 1.8rem); }
.nav-links a, .nav-cta { color: rgba(213,216,219,.72); font: .64rem var(--mono); letter-spacing: .075em; text-decoration: none; text-transform: uppercase; }
.nav-links a:hover, .nav-cta:hover { color: var(--text); }
.nav-cta { padding: .65rem .75rem; background: rgba(255,255,255,.025); border: 1px solid var(--line); }
.live-dot { display: inline-block; width: 6px; height: 6px; margin-right: .4rem; border-radius: 50%; background: #5db87a; box-shadow: 0 0 0 3px rgba(93,184,122,.11); animation: pulse 2.2s ease-in-out infinite; }
.live-dot.offline { background: #e8704f; animation: none; }
.nav-burger { display: none; width: 40px; height: 40px; place-items: center; align-content: center; gap: 4px; padding: 0; border: 1px solid var(--line); background: rgba(255,255,255,.025); cursor: pointer; }
.nav-burger i { display: block; width: 16px; height: 2px; background: rgba(213,216,219,.85); transition: transform .18s, opacity .18s; }
.nav-shell.nav-open .nav-burger i:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.nav-shell.nav-open .nav-burger i:nth-child(2) { opacity: 0; }
.nav-shell.nav-open .nav-burger i:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
@keyframes pulse { 50% { opacity: .38; } }

.hero {
    width: min(100%, var(--max));
    margin: calc(0px - var(--header-stack)) auto 0;
    padding: calc(var(--header-stack) + var(--hero-header-gap)) 2rem var(--hero-row-gap);
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: var(--hero-row-gap);
}
.hero-copy { min-width: 0; max-width: 940px; }
.section-label {
    display: inline-flex;
    width: fit-content;
    margin: 0 0 1.2rem;
    padding: .34rem .52rem .38rem;
    background: rgba(33,39,48,.9);
    border: 1px solid var(--line);
    color: rgba(213,216,219,.82);
    font: .65rem/1 var(--mono);
    letter-spacing: .13em;
    text-transform: uppercase;
}
.hero h1 { margin: 0; font-size: clamp(3.25rem, 5.6vw, 6.1rem); font-weight: 450; line-height: .98; letter-spacing: -.045em; }
.hero h1 em { color: var(--blue); font-weight: 400; }
.flow-heading h2 em { color: var(--terracotta); font-weight: 400; }
.final-cta h2 em { color: var(--blue); font-style: normal; }
.final-cta h2 { white-space: nowrap; }
.hero-lead { max-width: 570px; margin: 1.7rem 0 0; color: var(--copy); font-size: clamp(1.1rem, 1.6vw, 1.35rem); line-height: 1.5; }
.hero-actions, .flow-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 1rem 1.4rem; margin-top: 2rem; }
.button { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; padding: .7rem 1rem; border: 1px solid var(--line-strong); background: rgba(255,255,255,.025); color: var(--text); font: 700 .64rem var(--mono); letter-spacing: .06em; text-decoration: none; text-transform: uppercase; transition: border-color .18s, background .18s, transform .18s; }
.button:hover { border-color: var(--blue); background: rgba(106,159,204,.08); transform: translateY(-1px); }
.button-primary { border-color: var(--blue); background: var(--blue); color: var(--deep); }
.button-primary:hover, .button-primary:focus-visible { border-color: #7fb0d8; background: #7fb0d8; color: var(--deep); }
.button-outline { border-color: rgba(235,231,228,.35); }
.text-link { color: rgba(213,216,219,.78); font-size: .88rem; }
.assistant-marquee { width: min(100%, 860px); margin-top: 2.2rem; overflow: hidden; mask-image: linear-gradient(90deg, transparent, #000 3%, #000 97%, transparent); }
.assistant-track { width: max-content; display: flex; animation: assistantScroll 38s linear infinite; }
.assistant-marquee:hover .assistant-track, .assistant-marquee:focus-within .assistant-track { animation-play-state: paused; }
.assistant-set { display: flex; align-items: center; flex: none; }
.assistant-set a { display: inline-flex; align-items: center; color: rgba(159,164,171,.7); font: .56rem/1.8 var(--mono); letter-spacing: .04em; text-decoration: none; white-space: nowrap; }
.assistant-set a::after { content: '·'; margin: 0 .8rem; color: rgba(106,159,204,.48); }
.assistant-set a:hover, .assistant-set a:focus-visible { color: var(--text); }
@keyframes assistantScroll { to { transform: translateX(-50%); } }

[data-parallax] { transform: translate3d(0, var(--parallax-y, 0), 0); will-change: transform; }
.terminal-stage { position: relative; min-width: 0; }
.terminal-rack { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.terminal {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    min-width: 0;
    background: #080a0d;
    border: 1px solid var(--line-strong);
    border-top-color: rgba(213,216,219,.38);
    box-shadow: 0 22px 70px rgba(0,0,0,.28);
    font-family: var(--mono);
}
.terminal::before { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(rgba(255,255,255,.012) 1px, transparent 1px); background-size: 100% 3px; opacity: .28; }
.terminal-bar { min-height: 40px; padding: 0 .7rem; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; border-bottom: 1px solid var(--line); background: linear-gradient(180deg, #1d2025, #12151a); }
.terminal-lights { display: flex; gap: .38rem; }
.terminal-lights i { width: 9px; height: 9px; border: 1px solid var(--line-strong); border-radius: 50%; background: #4a5159; }
.terminal-lights i:first-child { background: var(--terracotta); }
.terminal-lights i:nth-child(2) { background: var(--sun); }
.terminal-lights i:nth-child(3) { background: var(--sage); }
.terminal-title { color: rgba(213,216,219,.62); font-size: .58rem; letter-spacing: .03em; }
.copy-button { min-height: 32px; padding: .35rem .55rem; border: 1px solid var(--line); background: rgba(255,255,255,.02); color: var(--muted); cursor: pointer; font: .55rem var(--mono); letter-spacing: .06em; text-transform: uppercase; }
.copy-button:hover, .copy-button:focus-visible, .copy-button.copied { border-color: rgba(106,159,204,.7); color: var(--text); background: rgba(106,159,204,.08); }
.actors-section .copy-button, .final-cta .copy-button { border-color: var(--blue); background: var(--blue); color: var(--deep); font-weight: 700; }
.actors-section .copy-button:hover, .actors-section .copy-button:focus-visible,
.final-cta .copy-button:hover, .final-cta .copy-button:focus-visible { background: #7fb0d8; border-color: #7fb0d8; color: var(--deep); }
.actors-section .copy-button.copied, .final-cta .copy-button.copied { background: var(--sage); border-color: var(--sage); color: var(--deep); }
.terminal-copy { justify-self: end; }
.terminal-screen { min-height: 300px; padding: 1rem; flex: 1; color: #d5d8db; font-size: clamp(.57rem, .78vw, .7rem); line-height: 1.6; }
.terminal-line { min-height: 1.6em; transition: opacity .35s ease, transform .35s ease; }
.terminal-line.is-pending { opacity: .12; transform: translateY(4px); }
.terminal-line strong { color: var(--text); font-weight: 400; }
.terminal-space { height: .6rem; }
.shell-user { color: var(--sage); }
.shell-path, .term-chevron, .term-link { color: var(--blue); }
.term-chevron { font-weight: 700; }
.term-dim { color: var(--muted); }
.term-ok { color: #5db87a; }
.term-pill { padding: .08rem .3rem; background: rgba(106,159,204,.1); border: 1px solid rgba(106,159,204,.28); color: #a9c7e0; }
.terminal-table { margin-top: 1.35rem; padding-top: .35rem; color: rgba(213,216,219,.76); transition: opacity .45s ease, transform .45s ease; }
.terminal-table.is-pending { opacity: .1; transform: translateY(8px); }
.ascii-rule { overflow: hidden; color: rgba(117,125,137,.75); white-space: nowrap; }
.ascii-player { max-width: 510px; display: grid; grid-template-columns: 1fr 60px 120px; gap: 1rem; padding: .12rem 1rem; }
.ascii-player > span:nth-child(2) { color: var(--sun); text-align: right; }
.cards-back { color: var(--tidal); }
.ascii-board { max-width: 510px; margin: .55rem 0; padding: .5rem 1rem; display: grid; grid-template-columns: 60px 1fr auto; gap: .8rem; align-items: center; background: rgba(106,159,204,.06); }
.ascii-board span { color: var(--muted); }
.ascii-board b { color: var(--text); font-weight: 400; }
.ascii-you { color: #c8d8b8; }
.ascii-action { margin: .7rem 0 .5rem; color: var(--muted); }
.ascii-action strong { color: var(--terracotta); font-weight: 700; }
.terminal-cursor { display: inline-block; width: 7px; height: 1.05em; margin-left: .25rem; background: var(--blue); vertical-align: -.2em; animation: blink 1s step-end infinite; }
@keyframes blink { 50% { opacity: 0; } }
.terminal-status { min-height: 32px; padding: 0 .8rem; display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line); background: #1c232c; color: rgba(159,164,171,.68); font: .52rem var(--mono); letter-spacing: .05em; text-transform: uppercase; }
.terminal-status { background: #101216; }
.terminal-status > span:last-child { max-width: 52%; overflow: hidden; color: rgba(213,216,219,.7); text-overflow: ellipsis; white-space: nowrap; }
.terminal-caption { max-width: 760px; margin: 3rem auto 0; color: rgba(213,216,219,.62); font-size: .82rem; text-align: center; }
.terminal-prompt-line { overflow-wrap: anywhere; }
.process-output { display: grid; gap: .08rem; }
.process-line { transition: opacity .25s ease, transform .25s ease; }
.process-line.is-pending, .terminal-result-body.is-pending { opacity: .08; transform: translateY(5px); }
.terminal-result-body { transition: opacity .35s ease, transform .35s ease; }
.term-game { overflow: hidden; border: 1px solid rgba(117,125,137,.28); }
.term-game-head { min-height: 38px; padding: .45rem .55rem; display: flex; align-items: center; justify-content: space-between; gap: .6rem; background: #111318; border-bottom: 1px solid var(--line); color: var(--muted); font-size: .88em; }
.term-player-row { padding: .35rem .55rem; display: grid; grid-template-columns: minmax(0, 1fr) 42px 78px; gap: .45rem; border-bottom: 1px solid rgba(117,125,137,.16); }
.term-player-row > b { color: var(--sun); font-weight: 400; text-align: right; }
.term-player-row > span:last-child { color: var(--tidal); text-align: right; white-space: nowrap; }
.term-board-row { padding: .6rem .55rem; display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: .35rem .5rem; background: rgba(106,159,204,.045); }
.term-board-row > span { color: var(--muted); }
.term-board-row > strong { min-width: 0; color: var(--text); font-weight: 400; white-space: nowrap; }
.term-board-row > strong b { font-weight: 400; }
.term-board-row > b { grid-column: 2; color: var(--sun); font-weight: 400; }
.term-you { color: #c8d8b8; }
.term-you > span:last-child { color: #c8d8b8; }
.term-action { padding: .55rem; color: var(--muted); overflow-wrap: anywhere; }
.term-action > span { color: var(--blue); }
.term-action strong { color: var(--terracotta); }
.term-invite { padding: .8rem; display: grid; gap: .7rem; border: 1px solid rgba(106,159,204,.3); background: rgba(106,159,204,.035); }
.term-kicker { color: var(--blue); font-size: .82em; letter-spacing: .1em; }
.term-invite > div { display: flex; justify-content: space-between; gap: 1rem; padding-bottom: .35rem; border-bottom: 1px solid rgba(117,125,137,.2); }
.term-invite > div span, .term-invite small { color: var(--muted); }
.term-invite > div strong { color: var(--text); font-weight: 400; }
.term-invite a { overflow-wrap: anywhere; color: var(--blue); }
.orbit-card { position: absolute; top: 0; left: 0; z-index: 1; width: 76px; height: 106px; background: linear-gradient(135deg, #fbfdfb 0%, #e9efe9 100%); border: 1px solid #888; border-radius: 8px; box-shadow: 0 10px 28px rgba(0,0,0,.22), inset 0 0 0 2px rgba(255,255,255,.6); color: #111; overflow: hidden; pointer-events: none; will-change: transform, opacity; image-rendering: pixelated; }
.orbit-card.red { color: var(--rust); }
.orbit-card .c-tl, .orbit-card .c-br { position: absolute; font: 900 14px/1.05 var(--serif); text-align: center; width: 18px; letter-spacing: -1px; }
.orbit-card .c-tl { top: 5px; left: 5px; }
.orbit-card .c-br { bottom: 5px; right: 5px; transform: rotate(180deg); }
.orbit-card .c-tl .suit, .orbit-card .c-br .suit { font-size: 13px; }
.orbit-card .pips { position: absolute; inset: 24px 16px 24px 16px; font-size: 22px; line-height: 1; }
.orbit-card .pips span { position: absolute; transform: translate(-50%, -50%); }
.orbit-card.ace .pips { inset: 0; display: flex; align-items: center; justify-content: center; font-size: 52px; }
.orbit-card.ace .pips span { position: static; transform: none; }
.orbit-card .face-center { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; }
.orbit-card .face-rank { font: 900 34px/.9 var(--serif); }
.orbit-card .face-suit { font: 900 26px/1 var(--serif); }

.actors-section, .server-section, .progression-section, .data-ranking-section, .ranking-section, .docs-section { padding: clamp(5rem, 9vw, 8rem) max(1.2rem, calc((100vw - 1180px) / 2)); }
.server-section { padding-top: clamp(4rem, 6vw, 6rem); padding-bottom: clamp(4rem, 6vw, 6rem); }
.section-intro h2, .architecture-copy h2, .final-cta h2 { margin: 0; font-size: clamp(2.6rem, 4.8vw, 4.8rem); font-weight: 430; line-height: 1.03; letter-spacing: -.035em; }

.section-intro { max-width: 820px; margin-bottom: 3.5rem; }
.section-intro.horizontal { max-width: none; display: flex; align-items: end; justify-content: space-between; gap: 3rem; }
.section-intro.horizontal > div { max-width: 760px; }
.section-intro.horizontal > p, .section-intro > p:last-child { max-width: 420px; margin: 1rem 0 0; color: var(--muted); font-size: .92rem; }

.actors-section { background: var(--deep); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.actors-section .section-intro { margin-bottom: clamp(2.5rem, 5vw, 4rem); }
.actors-section .section-intro h2 { font-size: clamp(2.34rem, 4.32vw, 4.32rem); white-space: nowrap; }
.actors-section .section-intro h2 em, .architecture-copy h2 em { color: var(--blue); font-style: normal; }
@keyframes glitchFlash {
    0%, 86.8%, 88.2%, 93.2%, 94.6%, 100% { color: var(--blue); text-shadow: none; }
    87%, 88% { color: var(--terracotta); text-shadow: 2px 0 rgba(225,176,110,.55), -2px 0 rgba(106,159,204,.45); }
    93.4%, 94.4% { color: var(--terracotta); text-shadow: -2px 0 rgba(225,176,110,.55), 2px 0 rgba(106,159,204,.45); }
}
@keyframes glitchButton {
    0%, 86.8%, 88.2%, 93.2%, 94.6%, 100% { background-color: var(--blue); border-color: var(--blue); }
    87%, 88%, 93.4%, 94.4% { background-color: var(--terracotta); border-color: var(--terracotta); }
}
.actors-section .section-intro h2 em { animation: glitchFlash 7s infinite; }
.actors-section .copy-button,
.final-cta .copy-button,
.actors-section .actor-human-bar button { animation: glitchButton 7s infinite; }
.actors-section .copy-button:hover, .actors-section .copy-button:focus-visible, .actors-section .copy-button.copied,
.final-cta .copy-button:hover, .final-cta .copy-button:focus-visible, .final-cta .copy-button.copied,
.actors-section .actor-human-bar button:hover, .actors-section .actor-human-bar button:focus-visible { animation: none; }
.actors-section .section-intro > p { max-width: none; margin: 1.25rem 0 0; font-size: .92rem; }
.actors-whos { color: var(--text); font-weight: 700; }
.actor-list { border-top: 0; }
.actor-row { min-height: 250px; padding: 2rem 0; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: clamp(2rem, 6vw, 6rem); align-items: center; }
.actor-row.featured { margin-inline: -1rem; padding-inline: 1rem; background-color: var(--deep); background-image: linear-gradient(rgba(106,159,204,.035), rgba(106,159,204,.035)); }
.actor-prompt-wrap, .actor-human-form { min-width: 0; }
.actor-prompt-lead { max-width: 570px; margin: 0 0 .85rem; color: var(--muted); font-size: .92rem; }
.actor-prompt-lead strong { color: var(--text); font-weight: 450; }
.actor-simple-prompt { min-height: 58px; padding: .65rem .7rem; display: flex; align-items: center; gap: .6rem; background: var(--terminal); border: 1px solid var(--line-strong); box-shadow: 0 14px 38px rgba(0,0,0,.18); }
.actor-simple-prompt > span { flex: 0 0 auto; color: var(--blue); font: 1.15rem var(--mono); }
.actor-simple-prompt code { min-width: 0; flex: 1; color: var(--text); font: clamp(.58rem, .78vw, .68rem)/1.4 var(--mono); white-space: nowrap; }
.actor-simple-prompt .copy-button { flex: 0 0 auto; }
.prompt-suggestions { margin: .7rem 0 0; color: rgba(159,164,171,.82); font: .68rem/1.7 var(--mono); }
.prompt-suggestions span { color: var(--blue); text-transform: uppercase; }
.actor-copy { min-width: 0; }
.actor-heading { display: grid; grid-template-columns: 68px 1fr; gap: 1rem; align-items: center; }
.actor-icon { width: 64px; height: 64px; display: grid; place-items: center; background-color: var(--deep); background-image: linear-gradient(rgba(106,159,204,.04), rgba(106,159,204,.04)); border: 1px solid var(--line-strong); color: var(--blue); font-size: 40px; opacity: .8; }
.agent-icon { color: var(--sage); }
.human-icon { color: var(--terracotta); }
.actor-heading .actor-mode { margin: 0 0 .25rem; color: var(--blue); font: 700 .68rem var(--mono); letter-spacing: .15em; }
.actor-heading .agent-icon + div .actor-mode { color: var(--sage); }
.actor-heading .human-icon + div .actor-mode { color: var(--terracotta); }
.actor-heading h3 { margin: 0; font-size: clamp(1.45rem, 2.4vw, 2.15rem); font-weight: 450; line-height: 1.08; }
.actor-copy > p { max-width: 520px; margin: 1rem 0 0 84px; color: var(--copy); font-size: .92rem; }
.actor-tags { margin: 1rem 0 0 84px; display: flex; flex-wrap: wrap; gap: .45rem; }
.actor-tags span { padding: .32rem .45rem; border: 1px solid var(--line); color: var(--muted); font: .62rem var(--mono); letter-spacing: .07em; text-transform: uppercase; }
.actor-human-form > label { display: block; margin-bottom: .55rem; color: var(--copy); font-size: .92rem; }
.actor-human-bar { min-height: 58px; display: grid; grid-template-columns: minmax(0, 1fr) auto; background: var(--terminal); border: 1px solid var(--line-strong); box-shadow: 0 14px 38px rgba(0,0,0,.18); }
.actor-human-bar input { min-width: 0; padding: .7rem .8rem; border: 0; border-radius: 0; background: transparent; color: var(--text); font: .68rem var(--mono); outline: none; }
.actor-human-bar input:focus { box-shadow: inset 2px 0 0 var(--blue); }
.actor-human-bar button { padding: .7rem .85rem; border: 0; border-left: 1px solid var(--line); border-radius: 0; background: rgba(106,159,204,.08); color: var(--text); cursor: pointer; font: 700 .56rem var(--mono); letter-spacing: .05em; text-transform: uppercase; }
.actor-human-bar button:hover, .actor-human-bar button:focus-visible { background: rgba(106,159,204,.14); }
.actor-human-bar { position: relative; }
.actor-human-bar input { padding-left: 1.5rem; }
.actors-section .actor-cursor { position: absolute; top: 50%; left: .55rem; z-index: 1; margin: 0; height: 1.2em; transform: translateY(-50%); pointer-events: none; }
.actor-human-bar:focus-within .actor-cursor { opacity: 0; animation: none; }
.actors-section .actor-human-bar button { background: var(--blue); color: var(--deep); border-left-color: var(--blue); }
.actors-section .actor-human-bar button:hover, .actors-section .actor-human-bar button:focus-visible { background: #7fb0d8; }

.server-section { background: var(--canvas); border-bottom: 1px solid var(--line); }
.architecture-hook { padding-bottom: clamp(3rem, 5vw, 5rem); }
.architecture-copy h2 { margin: 0; font-size: clamp(2.2rem, 4.2vw, 4.2rem); white-space: nowrap; }
.architecture-copy > p { max-width: none; margin: 1.5rem 0 0; color: var(--copy); font-size: .92rem; white-space: nowrap; }
.architecture-resources { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(3rem, 8vw, 8rem); }
.resource-intro h3 { margin: 0 0 .45rem; font-size: clamp(1.8rem, 3vw, 3rem); font-weight: 430; line-height: 52px; }
.resource-intro p { max-width: 300px; margin: 0; color: var(--copy); font-size: .92rem; }
.tech-tags { margin-top: 1.1rem; display: flex; flex-wrap: wrap; gap: .45rem; }
.tech-tags span { padding: .28rem .42rem; border: 1px solid var(--line); color: var(--muted); font: .58rem var(--mono); letter-spacing: .07em; text-transform: uppercase; }
.resource-links { height: 312px; overflow-y: auto; border-top: 1px solid var(--line); scrollbar-color: var(--line-strong) transparent; scrollbar-width: thin; overscroll-behavior: contain; }
.resource-links a { min-height: 78px; padding: .8rem 0; display: grid; grid-template-columns: 42px 1fr auto; grid-template-rows: auto auto; column-gap: 1rem; align-items: center; border-bottom: 1px solid var(--line); color: var(--text); text-decoration: none; }
.resource-links a > span { grid-row: 1 / 3; color: var(--blue); font: .62rem var(--mono); }
.resource-links strong { font-size: 1.25rem; font-weight: 450; }
.resource-links small { color: var(--muted); font-size: .78rem; }
.resource-links b { grid-column: 3; grid-row: 1 / 3; color: var(--blue); font: 400 1rem var(--mono); }
.resource-links a:hover { color: var(--blue); padding-inline: .5rem; background: rgba(106,159,204,.035); }

.progression-section { background: var(--deep); border-bottom: 1px solid var(--line); }
.progression-section .section-intro { max-width: 900px; }
.progression-section .section-intro > p { max-width: 700px; margin: 1.2rem 0 0; font-size: .92rem; }
.progression-section .section-intro h2 em { color: var(--blue); font-style: normal; }
.level-hero { margin-top: clamp(2rem, 4vw, 3.5rem); padding: clamp(.8rem, 1.5vw, 1.2rem) clamp(1.2rem, 2.5vw, 2rem); display: grid; grid-template-columns: auto minmax(0, 1fr) 96px; gap: clamp(1.5rem, 4vw, 4rem); align-items: center; background-color: var(--panel); background-image: linear-gradient(rgba(106,159,204,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(106,159,204,.035) 1px, transparent 1px), linear-gradient(rgba(106,159,204,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(106,159,204,.07) 1px, transparent 1px); background-size: 4px 4px, 4px 4px, 20px 20px, 20px 20px; border: 1px solid var(--line-strong); }
.level-code { display: flex; align-items: baseline; color: var(--blue); font: 700 clamp(3.2rem, 7vw, 6.6rem)/1 var(--mono); letter-spacing: -.09em; }
.level-code span { color: var(--text); font-weight: 400; }
.level-code strong { display: inline-block; }
.level-hero p { max-width: 560px; margin: 0; color: var(--copy); font-size: .92rem; }
.range-example-copy { min-width: 0; }
.range-example-copy h3 { margin: 0 0 .45rem; overflow: hidden; font-size: clamp(.9rem, 1.8vw, 1.9rem); font-weight: 430; line-height: 1.08; text-overflow: clip; white-space: nowrap; }
.level-badges { margin-top: 1rem; display: flex; flex-wrap: wrap; gap: .45rem; }
.level-badges span { padding: .35rem .5rem; border: 1px solid var(--line); color: var(--muted); font: .62rem var(--mono); }
.level-badges .range-actor-badge { display: inline-flex; align-items: center; gap: .35rem; color: var(--text); }
.range-actor-badge i { font-size: 1rem; font-style: normal; line-height: 1; }
.range-actor-badge b { font-weight: 500; }
.level-breakdown { display: grid; grid-template-columns: minmax(76px, .32fr) repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.level-breakdown article { min-height: 165px; padding: .8rem 1rem; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.level-breakdown .range-prefix-card { padding-inline: .5rem; align-items: center; background: var(--terminal); }
.range-axis { display: flex; align-items: center; justify-content: center; text-align: center; }
.range-axis strong { color: var(--blue); font: 500 clamp(2.8rem, 5vw, 4.5rem)/1 var(--mono); transition: opacity .15s, transform .15s; }
.range-axis strong.is-changing, .level-code strong.is-changing { opacity: .45; transform: translateY(-4px); }
.level-breakdown h3 { margin: 1.3rem 0 .25rem; font-size: 1.2rem; font-weight: 450; }
.level-breakdown p { margin: 0; color: var(--muted); font-size: .78rem; }
.range-refresh { width: 96px; height: 96px; padding: .7rem; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .3rem; border: 1px solid var(--blue); background: rgba(106,159,204,.11); color: var(--text); cursor: pointer; font-family: var(--mono); text-transform: uppercase; animation: glitchRefresh 7s infinite; }
.range-refresh strong { font-size: .68rem; letter-spacing: .06em; }
.range-refresh:hover, .range-refresh:focus-visible { background: rgba(106,159,204,.2); color: var(--blue); animation: none; }
.range-refresh:disabled { cursor: wait; opacity: .5; }
.range-refresh span { color: var(--blue); font-size: 1.35rem; transition: transform .25s; }
.range-refresh:hover span, .range-refresh:focus-visible span { transform: rotate(90deg); }
@keyframes glitchRefresh {
    0%, 86.8%, 88.2%, 93.2%, 94.6%, 100% { background-color: rgba(106,159,204,.11); border-color: var(--blue); }
    87%, 88%, 93.4%, 94.4% { background-color: var(--terracotta); border-color: var(--terracotta); }
}
.primary-levels article > span, .intermediate-levels div:not(.intermediate-head) > span { opacity: .8; }
.secondary-toggle { min-height: 42px; padding: .6rem .75rem; flex: 0 0 auto; border: 1px solid var(--line-strong); background: transparent; color: var(--text); cursor: pointer; font: 700 .58rem var(--mono); letter-spacing: .04em; text-transform: uppercase; }
.secondary-toggle:hover, .secondary-toggle:focus-visible { border-color: var(--blue); color: var(--blue); }
.secondary-toggle b { margin-left: .35rem; color: var(--blue); font-size: .9rem; }
.primary-levels { max-height: 400px; margin-top: clamp(2.5rem, 5vw, 4rem); overflow: auto; border: 1px solid var(--line); cursor: pointer; scrollbar-color: var(--line-strong) transparent; scrollbar-width: thin; }
.primary-levels-head, .primary-levels article { min-height: 62px; padding: .42rem 1rem; display: grid; grid-template-columns: 120px 220px minmax(240px, 1fr); grid-template-rows: auto auto; gap: .05rem 1rem; align-items: center; border-bottom: 1px solid var(--line); }
.primary-levels-head { min-height: 52px; position: sticky; top: 0; z-index: 2; grid-template-rows: auto; background: var(--panel); color: var(--muted); font: .55rem var(--mono); letter-spacing: .09em; }
.primary-levels-head > span { min-width: 0; }
.range-name-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.range-name-heading .secondary-toggle { min-height: 34px; padding: .4rem .55rem; }
.primary-levels article:last-child { border-bottom: 0; }
.primary-levels article[hidden] { display: none; }
.primary-levels strong { grid-column: 1; grid-row: 1 / 3; color: var(--blue); font: 700 1.1rem var(--mono); }
.primary-levels article > span { grid-column: 2; grid-row: 1 / 3; font-size: 1.55rem; letter-spacing: .08em; }
.primary-levels p { grid-column: 3; grid-row: 1 / 3; margin: 0; color: var(--text); font-size: 1.15rem; }
.range-trajectory { margin-left: .45rem; color: var(--blue); font: .85em var(--mono); white-space: nowrap; }
.primary-levels .secret-level { background: rgba(106,159,204,.055); }
.level-details { width: calc(100% - 2rem); margin: 1.2rem 0 0 2rem; border: 1px solid var(--line); }
.level-details summary { min-height: 72px; padding: .9rem 1rem; display: flex; align-items: center; gap: 1rem; color: var(--text); cursor: pointer; list-style: none; }
.level-details summary::-webkit-details-marker { display: none; }
.level-details summary span { color: var(--blue); font: .62rem var(--mono); }
.level-details summary div { display: flex; flex-direction: column; gap: .2rem; }
.level-details summary strong { font-size: .92rem; font-weight: 500; }
.level-details summary small { color: var(--muted); font-size: .7rem; }
.level-details summary b { margin-left: auto; color: var(--blue); font: 1rem var(--mono); }
.level-details[open] summary b { transform: rotate(45deg); }
.intermediate-levels { max-height: 520px; overflow: auto; border-top: 1px solid var(--line); scrollbar-color: var(--line-strong) transparent; }
.intermediate-levels > div { min-height: 54px; padding: .65rem 1rem; display: grid; grid-template-columns: 100px 180px minmax(240px, 1fr); gap: 1rem; align-items: center; border-bottom: 1px solid var(--line); }
.intermediate-levels > div:last-child { border-bottom: 0; }
.intermediate-levels .intermediate-head { min-height: 38px; position: sticky; top: 0; z-index: 1; background: var(--panel); color: var(--muted); font: .55rem var(--mono); letter-spacing: .09em; }
.intermediate-levels strong { color: var(--blue); font: 700 .72rem var(--mono); }
.intermediate-levels span { font-size: .9rem; letter-spacing: .04em; }
.intermediate-levels p { margin: 0; color: var(--copy); font-size: .76rem; }
.data-ranking-section { background: var(--canvas); border-bottom: 1px solid var(--line); }
.stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.stat-card { min-height: 145px; padding: 1.2rem; display: flex; flex-direction: column; justify-content: space-between; background: rgba(255,255,255,.012); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.stat-card strong { font-size: clamp(2.3rem, 4.5vw, 4rem); font-weight: 400; }
.stat-card span { color: var(--muted); font: .62rem var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.data-ranking-section .leaderboard { margin-top: 3rem; overflow: hidden; background: rgba(13,17,22,.32); border: 1px solid var(--line); }
.data-ranking-section .section-intro h2 em { color: var(--blue); font-style: normal; }
.data-ranking-section .section-intro > p { white-space: nowrap; }
#leaderboardBody { max-height: 450px; overflow-y: auto; scrollbar-color: var(--line-strong) transparent; scrollbar-width: thin; overscroll-behavior: contain; }
.ranking-head { min-height: 52px; padding: 0 1rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; background: var(--panel); border-bottom: 1px solid var(--line); color: var(--muted); font: .62rem var(--mono); letter-spacing: .08em; }
.rank-entry { border-bottom: 1px solid var(--line); }
.rank-entry:last-child { border-bottom: 0; }
.rank-summary { min-height: 72px; padding: .7rem 1rem; display: grid; grid-template-columns: 52px minmax(0, 1fr) 120px 110px; gap: 1rem; align-items: center; cursor: pointer; list-style: none; }
.rank-summary::-webkit-details-marker { display: none; }
.rank-summary:hover { background: rgba(106,159,204,.035); }
.rank-position { color: var(--muted); font: .72rem var(--mono); }
.rank-player { min-width: 0; display: flex; align-items: center; gap: .7rem; }
.rank-avatar { width: 32px; height: 32px; display: grid; place-items: center; flex: 0 0 auto; background: var(--panel-soft); border: 1px solid var(--line); color: var(--blue); font-family: var(--serif); }
.rank-name { overflow: hidden; color: var(--text); font-size: .95rem; text-overflow: ellipsis; white-space: nowrap; }
.rank-wins { color: var(--muted); font: .65rem var(--mono); }
.rank-level { color: var(--blue); font: 700 .75rem var(--mono); }
.rank-score { color: var(--copy); font: .72rem var(--mono); text-align: right; }
.rank-detail { padding: .8rem 1rem .9rem 68px; display: flex; flex-wrap: wrap; gap: .5rem; background: rgba(106,159,204,.025); border-top: 1px solid rgba(117,125,137,.18); }
.rank-detail span { padding: .35rem .5rem; border: 1px solid var(--line); color: var(--muted); font: .62rem var(--mono); }
.data-panel, .leaderboard { overflow: hidden; background: rgba(13,17,22,.32); border: 1px solid var(--line); }
.recent-panel { margin-top: 1rem; }
.data-header { min-height: 54px; padding: 0 1rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; background: var(--panel); border-bottom: 1px solid var(--line); }
.data-header h3, .data-header > span { margin: 0; font: .58rem var(--mono); letter-spacing: .07em; text-transform: uppercase; }
.data-header > span { color: var(--muted); }
.tables-body, .recent-body, .leaderboard { font: .65rem var(--mono); }
.table-row { min-height: 56px; padding: .65rem 1rem; display: grid; grid-template-columns: 150px 1fr 105px 105px; gap: 1rem; align-items: center; border-bottom: 1px solid var(--line); }
.table-row:last-child, .recent-row:last-child { border: 0; }
.label { color: var(--muted); }
.player-chip { display: inline-block; margin-right: .7rem; }
.player-chip::before { content: '◆'; margin-right: .35rem; color: var(--blue); font-size: .45rem; }
.badge { padding: .22rem .4rem; border: 1px solid currentColor; font-size: .5rem; text-transform: uppercase; }
.badge-active { color: #5db87a; } .badge-waiting { color: var(--sun); } .badge-finished { color: var(--muted); } .badge-errored { color: #e8704f; }
.recent-row { min-height: 52px; padding: .6rem 1rem; display: grid; grid-template-columns: 220px 1fr 100px 100px; gap: 1rem; align-items: center; border-bottom: 1px solid var(--line); }
.empty-state { padding: 2rem 1rem; color: var(--muted); text-align: center; font: .65rem var(--mono); }

.ranking-section { background: var(--deep); }
.lb-header, .lb-row { display: grid; grid-template-columns: 65px 1fr 115px 115px 115px; gap: 1rem; align-items: center; }
.lb-header { min-height: 48px; padding: .5rem 1rem; background: var(--panel); border-bottom: 1px solid var(--line); color: var(--muted); font-size: .52rem; letter-spacing: .08em; }
.lb-row { min-height: 67px; padding: .7rem 1rem; border-bottom: 1px solid var(--line); transition: background .18s; }
.lb-row:last-child { border: 0; }
.lb-row:hover { background: rgba(106,159,204,.035); }
.lb-rank { color: var(--muted); }
.lb-row:nth-child(1) .lb-rank { color: var(--sun); }
.lb-player { min-width: 0; display: flex; align-items: center; gap: .7rem; }
.lb-avatar { width: 30px; height: 30px; display: grid; place-items: center; flex: 0 0 auto; background: var(--panel-soft); border: 1px solid var(--line); color: var(--blue); font-family: var(--serif); }
.lb-name { overflow: hidden; color: var(--text); text-overflow: ellipsis; white-space: nowrap; }
.lb-type { color: var(--muted); font-size: .52rem; }
.lb-value.win { color: var(--blue); }

.docs-section { background: var(--canvas); }
.docs-list { border-top: 1px solid var(--line); }
.docs-list a { min-height: 92px; padding: .9rem; display: grid; grid-template-columns: 60px 1fr auto; gap: 1.2rem; align-items: center; border-bottom: 1px solid var(--line); color: var(--text); text-decoration: none; transition: background .18s, padding .18s; }
.docs-list a:hover { padding-inline: 1.3rem; background: rgba(106,159,204,.035); }
.docs-list a > span { color: var(--blue); font: .58rem var(--mono); }
.docs-list strong { font-size: 1.35rem; font-weight: 450; }
.docs-list p { margin: .1rem 0 0; color: var(--muted); font-size: .76rem; }
.docs-list b { color: var(--blue); font: 400 .8rem var(--mono); }

.final-cta { padding: clamp(6rem, 11vw, 10rem) max(1.2rem, calc((100vw - 1180px) / 2)); text-align: center; background: var(--deep); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.final-cta > p { color: var(--muted); }
.prompt-bar { width: min(100%, 720px); min-height: 58px; margin: 2rem auto; padding: .7rem .8rem; display: flex; align-items: center; gap: .7rem; background: var(--terminal); border: 1px solid var(--line-strong); box-shadow: 0 15px 45px rgba(0,0,0,.18); text-align: left; }
.prompt-bar code { min-width: 0; flex: 1; color: var(--text); font: .75rem/1.5 var(--mono); }
.prompt-caret { color: var(--blue); font: 1.2rem var(--mono); }
.final-links { display: flex; justify-content: center; gap: .7rem; }

footer { width: min(100%, 1180px); min-height: 140px; margin: auto; padding: 2rem 1.2rem; display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; gap: 2rem; color: var(--muted); font: .56rem/1.7 var(--mono); }
footer p { text-align: center; }
footer > div { display: flex; justify-content: flex-end; gap: 1rem; }
.footer-brand { color: var(--text); }
.copy-toast { position: fixed; z-index: 100; left: 50%; bottom: 1.4rem; padding: .6rem .8rem; background: var(--panel); border: 1px solid var(--blue); color: var(--text); font: .58rem var(--mono); opacity: 0; transform: translate(-50%, 12px); pointer-events: none; transition: opacity .18s, transform .18s; }
.copy-toast.visible { opacity: 1; transform: translate(-50%, 0); }
.reveal { opacity: 1; }

/* FAQ */
.faq-hero { width: min(100%, 820px); margin: 0 auto; padding: calc(var(--header-stack) + 2.5rem) 2rem 1.5rem; }
.faq-hero h1 { margin: 0 0 1rem; font-size: clamp(2.6rem, 4.8vw, 4.4rem); font-weight: 430; line-height: 1.03; letter-spacing: -.035em; }
.faq-hero h1 em { color: var(--blue); font-style: normal; }
.faq-hero .section-label { margin-bottom: 1rem; }
.faq-lede, .faq-hero .faq-lede { max-width: 640px; margin: 0; color: var(--muted); font-size: .95rem; }
.faq-section { width: min(100%, 820px); margin: 0 auto; padding: 1.5rem 2rem 1rem; }
.faq-group-title { margin: 2.2rem 0 1rem; padding-bottom: .5rem; border-bottom: 1px solid var(--line); color: var(--blue); font: .68rem var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.faq-item { margin: 0 0 .7rem; background: rgba(13,17,22,.32); border: 1px solid var(--line); }
.faq-item summary { min-height: 60px; padding: .9rem 1.1rem; display: flex; align-items: center; gap: 1rem; cursor: pointer; list-style: none; transition: background .15s; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary:hover, .faq-item[open] summary { background: rgba(106,159,204,.05); }
.faq-q { flex: 1; font-size: 1.02rem; font-weight: 500; }
.faq-item summary b { color: var(--blue); font: 1.05rem var(--mono); transition: transform .18s; }
.faq-item[open] summary b { transform: rotate(45deg); }
.faq-a { padding: .2rem 1.1rem 1.2rem; color: var(--copy); font-size: .95rem; }
.faq-a p { margin: .7rem 0; }
.faq-a a { color: var(--blue); }
.faq-a ul, .faq-a ol { margin: .7rem 0; padding-left: 1.4rem; }
.faq-a li { margin: .35rem 0; }
.faq-a code { padding: .1rem .35rem; background: var(--terminal); border: 1px solid var(--line); color: var(--parchment); font: .82rem var(--mono); }
.faq-a table { width: 100%; margin: .9rem 0; border-collapse: collapse; font-size: .88rem; }
.faq-a th { padding: .55rem .7rem; background: rgba(106,159,204,.08); border: 1px solid var(--line); color: var(--text); font: .62rem var(--mono); letter-spacing: .08em; text-transform: uppercase; text-align: left; }
.faq-a td { padding: .55rem .7rem; border: 1px solid var(--line); }
.faq-a tbody tr:nth-child(odd) { background: rgba(255,255,255,.015); }
.faq-prompt { margin: .8rem 0; padding: .7rem .9rem; background: var(--terminal); border: 1px solid var(--line); }
.faq-prompt code { padding: 0; border: 0; background: none; color: var(--parchment); font: .85rem/1.5 var(--mono); }
@media (max-width: 700px) {
    .faq-hero, .faq-section { padding-inline: 1.2rem; }
    .faq-a { font-size: .92rem; }
    .faq-a table { font-size: .8rem; display: block; overflow-x: auto; }
}

@media (max-width: 1050px) {
    .nav-burger { display: grid; }
    .nav-links { display: none; position: absolute; top: calc(100% + 6px); left: 0; right: 0; z-index: 60; flex-direction: column; gap: .15rem; padding: .6rem .7rem; background: linear-gradient(180deg, rgba(33,39,48,.99), rgba(13,17,22,.98)); border: 1px solid var(--line-strong); box-shadow: 0 18px 40px rgba(0,0,0,.35); }
    .nav-shell.nav-open .nav-links { display: flex; }
    .nav-links a { padding: .55rem .45rem; border-bottom: 1px solid rgba(117,125,137,.18); }
    .nav-links a:last-child { border-bottom: 0; }
    .hero { grid-template-columns: 1fr; }
    .terminal-stage { width: 100%; margin: 0; }
    .terminal-rack { grid-template-columns: repeat(3, minmax(330px, 1fr)); overflow-x: auto; padding-bottom: .8rem; scroll-snap-type: x mandatory; scrollbar-color: var(--tidal) transparent; }
    .terminal-rack .terminal { scroll-snap-align: start; }
    .server-overview { grid-template-columns: 1fr; }
    .actor-row, .actor-row.featured { min-height: 0; margin-inline: 0; padding: 2rem 0; grid-template-columns: 1fr; gap: 1.5rem; border-left: 0; }
    .actor-row.featured { margin-inline: -1rem; padding-inline: 1rem; background-color: var(--deep); background-image: linear-gradient(rgba(106,159,204,.035), rgba(106,159,204,.035)); }
    .actor-prompt-wrap, .actor-human-form { grid-row: 1; }
    .actor-copy { grid-row: 2; }
    .actor-copy > p, .actor-tags { margin-left: 0; }
    .lb-header, .lb-row { grid-template-columns: 55px 1fr 95px; }
    .lb-header > :nth-child(3), .lb-header > :nth-child(5), .lb-row > :nth-child(3), .lb-row > :nth-child(5) { display: none; }
}

@media (max-width: 700px) {
    :root { --header-stack: calc(52px + .55rem); }
    body { font-size: 16px; }
    .site-header { padding: .55rem .55rem 0; }
    .nav-shell { min-height: 52px; padding: .45rem .55rem; }
    .brand { font-size: .67rem; }
    .brand-mark { width: 29px; height: 29px; }
    .nav-cta { padding: .55rem; font-size: .5rem; white-space: nowrap; }
    .hero { padding-inline: 1rem; }
    .hero h1 { font-size: clamp(3rem, 14vw, 4.2rem); }
    .hero-lead { font-size: 1.05rem; }
    .hero-actions { align-items: flex-start; flex-direction: column; }
    .assistant-marquee { width: 100%; }
    .assistant-track { animation-duration: 30s; }
    .terminal-rack { margin-inline: -1rem; padding-inline: 1rem; grid-template-columns: repeat(3, minmax(310px, 86vw)); gap: .75rem; }
    .terminal-bar { grid-template-columns: 1fr auto 1fr; }
    .terminal-title { text-align: center; }
    .terminal-screen { min-height: 280px; padding: .85rem; font-size: .58rem; }
    .terminal-caption { padding-inline: .5rem; }
    .term-player-row { grid-template-columns: minmax(0, 1fr) 38px 72px; }
    .ascii-player { grid-template-columns: 1fr 42px 90px; padding-inline: .35rem; gap: .5rem; }
    .ascii-board { grid-template-columns: 45px 1fr; padding-inline: .35rem; }
    .ascii-board > span:last-child { grid-column: 2; }
    .terminal-caption { padding-inline: .7rem; }
    .actors-section, .server-section, .progression-section, .data-ranking-section, .ranking-section, .docs-section, .final-cta { padding: 4.5rem 1rem; }
    .section-intro h2, .architecture-copy h2 { font-size: clamp(2.45rem, 12vw, 3.7rem); }
    .actors-section .section-intro h2 { font-size: clamp(2.2rem, 10vw, 3.2rem); white-space: normal; }
    .architecture-copy h2 { white-space: normal; }
    .architecture-copy > p { white-space: normal; }
    .architecture-resources { grid-template-columns: 1fr; gap: 2rem; }
    .actor-simple-prompt { gap: .4rem; padding-inline: .55rem; }
    .actor-simple-prompt code { font-size: .54rem; letter-spacing: -.025em; }
    .actor-simple-prompt .copy-button { min-height: 34px; padding-inline: .45rem; }
    .actor-icon { width: 58px; height: 58px; }
    .actor-heading { grid-template-columns: 62px 1fr; }
    .actor-human-bar { grid-template-columns: 1fr; }
    .actor-human-bar button { min-height: 44px; border-top: 1px solid var(--line); border-left: 0; }
    .server-section { padding-top: 4rem; padding-bottom: 4rem; }
    .level-hero { grid-template-columns: minmax(0, 1fr) 78px; gap: 1.2rem; }
    .level-code { grid-column: 1; grid-row: 1; }
    .range-example-copy { grid-column: 1 / -1; grid-row: 2; }
    .range-refresh { width: 78px; height: 78px; grid-column: 2; grid-row: 1; }
    .level-breakdown { grid-template-columns: 68px repeat(4, minmax(190px, 1fr)); overflow-x: auto; }
    .primary-levels { overflow-x: auto; }
    .primary-levels-head, .primary-levels article { min-width: 600px; grid-template-columns: 95px 170px minmax(240px, 1fr); }
    .level-details { width: calc(100% - 1rem); margin-left: 1rem; }
    .level-details summary { align-items: flex-start; }
    .level-details summary small { display: block; }
    .intermediate-levels > div { min-width: 520px; grid-template-columns: 78px 130px minmax(240px, 1fr); }
    .ranking-head { align-items: flex-start; flex-direction: column; padding-block: .8rem; }
    .rank-summary { grid-template-columns: 32px minmax(0, 1fr) auto; gap: .5rem; padding-inline: .65rem; }
    .rank-level { grid-column: 3; grid-row: 1; }
    .rank-score, .rank-wins { display: none; }
    .rank-detail { padding-left: .65rem; }
    .stats-grid { grid-template-columns: 1fr 1fr; }
    .stat-card { min-height: 120px; padding: .9rem; }
    .section-intro.horizontal { display: block; }
    .data-header { align-items: flex-start; flex-direction: column; padding-block: .8rem; }
    .table-row { grid-template-columns: 85px 1fr; gap: .5rem; }
    .table-row > :nth-child(3), .table-row > :nth-child(4) { display: none; }
    .recent-row { grid-template-columns: 1fr 80px; }
    .recent-row > :nth-child(2), .recent-row > :nth-child(4) { display: none; }
    .lb-header, .lb-row { grid-template-columns: 38px 1fr 65px; padding-inline: .65rem; gap: .4rem; }
    .lb-avatar { width: 27px; height: 27px; }
    .docs-list a { grid-template-columns: 32px 1fr auto; gap: .6rem; padding-inline: .4rem; }
    .docs-list strong { font-size: 1.15rem; }
    .prompt-bar { display: grid; grid-template-columns: auto minmax(0, 1fr); }
    .prompt-bar code { overflow-wrap: anywhere; }
    .prompt-bar .copy-button { grid-column: 2; justify-self: end; }
    .final-links { flex-direction: column; }
    footer { grid-template-columns: 1fr; text-align: center; }
    footer p { margin: 0; }
    footer > .brand, footer > div { justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
    [data-parallax] { transform: none !important; }
    .terminal-line, .terminal-table { opacity: 1 !important; transform: none !important; }
    .falling-card-layer { display: none; }
}
