:root{--fs-ink:#fff7fd;--fs-muted:#c6b6c4;--fs-panel:#140e17f0;--fs-line:#765a72;--fs-accent:#ef315c;--fs-gold:#ffc857}.fs-screen,.fs-hud{z-index:20;box-sizing:border-box;min-width:0;min-height:100svh;color:var(--fs-ink);font-family:Inter,ui-sans-serif,system-ui,sans-serif;position:fixed;inset:0}.fs-screen[hidden],.fs-hud[hidden],.fs-combo[hidden],.fs-banner[hidden],.fs-kill-callout[hidden],.fs-result-stats>div[hidden],.fs-shop-launcher[hidden],.fs-app-state [hidden]{display:none}.fs-screen{padding:max(22px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(22px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));background:#0a070cc2;place-items:center;display:grid;overflow:auto}.fs-panel{box-sizing:border-box;border:1px solid var(--fs-line);background:var(--fs-panel);border-radius:18px;width:min(760px,100%);padding:clamp(24px,5vw,48px);box-shadow:0 24px 80px #00000075}.fs-panel h1{letter-spacing:-.055em;margin:3px 0 8px;font-size:clamp(38px,8vw,72px);line-height:.95}.fs-eyebrow,.fs-hud-label{color:var(--fs-accent);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:11px;font-weight:800}.fs-intro{max-width:560px;color:var(--fs-muted);margin:14px 0 26px;font-size:clamp(15px,2.5vw,19px);line-height:1.45}.fs-mode-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.fs-mode-button,.fs-primary-button,.fs-secondary-button,.fs-shop-close,.fs-cosmetic-action,.fs-shop-launcher{border:1px solid var(--fs-line);color:var(--fs-ink);font:inherit;cursor:pointer}.fs-mode-button,.fs-primary-button,.fs-secondary-button,.fs-shop-close,.fs-cosmetic-action,.fs-shop-launcher,.fs-settings-option{touch-action:manipulation}.fs-mode-button{text-align:left;background:#261c28;border-radius:12px;gap:7px;min-height:150px;padding:18px;display:grid}.fs-mode-button strong{font-size:22px}.fs-mode-button span,.fs-mode-button small{color:var(--fs-muted);line-height:1.35}.fs-mode-button:hover,.fs-mode-button:focus-visible,.fs-primary-button:hover,.fs-primary-button:focus-visible,.fs-secondary-button:hover,.fs-secondary-button:focus-visible,.fs-shop-close:hover,.fs-shop-close:focus-visible,.fs-cosmetic-action:hover,.fs-cosmetic-action:focus-visible,.fs-shop-launcher:hover,.fs-shop-launcher:focus-visible{border-color:var(--fs-accent);outline-offset:2px;outline:3px solid #ef315c3d}.fs-controls{color:var(--fs-muted);text-align:center;margin:18px 0 0;font-size:13px}.fs-hud{z-index:12;padding:max(14px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));pointer-events:none}.fs-hud-top{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#140e17d1;border:1px solid #765a72ad;border-radius:10px;align-items:center;gap:clamp(14px,3vw,34px);width:fit-content;max-width:100%;padding:10px 14px;display:flex}.fs-hud-mode{font-size:14px}.fs-objective{color:var(--fs-accent);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:900}.fs-hud-value{gap:1px;min-width:48px;display:grid}.fs-hud-value strong{font-variant-numeric:tabular-nums;font-size:20px}.fs-combo,.fs-banner{text-align:center;text-transform:uppercase;position:absolute;left:50%;transform:translate(-50%)}.fs-combo{color:var(--fs-gold);text-shadow:0 3px 18px #000c;font-size:clamp(24px,5vw,46px);font-weight:950;top:16%}.fs-banner{background:var(--fs-gold);color:#24160c;letter-spacing:.08em;border-radius:999px;padding:9px 18px;font-size:clamp(17px,3vw,28px);font-weight:950;top:30%}.fs-banner[data-tone=danger]{background:var(--fs-accent);color:#fff}.fs-banner[data-tone=freeze]{color:#08202a;background:#8be7ff}.fs-kill-callout{top:max(18px, env(safe-area-inset-top));z-index:18;box-sizing:border-box;pointer-events:none;isolation:isolate;contain:layout;color:#fff7fd;letter-spacing:-.025em;text-align:center;text-transform:uppercase;text-shadow:0 .04em #76142a,0 .09em .16em #000000c7;white-space:nowrap;-webkit-user-select:none;user-select:none;place-items:center;width:max-content;max-width:calc(100vw - 32px);padding:.18em .55em .24em;font:1000 clamp(2rem,4.2vw,3.75rem)/.82 Impact,Haettenschweiler,Arial Narrow Bold,sans-serif;display:grid;position:fixed;left:50%}.fs-kill-callout:before{content:"";z-index:-2;background:linear-gradient(135deg,#640d2af0,#220411f0);border:1px solid #ffc8579e;border-radius:.14em;position:absolute;inset:-.16em -.42em -.18em;transform:skew(-7deg)rotate(-1deg);box-shadow:0 .12em .32em #0000009e,0 0 .32em #ef315c99}.fs-kill-callout:after{content:"";z-index:-1;background:linear-gradient(90deg,#0000,#ffc857 20%,#ef315c 80%,#0000);height:.07em;position:absolute;bottom:-.13em;left:6%;right:6%;transform:skew(-18deg);box-shadow:0 0 .24em #ef315ce0}.fs-kill-callout[data-pulse=a]{animation:.6s cubic-bezier(.16,.82,.18,1) both fs-kill-callout-a}.fs-kill-callout[data-pulse=b]{animation:.6s cubic-bezier(.16,.82,.18,1) both fs-kill-callout-b}@keyframes fs-kill-callout-a{0%{opacity:0;filter:blur(4px);transform:translate(-50%)translateY(-10px)scale(1.5)rotate(-2deg)}18%{opacity:1;filter:blur();transform:translate(-50%)scale(.88)rotate(1deg)}34%{transform:translate(-50%)scale(1.06)rotate(-1deg)}72%{opacity:1;transform:translate(-50%)scale(1)rotate(-.5deg)}to{opacity:0;transform:translate(-50%)translateY(-10px)scale(1.04)rotate(-1.5deg)}}@keyframes fs-kill-callout-b{0%{opacity:0;filter:blur(4px);transform:translate(-50%)translateY(-10px)scale(1.5)rotate(2deg)}18%{opacity:1;filter:blur();transform:translate(-50%)scale(.88)rotate(-1deg)}34%{transform:translate(-50%)scale(1.06)rotate(1deg)}72%{opacity:1;transform:translate(-50%)scale(1)rotate(.5deg)}to{opacity:0;transform:translate(-50%)translateY(-10px)scale(1.04)rotate(1.5deg)}}.fs-results-panel{text-align:center;width:min(560px,100%)}.fs-result-mode{color:var(--fs-muted);display:block}.fs-result-score{color:var(--fs-gold);font-variant-numeric:tabular-nums;margin:7px 0 22px;font-size:clamp(54px,14vw,94px);line-height:1;display:block}.fs-result-stats{gap:8px;margin:0 0 24px;display:grid}.fs-result-stats>div{border-bottom:1px solid #765a7273;justify-content:space-between;padding:9px 0;display:flex}.fs-result-stats dt{color:var(--fs-muted)}.fs-result-stats dd{margin:0;font-weight:800}.fs-result-actions{justify-content:center;gap:10px;display:flex}.fs-primary-button,.fs-secondary-button{border-radius:9px;min-height:46px;padding:0 20px;font-weight:800}.fs-primary-button{background:var(--fs-accent)}.fs-secondary-button{background:#261c28}.fs-onboarding{--fs-onboarding-focus-x:50vw;--fs-onboarding-focus-y:44vh;z-index:30;box-sizing:border-box;color:var(--fs-ink);font-family:Inter,ui-sans-serif,system-ui,sans-serif;position:fixed;inset:0}.fs-onboarding.fs-onboarding[hidden]{display:none}.fs-onboarding[data-presentation=modal]{padding:max(22px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(28px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));background:radial-gradient(circle 150px at var(--fs-onboarding-focus-x) var(--fs-onboarding-focus-y), transparent 0 58%, #07040a57 76%, #07040adb 100%);place-items:end center;display:grid}.fs-onboarding-card{box-sizing:border-box;background:#140e17f5;border:1px solid #ffc857ad;border-radius:14px;width:min(520px,100%);padding:20px 22px;box-shadow:0 18px 64px #0000009e}.fs-onboarding-card h1{letter-spacing:-.04em;margin:3px 0 7px;font-size:clamp(28px,6vw,43px);line-height:1}.fs-onboarding-eyebrow{color:var(--fs-gold);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:11px;font-weight:900}.fs-onboarding-copy{color:var(--fs-muted);margin:0 0 16px;font-size:clamp(14px,2.2vw,17px);line-height:1.45}.fs-onboarding-action{width:100%}.fs-onboarding[data-presentation=hint]{pointer-events:none}.fs-onboarding[data-presentation=hint] .fs-onboarding-card{top:max(88px, calc(env(safe-area-inset-top) + 76px));text-align:center;background:#140e17e6;border-color:#ffc857b8;border-radius:999px;width:max-content;max-width:calc(100vw - 32px);padding:9px 16px;position:absolute;left:50%;transform:translate(-50%)}.fs-onboarding[data-presentation=hint] .fs-onboarding-card h1{color:var(--fs-gold);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:clamp(15px,2.5vw,22px)}.fs-onboarding[data-presentation=hint] .fs-onboarding-eyebrow,.fs-onboarding[data-presentation=hint] .fs-onboarding-copy{display:none}.fs-onboarding-target{border:3px solid var(--fs-gold);border-radius:50%;width:72px;height:72px;animation:.9s ease-in-out infinite alternate fs-onboarding-target;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 8px #ffc85729,0 0 28px #ffc857b8}.fs-onboarding-target[hidden]{display:none}@keyframes fs-onboarding-target{to{transform:translate(-50%,-50%)scale(1.12)}}.fs-shop-panel{grid-template-rows:auto minmax(0,1fr);width:min(980px,100%);max-height:min(820px,100dvh - 44px);padding:clamp(18px,3vw,32px);display:grid;overflow:hidden}.fs-shop-header{grid-template-columns:minmax(0,1fr) auto auto;align-items:start;gap:18px;display:grid}.fs-shop-header h1{font-size:clamp(34px,6vw,58px)}.fs-shop-promise{color:var(--fs-muted);margin:8px 0 18px}.fs-shop-message{border:1px solid var(--fs-line);color:var(--fs-ink);background:#211923;border-radius:8px;margin:0;padding:10px 12px}.fs-demo-balance{border:1px solid var(--fs-line);text-align:right;background:#261c28;border-radius:10px;min-width:90px;padding:9px 12px;display:grid}.fs-demo-balance strong{color:var(--fs-gold);font-variant-numeric:tabular-nums;font-size:24px}.fs-demo-balance span{color:var(--fs-muted);text-transform:lowercase;font-size:11px}.fs-shop-close{background:#261c28;border-radius:9px;min-height:44px;padding:0 14px}.fs-shop-catalogue{scrollbar-gutter:stable;gap:24px;padding:4px 5px 24px 0;display:grid;overflow:auto}.fs-shop-slot h2{margin:0 0 9px;font-size:18px}.fs-shop-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:9px;display:grid}.fs-cosmetic-card{background:#211822;border:1px solid #765a7294;border-radius:11px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:5px 10px;padding:12px;display:grid}.fs-cosmetic-card[data-state=equipped]{border-color:var(--fs-gold)}.fs-cosmetic-mark{width:42px;height:42px;color:var(--fs-gold);background:#3a293a;border-radius:50%;grid-row:span 2;place-items:center;font-weight:900;display:grid}.fs-cosmetic-card h3{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:15px;overflow:hidden}.fs-cosmetic-status{color:var(--fs-muted);margin:0;font-size:11px}.fs-cosmetic-action{background:var(--fs-accent);border-radius:8px;grid-column:1/-1;min-height:44px;margin-top:5px;font-weight:800}.fs-cosmetic-action:disabled{cursor:default;opacity:.58}.fs-shop-launcher{right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));z-index:22;background:#261c28;border-radius:999px;min-height:44px;padding:0 16px;position:fixed}.fs-settings-control{box-sizing:border-box;max-width:100%}.fs-settings-stack{top:max(12px, env(safe-area-inset-top));right:max(12px, env(safe-area-inset-right));z-index:13;justify-items:end;gap:7px;max-width:calc(100vw - 24px);display:grid;position:fixed}.fs-settings-option{-webkit-user-select:none;user-select:none;min-height:36px;padding:0 3px}.fs-settings-option input{width:18px;height:18px;accent-color:var(--fs-accent);margin:0}.fs-app-state{z-index:50;background:radial-gradient(circle at 50% 25%,#621b3873,#0000 42%),linear-gradient(160deg,#17101b,#080609 72%);overflow:auto}.fs-state-panel{width:min(560px,100%);position:relative;overflow:hidden}.fs-state-panel h1{font-size:clamp(34px,7vw,60px)}.fs-state-message{margin-bottom:15px}.fs-state-detail{border-left:3px solid var(--fs-accent);color:var(--fs-muted);overflow-wrap:anywhere;background:#0000003d;border-radius:4px;margin:0 0 22px;padding:10px 12px;font:12px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace}.fs-state-actions{flex-wrap:wrap;gap:10px;display:flex}.fs-loader{box-sizing:border-box;border:4px solid #ffffff2e;border-top-color:var(--fs-accent);border-radius:50%;width:36px;height:36px;margin:0 0 20px;animation:.8s linear infinite fs-spin;display:block}.fs-app-state[data-state=asset-failure] .fs-eyebrow,.fs-app-state[data-state=caught-error] .fs-eyebrow{color:var(--fs-gold)}@keyframes fs-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.fs-loader{animation-duration:1.8s;animation-timing-function:steps(4,end)}.fs-kill-callout[data-pulse=a]{animation:.48s ease-out both fs-kill-callout-reduced-a}.fs-kill-callout[data-pulse=b]{animation:.48s ease-out both fs-kill-callout-reduced-b}.fs-onboarding-target{animation:none}}@keyframes fs-kill-callout-reduced-a{0%,to{opacity:0}12%,76%{opacity:1}}@keyframes fs-kill-callout-reduced-b{0%,to{opacity:0}12%,76%{opacity:1}}@media (width<=1050px){.fs-kill-callout{top:max(88px, calc(env(safe-area-inset-top) + 80px))}#app:has(.fs-kill-callout:not([hidden])) .fs-combo{opacity:0}}@media (width<=640px){.fs-mode-grid{grid-template-columns:1fr}.fs-mode-button{min-height:0}.fs-objective{display:none}.fs-hud-top{box-sizing:border-box;justify-content:space-between;width:100%}.fs-shop-header{grid-template-columns:minmax(0,1fr) auto}.fs-shop-header>div:first-child{grid-column:1/-1}.fs-shop-panel{max-height:calc(100dvh - 28px)}.fs-settings-control{width:100%}.fs-settings-stack{left:max(12px, env(safe-area-inset-left));justify-items:stretch}#app[data-game-state=playing] .fs-settings-stack{top:auto;bottom:max(12px, env(safe-area-inset-bottom))}.fs-settings-option{min-height:44px}}@media (orientation:portrait) and (width<=640px){.fs-screen{place-items:start center}.fs-panel{border-radius:14px;padding:24px 18px}.fs-result-actions,.fs-state-actions{flex-direction:column}.fs-result-actions>button,.fs-state-actions>button{width:100%}.fs-shop-panel{padding:18px 14px}}@media (orientation:landscape) and (height<=520px){.fs-screen{padding:max(10px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));place-items:start center}.fs-panel{padding:18px 22px}.fs-panel h1{font-size:clamp(32px,9vh,48px)}.fs-intro{margin:8px 0 14px}.fs-mode-button{min-height:108px;padding:12px}.fs-controls{margin-top:10px}.fs-shop-panel{max-height:calc(100dvh - 20px)}.fs-state-panel{margin:auto}#app[data-game-state=playing] .fs-settings-stack{top:auto;right:max(14px, env(safe-area-inset-right));bottom:max(10px, env(safe-area-inset-bottom));left:max(14px, env(safe-area-inset-left));grid-template-columns:repeat(2,minmax(0,1fr));justify-items:stretch}.fs-kill-callout{top:44svh}.fs-onboarding[data-presentation=modal]{background:linear-gradient(90deg,#07040a33,#07040ae0 64%);place-items:center end;padding:12px 18px}.fs-onboarding-card{width:min(430px,48vw);padding:15px 18px}.fs-onboarding-card h1{font-size:clamp(26px,7vh,38px)}.fs-onboarding-copy{margin-bottom:11px;font-size:14px}}
