:root{--z:3;--u:calc(var(--z) * 1px);--night:#0f1424;--night-2:#1b2440;--ink:#1c1830;--amber:#fed018;--amber-2:#d35600;--amber-dim:#5e1210;--cream:#fff4c9;--paper:#fffbe8;--red:#e8344e;--green:#4ba86d;--blue:#8fd3ff;--font-ui:"Pixelify Sans", system-ui, sans-serif;--font-title:"Press Start 2P", monospace;--font-crt:"VT323", ui-monospace, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;font-family:var(--font-ui);color:var(--cream);-webkit-font-smoothing:none;font-variant-ligatures:none;font-feature-settings:"liga" 0, "clig" 0;background:#07080f;margin:0;overflow:hidden}#stage{width:calc(480 * var(--u));height:calc(270 * var(--u));position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #000,0 30px 120px #000000b3}#game,#game canvas{image-rendering:pixelated;position:absolute;inset:0}#ui{pointer-events:none;font-size:calc(7 * var(--u));line-height:1.25;position:absolute;inset:0}#ui>*{pointer-events:auto}.hidden{display:none!important}.pixel-frame{border:calc(var(--u) * 1) solid #000;box-shadow:inset 0 0 0 var(--u) #3e3a5c, inset 0 0 0 calc(var(--u) * 2) #2e2a48, 0 calc(var(--u) * 2) 0 #00000073;background:var(--night);image-rendering:pixelated}.hud-objective{left:calc(6 * var(--u));top:calc(5 * var(--u));padding:calc(3 * var(--u)) calc(6 * var(--u));font-size:calc(6.5 * var(--u));pointer-events:none;gap:calc(4 * var(--u));align-items:center;display:flex;position:absolute}.hud-objective b{color:var(--amber);letter-spacing:.04em;font-weight:600}.hud-objective .dot{width:calc(3 * var(--u));height:calc(3 * var(--u));background:var(--amber);animation:1.2s steps(2,end) infinite blink}.hud-clock{right:calc(6 * var(--u));top:calc(5 * var(--u));padding:calc(3 * var(--u)) calc(6 * var(--u));font-family:var(--font-crt);font-size:calc(9 * var(--u));color:var(--amber);pointer-events:none;text-shadow:0 0 calc(3 * var(--u)) #fed01880;position:absolute}.hud-prompt{left:50%;bottom:calc(8 * var(--u));padding:calc(2 * var(--u)) calc(6 * var(--u));font-size:calc(6.5 * var(--u));pointer-events:none;white-space:nowrap;position:absolute;transform:translate(-50%)}.key{min-width:calc(9 * var(--u));padding:0 calc(2 * var(--u));margin-right:calc(3 * var(--u));background:var(--cream);color:var(--ink);text-align:center;box-shadow:0 var(--u) 0 #8e8268;font-weight:600;display:inline-block}.hud-mute{right:calc(6 * var(--u));bottom:calc(6 * var(--u));font-family:var(--font-ui);font-size:calc(6 * var(--u));color:var(--cream);background:var(--night);border:var(--u) solid #000;padding:var(--u) calc(4 * var(--u));cursor:pointer;opacity:.6;position:absolute}.hud-mute:hover{opacity:1}.dialog{left:calc(20 * var(--u));right:calc(20 * var(--u));bottom:calc(10 * var(--u));min-height:calc(56 * var(--u));gap:calc(8 * var(--u));padding:calc(8 * var(--u));cursor:pointer;animation:.18s steps(3,end) both rise;display:flex;position:absolute}.dialog .portrait,.badge .portrait{width:calc(40 * var(--u));height:calc(40 * var(--u));image-rendering:pixelated;box-shadow:inset 0 0 0 var(--u) #000, inset 0 0 0 calc(2 * var(--u)) #3e3a5c;background-color:#2b3a63;background-image:url(/assets/portraits.png);background-repeat:no-repeat;flex:none}.dialog .portrait.none{display:none}.dialog .body{flex:1;min-width:0}.dialog .name{font-family:var(--font-title);font-size:calc(5 * var(--u));color:var(--amber);margin-bottom:calc(4 * var(--u));letter-spacing:.06em}.dialog .text{font-size:calc(8 * var(--u));color:var(--cream);line-height:1.35}.dialog.narrator .text{color:#c9d3ea;font-style:italic}.dialog.system .text{font-family:var(--font-crt);font-size:calc(10 * var(--u));color:var(--red);text-shadow:0 0 calc(4 * var(--u)) #e8344e99}.dialog .more{right:calc(8 * var(--u));bottom:calc(5 * var(--u));border-left:calc(3 * var(--u)) solid transparent;border-right:calc(3 * var(--u)) solid transparent;border-top:calc(4 * var(--u)) solid var(--amber);width:0;height:0;animation:.8s steps(2,end) infinite bob;position:absolute}.term{inset:calc(8 * var(--u));gap:calc(6 * var(--u));padding:calc(8 * var(--u));color:var(--amber);font-family:var(--font-crt);font-size:calc(9 * var(--u));text-shadow:0 0 calc(2.5 * var(--u)) #fea0188c;border:calc(2 * var(--u)) solid #000;box-shadow:inset 0 0 0 calc(3 * var(--u)) #ece2cd, inset 0 0 0 calc(5 * var(--u)) #b4a78c, inset 0 0 0 calc(6 * var(--u)) #000, inset 0 0 calc(40 * var(--u)) #000000e6, 0 0 0 9999px #05040ab8;background:radial-gradient(at 50% 40%,#501a088c,#0000 70%),#120806;grid-template-columns:minmax(0,38%) minmax(0,1fr);line-height:1.05;animation:.35s ease-out both crt-on;display:grid;position:absolute;overflow:hidden}.term:after{content:"";pointer-events:none;background:repeating-linear-gradient(to bottom, #00000047 0 1px, transparent 1px calc(var(--u)));mix-blend-mode:multiply;position:absolute;inset:0}.term:before{content:"";pointer-events:none;z-index:2;background:radial-gradient(#0000 55%,#0000008c 100%);position:absolute;inset:0}.term .col{z-index:1;gap:calc(4 * var(--u));flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.term .scroll{min-height:0;padding-right:calc(3 * var(--u));overflow-y:auto}.term .scroll::-webkit-scrollbar{width:calc(3 * var(--u))}.term .scroll::-webkit-scrollbar-thumb{background:var(--amber-dim)}.term .head{color:var(--cream);border-bottom:var(--u) dashed var(--amber-dim);padding-bottom:calc(2 * var(--u));justify-content:space-between;align-items:baseline;display:flex}.term .head .t-title{font-size:calc(12 * var(--u))}.term .tag{font-size:calc(7 * var(--u));background:var(--amber);color:#120806;padding:0 calc(3 * var(--u));text-shadow:none}.term h3{margin:calc(4 * var(--u)) 0 calc(1 * var(--u));font-weight:400;font-size:calc(9 * var(--u));color:var(--cream)}.term p{margin:0 0 calc(3 * var(--u));color:#f4b860}.term pre.example{padding:calc(3 * var(--u)) calc(4 * var(--u));border-left:var(--u) solid var(--amber-2);font-family:var(--font-crt);font-size:calc(8.5 * var(--u));white-space:pre-wrap;color:var(--cream);background:#5e121059;margin:0}.term .task{padding:calc(4 * var(--u));border:var(--u) solid var(--amber);color:var(--cream)}.term .task:before{content:"TAREA  ";color:var(--amber)}.term .borrowed{color:#c9905a;font-size:calc(8 * var(--u))}.term .borrowed code{color:var(--cream);font-family:var(--font-crt)}.term pre.borrowed-val{margin:calc(1 * var(--u)) 0 0;padding:calc(2 * var(--u)) calc(3 * var(--u));font-family:var(--font-crt);font-size:calc(8.5 * var(--u));color:var(--cream);white-space:pre-wrap;border-left:var(--u) solid #c9905a;background:#00000059;line-height:1.1}.term .hint{color:var(--blue);text-shadow:0 0 calc(2 * var(--u)) #8fd3ff66;white-space:pre-wrap}.term .editor-wrap{border:var(--u) solid var(--amber-dim);background:#00000059;flex:1;min-height:0;position:relative}.term .editor-wrap.shake{animation:.3s steps(6,end) shake}.term .cm-editor{height:100%;font-size:calc(9.5 * var(--u))}.term .cm-editor.cm-focused{outline:none}.term .cm-scroller{line-height:1.12;font-family:var(--font-crt)!important}.term .cm-content{caret-color:var(--amber);padding:calc(3 * var(--u)) 0}.term .cm-cursor{border-left:calc(2 * var(--u)) solid var(--amber)!important}.term .cm-gutters{border-right:var(--u) solid var(--amber-dim);color:#7a3a14;background:0 0}.term .cm-activeLine{background:#fed0180f}.term .cm-activeLineGutter{color:var(--amber);background:0 0}.term .cm-selectionBackground{background:#d3560073!important}.term .cm-editor ::selection{background:#d3560073!important}.term .cm-tooltip{border:var(--u) solid var(--amber);color:var(--amber);font-family:var(--font-crt);background:#1a0b06}.term .cm-tooltip-autocomplete ul li{padding:0 calc(4 * var(--u))!important}.term .cm-tooltip-autocomplete ul li[aria-selected]{background:var(--amber);color:#120806}.term .cm-completionIcon{display:none}.term .cm-errorLine{background:#e8344e2e}.term .actions{gap:calc(4 * var(--u));align-items:center;display:flex}.term .page-wrap{border:var(--u) solid var(--amber-dim);flex-direction:column;flex:1.1;min-height:0;display:flex}.term .page-head{padding:calc(1 * var(--u)) calc(3 * var(--u));color:#000;text-shadow:none;font-size:calc(7.5 * var(--u));background:silver;justify-content:space-between;display:flex}.term .page-state{color:navy}.term iframe.page{background:#fff;border:0;flex:1;width:100%;min-height:0}.term .editor-wrap:has(+.page-wrap){flex:.9}.term table.sqlres{border-collapse:collapse;margin:calc(2 * var(--u)) 0;color:var(--cream)}.term table.sqlres th,.term table.sqlres td{border:var(--u) solid var(--amber-dim);padding:0 calc(3 * var(--u));text-align:left;font-weight:400}.term table.sqlres th{color:#120806;background:var(--amber);text-shadow:none}.term table.sqlres i{color:#c9905a}.btn{font-family:var(--font-crt);font-size:calc(9 * var(--u));padding:calc(3 * var(--u)) calc(6 * var(--u));border:var(--u) solid var(--amber);color:var(--amber);cursor:pointer;text-shadow:inherit;background:0 0;line-height:1}.btn:hover,.btn:focus-visible{background:var(--amber);color:#120806;text-shadow:none;outline:none}.btn.primary{background:var(--amber);color:#120806;text-shadow:none}.btn.primary:hover{background:var(--cream)}.btn:disabled{opacity:.4;cursor:default}.term .shortcut{font-size:calc(7 * var(--u));color:#a25a20;margin-left:auto}.term .console{height:30%;min-height:calc(40 * var(--u));border:var(--u) solid var(--amber-dim);padding:calc(3 * var(--u)) calc(4 * var(--u));white-space:pre-wrap;font-size:calc(8.5 * var(--u));background:#00000073;overflow-y:auto}.term .console .muted{color:#8a4a1a}.term .console .log:before{content:"> ";color:var(--amber-2)}.term .console .err{color:#ff8a8a;text-shadow:0 0 calc(2 * var(--u)) #e8344e99}.term .console .ok{color:#9be3a8;text-shadow:0 0 calc(2 * var(--u)) #4ba86d99}.term .console .case{color:var(--cream)}.stamp{z-index:5;right:calc(30 * var(--u));top:calc(40 * var(--u));padding:calc(4 * var(--u)) calc(10 * var(--u));border:calc(2 * var(--u)) solid #9be3a8;color:#9be3a8;font-family:var(--font-title);font-size:calc(12 * var(--u));text-shadow:0 0 calc(5 * var(--u)) #4ba86dcc;pointer-events:none;animation:.35s cubic-bezier(.2,2.2,.4,1) both stamp;position:absolute;transform:rotate(-8deg)}.title{justify-content:center;align-items:center;gap:calc(6 * var(--u));background:linear-gradient(#07080f26,#07080f8c 60%,#07080fd9);flex-direction:column;display:flex;position:absolute;inset:0}.title .kicker{font-family:var(--font-crt);font-size:calc(10 * var(--u));color:var(--amber);letter-spacing:.3em;text-shadow:0 0 calc(4 * var(--u)) #fed01899}.title h1{font-family:var(--font-title);font-weight:400;font-size:calc(26 * var(--u));color:var(--cream);letter-spacing:.04em;text-shadow:0 calc(2 * var(--u)) 0 var(--amber-2), 0 calc(4 * var(--u)) 0 var(--amber-dim), 0 0 calc(18 * var(--u)) #fea01859;margin:0}.title .sub{font-size:calc(8 * var(--u));color:#c9d3ea;margin-bottom:calc(10 * var(--u))}.title .menu{gap:calc(4 * var(--u));flex-direction:column;align-items:stretch;display:flex}.title .menu .btn{font-size:calc(10 * var(--u));background:#0f1424d9}.title .menu .btn:hover,.title .menu .btn:focus-visible{background:var(--amber)}.title .foot{bottom:calc(6 * var(--u));font-size:calc(6.5 * var(--u));color:#a9b2cf;position:absolute}.fade{pointer-events:none;z-index:50;display:grid;position:absolute;inset:0}.fade i{opacity:0;transition:opacity 0s linear var(--d);background:#000}#ui>.fade{pointer-events:none}#ui>.fade.on{pointer-events:auto}#ui>.card{pointer-events:none}.fade.on i{opacity:1}.card{z-index:51;justify-content:center;align-items:center;gap:calc(5 * var(--u));text-align:center;font-family:var(--font-crt);color:var(--amber);font-size:calc(14 * var(--u));text-shadow:0 0 calc(4 * var(--u)) #fed01899;pointer-events:none;flex-direction:column;animation:.4s steps(4,end) both rise;display:flex;position:absolute;inset:0}.card small{font-family:var(--font-ui);font-size:calc(7 * var(--u));color:#c9d3ea;text-shadow:none}.endcard{width:calc(250 * var(--u));padding:calc(10 * var(--u));gap:calc(5 * var(--u));max-height:calc(250 * var(--u));flex-direction:column;animation:.3s steps(3,end) both fadein;display:flex;position:absolute;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.endcard .cheat{gap:var(--u);padding:calc(4 * var(--u));border-left:var(--u) solid var(--amber-2);background:#0000004d;flex-direction:column;display:flex}.endcard .cheat small{font-family:var(--font-title);font-size:calc(4.5 * var(--u));color:var(--amber-2);letter-spacing:.1em}.endcard .cheat div{gap:calc(4 * var(--u));align-items:baseline;display:flex}.endcard .cheat span{width:calc(62 * var(--u));font-size:calc(7 * var(--u));color:#c9d3ea;flex:none}.endcard .cheat code{font-family:var(--font-crt);font-size:calc(8 * var(--u));color:var(--amber);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.endcard .with-marga{color:#c7a8e6;font-size:calc(6.5 * var(--u))}.endcard h2{font-family:var(--font-title);font-weight:400;font-size:calc(9 * var(--u));color:var(--amber);margin:0}.endcard p{font-size:calc(7.5 * var(--u));color:#c9d3ea;margin:0}.endcard ul{gap:calc(3 * var(--u));flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.endcard li{font-family:var(--font-crt);font-size:calc(9 * var(--u));background:var(--amber);color:#120806;padding:0 calc(4 * var(--u))}.endcard .row{gap:calc(4 * var(--u));margin-top:calc(4 * var(--u));display:flex}.board{width:calc(300 * var(--u));padding:calc(10 * var(--u));border:calc(3 * var(--u)) solid #6e4c2c;box-shadow:inset 0 0 0 var(--u) #8f673f, 0 calc(4 * var(--u)) 0 #00000080, 0 0 0 9999px #05040a99;gap:calc(8 * var(--u));color:var(--ink);background:#c99560;grid-template-columns:repeat(3,1fr);animation:.2s steps(3,end) both fadein;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.board h2{font-family:var(--font-title);font-weight:400;font-size:calc(7 * var(--u));color:#3a240f;grid-column:1/-1;margin:0}.board .note{background:var(--paper);padding:calc(6 * var(--u)) calc(5 * var(--u)) calc(5 * var(--u));font-size:calc(7 * var(--u));box-shadow:calc(2 * var(--u)) calc(2 * var(--u)) 0 #00000040;position:relative}.board .note:nth-child(odd){transform:rotate(-1.5deg)}.board .note:nth-child(2n){transform:rotate(1.2deg)}.board .note:before{content:"";top:calc(-2 * var(--u));width:calc(4 * var(--u));height:calc(4 * var(--u));background:var(--red);box-shadow:inset calc(-1 * var(--u)) calc(-1 * var(--u)) 0 #a31d33;position:absolute;left:50%}.board .note b{font-family:var(--font-crt);font-size:calc(9 * var(--u));color:#a31d33;font-weight:400;display:block}.board .note.empty{box-shadow:none;border:var(--u) dashed #8f673f;color:#6e4c2c;background:0 0}.board .note.empty:before{display:none}.board .close{color:#3a240f;text-shadow:none;border-color:#3a240f;grid-column:1/-1;justify-self:end}.board .close:hover{color:var(--paper);background:#3a240f}@keyframes blink{50%{opacity:0}}@keyframes bob{50%{transform:translateY(calc(2 * var(--u)))}}@keyframes rise{0%{transform:translateY(calc(6 * var(--u)));opacity:0}}@keyframes fadein{0%{opacity:0}}@keyframes crt-on{0%{filter:brightness(4);transform:scaleY(.01)}60%{filter:brightness(1.6);transform:scale(1)}to{filter:brightness();transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translateX(calc(-3 * var(--u)))}40%{transform:translateX(calc(3 * var(--u)))}60%{transform:translateX(calc(-2 * var(--u)))}80%{transform:translateX(calc(2 * var(--u)))}}@keyframes stamp{0%{opacity:0;transform:rotate(-8deg)scale(2.2)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.hud-controls{left:50%;top:calc(30 * var(--u));padding:calc(4 * var(--u)) calc(8 * var(--u));font-size:calc(7 * var(--u));pointer-events:none;white-space:nowrap;transition:opacity .6s steps(6,end);animation:.4s steps(4,end) both fadein;position:absolute;transform:translate(-50%)}.hud-controls .key{margin-left:calc(2 * var(--u))}.hud-controls.out{opacity:0}.endcard table.stats{border-collapse:collapse;font-family:var(--font-crt);font-size:calc(8.5 * var(--u));color:#c9d3ea}.endcard table.stats td{padding:0 calc(5 * var(--u)) 0 0}.endcard table.stats td:last-child{color:var(--amber-2)}.endcard table.stats td.gold{color:var(--amber);text-shadow:0 0 calc(3 * var(--u)) #fed01899}.pause{background:#05040a9e;place-items:center;animation:.15s steps(2,end) both fadein;display:grid;position:absolute;inset:0}.p-panel{width:calc(230 * var(--u));padding:calc(10 * var(--u)) calc(12 * var(--u))}.p-panel h2{margin:0 0 calc(6 * var(--u));font-family:var(--font-title);font-weight:400;font-size:calc(10 * var(--u));color:var(--amber);text-shadow:0 calc(1 * var(--u)) 0 var(--amber-dim)}.p-progress{font-size:calc(7 * var(--u));color:#c9d3ea;margin-bottom:calc(6 * var(--u))}.p-progress b{color:var(--cream);font-weight:600}.p-sep{margin:calc(5 * var(--u)) 0 calc(1 * var(--u));font-family:var(--font-title);font-size:calc(4.5 * var(--u));color:#6f7896;letter-spacing:.1em}.p-row{justify-content:space-between;align-items:center;gap:calc(6 * var(--u));padding:calc(1.5 * var(--u)) calc(4 * var(--u));font-family:var(--font-crt);font-size:calc(9.5 * var(--u));color:var(--cream);cursor:pointer;outline:none;display:flex}.p-row.sel{background:var(--amber);color:#120806}.p-row.sel:before{content:">";margin-left:calc(-9 * var(--u));color:var(--amber);position:absolute}.p-row .hint{font-size:calc(7.5 * var(--u));opacity:.6}.p-row.danger{margin-top:calc(6 * var(--u))}.vol{gap:var(--u);display:inline-flex}.vol i{width:calc(4 * var(--u));height:calc(6 * var(--u));box-shadow:inset 0 0 0 calc(.5 * var(--u)) #000;background:#2e2a48}.vol i.on{background:var(--amber)}.p-row.sel .vol i{background:#12080640}.p-row.sel .vol i.on{background:#120806}.p-help{padding:calc(3 * var(--u)) calc(4 * var(--u));font-size:calc(6.5 * var(--u));color:#c9d3ea;gap:calc(2 * var(--u));display:grid}.hud-book{right:calc(56 * var(--u))}.notebook{background:#05040ab3;place-items:center;animation:.2s steps(3,end) both fadein;display:grid;position:absolute;inset:0}.nb-book{width:calc(462 * var(--u));height:calc(256 * var(--u));padding:calc(5 * var(--u));gap:calc(2 * var(--u));border:var(--u) solid #000;box-shadow:inset 0 0 0 var(--u) #8f673f, 0 calc(4 * var(--u)) 0 #00000080;background:#6e4c2c;grid-template-columns:44% 1fr;display:grid}.nb-page{padding:calc(7 * var(--u)) calc(8 * var(--u)) calc(7 * var(--u)) calc(14 * var(--u));background-color:#fffbe8;background-image:linear-gradient(to right, transparent calc(9 * var(--u)), #f0a39a calc(9 * var(--u)), #f0a39a calc(10 * var(--u)), transparent calc(10 * var(--u))), repeating-linear-gradient(to bottom, transparent 0 calc(9 * var(--u)), #c9dcef calc(9 * var(--u)) calc(10 * var(--u)));color:#1c1830;font-size:calc(8 * var(--u));position:relative;overflow-y:auto}.nb-page::-webkit-scrollbar{width:calc(3 * var(--u))}.nb-page::-webkit-scrollbar-thumb{background:#b4a78c}.nb-left{box-shadow:inset calc(-4 * var(--u)) 0 calc(4 * var(--u)) calc(-2 * var(--u)) #0003}.nb-page h2{font-family:var(--font-title);font-weight:400;font-size:calc(7 * var(--u));color:#a31d33;margin:0}.nb-sub{margin:calc(2 * var(--u)) 0 calc(5 * var(--u));color:#3e4460;font-size:calc(7.5 * var(--u))}.nb-sub b{color:#a31d33;font-weight:600}.nb-act{margin-bottom:calc(5 * var(--u))}.nb-act-title{font-family:var(--font-crt);font-size:calc(9 * var(--u));color:#1c1830}.nb-act.future{opacity:.7}.nb-future{font-size:calc(7.5 * var(--u));color:#3e4460;padding-left:calc(10 * var(--u))}.nb-line{margin:calc(2 * var(--u)) 0 0;padding:0 0 0 calc(4 * var(--u));list-style:none;position:relative}.nb-line:before{content:"";left:calc(6.5 * var(--u));top:calc(4 * var(--u));bottom:calc(4 * var(--u));width:var(--u);background:repeating-linear-gradient(to bottom, #8e8268 0 calc(2 * var(--u)), transparent calc(2 * var(--u)) calc(3 * var(--u)));position:absolute}.nb-stop{align-items:center;gap:calc(4 * var(--u));padding:var(--u) calc(2 * var(--u));cursor:pointer;display:flex;position:relative}.nb-node{width:calc(6 * var(--u));height:calc(6 * var(--u));border:var(--u) solid #1c1830;z-index:1;background:#fffbe8;flex:none}.nb-stop.done .nb-node{box-shadow:inset calc(-1 * var(--u)) calc(-1 * var(--u)) 0 #d35600;background:#fed018}.nb-stop.next .nb-node{box-shadow:0 0 0 var(--u) #fffbe8, 0 0 0 calc(2 * var(--u)) #a31d33;background:#fffbe8;border-color:#a31d33}.nb-now{font-family:var(--font-title);font-size:calc(4.5 * var(--u));color:#fffbe8;padding:calc(1 * var(--u)) calc(2 * var(--u));background:#a31d33;margin-left:auto}.nb-stop.locked{color:#8e8268;cursor:default}.nb-stop.locked .nb-node{border-color:#8e8268}.nb-stop.sel{background:#fed01859}.nb-stop.done:hover{background:#fed01833}.nb-name{font-size:calc(8.5 * var(--u))}.nb-side{margin-top:var(--u)}.nb-stop.side .nb-node{box-shadow:inset calc(-1 * var(--u)) calc(-1 * var(--u)) 0 #6a4a8a;background:#a57cc4}.nb-stop.side .nb-name{font-size:calc(7.5 * var(--u));color:#4a2a6a}.nb-ex{align-items:center;gap:calc(4 * var(--u));padding:calc(3 * var(--u)) 0;border-top:var(--u) dashed #b4a78c;display:flex}.nb-ex>div{flex:1;line-height:1.3}.nb-ex b{color:#1c1830;font-weight:600}.nb-ex-c{font-family:var(--font-crt);font-size:calc(8.5 * var(--u));color:#5a3a7a}.nb-ex-t{font-size:calc(7.5 * var(--u));color:#3e4460}.nb-ex-go{flex:none}.nb-due{width:calc(3 * var(--u));height:calc(3 * var(--u));background:#a31d33;margin-left:auto}.nb-tag{font-family:var(--font-crt);font-size:calc(9 * var(--u));color:#3e4460}.nb-right h3{margin:calc(2 * var(--u)) 0;font-family:var(--font-crt);font-weight:400;font-size:calc(12 * var(--u));color:#1c1830}.nb-right p{margin:0 0 calc(4 * var(--u));line-height:1.35}.nb-code{margin:0 0 calc(4 * var(--u));padding:calc(3 * var(--u)) calc(5 * var(--u));color:#fed018;font-family:var(--font-crt);font-size:calc(9.5 * var(--u));white-space:pre-wrap;border-left:calc(2 * var(--u)) solid #d35600;background:#1a0b06;line-height:1.1}.nb-code.small{font-size:calc(9 * var(--u))}.nb-quiz{margin-top:calc(4 * var(--u));padding:calc(4 * var(--u));border:var(--u) dashed #8e8268}.nb-q{font-family:var(--font-title);font-size:calc(5.5 * var(--u));color:#a31d33;margin-bottom:calc(3 * var(--u));letter-spacing:.06em}.nb-opts{gap:calc(3 * var(--u));flex-wrap:wrap;display:flex}.nb-opt{font-family:var(--font-crt);font-size:calc(9 * var(--u));padding:var(--u) calc(5 * var(--u));border:var(--u) solid #1c1830;color:#1c1830;cursor:pointer;box-shadow:0 var(--u) 0 #1c1830;background:#fffbe8}.nb-opt:hover:not(:disabled){background:#fed018}.nb-opt.right{background:#9be3a8}.nb-opt.wrong{background:#ff8a8a;text-decoration:line-through}.nb-opt:disabled{cursor:default}.nb-why{margin-top:calc(3 * var(--u));min-height:calc(9 * var(--u))}.nb-why b{color:#a31d33}.nb-actions{align-items:center;gap:calc(5 * var(--u));margin-top:calc(5 * var(--u));display:flex}.nb-actions .btn,.nb-close{color:#1c1830;text-shadow:none;font-size:calc(8 * var(--u));border-color:#1c1830}.nb-actions .btn:hover,.nb-close:hover{color:#fffbe8;background:#1c1830}.nb-stat{font-size:calc(6.5 * var(--u));color:#6f7896}.nb-book{position:relative}.nb-close{right:calc(10 * var(--u));bottom:calc(-12 * var(--u));background:#fffbe8;position:absolute}.nb-empty{font-size:calc(8 * var(--u));color:#6f7896;padding-top:calc(30 * var(--u));text-align:center}#game.crt:after{content:"";pointer-events:none;background:repeating-linear-gradient(to bottom, #00000038 0 calc(var(--u) * .34), transparent calc(var(--u) * .34) var(--u)), radial-gradient(ellipse at center, transparent 62%, #00000080 100%);position:absolute;inset:0}#game.crt canvas{filter:saturate(1.08)contrast(1.04)}.term .keybar{align-items:center;gap:calc(2 * var(--u));font-size:calc(7 * var(--u));color:#a25a20;display:flex}.term .keybar button{font-family:var(--font-crt);font-size:calc(9 * var(--u));min-width:calc(14 * var(--u));padding:calc(1 * var(--u)) calc(3 * var(--u));border:var(--u) solid var(--amber-dim);color:var(--amber);cursor:pointer;text-shadow:inherit;background:#fed01814;line-height:1}.term .keybar button:hover{background:var(--amber);color:#120806;text-shadow:none}.term .keybar .kb-tip{margin-left:auto}.endcard .levelup{gap:var(--u);padding:calc(4 * var(--u)) calc(6 * var(--u));border:var(--u) solid var(--amber);background:#fed01814;flex-direction:column;animation:.5s cubic-bezier(.2,2.2,.4,1) both stamp;display:flex;transform:none}.endcard .levelup small{font-family:var(--font-title);font-size:calc(4.5 * var(--u));color:var(--amber-2);letter-spacing:.1em}.endcard .levelup b{font-family:var(--font-crt);font-weight:400;font-size:calc(12 * var(--u));color:var(--amber);text-shadow:0 0 calc(4 * var(--u)) #fed01899}.endcard .levelup span{font-size:calc(6.5 * var(--u));color:#c9d3ea}.view-cap{left:calc(40 * var(--u));right:calc(40 * var(--u));top:calc(20 * var(--u));align-items:center;gap:calc(8 * var(--u));padding:calc(5 * var(--u)) calc(8 * var(--u));font-size:calc(7.5 * var(--u));color:var(--cream);cursor:pointer;font-style:italic;animation:.3s steps(3,end) both rise;display:flex;position:absolute}.view-cap span:first-child{flex:1}.travel-cap{left:calc(140 * var(--u));right:calc(140 * var(--u));color:var(--amber,#fed018);pointer-events:none;font-style:normal}.view-cap .key{font-style:normal}.bark{padding:var(--u) calc(3 * var(--u));color:#1c1830;border:var(--u) solid #1c1830;font-size:calc(5.5 * var(--u));white-space:nowrap;pointer-events:none;background:#fffbe8;animation:.2s steps(2,end) both fadein;position:absolute;transform:translate(-50%,-100%)}.bark:after{content:"";left:50%;bottom:calc(-3 * var(--u));width:calc(2 * var(--u));height:calc(2 * var(--u));background:#1c1830;position:absolute}.badge{margin:0 0 calc(6 * var(--u));border:var(--u) solid #1c1830;box-shadow:0 calc(2 * var(--u)) 0 #1c1830;color:#1c1830;background:#fffbe8}.badge-top{white-space:nowrap;color:#fffbe8;font-family:var(--font-title);font-size:calc(4.5 * var(--u));padding:calc(2 * var(--u)) calc(4 * var(--u));letter-spacing:.06em;background:#a31d33;overflow:hidden}.badge-body{gap:calc(5 * var(--u));padding:calc(4 * var(--u));display:flex}.badge-photo .portrait{width:calc(36 * var(--u));height:calc(36 * var(--u))}.badge-info{flex-direction:column;min-width:0;display:flex}.badge-info small{font-family:var(--font-title);font-size:calc(3.8 * var(--u));color:#6a5f4a;margin-top:var(--u)}.badge-info b{font-family:var(--font-crt);font-weight:400;font-size:calc(10 * var(--u));line-height:1}.badge-info b.badge-rank{color:#a31d33}.badge-pips{gap:var(--u);margin-top:calc(2 * var(--u));display:flex}.badge-pips i{width:calc(8 * var(--u));height:calc(4 * var(--u));border:var(--u) solid #1c1830;background:#fffbe8}.badge-pips i.on{background:#fed018}.badge-sign{border-top:var(--u) dashed #b4a78c;padding:var(--u) calc(4 * var(--u));font-size:calc(6.5 * var(--u));color:#6a5f4a;text-align:right;font-style:italic}.badge-next{margin:0 0 calc(6 * var(--u));padding:calc(2 * var(--u)) calc(4 * var(--u));border:var(--u) dashed #8e8268;font-family:var(--font-crt);font-size:calc(8.5 * var(--u));color:#6a5f4a}a.badge-next{text-decoration:none;display:block}.badge-next span{font-family:var(--font-ui);font-size:calc(6.5 * var(--u));display:block}.badge-pop{place-content:center;gap:calc(4 * var(--u));z-index:40;cursor:pointer;background:#05040a99;animation:.2s steps(3,end) both fadein;display:grid;position:absolute;inset:0}.badge-pop .badge{width:calc(200 * var(--u));animation:.25s steps(4,end) both rise}.badge-pop.out{opacity:0;transition:opacity .2s steps(3,end)}.badge-pop-title{text-align:center;font-family:var(--font-title);font-size:calc(7 * var(--u));color:var(--amber);text-shadow:0 0 calc(4 * var(--u)) #fed01880}.endcard .newrank{font-family:var(--font-crt);font-size:calc(9 * var(--u));color:var(--amber)}.endcard .newrank small{font-family:var(--font-title);font-size:calc(4.5 * var(--u));color:var(--amber-2);margin-right:calc(3 * var(--u))}.peek{font:inherit;color:inherit;border:var(--u) dashed currentColor;padding:0 calc(2 * var(--u));cursor:pointer;background:#fed0182e}.peek:hover{background:#fed01859}.peek.shown{cursor:default;opacity:.85;background:0 0;border-color:#0000}.peek-tip{font-size:calc(6.5 * var(--u));opacity:.8;margin-top:calc(-2 * var(--u))}.term details.alt{margin-top:calc(3 * var(--u));color:#c9d3ea}.term details.alt summary{cursor:pointer;color:var(--amber)}.term details.alt pre{margin:calc(2 * var(--u)) 0;padding:calc(3 * var(--u));color:#fed018;white-space:pre-wrap;font-family:var(--font-crt);background:#00000059}.title a.btn{text-align:center;text-decoration:none;display:block}.title .btn.danger{color:#fffbe8;background:#a31d33;border-color:#fffbe8}.nb-free{width:100%;margin:0 0 calc(6 * var(--u));text-align:left;display:block}.nb-free span{font-family:var(--font-ui);font-size:calc(6 * var(--u));opacity:.8;display:block}.p-time{padding:0 calc(4 * var(--u)) calc(3 * var(--u));font-size:calc(6.5 * var(--u));color:#c9d3ea}.p-time b{color:var(--amber);font-weight:400}.term .task code.v{font-family:var(--font-crt);color:#fed018;padding:0 calc(1.5 * var(--u));background:#fed0181f}.nb-ex-t code.v{font-family:var(--font-crt);font-size:calc(8.5 * var(--u));color:#a31d33}.term .case{margin:calc(1 * var(--u)) 0 0 calc(3 * var(--u))}.term .case.ok{color:#9be3a8}.term .case.bad{color:#ff8a8a}.term .case .in{color:#c9d3ea;opacity:.85}.term .case .out{color:#c9d3ea;margin-left:calc(6 * var(--u))}.term .case code.v,.term .hint code.v,.term .console code.v{font-family:var(--font-crt);color:#fed018}.term pre.spot{margin:calc(2 * var(--u)) 0;padding:calc(2 * var(--u)) calc(3 * var(--u));color:#fff4c9;font-family:var(--font-crt);white-space:pre;background:#00000059;overflow-x:auto}.term pre.spot .ln{color:#8a4a1a}.term .console{overflow-wrap:anywhere;min-width:0}.term .console .log{white-space:pre-wrap}.term code.v{font-family:var(--font-crt);font-size:1em;line-height:inherit;color:#fed018;padding:0 calc(1 * var(--u));background:#fed0181f}.nb-page code.v{font-family:var(--font-crt);color:#a31d33;font-size:1.05em}.term .task-pin{gap:calc(2 * var(--u));padding-top:calc(3 * var(--u));border-top:var(--u) dashed #fed01840;flex-direction:column;flex:none;display:flex}.term .task-pin h3,.term .task-pin .borrowed{margin:0}.countdown{z-index:60;pointer-events:none;font-family:var(--font-title,"Press Start 2P"), monospace;font-size:calc(48 * var(--u));color:var(--cream,#fff4c9);text-shadow:calc(2 * var(--u)) calc(2 * var(--u)) 0 #d35600, calc(4 * var(--u)) calc(4 * var(--u)) 0 #1c1830;place-items:center;display:grid;position:absolute;inset:0}.countdown.beat{animation:.5s steps(4,end) both countdown-beat}.countdown.year{color:#fed018;font-size:calc(56 * var(--u))}@keyframes countdown-beat{0%{opacity:0;transform:scale(1.6)}to{opacity:1;transform:scale(1)}}
