:root{--bg:#0b1120;--panel:#131c31;--line:#23304d;--text:#e8edf7;--muted:#8b9ab8;--ok:#4ade80;--warn:#fbbf24;--bad:#f87171;--accent:#60a5fa;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);overscroll-behavior:none;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}.home{height:100%;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);flex-direction:column;display:flex}.home-top{border-bottom:1px solid var(--line);background:var(--panel);justify-content:space-between;align-items:center;padding:12px 16px;font-size:14px;display:flex}.home-top span{color:var(--muted);font-size:12px}.home-intro{flex-direction:column;flex:1;gap:14px;padding:24px 20px 40px;display:flex;overflow-y:auto}.home-intro h1{margin:0;font-size:24px}.home-intro p{margin:0;font-size:16px;line-height:1.7}.muted{color:var(--muted);font-size:14px}.bad{color:var(--bad)}.big-btn{background:var(--accent);color:#06122b;border:none;border-radius:14px;min-height:60px;padding:0 24px;font-size:18px;font-weight:700}.big-btn:disabled{opacity:.5}.ghost-btn{border:1px solid var(--line);min-height:60px;color:var(--text);background:0 0;border-radius:14px;padding:0 20px;font-size:16px}.home-stage{flex-direction:column;flex:1;gap:12px;padding:12px;display:flex;overflow-y:auto}.home-canvas{background:#000;border-radius:14px;justify-content:center;max-height:52vh;display:flex;position:relative;overflow:hidden}.home-canvas canvas{object-fit:contain;max-width:100%;max-height:52vh}.home-hint{text-align:center;background:linear-gradient(#0000,#0b1120e6);padding:16px;position:absolute;inset:auto 0 0}.home-hint p{text-shadow:0 2px 16px #000c;margin:0;font-size:clamp(24px,6vw,44px);font-weight:800}.home-hint.ok p{color:var(--ok)}.home-hint.slim{background:#0b1120bf;padding:8px 12px}.home-hint.slim p{font-size:clamp(18px,3.5vw,28px)}.home-hint.slim p b{color:#fff;font-weight:800}.home-hint.slim p em{color:var(--warn);font-style:normal;font-weight:600}.home-hint.slim.ok p em{color:var(--ok)}.home-top strong em{color:var(--muted);font-size:12px;font-style:normal;font-weight:400}.home-table td.warn{color:var(--warn)}.home-hint span{color:#dbe4f5;font-size:clamp(13px,3vw,18px)}.home-diag{grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:8px;display:grid}.home-metric{background:var(--panel);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.home-metric span{color:var(--muted);font-size:11px}.home-metric strong{font-variant-numeric:tabular-nums;font-size:20px}.home-metric strong em{color:var(--muted);margin-left:2px;font-size:11px;font-style:normal}.home-metric.ok strong{color:var(--ok)}.home-metric.warn strong{color:var(--warn)}.home-metric.bad strong{color:var(--bad)}.home-verdict{border:1px solid var(--line);background:var(--panel);border-left-width:4px;border-radius:12px;padding:14px 16px}.home-verdict.ok{border-left-color:var(--ok)}.home-verdict.bad{border-left-color:var(--bad)}.home-verdict h2{margin:0 0 10px;font-size:18px}.home-verdict dl{margin:0 0 10px}.home-row{justify-content:space-between;gap:12px;padding:3px 0;font-size:14px;display:flex}.home-row dt{color:var(--muted)}.home-row dd{font-variant-numeric:tabular-nums;text-align:right;margin:0}.home-verdict ul{color:var(--warn);margin:0 0 10px;padding-left:20px;font-size:14px;line-height:1.7}.home-actions{flex-wrap:wrap;gap:10px;display:flex}.home-actions .big-btn{flex:1}.home-setup{border:1px solid var(--line);background:var(--panel);border-radius:12px;flex-direction:column;gap:10px;padding:12px 14px;display:flex}.home-choice{justify-content:space-between;align-items:center;gap:12px;display:flex}.home-choice>span{color:var(--muted);font-size:14px}.home-choice>div{gap:8px;display:flex}.chip{border:1px solid var(--line);min-width:64px;min-height:44px;color:var(--text);background:0 0;border-radius:10px;font-size:15px}.chip.on{background:var(--accent);border-color:var(--accent);color:#06122b;font-weight:700}.chip:disabled{opacity:.45}.home-runs{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:12px 14px}.home-runs h2{margin:0 0 10px;font-size:16px}.home-table-wrap{margin-bottom:8px;overflow-x:auto}.home-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:13px}.home-table th{text-align:left;color:var(--muted);border-bottom:1px solid var(--line);padding:6px 8px 6px 0;font-weight:500}.home-table td{border-bottom:1px solid #23304d80;padding:6px 8px 6px 0}.home-table td.num{font-variant-numeric:tabular-nums}.home-table td.ok{color:var(--ok)}.home-table td.bad{color:var(--bad)}.game{background:#0b1120;position:fixed;inset:0;overflow:hidden}.game-canvas{width:100%;height:100%;display:block}.game{--hud-scale:.65}.hud{top:max(12px, env(safe-area-inset-top));pointer-events:none;justify-content:space-between;align-items:flex-start;padding:0 16px;display:flex;position:absolute;left:0;right:0}.hud-score{transform:scale(var(--hud-scale));transform-origin:0 0;color:#2b2140;font-variant-numeric:tabular-nums;background:#fff;border-radius:28px;grid-template-columns:auto auto auto 1fr;align-items:center;gap:0 10px;padding:8px 20px 10px;font-weight:900;line-height:1;display:grid;box-shadow:0 3px 10px #00000040}.hud-fruit{aspect-ratio:1;background:radial-gradient(circle at 34% 30%,#ff9c80,#ff7a59 62%);border-radius:50%;width:clamp(22px,4.6vh,40px)}.hud-fruit.big{width:clamp(40px,9vh,76px)}.hud-count{font-size:clamp(28px,6.4vh,56px)}.hud-target{color:#9e95ae;font-size:clamp(16px,3.4vh,32px)}.hud-bar{background:#e6e2ec;border-radius:999px;width:clamp(80px,14vw,160px);height:clamp(10px,2vh,19px);overflow:hidden}.hud-bar-fill{background:#ffd347;border-radius:999px;height:100%;transition:width .2s ease-out}.hud-goal{color:#7a7090;grid-column:1/-1;margin-top:6px;font-size:clamp(12px,2.3vh,21px)}.hud-score.cleared .hud-bar-fill{background:linear-gradient(90deg,#ffd347,#ffb03a)}.hud-score.cleared .hud-goal{color:#e08900}.hud-ring{transform:scale(var(--hud-scale));transform-origin:100% 0;aspect-ratio:1;place-items:center;width:clamp(56px,13vh,116px);display:grid;position:relative}.hud-ring svg{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.hud-ring:before{content:"";background:#fff;border-radius:50%;position:absolute;inset:4%;box-shadow:0 3px 10px #00000040}.hud-ring-track{fill:none;stroke:#e6e2ec;stroke-width:15px}.hud-ring-fill{fill:none;stroke:#ff7a59;stroke-width:15px;stroke-linecap:round;transition:stroke-dashoffset .2s linear}.hud-ring span{color:#2b2140;font-variant-numeric:tabular-nums;font-size:clamp(24px,5.6vh,50px);font-weight:900;line-height:1;position:relative}.hud-ring.rush span{color:#ff5a36}.hud-ring.rush .hud-ring-fill{stroke:#ff5a36}.game-overlay.briefing{color:#2b2140;background:#fffbf2}.game-overlay.briefing p{color:#4a4160}.game-overlay.briefing .muted{color:#8b839c}.game-overlay.briefing .ghost-btn{color:#6b6280;border-color:#d8d2e2}.brief-cards{gap:clamp(12px,3vw,28px);display:flex}.brief-card{background:#fff;border:2px solid #e6e2ec;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-width:clamp(110px,18vw,210px);padding:clamp(12px,2.4vh,26px) clamp(14px,2vw,26px);display:flex}.brief-card strong{font-variant-numeric:tabular-nums;font-size:clamp(30px,7vh,68px);line-height:1}.brief-card span{color:#7a7090;font-size:clamp(14px,2.6vh,28px);font-weight:800}.brief-card:first-child strong{color:#ff7a59}.game-overlay{text-align:center;background:#0b1120d1;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex;position:absolute;inset:0}.game-overlay h1{margin:0;font-size:clamp(32px,7vh,64px)}.game-overlay p{margin:0;font-size:clamp(16px,2.6vh,24px)}.game-overlay .stars{letter-spacing:6px;font-size:clamp(40px,9vh,84px)}.result-main{font-variant-numeric:tabular-nums;font-weight:800;font-size:clamp(26px,5vh,48px)!important}.game-hint{text-align:center;pointer-events:none;position:absolute;bottom:18%;left:0;right:0}.game-hint p{color:#fff;background:#0b1120b8;border-radius:999px;margin:0;padding:10px 28px;font-size:clamp(28px,6vh,64px);font-weight:800;display:inline-block}.game-hint.ok p{color:#7dffa4}.placed-cheer{animation:.42s cubic-bezier(.2,1.4,.4,1) both placed-pop}@keyframes placed-pop{0%{opacity:0;transform:scale(.55)}to{opacity:1;transform:scale(1)}}.calib-basket{justify-content:center;gap:12px;margin-top:8px;display:flex}.calib-basket i{background:#0b1120c7;border-radius:50%;width:clamp(22px,3.6vh,38px);height:clamp(22px,3.6vh,38px);transition:background .22s ease-out,transform .22s ease-out;box-shadow:inset 0 0 0 3px #ffffff9e}.calib-basket i.got{background:#ffb43a;transform:scale(1.18);box-shadow:inset 0 0 0 3px #ffffffbf,0 0 14px #ffb43a99}.game-countdown{color:#fff;text-shadow:0 6px 30px #0009;justify-content:center;align-items:center;font-size:clamp(90px,26vh,240px);font-weight:900;display:flex;position:absolute;inset:0}.game-debug{font-variant-numeric:tabular-nums;pointer-events:none;background:#0b1120d1;border-radius:10px;padding:10px 14px;font-size:13px;line-height:1.9;position:absolute;bottom:12px;left:12px}.game-debug b{font-weight:700}.game-debug b.ok{color:var(--ok)}.game-debug b.bad{color:var(--warn)}.game-debug em{color:var(--muted);font-size:11px;font-style:normal}.hold-ring{aspect-ratio:1;width:clamp(72px,11vh,120px);margin:10px auto 0;position:relative}.hold-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.hold-ring circle{fill:none;stroke-width:9px;stroke-linecap:round}.hold-bg{stroke:#ffffff40}.hold-fill{stroke:var(--ok);transition:stroke-dashoffset 80ms linear}.hold-ring span{color:var(--ok);justify-content:center;align-items:center;font-size:clamp(14px,2vh,20px);font-weight:700;display:flex;position:absolute;inset:0}.dist-bar{background:#ffffffc7;border-radius:999px;width:min(52vw,460px);height:clamp(18px,3.4vh,30px);margin:10px auto 0;position:relative}.dist-ok{background:#4caf504d;border-radius:999px;position:absolute;top:0;bottom:0}.dist-dot{aspect-ratio:1;background:#ff7a59;border-radius:50%;width:clamp(20px,3.6vh,32px);transition:left .12s linear;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 2px 6px #00000047}.dist-dot.ok{background:#4caf50}.dist-far,.dist-near{color:#6b6280;font-size:clamp(11px,2vh,16px);font-weight:800;position:absolute;top:50%;transform:translateY(-50%)}.dist-far{left:10px}.dist-near{right:10px}@media (orientation:portrait){.hud{flex-direction:column-reverse;align-items:center;gap:10px}.hud-score{transform-origin:top;padding:6px 16px 8px}.hud-ring{transform-origin:top}.hud-bar{width:clamp(70px,26vw,150px)}}.hud-count{animation:.26s ease-out score-pop}@keyframes score-pop{0%{transform:scale(1)}40%{transform:scale(1.28)}to{transform:scale(1)}}.mute-btn{min-height:44px;color:inherit;opacity:.85;background:0 0;border:1px solid #ffffff47;border-radius:999px;padding:0 18px;font-size:clamp(13px,2.2vh,18px)}.game-overlay.briefing .mute-btn{color:#6b6280;border-color:#d8d2e2}.home-shell{color:#2b2140;background:#fffbf2;flex-direction:column;justify-content:center;align-items:center;gap:18px;min-height:100dvh;padding:28px 20px 40px;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;display:flex}.hs-card{text-align:center;background:#fff;border:1px solid #e8e1d6;border-radius:26px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:460px;padding:30px 26px 26px;display:flex;box-shadow:0 8px 26px #2b214017}.hs-card.wide{max-width:560px}.hs-eyebrow{letter-spacing:.12em;color:#ff7a59;margin:0;font-size:13px;font-weight:800}.hs-title{text-wrap:balance;margin:0;font-size:clamp(26px,6vw,38px);font-weight:800;line-height:1.2}.hs-dots{gap:10px;display:flex}.hs-dot{background:#e6e2ec;border-radius:50%;width:16px;height:16px}.hs-dot.on{background:#ffd347;box-shadow:0 0 0 4px #ffd34738}.hs-meta{color:#5c5273;margin:0;font-size:15px}.hs-note{color:#8c82a3;max-width:42ch;margin:0;font-size:13px;line-height:1.65}.hs-primary{color:#2b2140;cursor:pointer;background:#ffd347;border:none;border-radius:999px;min-height:56px;margin-top:4px;padding:14px 34px;font-family:inherit;font-size:19px;font-weight:800;transition:transform .12s ease-out;box-shadow:0 5px #2b214029}.hs-primary:active{transform:translateY(2px)}.hs-quiet{color:#9e95ae;cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:10px 16px;font-family:inherit;font-size:14px;text-decoration:underline}.hs-week{align-items:flex-end;gap:8px;width:100%;height:110px;padding:0 4px;display:flex}.hs-bar{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;height:100%;display:flex}.hs-bar span{background:#6db84a;border-radius:6px 6px 3px 3px;width:100%;min-height:4px}.hs-bar em{color:#9e95ae;font-variant-numeric:tabular-nums;font-size:11px;font-style:normal}@media (prefers-reduced-motion:reduce){.hs-primary{transition:none}}
