.ss-root{--ss-accent:#8e7cff;--ss-ok:#2fbf71;--ss-bad:#ff5a6e;--ss-ink:#1b1726;--ss-surface:#fff;--ss-muted:#6b6478;--ss-shadow:3px 3px 0 #1b1726}[data-scheme=dark] .ss-root{--ss-ok:#4fe091;--ss-bad:#ff7a89;--ss-ink:#f4efe6;--ss-surface:#211d2e;--ss-muted:#a59fb2;--ss-shadow:3px 3px 0 #07060c}.ss-stage{--ss-accent:#8e7cff;--ss-ok:#2fbf71;--ss-bad:#ff5a6e;--ss-ink:#1b1726;--ss-surface:#fff;--ss-muted:#6b6478;--ss-shadow:3px 3px 0 #1b1726;box-sizing:border-box;-webkit-user-select:none;user-select:none;flex-direction:column;gap:12px;width:100%;max-width:440px;margin:0 auto;display:flex;position:relative}[data-scheme=dark] .ss-stage{--ss-ok:#4fe091;--ss-bad:#ff7a89;--ss-ink:#f4efe6;--ss-surface:#211d2e;--ss-muted:#a59fb2;--ss-shadow:3px 3px 0 #07060c}.ss-hud{color:var(--ss-ink);justify-content:space-between;align-items:center;gap:8px;font-weight:800;display:flex}.ss-hearts{gap:4px;display:inline-flex}.ss-heart{width:26px;height:26px;transition:transform .2s}.ss-heart.lost{opacity:.25;filter:grayscale();animation:.45s ease-out ss-break;transform:scale(.8)}.ss-score{font-variant-numeric:tabular-nums;font-size:28px;line-height:1}.ss-combo{color:var(--ss-muted);text-align:right;min-width:64px;font-size:13px}.ss-timer-wrap{border:2px solid var(--ss-ink);background:var(--ss-surface);border-radius:999px;height:10px;overflow:hidden}.ss-timer-bar{background:var(--ss-accent);height:100%}.ss-timer-bar.hot{background:var(--ss-bad)}.ss-deck{touch-action:none;height:220px;position:relative}.ss-card,.ss-ghost{border:3px solid var(--ss-ink);background:var(--ss-surface);color:var(--ss-ink);box-shadow:var(--ss-shadow);letter-spacing:.01em;overflow-wrap:anywhere;text-align:center;border-radius:24px;justify-content:center;align-items:center;padding:0 16px;font-size:clamp(30px,9vw,42px);font-weight:900;display:flex;position:absolute;inset:0}.ss-card.fit,.ss-ghost.fit{font-size:clamp(20px,5.4vw,32px);line-height:1.2}.ss-card{cursor:grab;touch-action:none;will-change:transform}.ss-card.drag{cursor:grabbing}.ss-card.enter{animation:.18s ease-out ss-pop}.ss-card.snap{transition:transform .2s ease-out}.ss-tag{letter-spacing:.04em;text-transform:uppercase;pointer-events:none;border:3px solid;border-radius:10px;padding:2px 10px;font-size:15px;font-weight:900;position:absolute;top:14px}.ss-tag.l{color:var(--ss-bad);left:14px;transform:rotate(-8deg)}.ss-tag.r{color:var(--ss-ok);right:14px;transform:rotate(8deg)}.ss-ghost{pointer-events:none;animation:.28s ease-in forwards ss-fly}.ss-ghost.l{--ss-dir:-1}.ss-ghost.r{--ss-dir:1}.ss-ghost.ok{border-color:var(--ss-ok)}.ss-ghost.bad{border-color:var(--ss-bad)}.ss-feedback{text-align:center;min-height:24px;color:var(--ss-muted);margin:0;font-weight:800}.ss-feedback b{color:var(--ss-ok)}.ss-feedback.bad{color:var(--ss-bad)}.ss-choices{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ss-btn{border:3px solid var(--ss-ink);min-height:56px;box-shadow:var(--ss-shadow);color:#1b1726;font:inherit;cursor:pointer;border-radius:18px;font-size:17px;font-weight:900}.ss-btn:active{transform:translate(2px,2px);box-shadow:1px 1px #1b1726}.ss-btn.l{background:var(--ss-bad)}.ss-btn.r{background:var(--ss-ok)}.ss-hint{text-align:center;color:var(--ss-muted);margin:0;font-size:13px;font-weight:700}.ss-lead{justify-content:center;align-items:center;height:220px;display:flex}@keyframes ss-pop{0%{opacity:.4;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes ss-fly{to{transform:translateX(calc(var(--ss-dir) * 130%)) rotate(calc(var(--ss-dir) * 16deg));opacity:0}}@keyframes ss-shake{15%{transform:translate(-12px)}45%{transform:translate(10px)}75%{transform:translate(-6px)}}@media (prefers-reduced-motion:reduce){.ss-card.enter,.ss-ghost,.ss-deck.shake,.ss-part,.ss-heart.lost{animation:none}.ss-part,.ss-ghost{display:none}}.ss-flash{z-index:40;pointer-events:none;animation:.45s ease-out forwards ss-flash;position:fixed;inset:0}.ss-flash.bad{background:radial-gradient(circle,#0000 35%,#ff3c508c 100%)}.ss-flash.ok{background:radial-gradient(circle,#0000 45%,#2fbf7147 100%)}.ss-fx{z-index:30;pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%}.ss-part{width:var(--s,10px);height:var(--s,10px);background:var(--c);border:2px solid #1b1726;border-radius:3px;animation:.75s cubic-bezier(.15,.7,.3,1) forwards ss-burst;position:absolute;top:-5px;left:-5px}.ss-part.round{border-radius:50%}.ss-part.fall{animation-name:ss-fall}.ss-big{color:#fff;border:4px solid #1b1726;border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;font-size:58px;font-weight:900;line-height:1;animation:.6s ease-out forwards ss-stamp;display:flex;position:absolute;top:-48px;left:-48px;box-shadow:4px 4px #1b1726}.ss-big.ok{background:var(--ss-ok)}.ss-big.bad{background:var(--ss-bad)}.ss-label{white-space:nowrap;color:#1b1726;background:#ffd23f;border:3px solid #1b1726;border-radius:999px;padding:4px 14px;font-size:20px;font-weight:900;animation:.9s ease-out forwards ss-label;position:absolute;top:-92px;left:0;transform:translate(-50%);box-shadow:3px 3px #1b1726}.ss-deck.shake{animation:.4s ss-shake}.ss-levels{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ss-level{border:3px solid var(--ss-ink);background:var(--ss-surface);min-height:62px;color:var(--ss-ink);box-shadow:var(--ss-shadow);font:inherit;text-align:left;cursor:pointer;border-radius:16px;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 12px;display:flex}.ss-level:active{transform:translate(2px,2px)}.ss-level b{letter-spacing:.06em;text-transform:uppercase;color:var(--ss-lv);font-size:12px}.ss-level span{font-size:15px;font-weight:900}.ss-level i{color:var(--ss-muted);font-size:12px;font-style:normal}.ss-picker{--ss-ink:#1b1726;--ss-surface:#fff;--ss-muted:#6b6478;--ss-shadow:3px 3px 0 #1b1726;flex-direction:column;gap:10px;display:flex}[data-scheme=dark] .ss-picker{--ss-ink:#f4efe6;--ss-surface:#211d2e;--ss-muted:#a59fb2;--ss-shadow:3px 3px 0 #07060c}.ss-picker p{color:var(--ss-muted);margin:0;font-size:14px;font-weight:700}.ss-root.responsive{flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;display:flex}.ss-root.responsive .ss-stage{flex:1;gap:8px;width:100%;min-width:0;max-width:none;height:100%;min-height:0}.ss-root.responsive .ss-deck{height:auto;min-height:112px;max-height:min(360px, var(--stage-h));flex:1}.ss-responsive-controls{width:min(100%,520px)}.ss-responsive-controls .ss-choices{gap:8px}@media (max-height:430px){.ss-root.responsive .ss-stage{gap:4px}.ss-root.responsive .ss-deck{min-height:88px}.ss-responsive-controls .ss-btn{min-height:48px}}@keyframes ss-burst{0%{opacity:1;transform:translate(0)scale(.4)rotate(0)}to{transform:translate(var(--x), var(--y)) scale(1) rotate(var(--r,240deg));opacity:0}}@keyframes ss-fall{0%{opacity:1;transform:translate(0)scale(.6)rotate(0)}to{transform:translate(var(--x), var(--y)) scale(1) rotate(var(--r,120deg));opacity:0}}@keyframes ss-stamp{0%{opacity:0;transform:scale(2.2)}35%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes ss-label{0%{opacity:0;transform:translate(-50%)scale(.4)}25%{opacity:1;transform:translate(-50%)scale(1.1)}to{opacity:0;transform:translate(-50%)translateY(-24px)scale(1)}}@keyframes ss-flash{0%{opacity:1}to{opacity:0}}@keyframes ss-break{0%{filter:none;transform:scale(1.5)rotate(-12deg)}to{transform:scale(.8)}}
