:root{color-scheme:dark;--paper:#eeeae0;--muted:#a49e91;--line:#3b3933;--accent:#ff8d4b;background:#101010;color:var(--paper);font-family:Arial,Helvetica,sans-serif;line-height:1.65}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--accent)}button{font:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.skip{position:absolute;top:-60px;left:20px}.skip:focus{top:10px;z-index:5;background:#101010;padding:8px}
.site-header{max-width:1200px;margin:auto;padding:24px 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.brand{text-decoration:none;letter-spacing:.12em;font-size:13px;font-weight:700}.site-header nav{display:flex;gap:22px;font-size:13px}.site-header nav a{color:var(--muted);text-decoration:none}main{max-width:1200px;margin:auto;padding:0 32px}.eyebrow{font:11px/1.5 monospace;letter-spacing:.18em;color:var(--accent);text-transform:uppercase}.hero{padding:56px 0 32px}.hero h1{font-size:clamp(34px,5vw,64px);line-height:1.06;letter-spacing:-.045em;font-weight:500;max-width:900px;margin:18px 0 25px}.hero h1 span{display:block;color:var(--muted)}.hero p:last-child{color:var(--muted);max-width:680px;font-size:17px}.player{border-top:1px solid var(--line);padding-top:24px}.variant-bar{display:flex;justify-content:space-between;align-items:start;gap:20px}.variant-bar h2{font-size:15px;font-weight:400;margin:0 0 14px}.variant-buttons{display:flex;flex-wrap:wrap;gap:10px}.variant-buttons button{background:transparent;color:var(--paper);border:1px solid #888276;padding:12px 18px;cursor:pointer;text-align:left;font-size:14px}.variant-buttons button:hover,.variant-buttons button[aria-pressed=true]{background:var(--paper);color:#101010}.variant-buttons button[aria-busy=true]{border-color:var(--accent)}.variant-note{margin:26px 0 0;color:var(--muted);font-size:12px;max-width:260px}.stage{position:relative;background:#000;border:1px solid var(--line);margin-top:22px;width:100%;height:clamp(360px,82vh,920px);display:grid;place-items:center}.stage iframe{border:0;width:100%;height:100%;display:block}.placeholder{text-align:center;color:var(--muted);padding:35px;max-width:620px}.placeholder[hidden]{display:none}.placeholder-symbol{display:block;font:80px/1 monospace;color:#fff;letter-spacing:-.12em;margin-bottom:24px}.placeholder p{margin:0;font-size:15px}.player-status{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:12px;margin:12px 0 0}.player-status a{white-space:nowrap}.description{border-top:1px solid var(--line);margin-top:66px;padding:36px 0 50px}.description h2{font-size:32px;font-weight:400;letter-spacing:-.025em;line-height:1.25;margin:14px 0 25px}.description>p{max-width:830px}.description p{color:var(--muted)}.description strong{color:var(--paper);font-weight:500}.description h3{font-size:20px;font-weight:400;margin:34px 0 16px}.archive-row{border:1px solid var(--line);padding:20px 24px;display:flex;justify-content:space-between;gap:20px;align-items:center}.archive-row p{margin:6px 0 0;font-size:14px}.archive-row a{font-size:13px;white-space:nowrap}.transcript-intro{max-width:830px;font-size:14px}.transcript-entry{border-top:1px solid var(--line);padding:8px 0}.transcript-entry:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;padding:12px 0;font-size:15px;list-style-position:inside}.transcript-entry pre{font-family:inherit;line-height:1.7;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;max-width:880px;margin:12px 0 28px;padding-left:18px;border-left:2px solid var(--line)}.transcript-role{font:11px/1.5 monospace;letter-spacing:.12em;color:var(--accent);margin:28px 0 10px}.transcript-entry img{display:block;max-width:640px;width:100%;height:auto;margin:15px 0 30px;border:1px solid var(--line)}.record-links{display:flex;gap:22px;flex-wrap:wrap;font-size:13px;margin-top:24px}.site-footer{max-width:1200px;margin:auto;padding:24px 32px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;font-size:12px;color:var(--muted)}
@media(max-width:700px){.site-header{padding:20px;align-items:start}.site-header nav{gap:12px;flex-wrap:wrap;justify-content:end;font-size:12px}main{padding:0 20px}.hero{padding-top:32px}.variant-bar{display:block}.variant-note{margin:15px 0 0;max-width:none}.stage{height:min(84vw,70vh);min-height:300px}.player-status,.archive-row{display:block}.player-status a{display:inline-block;margin-top:10px}.archive-row a{display:inline-block;margin-top:15px}.description{margin-top:40px}.description h2{font-size:27px}.site-footer{padding:22px 20px;flex-wrap:wrap}.transcript-entry pre{padding-left:12px}.hero p:last-child{font-size:15px}}

/* Emulator families share the cassette shelf's compact single-row presentation. */
.variant-shelf{position:relative;min-width:0;padding:12px 0;border-bottom:1px solid var(--line)}
.variant-shelf .shelf-heading{display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap;margin-bottom:10px}
.variant-shelf h2{margin:0;font:12px monospace;font-weight:400}.variant-shelf .shelf-heading span{font:11px monospace;color:var(--accent)}
.variant-carousel{display:flex;align-items:center;gap:8px;min-width:0}
.variant-list{list-style:none;position:relative;display:flex;flex-wrap:nowrap;flex:1;min-width:0;gap:8px;margin:0;padding:2px 0 5px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#777166 transparent;touch-action:pan-x pan-y}
.variant-card{display:flex;align-items:center;gap:6px;flex:0 0 min(260px,100%);width:260px;min-width:0;padding:9px 8px;border:1px solid #777166;background:#171717;scroll-snap-align:start}
.variant-card:hover,.variant-card[data-details-open=true],.variant-card:has([aria-pressed=true]){border-color:var(--accent)}
.variant-grab{display:flex;align-items:center;gap:8px;flex:1;min-width:0;padding:0;border:0;background:none;color:var(--paper);text-align:left;cursor:pointer}
.variant-name{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.variant-icon{display:flex;align-items:center;justify-content:center;width:28px;height:20px;flex:none;border:1px solid currentColor;color:var(--muted);font:11px monospace}
.variant-select{flex:none;max-width:106px;padding:3px 5px;border:1px solid #777166;background:#171717;color:var(--accent);font:10px monospace;cursor:pointer;white-space:nowrap}
.variant-select:hover,.variant-select[aria-expanded=true],.variant-grab[aria-busy=true]{border-color:var(--accent)}
.variant-version{font:10px monospace;color:var(--accent);white-space:nowrap}
.variant-popup,.variant-picker{position:fixed;z-index:8;overflow:auto;overscroll-behavior:contain;background:#181817;color:var(--paper);border:1px solid #888276;box-shadow:0 8px 24px #0009;max-width:calc(100% - 24px)}
.variant-popup{width:380px;padding:16px}.variant-picker{z-index:9;padding:5px}
.variant-popup[hidden],.variant-picker[hidden]{display:none}
.variant-popup.is-inline,.variant-picker.is-inline{position:relative;margin-top:10px;width:min(380px,100%);max-height:360px}
.variant-picker.is-inline{width:min(300px,100%);max-height:280px}
.variant-popup h3{font-size:14px;font-weight:500;margin:0 0 10px}.variant-description{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 12px}
.variant-details{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;font-size:11px;margin:0 0 14px}.variant-details dt{color:var(--muted)}.variant-details dd{margin:0;overflow-wrap:anywhere}
.variant-actions button{background:transparent;border:1px solid #888276;color:var(--paper);font-size:12px;padding:7px 10px;cursor:pointer}.variant-actions button:hover{background:var(--paper);color:#101010}
.variant-links{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;margin-top:12px}.variant-hint{font-size:10px;color:var(--muted);margin:12px 0 0}
.variant-option{padding:8px 10px;font:11px monospace;color:var(--paper);cursor:pointer}.variant-option:hover,.variant-option.is-active{background:#35322b}.variant-option[aria-selected=true]{color:var(--accent)}
.variant-picker:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.variant-select:focus-visible,.variant-grab:focus-visible{outline-offset:3px}
@media(max-width:700px){.variant-carousel{gap:6px}.variant-card{flex-basis:min(220px,100%);width:220px;padding:9px 6px}.variant-grab{gap:6px}.variant-name{font-size:11px}.variant-shelf .shelf-help{flex-basis:100%}}

/* Optional experimental engine, visible before the stable emulator shelf. */
.wasm-preview{display:flex;align-items:center;justify-content:space-between;gap:18px 28px;padding:18px 20px;margin-bottom:12px;border:1px solid var(--accent);background:#1c1915}
.wasm-preview .eyebrow{margin:0 0 4px;font-size:10px}.wasm-preview h2{margin:0;font-size:18px;line-height:1.4;font-weight:500}
.wasm-preview p:last-child{margin:6px 0 0;color:var(--muted);font-size:13px;max-width:560px}
.wasm-preview-actions{flex:none;display:grid;gap:10px}.wasm-preview-actions>div{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:12px}
.wasm-preview-launch{display:block;background:var(--accent);color:#101010;padding:9px 14px;text-decoration:none;font-size:13px;font-weight:700}.wasm-preview-launch:hover{background:var(--paper);color:#101010}
@media(max-width:700px){.wasm-preview{display:block;padding:15px}.wasm-preview-actions{margin-top:14px}.wasm-preview-launch{width:fit-content;max-width:100%}}
