.campaign-screen{position:fixed;inset:0;z-index:30;background:var(--campaign-bg);color:inherit;overflow-y:auto;padding:max(24px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom));overscroll-behavior:contain}.campaign-header{display:flex;justify-content:space-between;align-items:center;max-width:900px;margin:0 auto 28px}.campaign-header h1{font-size:30px;font-weight:400;margin:12px 0}.campaign-chapters{max-width:900px;margin:auto;display:grid;gap:27px}.campaign-chapters h2{font-size:16px;font-weight:400}.campaign-chapters h2>span{opacity:.4;font-size:11px;margin-right:12px}.campaign-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.campaign-level{border:1px solid currentColor;border-color:color-mix(in srgb,currentColor 20%,transparent);padding:13px 10px;min-height:79px;text-align:left}.campaign-level span{font-size:10px;opacity:.6;display:block;margin-bottom:9px}.campaign-level strong{font-size:11px;font-weight:400;line-height:1.5;display:block}.campaign-level.current{border-color:currentColor}.campaign-level.done{background:color-mix(in srgb,currentColor 7%,transparent)}.game-header button.level-meta{min-height:44px;padding:8px;opacity:.8}.task-name{font-size:10px;letter-spacing:1px;opacity:.55;margin:0}.campaign-header .subtitle{font-size:9px}.campaign-screen button:focus-visible{outline-offset:1px}*{box-sizing:border-box}html,body,#app{margin:0;width:100%;height:100%;overflow:hidden}body{overscroll-behavior:none;-webkit-user-select:none;user-select:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:2px solid currentColor;outline-offset:5px}button:disabled{opacity:.3;cursor:default}[hidden]{display:none!important}.game{height:100dvh;display:flex;flex-direction:column;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);overflow:hidden}.game-header{height:84px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:16px 25px}.icon-button{width:48px;height:48px;display:grid;place-items:center;font-size:25px;flex-shrink:0}.wordmark{font-size:17px;letter-spacing:2px;font-weight:500;padding:12px 0}.level-meta{font-size:10px;letter-spacing:2px;text-transform:uppercase;opacity:.6}.stage{position:relative;flex:1;min-height:100px;width:100%;max-width:820px;align-self:center}.stage canvas{display:block;width:100%;height:100%;touch-action:none}.game-footer{height:139px;flex-shrink:0;padding:12px 26px 23px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;text-align:center}.instruction{font-size:12px;letter-spacing:1px;margin:0;opacity:.65}.actions{display:flex;justify-content:center;gap:12px}.action{min-height:48px;min-width:130px;padding:13px 20px;font-size:12px;letter-spacing:.5px}.title-screen,.next-screen{position:fixed;inset:0;z-index:10;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:max(36px,env(safe-area-inset-top)) 30px max(36px,env(safe-area-inset-bottom))}.title-screen h1{margin:16px 0;font-weight:400}.title-screen p,.next-screen p{font-size:13px;line-height:1.7;max-width:290px;opacity:.65}.title-screen .action{margin-top:32px;min-width:200px}.title-kicker{font-size:10px;letter-spacing:4px;text-transform:uppercase}.title-art{width:240px;height:230px;margin:15px 0}.title-art svg{width:100%;height:100%}.next-screen h2{font-size:35px;font-weight:400;margin:20px 0}.next-screen .actions{margin-top:25px;flex-wrap:wrap}.result{font-variant-numeric:tabular-nums}.game-header .controls{display:flex;gap:4px}.subtitle{font-size:11px;letter-spacing:2px;text-transform:uppercase}button{transition:opacity .15s,transform .15s}button:active:not(:disabled){transform:scale(.97)}@media(max-height:620px){.game-header{height:63px;padding-top:7px;padding-bottom:7px}.game-footer{height:107px;padding:8px 20px}.title-art{height:135px}.title-screen h1{font-size:45px!important}.title-screen .action{margin-top:12px}}@media(min-width:900px){.game-header{padding:25px 48px;height:96px}.game-footer{height:150px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.game-header{gap:8px}.game-header .controls{flex-shrink:0}.level-meta{white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}.wordmark{flex-shrink:0}@media(max-width:360px){.game-header{padding-left:12px;padding-right:12px}.level-meta{font-size:8px;letter-spacing:1px}.game-footer{padding-left:14px;padding-right:14px}}:root{font-family:Manrope,sans-serif;background:#5426df;color:#fff5de;color-scheme:dark}.game{background:#5426df}.wordmark{font-size:12px;letter-spacing:1px;text-align:left;line-height:1.15}.wordmark span{display:block}.icon-button{color:#cdbefb}.level-meta{color:#e3d6ff}.game-footer{height:176px;padding-bottom:25px}.instruction{font-size:14px;letter-spacing:3px;color:#f9dbff;opacity:1}.action{border:1px solid #ffffff50;border-radius:100px;color:#fff5de;font-size:11px;min-width:126px}.action.primary{background:#f6eb6b;border-color:#f6eb6b;color:#392095}.title-screen,.next-screen{background:#5426df}.title-screen h1{font-size:49px;line-height:1.08;letter-spacing:-3px;font-weight:500;text-align:left;margin:27px 0 10px}.title-screen h1 span{display:block}.title-art{height:210px;width:255px;margin:15px 0 0}.title-kicker{color:#e1baff;letter-spacing:3px}.title-screen p{color:#fff5de;opacity:.75}.score{font-size:57px;line-height:1;letter-spacing:-3px;margin:0;color:#f6eb6b;font-weight:400}.score small{font-size:20px;letter-spacing:0;margin-left:5px;color:#ecdda1}.score-label{font-size:9px;letter-spacing:3px;text-transform:uppercase;margin:0;color:#f4c3ff}.result-block{display:flex;align-items:center;gap:17px}.result-info{text-align:left}.result-info span{display:block;font-size:9px;letter-spacing:1px;margin-top:9px;color:#cbb8ff}.best{font-size:9px;letter-spacing:1px;color:#cbb8ff}.next-screen h2{font-size:39px;line-height:1.15;letter-spacing:-2px}.next-symbol{font-size:95px;line-height:1;color:#f6eb6b;margin-bottom:27px}.game-footer .actions{gap:10px}.controls .icon-button{width:44px}.sound-button{font-size:17px}@media(max-height:650px){.title-screen{padding:18px;overflow:auto}.title-screen .title-art{height:110px;flex-shrink:1;min-height:0;margin:5px 0}.title-screen h1{font-size:42px!important;margin:12px 0}.title-screen p{margin:8px 0}.title-screen .action{margin-top:12px;flex-shrink:0}}@media(max-height:450px){.title-screen .title-art{display:none}.title-screen h1{font-size:35px!important}.game .game-footer{height:100px;padding:6px 12px}.game-header{height:60px}}:root{--campaign-bg:#5426df}.game-footer{height:190px;gap:10px}.instruction{font-size:12px;letter-spacing:.4px;max-width:340px;line-height:1.5}.result-info span{font-size:8px;letter-spacing:0}.score{font-size:48px}.result-block{gap:12px}.handle-choices{display:flex;gap:8px;justify-content:center}.handle-choice{width:44px;height:44px;border-radius:50%;border:1px solid #aa8cee;color:#f6eb6b;background:transparent}.handle-choice[aria-pressed=true]{background:#f6eb6b;color:#5426df}.game-footer:has(.handle-choices:not([hidden])){height:246px}.game-footer:has(.handle-choices:not([hidden])) .instruction{margin:4px 0}.game-footer:has(.handle-choices:not([hidden])) .action{min-height:44px}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(./manrope-latin-400-normal-PaqtzbVb.woff2) format("woff2"),url(./manrope-latin-400-normal-8tf8FM3T.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(./manrope-latin-ext-400-normal-CMDvPJRp.woff2) format("woff2"),url(./manrope-latin-ext-400-normal-C-X6QNXX.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(./manrope-latin-500-normal-BYYD-dBL.woff2) format("woff2"),url(./manrope-latin-500-normal-DMZssgOp.woff) format("woff")}
