:root{color-scheme:dark;--bg:#020805;--green:#5dff8b;--text:#d9ffe3;--muted:#9eb5a5;--line:#21432c;--mono:Consolas,'Courier New',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}[hidden]{display:none!important}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,select{cursor:pointer}button{color:var(--green);background:#081b10;border:1px solid var(--line);padding:7px 12px;font:13px var(--mono)}button:hover{background:#173522;border-color:var(--green)}a{color:var(--green)}:focus-visible{outline:2px solid #dcffe5;outline-offset:4px}button:disabled{opacity:.35;cursor:default}.matrix-field{position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(#32ff6908 1px,transparent 1px),linear-gradient(90deg,#32ff6908 1px,transparent 1px),radial-gradient(ellipse at 85% 0%,#24ff6010,transparent 55%);background-size:32px 32px,32px 32px,100% 100%;z-index:-1}.site-header,main,footer{width:min(1180px,calc(100% - 48px));margin-inline:auto}.site-header{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font:14px var(--mono)}.brand{color:#f4fff7;text-decoration:none;font-weight:bold;letter-spacing:.12em}.brand span{color:var(--green)}nav{display:flex;gap:30px}nav a{font-size:11px;letter-spacing:.12em;color:#adc8b5;text-decoration:none}nav a:hover{color:var(--green)}.hero{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:64px;padding:54px 0}.eyebrow{font:11px/1.6 var(--mono);letter-spacing:.14em;color:var(--green);margin:0 0 18px}h1{font-size:clamp(90px,12vw,164px);line-height:.9;letter-spacing:-.075em;margin:22px 0 30px;font-weight:700}h1 span,h2 span{color:var(--green)}.hero-meta{font:11px/1.9 var(--mono);color:var(--muted);display:flex;flex-direction:column;letter-spacing:.1em}.terminal-link{display:inline-flex;gap:54px;align-items:center;text-decoration:none;border-bottom:1px solid var(--green);padding:10px 0;margin-top:23px;font:14px var(--mono)}figure{margin:0}.splash{background:#000;border:1px solid var(--line);box-shadow:10px 10px 0 #0c2114}.window-caption{display:flex;justify-content:space-between;padding:8px 12px;color:#98b6a2;background:#0a1710;font:10px var(--mono);letter-spacing:.08em}.splash img{display:block;width:100%;height:auto}.splash figcaption{display:flex;justify-content:space-between;gap:8px;padding:8px 12px;font:10px var(--mono);background:#07140c}.splash a{text-decoration:none}.section-strip{display:flex;align-items:center;justify-content:space-between;gap:14px;border-block:1px solid var(--line);padding:13px 0;font:10px var(--mono);letter-spacing:.09em;color:#94b69e}.section-strip>span:first-child{color:var(--green)}.section-strip button{background:none;border:0;padding:3px;font-size:11px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 10px #5dff8b88;margin-right:8px}.story{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;padding:66px 0;border-bottom:1px solid var(--line)}h2{font-size:clamp(32px,4vw,48px);line-height:1.07;letter-spacing:-.045em;margin:0 0 25px;color:#f1fff5}p{margin:0 0 20px}.prose>p:not(.eyebrow),.original-prose{color:var(--muted);font-size:15px;line-height:1.85}.prose>p:last-child{margin-bottom:0}.simulation{min-width:0;border:1px solid var(--line);background:#020704;align-self:center;overflow:hidden}.figure-head,.simulation figcaption{display:flex;justify-content:space-between;align-items:center;font:10px var(--mono);letter-spacing:.06em;color:#8ca995;padding:10px 14px;gap:8px}.figure-head{border-bottom:1px solid #142b1c}.figure-head>span:first-child{color:var(--green)}.simulation canvas{display:block;width:100%;aspect-ratio:1.5;background:#020704;image-rendering:pixelated}.oscillator-section canvas{aspect-ratio:213/180}.simulation figcaption{border-top:1px solid #142b1c;padding-block:6px}.simulation figcaption div{display:flex;gap:4px}.simulation button{border:0;background:none;padding:3px 9px;font-size:15px}.rule-list{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);list-style:none;margin:0;padding:0;border-block:1px solid var(--line)}.rule-list li{display:flex;align-items:flex-start;gap:18px;padding:22px}.rule-list li+li{border-left:1px solid var(--line)}.rule-list b{font:12px var(--mono);color:var(--green);padding-top:5px}.rule-list p{font-size:14px;line-height:1.7;color:var(--muted);margin:0}.rules-section{gap:34px 64px}.evolution-section{padding:64px 0 42px;border-bottom:1px solid var(--line)}.evolution-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.original-prose{max-width:900px;margin:28px 0 0}.program-section{padding:64px 0 52px}.program-intro{color:var(--muted);max-width:720px;font-size:15px}.dos-window{position:relative;border:1px solid #6a8e75;background:#000;box-shadow:0 20px 70px #0008}.dos-title{display:flex;justify-content:space-between;align-items:center;padding:6px 12px;color:#e2ffe7;background:#193b25;font:12px var(--mono)}.dos-title>span:first-child{font-weight:bold;letter-spacing:.15em}.dos-title button{padding:0 5px;border:0;font-size:18px;background:none}.toolbar{display:flex;gap:6px;flex-wrap:wrap;padding:10px;border-bottom:1px solid #293e30;background:#080f0a;align-items:center}.toolbar button{color:#d2e9d9}.toolbar button.active{background:#2d653c;color:#fff;border-color:#6f9}.sample-label{display:flex;gap:8px;align-items:center;margin-left:auto;font:12px var(--mono);color:#a9bbaf}select{background:#07170d;color:#d5f6de;border:1px solid #355540;padding:6px;font:12px var(--mono);max-width:100%}.game-scroll{overflow:auto;max-height:75vh;background:#000}#game{display:block;width:100%;height:auto;image-rendering:pixelated;touch-action:pan-y;cursor:crosshair}#game.editing{touch-action:none}.dos-stats{display:flex;flex-wrap:wrap;gap:10px 28px;padding:8px 12px;border-top:1px solid #444;font:12px var(--mono);color:#aaa}.dos-stats b{color:#fff;font-weight:normal}.game-status{color:#7cffad;background:#06150b;padding:8px 12px;min-height:33px;font:12px/1.5 var(--mono)}.game-options{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:8px 12px;font:11px var(--mono);color:#a6b6ab}.game-options label{display:flex;align-items:center;gap:6px}input[type=checkbox]{accent-color:var(--green)}.record-bar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:10px 12px;border-top:1px solid #293e30}.record-bar input{flex:1;min-width:100px;accent-color:var(--green)}.record-bar span{font:11px var(--mono);color:#a6b6ab}.record-bar button{font-size:11px}.program-overlay{position:absolute;inset:34px 0 0;background:#000b;display:flex;justify-content:center;align-items:flex-start;padding:35px 15px;overflow:auto}.menu-panel{width:min(550px,100%);border:2px solid #aaa;background:#000;padding:22px;box-shadow:7px 7px #002a13;font:14px/1.7 var(--mono);max-height:100%;overflow:auto}.menu-panel h3{text-align:center;color:#68ff8d;letter-spacing:.32em;font-size:38px;text-shadow:3px 3px #22522e;margin:0 0 20px;border:1px double #617a68}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 26px;padding:12px 0 25px}.menu-grid button{padding:13px;font-size:15px;letter-spacing:.08em;color:#fff;border:2px double #aaa;background:#0000aa}.menu-grid button:nth-child(3n+2){background:#aa0000}.menu-grid button:nth-child(3n){background:#005d27}.menu-list{display:grid;gap:10px;margin-bottom:22px}.menu-list button{text-align:left}.menu-panel p{font:12px/1.7 var(--mono);color:#b5c9bc}.menu-panel select{width:100%;margin-bottom:15px}#close-menu{display:block;margin:5px auto 0;background:transparent;border:0;color:#aaa}.help{border-bottom:1px solid var(--line);padding:18px 0;color:var(--muted);font-size:13px}.help summary{cursor:pointer;color:#b9d7c2;font:12px var(--mono)}.help>div{max-width:900px;padding-top:18px}.archive-note{font-size:14px}footer{padding:24px 0 35px;display:flex;justify-content:space-between;border-top:1px solid var(--line);font:11px var(--mono);color:#72957e;gap:20px}footer b{font-weight:normal;color:var(--green)}footer div{display:flex;gap:20px}footer a{text-decoration:none}.dos-window:fullscreen{overflow:auto;background:#000;padding:15px}.dos-window:fullscreen .game-scroll{max-height:70vh}
@media(max-width:850px){.hero{gap:32px;grid-template-columns:.8fr 1.2fr}.story{gap:30px}h2{font-size:36px}.rule-list li{padding:16px;gap:12px}.toolbar{gap:5px}.sample-label{margin-left:0}.hero-meta{font-size:9px}.eyebrow{font-size:10px}.window-caption{font-size:8px}}
@media(max-width:620px){.site-header,main,footer{width:calc(100% - 28px)}.site-header{height:62px}nav{gap:13px}nav a{font-size:9px;letter-spacing:0}.hero{grid-template-columns:1fr;padding:32px 0;gap:30px}.hero-copy{position:relative}.hero h1{font-size:92px;margin:15px 0 20px}.hero-meta{font-size:10px}.terminal-link{position:absolute;right:0;bottom:0;font-size:12px;gap:18px}.splash{max-width:520px;width:100%;margin:auto;box-shadow:5px 5px #0c2114}.window-caption{font-size:9px}.section-strip{flex-wrap:wrap;font-size:9px;gap:10px}.section-strip>span:nth-child(2){display:none}.story{grid-template-columns:1fr;padding:42px 0;gap:28px}.rules-section .prose{grid-row:1}.prose>p:not(.eyebrow){font-size:15px}h2{font-size:37px}.rule-list{grid-template-columns:1fr;gap:0}.rule-list li+li{border-left:0;border-top:1px solid var(--line)}.rule-list li{padding:17px 0}.evolution-section,.program-section{padding:42px 0}.evolution-grid{grid-template-columns:1fr;gap:22px}.original-prose{font-size:15px}.dos-title{font-size:10px;padding:5px 8px}.toolbar{padding:7px}.toolbar button{font-size:11px;padding:7px}.sample-label{width:100%}.sample-label select{flex:1;min-width:0}.dos-stats{font-size:10px;gap:8px 15px}.game-options{font-size:10px}.game-status{font-size:11px}.record-bar{padding:8px}.record-bar button{padding:7px}.program-overlay{padding:18px 9px}.menu-panel{padding:14px}.menu-grid{gap:13px}.menu-grid button{padding:9px;font-size:13px}.menu-panel h3{font-size:30px}footer{flex-direction:column;gap:16px}.splash figcaption{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.background-gliders{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:.38;image-rendering:pixelated}
.simulation>canvas{height:300px;aspect-ratio:auto}
.oscillator-chart{padding:14px 18px;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.oscillator-group{min-width:0}
.oscillator-group h3{font:12px var(--mono);color:#be66d9;margin:0 0 12px;text-transform:uppercase;letter-spacing:.08em}
.oscillator-group:first-child{grid-column:1/-1}
.oscillator-group:first-child .oscillator-list{grid-template-rows:repeat(4,32px);grid-auto-flow:column;grid-template-columns:1fr 1fr;column-gap:16px}
.oscillator-group:not(:first-child){border-top:1px solid #142b1c;padding-top:12px}
.oscillator-list{display:grid;gap:0}
.oscillator-entry{display:flex;align-items:center;gap:8px;min-width:0}
.oscillator-entry canvas{width:46px;height:32px;aspect-ratio:auto;flex:0 0 46px}
.oscillator-entry span{font:11px/1.4 var(--mono);color:#cda6dc}
.mit-pattern .oscillator-entry{justify-content:center}
.mit-pattern canvas{width:100%;max-width:168px;height:168px;flex:0 1 168px;min-width:0}
.mit-pattern span{display:none}
@media(max-width:620px){.oscillator-chart{padding:12px;gap:12px}.oscillator-entry{gap:5px}.oscillator-entry span{font-size:10px}}
