body.browser-wasm .browser-hero{padding:12px 0 22px;margin-bottom:22px}
body.browser-wasm .browser-hero h1{font-size:clamp(2rem,3.2vw,2.8rem);margin:10px 0 12px}
body.browser-wasm .browser-intro{font-size:1.05rem;max-width:920px;margin:10px 0 18px}
.wasm-launch{display:flex;flex-wrap:wrap;gap:18px;align-items:center}
.wasm-launch .browser-play{background:#f6c36e;box-shadow:4px 4px 0 #283b39;padding:15px 21px}
.wasm-launch span{font-size:.82rem;flex-basis:100%;color:#52675d}
.wasm-jump{font-weight:700;text-underline-offset:5px}
.wasm-collection>h2{font-size:1.65rem;margin:0 0 12px}
.wasm-collection>p{line-height:1.65;max-width:780px;font-size:.9rem}
.wasm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:24px}
.wasm-card{min-width:0;display:flex;flex-direction:column;padding:23px;background:#fffbee;border:2px solid #28494c;box-shadow:4px 4px 0 #c1cbb7}
.wasm-card:nth-child(3n+1){border-top:6px solid #c96f4a}
.wasm-card:nth-child(3n+2){border-top:6px solid #648877}
.wasm-card:nth-child(3n){border-top:6px solid #997345}
.wasm-card-top{display:flex;gap:12px;align-items:center;min-height:46px}
.wasm-symbol{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;background:#233c39;color:#ffe4a6;font-weight:800;font-family:monospace;font-size:1.15rem}
.wasm-card .eyebrow{font-size:.64rem;letter-spacing:.05em}
.wasm-card h3{font-size:1.45rem;line-height:1.25;margin:20px 0 12px}
.wasm-card p{font-size:.91rem;line-height:1.7;margin:0 0 14px}
.wasm-card .wasm-setup{font-size:.84rem;color:#4f6659;border-top:1px dashed #bdc8b6;padding-top:14px}
.wasm-open{display:block;margin-top:auto;padding-top:12px;font-weight:750;line-height:1.5;text-underline-offset:4px}
body.browser-wasm th:first-child{width:30%}
@media(max-width:900px){.wasm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.wasm-grid{grid-template-columns:1fr}.wasm-launch{gap:14px}.wasm-launch .browser-play{width:100%;text-align:center}.wasm-card{padding:20px}body.browser-wasm .browser-hero{padding-top:10px}.wasm-launch span{line-height:1.5}}

/* Player-first layout. Styles are local to this collection. */
body.browser-wasm .browser-shell{max-width:1400px}
body.browser-wasm .browser-hero{margin-bottom:0;padding-bottom:12px}
body.browser-wasm .browser-hero .eyebrow{display:none}
body.browser-wasm .browser-hero h1{margin:0 0 8px;font-size:clamp(1.7rem,3vw,2.4rem)}
body.browser-wasm .browser-intro{margin:0 0 8px;font-size:1rem}
.wasm-play-layout{display:grid;grid-template-columns:minmax(0,2.35fr) minmax(270px,1fr);gap:24px;margin:4px 0 56px;align-items:start}
.wasm-play-layout>*{min-width:0}
.wasm-player{border:3px solid #23232e;background:#14151b;color:#fffbee;box-shadow:6px 6px 0 #b49af0;overflow:hidden}
.wasm-player-bar{display:flex;justify-content:space-between;gap:12px;background:#b49af0;color:#171524;padding:12px 16px;font:bold 14px/1.4 monospace;text-transform:uppercase;letter-spacing:.03em}
.wasm-player-bar span:last-child{font-size:11px;align-self:center}
.wasm-frame{height:540px;background:#101116}
.wasm-frame iframe{display:block;width:100%;height:100%;border:0;background:#101116}
.wasm-placeholder{height:540px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px;background:radial-gradient(ellipse at center,#343044,#14151b)}
.wasm-placeholder>span{color:#b49af0;font-size:72px}.wasm-placeholder p{margin:8px 0}
.wasm-toolbar{display:flex;flex-wrap:wrap;gap:10px;padding:12px;background:#14151b;border-top:1px solid #44434d}
body.browser-wasm .wasm-toolbar button{padding:10px 14px;border:2px solid #fff3bd;border-radius:0;box-shadow:none;background:#ffe075;color:#171524;font-size:.85rem;font-weight:750;min-height:44px;cursor:pointer}
body.browser-wasm .wasm-toolbar button:nth-child(2){background:transparent;color:#fffbee;border-color:#666372}
body.browser-wasm .wasm-toolbar button:disabled{opacity:.4;cursor:default}
.wasm-toolbar button:last-child{margin-left:auto}
.wasm-status{font-size:.8rem;line-height:1.5;margin:16px 0 8px;color:#43594e;min-height:2.8em}
.wasm-original{font-size:.85rem;text-underline-offset:4px}
.wasm-sidebar{border:3px solid #23232e;background:#fffbee;box-shadow:6px 6px 0 #b49af0}
.wasm-sidebar h2{margin:0;padding:18px;font-size:1.35rem;border-bottom:3px solid #23232e}
.wasm-choices{display:grid;gap:0}
body.browser-wasm .wasm-choices button{display:flex;align-items:center;gap:14px;width:100%;text-align:left;border:0;border-bottom:1px solid #d5d0c0;border-radius:0;padding:18px 14px;background:transparent;box-shadow:none;color:#203d3f;font:inherit;cursor:pointer}
body.browser-wasm .wasm-choices button[aria-pressed=true]{background:#e6dcff;box-shadow:inset 5px 0 #7452af}
.wasm-choices strong{display:block;font-size:.95rem}.wasm-choices small{display:block;font:11px/1.5 monospace;margin-top:4px;letter-spacing:.03em}
.wasm-choices .wasm-symbol{background:#24232e;color:#dbc7ff;width:38px;height:38px;font-size:1rem}
.wasm-game-info{padding:18px;border-top:3px solid #23232e}
.wasm-game-info h3{margin:0 0 12px;font-size:.95rem}.wasm-game-info p{font-size:.82rem;line-height:1.65;margin:0 0 12px}.wasm-game-info .wasm-device{font-weight:700;margin:0}
.wasm-player:fullscreen{width:100%;height:100%;display:flex;flex-direction:column;box-shadow:none;border:0}
.wasm-player:fullscreen .wasm-frame,.wasm-player:fullscreen .wasm-placeholder{height:auto;flex:1;min-height:0}
.wasm-player:fullscreen .wasm-toolbar{flex-shrink:0}
.wasm-player [hidden]{display:none!important}
body.browser-wasm .wasm-play-layout button:focus-visible{outline:3px solid #d17a3c;outline-offset:3px}
@media(max-width:900px){.wasm-play-layout{grid-template-columns:minmax(0,1fr)}.wasm-frame,.wasm-placeholder{height:500px}.wasm-choices{grid-template-columns:repeat(3,minmax(0,1fr))}.wasm-choices .wasm-symbol{display:none}.wasm-choices button{border-right:1px solid #d5d0c0!important}}
@media(max-width:560px){.wasm-frame,.wasm-placeholder{height:380px}.wasm-play-layout{gap:22px}.wasm-player-bar{padding:10px;font-size:12px}.wasm-player-bar span:last-child{font-size:9px}.wasm-toolbar{gap:8px;padding:10px}body.browser-wasm .wasm-toolbar button{font-size:.75rem;padding:9px 10px}.wasm-sidebar h2{font-size:1.15rem;padding:14px}.wasm-choices strong{font-size:.8rem}.wasm-choices small{font-size:9px}body.browser-wasm .wasm-choices button{padding:14px 10px}.wasm-status{font-size:.78rem}}
/* Stable header rhythm and a fixed-width desktop game picker. */
body.browser-wasm .breadcrumbs{line-height:20px}
body.browser-wasm .browser-hero h1{line-height:44px}
body.browser-wasm .browser-intro{line-height:24px}
.wasm-player-bar{line-height:20px}
.wasm-player-bar span:last-child{line-height:20px}
@media(min-width:901px){.wasm-play-layout{grid-template-columns:minmax(0,1fr) 340px}}

/* Keep controls visible before a long download and protect active sessions. */
.wasm-start{margin:0;padding:10px 16px;font-size:.85rem;line-height:1.5;background:#252432;color:#fffbee;border-top:1px solid #44434d}
.wasm-confirm{padding:16px;background:#fff3bd;color:#171524;border-bottom:2px solid #23232e}
.wasm-confirm p{margin:0 0 12px;font-size:.9rem;line-height:1.5}
.wasm-confirm>div{display:flex;gap:10px;flex-wrap:wrap}
body.browser-wasm .wasm-confirm button{font:inherit;font-size:.85rem;padding:10px 14px;min-height:44px;border:2px solid #23232e;background:#fffbee;color:#171524;cursor:pointer;box-shadow:none}
body.browser-wasm .wasm-confirm button:first-child{background:#23232e;color:#fffbee}
.wasm-help{font-size:.85rem;border-top:1px solid #d5d0c0;padding-top:14px;margin-top:16px}
.wasm-help summary{cursor:pointer;font-weight:750;min-height:32px}
.wasm-help p{margin:12px 0 0}
.wasm-frame,.wasm-placeholder{height:clamp(360px,55vh,540px)}
.wasm-player:fullscreen .wasm-start{flex-shrink:0}
@media(max-width:560px){.wasm-frame,.wasm-placeholder{height:340px}.wasm-start{padding:10px;font-size:.78rem}.wasm-confirm{padding:12px}}
