:root{--bg:#0b0a0c;--paper:#e8e1d7;--ink:#d8d1c8;--muted:#817a78;--line:#302c31;--violet:#a594bd;--cyan:#8faeb1;--green:#82b7a5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Mono',monospace;letter-spacing:.01em}.grain{position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.65'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;cursor:pointer}.shell{width:min(1040px,calc(100% - 40px));margin:auto}.eyebrow{font-size:8px;letter-spacing:.16em;color:var(--violet)}header{height:66px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:min(1100px,calc(100% - 32px));margin:auto}header>b{font-size:12px;letter-spacing:.14em;color:var(--paper);font-weight:500}.mini img{width:31px;height:31px;border-radius:50%;object-fit:cover;filter:grayscale(1) contrast(1.15)}nav{justify-self:end;display:flex;gap:18px;align-items:center;font-size:11px;color:var(--muted)}nav a:hover{color:var(--paper)}nav button{border:1px solid var(--line);padding:8px 11px}.hero{text-align:center;padding:58px 20px 52px}.portrait{width:242px;height:242px;margin:auto;border-radius:50%;overflow:hidden;border:1px solid #383239;background:#fff}.portrait img{width:100%;height:100%;object-fit:cover}.hero h1{font-size:clamp(72px,10vw,126px);line-height:.86;letter-spacing:.08em;margin:31px 0 24px;color:var(--paper);font-weight:400}.hero>p{color:var(--muted);font-size:14px}.actions{display:flex;justify-content:center;gap:9px;margin-top:24px}.actions a,.actions button{border:1px solid #59505e;padding:11px 17px;font-weight:500;font-size:11px}.actions a:first-child{background:var(--paper);color:var(--bg);border-color:var(--paper)}.ticker{border-block:1px solid var(--line);overflow:hidden;white-space:nowrap;color:var(--violet);font-size:10px;padding:10px 0}.ticker div{width:max-content;animation:move 31s linear infinite}@keyframes move{to{transform:translateX(-50%)}}.chart{padding:82px 0 112px}.chart-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:17px}.chart-head div{display:flex;gap:18px;align-items:center}.chart-head b{font-size:12px}.chart-head span{font-size:9px;color:var(--muted)}.chart-head strong{font-size:18px;color:var(--paper)}.chart-box{height:290px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);position:relative}.chart-box svg{width:100%;height:100%}.chart-box line{stroke:var(--line);stroke-width:1}.chart-box path{fill:none;stroke:var(--cyan);stroke-width:1.5;stroke-dasharray:3 6;opacity:.28}.chart-wait{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:10px;letter-spacing:.16em}.rewards{padding:92px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1.4fr .8fr;gap:110px}.rewards h2,.fall h2,.game h2,.thesis h2,.proof h2{color:var(--paper);font-weight:400}.rewards h2{font-size:27px;margin:10px 0 22px}.rewards p,.thesis-head>p,.proof-head>p{font-family:system-ui,sans-serif;color:#908a88;line-height:1.75;max-width:650px;font-size:15px}.rewards dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:29px}.rewards dt{font-size:8px;letter-spacing:.08em;color:var(--muted);margin-bottom:9px;text-transform:uppercase}.rewards dd{margin:0;color:var(--paper);font-size:18px}.thesis{padding:100px 0;border-top:1px solid var(--line)}.thesis-head{max-width:720px}.thesis h2,.proof h2{font-size:38px;margin:10px 0 17px}.steps{margin-top:58px;border-top:1px solid var(--line)}.steps article{display:grid;grid-template-columns:74px 1fr;gap:12px;padding:24px 0;border-bottom:1px solid var(--line)}.steps article>span{font-size:9px;color:var(--violet)}.steps b{font-weight:400;color:var(--paper);font-size:15px}.steps p{margin:8px 0 0;color:var(--muted);font-family:system-ui,sans-serif;font-size:14px}.proof{padding:100px 0 112px;border-top:1px solid var(--line)}.proof-head{margin-bottom:46px}.proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.proof-card{border:1px solid var(--line);display:block;transition:transform .2s,border-color .2s;background:#09080a}.proof-card:hover{transform:translateY(-3px);border-color:#514b54}.screen{aspect-ratio:1.45/1;overflow:hidden;border-bottom:1px solid var(--line);background:#10161a}.screen img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;filter:saturate(.72) contrast(1.03);opacity:.9}.proof-meta{display:flex;justify-content:space-between;gap:20px;padding:16px 17px 18px;align-items:end}.proof-meta span{font-size:8px;color:var(--muted);display:block;margin-bottom:7px}.proof-meta b{font-size:12px;font-weight:400;color:var(--paper)}.proof-meta em{font-size:9px;font-style:normal;color:var(--violet);white-space:nowrap}.machine-line{display:flex;align-items:center;justify-content:space-between;margin-top:42px;border-block:1px solid var(--line);padding:15px 20px;font-size:10px;color:var(--paper);letter-spacing:.1em}.machine-line i{font-style:normal;color:var(--muted)}.game{padding:94px 0 112px;border-top:1px solid var(--line)}.game-copy{display:flex;align-items:baseline;gap:22px;margin-bottom:28px}.game-copy>span{font-size:9px;color:var(--violet);letter-spacing:.15em}.game-copy h2{font-size:31px;margin:0}.game-copy p{margin-left:auto;font-size:10px;color:var(--muted)}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:16px}.game-wrap{border:1px solid var(--line);position:relative;background:#080709;overflow:hidden}#noerGame{width:100%;height:auto;display:block;image-rendering:pixelated}.game-hud{position:absolute;inset:14px 16px auto 16px;display:flex;gap:20px;pointer-events:none;color:var(--muted);font-size:9px;letter-spacing:.12em}.game-hud b{color:var(--paper);font-weight:400}.game-hud button{margin-left:auto;pointer-events:auto;border:1px solid var(--line);padding:4px 8px;color:var(--muted)}.game-controls{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);display:flex;gap:8px}.game-controls button{width:48px;height:36px;border:1px solid var(--line);background:rgba(11,10,12,.88);color:var(--paper);touch-action:none;user-select:none}.game-controls button:active{background:var(--paper);color:var(--bg)}.game-message{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;font-size:27px;letter-spacing:.12em;color:var(--paper);opacity:0;transition:.2s;text-shadow:0 0 24px #000}.game-message.show{opacity:1}.howto{border:1px solid var(--line);padding:18px}.howto>.eyebrow{display:block;margin-bottom:18px}.howto>div{padding:13px 0;border-top:1px solid var(--line)}.howto kbd,.howto strong{font:inherit;color:var(--paper);font-size:12px;font-weight:400}.howto kbd{border:1px solid #4a444c;display:inline-block;padding:3px 6px;margin-right:4px}.howto p{margin:6px 0 0;color:var(--muted);font-size:9px;line-height:1.5}.contract{padding:33px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:75px 1fr;align-items:center}.contract>span{font-size:9px;letter-spacing:.15em;color:var(--muted)}.contract button{border:0;padding:0;text-align:left;display:flex;justify-content:space-between;gap:20px;color:var(--muted);min-width:0}.contract code{font:inherit;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contract em{font-style:normal;color:var(--violet);font-size:9px}.fall{text-align:center;padding:100px 0 125px;border-top:1px solid var(--line)}.fall h2{font-size:38px;margin:10px 0 0}.fall p{color:var(--muted)}code{font:inherit}footer{border-top:1px solid var(--line);height:86px;width:min(1040px,calc(100% - 40px));margin:auto;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:9px}footer div{display:flex;gap:18px}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--paper);color:var(--bg);padding:9px 13px;font-size:9px;opacity:0;transition:.2s;z-index:40}#toast.show{opacity:1}@media(max-width:820px){.proof-grid{grid-template-columns:1fr}.game-layout{grid-template-columns:1fr}.howto{display:grid;grid-template-columns:repeat(2,1fr);gap:0 18px}.howto>.eyebrow{grid-column:1/-1}}@media(max-width:720px){header{grid-template-columns:1fr auto}header>b{display:none}.hero{padding-top:30px}.portrait{width:205px;height:205px}.rewards{grid-template-columns:1fr;gap:42px}.rewards dl{grid-template-columns:1fr 1fr}.chart{padding-top:58px}.game-copy{display:block}.game-copy h2{margin:8px 0 10px}.game-copy p{margin:0}.game-wrap{margin-inline:-4px}.contract{grid-template-columns:1fr;gap:12px}.actions{flex-wrap:wrap}.machine-line{gap:8px;padding-inline:10px;font-size:8px}.thesis h2,.proof h2{font-size:31px}.proof-meta{align-items:start;flex-direction:column}.howto{grid-template-columns:1fr 1fr}}

/* v8 — make the thesis legible without turning it into lore */
.game-thesis-line{max-width:760px;margin:38px auto 0;text-align:center;font-size:15px;line-height:1.65;opacity:.78}
.flywheel-map{max-width:760px;margin:42px auto 0;display:flex;flex-direction:column;align-items:center;gap:10px;padding:30px 22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.flow-node{min-width:210px;text-align:center;padding:11px 18px;border:1px solid var(--line);background:rgba(255,255,255,.015)}
.flow-node small{display:block;font-size:9px;letter-spacing:.16em;opacity:.5;margin-bottom:4px}
.flow-node b{font-size:13px;letter-spacing:.08em}
.flow-arrow{opacity:.45;font-size:17px;line-height:1}
.flow-split{display:flex;align-items:center;justify-content:center;gap:16px;width:100%}
.flow-link{font-size:10px;letter-spacing:.08em;opacity:.48;white-space:nowrap}
.flow-end{min-width:min(420px,100%)}
@media (max-width:640px){.flow-split{flex-direction:column;gap:8px}.flow-link{transform:rotate(90deg);margin:4px 0}.game-thesis-line{font-size:13px}.flywheel-map{padding-left:10px;padding-right:10px}.flow-node{min-width:190px}}

/* v9: simplified machine section */
.machine-title { color: var(--purple, #b08cff); font-size: clamp(2rem, 5vw, 4.5rem); line-height: .95; letter-spacing: .04em; margin: 0 0 18px; }
