:root{--void:#07051a;--night:#0e0a26;--panel:#150f36;--panel-2:#1c1547;--line:#32286a;--line-2:#4a3d8f;--text:#efe9ff;--muted:#9d93c9;--dim:#5f5690;--amber:#ffb547;--magenta:#ff3d8b;--cyan:#3ee6ff;--lime:#8dff9e;--violet:#b58cff;--pix:"VT323","Courier New",monospace;--pix2:"Press Start 2P",var(--pix);--mono:"IBM Plex Mono",ui-monospace,Consolas,monospace}*{box-sizing:border-box}html,body{background:var(--void);height:100%;margin:0}body{color:var(--text);font-family:var(--mono);font-size:13px;line-height:1.45;overflow:hidden}#app{flex-direction:column;height:100%;display:flex}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--amber);outline-offset:2px}a{color:var(--cyan)}code{font-family:var(--mono);color:var(--cyan);font-size:.95em}kbd{font-family:var(--pix);color:var(--amber);font-size:1.1em}.screen{flex-direction:column;flex:1;min-height:0;display:flex}@keyframes blink{50%{opacity:.35}}@keyframes pulse{50%{opacity:.4}}@keyframes tin{0%{opacity:0;transform:translate(30px)}}@keyframes fadein{0%{opacity:0}}@keyframes shake{0%{transform:translate(-3px,1px)}50%{transform:translate(3px,-2px)}to{transform:none}}@keyframes pon{0%{filter:brightness(6);transform:scaleY(.004)scaleX(1.15)}40%{filter:brightness(3);transform:scaleY(.02)scaleX(1.05)}to{filter:none;transform:none}}@keyframes flick{0%,92%{opacity:1}93%{opacity:.85}94%{opacity:1}97%{opacity:.9}98%{opacity:1}}@keyframes scan{to{background-position:0 100vh}}.reduce *{transition:none!important;animation:none!important}.btn{font-family:var(--pix);background:var(--amber);color:#07051a;white-space:nowrap;border:0;padding:10px 16px;font-size:18px;line-height:1;text-decoration:none;display:inline-block;box-shadow:inset -3px -3px #0000004d,inset 3px 3px #ffffff59}.btn:hover{filter:brightness(1.1)}.btn:disabled{color:#6d6590;box-shadow:none;cursor:not-allowed;filter:none;background:#241d45}.btn.ghost{color:var(--text);background:#2a2158;box-shadow:inset -3px -3px #0a0718,inset 3px 3px #4a3f88}.btn.cyan{color:var(--cyan);background:#0a2a36;box-shadow:inset -2px -2px #041016,inset 2px 2px #1a6f80,0 0 12px #3ee6ff26}.btn.cyan.on{background:var(--cyan);color:#07051a;box-shadow:inset -2px -2px #1a7f8f,inset 2px 2px #b8f7ff,0 0 18px #3ee6ff80}.btn.danger{color:var(--magenta);background:#3a1030;box-shadow:inset -2px -2px #160410,inset 2px 2px #7a2050}.btn.small{padding:7px 10px;font-size:15px}.ib{font-family:var(--pix);background:var(--panel-2);color:var(--muted);white-space:nowrap;border:0;padding:8px 10px;font-size:16px;line-height:1;box-shadow:inset -2px -2px #07051a,inset 2px 2px #3d3180}.ib:hover{color:var(--amber)}.ib.on{color:var(--cyan)}.chip{font-family:var(--pix);background:var(--panel-2);color:var(--muted);white-space:nowrap;border:0;padding:6px 10px;font-size:15px;line-height:1;box-shadow:inset -2px -2px #07051a,inset 2px 2px #3d3180}.chip:hover{color:var(--text)}.chip.hint{color:var(--amber)}.row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;display:flex}.bar{width:150px;height:10px;box-shadow:inset 0 0 0 1px var(--line);background:#07051a;position:relative;overflow:hidden}.bar i{background:var(--amber);width:0;transition:width .5s;position:absolute;top:1px;bottom:1px;left:1px;-webkit-mask:repeating-linear-gradient(90deg,#000 0 6px,#0000 6px 8px);mask:repeating-linear-gradient(90deg,#000 0 6px,#0000 6px 8px)}.bar.integ i{background:var(--cyan)}.bar.integ.mid i{background:var(--amber)}.bar.integ.low i{background:var(--magenta);animation:.6s steps(2,end) infinite blink}.toast{z-index:120;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:16px;right:16px}.toast div{font-family:var(--pix);background:var(--panel);color:var(--text);border-left:4px solid var(--lime);max-width:360px;padding:10px 14px;font-size:17px;line-height:1;animation:.25s steps(3,end) tin;box-shadow:0 0 0 2px #07051a,4px 4px 0 2px #07051a}.toast div.bad{border-left-color:var(--magenta)}.toast div.info{border-left-color:var(--cyan)}.toast div.xp{border-left-color:var(--amber)}.toast div small{font-family:var(--mono);color:var(--muted);margin-top:4px;font-size:11.5px;line-height:1.4;display:block}.pixframe{box-shadow:0 0 0 2px var(--line),0 0 0 4px #07051a}.tag{font-family:var(--pix);background:var(--panel-2);color:var(--muted);padding:4px 7px;font-size:15px;line-height:1}.tag.amber{color:var(--amber)}.tag.cyan{color:var(--cyan)}.tag.lime{color:var(--lime)}.tag.magenta{color:var(--magenta)}.hazard{background:repeating-linear-gradient(-45deg,var(--amber) 0 5px,transparent 5px 10px);opacity:.5;height:3px}.hud{border-bottom:2px solid var(--line);background:linear-gradient(#1a1240,#0e0a26);flex:none;align-items:center;gap:16px;height:56px;padding:0 16px;display:flex;position:relative}.hud:after{content:"";opacity:.5;background:repeating-linear-gradient(-45deg,var(--amber) 0 5px,transparent 5px 10px);height:3px;position:absolute;bottom:-5px;left:0;right:0}.logo{font-family:var(--pix2);color:var(--amber);letter-spacing:1px;white-space:nowrap;text-shadow:-1px 0 var(--cyan),1px 0 var(--magenta),0 0 14px #ffb5478c;background:0 0;border:0;padding:0;font-size:13px}.rk{font-family:var(--pix);color:var(--muted);white-space:nowrap;align-items:center;gap:8px;font-size:16px;display:flex}.rk b{font-family:var(--pix2);color:var(--night);background:var(--amber);clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%);padding:6px 8px;font-size:10px}.meter{font-family:var(--pix);color:var(--muted);white-space:nowrap;flex-direction:column;gap:2px;font-size:15px;line-height:1;display:flex}.meter span b{color:var(--text);font-weight:400}.streak{font-family:var(--pix);color:var(--muted);white-space:nowrap;font-size:16px}.streak b{color:var(--amber);font-weight:400}.timer{font-family:var(--pix2);color:var(--amber);text-shadow:0 0 10px #ffb54799;margin-left:auto;font-size:16px}.timer.low{color:var(--magenta);text-shadow:0 0 10px #ff3d8bb3;animation:1s steps(2,end) infinite blink}.mk{font-family:var(--pix);color:var(--muted);white-space:nowrap;align-items:center;gap:8px;font-size:16px;display:flex}.mk i{background:var(--lime);width:8px;height:8px;box-shadow:0 0 8px var(--lime);animation:1.4s steps(2,end) infinite pulse}.hud .sp{flex:1}.modal{z-index:100;isolation:isolate;background:#060414f0;justify-content:center;align-items:center;padding:16px;animation:.2s fadein;display:flex;position:fixed;inset:0}.card{background:var(--panel);width:100%;max-width:820px;max-height:92vh;box-shadow:0 0 0 2px var(--line),0 0 0 4px #07051a,8px 8px 0 4px #07051a;border-left:5px solid var(--amber);padding:26px 30px;position:relative;overflow-y:auto}.card.fail{border-left-color:var(--magenta)}.card.cyan{border-left-color:var(--cyan)}.card h1{font-family:var(--pix);letter-spacing:.5px;margin:0 0 8px;font-size:38px;font-weight:400;line-height:1}.card h2{font-family:var(--pix);color:var(--amber);margin:22px 0 10px;font-size:26px;font-weight:400;line-height:1}.card h3{font-family:var(--pix);color:var(--cyan);margin:22px 0 8px;font-size:21px;font-weight:400;line-height:1}.card p{max-width:70ch;margin:8px 0;font-size:14px;line-height:1.55}.card .sub{color:var(--muted);font-family:var(--pix);font-size:17px}.speaker{align-items:flex-start;gap:14px;margin:16px 0;display:flex}.portrait{width:56px;height:56px;box-shadow:0 0 0 2px var(--magenta),0 0 14px #ff3d8b59;background:#07051a;flex:none;position:relative;overflow:hidden}.portrait svg{width:100%;height:100%;display:block}.portrait:after{content:"";background:repeating-linear-gradient(0deg,#0000004d 0 1px,#0000 1px 3px);position:absolute;inset:0}.portrait.glitch{box-shadow:0 0 0 2px var(--lime),0 0 14px #8dff9e59}.who{font-family:var(--pix);color:var(--magenta);margin-bottom:4px;font-size:17px}.msg{white-space:pre-wrap;color:#d8d0f5;min-height:60px;font-size:13.5px;line-height:1.6}.msg b{color:var(--amber);font-weight:500}.objs-list{gap:6px;margin:8px 0;padding:0;list-style:none;display:grid}.objs-list li{align-items:center;gap:10px;font-size:14px;display:flex}.objs-list li:before{content:"";border:2px solid var(--magenta);flex:none;width:9px;height:9px;transform:rotate(45deg)}.grade{font-family:var(--pix2);color:var(--amber);float:right;text-shadow:4px 4px 0 var(--magenta);margin:0 0 10px 20px;font-size:72px;line-height:.9}.tally{font-family:var(--mono);grid-template-columns:1fr auto;gap:4px 20px;max-width:440px;font-size:13.5px;display:grid}.tally .sum{border-top:1px solid var(--line);color:var(--amber);padding-top:6px;font-weight:600}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:520px;font-size:13.5px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:8px 10px}th{color:var(--muted);font-weight:500;font-family:var(--pix);font-size:16px}.badges{flex-wrap:wrap;gap:8px;display:flex}.badge{border:1px solid var(--line);color:var(--muted);padding:6px 10px;font-size:13px}.badge.got{border-color:var(--amber);color:var(--text);background:#ffb54714}.codex-entry{border-left:3px solid var(--cyan);background:var(--night);margin:10px 0;padding:8px 12px}.codex-entry.locked{border-color:var(--line);color:var(--muted)}.codex-entry h4{font-family:var(--pix);color:var(--text);margin:0 0 4px;font-size:19px;font-weight:400}.codex-entry pre{font-family:var(--mono);white-space:pre-wrap;color:var(--lime);margin:6px 0 0;font-size:12px}.codex-entry .src{font-family:var(--pix);color:var(--dim);font-size:14px}.boot{z-index:110;font-family:var(--pix);color:var(--cyan);cursor:pointer;background:#020108;justify-content:center;align-items:center;font-size:20px;display:flex;position:fixed;inset:0}.boot pre{white-space:pre-wrap;margin:0;font-family:inherit;line-height:2}.boot pre .ok{color:var(--lime)}.boot pre .w{color:var(--amber)}.title{background:#050313 radial-gradient(at 50% 70%,#ff3d8b1f,#0000 60%);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:22px;display:flex;position:relative;overflow:hidden}.title canvas{width:100%;height:100%;image-rendering:pixelated;opacity:.85;position:absolute;inset:0}.title .inner{z-index:2;text-align:center;flex-direction:column;align-items:center;gap:20px;padding:20px;display:flex;position:relative}.title h1{font-family:var(--pix2);color:var(--amber);letter-spacing:2px;text-shadow:-2px 0 var(--cyan),2px 0 var(--magenta),0 0 30px #ffb54799;margin:0;font-size:clamp(22px,4vw,44px);line-height:1.3}.title .tag-line{font-family:var(--pix);color:var(--muted);max-width:60ch;font-size:22px}.title .menu{flex-direction:column;gap:10px;min-width:280px;display:flex}.title .menu .btn{text-align:left}.title .ver{font-family:var(--pix);color:var(--dim);z-index:2;font-size:14px;position:absolute;bottom:10px;right:14px}.title:after{content:"";z-index:3;pointer-events:none;background:repeating-linear-gradient(0deg,#00000038 0 1px,#0000 1px 3px);position:absolute;inset:0}.map{flex:1;grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr);min-height:0;display:grid}@media (max-width:900px){.map{grid-template-columns:1fr;overflow-y:auto}}.map .cityside{border-right:2px solid var(--line);background:#050313;justify-content:center;align-items:center;min-height:300px;padding:14px;display:flex;position:relative}.map .cityside .stage{background:#000;position:relative;overflow:hidden}.map .cityside canvas{width:100%;height:100%;image-rendering:pixelated;display:block}.map .zone{cursor:pointer;font-family:var(--pix);font-size:max(13px,calc(var(--sc) * 4.5px));color:var(--text);text-align:left;background:0 0;border:0;padding:0;line-height:1;position:absolute}.map .zone .zl{padding:calc(var(--sc) * 1px) calc(var(--sc) * 2px);white-space:nowrap;border-left:calc(var(--sc) * 1px) solid var(--c);background:#07051ad9;position:absolute;top:0;left:0}.map .zone .zl b{color:var(--c);margin-right:calc(var(--sc) * .5px);font-weight:400}.map .zone .zp{padding:calc(var(--sc) * 1px) calc(var(--sc) * 2px);color:var(--muted);font-size:max(12px,calc(var(--sc) * 4px));background:#07051ad9;position:absolute;bottom:0;right:0}.map .zone .zflag{font-size:max(11px,calc(var(--sc) * 3.6px));padding:calc(var(--sc) * 1px) calc(var(--sc) * 2px);background:var(--amber);color:#07051a;line-height:1;position:absolute;top:0;right:0}.map .zone .zflag.fin{background:var(--cyan)}.map .zone.locked .zflag{color:var(--muted);background:#3a3160}.map .zone.locked .zl{color:var(--dim);border-left-color:var(--dim)}.map .zone:hover .zl,.map .zone.sel .zl{color:var(--amber);border-left-color:var(--amber)}.map .zone.sel{outline:2px solid var(--amber);outline-offset:-2px}.map .zone.done .zl{color:var(--lime)}.map .side{background:var(--night);flex-direction:column;gap:12px;min-height:0;padding:16px 18px;display:flex;overflow-y:auto}.map .side h2{font-family:var(--pix);color:var(--amber);margin:0;font-size:30px;font-weight:400;line-height:1}.map .side .dname{font-family:var(--pix);color:var(--muted);font-size:19px}.map .side p{color:#d8d0f5;max-width:60ch;margin:0;font-size:13.5px;line-height:1.5}.mlist{gap:6px;margin-top:6px;display:grid}.mrow{background:var(--panel);text-align:left;color:var(--text);border:0;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:8px 10px;display:grid;box-shadow:inset -2px -2px #07051a,inset 2px 2px #2a2158}.mrow:hover{box-shadow:inset -2px -2px 0 #07051a,inset 2px 2px 0 var(--amber)}.mrow.locked{opacity:.55;cursor:not-allowed}.mrow.boss{box-shadow:inset -2px -2px 0 #07051a,inset 2px 2px 0 var(--magenta)}.mrow .num{font-family:var(--pix2);color:var(--night);background:var(--muted);text-align:center;padding:5px 4px;font-size:9px}.mrow.done .num{background:var(--lime)}.mrow.avail .num{background:var(--amber);animation:1.2s steps(2,end) infinite blink}.mrow.boss .num{background:var(--magenta);color:#fff}.mrow .t{font-family:var(--pix);font-size:18px;line-height:1.1}.mrow .s{color:var(--muted);margin-top:2px;font-size:11.5px;line-height:1.3}.mrow .g{font-family:var(--pix2);color:var(--amber);font-size:12px}.mrow .g.lock{font-family:var(--pix);color:var(--dim);font-size:15px}.mrow .tools{font-family:var(--pix);color:var(--cyan);margin-top:2px;font-size:13px}.lesson{background:var(--void);flex-direction:column;flex:1;min-height:0;display:flex}.lesson .top{align-items:center;gap:14px;width:100%;max-width:820px;margin:0 auto;padding:12px 18px;display:flex}.lesson .prog{height:10px;box-shadow:inset 0 0 0 1px var(--line);background:#07051a;flex:1}.lesson .prog i{background:var(--amber);width:0;height:100%;transition:width .4s;display:block}.lesson .phase{font-family:var(--pix);color:var(--muted);white-space:nowrap;font-size:18px}.lesson .phase b{color:var(--amber);font-weight:400}.lesson .skip{color:var(--muted);font-family:var(--pix);white-space:nowrap;background:0 0;border:0;font-size:16px;text-decoration:underline}.lesson .skip:hover{color:var(--text)}.lesson .body{flex:1;padding:6px 18px 28px;overflow-y:auto}.lesson .inner{max-width:760px;margin:0 auto;animation:.25s fadein}.lesson h2{font-family:var(--pix);margin:14px 0;font-size:34px;font-weight:400;line-height:1}.lesson .inner p{max-width:64ch;margin:10px 0;font-size:16px;line-height:1.6}.lesson .inner p b,.lesson .inner li b{color:var(--amber);font-weight:600}.lesson .inner ul{padding-left:22px;font-size:15px;line-height:1.6}.lesson .inner li{margin:4px 0}.lesson .city{border-left:4px solid var(--magenta);background:var(--night);color:#d8d0f5;margin:14px 0;padding:10px 14px;font-size:14px;line-height:1.55}.lesson .city:before{content:"EN LA CIUDAD";font-family:var(--pix);color:var(--magenta);margin-bottom:2px;font-size:15px;display:block}.lesson .code{font-family:var(--mono);box-shadow:inset 0 0 0 2px var(--line);white-space:pre;color:var(--text);background:#0a0722;margin:14px 0;padding:12px 14px;font-size:13.5px;line-height:21px;overflow-x:auto}.lesson .code .cap{font-family:var(--pix);color:var(--dim);white-space:normal;margin-bottom:6px;font-size:15px}.opts{gap:10px;margin-top:16px;display:grid}.opt{text-align:left;background:var(--panel);color:var(--text);border:0;padding:12px 14px;font-size:15px;line-height:1.45;box-shadow:inset -2px -2px #07051a,inset 2px 2px #2a2158,inset 0 -3px #07051a}.opt:hover{box-shadow:inset -2px -2px 0 #07051a,inset 2px 2px 0 var(--muted),inset 0 -3px 0 #07051a}.opt.sel{box-shadow:inset -2px -2px 0 #07051a,inset 2px 2px 0 var(--amber),inset 0 -3px 0 #07051a;background:#ffb54714}.opt.right{box-shadow:inset -2px -2px 0 #07051a,inset 2px 2px 0 var(--lime);background:#8dff9e1a}.opt.wrong{box-shadow:inset -2px -2px 0 #07051a,inset 2px 2px 0 var(--magenta);background:#ff3d8b1a}.lines{gap:3px;margin-top:14px;display:grid;overflow-x:auto}.lines .opt{font-family:var(--mono);white-space:pre;gap:12px;padding:5px 12px;font-size:13.5px;display:flex}.lines .opt .n{color:var(--dim);text-align:right;min-width:22px}.chips{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.chips .opt{font-family:var(--mono);padding:8px 12px;font-size:14px}.blank{border-bottom:2px solid var(--amber);min-width:96px;color:var(--amber);text-align:center;display:inline-block}.slots{counter-reset:slot;gap:8px;margin-top:14px;display:grid}.slot{border:1px dashed var(--line);min-height:46px;color:var(--muted);align-items:center;gap:10px;padding:0 12px;font-size:14px;display:flex}.slot:before{counter-increment:slot;content:counter(slot);color:var(--amber);font-family:var(--pix);font-size:18px}.slot .opt{flex:1;padding:8px 12px}.lesson .foot{border-top:2px solid var(--line);background:var(--night);padding:14px 18px}.lesson .foot-in{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:760px;margin:0 auto;display:flex}.lesson .foot.ok{border-top-color:var(--lime);background:#12301f}.lesson .foot.bad{border-top-color:var(--magenta);background:#35163a}.fb{flex:1;min-width:220px;font-size:14px;line-height:1.5}.fb b{font-family:var(--pix);margin-bottom:2px;font-size:22px;font-weight:400;display:block}.lesson .foot.ok .fb b{color:var(--lime)}.lesson .foot.bad .fb b{color:var(--magenta)}.bigstat{flex-wrap:wrap;gap:28px;margin:18px 0;display:flex}.bigstat div{font-family:var(--pix);color:var(--muted);font-size:17px}.bigstat b{font-family:var(--pix2);color:var(--text);margin-bottom:6px;font-size:26px;font-weight:400;line-height:1.2;display:block}.game{flex:1;grid-template-columns:minmax(0,3fr) minmax(0,2fr);min-height:0;margin-top:5px;display:grid}@media (max-width:1000px){.game{grid-template-columns:1fr;overflow-y:auto}}.world{border-right:2px solid var(--line);background:#0a0722;flex-direction:column;min-height:0;display:flex}.whead{border-bottom:2px solid var(--line);background:#0e0a26;flex:none;align-items:center;gap:12px;height:38px;padding:0 12px;display:flex}.whead h2{font-family:var(--pix);color:var(--text);letter-spacing:.5px;white-space:nowrap;margin:0;font-size:18px;font-weight:400}.whead h2 b{color:var(--amber);font-weight:400}.whead p{color:var(--dim);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;overflow:hidden}.whead .visor{margin-left:auto}.stagewrap{background:#050313 radial-gradient(circle at 50% 40%,#3ee6ff0d,#0000 60%);flex:1;justify-content:center;align-items:center;min-height:200px;padding:10px;display:flex}.stage{z-index:0;--sc:3;box-shadow:0 0 0 2px var(--line),0 0 0 4px #07051a,0 0 60px #3ee6ff1a;background:#000;position:relative;overflow:hidden}.stage canvas{width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges;display:block}.stage:before{content:"";z-index:3;pointer-events:none;background:radial-gradient(#0000 58%,#0000008c 100%);position:absolute;inset:0}.stage:after{content:"";z-index:4;pointer-events:none;background:repeating-linear-gradient(0deg,#0000003d 0 1px,#0000 1px 3px),repeating-linear-gradient(90deg,#ff005a09 0 1px,#00ffdc09 1px 2px,#0000 2px 3px);animation:4s step-end infinite flick;position:absolute;inset:0}.stage.nocrt:before,.stage.nocrt:after{display:none}.stage.boot{animation:.55s cubic-bezier(.2,.9,.3,1) pon}.stage.shake{animation:.25s steps(3,end) shake}.lbl{z-index:2;pointer-events:none;font-family:var(--pix);font-size:max(13px,calc(var(--sc) * 5px));white-space:nowrap;line-height:1.1;position:absolute;transform:translate(-50%,-50%)}.lbl.plate{left:calc(var(--sc) * 5px);top:calc(var(--sc) * 5px);color:var(--muted);padding:calc(var(--sc) * 1px) calc(var(--sc) * 2px);border-left:calc(var(--sc) * 1px) solid var(--amber);background:#07051abf;transform:none}.lbl.plate b{color:var(--amber);font-weight:400}.lbl.sign{color:var(--amber);letter-spacing:1px;text-shadow:0 0 calc(var(--sc) * 3px) #ffb547cc}.lbl.pub{color:var(--magenta);text-shadow:0 0 calc(var(--sc) * 3px) var(--magenta);animation:.5s steps(2,end) infinite blink}.lbl.vl{color:var(--cyan);padding:calc(var(--sc) * 1px) calc(var(--sc) * 2px);text-align:center;background:#04070fe6;border:1px solid #3ee6ff99;display:none}.lbl.vl b{color:var(--text);font-weight:400;display:block}.lbl.vl.bad{color:var(--magenta);border-color:#ff3d8bb3}.stage.visor .lbl.vl{display:block}.stage.visor .lbl.cl{display:none}.mode{right:calc(var(--sc) * 5px);top:calc(var(--sc) * 5px);z-index:2;font-family:var(--pix);font-size:max(13px,calc(var(--sc) * 5px));color:var(--dim);position:absolute}.stage.visor .mode{color:var(--cyan)}.objs{border-top:2px solid var(--line);font-family:var(--pix);background:#0e0a26;flex-wrap:wrap;flex:none;align-items:center;gap:16px;padding:6px 12px;font-size:16px;line-height:1;display:flex}.objs .t{color:var(--dim)}.ob{color:var(--muted);font:inherit;background:0 0;border:0;align-items:center;gap:7px;padding:0;display:flex}.ob b{width:10px;height:10px;box-shadow:inset 0 0 0 2px var(--line);flex:none}.ob.done{color:var(--lime)}.ob.done b{background:var(--lime);box-shadow:0 0 8px var(--lime)}.ob.now{color:var(--amber)}.ob.now b{box-shadow:inset 0 0 0 2px var(--amber);animation:.8s steps(2,end) infinite blink}.ob:hover{color:var(--text)}.comms{border-top:2px solid var(--line);background:#0e0a26;flex:none;grid-template-columns:56px 1fr;gap:12px;height:152px;padding:10px 12px;display:grid}.mkname{font-family:var(--pix);color:var(--magenta);align-items:center;gap:10px;font-size:16px;line-height:1;display:flex}.mkname span{color:var(--dim)}.mktext{color:#d8d0f5;white-space:pre-wrap;height:60px;margin:4px 0 6px;font-size:12.5px;line-height:1.5;overflow:hidden}.mktext b{color:var(--amber);font-weight:500}.feed{height:40px;color:var(--muted);flex-direction:column-reverse;gap:1px;font-size:11.5px;display:flex;overflow:hidden}.feed .bad{color:var(--magenta)}.feed .good{color:var(--lime)}.feed .warn{color:var(--amber)}.deck{background:#0d0926;flex-direction:column;min-height:0;display:flex}.tabs{border-bottom:2px solid var(--line);background:#0a0722;flex:none;align-items:stretch;height:38px;display:flex;overflow-x:auto}.tab{font-family:var(--pix);color:var(--dim);border-right:2px solid var(--line);white-space:nowrap;background:0 0;border-top:0;border-bottom:0;border-left:0;align-items:center;gap:8px;padding:0 14px;font-size:16px;display:flex}.tab.on{color:var(--amber);background:var(--panel);box-shadow:inset 0 -3px 0 var(--amber)}.tab i{background:currentColor;width:6px;height:6px}.tabs .sp{flex:1}.tabs .chip{margin:6px 6px 6px 0;padding:0 10px}.editor{background:#0a0722;flex-direction:column;flex:1.3;min-height:200px;display:flex;overflow:hidden}.editor>div{flex:1;min-height:0}.term{border-top:2px solid var(--line);background:#07051a;flex-direction:column;flex:1;min-height:180px;display:flex}.thead{font-family:var(--pix);color:var(--dim);border-bottom:1px solid var(--line);flex:none;justify-content:space-between;padding:6px 12px;font-size:14px;line-height:1;display:flex}.thead b{color:var(--cyan);font-weight:400}.out{white-space:pre-wrap;word-break:break-word;flex:1;padding:8px 12px;font-size:12.5px;overflow-y:auto}.out .p{color:var(--amber)}.out .ok{color:var(--lime)}.out .no{color:var(--magenta)}.out .dim{color:var(--dim)}.out .cy{color:var(--cyan)}.out .warn{color:var(--amber)}.quick{flex-wrap:wrap;flex:none;gap:6px;padding:0 12px 8px;display:flex}.quick button{font-family:var(--mono);background:var(--panel);color:var(--muted);border:0;padding:4px 8px;font-size:11.5px;box-shadow:inset -2px -2px #07051a,inset 2px 2px #3d3180}.quick button:hover{color:var(--amber)}.prompt{border-top:1px solid var(--line);flex:none;align-items:center;gap:8px;padding:8px 12px;display:flex}.prompt label{color:var(--amber);white-space:nowrap}.prompt input{color:var(--text);font:inherit;caret-color:var(--amber);background:0 0;border:0;outline:none;flex:1}.page{flex:1;padding:20px 24px;overflow-y:auto}.page .inner{max-width:860px;margin:0 auto}.page h1{font-family:var(--pix);margin:0 0 6px;font-size:38px;font-weight:400;line-height:1}.page .sub{color:var(--muted);font-family:var(--pix);margin-bottom:16px;font-size:18px}.opt-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:12px 0;display:flex}.opt-row .l{font-family:var(--pix);font-size:20px}.opt-row .d{color:var(--muted);margin-top:2px;font-size:12.5px}.review{max-width:720px;margin:0 auto}.review .q{margin:12px 0;font-size:17px;line-height:1.5}.review .a{background:var(--night);border-left:3px solid var(--cyan);white-space:pre-wrap;padding:12px 14px;font-size:14px;line-height:1.5}.deck .editor{position:relative}.manual{z-index:6;border-left:3px solid var(--amber);background:#0b0824;padding:12px 14px;position:absolute;inset:0;overflow-y:auto}.manual .mhead{font-family:var(--pix);color:var(--amber);justify-content:space-between;align-items:center;font-size:20px;display:flex}.manual .mhead b{font-weight:400}.manual .mnote{color:var(--muted);margin:4px 0 8px;font-size:12px}.manual h4{font-family:var(--pix);color:var(--cyan);margin:14px 0 6px;font-size:17px;font-weight:400}.mcmd{text-align:left;background:var(--panel);width:100%;color:var(--text);box-shadow:inset 3px 0 var(--line);border:0;flex-direction:column;gap:2px;margin:0 0 5px;padding:7px 10px;display:flex}.mcmd:hover{box-shadow:inset 3px 0 var(--amber)}.mcmd code{color:var(--amber);font-size:12.5px}.mcmd span{color:var(--muted);font-size:11.5px}.mstep{margin:0 0 10px}.mstep .mt{font-family:var(--pix);color:var(--text);margin-bottom:3px;font-size:16px}.mstep .mbody{color:#d8d0f5;margin-bottom:4px;font-size:12px}.mcode{box-shadow:inset 0 0 0 1px var(--line);font-family:var(--mono);background:#07051a;padding:6px 0;font-size:12px;line-height:18px;overflow-x:auto}.mline{text-align:left;white-space:pre;width:100%;color:var(--text);font-family:var(--mono);background:0 0;border:0;padding:0 10px;font-size:12px;line-height:18px;display:block}button.mline{cursor:pointer}button.mline:hover{background:#ffb5471f}button.mline:after{content:"  ↵";color:var(--dim)}.mode-note{color:var(--muted);font-size:13px}.mode-note b{color:var(--lime);font-weight:500}.csearch{background:var(--night);width:100%;box-shadow:inset 0 0 0 2px var(--line);color:var(--text);font-family:var(--mono);border:0;margin:10px 0 4px;padding:10px 12px;font-size:14px}.csearch:focus{box-shadow:inset 0 0 0 2px var(--amber);outline:none}.game{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr)}.deck{order:1}.world{border-right:0;border-left:2px solid var(--line);order:2}.stagewrap{flex:none;height:46%;min-height:180px}.comms{flex:auto;align-items:stretch;height:auto;min-height:150px}.comms .portrait{align-self:start}.comms>div:last-child{flex-direction:column;min-height:0;display:flex}.mktext{flex:0 auto;height:auto;min-height:60px;font-size:13px;overflow-y:auto}.feed{flex:auto;height:auto;min-height:40px}@media (max-width:1000px){.stagewrap{height:auto;min-height:260px}}
