:root{--ink:#1a1c2c;--plum:#5d275d;--berry:#b13e53;--coral:#ef7d57;--honey:#ffcd75;--lime:#a7f070;--leaf:#38b764;--teal:#257179;--navy:#29366f;--blue:#3b5dc9;--sky:#41a6f6;--ice:#73eff7;--white:#f4f4f4;--mist:#94b0c2;--slate:#566c86;--dusk:#333c57;--z:2;--px:calc(1px * var(--z));--font:ui-monospace, "SF Mono", "Cascadia Mono", "Roboto Mono", Menlo, Consolas, "DejaVu Sans Mono", monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;margin:0}body{color:var(--white);font-family:var(--font);background:#0f1019;font-weight:700;overflow:hidden}#app{justify-content:center;align-items:center;gap:12px;width:100%;height:100%;display:flex}.shell{--px:calc(1px * var(--z));font-size:calc(7px * var(--z));box-shadow:0 0 0 var(--px) var(--dusk), 0 calc(8 * var(--px)) calc(24 * var(--px)) #00000080;flex-direction:column;flex:none;line-height:1.3;display:flex}.stage{background:var(--ink);flex:none;position:relative}.stage:focus,.stage:focus-visible{outline:none}.stage canvas{image-rendering:pixelated;image-rendering:crisp-edges;display:block}.ui{pointer-events:none;position:absolute;inset:0}.ui [hidden]{display:none!important}.bar{align-items:center;gap:calc(6 * var(--px));height:calc(12 * var(--px));padding:0 calc(6 * var(--px));background:var(--ink);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;flex:none;display:grid}.bar-top{border-bottom:var(--px) solid var(--dusk);grid-template-columns:1fr auto 1fr}.bar-bottom{border-top:var(--px) solid var(--dusk);grid-template-columns:auto 1fr}.bar.is-blank>*{visibility:hidden}.hud-title{text-overflow:ellipsis;color:var(--mist);overflow:hidden}.hud-time{font-size:calc(9px * var(--z));font-variant-numeric:tabular-nums;color:var(--honey)}.hud-right{justify-content:flex-end;align-items:center;gap:calc(5 * var(--px));min-width:0;display:flex}.hud-attempt{text-overflow:ellipsis;text-align:right;color:var(--mist);overflow:hidden}.audio-toggles{gap:var(--px);flex:none;display:flex}.audio-toggle{width:calc(11 * var(--px));height:calc(11 * var(--px));cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.audio-toggle:hover{background:var(--dusk)}.audio-toggle:focus-visible{outline:var(--px) solid var(--honey);outline-offset:calc(-1 * var(--px))}.audio-icon{width:calc(9 * var(--px));height:calc(9 * var(--px));image-rendering:pixelated;image-rendering:crisp-edges;display:block}.hud-objective{color:var(--lime)}.hud-keys{text-overflow:ellipsis;text-align:right;color:var(--slate);transition:opacity .4s;overflow:hidden}.hud-keys.is-hidden{opacity:0}.overlay-layer{pointer-events:auto;background:#0f10199e;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.dialog{min-width:calc(150 * var(--px));max-width:calc(100% - 24 * var(--px));max-height:calc(100% - 12 * var(--px));padding:calc(8 * var(--px)) calc(10 * var(--px));background:var(--ink);border:var(--px) solid var(--mist);box-shadow:0 0 0 var(--px) var(--ink), calc(3 * var(--px)) calc(3 * var(--px)) 0 var(--px) #00000073;outline:none;overflow:auto}.dialog-win{border-color:var(--honey)}.dialog-warn{border-color:var(--coral)}.dialog-title{margin:0 0 calc(6 * var(--px));font-size:calc(12px * var(--z));letter-spacing:.08em;text-transform:uppercase;text-align:center;color:var(--white);line-height:1.1}.dialog-win .dialog-title{color:var(--honey)}.dialog-warn .dialog-title{color:var(--coral)}.dialog-body{gap:calc(2 * var(--px));flex-direction:column;display:flex}.dialog-note{color:var(--mist);text-align:center;margin:0;font-weight:400}.dialog-actions{justify-content:center;gap:calc(4 * var(--px));margin-top:calc(8 * var(--px));flex-wrap:wrap;display:flex}.stat-row{justify-content:space-between;gap:calc(16 * var(--px));text-transform:uppercase;letter-spacing:.06em;display:flex}.stat-label{color:var(--mist)}.stat-value{color:var(--white);font-variant-numeric:tabular-nums}.stat-row.is-highlight .stat-value{color:var(--honey)}.btn{align-items:center;gap:calc(4 * var(--px));padding:calc(3 * var(--px)) calc(6 * var(--px));font:inherit;letter-spacing:.06em;text-transform:uppercase;color:var(--white);background:var(--dusk);border:var(--px) solid var(--slate);cursor:pointer;pointer-events:auto;border-radius:0;display:inline-flex}.btn:hover:not(:disabled){background:var(--slate)}.btn:active:not(:disabled){transform:translateY(var(--px))}.btn-primary{color:var(--ink);background:var(--honey);border-color:var(--white)}.btn-primary:hover:not(:disabled){background:var(--white)}.btn:disabled{color:var(--slate);background:var(--ink);border-color:var(--dusk);cursor:not-allowed}.btn-hint{padding:0 calc(2 * var(--px));font:inherit;color:inherit;opacity:.75;border:var(--px) solid currentcolor;font-size:.85em}:focus-visible{outline:var(--px) solid var(--ice);outline-offset:var(--px)}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.menu{align-items:center;gap:calc(5 * var(--px));padding-top:calc(34 * var(--px));text-align:center;pointer-events:auto;flex-direction:column;display:flex;position:absolute;inset:0}.menu-logo{font-size:calc(44px * var(--z));letter-spacing:.14em;text-indent:.14em;text-transform:uppercase;color:var(--honey);text-shadow:calc(2 * var(--px)) calc(2 * var(--px)) 0 var(--coral), calc(4 * var(--px)) calc(4 * var(--px)) 0 var(--berry), calc(6 * var(--px)) calc(6 * var(--px)) 0 var(--ink);margin:0;line-height:1}.menu-tagline{margin:calc(4 * var(--px)) 0 calc(8 * var(--px));letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}.menu-actions{gap:calc(4 * var(--px));min-width:calc(128 * var(--px));flex-direction:column;display:flex}.menu-actions .btn{justify-content:center}.menu-flow{bottom:calc(5 * var(--px));color:var(--ink);margin:0;position:absolute;left:0;right:0}.library{gap:calc(4 * var(--px));padding:calc(10 * var(--px)) calc(14 * var(--px)) calc(8 * var(--px));pointer-events:auto;background:#0f1019db;flex-direction:column;display:flex;position:absolute;inset:0}.library-head{align-items:center;gap:calc(5 * var(--px));display:flex}.library-heading{font-size:calc(12px * var(--z));letter-spacing:.08em;text-transform:uppercase;color:var(--honey);flex:1;margin:0}.library-count{color:var(--slate)}.library-note{color:var(--mist);margin:0;font-weight:400}.library-list{gap:calc(3 * var(--px));min-height:0;padding:0 calc(2 * var(--px)) 0 0;flex-direction:column;flex:1;margin:0;list-style:none;display:flex;overflow-y:auto}.library-item{align-items:center;gap:calc(6 * var(--px));padding:calc(3 * var(--px));background:var(--ink);border:var(--px) solid var(--dusk);flex:none;display:flex}.library-thumb-box{width:calc(60 * var(--px));height:calc(34 * var(--px));background:#0f1019;flex:none;place-items:center;display:grid}.library-thumb{outline:var(--px) solid var(--dusk);image-rendering:pixelated;image-rendering:crisp-edges;display:block}.library-info{gap:var(--px);flex-direction:column;flex:1;min-width:0;display:flex}.library-title{text-overflow:ellipsis;white-space:nowrap;font-size:calc(9px * var(--z));color:var(--white);overflow:hidden}.library-meta{text-overflow:ellipsis;white-space:nowrap;color:var(--slate);font-weight:400;overflow:hidden}.library-status{font-weight:700}.library-status[data-beaten=true]{color:var(--lime)}.library-status[data-beaten=false]{color:var(--honey)}.library-actions{gap:calc(2 * var(--px));flex:none;display:flex}.library-empty{text-align:center;max-width:70%;color:var(--mist);margin:auto;font-weight:400}.campaign-list{gap:calc(2 * var(--px));min-height:0;padding:0 calc(2 * var(--px)) 0 0;flex-direction:column;flex:1;margin:0;list-style:none;display:flex;overflow-y:auto}.campaign-chapter{margin-top:calc(3 * var(--px));letter-spacing:.08em;text-transform:uppercase;color:var(--honey)}.campaign-number{width:calc(14 * var(--px));text-align:center;font-size:calc(9px * var(--z));color:var(--mist);flex:none}.campaign-item[data-state=locked]{opacity:.5}.campaign-item[data-state=cleared] .library-meta{color:var(--lime)}.dialog-wide{width:calc(300 * var(--px))}.facts{gap:calc(2 * var(--px));flex-direction:column;display:flex}.facts-heading{justify-content:space-between;align-items:baseline;gap:calc(6 * var(--px));margin-bottom:calc(3 * var(--px));padding-bottom:calc(3 * var(--px));border-bottom:var(--px) solid var(--dusk);flex-wrap:wrap;display:flex}.facts-title{font-size:calc(9px * var(--z));color:var(--honey);overflow-wrap:anywhere}.facts-author{color:var(--mist);text-transform:uppercase;letter-spacing:.06em}.facts-rule{text-align:left;margin-bottom:calc(2 * var(--px))}.share-headline{margin:0 0 calc(4 * var(--px));text-align:center;text-transform:uppercase;letter-spacing:.08em;color:var(--honey)}.share-url{width:100%;margin:calc(4 * var(--px)) 0 calc(2 * var(--px));padding:calc(3 * var(--px)) calc(4 * var(--px));font:inherit;color:var(--white);border:var(--px) solid var(--slate);text-overflow:ellipsis;background:#0f1019;border-radius:0;font-weight:400}.share-feedback{min-height:1.3em;color:var(--lime);font-weight:700}.share-blocked,.form-error{color:var(--coral);font-weight:700}.form-error:empty{display:none}.error-detail{margin-top:calc(4 * var(--px));color:var(--slate);overflow-wrap:anywhere;font-size:.85em}.stat-row[data-status=warn] .stat-value{color:var(--honey)}.stat-row[data-status=over] .stat-value{color:var(--coral)}.panel-host{flex:none;width:272px;max-height:100%;transition:opacity .15s;overflow-y:auto}.panel-host[hidden]{display:none}.panel-host[inert]{opacity:.45}#app.is-stacked{flex-direction:column;justify-content:flex-start;padding:8px 0;overflow-y:auto}#app.is-stacked .panel-host{width:min(100% - 16px,512px);max-height:none;overflow:visible}.panel{background:var(--ink);border:2px solid var(--dusk);flex-direction:column;gap:8px;padding:8px 10px;font-size:13px;line-height:1.35;display:flex}.panel-header{justify-content:space-between;align-items:center;display:flex}.panel h2,.panel h3{text-transform:uppercase;letter-spacing:.08em;margin:0}.panel h2{color:var(--honey);font-size:16px}.panel h3{color:var(--mist);margin-bottom:6px;font-size:11px}.panel section{border-top:2px solid var(--dusk);flex-direction:column;gap:6px;padding-top:8px;display:flex}.panel .btn{justify-content:center;padding:5px 8px}.row{gap:6px;display:flex}.row>*{flex:1 1 0;min-width:0}.tools{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.tool-fields{flex-direction:column;gap:4px;display:flex}.tool-fields[hidden]{display:none}.tool-options{border:2px solid var(--dusk);flex-direction:column;gap:4px;padding:6px;display:flex}.tool-options[hidden]{display:none}.tool{font:inherit;text-transform:uppercase;letter-spacing:.04em;color:var(--mist);background:var(--dusk);border:2px solid var(--slate);cursor:pointer;border-radius:0;flex-direction:column;align-items:center;gap:3px;padding:5px 0 3px;font-size:10px;display:flex;position:relative}.tool:hover{color:var(--white)}.tool[aria-pressed=true]{color:var(--ink);background:var(--honey);border-color:var(--white)}.tool kbd{font:inherit;opacity:.7;font-size:9px;position:absolute;top:1px;right:3px}.tool-icon{width:32px;height:32px;image-rendering:pixelated;image-rendering:crisp-edges}.field{flex-direction:column;gap:2px;display:flex}.field label{text-transform:uppercase;letter-spacing:.06em;color:var(--mist);font-size:11px}.panel input,.panel select{width:100%;font:inherit;color:var(--white);border:2px solid var(--slate);background:#0f1019;border-radius:0;padding:4px 6px}.panel input.initials{text-transform:uppercase;letter-spacing:.2em}.panel input[aria-invalid=true]{border-color:var(--coral)}.panel-note{color:var(--mist);margin:0;font-size:11px;font-weight:400}.panel-note:empty{display:none}.panel-help{border-top:2px solid var(--dusk);padding-top:8px}.meter-text{font-variant-numeric:tabular-nums}.meter{background:var(--dusk);height:8px}.meter-fill{background:var(--leaf);min-width:2px;height:100%}.meter[data-status=warn] .meter-fill{background:var(--honey)}.meter[data-status=over] .meter-fill{background:var(--coral)}.meter[data-status=warn]~.panel-note{color:var(--honey)}.meter[data-status=over]~.panel-note{color:var(--coral)}.verify{border:2px solid var(--slate);flex-direction:column;gap:2px;padding:6px 8px;display:flex}.verify strong{text-transform:uppercase;letter-spacing:.08em;color:var(--mist)}.verify span{color:var(--mist);font-size:11px;font-weight:400}.verify[data-state=verified]{border-color:var(--leaf)}.verify[data-state=verified] strong{color:var(--lime)}.result-verdict{margin:calc(3 * var(--px)) 0 0;text-align:center;color:var(--mist)}.result-verdict[data-record=new]{color:var(--lime)}.initials-label{justify-content:center;align-items:center;gap:calc(6 * var(--px));margin-top:calc(4 * var(--px));text-transform:uppercase;letter-spacing:.08em;color:var(--honey);flex-wrap:wrap;display:flex}.initials-entry{width:calc(46 * var(--px));text-overflow:clip;font-weight:700;font-size:calc(10px * var(--z));text-align:center;text-transform:uppercase;letter-spacing:.25em;text-indent:.25em;color:var(--honey);border-color:var(--honey);flex:none;margin:0}.initials-entry[aria-invalid=true]{border-color:var(--coral)}.initials-hint{text-transform:none;letter-spacing:0;color:var(--slate);font-weight:400}.speech{max-width:calc(150 * var(--px));padding:calc(2 * var(--px)) calc(4 * var(--px));color:var(--ink);background:var(--white);border:var(--px) solid var(--ink);text-align:center;overflow-wrap:anywhere;white-space:pre-wrap;pointer-events:none;position:absolute;transform:translate(-50%,-100%)}.speech:after{content:"";left:50%;bottom:calc(-3 * var(--px));width:calc(4 * var(--px));height:calc(2 * var(--px));margin-left:calc(-2 * var(--px));background:var(--white);border:var(--px) solid var(--ink);border-top:0;position:absolute}.mode-tabs{gap:4px;display:flex}.mode-tab{flex:1 1 0;justify-content:center;font-size:11px}.mode-tab[aria-pressed=true],.scene-tab[aria-pressed=true]{color:var(--ink);background:var(--honey);border-color:var(--white)}.panel section[hidden],.panel-help[hidden],.director[hidden]{display:none}.scene-tabs{flex-wrap:wrap;gap:4px;display:flex}.panel .scene-tab{min-width:30px;padding:5px 6px}.scene{flex-direction:column;gap:6px;display:flex}.scene-trigger{color:var(--mist);flex-direction:column;gap:4px;font-size:11px;font-weight:400;display:flex}.pick-hint{color:var(--honey);font-weight:700}.steps{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.step{border:2px solid var(--dusk);flex-direction:column;gap:4px;padding:5px;display:flex}.step-head{align-items:center;gap:3px;display:flex}.step-kind{text-transform:uppercase;letter-spacing:.06em;color:var(--honey);flex:auto;font-size:11px}.panel .btn-icon{flex:none;width:24px;padding:2px 0;font-size:13px;line-height:1}.step-body{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.step-body .step-actor,.step-body .step-text{flex:100%}.step-target{color:var(--mist);flex:auto;font-size:11px}.step-body .btn{flex:none}.step-problem{color:var(--coral)}.speech[data-scripted=true]{pointer-events:auto;cursor:pointer}.speech-next{margin-top:calc(1 * var(--px));color:var(--slate);font-size:.75em;font-weight:400;display:block}
