.slab-shell{background:radial-gradient(90% 50% at 50% -5%, #1a2a22 0%, transparent 55%), var(--bg);min-height:100%;padding:24px 20px 48px}.slab-top{justify-content:space-between;align-items:flex-start;gap:16px;max-width:1100px;margin:0 auto 28px;display:flex}.slab-kicker{color:#7d9a88;letter-spacing:.06em;text-transform:uppercase;margin:0 0 4px;font-size:.78rem}.slab-top h1{letter-spacing:-.02em;margin:0;font-size:1.55rem;font-weight:700}.slab-sub{color:var(--muted);max-width:36rem;margin:8px 0 0;font-size:.9rem}.slab-back{color:var(--muted);border:1px solid var(--line);white-space:nowrap;border-radius:10px;padding:8px 12px;text-decoration:none}.slab-back:hover{color:var(--fg);border-color:#3a4d66}.slab-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;max-width:1100px;margin:0 auto;display:grid}.slab-grid-2{max-width:920px}.slab-sub.tight{margin:0 0 12px;font-size:.85rem}.slab-pack-note{color:#6d7b8c;margin:0;font-size:.75rem}.slab-audio-status{color:#3dcf8e;min-height:1.2em;margin:0 0 10px;font-size:.82rem}.slab-sfx-list{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.slab-sfx-item{text-align:left;border:1px solid var(--line);color:var(--fg);cursor:pointer;font:inherit;background:#121821;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.slab-sfx-item:hover{border-color:#3a4d66}.slab-sfx-item.is-active{background:#142018;border-color:#3dcf8e66}.slab-sfx-name{font-size:.95rem;font-weight:600}.slab-sfx-blurb{color:var(--muted);font-size:.8rem}.slab-card{border:1px solid var(--line);background:#0e141c;border-radius:16px;flex-direction:column;gap:12px;padding:14px;display:flex}.slab-title{margin:0;font-size:.95rem;font-weight:600}.slab-phone{flex-direction:column;gap:10px;display:flex}.slab-stage{background:linear-gradient(#121a22 0%,#0b1016 100%);border:1px solid #1c2530;border-radius:14px;flex-direction:column;align-items:center;gap:10px;min-height:340px;padding:14px 12px 16px;display:flex;position:relative;overflow:hidden}.slab-feedback{min-height:1.2em;color:var(--muted);margin:0;font-size:.95rem;font-weight:600}.slab-feedback.hit{color:#3dcf8e}.slab-feedback.miss{color:#e35d6a}.slab-chart{border:1px solid var(--line);background:linear-gradient(#0000 48%,#3d9cf014 49%,#0000 52%),repeating-linear-gradient(90deg,#0000,#0000 18px,#1c2530b3 18px 19px);border-radius:10px;width:100%;height:120px;position:relative}.slab-chart:after{content:"";opacity:.55;clip-path:polygon(0 70%,18% 55%,34% 62%,52% 30%,70% 48%,88% 22%,100% 40%,100% 100%,0 100%);background:linear-gradient(105deg,#0000 0%,#3d9cf0 35%,#3dcf8e 70%,#0000 100%);border-radius:2px;position:absolute;inset:28% 8% 30%}.slab-score-hero{flex-direction:column;align-items:center;gap:2px;margin-top:4px;transition:transform .18s;display:flex;position:relative}.slab-score-hero.is-pop{animation:.52s cubic-bezier(.2,1.4,.3,1) slab-pop}.slab-score-label{letter-spacing:.14em;color:#7d8b9a;font-size:.72rem;font-weight:600}.slab-score-num{font-variant-numeric:tabular-nums;letter-spacing:-.03em;color:var(--fg);font-size:2.6rem;font-weight:700;line-height:1}.slab-score-num.xl{font-size:3.1rem}.slab-delta{font-variant-numeric:tabular-nums;color:#3dcf8e;font-size:1.05rem;font-weight:700;position:absolute;top:.55rem;right:-2.4rem}.slab-delta.miss,.slab-delta.flash.miss{color:#e35d6a}.slab-delta.flash{animation:.7s forwards slab-delta-flash}.slab-meta{color:var(--muted);font-variant-numeric:tabular-nums;text-align:center;margin:0;font-size:.82rem}.slab-meta.tight{margin-top:4px}.slab-hint{color:#7d8b9a;text-align:center;margin:0;font-size:.85rem}.slab-score-line{flex-direction:column;align-items:center;margin-top:6px;display:flex}.slab-score-anchor{justify-content:center;align-items:center;min-width:4.5rem;display:inline-flex;position:relative}.slab-score-big{font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:2.75rem;font-weight:700;line-height:1}.slab-float{font-variant-numeric:tabular-nums;pointer-events:none;font-size:1.15rem;font-weight:700;animation:.9s forwards slab-float-up;position:absolute;top:0;left:50%;transform:translate(-50%)}.slab-float.hit{color:#3dcf8e}.slab-float.miss{color:#e8a0a8}.combo-pulse{color:#3dcf8e;animation:.48s slab-combo-pulse}.slab-twobeat{flex-direction:column;justify-content:flex-start;align-items:center;width:100%;min-height:120px;display:flex;position:relative}.slab-reward{transform-origin:top;flex-direction:column;align-items:center;gap:4px;transition:transform .42s cubic-bezier(.2,.9,.2,1),opacity .32s;display:flex;position:relative}.slab-twobeat.reward .slab-reward{transform:scale(1.08)}.slab-twobeat.settle .slab-reward,.slab-twobeat.idle .slab-reward{opacity:.92;transform:scale(.72)}.slab-twobeat .slab-hint.step-in{opacity:0;margin-top:8px;transition:opacity .28s,transform .28s;transform:translateY(8px)}.slab-twobeat .slab-hint.step-in.show{opacity:1;transform:translateY(0)}.slab-twobeat.reward .slab-hint.step-in{opacity:0;transform:translateY(10px)}.slab-controls{flex-wrap:wrap;gap:8px;display:flex}.slab-controls button{color:var(--fg);cursor:pointer;background:#142018;border:1px solid #2a3a2f;border-radius:10px;padding:8px 10px;font-size:.82rem}.slab-controls button:hover{border-color:#3dcf8e66}.slab-controls button.ghost{border-color:var(--line);color:var(--muted);background:0 0}@keyframes slab-pop{0%{transform:scale(1)}35%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes slab-delta-flash{0%{opacity:0;transform:translateY(6px)scale(.9)}25%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-10px)}}@keyframes slab-float-up{0%{opacity:0;transform:translate(-50%,8px)scale(.85)}18%{opacity:1;transform:translate(-50%,-4px)scale(1)}to{opacity:0;transform:translate(-50%,-42px)scale(1)}}@keyframes slab-combo-pulse{0%{transform:scale(1)}40%{color:#3dcf8e;transform:scale(1.12)}to{transform:scale(1)}}@media (width<=640px){.slab-top{flex-direction:column}.slab-score-num{font-size:2.3rem}.slab-score-num.xl{font-size:2.7rem}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0f14;--fg:#e8eef5;--muted:#8b98a8;--accent:#3d9cf0;--line:#1c2530;background:var(--bg);color:var(--fg);font-family:Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;min-height:100%;margin:0}button{font:inherit}
