:root{--wall: #cdd4ee;--wall-hi: #d8def3;--wall-lo: #bcc5e6;--ink-0: #151a2e;--orange: #ff5a1f;--green: #0f8f6c;--ice: #cfe0ff;--screen: #f3f4ef;--tile: #e6e8ee;--card: #fbfbfd;--paper: var(--wall);--ink: var(--ink-0);--mute: #4d5470;--right: var(--green);--accent: var(--orange);--dot: var(--orange);--sans: "Inter", "Noto Sans SC", -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", sans-serif;--button-font: var(--sans);--token-face: radial-gradient(circle at 34% 28%, #ffffff 0%, #f4f4f2 48%, #dcdee6 100%);--token-side: #b3b9cf;--token-side-dark: #959cb6;--token-drop: rgba(21, 26, 46, .3)}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden}body{background:linear-gradient(180deg,var(--wall-hi) 0%,var(--wall) 62%,var(--wall-lo) 100%) fixed;background-color:var(--wall);color:var(--ink);font-family:var(--sans);font-feature-settings:"tnum" 1,"cv11" 1;-webkit-font-smoothing:antialiased;text-autospace:normal;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}.stage{position:fixed;top:0;right:0;bottom:0;left:0;touch-action:pan-y}.stage canvas{display:block}.play-brand{font-weight:700;letter-spacing:-.01em}.play-title{font-weight:700;letter-spacing:-.025em;font-size:clamp(24px,6.2vw,38px)}:lang(zh) .play-title{letter-spacing:.01em}.play-line{margin-top:8px;font-size:15px;color:var(--mute);font-variant-numeric:tabular-nums}.readout:empty{display:none}.readout{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:8px}.verdict--right{color:var(--green)}.verdict--wrong{color:var(--orange)}.clock{font-size:22px;font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--ink)}.clock__note{font-size:12.5px;color:var(--mute)}.fact{display:inline-flex;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:2px 8px;font-size:16px;font-variant-numeric:tabular-nums;color:var(--mute)}.fact__you{font-size:19px;color:var(--ink)}.fact i{font-style:normal;color:color-mix(in srgb,var(--ink) 30%,transparent)}.reason{display:inline-flex;align-items:center;gap:10px;font-size:12.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}:lang(zh) .reason{letter-spacing:.08em}.reason:before,.reason:after{content:"";width:22px;height:1px;background:currentColor;opacity:.6}.rankline{max-width:28em;font-size:14px;line-height:1.5;color:var(--ink)}.rankline b{color:var(--orange)}.screen{position:fixed;left:0;top:0;z-index:1;width:0;height:0;border-radius:4.6%;overflow:hidden;background:var(--screen);touch-action:none;transform-origin:0 0;box-shadow:inset 0 1px 6px #151a2e1f;--u: 1}body.no-webgl .screen{display:none}.screen__svg{display:block;width:100%;height:100%;overflow:visible}.screen.is-in .screen__svg{animation:screen-in .24s ease-out both}@keyframes screen-in{0%{opacity:0;transform:scale(.97)}}.screen .ink{fill:var(--ink)}.screen .line,.sheet .line,.screen svg .line{fill:none;stroke:var(--ink);stroke-linecap:round;stroke-linejoin:round}.screen .cut,.sheet .cut{fill:var(--screen)}.screen .lamp,.sheet .lamp{fill:#c8ccd9}.sheet .ink{fill:var(--ink)}.faint{opacity:.2}.tile{fill:var(--tile)}.press__halo{fill:none;stroke:color-mix(in srgb,var(--orange) 30%,transparent);stroke-width:2;stroke-dasharray:4 8;transform-origin:150px 150px;animation:halo-turn 8s linear infinite}.press__arrow{fill:none;stroke:var(--ink);stroke-width:14;stroke-linecap:round;stroke-linejoin:round;animation:arrow-bob 1.1s ease-in-out infinite}.press.is-poke .press__arrow{animation:arrow-poke .35s ease-out,arrow-bob 1.1s .35s ease-in-out infinite}.press.is-done .press__arrow{animation:none;stroke:var(--green)}@keyframes arrow-bob{50%{transform:translateY(10px)}}@keyframes arrow-poke{40%{transform:translateY(22px)}}@keyframes halo-turn{to{transform:rotate(360deg)}}.sample{fill:var(--ink)}.sample__icon .ink{fill:var(--screen)}.sample__icon .line{stroke:var(--screen)}.sample__icon .cut,.sample__icon .lamp{fill:var(--ink)}.tile-g{cursor:pointer}.tile-g>g:first-of-type,.tile-g .tile{transition:transform .16s cubic-bezier(.3,1.6,.5,1)}.tile__ring{fill:none;stroke:var(--orange);stroke-width:4;opacity:0;transition:opacity .12s}.tile__tick{opacity:0;transform-box:fill-box;transition:opacity .12s}.tile__tick circle{fill:var(--orange)}.tile__tick path{fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.tile-g.is-on .tile__ring,.tile-g.is-on .tile__tick{opacity:1}.tile-g.is-on .tile{fill:color-mix(in srgb,var(--orange) 10%,var(--tile))}.tile-g.is-right:not(.is-on) .tile__ring{opacity:1;stroke:var(--green);stroke-dasharray:6 5}.tile-g.is-wrong .tile__ring{stroke-dasharray:3 4}.tile-g.is-wrong .tile__tick circle{fill:var(--ink)}.pic-sky{fill:#e4e8f6}.pic-sun{fill:#c3cae6}.pic-far{fill:#a9b2d6}.pic-mid{fill:#7a84b0}.pic-near{fill:#414a74}.gap{fill:#151a2e6b;stroke:#ffffffb3;stroke-width:1.5}.gap.is-right{stroke:var(--green);stroke-width:3;stroke-dasharray:5 4}.piece{filter:drop-shadow(0 3px 4px rgba(21,26,46,.35));cursor:grab}.piece__edge{fill:none;stroke:var(--orange);stroke-width:3;stroke-linejoin:round}.piece.is-held{filter:drop-shadow(0 6px 8px rgba(21,26,46,.4))}.rail{stroke:color-mix(in srgb,var(--ink) 14%,transparent);stroke-width:8;stroke-linecap:round}.rail__done{stroke:color-mix(in srgb,var(--orange) 45%,transparent);stroke-width:8;stroke-linecap:round}.knob circle{fill:var(--orange);filter:drop-shadow(0 2px 3px rgba(21,26,46,.3))}.knob path{fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.dial{fill:none;stroke:color-mix(in srgb,var(--ink) 12%,transparent);stroke-width:10}.dial__face{fill:var(--tile)}.dial__knob circle{fill:var(--orange);filter:drop-shadow(0 2px 3px rgba(21,26,46,.3))}.dial__goal path{stroke:color-mix(in srgb,var(--ink) 30%,transparent);stroke-width:3;stroke-linecap:round}.dial__goal.is-on path{stroke:var(--green);stroke-width:5}.dial__mark path{stroke:var(--orange);stroke-width:3;stroke-dasharray:3 4;stroke-linecap:round}.cell{cursor:pointer}.cell .tile__ring{opacity:0}.cell.is-on .tile__ring{opacity:1}.cell.is-right .tile__ring{opacity:1;stroke:var(--green)}.cell.is-wrong .tile__ring{stroke:var(--orange);stroke-dasharray:3 4}.home__ring{fill:var(--tile);stroke:color-mix(in srgb,var(--ink) 30%,transparent);stroke-width:2.5;stroke-dasharray:5 5}.home__start{fill:color-mix(in srgb,var(--orange) 35%,transparent)}.home__path{fill:none;stroke:var(--orange);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;opacity:.7}.dot{cursor:grab}.dot__halo{fill:color-mix(in srgb,var(--orange) 16%,transparent);transition:r .2s}.dot__body{fill:var(--orange);filter:drop-shadow(0 2px 3px rgba(21,26,46,.3))}.dot__eye{fill:#fff}.dot.is-held .dot__halo{r:32px}.dot.is-home .dot__halo{fill:color-mix(in srgb,var(--green) 22%,transparent)}.trail__line{fill:none;stroke:var(--orange);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;opacity:.8;stroke-dasharray:1;stroke-dashoffset:0}.screen[data-check=trail] .trail__line{animation:trail-draw 2.2s cubic-bezier(.4,0,.2,1) both}.trail__tap{fill:var(--orange);opacity:.85}@keyframes trail-draw{0%{stroke-dashoffset:1}}.screen__scan{position:absolute;left:0;right:0;top:0;height:18%;pointer-events:none;opacity:0;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--ice) 85%,transparent) 70%,#9fbcf5 100%);transform:translateY(-100%)}.screen__scan.is-on{animation:scan .6s cubic-bezier(.45,0,.3,1) both}@keyframes scan{0%{opacity:.95;transform:translateY(-100%)}85%{opacity:.95}to{opacity:0;transform:translateY(560%)}}@media(prefers-reduced-motion:reduce){.press__halo,.press__arrow,.screen.is-in .screen__svg,.screen[data-check=trail] .trail__line,.screen__scan.is-on{animation:none!important}}.next__disc svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.next__label{font-weight:600;letter-spacing:.02em}.sound-toggle{position:absolute;top:calc(14px + env(safe-area-inset-top));right:62px;display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:50%;background:var(--card);color:var(--ink);box-shadow:0 0 0 1px #151a2e24,0 2px 6px #151a2e14;cursor:pointer;pointer-events:auto}.sound-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.sound-toggle .cross,.sound-toggle.is-off .wave{display:none}.sound-toggle.is-off .cross{display:inline}.sound-toggle.is-off{color:var(--mute)}.wa-lang{--wa-lang-paper: var(--card);--wa-lang-ink: var(--ink)}body.no-webgl .play-head{top:30vh}body[data-phase=intro] .readout{order:-1;margin:0 0 10px}.story__kicker{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}:lang(zh) .story__kicker{letter-spacing:.08em}.story__tale{max-width:25em;font-size:15px;line-height:1.55;color:var(--ink);text-wrap:pretty}body[data-phase=intro] .play-title{color:var(--ink)}body[data-phase=intro] .play-line{color:var(--ink);font-size:14px}body[data-phase=checkpoint] .readout{margin:12px 0 2px;gap:4px}.tally--row{display:inline-grid;grid-template-columns:7em 1.6em 4.2em;align-items:baseline;gap:8px;font-size:15px;font-variant-numeric:tabular-nums}.tally--row span{text-align:right;color:var(--mute)}.tally--row b{text-align:left}.tally--row b.ok{color:var(--green)}.tally--row b.no{color:var(--orange)}.twist{display:block;max-width:24em;margin:0 auto;font-size:14px;line-height:1.5;color:var(--ink)}.sheet-scroll{position:fixed;top:0;right:0;bottom:0;left:0;z-index:61;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;pointer-events:none;scrollbar-width:none}.sheet-scroll::-webkit-scrollbar{display:none}.sheet-scroll[hidden]{display:none}.sheet{position:relative;width:min(100% - 20px,460px);margin:0 auto 24px;padding:6px 20px calc(28px + env(safe-area-inset-bottom));border-radius:16px 16px 18px 18px;background:var(--card);color:var(--ink);box-shadow:0 -10px 30px -12px #151a2e4d,0 20px 40px -20px #151a2e59;pointer-events:auto;user-select:text;-webkit-user-select:text;overflow:hidden}.sheet__tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;margin:0;padding:12px 0 6px;border:0;background:none;color:var(--mute);font:inherit;font-size:13px;letter-spacing:.06em;cursor:pointer}.sheet__tab:before{content:"";display:block;width:36px;height:4px;margin:0 auto 8px;border-radius:2px;background:color-mix(in srgb,var(--ink) 22%,transparent)}.sheet__top{display:flex;justify-content:space-between;padding:10px 0 8px;border-bottom:1.5px solid var(--ink);font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.sheet__top span:last-child{font-weight:400;letter-spacing:.02em;color:var(--mute)}.sheet__head{padding:18px 0 6px;text-align:center}.sheet__head p{margin:0}.sheet__kind{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--green)}.sheet__title{margin-top:4px!important;font-size:22px;font-weight:700;letter-spacing:-.015em}.sheet__big{display:flex;justify-content:center;align-items:baseline;gap:22px;margin-top:10px!important}.sheet__big span{display:flex;flex-direction:column;font-size:12px;color:var(--mute)}.sheet__big b{font-size:clamp(44px,13vw,58px);font-weight:800;letter-spacing:-.04em;line-height:1.05;color:var(--ink)}.sheet__big .you b{color:var(--orange)}.sheet__rank{margin-top:10px!important;font-size:14px!important;line-height:1.5!important}.sheet__rank b{color:var(--orange)}.sheet__vs{margin-top:10px!important;display:inline-block;padding:5px 12px;border-radius:999px;background:color-mix(in srgb,var(--orange) 10%,#fff);font-size:13px}.sheet section{padding:14px 0 10px;border-top:1px solid color-mix(in srgb,var(--ink) 14%,transparent);margin-top:10px}.sheet h2{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}.sheet p{font-size:14px;line-height:1.55}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:12px;text-align:center}.stat b{display:block;font-size:24px;font-weight:800;line-height:1.1;letter-spacing:-.02em}.stat.hot b{color:var(--orange)}.stat span{font-size:11px;color:var(--mute)}.rows{display:grid;gap:6px}.row{display:grid;grid-template-columns:40px 1fr auto 26px;align-items:center;gap:10px;padding:6px 8px;border-radius:10px;background:#f1f2f6}.row .pic{width:40px;height:40px;border-radius:8px;background:var(--screen)}.pic__key{fill:var(--orange)}.pic__frame{fill:#a9b2d6}.pic__dot{fill:var(--orange)}.row__name{display:flex;flex-direction:column;font-size:14px;font-weight:600}.row__name small{font-size:11.5px;font-weight:400;color:var(--mute)}.row__time{font-size:15px;font-variant-numeric:tabular-nums}.row__mark{font-style:normal;font-weight:800;text-align:center}.row.ok .row__mark{color:var(--green)}.row.no .row__mark{color:var(--orange)}svg.boxes{display:block;width:100%;height:auto;font-family:var(--sans);font-variant-numeric:tabular-nums}.boxes .grid{stroke:color-mix(in srgb,var(--ink) 10%,transparent)}.boxes .lab{font-size:10px;fill:var(--mute)}.boxes .name{font-size:10.5px;font-weight:600;fill:var(--ink)}.boxes .name--sub{font-weight:400;fill:var(--mute)}.boxes .whisk{stroke:color-mix(in srgb,var(--ink) 35%,transparent);stroke-width:1.4}.boxes .box{fill:#dfe3f2;stroke:color-mix(in srgb,var(--ink) 40%,transparent);stroke-width:1}.boxes .med{stroke:var(--ink);stroke-width:2}.boxes .bot{fill:var(--ink)}.boxes .you{fill:var(--orange);stroke:#fff;stroke-width:1.5}.boxes .you--miss{fill:#fff;stroke:var(--orange);stroke-width:2}.key{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin:8px 0 0;font-size:11px;color:var(--mute)}.key i{display:inline-block;width:10px;height:10px;margin-right:4px;vertical-align:-1px}.key i.k-box{border-radius:2px;background:#dfe3f2;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ink) 40%,transparent)}.key i.k-bot{width:8px;height:8px;background:var(--ink);transform:rotate(45deg)}.key i.k-you{border-radius:50%;background:var(--orange)}.trail-pic{display:block;width:min(100%,240px);margin:0 auto 6px}.trail-pic__bg{fill:var(--screen);stroke:color-mix(in srgb,var(--ink) 12%,transparent)}.src{margin:8px 0 0!important;font-size:11.5px!important;line-height:1.5!important;color:var(--mute)}.src a{color:inherit}.finds{margin:0;padding:0 0 0 1.1em;font-size:14px;line-height:1.55}.finds li+li{margin-top:6px}.dare{text-align:center}.dare p{margin:0 0 12px;font-size:16px}.dare__acts{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:18px}.fine{margin-top:14px;padding-top:10px;border-top:1px solid color-mix(in srgb,var(--ink) 12%,transparent)}.fine p{margin:0 0 6px;font-size:11.5px;line-height:1.5;color:var(--mute)}body[data-phase=summary] .play-dots,body[data-phase=watch] .play-dots{display:none}.share-sheet{z-index:70}
