:root{--bg: #f2eee8;--card: #fffdfc;--panel: #e0d6c7;--chip: #ebe4d8;--primary: #d96c5f;--text: #28323a;--muted: #6e7478;--success: #4f8a68;--error: #c95656;--shadow: 0 12px 32px rgba(40, 50, 58, .12);--ticker-h: calc(46px + env(safe-area-inset-bottom)) }*{box-sizing:border-box}html,body,#app{margin:0;width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:PingFang SC,Hiragino Sans GB,Noto Sans SC,sans-serif;touch-action:manipulation;overscroll-behavior:none}button{font:inherit;color:inherit;cursor:pointer}[hidden]{display:none!important}.screen{position:absolute;inset:0;padding:24px 20px calc(16px + var(--ticker-h))}.home{display:flex;flex-direction:column;gap:16px;overflow-y:auto;padding-top:calc(16px + env(safe-area-inset-top))}.home-topbar{min-height:64px;display:flex;align-items:flex-start;justify-content:space-between}.mini-program-safe-area{display:block;width:174px;height:64px;flex:0 0 174px;pointer-events:none}.icon-gear{width:44px;height:44px;flex:0 0 44px;border:0;border-radius:22px;background:var(--chip)}.brain-slot{align-self:center;width:180px;height:180px;border-radius:90px;display:grid;place-items:center;background:#efe8de;color:var(--muted);font-size:13px}.score-chips{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.score-chips span,.hud-chip{background:var(--chip);border-radius:999px;padding:6px 12px;font-size:13px}.ability-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;background:var(--panel);padding:10px;border-radius:18px}.ability-cell{grid-column:span 2}.ability-cell:nth-child(4){grid-column:2 / span 2}.ability-cell:nth-child(5){grid-column:4 / span 2}.ability-cell{background:var(--card);border-radius:14px;padding:12px 8px;text-align:center}.ability-cell strong{display:block;font-size:22px}.ability-cell small{color:var(--muted)}.home-select{display:grid;grid-template-columns:1fr 1fr;gap:10px}.select-card{border:0;background:var(--card);border-radius:16px;padding:12px;text-align:center;box-shadow:var(--shadow)}.select-card small{display:block;color:var(--muted);margin-bottom:6px}.select-card strong{display:block;min-height:1.4em}.primary,.secondary{border:0;border-radius:16px;padding:14px;width:100%}.home-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}.rank-list{margin:0;padding-left:20px}.rank-list li{margin:8px 0}.fame-block{margin:12px 0}.fame-block h3{margin:0 0 6px;font-size:15px}.primary{background:var(--primary);color:#fff;margin-top:auto}.app-ticker{position:fixed;left:0;right:0;bottom:0;z-index:15;min-height:var(--ticker-h);padding:8px 16px calc(8px + env(safe-area-inset-bottom));display:grid;place-items:center;background:transparent;color:var(--muted);font-size:13px;line-height:1.4;text-align:center;pointer-events:none;transition:opacity .28s ease}.app-ticker.is-out{opacity:.35}.secondary{background:#f3d5c8}.play{padding:0;overflow:hidden}.play.is-climate{animation:play-climate 7s ease-in-out infinite}.play.is-paused-bg{animation-play-state:paused}@keyframes play-climate{0%,to{background:#a9c4dc}50%{background:#f6d4b6}}.scene-host,.board-host{position:absolute;inset:0;overflow:hidden}.board-host{display:flex;align-items:center;justify-content:center;padding:calc(106px + env(safe-area-inset-top)) 12px calc(16px + var(--ticker-h))}.schulte-wrap{position:relative;display:grid;place-items:center;width:100%;height:100%;min-height:0}.schulte-stage{position:relative;width:max-content;height:max-content}.board-schulte{display:grid;width:max-content;height:max-content;gap:4px}.schulte-frogs{position:absolute;inset:0;pointer-events:none;overflow:visible;z-index:4}.schulte-frog{position:absolute;width:var(--schulte-cell, 32px);height:var(--schulte-cell, 32px);display:grid;place-items:center;overflow:visible;font-size:calc(var(--schulte-cell, 32px) * 1.64);line-height:1;filter:drop-shadow(0 3px 2px rgba(40,50,58,.28))}.schulte-cell{position:relative;width:var(--schulte-cell, 32px);height:var(--schulte-cell, 32px);border:0;border-radius:10px;min-height:0;padding:0;background:transparent;transform-style:preserve-3d;transform:rotateY(180deg);transition:transform .38s ease;font-size:calc(var(--schulte-cell, 32px) * .42);font-weight:700}.schulte-cell.is-revealed{transform:rotateY(0)}.schulte-back,.schulte-front{position:absolute;inset:0;display:grid;place-items:center;border-radius:10px;backface-visibility:hidden}.schulte-wrap{perspective:900px}.schulte-back{background:#111;transform:rotateY(180deg)}.schulte-front{overflow:hidden;background:var(--card);color:var(--text);box-shadow:var(--shadow);transform:rotateY(0)}.schulte-spin{display:grid;place-items:center;width:100%;height:100%}.schulte-glyph{display:inline-block;line-height:1;transform-origin:center center;will-change:transform}.schulte-glyph u{text-decoration:underline;text-underline-offset:.12em;text-decoration-thickness:.08em}.schulte-cell.is-selected .schulte-front{outline:3px solid var(--primary)}.schulte-cell.is-wrong .schulte-front{outline:3px solid var(--error);background:#f3c4c0}.schulte-cell.is-dissolve{transition:transform .52s ease,opacity .52s ease;transform:rotateY(90deg) scale(.2);opacity:0}.schulte-intro,.schulte-error{position:absolute;inset:0;display:grid;place-content:center;gap:16px;background:#111;color:#fff;text-align:center;border-radius:16px;z-index:3;padding:24px}.schulte-intro p{margin:0;font-size:18px;font-weight:700}.schulte-start{width:auto;padding:12px 28px;margin:0 auto}.schulte-error{background:#111111eb;color:#ff8a8a;font-size:clamp(28px,8vw,42px);font-weight:800}.color-wrap{position:relative;display:grid;place-items:center;width:100%;height:100%;min-height:0;border-radius:18px;transition:background .8s ease}.color-hint{position:absolute;top:-36px;left:0;right:0;z-index:1;margin:0;text-align:center;font-weight:700;pointer-events:none}.color-grid{display:grid;width:max-content;height:max-content;gap:6px}.color-cell{position:relative;width:var(--color-cell, 36px);height:var(--color-cell, 36px);border:0;min-width:0;min-height:0;padding:0;overflow:hidden;box-shadow:var(--shadow)}.color-cell.is-square{border-radius:10px}.color-cell.is-round{border-radius:50%}.color-mark{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;display:block}.color-cell.is-pop{transform:scale(0);opacity:0;transition:transform .28s ease,opacity .28s ease}.color-cell.is-wrong{outline:3px solid var(--error)}.color-wrap.is-paused .spin-cw,.color-wrap.is-paused .spin-ccw{animation-play-state:paused}.color-cell.spin-cw{animation:color-cw 7s linear infinite}.color-cell.spin-ccw{animation:color-ccw 7s linear infinite}@keyframes color-cw{to{transform:rotate(360deg)}}@keyframes color-ccw{to{transform:rotate(-360deg)}}.color-wrap.is-paused,.reflex-wrap.is-paused,.seq-wrap.is-paused{pointer-events:none;opacity:.7}.reflex-wrap,.seq-wrap{position:relative;display:grid;width:min(96vw,100%);height:100%;max-height:calc(100dvh - 150px - var(--ticker-h))}.reflex-wrap{place-items:center}.reflex-grid{display:grid;width:max-content;height:max-content;gap:8px}.reflex-cell{position:relative;width:var(--reflex-cell, 36px);height:var(--reflex-cell, 36px);border:0;border-radius:16px;padding:0;overflow:hidden;background:#cbbba8;box-shadow:inset 0 6px 10px #28323a47;min-height:0;touch-action:none}.reflex-well{position:absolute;inset:10%;border-radius:12px;background:#9a8b7c;box-shadow:inset 0 4px 8px #28323a59}.reflex-mole{position:absolute;left:12%;right:12%;bottom:10%;height:78%;border-radius:14px 14px 10px 10px;transform:translateY(120%);transition:transform .18s ease;box-shadow:inset 0 2px #ffffff59,0 4px 6px #28323a33;pointer-events:none}.reflex-cell.is-up .reflex-mole{transform:translateY(0)}.reflex-cell.is-down .reflex-mole{transform:translateY(120%)}.reflex-cell.is-hot .reflex-mole{background:linear-gradient(#f3c27a,#e09b4a)}.reflex-cell.is-bomb .reflex-mole{background:radial-gradient(circle at 50% 38%,#e07070 0 36%,#c95656 38% 100%)}.reflex-cell.is-bomb .reflex-mole:after{content:"";position:absolute;left:50%;top:28%;width:28%;height:28%;border-radius:50%;transform:translate(-50%);background:#7a2f2f}.reflex-cell.is-pop{transform:scale(0);opacity:0}.clay-btn{border:0;border-radius:22px;padding:16px 12px;font-size:18px;font-weight:700;background:linear-gradient(#efe6da,#d8cbb8);box-shadow:inset 0 2px #f6efe6,0 6px #c4b49e}.seq-wrap{grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr auto auto;gap:8px}.seq-hint{margin:0;text-align:center;font-weight:700}.seq-chain{display:flex;flex-direction:column;gap:4px;align-items:stretch;justify-content:center;min-height:0;min-width:0;width:min(100%,calc(var(--seq-per-row) * 72px + (var(--seq-per-row) - 1) * 30px));max-width:100%;justify-self:center}.seq-row{display:flex;align-items:center;justify-content:flex-start;gap:6px}.seq-row.is-rtl{flex-direction:row-reverse;justify-content:flex-start}.seq-turn{display:grid;grid-template-columns:repeat(var(--seq-per-row),minmax(0,1fr));column-gap:30px;justify-items:center;width:100%}.seq-turn.is-ltr .seq-arrow{grid-column:-2}.seq-turn.is-rtl .seq-arrow{grid-column:1}.seq-arrow{flex:0 0 18px;width:18px;min-width:0;text-align:center;font-size:22px;font-weight:700;color:#d96c5f;line-height:1}.seq-grid{display:grid;gap:10px;min-height:0;align-content:center}.seq-cell{border:0;border-radius:18px;width:72px;min-width:0;min-height:0;flex:0 0 calc((100% - (var(--seq-per-row) - 1) * 30px) / var(--seq-per-row));aspect-ratio:1;padding:0;background:linear-gradient(#efe6da,#d4c4b0);box-shadow:inset 0 2px #f6efe6,0 5px #c4b49e;display:grid;place-items:center;gap:2px}.seq-cell.is-empty{background:linear-gradient(#e8ddd0,#d2c4b2)}.seq-icon{font-size:clamp(20px,6vw,32px);line-height:1}.seq-cell.is-lit{background:linear-gradient(#f3c27a,#e09b4a);transform:translateY(-6px)}.seq-cell.is-dim{opacity:.3}.seq-cell.is-current{outline:3px solid #e5a84b;box-shadow:0 0 0 4px #e5a84b47;transform:translateY(-4px)}.seq-cell.is-done{outline:3px solid var(--success)}.seq-cell.is-pop{outline:0;background:transparent;box-shadow:none}.seq-cell.is-wrong{outline:3px solid var(--error)}.seq-actions{display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap}.seq-actions .clay-btn{width:auto;padding:12px 18px}.seq-pace{font-weight:700}.seq-picks{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.seq-pick{width:min(18vw,64px);height:min(18vw,64px);min-height:0;padding:0;font-size:32px;display:grid;place-items:center;border-radius:18px}.seq-pick.is-used{opacity:.28;pointer-events:none}.seq-fly{position:fixed;z-index:40;pointer-events:none;font-size:32px;line-height:1;transform:translate(-50%,-50%)}.board-schulte.is-paused,.board-color.is-paused{pointer-events:none;opacity:.7}.board-color{display:grid;gap:16px;width:min(92vw,520px)}.color-prompt{margin:0;text-align:center;font-size:22px;font-weight:700}.scene-host canvas{width:100%;height:100%;display:block;touch-action:none}.hud{position:absolute;top:calc(12px + env(safe-area-inset-top));left:12px;right:12px;display:flex;gap:8px;align-items:flex-start;justify-content:space-between;pointer-events:none}.hud>*{pointer-events:auto}.hud-left{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%;min-width:0}.hud-chip.pause{display:inline-flex;align-items:center;gap:8px;background:#f3d5c8;width:max-content}.hud-chip.pause #hud-difficulty{font-weight:700}#hud-score{width:max-content;font-weight:700}.timer-hud{display:grid;gap:6px;min-width:64px}.timer-hud strong{color:#d96c5f;font-size:18px;font-weight:700}.timer-progress{height:6px;overflow:hidden;border-radius:3px;background:#d96c5f38}#timer-progress-value{display:block;width:100%;height:100%;background:#d96c5f;transform:scaleX(1);transform-origin:left center;transition:transform 80ms linear}.timer-hud.is-countup .timer-progress{display:none}.timer-hud.is-urgent strong{color:#c95656}.timer-hud.is-urgent #timer-progress-value{background:#c95656}.result-actions{margin-top:12px;display:grid;gap:8px;min-height:216px}.result-actions .primary{margin-top:0}.result-actions.is-wait{visibility:hidden;pointer-events:none}#pause-difficulty,#result-fame{width:100%;margin-top:0}.play-row.is-locked{opacity:.45;pointer-events:none}.diff-card.is-locked{pointer-events:none;background:#e4ddd3;color:var(--muted)}.diff-lock{position:absolute;top:4px;right:4px;padding:1px 6px;border-radius:999px;background:#c95656;color:#fff;font-size:10px;line-height:1.3}.hud-hearts{letter-spacing:2px;color:#c95656;font-size:18px}.hud-bottom{position:absolute;left:12px;right:12px;bottom:calc(8px + var(--ticker-h));display:flex;gap:8px;align-items:center;justify-content:center}#hud-remaining{position:absolute;left:0}.zoom{flex:0 1 280px;width:min(280px,70vw);display:flex;gap:8px;align-items:center;justify-content:center}.zoom button{width:44px;height:44px;flex:0 0 44px;border:0;border-radius:12px;background:var(--chip)}.zoom-track{position:relative;flex:1;height:10px;border-radius:999px;background:#d8cfc4;cursor:pointer}.zoom-fill{position:absolute;left:0;top:0;bottom:0;width:50%;border-radius:999px;background:#e5a84b;pointer-events:none}.zoom-thumb{position:absolute;top:50%;left:50%;width:18px;height:18px;border-radius:50%;background:#fffdfc;box-shadow:0 2px 6px #28323a33;transform:translate(-50%,-50%);pointer-events:none}.overlay{position:fixed;top:0;left:0;right:0;bottom:var(--ticker-h);background:#00000073;display:grid;place-items:center;padding:24px;z-index:20}.dialog{width:min(650px,100%);max-height:100%;overflow:auto;background:var(--panel);border-radius:24px;padding:20px;box-shadow:var(--shadow)}.play-dialog{display:flex;flex-direction:column;overflow:hidden;max-height:calc(100dvh - var(--ticker-h) - 48px)}.dialog-head{display:flex;justify-content:space-between;align-items:center}.play-dialog .dialog-head{justify-content:flex-end;margin:-4px 0 4px}.dialog h2{margin:0 0 12px}.text-btn{border:0;background:transparent;color:var(--muted)}.diff-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 10px;flex:0 0 auto}.diff-card,.play-row,.ability-mini{border:0;background:var(--card);border-radius:14px;padding:16px 12px;text-align:center}.diff-card{position:relative;min-height:48px;padding:10px 12px;display:flex;align-items:center;justify-content:center}.diff-card.is-on,.play-row.is-on,.ability-mini.is-on{outline:2px solid var(--primary)}.play-dialog #start-diff-title{flex:0 0 auto;margin:0 0 8px}.start-play-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:0 0 auto;margin:0 0 8px}.start-random{padding:4px 12px;border-radius:999px;background:var(--card);color:var(--text)}.play-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;margin:0 0 12px}.play-list{display:grid;gap:8px;margin:0}.play-dialog #start-confirm{flex:0 0 auto;margin-top:0}.play-row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left}.play-name{min-width:0}.play-ability{flex:0 0 auto;padding:1px 6px;border-radius:999px;background:#c95656;color:#fff;font-size:10px;line-height:1.3}.ability-picks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.hint{color:var(--muted)}.unlock-toast{position:fixed;left:50%;top:50%;z-index:30;transform:translate(-50%,-50%);max-width:min(86vw,320px);padding:14px 22px;border-radius:16px;background:var(--card);box-shadow:var(--shadow);color:var(--text);font-size:16px;font-weight:800;text-align:center;pointer-events:none}.unlock-toast.is-fly{animation:unlock-fly .7s ease forwards}@keyframes unlock-fly{to{opacity:0;transform:translate(-50%,calc(-50% - 88px))}}.row-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}.result-mark{width:64px;height:64px;border-radius:32px;display:grid;place-items:center;margin:0 auto 8px;background:var(--success);color:#fff;font-size:28px}.result-mark.is-fail{background:var(--error)}.result-abilities{display:grid;gap:8px;margin:12px 0 16px}.result-abilities div{display:flex;justify-content:space-between}.gain{color:var(--success)}.loss{color:var(--error)}.timer.is-urgent{background:#f3c4c0;color:var(--error)}.combo-hud{display:grid;gap:6px;min-width:108px;pointer-events:none}.combo-hud[hidden]{display:none!important}#combo-value{color:#4f8a68;font-size:18px;font-weight:700}#combo-value.bump{animation:combo-bump .26s ease}.combo-progress{height:6px;overflow:hidden;border-radius:3px;background:#4f8a6838}#combo-progress-value{display:block;width:100%;height:100%;background:#4f8a68;transform-origin:left center}.run-score{display:grid;gap:2px;margin-left:auto;padding:8px 10px;border-radius:12px;background:#fffdfcdb;font-size:12px;color:var(--muted)}.run-score strong{color:var(--text)}.gain-layer{position:absolute;top:22%;left:50%;transform:translate(-50%);z-index:8;pointer-events:none;text-align:center;font-weight:700;font-size:clamp(16px,4.5vw,22px);color:var(--success);text-shadow:0 2px 10px rgba(40,50,58,.25)}.gain-pop{animation:gain-pop .9s ease both}@keyframes gain-pop{0%{opacity:0;transform:translateY(10px)}20%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-18px)}}.feedback-layer{position:absolute;top:18%;left:50%;width:min(520px,calc(100% - 32px));height:92px;transform:translate(-50%);pointer-events:none;z-index:8}.feedback-message{position:absolute;inset:0;color:#4f8a68;font-size:clamp(22px,6vw,34px);font-weight:750;text-align:center;text-shadow:0 3px 14px rgba(40,50,58,.35);animation:feedback-fly .9s both}.skip-intro{position:absolute;left:50%;bottom:calc(10px + var(--ticker-h));transform:translate(-50%);z-index:9;border:0;border-radius:999px;padding:10px 18px;background:#28323ab8;color:#fff}.fireworks-layer{position:absolute;inset:0;pointer-events:none;z-index:7}@keyframes combo-bump{50%{transform:scale(1.12)}}@keyframes feedback-fly{0%{opacity:0;transform:translateY(12px) scale(.94)}18%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-18px) scale(1.04)}}.save-banner{position:fixed;z-index:100;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));padding:12px;display:flex;align-items:center;gap:8px;font-size:13px;background:#fff0cd;border:1px solid #a7752b;border-radius:10px;box-shadow:var(--shadow)}.save-banner button{flex:0 0 auto;min-height:44px;padding:8px;border:0;border-radius:8px;background:#d6b06f}.dialog{max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto}#start-rules{font-size:12px;flex:0 0 auto;margin:0 0 12px}button:disabled{cursor:default;opacity:.55}@media(max-height:520px){.board-host{padding-top:calc(70px + env(safe-area-inset-top));padding-bottom:calc(8px + var(--ticker-h))}.seq-wrap{overflow-y:auto;grid-template-rows:auto minmax(120px,1fr) auto auto}.brain-slot{width:90px;height:90px;flex:0 0 90px}.play-dialog{overflow-y:auto}.play-scroll{flex:0 0 auto}}:root{--clay-cream: #f4e8d7;--clay-ink: #493c37;--clay-coral: #dd7666}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hud-chip.pause{background:var(--clay-cream) url(/assets/figma/ui/hud-chip-wide.png) center / 100% 100% no-repeat;box-shadow:none}.hud-chip.pause img{width:20px;height:20px;object-fit:contain}.play:not(.is-climate){background:#d9c8b5}.play.is-climate{background-color:#abc6dc}.color-wrap{background:#fffaf038;border:1px solid rgba(255,255,255,.38)}.timer-hud,.hud-chip:not(.pause){padding:6px 12px;background-image:url(/assets/figma/ui/hud-chip.png);background-size:100% 100%;background-repeat:no-repeat;background-color:var(--clay-cream)}.schulte-front{background-image:url(/assets/figma/schulte/tile-front.png);background-size:100% 100%}.schulte-back{background-image:url(/assets/figma/schulte/tile-back.png);background-size:100% 100%;background-color:transparent}.schulte-cell.is-selected .schulte-front{background-image:url(/assets/figma/schulte/tile-selected.png)}.schulte-frog{background:url(/assets/figma/schulte/frog-rest.png) center / contain no-repeat;font-size:0}.schulte-frog:after{content:"";display:block;width:100%;height:100%}.color-cell:before{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;border-radius:inherit;background-repeat:no-repeat;background-position:center;background-size:100% 100%}.color-cell.is-square:before{background-image:url(/assets/figma/color/frame-square.png)}.color-cell.is-round:before{background-image:url(/assets/figma/color/frame-round.png)}.color-mark{z-index:1}.seq-cell,.seq-pick{background-image:url(/assets/figma/ui/button-secondary.png);background-size:100% 100%}.seq-icon,.seq-art{display:block;width:72%;height:72%;object-fit:contain;font-size:inherit;line-height:1}.seq-fly{width:44px;height:44px;object-fit:contain;font-size:0;background-position:center;background-size:contain;background-repeat:no-repeat}.seq-arrow{font-size:0;width:32px;height:32px;background:center / contain no-repeat}.seq-arrow.is-right{background-image:url(/assets/figma/object/arrow-right.png)}.seq-arrow.is-left{background-image:url(/assets/figma/object/arrow-left.png)}.seq-arrow.is-down{background-image:url(/assets/figma/object/arrow-down.png)}.reflex-cell{background:#cbbba8 url(/assets/figma/reflex/well.png) center / 100% 100% no-repeat}.reflex-well{background:transparent;box-shadow:none}.reflex-cell.is-hot .reflex-mole{background:url(/assets/figma/reflex/target.png) center / 100% 100% no-repeat;box-shadow:none}.reflex-cell.is-bomb .reflex-mole{background:url(/assets/figma/reflex/decoy.png) center / 100% 100% no-repeat;box-shadow:none}.reflex-cell.is-bomb .reflex-mole:after{display:none}:root{--text: #49443f;--muted: #776f65;--primary: #e86650;--success: #538e71;--outer-background: url(/assets/figma/outer-ui-2026-10-28/assets/background.png)}.home,.overlay{background:#f5ecdc var(--outer-background) center / cover no-repeat;color:var(--text)}.home{display:grid;place-items:center;gap:0;padding:env(safe-area-inset-top) 0 calc(var(--ticker-h) + 8px);scrollbar-width:thin;scrollbar-color:#c8b498 transparent}.home-content{position:relative;container-type:inline-size;width:min(100%,520px,calc((100dvh - var(--ticker-h) - env(safe-area-inset-top) - 8px) * 750 / 1334));min-width:min(100%,320px);aspect-ratio:750 / 1334}.home-topbar{position:absolute;inset:2.099% 5.067% auto;min-height:0}.mini-program-safe-area{width:23.2cqw;height:8.53cqw;flex-basis:23.2cqw}.icon-gear{width:12.267cqw;height:12.267cqw;min-width:44px;min-height:44px;flex-basis:auto;background:url(/assets/figma/outer-ui-2026-10-28/assets/icon-settings.png) center / contain no-repeat;box-shadow:none}.icon-gear>span{opacity:0}.home .brain-slot{position:absolute;top:9.595%;left:28.133%;width:44%;height:30.36%;background:transparent;box-shadow:none}.brain-slot img{width:100%;height:100%;object-fit:contain}.home .score-chips{position:absolute;top:36.882%;right:5.2%;width:auto;max-width:44%}.score-chips span{display:inline-flex;align-items:center;justify-content:center;min-width:24.533cqw;min-height:8cqw;padding:1cqw 2.4cqw;background:url(/assets/figma/outer-ui-2026-10-28/variants/surface-chip-184x60.png) center / 100% 100% no-repeat;color:var(--text);font-size:clamp(12px,3.467cqw,18px);font-weight:500;white-space:nowrap}.home .ability-grid{position:absolute;top:43.478%;left:4.933%;width:90.267%;height:30.735%;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(2,24cqw);gap:1.867cqw 2.533cqw;padding:2.4cqw;background:url(/assets/figma/outer-ui-2026-10-28/variants/surface-tray-677x410.png) center / 100% 100% no-repeat;border-radius:0}.ability-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0;padding:1.5cqw 1cqw;background:url(/assets/figma/outer-ui-2026-10-28/variants/surface-card-201x180.png) center / 100% 100% no-repeat;border:0;border-radius:0;box-shadow:none}.ability-cell strong{font-size:5.333cqw;font-weight:500;line-height:1.2}.ability-cell small{color:var(--text);font-size:3.6cqw;line-height:1.4}.ability-icon,.play-icon{display:block;flex:0 0 auto;background:center / contain no-repeat}.ability-icon{width:7.733cqw;height:7.733cqw;margin-bottom:1cqw}.ability-icon-focus{background-image:url(/assets/figma/outer-ui-2026-10-28/assets/ability-focus.png)}.ability-icon-memory{background-image:url(/assets/figma/outer-ui-2026-10-28/assets/ability-memory.png)}.ability-icon-reaction{background-image:url(/assets/figma/outer-ui-2026-10-28/assets/ability-reaction.png)}.ability-icon-perception{background-image:url(/assets/figma/outer-ui-2026-10-28/assets/ability-perception.png)}.ability-icon-spatial{background-image:url(/assets/figma/outer-ui-2026-10-28/assets/ability-spatial.png)}.primary,.secondary{min-height:46px;padding:12px 16px;background:transparent center / 100% 100% no-repeat;border:0;border-radius:16px;box-shadow:none;font-weight:500;line-height:1.35}.primary{background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-primary-590x92.png);color:#fffaf1}.secondary{background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-secondary-590x92.png)}button:focus-visible{outline:3px solid #8d6244;outline-offset:3px}.home-links{position:absolute;top:76.462%;left:5.333%;width:89.333%;height:7.646%;gap:2.667cqw}.home-links .secondary{display:flex;align-items:center;justify-content:center;gap:1.333cqw;padding:1cqw 2cqw;min-height:44px;background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-secondary-325x102.png);font-size:4.267cqw;white-space:nowrap}.home-links img{width:6.4cqw;height:6.4cqw;object-fit:contain}.home #btn-start{position:absolute;top:86.807%;left:5.333%;width:89.333%;height:8.096%;padding:1cqw 2cqw;min-height:46px;margin:0;background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-primary-670x108.png);font-size:4.533cqw}.overlay{padding:calc(16px + env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 16px max(16px,env(safe-area-inset-left))}.dialog{--dialog-image: url(/assets/figma/outer-ui-2026-10-28/variants/surface-panel-632x453.png);width:min(100%,460px);max-height:100%;padding:22px;background:transparent var(--dialog-image) center / 100% 100% no-repeat;border-radius:22px;box-shadow:0 4px 9px #5c47331f;overflow-y:auto;overscroll-behavior:contain;font-size:16px;line-height:1.5}.dialog h2{margin:0 0 12px;font-size:22px;line-height:1.3;font-weight:700}.dialog-head{gap:8px;margin:-5px 0 10px}.dialog-head h2{margin:0;flex:1}.text-btn{min-width:44px;min-height:44px;padding:6px;color:var(--muted);flex:0 0 auto}.dialog .hint{margin:8px 0 14px;font-size:13px;line-height:1.7}.play-dialog{--dialog-image: url(/assets/figma/outer-ui-2026-10-28/variants/surface-panel-650x1073.png);display:flex;flex-direction:column;max-height:100%;overflow:hidden;padding:16px 20px 20px}.play-dialog .dialog-head{justify-content:flex-start;margin:0 0 8px}#start-back,.start-random{background:url(/assets/figma/outer-ui-2026-10-28/variants/surface-chip-116x56.png) center / 100% 100% no-repeat;color:var(--text);min-width:64px;min-height:44px;padding:6px 10px;font-size:14px}.start-random{background-image:url(/assets/figma/outer-ui-2026-10-28/variants/surface-chip-104x60.png)}.play-dialog h2{font-size:19px}.start-play-head h2{margin:0}.diff-grid{gap:8px;margin:0 0 12px}.diff-card,.play-row{background:url(/assets/figma/outer-ui-2026-10-28/variants/surface-card-598x84.png) center / 100% 100% no-repeat;border-radius:13px}.diff-card{min-height:48px;padding:10px 5px;background-image:url(/assets/figma/outer-ui-2026-10-28/variants/surface-card-293x90.png)}.diff-card.is-on,.play-row.is-on{outline:1.5px solid var(--primary);outline-offset:-1px}.diff-card.is-locked{color:var(--text);opacity:1;background:url(/assets/figma/outer-ui-2026-10-28/variants/surface-card-293x90.png) center / 100% 100% no-repeat}.diff-lock,.play-ability{background:url(/assets/figma/outer-ui-2026-10-28/variants/button-primary-80x32.png) center / 100% 100% no-repeat;color:#fffaf1;border-radius:0;padding:1px 6px 3px;font-size:10px;font-weight:500;line-height:1.4}.diff-lock{top:4px;right:5px}.diff-card.is-locked{padding-right:28px}.play-list{gap:6px;padding:1px}.play-scroll{flex:1 1 auto;margin:0 0 10px;scrollbar-width:thin;scrollbar-color:#c8b498 transparent}.play-row{min-height:48px;padding:7px 12px 7px 44px;gap:6px}.play-name{flex:1;text-align:center;font-size:14px}.play-icon{position:absolute;left:8px;width:32px;height:32px}.play-icon-numbers{background-image:url(/assets/figma/outer-ui-2026-10-28/assets/play-numbers.png)}.play-icon-arrows{background-image:url(/assets/figma/outer-ui-2026-10-28/assets/play-arrows.png)}.play-icon-order{background-image:url(/assets/figma/outer-ui-2026-10-28/assets/play-order.png)}.play-icon-colors{background-image:url(/assets/figma/outer-ui-2026-10-28/assets/play-colors.png)}.play-icon-reflex{background-image:url(/assets/figma/outer-ui-2026-10-28/assets/play-reflex.png)}.play-ability{background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-primary-66x32.png)}#start-rules{font-size:12px;margin-bottom:10px}#start-confirm{background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-primary-598x80.png)}#overlay-settings .hint+.hint{padding-top:14px;border-top:1px solid #e8d8bd;margin-bottom:4px}#overlay-leaderboard .dialog{--dialog-image: url(/assets/figma/outer-ui-2026-10-28/variants/surface-panel-616x228.png)}#leaderboard-list{list-style:none;padding:0}#leaderboard-list li{margin:6px 0 0;padding:12px 16px;background:url(/assets/figma/outer-ui-2026-10-28/variants/surface-card-560x92.png) center / 100% 100% no-repeat}#overlay-fame .dialog{--dialog-image: url(/assets/figma/outer-ui-2026-10-28/variants/surface-panel-650x860.png)}.fame-block{margin:18px 0 0}.fame-block h3{font-size:16px;margin-bottom:6px}.fame-block .hint{margin:4px 0 0}.fame-block .rank-list{list-style:none;padding:0;font-size:13px}#overlay-pause .dialog{--dialog-image: url(/assets/figma/outer-ui-2026-10-28/variants/surface-panel-650x475.png)}.row-actions{gap:10px;margin:14px 0 10px}.row-actions .secondary{background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-secondary-287x92.png)}#pause-difficulty{background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-secondary-586x92.png);margin-bottom:10px}#pause-continue{background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-primary-586x94.png)}#pause-finish{margin:8px 0 0}#overlay-result .dialog{--dialog-image: url(/assets/figma/outer-ui-2026-10-28/variants/surface-panel-638x785.png)}#overlay-result:has(.result-mark.is-success) .dialog{--dialog-image: url(/assets/figma/outer-ui-2026-10-28/variants/surface-panel-670x969.png)}.result-mark{width:58px;height:58px;margin:0 auto 16px;background:transparent center / contain no-repeat;color:transparent;font-size:0}.result-mark.is-success{background-image:url(/assets/figma/outer-ui-2026-10-28/assets/badge-success.png)}.result-mark.is-fail{background:transparent url(/assets/figma/outer-ui-2026-10-28/assets/badge-end.png) center / contain no-repeat}.result-abilities{font-size:18px;margin:14px 0 16px;gap:8px}.result-abilities strong{font-weight:500}.result-actions{gap:10px;min-height:214px;margin-top:10px}.result-actions .row-actions{margin:0}.result-actions .row-actions .secondary{background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-secondary-274x88.png)}.result-actions .secondary{background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-secondary-562x88.png)}.result-actions .primary{background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-primary-562x88.png)}#overlay-result:has(.result-mark.is-success) .row-actions .secondary{background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-secondary-288x92.png)}#overlay-result:has(.result-mark.is-success) #result-fame{background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-secondary-590x92.png)}#overlay-result:has(.result-mark.is-success) .result-actions .primary{background-image:url(/assets/figma/outer-ui-2026-10-28/variants/button-primary-590x92.png)}.app-ticker{color:#675e53;background:#f2e6d3;border-top:1px solid #dfcfb7;font-weight:500}@media(max-width:360px){.dialog{padding:18px}.play-dialog{padding:12px 14px 16px}.play-name{font-size:13px}.diff-card{font-size:14px}.diff-card.is-locked{padding:16px 4px 6px}.diff-lock{top:1px;right:4px;font-size:9px}}@media(max-height:650px){.overlay{padding-top:calc(8px + env(safe-area-inset-top));padding-bottom:8px}.play-dialog{overflow-y:auto}.play-scroll{flex:0 0 auto}}
