@font-face{font-family:Bricolage;src:url(../fonts/bricolage-latin.woff2) format("woff2");font-weight:400 800;font-style:normal;font-display:swap}:root{font-family:Bricolage,PingFang SC,Microsoft YaHei,sans-serif;color:var(--ink);background:var(--page);font-synthesis:none;-webkit-font-smoothing:antialiased;--page: #faf7ef;--surface: #fffdf8;--ink: #302f2b;--muted: #686459;--line: #dfdbd0;--accent: #ad3855;--accent-hover: #932b45;--accent-soft: #f5e3e5;--positive: #366448;--positive-soft: #e7eee2;--focus: #265d87;--gold: #eabb57;--game-bg: #e9ede3;--s1: .75rem;--s2: .875rem;--s3: 1rem;--s4: 1.25rem;--s5: 2rem;--s6: 3.5rem}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button,a{touch-action:manipulation}button{border:0}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid var(--focus);outline-offset:4px}button:disabled{cursor:default;opacity:.5}button svg,a svg{flex-shrink:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:800;text-wrap:balance}p{line-height:1.5}svg{display:inline-block;vertical-align:middle}button,a{-webkit-user-select:none;user-select:none}.wrap{max-inline-size:1264px;margin-inline:auto;padding-inline:40px}.site-header{min-block-size:102px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-block-end:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:var(--s4);font-weight:800;line-height:1.25}.brand>svg{width:44px;height:44px}.brand-sub{display:block;font-size:var(--s1);font-weight:400;color:var(--muted);margin-block-start:4px}.utilities{display:flex;align-items:center;gap:16px}.utility{background:transparent;min-inline-size:44px;min-block-size:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;font-size:var(--s2);font-weight:600;padding:8px}.help{margin-inline-start:2px}.intro{display:flex;align-items:center;justify-content:space-between;padding-block:37px 30px;gap:24px}.intro h1{font-size:var(--s6);line-height:1.05;letter-spacing:-.055em}.intro h1 span{color:var(--accent)}.intro p{margin-block-start:12px;color:var(--muted);font-size:var(--s3);line-height:1.5}.best{display:flex;align-items:center;gap:12px;color:var(--muted);flex-shrink:0;padding-inline-end:4px;font-size:var(--s2)}.best>svg{color:#9a7435}.best strong{display:block;font-size:var(--s5);color:var(--ink);line-height:1.2;font-weight:800;font-variant-numeric:tabular-nums}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:32px;align-items:start}.game-shell{border:1px solid var(--line);border-radius:16px;background:var(--surface);min-inline-size:0;scroll-margin-top:16px}.game-hud{display:flex;justify-content:space-between;gap:20px;padding:21px 28px 18px;align-items:center}.stat>span{font-size:var(--s1);color:var(--muted);display:block;margin-block-end:5px}.stat>strong{font-size:var(--s5);line-height:1;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.035em}.stat>strong small{font-size:var(--s4);font-weight:600;margin-inline-start:1px}.stat.combo{margin-inline-start:auto}.stat.combo,.stat.blocks{min-inline-size:70px}.combo-active{color:var(--accent)}.stat.hearts{min-inline-size:84px}.heart-row{display:flex;gap:5px;align-items:center;min-block-size:32px}.stage{position:relative;isolation:isolate;background:var(--game-bg);border-block:1px solid var(--line)}canvas{display:block;inline-size:100%;block-size:420px;touch-action:none}.stage-label{position:absolute;inset-block-start:20px;inset-inline-start:24px;display:flex;align-items:center;gap:9px;pointer-events:none;font-size:var(--s2);font-weight:600;color:#4d5c4c}.stage-label small{display:block;font-size:var(--s1);font-weight:400;line-height:1.4;margin-block-start:3px}.level-marker{font-size:var(--s1);font-variant-numeric:tabular-nums;border-inline-end:1px solid #afbba6;padding-inline-end:9px}.pause-button{position:absolute;inset-block-start:14px;inset-inline-end:16px;display:grid;place-items:center;min-inline-size:44px;min-block-size:44px;border-radius:8px;background:var(--surface)}.progress-area{padding:19px 28px 0}.progress-label{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:var(--s1);color:var(--muted);line-height:1.5}.progress-label>span:first-child{display:flex;align-items:center;gap:5px}.progress-label strong{font-weight:600;color:var(--ink)}progress{appearance:none;-webkit-appearance:none;display:block;inline-size:100%;block-size:8px;border:0;border-radius:8px;background:#ebe7dd;overflow:hidden;margin-block-start:9px;color:var(--accent)}progress::-webkit-progress-bar{background:#ebe7dd;border-radius:8px}progress::-webkit-progress-value{background:var(--accent);border-radius:8px}progress::-moz-progress-bar{background:var(--accent);border-radius:8px}.game-actions{display:flex;align-items:center;gap:18px;padding:22px 28px 23px}.primary{background:var(--accent);color:#fffdf8;border-radius:9px;min-block-size:50px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 21px;font-size:var(--s3);font-weight:600;touch-action:none;flex-shrink:0}.primary kbd{font-size:var(--s1);font-family:inherit;font-weight:400;border:1px solid #d88c9f;border-radius:4px;padding:3px 5px;line-height:1;margin-inline-start:6px;color:#fffdf8}.control-hint{font-size:var(--s1);line-height:1.6;color:var(--ink)}.control-hint small{font-size:inherit;display:block;color:var(--muted)}.share-button{display:inline-flex;gap:7px;align-items:center;justify-content:center;margin-inline-start:auto;min-block-size:44px;flex-shrink:0;font-size:var(--s1);border-radius:6px}.sidebar{padding-block-start:4px}.section-title{display:flex;gap:8px;align-items:center}.live-dot{inline-size:7px;block-size:7px;background:var(--accent);flex-shrink:0}.sidebar h2{font-size:var(--s3);line-height:1.5;letter-spacing:-.015em}.live-sub{color:var(--muted);font-size:var(--s1);margin-block-start:4px;margin-inline-start:15px}.telemetry{margin:22px 0 17px;padding-block:0 17px;border-block-end:1px solid var(--line)}.telemetry>div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-block-size:39px}.telemetry dt{font-size:var(--s2);color:var(--muted)}.telemetry dd{margin:0;font-size:var(--s3);font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;text-align:end}.telemetry dd small{font-size:var(--s1);font-weight:400;color:var(--muted)}.telemetry dd.state{display:flex;align-items:center;gap:7px;font-size:var(--s1);font-weight:600;border-radius:5px;padding:5px 8px;background:#eeebe2;color:#625c4f}.status-dot{inline-size:5px;block-size:5px;border-radius:50%;background:currentColor}.telemetry dd.SPINNING{color:var(--positive);background:var(--positive-soft)}.telemetry dd.solo{color:var(--muted)}.bonus{display:flex;align-items:flex-start;gap:9px;padding:13px 12px;background:#eeeae0;border-radius:8px;color:var(--muted)}.bonus>svg{margin-block-start:2px;inline-size:17px;block-size:17px;flex-shrink:0}.bonus strong{font-size:var(--s1);color:var(--ink);font-weight:600}.bonus p{font-size:var(--s1);margin-block-start:3px;line-height:1.5;max-inline-size:28ch}.bonus.boosted{background:var(--positive-soft);color:var(--positive)}.polling{margin-block-start:12px;display:flex;align-items:center;gap:6px;color:var(--muted);font-size:var(--s1)}.tiny-dot{width:4px;height:4px;background:var(--muted);border-radius:50%}.guide{margin-block-start:32px;padding-block-start:25px;border-block-start:1px solid var(--line)}.guide ol{padding:0;margin:18px 0 0;list-style:none;display:grid;gap:22px}.guide li{display:flex;align-items:flex-start;gap:12px}.guide-icon{display:grid;place-items:center;inline-size:32px;block-size:32px;flex-shrink:0;color:#7b6550}.guide h3{font-size:var(--s2);font-weight:600;line-height:1.5}.guide p{font-size:var(--s1);color:var(--muted);line-height:1.65;margin-block-start:4px}.under-game{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:var(--s1);line-height:1.5;color:var(--muted);padding-block:18px 0}.under-game>span:first-child{display:flex;align-items:center;gap:6px;flex-shrink:0}.site-footer{margin-block-start:36px;min-block-size:76px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:var(--s1);color:var(--muted);border-block-start:1px solid var(--line)}.footer-seed{margin-inline-start:5px}.site-footer a{display:flex;align-items:center;gap:5px;min-block-size:44px}.stage-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#e9ede3b8;padding:20px}.result-panel{text-align:center;background:var(--surface);padding:28px 30px;border-radius:12px;max-inline-size:370px}.result-panel>svg{color:var(--accent);margin-block-end:10px}.result-panel h2{font-size:var(--s5);line-height:1.1;letter-spacing:-.035em}.result-panel p{font-size:var(--s2);color:var(--muted);line-height:1.5;margin-block-start:10px}.result-score{display:block;font-size:var(--s5);font-weight:800;margin-block-start:20px}.result-score small{font-size:var(--s1);font-weight:400;color:var(--muted)}.new-best{display:block;font-size:var(--s1);color:var(--accent);margin-block-start:5px}.block-toast{position:absolute;inset-block-start:30%;inset-inline-start:50%;transform:translate(-50%);background:var(--surface);border-radius:10px;padding:13px 20px;text-align:center;white-space:nowrap;font-size:var(--s4);font-weight:800;color:var(--accent)}.block-toast>svg{margin-inline-end:6px}.block-toast small{font-size:var(--s1);font-weight:400;display:block;color:var(--muted);margin-block-start:4px}.help-dialog{border:0;border-radius:16px;padding:0;color:var(--ink);background:var(--surface);inline-size:min(500px,calc(100% - 32px));max-block-size:calc(100% - 40px);overscroll-behavior:contain}.help-dialog::backdrop{background:#302f2b99}.dialog-content{padding:26px}.dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-block-end:18px}.dialog-content h2{font-size:var(--s5);letter-spacing:-.035em;line-height:1.1}.dialog-content p,.dialog-content li{font-size:var(--s2);line-height:1.6;color:var(--muted)}.dialog-content>p{margin-block-start:12px}.dialog-content ul{padding-inline-start:20px;margin-block:20px;display:grid;gap:12px}.dialog-content .dialog-note{padding-block:16px;border-block-start:1px solid var(--line);font-size:var(--s1)}.dialog-content .primary{inline-size:100%;margin-block-start:8px}.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip{position:absolute;inset-block-start:-100px;inset-inline-start:16px;padding:12px;background:var(--surface);z-index:10;font-size:var(--s2)}.skip:focus{inset-block-start:12px}@media(hover:hover){.utility:hover{background:#eeebe2}.primary:hover{background:var(--accent-hover)}.share-button:hover,.site-footer a:hover{color:var(--accent)}.pause-button:hover{background:#f1eee5}}@media(prefers-reduced-motion:no-preference){button,.share-button{transition:background-color .12s,color .12s,transform .12s}button:active{transform:scale(.96)}}@media(min-width:1440px){.wrap{max-inline-size:1344px;padding-inline:48px}canvas{block-size:456px}.intro{padding-block:40px 34px}.game-layout{gap:40px;grid-template-columns:minmax(0,1fr) 296px}.site-header{min-block-size:108px}.game-actions{gap:20px}}@media(max-width:1100px){.wrap{padding-inline:28px}.game-layout{grid-template-columns:minmax(0,1fr) 256px;gap:24px}.intro h1{font-size:var(--s6)}.control-hint{display:none}.game-actions{gap:14px}.guide ol{gap:18px}.telemetry dt{font-size:var(--s1)}}@media(max-width:850px){.game-layout{grid-template-columns:minmax(0,1fr);gap:28px}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding-block-start:0}.guide{margin:0;border:0;padding:0}.intro h1{font-size:var(--s6)}.intro p{max-inline-size:35ch}.control-hint{display:block}.under-game{align-items:flex-start}.under-game>span:last-child{text-align:end;max-inline-size:40ch}.site-footer{margin-block-start:28px}canvas{block-size:420px}}@media(max-width:600px){.wrap{padding-inline:20px}.site-header{min-block-size:80px;gap:12px}.brand{font-size:var(--s4);gap:8px}.brand>svg{inline-size:35px;block-size:35px}.brand-sub{display:none}.utilities{gap:3px}.utility{padding:8px;gap:5px}.utility.sound span{display:none}.help{margin:0}.language{font-size:var(--s1)}.language svg{display:none}.intro{padding-block:24px 22px;gap:12px;align-items:flex-start}.intro h1{font-size:var(--s5);letter-spacing:-.045em;line-height:1.08}.intro h1 span{display:block}.intro p{font-size:var(--s2);max-inline-size:25ch;margin-block-start:10px;line-height:1.5}.best{padding:3px 0 0;gap:7px;font-size:var(--s1)}.best>svg{inline-size:17px;block-size:17px}.best strong{font-size:var(--s4);margin-block-start:3px}.game-shell{border-radius:12px}.game-hud{padding:17px 18px 15px;gap:14px}.stat>span{font-size:var(--s1);margin-block-end:5px}.stat>strong{font-size:var(--s5)}.stat.combo,.stat.blocks{min-inline-size:36px}.stat.hearts{min-inline-size:64px}.heart-row{gap:3px}.heart-row svg{inline-size:18px;block-size:18px}canvas{block-size:302px}.stage-label{inset-block-start:14px;inset-inline-start:15px;font-size:var(--s1)}.stage-label small{font-size:var(--s1);max-inline-size:24ch}.level-marker{display:none}.progress-area{padding:15px 18px 0}.progress-label{font-size:var(--s1)}.seed-word{display:none}.game-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:13px 18px;padding:18px}.game-actions .primary{inline-size:100%;min-block-size:48px;padding-inline:16px;gap:8px}.game-actions .primary kbd{display:none}.control-hint{grid-column:1/-1;grid-row:2;text-align:center;font-size:var(--s1);line-height:1.6}.control-hint small{display:inline;margin-inline-start:4px}.share-button{font-size:var(--s1);margin:0;min-inline-size:90px}.game-layout{gap:27px}.sidebar{display:block}.guide{margin-block-start:25px;padding-block-start:24px;border-block-start:1px solid var(--line)}.guide ol{gap:17px}.guide p,.guide h3{font-size:var(--s2)}.guide-icon{inline-size:34px}.live-sub{font-size:var(--s1)}.telemetry{margin-block:15px}.telemetry>div{min-block-size:36px}.telemetry dt{font-size:var(--s2)}.bonus p{max-inline-size:35ch}.under-game{display:grid;gap:8px;padding-block-start:20px}.under-game>span:last-child{text-align:start;max-inline-size:none}.site-footer{min-block-size:72px;margin-block-start:24px;font-size:var(--s1)}.result-panel{padding:23px 20px;max-inline-size:290px}.result-panel h2{font-size:var(--s5)}.result-panel p{font-size:var(--s1)}.result-score{margin-block-start:14px}.pause-button{inset-block-start:8px;inset-inline-end:8px}.block-toast{font-size:var(--s3);padding:10px 13px}.dialog-content{padding:22px}}@media(max-width:359px){.wrap{padding-inline:14px}.brand{gap:6px}.brand>svg{inline-size:28px;block-size:28px}.brand{font-size:var(--s3)}.utilities{gap:0}.utility{min-inline-size:38px}.intro{gap:10px}.intro h1{font-size:var(--s5)}.best{display:block;text-align:end}.best>svg{display:none}.game-hud{padding-inline:14px;gap:10px}.stat>strong{font-size:var(--s4)}.heart-row{min-block-size:24px}.stage-label small{max-inline-size:21ch}canvas{block-size:275px}.game-actions{padding:15px;gap:12px}.share-button{min-inline-size:80px}.control-hint small{display:block;margin-inline-start:0}.progress-area{padding-inline:14px}}@media(forced-colors:active){button,a{forced-color-adjust:auto}.primary,.game-shell{border:1px solid ButtonText}.status-dot,.live-dot{background:CanvasText}progress{appearance:auto}}.wheel-ticker{display:none}@media(max-width:600px){.site-header{min-block-size:72px}.intro{padding-block:20px 18px}.game-hud{padding-block:14px 12px}.stage-label small{display:none}.wheel-ticker{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 18px;background:#f0eee5;border-block-start:1px solid var(--line);color:var(--muted);font-size:var(--s1);font-variant-numeric:tabular-nums}.wheel-ticker>span:first-child{display:flex;align-items:center;gap:6px}.wheel-ticker>span{min-inline-size:0;overflow-wrap:anywhere}canvas{block-size:280px}}@media(max-width:359px){canvas{block-size:260px}.wheel-ticker{padding-inline:14px}.control-hint small{display:block}}
