:root{color:#42382f;font-synthesis:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#f8f3e8;font-family:Yu Gothic UI,Hiragino Kaku Gothic ProN,Meiryo,sans-serif}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation;border:0}button:disabled{cursor:default;opacity:.4}button:focus-visible,input:focus-visible,canvas:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #527f9d}button:active:not(:disabled){transform:translateY(1px)}[hidden]{display:none!important}.app{max-width:568px;margin:auto;padding:20px 24px 14px}.masthead{letter-spacing:.16em;color:#897b6f;border-bottom:1px solid #dcd3c6;justify-content:space-between;padding-bottom:17px;font-size:10px;display:flex}.title-row{justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.eyebrow{letter-spacing:.17em;color:#ae6745;margin:0 0 5px;font-size:10px}h1{letter-spacing:-.07em;margin:0;font-size:34px;font-weight:900;line-height:1.25}h1 span{color:#b76c47}.tagline{color:#847368;letter-spacing:.03em;margin:10px 0 18px;font-size:12px}.scoreboard{text-align:center;gap:22px;display:flex}.scoreboard span{color:#8b7c70;font-size:10px;display:block}.scoreboard strong{font-family:Georgia,serif;font-size:32px;font-weight:400;line-height:1.15}.scoreboard div+div strong{color:#a98;font-size:25px}.game{background:#efe7d7;border:1px solid #cfc5b8;border-radius:22px;position:relative;overflow:hidden;box-shadow:0 5px #e9e0d2}.stage-top{z-index:1;pointer-events:none;justify-content:space-between;gap:8px;font-size:11px;font-weight:700;display:flex;position:absolute;top:17px;left:20px;right:20px}.stage-top span:first-child{letter-spacing:.08em;color:#756a5c}.stage-top span:last-child{color:#9b663c;background:#fff9e9dd;border-radius:20px;margin-top:-5px;padding:5px 10px}.stage-top span.passed{color:#467d66}.stage-top span.urgent{color:#a35438;background:#fff0d4}.stage-top span.failed{color:#a4544a}canvas{aspect-ratio:1;touch-action:none;cursor:grab;width:100%;height:auto;display:block}canvas.dragging{cursor:grabbing}.stage-caption{color:#8c7d6c;pointer-events:none;justify-content:center;align-items:center;gap:7px;font-size:10px;display:flex;position:absolute;bottom:14px;left:0;right:0}.dashed-icon{border:1px dashed #7e7468;border-radius:2px;width:16px;height:12px}.pause-layer{z-index:2;background:#f8f3e8e8;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.pause-layer p{font-size:24px;font-weight:700}.pause-layer button{color:#fff;background:#435a50;border-radius:14px;min-height:48px;padding:14px 38px}.control-panel{padding:13px 2px 0}.shape-row{white-space:nowrap;align-items:center;gap:10px;font-size:11px;font-weight:700;display:flex}input[type=range]{accent-color:#b4754e;cursor:ew-resize;touch-action:pan-y;flex:1;min-width:40px;height:44px;margin:0}.quiet{color:#80715f;background:0 0;border:1px solid #d5c9b7;border-radius:10px;min-height:44px;padding:0 12px;font-size:11px}.actions{gap:10px;display:flex}.actions button{border-radius:14px;min-height:50px;font-size:14px;font-weight:700}.primary{color:#fffaf0;background:#3f554c;flex:1;justify-content:center;align-items:center;gap:22px;display:flex;box-shadow:0 3px #d7ddcf}.secondary{color:#6c6053;background:#ede5d8;border:1px solid #daceba;padding:0 20px}#status{text-align:center;color:#776653;min-height:20px;margin:3px 0 12px;font-size:12px;line-height:1.5}.hint{text-align:center;color:#887867;margin:16px 0 8px;font-size:11px;line-height:1.7}details{color:#8d7c6a;text-align:center;font-size:11px}summary{cursor:pointer;min-height:32px;padding:7px}details p{margin:6px;line-height:1.9}footer{color:#ac9e8d;letter-spacing:.07em;justify-content:space-between;margin-top:20px;font-size:9px;display:flex}@media (min-width:700px){.app{max-width:530px;padding-top:14px}.masthead{padding-bottom:10px}.title-row{margin-top:12px}h1{font-size:30px}.tagline{margin-bottom:12px}.game{width:min(100%,100dvh - 307px);min-width:290px;margin:auto}.control-panel{padding-top:8px}footer{margin-top:9px}.hint{margin-top:12px}}@media (max-width:420px){.app{padding:15px 15px 12px}.title-row{margin-top:15px}h1{font-size:29px}.scoreboard{gap:15px}.tagline{margin-bottom:14px;font-size:11px}.stage-top{font-size:10px;top:15px;left:14px;right:14px}.shape-row{gap:8px}.hint{font-size:10px}.secondary{padding:0 13px}.stage-caption{font-size:9px;bottom:12px}footer{margin-top:13px}}@media (max-width:350px){.app{padding:12px 10px}h1{font-size:26px}.scoreboard{gap:10px}.scoreboard strong{font-size:27px}.tagline{letter-spacing:0;font-size:10px}.stage-top span:last-child{padding:5px 7px}.shape-row{gap:5px}.quiet{padding:0 9px}#status{font-size:11px}}.quiet{min-width:48px}.stage-caption{background:#fff9ebce;border-radius:8px;width:max-content;max-width:95%;margin:auto;padding:3px 7px}@media (prefers-reduced-motion:reduce){button:active:not(:disabled){transform:none}}#countdown{font-variant-numeric:tabular-nums;white-space:nowrap}#status{justify-content:center;align-items:center;min-height:36px;display:flex}@media (min-width:700px){.game{width:min(100%,100dvh - 330px)}}
