@font-face{font-family:Lilita One;font-style:normal;font-weight:400;font-display:swap;src:url(./lilita-one-latin.d2575d4fa3.woff2) format("woff2")}:root{--paper:#f6ecd8;--paper-bottom:#f1e4c9;--ink:#382713;--muted:#856f50;--line:#dbc49d;--teal:#28665e;--cream:#fff9ee;--display:"Lilita One","Arial Rounded MT Bold",system-ui,sans-serif;font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--paper);color-scheme:light}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 30%,var(--paper-glow,#fffaf060),transparent 58%),linear-gradient(var(--paper),var(--paper-bottom));min-width:300px}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button{border:0;background:none}button:disabled{cursor:default;opacity:.4}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,canvas:focus-visible{outline:3px solid var(--teal);outline-offset:4px}button:not(:disabled):active{transform:translateY(1px)}[hidden]{display:none!important}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.icon{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.game{overflow-anchor:none;position:relative;max-width:1440px;margin:auto;min-height:720px;height:100svh;display:grid;grid-template-rows:auto 3px minmax(270px,1fr) auto;padding:12px 32px 14px}.subtitle{margin:9px 0 18px;font-size:16px;color:var(--muted)}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:13px}.settings-button{position:absolute;right:0;top:0}.game-status{position:relative;display:flex;align-items:center;justify-content:center;gap:25px;padding:0 10px 14px;font-variant-numeric:tabular-nums}.level-button{min-height:44px;display:flex;gap:12px;align-items:center;font-weight:650;font-size:17px;padding:0 8px}.level-button .icon{width:15px;height:15px;color:var(--muted)}.hearts{display:flex;gap:7px;border-inline:1px solid var(--line);padding-inline:24px}.heart{width:25px;height:25px;color:#ed7965;transition:color .2s,transform .2s}.heart.lost{color:#d6c5ae;transform:scale(.86)}.remaining{font-size:14px;color:var(--muted);min-width:96px}.progress-track{height:3px;width:min(320px,70%);margin:auto;overflow:hidden;border-radius:3px;background:#c8ae7b26}.progress-track>div{height:100%;width:0;background:#7eaca1;transition:width .3s ease}.stage{position:relative;min-height:0;width:100%;touch-action:none;isolation:isolate}.stage canvas{width:100%;height:100%;display:block;cursor:grab;touch-action:none}.stage.dragging canvas{cursor:grabbing}.arrow-targets{position:absolute;inset:0;pointer-events:none}.arrow-target{position:absolute;width:44px;height:44px;border-radius:50%;transform:translate(-50%,-50%);pointer-events:auto;background:transparent;padding:0;touch-action:none}.arrow-target:focus-visible{outline:3px solid #c39838;background:#f5bd3930}.arrow-target:active{transform:translate(-50%,-50%)!important}.view-controls{position:absolute;right:3px;bottom:76px;display:grid;gap:5px;z-index:3}.view-controls .icon-button{background:#fff9ee9c;border:1px solid #dbc49d80;color:var(--muted)}.zoom-button{font-size:23px;font-weight:400}.tutorial{position:absolute;bottom:12px;left:0;display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:8px 52px;background:#d4e4fa;color:#2469b6;z-index:4;pointer-events:auto}.tutorial-mark{display:none;place-items:center;background:#e9d8b7;color:#76572b;width:24px;height:24px;border-radius:50%;font-size:12px;font-weight:700;flex:none}.tutorial p{margin:0;font-size:20px;font-weight:600}.tutorial button{position:absolute;right:8px;display:grid;place-items:center;min-width:44px;min-height:44px;color:#2469b6}.tutorial .icon{width:16px;height:16px}.game-bottom{text-align:center;position:relative;z-index:4;padding-top:5px}.game-instructions{font-size:13px;color:var(--muted);margin:0 0 10px}.game-instructions span:not([id]){margin:0 7px;color:#b49970}.game-tools{display:flex;gap:14px;align-items:center;justify-content:center}.tool-button{display:flex;align-items:center;justify-content:center;gap:11px;background:linear-gradient(var(--button-top,#fffaf0),var(--button-bottom,#f6ebd6));border:1px solid var(--button-border,#d9c09a);box-shadow:0 2px 3px #92652b0b;border-radius:15px;min-width:124px;min-height:53px;font-size:16px}.guide-button{color:var(--muted);font-size:12px;min-height:44px;display:inline-flex;align-items:center;gap:6px;text-decoration:underline;text-underline-offset:3px;margin-top:3px}.guide-button .icon{width:14px;height:14px}.status-message{pointer-events:none;font-size:13px;font-weight:600;color:var(--teal);margin:0 0 7px;min-height:18px}.status-message.error{color:#a34335}.notice{padding:20px;text-align:center}.about-game{max-width:960px;margin:auto;border-top:1px solid var(--line);padding:56px 30px}.about-game h1{font:400 33px/1.2 var(--display);margin:10px 0 20px;max-width:380px}.about-game h3{font-size:18px;line-height:1.4;margin:0 0 10px}.about-game p{color:var(--muted);font-size:16px;line-height:1.8;margin:0 0 18px}.about-game .eyebrow,.eyebrow{font-size:12px;letter-spacing:1.2px;text-transform:uppercase;color:#9e8357;font-weight:650;margin:0 0 9px}footer{display:flex;justify-content:center;gap:25px;padding:15px 20px 35px;color:var(--muted);font-size:12px}footer a{text-decoration:none}dialog{color:var(--ink);background:#fff9ee;border:1px solid #d9c4a0;border-radius:24px;padding:28px;width:min(440px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow-y:auto;box-shadow:0 25px 100px #59370f20}dialog::backdrop{background:#523c2338;backdrop-filter:blur(5px)}dialog[open]{animation:dialog-in .22s ease-out}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}.dialog-heading h2{font:400 27px/1.15 var(--display);margin:0}.dialog-heading .icon-button{margin:-9px -9px -9px 0;color:var(--muted)}.dialog-description{font-size:14px;line-height:1.65;color:var(--muted);margin:8px 0 18px}.primary-button{width:100%;min-height:52px;background:var(--teal);color:#fffaf0;display:flex;align-items:center;justify-content:center;gap:14px;border:1px solid #20554e;border-radius:14px;font-weight:600;font-size:16px}.text-button{min-height:44px;color:var(--muted);font-size:13px;padding:12px}.result-dialog{text-align:center;width:min(390px,calc(100% - 40px));padding:30px 30px 18px}.result-dialog h2{font:400 37px/1.08 var(--display);margin:9px 0 10px}.result-dialog>p:not(.eyebrow){font-size:15px;color:var(--muted);margin:0 0 25px;line-height:1.6}.result-art{position:relative;width:112px;height:105px;margin:0 auto 15px}.result-art svg{width:100%;height:100%;overflow:visible}.result-art.failed>svg{filter:grayscale(1);opacity:.6}.result-spark{position:absolute;color:#d7a339;font-size:25px}.spark-one{left:-16px;top:14px}.spark-two{right:-12px;top:46px;font-size:17px}.guide-steps{list-style:none;counter-reset:steps;padding:0;margin:25px 0 15px}.guide-steps li{position:relative;padding-inline-start:43px;margin-bottom:24px;counter-increment:steps}.guide-steps li:before{content:counter(steps);position:absolute;left:0;top:-3px;display:grid;place-items:center;width:28px;height:28px;background:#ebdfc8;border-radius:50%;color:#876530;font-weight:700;font-size:13px}.guide-steps strong{font-size:15px}.guide-steps p,.keyboard-note{font-size:13px;line-height:1.7;color:var(--muted);margin:6px 0 0}.keyboard-note{border-top:1px solid #e8dac2;padding-top:14px;margin-bottom:24px}.level-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.level-grid button{aspect-ratio:1;min-height:44px;border:1px solid #e4d3b6;border-radius:12px;background:#f7eddb;font-variant-numeric:tabular-nums}.level-grid button.current{border-color:var(--teal);background:var(--teal);color:#fff}.level-grid button.complete{color:var(--teal);background:#e8eee1}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:52px;border-bottom:1px solid #e5d7be;font-size:15px}.setting-row input{appearance:none;width:44px;height:26px;flex:none;background:#d8cebe;border-radius:20px;position:relative;cursor:pointer;transition:background .15s}.setting-row input:after{content:"";position:absolute;width:20px;height:20px;background:#fffaf1;border-radius:50%;left:3px;top:3px;box-shadow:0 1px 3px #0002;transition:transform .15s}.setting-row input:checked{background:var(--teal)}.setting-row input:checked:after{transform:translate(18px)}.settings-guide{padding-left:0}#confetti{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:10}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(hover:hover){.tool-button:not(:disabled):hover,.view-controls button:hover{background:var(--button-hover,#fffaf1);box-shadow:0 3px 10px #92652b12}.icon-button:hover{background:#e2cfaa35}.level-button:hover{color:var(--teal)}.primary-button:hover{background:#20564f}.arrow-target:hover{cursor:pointer}}@media(max-width:600px){.game{height:100svh;min-height:620px;padding:max(10px,env(safe-area-inset-top,0px)) 12px max(9px,env(safe-area-inset-bottom));grid-template-rows:auto 3px minmax(250px,1fr) auto}.settings-button{right:-5px;top:0}.game-status{gap:6px;padding:0 35px 9px 0}.level-button{font-size:14px;gap:5px;padding:0 3px}.hearts{padding-inline:8px;gap:3px;border-inline-end:0}.heart{width:23px;height:23px}.remaining{min-width:0;font-size:11px;white-space:nowrap}.progress-track{width:180px}.game-instructions{font-size:11px;margin:2px 0 15px;line-height:1.6}.game-instructions span:not([id]){margin:0 3px}.game-tools{gap:11px}.tool-button{min-width:105px;min-height:53px;font-size:14px;gap:8px}.guide-button{margin-top:6px;font-size:11px}.game-bottom{padding-top:4px}.tutorial{bottom:12px}.tutorial p{font-size:17px}.tutorial-mark{width:22px;height:22px}.tutorial button{min-width:44px;min-height:44px}.status-message{font-size:12px}.about-game{display:block;padding:40px 25px}.about-game h1{font-size:30px}.about-game p{font-size:15px}footer{gap:19px;font-size:11px}.result-dialog{padding:26px 25px 15px}dialog{padding:24px}.dialog-heading h2{font-size:25px}.level-grid{gap:8px}.level-grid button{border-radius:10px}.keyboard-note{font-size:12px}}@media(max-height:740px)and (min-width:601px){.game{min-height:610px;padding-top:10px}.game-instructions{margin-bottom:12px}.game-status{padding-bottom:8px}.tool-button{min-height:48px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(prefers-reduced-transparency:reduce){dialog::backdrop{backdrop-filter:none;background:#523c2366}.tutorial{background:#d4e4fa}}@keyframes dialog-in{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}.game-preview{grid-column:1/-1;margin:0}.game-preview img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:18px}.game-preview figcaption{font-size:12px;color:var(--muted);text-align:center;margin-top:12px}.result-dialog[open]{animation:none}.tutorial-demo{position:absolute;width:0;height:0;z-index:4;pointer-events:none}.demo-hand,.demo-mouse{position:absolute;width:58px;height:70px;left:-10px;top:-6px;filter:drop-shadow(2px 3px 3px #0002)}.demo-hand{transform-origin:16px 13px;animation:demo-tap 1.6s ease-in-out infinite}.demo-mouse{display:none;left:-29px;top:-35px}.tap-ring{position:absolute;width:32px;height:32px;left:-16px;top:-16px;border:3px solid #d7a13e;border-radius:50%;animation:demo-ring 1.6s ease-out infinite}.step-2 .demo-hand{animation:demo-drag 2s ease-in-out infinite}.step-2 .tap-ring,.step-3 .tap-ring,.step-3 .demo-hand{display:none}.step-3 .demo-mouse{display:block}.mouse-wheel{animation:demo-wheel 1.4s ease-in-out infinite}@keyframes demo-tap{0%,65%,to{transform:translate(5px,7px) rotate(-20deg)}35%,45%{transform:translate(0) rotate(-20deg) scale(.92)}}@keyframes demo-ring{0%,30%{transform:scale(.6);opacity:0}45%{opacity:.8}90%,to{transform:scale(1.8);opacity:0}}@keyframes demo-drag{0%,to{transform:translate(-35px) rotate(-20deg)}50%{transform:translate(35px) rotate(-20deg)}}@keyframes demo-wheel{0%,to{transform:translateY(-2px)}50%{transform:translateY(4px)}}@media(max-width:600px){.stage{width:calc(100% + 24px);margin-inline:-12px}}.result-hearts{display:flex;align-items:center;justify-content:center;gap:5px;height:100%}.result-hearts .heart{color:#ef4147;width:33px;height:33px}.result-art [hidden]{display:none}.level-complete{position:absolute;inset:0;display:grid;place-content:center;pointer-events:none;font:400 clamp(28px,5vw,44px)/1.2 var(--display);color:var(--ink);z-index:5}.level-complete[hidden]{display:none}#result-trophy{width:100%;height:100%}.demo-pinch{display:none;position:absolute;left:-63px;top:-65px;width:126px;height:144px;filter:drop-shadow(2px 3px 3px #0002)}[data-input=touch] .step-3 .demo-mouse{display:none}[data-input=touch] .step-3 .demo-pinch{display:block}.pinch-hand{animation:demo-pinch-hand 2.2s ease-in-out infinite}.pinch-index-contact{animation:demo-pinch-index 2.2s ease-in-out infinite}.pinch-thumb-contact{animation:demo-pinch-thumb 2.2s ease-in-out infinite}@keyframes demo-pinch-hand{0%,to{d:path("M80 150L74 131C55 126 43 115 34 104L16 91C9 86 14 77 21 80L50 95C56 98 60 92 59 86L53 29C52 20 61 17 64 26L76 67C78 59 86 59 90 67C93 61 101 63 104 71C110 66 118 71 119 80L125 106C128 120 119 132 122 150Z")}50%{d:path("M80 150L74 131C55 126 43 115 40 99L39 72C37 63 44 57 50 64L61 86C64 91 69 88 66 80L52 51C48 43 55 37 61 44L79 67C78 59 86 59 90 67C93 61 101 63 104 71C110 66 118 71 119 80L125 106C128 120 119 132 122 150Z")}}@keyframes demo-pinch-index{0%,to{transform:translate(0)}50%{transform:translate(-4px,20px)}}@keyframes demo-pinch-thumb{0%,to{transform:translate(0)}50%{transform:translate(27px,-20px)}}@media(max-width:600px),(pointer:coarse){.view-controls,.view-reset-help{display:none}}#hint-button{position:relative}.hint-count{position:absolute;inset-block-start:-6px;inset-inline-end:-5px;display:grid;place-items:center;min-width:20px;height:20px;padding:0 4px;border:2px solid var(--paper);border-radius:12px;background:var(--teal);color:var(--cream);font-size:10px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}#hint-button:disabled .hint-count{background:var(--muted)}.level-pagination{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0 16px}.level-pagination label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.level-pagination select{font:inherit;color:var(--ink);background:var(--cream);border:1px solid var(--line);border-radius:9px;padding:10px;min-height:44px}.level-grid button{font-size:clamp(12px,3.4vw,15px);font-variant-numeric:tabular-nums}.game-copy-section{padding-top:34px;margin-top:34px;border-top:1px solid var(--line)}.about-game>header{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,320px);gap:36px;align-items:center}.cube-cover{margin:0}.cube-cover img{display:block;width:100%;height:auto;aspect-ratio:1;border-radius:20px}.cube-cover figcaption{margin-top:10px;text-align:center;font-size:12px;color:var(--muted)}.game-copy-section h2{font-size:24px;line-height:1.3;margin:0 0 18px;text-wrap:balance}.cube-tips{padding-inline-start:24px;margin:0 0 28px;color:var(--muted);font-size:16px;line-height:1.8}.cube-tips li{padding-inline-start:6px;margin-bottom:15px}.cube-tips strong{color:var(--ink)}.cube-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 36px;margin:0}.cube-controls dt{font-size:17px;font-weight:700;margin-bottom:8px}.cube-controls dd{margin:0;color:var(--muted);font-size:16px;line-height:1.8}.cube-faq>div+div{margin-top:26px}.cube-faq>div:last-child p{margin-bottom:0}.background-setting{border:0;padding:0;margin:22px 0 12px;min-inline-size:0}.background-setting legend{width:100%;font-size:15px;margin-bottom:10px}.background-setting legend span{float:inline-end;color:var(--muted);font-size:13px}.background-options{display:flex;justify-content:space-between;gap:0}.background-option{position:relative;display:grid;place-items:center;width:44px;height:44px;cursor:pointer;flex:none}.background-option input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer}.background-option>span{display:grid;place-items:center;width:34px;height:34px;border:1px solid #b7aa93;border-radius:50%;background:var(--swatch-color);pointer-events:none}.background-option input:checked+span{box-shadow:0 0 0 2px var(--ink),0 0 0 5px var(--cream)}.background-option input:checked+span:after{content:"\2713";font:700 19px/1 system-ui;color:var(--ink)}.background-option input:focus-visible+span{outline:3px solid var(--teal);outline-offset:5px}.game-loading{position:absolute;inset:0 0 64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:17px;z-index:3;color:var(--muted);font:500 14px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;pointer-events:none}.loading-ring{width:42px;height:42px;border:2px solid var(--line);border-top-color:var(--muted);border-inline-end-color:transparent;border-radius:50%;animation:cube-loading-spin 1s linear infinite}.game-loading a{pointer-events:auto;min-height:44px;padding:10px 12px;font-size:13px;text-underline-offset:4px}.game-loading.failed .loading-ring{display:none}.game-loading:not([hidden])~.tutorial,.game-loading:not([hidden])~.tutorial-demo{visibility:hidden}@keyframes cube-loading-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.loading-ring{animation:none}}@media(max-width:600px){.about-game>header{grid-template-columns:1fr;gap:20px}.cube-cover{width:min(100%,320px);margin-inline:auto}.game-copy-section{padding-top:26px;margin-top:26px}.game-copy-section h2{font-size:22px}.about-game h3{font-size:17px}.cube-tips,.cube-controls dd{font-size:15px}.cube-controls{grid-template-columns:1fr;gap:22px}.cube-tips{padding-inline-start:21px}}
