:root{color-scheme:dark;--bg:#0b101c;--panel:#121a2a;--line:#283247;--ink:#f5f4ef;--muted:#95a3b8;--cyan:#59e5e0;--pink:#f98aba;--yellow:#f6db78}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 78% 8%,#16334366,transparent 38%),var(--bg);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif}button,input,select{font:inherit}button,a,label,input{touch-action:manipulation}button,.file{border:1px solid var(--line);background:#1d293b;color:var(--ink);border-radius:9px;padding:11px 14px;cursor:pointer;font-weight:650;font-size:13px}button:hover:not(:disabled),.file:hover{border-color:var(--cyan);background:#25344a}button:disabled{opacity:.4;cursor:not-allowed}a{color:var(--cyan);text-underline-offset:4px}button:focus-visible,a:focus-visible,label:focus-within,select:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}[hidden]{display:none!important}select,input[type=search]{padding:11px;border:1px solid var(--line);border-radius:8px;background:#0d1524;color:var(--ink);width:100%}input[type=range]{width:85px;accent-color:var(--cyan)}
.site-header{max-width:1280px;margin:auto;padding:25px 28px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}.brand img{width:190px;height:auto;display:block}nav{display:flex;gap:26px}nav a{color:#bac4d1;text-decoration:none;font-size:13px}.status-pill{font-size:9px;letter-spacing:1.2px;border:1px solid var(--line);padding:9px;border-radius:30px;color:var(--muted)}.status-pill i,#lamp{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--cyan);margin-right:7px}.status-pill i{box-shadow:0 0 10px #59e5e066}main{max-width:1224px;margin:auto;padding:0 28px}.hero{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:56px 0 42px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:750;color:var(--cyan)}h1{font-size:clamp(40px,5.2vw,68px);font-weight:800;line-height:1.06;letter-spacing:-2.8px;margin:20px 0}h1 span{background:linear-gradient(105deg,var(--cyan),#afc2fd 45%,var(--pink));background-clip:text;color:transparent}.lede{font-size:16px;line-height:1.8;color:#a8b5c7}.hero-stamp{width:200px;height:150px;border:1px solid #405367;border-radius:18px;transform:rotate(8deg);display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(150deg,#203b46,#1b2137);box-shadow:8px 8px 0 #040b12}.hero-stamp>span{font-size:66px;letter-spacing:-5px;font-weight:900;line-height:1;color:var(--yellow)}.hero-stamp small{text-align:center;line-height:1.7;font-size:9px;letter-spacing:1.4px;margin-top:14px;color:#bbd0ce}
.studio-grid{display:grid;grid-template-columns:minmax(310px,380px) minmax(0,1fr);gap:24px;align-items:start}.workflow{display:grid;gap:20px}.card{border:1px solid var(--line);border-radius:18px;background:linear-gradient(130deg,#17213288,transparent 55%),var(--panel);padding:24px}.section-label{display:flex;align-items:center;gap:9px;font-size:10px;font-weight:700;letter-spacing:1.3px;color:#c7d3e1}.section-label b{padding:5px 7px;border-radius:5px;background:#24413f;color:var(--cyan);font-size:9px;letter-spacing:.8px}.section-label>span{margin-left:auto;color:#778ba3;font-size:8px;letter-spacing:1px}.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px dashed #4d6577;border-radius:12px;background:#0d1827;padding:28px 10px;gap:10px;margin-top:22px;cursor:pointer;position:relative}.dropzone:hover,.dropzone.dragover{border-color:var(--cyan);background:#142a36}.dropzone .cartridge-icon{font-size:42px;color:var(--cyan);line-height:1;margin-bottom:8px}.dropzone strong{font-size:20px}.dropzone>span:not(.cartridge-icon){font-size:12px;color:var(--muted)}.dropzone small{font-size:10px;color:#73879e}.dropzone input{position:absolute;width:1px;height:1px;opacity:0}.privacy{font-size:11px;line-height:1.7;color:var(--muted)}.text-button{padding:7px 0;background:transparent;border:0;font-size:11px;color:var(--cyan)}.text-button:hover:not(:disabled){background:transparent}.rom-summary{margin-top:18px;border-left:3px solid var(--cyan);padding:4px 12px;display:grid;gap:5px;overflow-wrap:anywhere}.tiny-label{font-size:9px;letter-spacing:1.4px;color:var(--cyan)}.rom-summary strong{font-size:14px}.rom-summary>span:last-child{font-size:10px;color:var(--muted)}details{margin-top:16px;border-top:1px solid var(--line);padding-top:15px}summary{font-size:11px;color:var(--muted);cursor:pointer}
#restore-panel>summary{width:100%;padding:15px 16px;border:1px solid #438b91;border-radius:10px;background:#153039;color:var(--cyan);font-size:16px;font-weight:700;line-height:1.5}#restore-panel>summary:hover{background:#1b3e47;border-color:var(--cyan)}#restore-panel>summary:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}#restore-panel[open]>summary{margin-bottom:16px}
.library{display:grid;gap:8px;margin-top:12px}.library select{font-size:11px}.libraryCount,#libraryCount{font-size:10px;color:var(--muted)}h2{font-size:21px;letter-spacing:-.5px;margin-bottom:9px}.flash-card>p,.hardware-heading p{font-size:12px;line-height:1.8;color:var(--muted)}.field-label{font-size:9px;color:var(--muted);letter-spacing:1px;display:block;margin:18px 0 7px}.button-row{display:flex;gap:8px}.button-row>*{flex:1}.hint{font-size:11px;color:var(--muted);line-height:1.7;overflow-wrap:anywhere}.build-review{margin:16px 0;padding:15px;background:#0e1725;border:1px solid #36585a;border-radius:10px;overflow-wrap:anywhere}.build-review p,.build-review a{font-size:11px;line-height:1.7;color:var(--muted)}.build-review a{color:var(--cyan)}.primary{background:var(--cyan);color:#07242b;border-color:var(--cyan);width:100%}.primary:hover:not(:disabled){background:#9bf7e6;color:#07242b}progress{width:100%;height:7px;accent-color:var(--cyan)}
.player-card{padding:24px 28px 22px;min-height:700px}.device{margin:28px auto 20px;max-width:360px;padding:20px 27px 16px;background:linear-gradient(120deg,#3a4b62,#24334b 60%,#202b41);border:1px solid #607087;border-radius:24px 24px 55px 24px;box-shadow:0 10px 0 #080d15,0 25px 45px #0006,inset 0 1px 0 #9bacc24d}.device-top{display:flex;justify-content:space-between;font-size:9px;font-weight:800;letter-spacing:2px;margin:0 0 14px}.device-top span:last-child{font-size:6px;color:#9cacc1;letter-spacing:1px;padding-top:3px}.screen-shell{background:#09111e;border-radius:11px 11px 22px 11px;padding:13px 13px 9px;box-shadow:inset 0 2px 3px #000}.screen-shell canvas{display:block;width:100%;aspect-ratio:160/144;background:#0b1220;image-rendering:pixelated;border:3px solid #03070f}.screen-caption{display:flex;align-items:center;justify-content:center;font-size:8px;color:#8796ad;letter-spacing:.8px;padding-top:10px;height:23px}#lamp{background:#435467;width:5px;height:5px}#lamp.on{background:var(--cyan);box-shadow:0 0 8px var(--cyan)}.game-controls{display:flex;align-items:center;justify-content:space-between;margin:24px 0 8px}.dpad{display:grid;grid-template-columns:30px 30px 30px;grid-template-rows:30px 30px 30px}.dpad button,.middle{background:#0d1522;border:0;color:#8fa1b9;padding:0;border-radius:4px;box-shadow:0 3px #040914}.up{grid-area:1/2}.left{grid-area:2/1}.right{grid-area:2/3}.down{grid-area:3/2}.middle{grid-area:2/2;border-radius:0;box-shadow:none}.ab{display:flex;gap:12px;transform:rotate(-14deg)}.ab button{width:47px;height:47px;border-radius:50%;background:var(--pink);color:#35112a;border:1px solid #ffb4d3;box-shadow:0 5px #66354e;font-weight:900}.ab button:last-child{background:var(--cyan);border-color:#a4f9f2;color:#10302c;box-shadow:0 5px #255955}.small-buttons{display:flex;gap:14px;justify-content:center;padding:0 0 19px}.small-buttons button{font-size:7px;letter-spacing:1px;border-radius:20px;padding:8px 13px;background:#152134;color:#adbed6}.game-controls button,.small-buttons button,.piano button,.pad-grid button{touch-action:none;user-select:none}.active{filter:brightness(1.4)!important;transform:translateY(2px)}.device-footer{display:flex;justify-content:space-between;font-size:7px;letter-spacing:1.5px;color:#8b9db7}.device-footer span:last-child{font-size:11px}.toolbar,.save-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:7px}.toolbar button,.toolbar select,.save-controls button,.save-controls label{font-size:10px;padding:8px 10px}.toolbar select{width:auto}.toolbar label{font-size:10px;color:var(--muted);display:flex;align-items:center;gap:5px}.save-controls{margin-top:10px}.file input{display:none}.save-controls>span{width:100%;text-align:center;font-size:10px;color:#71849c;margin-top:5px}.keyboard-help{font-size:9px;letter-spacing:1px;color:#7b90ab;text-align:center;margin:19px 0 0}.keyboard-help span{margin:0 7px}#status{text-align:center;font-size:12px;color:var(--muted);min-height:20px;margin:17px 0}
.hardware-card{margin-top:26px}.hardware-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.segmented{display:flex;background:#0c1523;border:1px solid var(--line);padding:4px;border-radius:9px;flex-shrink:0}.segmented button{border:0;background:transparent;font-size:11px}.segmented [aria-pressed=true]{background:#2b4850;color:var(--cyan)}.instrument{padding:22px;border:1px solid #3c4559;background:linear-gradient(140deg,#262b37,#171b25);border-radius:14px;margin-top:14px}.instrument-top{display:flex;align-items:center;gap:20px;margin-bottom:24px}.instrument-top>strong{font-size:22px;letter-spacing:2px}.instrument-badge{font-size:8px;color:#8b94a8;letter-spacing:1.8px;margin-left:auto}#hardware-transport{display:flex;gap:8px}#hardware-transport button{font-size:9px;background:#25524c;border-color:#4b9380;color:#b0fff1}.piano{position:relative;height:134px;display:flex;gap:2px;border:5px solid #0b0e15;border-top-width:8px;border-radius:3px}.piano button{border:0;border-radius:0 0 5px 5px;padding:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;font-size:9px;font-weight:800}.piano .white{flex:1;min-width:0;background:linear-gradient(#e4e6e9,#bdc5cf);color:#697482;box-shadow:inset 0 -4px #8993a1}.piano .white:disabled,.piano .black:disabled{opacity:1;cursor:default}.piano .black{position:absolute;top:0;width:2.7%;height:66%;background:linear-gradient(#121824,#27303c);z-index:2;color:#778498;box-shadow:inset 0 -6px #040913}.piano .white.assigned{background:linear-gradient(#a5f2dc,#58cdbb);color:#073e3c;box-shadow:inset 0 -4px #298c84,0 0 14px #67eadb33}.piano .black.assigned{background:linear-gradient(#286368,#3eaaad);color:#e0fffb;box-shadow:inset 0 -5px #173e48}.piano .key-action{font-size:12px;padding-bottom:12px}.piano .key-number{font-size:8px;padding-bottom:7px;opacity:.75}.pad-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;max-width:680px;margin:0 auto 22px}.pad-grid button{aspect-ratio:1.4;border-radius:7px;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;background:#111822;border:1px solid #424954;opacity:1;color:#586878;padding:7px;font-size:17px}.pad-grid .assigned{background:#183f43;border-color:#61c9c7;color:#acffef;box-shadow:0 0 12px #3aeece18,inset 0 0 16px #68e7e711}.pad-grid .rotate{background:#4b2648;border-color:#de7cbe;color:#ffb7dd;box-shadow:0 0 12px #e899cb22}.pad-grid small{font-size:8px;letter-spacing:1px;color:#7d92a2}.hardware-legend{font-size:11px;color:#9aa9bd;line-height:1.7;margin:15px 0 0}.about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;padding:48px 0}.about-grid h3{font-size:17px;margin:14px 0 10px}.about-grid p{font-size:12px;color:var(--muted);line-height:1.9}footer{max-width:1224px;margin:auto;border-top:1px solid var(--line);padding:26px 28px;display:flex;align-items:center;gap:24px;font-size:10px}footer img{width:130px}footer>span{margin-right:auto;color:#73889f;font-size:8px;letter-spacing:1.7px}footer a{color:#9baec3}
@media(max-width:900px){.status-pill{display:none}.studio-grid{grid-template-columns:320px minmax(0,1fr)}.player-card{padding:20px 14px}.device{padding:15px 18px}.card{padding:20px}.hero-stamp{margin-right:10px;width:150px;height:130px}.section-label>span{font-size:7px}.brand img{width:160px}nav{gap:16px}.instrument{padding:14px}}
@media(max-width:700px){.site-header{padding:20px;gap:14px;flex-wrap:wrap}.brand img{width:155px}nav{gap:13px}nav a{font-size:10px}.status-pill,.hero-stamp{display:none}main{padding:0 16px}.hero{padding:30px 4px 22px}h1{font-size:46px;letter-spacing:-2px}.lede{font-size:13px}.studio-grid{display:flex;flex-direction:column}.workflow{display:contents}.upload-card,.player-card,.flash-card{width:100%}.upload-card{order:0}.player-card{order:1;min-height:0}.flash-card{order:2}.device{max-width:340px}.hardware-heading{align-items:flex-start;flex-direction:column;gap:4px}.instrument-top{gap:10px;flex-wrap:wrap}.instrument-badge{display:none}.piano{height:104px;border-width:3px;gap:1px}.piano .key-action{font-size:9px;padding-bottom:7px}.piano .key-number{font-size:6px}.pad-grid{gap:4px}.pad-grid button{font-size:13px;padding:4px;aspect-ratio:1}.pad-grid small{font-size:6px}.about-grid{grid-template-columns:1fr;gap:18px;padding:32px 4px}.about-grid p{margin-bottom:0}footer{flex-wrap:wrap;gap:18px;padding:22px 20px}footer>span{display:none}.section-label{font-size:9px}.dropzone{padding:24px 10px}}
.simulator-picker{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:20px;color:var(--muted);font-size:10px;letter-spacing:1px}.simulator-picker select{width:auto;max-width:75%;font-size:12px;letter-spacing:0}
.gameboy-note{margin-top:20px;padding:24px;border:1px solid #62655a;border-radius:12px;background:#272c27}.gameboy-note strong{color:#c8d6a0}.gameboy-note p{color:#aab5a3;font-size:13px;line-height:1.8}.gameboy-note a{font-size:12px}
.player-card[data-simulator=gameboy] .device{background:linear-gradient(125deg,#e8e5d9,#c9c8c0 65%,#babbb5);border-color:#eeede5;border-radius:18px 18px 65px 18px;box-shadow:0 9px 0 #898c88,0 25px 45px #0007,inset 0 3px 0 #ffffff99;color:#343963}
.player-card[data-simulator=gameboy] .device-top{font-style:italic;letter-spacing:1px}.player-card[data-simulator=gameboy] .device-top span:last-child{color:#575c73}
.player-card[data-simulator=gameboy] .screen-shell{background:#6b707b;border-radius:10px 10px 36px 10px;box-shadow:inset 0 2px 4px #3d4148;border-top:4px solid #854a70;padding-top:15px}
.player-card[data-simulator=gameboy] .screen-shell canvas{background:#9baa65;border-color:#3d4536;box-shadow:0 0 0 2px #505745}
.player-card[data-simulator=gameboy] .screen-caption{color:#f0efdf;font-family:monospace;font-size:7px}.player-card[data-simulator=gameboy] #lamp.on{background:#ff5353;box-shadow:0 0 7px #ff5353}
.player-card[data-simulator=gameboy] .dpad button,.player-card[data-simulator=gameboy] .middle{background:#292c31;color:#84858a;box-shadow:0 3px #131518}.player-card[data-simulator=gameboy] .middle{box-shadow:none}
.player-card[data-simulator=gameboy] .ab button{background:linear-gradient(135deg,#c52b70,#950b50);border-color:#d34080;color:#fff1f7;box-shadow:0 5px #680e3a}
.player-card[data-simulator=gameboy] .small-buttons button{background:#727780;border-color:#62656c;color:white;box-shadow:0 3px #535861;transform:rotate(-12deg)}
.player-card[data-simulator=gameboy] .device-footer{color:#52566a}.player-card[data-simulator=gameboy] .device-footer span:last-child{letter-spacing:4px;font-size:15px;transform:rotate(-25deg)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Device illustrations stay in normal page flow, with the live LCD in its panel. */
.hero{gap:10px;padding:30px 0}.hero>div{flex:0 0 47%}.hero-art{width:53%;height:auto;filter:drop-shadow(0 20px 22px #0005)}
.hardware-stage{margin:26px -12px 22px}.hardware-stage svg{display:block;width:100%;height:auto;overflow:visible}.hardware-stage svg *{pointer-events:none}.hardware-stage svg [data-control-bit]{pointer-events:all;cursor:pointer;touch-action:none;outline:none}.hardware-stage svg [data-control-bit]:focus-visible{stroke:#fff;stroke-width:3}.hardware-stage svg .active{transform:none;filter:brightness(1.5) drop-shadow(0 0 4px #b4fff5)!important}.hardware-stage .control-label{fill:#10252c;font-family:Arial,sans-serif;font-weight:800;text-anchor:middle;pointer-events:none}.hardware-stage .live-screen,.hardware-stage .live-screen *{pointer-events:auto}.lcd-content{width:100%;height:100%;background:#0b1220}.lcd-content canvas{display:block;width:100%;height:100%;image-rendering:pixelated;border:0}.hardware-legend{padding:0 12px;font-size:11px;line-height:1.8}.player-card:not([data-simulator=gameboy]){min-height:0}.player-card[data-simulator^=smk] .hardware-stage{margin-top:45px;margin-bottom:30px}#screen:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
@media(max-width:700px){.hero{flex-direction:column;align-items:flex-start}.hero>div{flex:auto}.hero-art{width:100%;max-width:520px;align-self:center;margin:-10px 0 0}.hardware-stage{margin-left:-12px;margin-right:-12px}.hardware-legend{font-size:10px}.simulator-picker select{max-width:72%}}
#large-screen{max-width:400px;margin:25px auto 10px;padding:12px;background:#070e18;border:1px solid #3c5269;border-radius:14px;box-shadow:0 15px 30px #0003}#large-screen canvas{display:block;width:100%;height:auto;aspect-ratio:160/144;image-rendering:pixelated}#zoom-screen[aria-pressed=true]{border-color:var(--cyan);color:var(--cyan)}
.hero>.hero-showcase{flex:0 1 53%;width:53%;min-width:0}.hero-device-window{aspect-ratio:4/3;overflow:hidden;border-radius:22px;background:radial-gradient(ellipse at center,#21434a55,transparent 70%)}.hero-device-window>svg,.hero-device-window>img{display:block;width:100%;height:100%;pointer-events:none}.hero-caption{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:#a9b8cc}.hero-caption button{padding:5px 9px;font-size:10px;background:transparent}.hero-choices{display:flex;justify-content:center;gap:8px;margin-top:14px}.hero-choices button{font-size:10px;padding:7px 12px;background:transparent;color:var(--muted)}.hero-choices button[aria-pressed=true]{color:var(--cyan);border-color:#438d91;background:#16353b}@media(max-width:700px){.hero>.hero-showcase{width:100%;flex:auto;margin:18px 0 12px}}

dialog{color:var(--text,#e7edf7);background:#151e2d;border:1px solid #438d91;border-radius:16px;padding:24px;max-width:min(460px,90vw)}dialog::backdrop{background:#000b}

/* Clear headings and numbered hardware actions. */
.workflow-title{margin:0 0 16px;font-size:26px;line-height:1.15;letter-spacing:-.6px;font-weight:800;color:#79b8ff}
.install-steps{display:grid;gap:12px;margin:18px 0}
.step-button{display:flex;align-items:center;gap:12px;width:100%;min-height:60px;padding:13px 16px;border:1px solid #438b91;background:#153039;color:var(--ink);font-size:16px;font-weight:750;text-align:left;line-height:1.4}
.step-button:hover:not(:disabled){background:#1b3e47;border-color:var(--cyan)}
.step-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;height:30px;border-radius:50%;background:var(--cyan);color:#07242b;font-size:15px;font-weight:800}
.step-button:disabled{opacity:.65;background:#192434;border-color:var(--line);color:var(--muted)}
.step-button:disabled .step-number{background:#394b5f;color:#c4cfdd}
.step-button.primary{background:var(--cyan);color:#07242b;border-color:var(--cyan);margin-top:16px}
.step-button.primary .step-number{background:#07242b;color:var(--cyan)}

footer{flex-wrap:wrap}footer .rom-art-notice{flex-basis:100%;margin:0;font-size:10px;line-height:1.6;color:var(--muted)}footer .rom-art-notice a{color:inherit}

/* Classic handheld shell: warm plastic, LCD green, berry action buttons. */
:root{color-scheme:light;--bg:#d8d6cd;--panel:#eeece3;--line:#b5b4ab;--ink:#292c33;--muted:#5b6061;--cyan:#334d43;--pink:#a12c61;--yellow:#b2be78;--lcd:#b9c789;--blue:#394b82}
body{background:radial-gradient(ellipse at 70% 0,#f4f1e6,transparent 55%),repeating-linear-gradient(0deg,#00000003 0 1px,transparent 1px 4px),var(--bg)}
a{color:var(--blue)}
button,.file{background:linear-gradient(#f9f7ef,#deddd5);color:var(--ink);border-color:#a5a69f;border-radius:7px;box-shadow:0 3px 0 #a6a8a1,inset 0 1px #fff}
button:hover:not(:disabled),.file:hover{background:#f9f8f1;border-color:var(--blue)}
button:active:not(:disabled){box-shadow:0 1px 0 #a6a8a1;translate:0 2px}
button:focus-visible,a:focus-visible,label:focus-within,select:focus-visible{outline-color:var(--blue)}
select,input[type=search]{background:#f8f6ed;color:var(--ink);border-color:#a5a69f;box-shadow:inset 0 2px 3px #292c3310}
input[type=range],progress{accent-color:var(--pink)}
.site-header{margin-top:18px;background:#34383e;border:1px solid #262a30;border-radius:16px 16px 5px 5px;box-shadow:0 4px 0 #989b96,inset 0 1px #666c70}
nav a{color:#f0eee3}nav a:hover{color:#c6d69a}.status-pill{color:#d6dfb9;border-color:#737d68;font-family:Consolas,"Courier New",monospace}.status-pill i{background:#dc5c64;box-shadow:0 0 8px #dc5c6450}
.hero{padding:44px 0 36px;gap:32px}.hero>div:first-child{flex:0 1 45%}
.eyebrow,.tiny-label,.field-label,.simulator-picker,.section-label,.keyboard-help,.hero-caption,.hero-choices,.status-pill{font-family:Consolas,"Courier New",monospace}
.eyebrow{color:var(--blue);letter-spacing:1.7px}
h1{font-family:"Courier New",Consolas,monospace;font-size:clamp(38px,4.5vw,60px);letter-spacing:-3px;line-height:1.04;text-shadow:2px 2px #fff9}
h1 span{background:none;color:var(--pink)}.lede{color:#525957;font-size:15px;line-height:1.8}
.hero>.hero-showcase{padding:20px 20px 18px;background:linear-gradient(135deg,#deded7,#bfc2ba);border:1px solid #a6aaa1;border-top:3px solid #f4f4e9;border-radius:16px 16px 48px 16px;box-shadow:0 7px 0 #999e95,0 16px 26px #4a504a1a;position:relative}
.hero-showcase::before{content:"DOT MATRIX / POCKET ARCADE";display:block;margin:0 0 12px;padding:0 0 9px;border-bottom:3px solid #875068;font-family:Consolas,"Courier New",monospace;font-size:9px;letter-spacing:1.8px;color:#464b5a}
.hero-device-window{background:repeating-linear-gradient(0deg,#32452e09 0 1px,transparent 1px 4px),radial-gradient(ellipse,#ced8a1,#a7b578);border:10px solid #646b69;border-radius:7px 7px 24px 7px;box-shadow:inset 0 0 12px #30422c40,0 1px #f8f8ed;aspect-ratio:4/3}
.hero-caption{margin-top:14px;color:#353c42;font-size:10px}.hero-caption button{background:#777e7d;color:#fff;border-color:#626a6b;box-shadow:0 2px #535c5b;font-size:9px}
.hero-choices{margin-top:16px;gap:12px}.hero-choices button{background:#ecece3;color:#414958;border-color:#979e95;font-size:10px;box-shadow:0 3px #929990}
.hero-choices button[aria-pressed=true]{color:#fff6fa;border-color:#8b234f;background:var(--pink);box-shadow:0 3px #651b3e}
.card{background:linear-gradient(130deg,#ffffff55,transparent 65%),var(--panel);border:1px solid #babcb2;border-top:2px solid #fffff4;border-radius:12px 12px 28px 12px;box-shadow:0 5px 0 #b0b4a9,0 12px 22px #41493d0a}
.workflow-title{font-size:26px;color:var(--blue);font-family:"Courier New",Consolas,monospace;letter-spacing:-1.2px}
.dropzone{background:repeating-linear-gradient(0deg,#31422b07 0 1px,transparent 1px 4px),#ccd5a9;border:2px dashed #7a885b;border-radius:5px 5px 16px 5px;box-shadow:inset 0 2px 7px #5263381a;margin-top:20px}
.dropzone:hover,.dropzone.dragover{background:#dae2b8;border-color:#405631}.dropzone .cartridge-icon{color:#3d5234}.dropzone strong{color:#30432b;font-size:19px}.dropzone>span:not(.cartridge-icon),.dropzone small{color:#475c3b}
.text-button{color:var(--blue);background:transparent;box-shadow:none}.text-button:hover:not(:disabled){color:var(--pink);background:transparent}
.section-label{color:#41475c;border-bottom:2px solid #b4b7a9;padding-bottom:14px}.section-label b{background:#3b543a;color:#e4efbd;border-radius:3px}.section-label>span{color:#606850}
.step-button{background:linear-gradient(#a93468,#8f2456);border-color:#7a1f48;color:#fff9fb;box-shadow:0 4px #641a3e,inset 0 1px #d16692;border-radius:9px}
.step-button:hover:not(:disabled){background:#b33a71;border-color:#671333}.step-number{background:#f5e4eb;color:#76214a;box-shadow:inset 0 1px 2px #0002}
.step-button:disabled{opacity:1;background:#d9dbd2;border-color:#bdc0b5;color:#777e75;box-shadow:0 3px #b3b7ad}.step-button:disabled .step-number{background:#c0c6b7;color:#56604e}
.step-button.primary,.primary{background:#354b3a;color:#f1f6df;border-color:#263b2d}.step-button.primary .step-number{background:#d5e2b5;color:#263b2d}.primary:hover:not(:disabled){background:#49634a;color:#fff}
#restore-panel>summary{background:#dedfce;color:var(--blue);border-color:#9ba68c;border-radius:8px;box-shadow:0 3px #b6bcac;font-size:15px}#restore-panel>summary:hover{background:#e9ebda;border-color:var(--blue)}#restore-panel>summary:focus-visible{outline-color:var(--blue)}
.build-review{background:#e0e7cd;border-color:#9bab86}.build-review a{color:var(--blue)}
.player-card{background:linear-gradient(145deg,#f5f3e9,#e4e4da);border-bottom-right-radius:42px}.hardware-legend{color:#565d56}.keyboard-help{color:#616953;letter-spacing:.6px}.save-controls>span{color:#60695d}
.toolbar{border-top:1px solid #c0c5b5;padding-top:16px}.toolbar button,.toolbar select,.save-controls button,.save-controls label{font-size:11px}.simulator-picker{color:#535d51}.hardware-stage{filter:drop-shadow(0 8px 6px #3b43341a)}
#large-screen{background:#646b69;border:2px solid #565d59;border-radius:10px 10px 24px 10px;box-shadow:0 5px #a4ab9b}#zoom-screen[aria-pressed=true]{background:#d4dfb9;border-color:#526b44;color:#31472b}
.about-grid{gap:28px;padding:44px 0}.about-grid>div{border-top:3px solid #acb59b;padding:18px 4px 0}.about-grid h3{color:#353e3d}.about-grid p{color:#565f58}
footer{border-top:2px solid #a8aea0;margin-bottom:20px}footer img{background:#34383e;padding:8px 10px;border-radius:5px;width:145px}footer>span{color:#525e4e}footer a{color:var(--blue)}footer .rom-art-notice{color:#646c5e}
dialog{color:var(--ink);background:var(--panel);border:2px solid #7c8770;box-shadow:0 9px 0 #8f9985;border-radius:12px 12px 28px 12px}dialog::backdrop{background:#1f292ac4}
@media(max-width:900px){.site-header{margin:12px 16px 0}.hero{gap:22px}.hero>.hero-showcase{padding:14px}.hero-showcase::before{font-size:8px;letter-spacing:.8px}h1{font-size:42px;letter-spacing:-2px}.hero-caption{font-size:9px}.hero-choices{gap:7px}.hero-choices button{padding:7px 9px}}
@media(max-width:700px){.site-header{margin:10px 12px 0;padding:18px 16px}nav{flex-wrap:wrap}.hero{padding:30px 4px 26px;gap:4px}.hero>div:first-child{flex:auto}h1{font-size:clamp(36px,9vw,48px);letter-spacing:-2px}.hero>.hero-showcase{margin:20px 0 12px;padding:16px;max-width:520px;align-self:center}.hero-device-window{aspect-ratio:4/3;border-width:8px}.hero-showcase::before{font-size:8px}.hero-caption{font-size:10px}.hero-choices{gap:12px}.about-grid{gap:18px;padding:32px 4px}.about-grid>div{padding-top:14px}.workflow-title{font-size:26px}.player-card{border-bottom-right-radius:30px}}
/* Keep the handheld's italic display lettering and readable hover states. */
h1{font-family:"Arial Black","Segoe UI",Arial,sans-serif;font-style:italic;font-weight:900;color:var(--blue);letter-spacing:-2.4px}
.hero-caption button:hover:not(:disabled){background:#596363;color:#fff}
.hero-choices button[aria-pressed=true]:hover:not(:disabled){background:#b43b74;color:#fff}

/* One molded console surrounds the existing panels; the page backdrop stays unchanged. */
.console-shell{position:relative;margin:30px auto 38px;padding:18px 32px 0;border:2px solid #a9aca5;border-top:4px solid #faf9ef;border-radius:24px 24px 88px 24px;background:linear-gradient(115deg,#ffffff35,transparent 42%),#d0d1c9;box-shadow:inset 4px 0 0 #ebece3,inset -5px 0 0 #b6bab1,0 10px 0 #92988f,0 13px 0 #6f766e,0 26px 38px #3a423226}
.console-trim{display:flex;justify-content:space-between;gap:18px;padding:8px 8px 13px;border-bottom:2px solid #acb1a6;box-shadow:0 1px #f4f5e9;color:#626c60;font:9px Consolas,"Courier New",monospace;letter-spacing:1.8px;text-shadow:0 1px #f8f9ec}
.console-trim i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#b74b5e;box-shadow:inset 0 1px 2px #64192d,0 0 4px #c34c5e55;margin-right:7px}
.console-base{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:98px;border-top:2px solid #aeb4a7;margin:0 4px;padding:12px 12px 22px;color:var(--blue);font-weight:900;font-style:italic;font-size:21px;letter-spacing:-.8px}
.console-base small{display:block;font:8px Consolas,"Courier New",monospace;letter-spacing:1.7px;margin-top:6px;color:#626d5e}
.speaker-grille{display:block;width:154px;height:50px;transform:rotate(-17deg);border-radius:10px;background:repeating-linear-gradient(90deg,transparent 0 10px,#8e9789 10px 15px,#eef0e5 15px 18px,transparent 18px 25px);margin-right:24px}
.stock-library{padding:14px 14px 12px;background:#dfe5c9;border:1px solid #9ba78d;border-radius:8px;box-shadow:inset 0 2px 3px #3b4c2712}.stock-library .field-label{margin:0 0 8px;color:#44523b;font-weight:700}.stock-library select{font-size:12px}.stock-library>.hint{margin:10px 0;line-height:1.6}.stock-library button{width:100%;background:#354b3a;color:#f1f6df;border-color:#263b2d;box-shadow:0 3px #263b2d}.stock-library button:hover:not(:disabled){background:#49634a}.stock-help{margin-top:13px;padding-top:10px}.stock-help summary{color:#4c593f}.stock-help .hint{margin-bottom:0}#stock-status:empty{display:none}
@media(max-width:1280px){.console-shell{margin-left:20px;margin-right:20px}}
@media(max-width:900px){.console-shell{padding:14px 20px 0}.console-trim{font-size:8px;letter-spacing:1px}}
@media(max-width:700px){.console-shell{margin:22px 10px 30px;padding:12px 12px 0;border-radius:18px 18px 54px 18px}.console-trim{padding:6px 3px 10px;font-size:7px;letter-spacing:.4px}.console-trim span:last-child{text-align:right}.console-base{padding:12px 4px 24px;font-size:17px;min-height:85px}.console-base small{font-size:6px;letter-spacing:.8px}.speaker-grille{width:96px;height:35px;margin-right:8px}.stock-library{padding:12px}}

.credit-table{width:100%;border-collapse:collapse;font-size:13px}.credit-table th,.credit-table td{text-align:left;padding:12px 8px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.6}.credit-table small{color:var(--muted)}

footer .smk-family{flex-basis:100%;display:flex;align-items:center;flex-wrap:wrap;gap:12px 22px;padding:18px 0 8px;border-top:1px solid var(--line)}footer .smk-family>span{font-size:10px;letter-spacing:1px;color:var(--muted);margin-right:auto}footer .smk-family a{font-size:12px;color:var(--blue);white-space:nowrap}footer .smk-family a:hover{color:var(--pink)}@media(max-width:700px){footer .smk-family>span{flex-basis:100%;margin:0}footer .smk-family{gap:16px 22px}}
