@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-cyrillic-wght-normal-C627f1f8.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Unbounded Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/assets/unbounded-latin-wght-normal-D5afBTBx.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-cyrillic-wght-normal-DayYxulF.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-latin-wght-normal-Dun_Rd-l.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-display:"Unbounded Variable", "Onest Variable", system-ui, sans-serif;--font-body:"Onest Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--bg:#0a0820;--bg2:#1a1246;--text:#f4f2ff;--muted:#a9a5cf;--line:#ffffff21;--hi:#ffffff24;--glass:#fff1;--glass-strong:#ffffff1c;--panel:#ffffff12;--panel2:#ffffff1c;--sheet:#17123d;--green:#3af0a5;--green-glow:#3af0a580;--green-bg:#3af0a529;--on-green:#032b1b;--decoy:#a29ecb;--decoy-bg:#a29ecb1f;--bomb:#ff5573;--bomb-glow:#ff557380;--bomb-bg:#ff557333;--warn:#ffbb3d;--cyan:#38dcff;--accent:#8f7bff;--accent-2:#ff62c8;--grad-brand:linear-gradient(120deg, #7b5cff 0%, #c15bff 52%, #ff5fb5 100%);--grad-heat:linear-gradient(90deg, #35e3c0 0%, #ffd23f 38%, #ff8a3a 66%, #ff3e5e 100%);--tile-bg:linear-gradient(165deg, #ffffff21, #ffffff0d);--shadow-card:0 14px 34px -14px #030019bf;--shadow-btn:0 10px 26px -8px #8f7bffa6;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--r-lg:22px;--r-md:16px}@media (prefers-color-scheme:light){:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f2ff;--bg2:#ebe4ff;--text:#1c1744;--muted:#625d92;--line:#46329629;--hi:#ffffffe6;--glass:#ffffffb8;--glass-strong:#ffffffe6;--panel:#ffffffbf;--panel2:#5a46be17;--sheet:#fff;--green:#0aa872;--green-glow:#0aa87266;--green-bg:#0aa87224;--decoy:#7d78a8;--decoy-bg:#7d78a821;--bomb:#e42e52;--bomb-glow:#e42e5261;--bomb-bg:#e42e5221;--warn:#e59200;--cyan:#0a9fd0;--accent:#6a4cff;--accent-2:#e2379f;--tile-bg:linear-gradient(165deg, #fff, #f2edff);--shadow-card:0 14px 30px -16px #3c28a059;--shadow-btn:0 10px 24px -8px #6a4cff8c}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%}body{background:var(--bg);min-height:100dvh;color:var(--text);font:400 16px / 1.45 var(--font-body), sans-serif;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;margin:0}.ambient{pointer-events:none;z-index:0;background:radial-gradient(120% 70% at 50% -8%, var(--bg2), var(--bg) 62%);position:fixed;inset:0;overflow:hidden}.ambient i{will-change:transform;border-radius:50%;position:absolute}.ambient .a{background:radial-gradient(closest-side,#7042ff8c,#0000);width:92vmax;height:92vmax;animation:28s ease-in-out infinite alternate drift-a;top:-48vmax;left:-38vmax}.ambient .b{background:radial-gradient(closest-side,#ff40b252,#0000);width:78vmax;height:78vmax;animation:34s ease-in-out infinite alternate drift-b;top:6vh;right:-42vmax}.ambient .c{background:radial-gradient(closest-side,#18aaff4d,#0000);width:86vmax;height:86vmax;animation:40s ease-in-out infinite alternate drift-c;bottom:-52vmax;left:-8vmax}.ambient .heat{height:80vmax;opacity:calc(var(--heat,0) * .62);background:radial-gradient(closest-side,#ff2e56e6,#0000);border-radius:50%;transition:opacity 1.2s;bottom:-36vmax;left:-30vmax;right:-30vmax}.app.danger .ambient .heat{animation:1.1s ease-in-out infinite heartbeat}@keyframes drift-a{to{transform:translate(14vmax,10vmax)scale(1.12)}}@keyframes drift-b{to{transform:translate(-16vmax,14vmax)scale(.9)}}@keyframes drift-c{to{transform:translate(18vmax,-12vmax)scale(1.15)}}@keyframes heartbeat{50%{opacity:calc(var(--heat,0) * .95)}}@media (prefers-color-scheme:light){.ambient .a{background:radial-gradient(closest-side,#966eff80,#0000)}.ambient .b{background:radial-gradient(closest-side,#ff78c866,#0000)}.ambient .c{background:radial-gradient(closest-side,#5ac8ff66,#0000)}.ambient .heat{opacity:calc(var(--heat,0) * .4)}}.app{overflow-x:clip}.wrap{z-index:1;max-width:560px;padding:max(12px, env(safe-area-inset-top)) 16px max(40px, env(safe-area-inset-bottom));margin:0 auto;position:relative}button{font:inherit;color:inherit;background:var(--glass-strong);border:1px solid var(--line);cursor:pointer;box-shadow:inset 0 1px 0 var(--hi);transition:transform .18s var(--ease-out), border-color .2s, background .2s, box-shadow .2s, opacity .2s;border-radius:14px;padding:10px 16px;font-weight:600}button:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent) 70%, transparent);transform:translateY(-1px)}button:active:not(:disabled){transform:translateY(1px)scale(.97)}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}button.primary{background:var(--grad-brand);color:#fff;box-shadow:var(--shadow-btn), inset 0 1px 0 #ffffff59;border-color:#0000;font-weight:700;position:relative;overflow:hidden}button.primary:hover:not(:disabled){filter:brightness(1.08)saturate(1.1);border-color:#0000}button.primary.shine:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 35%,#ffffff73 50%,#0000 65%);animation:3.6s ease-in-out infinite shine;position:absolute;inset:0;transform:translate(-120%)}@keyframes shine{0%,55%{transform:translate(-120%)}to{transform:translate(120%)}}button:disabled{opacity:.5;cursor:default}button.link{box-shadow:none;color:var(--muted);text-underline-offset:3px;background:0 0;border:0;padding:10px 8px;font-size:14px;font-weight:500;text-decoration:underline}.icon{border-radius:14px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;padding:0;display:inline-flex}.icon svg{width:20px;height:20px}header{animation:rise .6s var(--ease-out) both;align-items:center;gap:8px;display:flex}.brand{align-items:center;gap:11px;min-width:0;margin-right:auto;display:flex}.logo{filter:drop-shadow(0 6px 14px #965aff8c);flex:none;width:40px;height:40px}.logo .iris{transform-origin:24px 24px;animation:7s ease-in-out infinite look}@keyframes look{0%,40%,to{transform:translate(0)}50%,60%{transform:translate(3px,-1px)}70%,80%{transform:translate(-3px,1px)}}h1{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;background:var(--grad-brand);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:21px;font-weight:800;line-height:1}@media (prefers-color-scheme:light){h1{filter:saturate(1.15)}}.nav{animation:rise .6s 60ms var(--ease-out) both;align-items:center;gap:8px;margin:16px 0 14px;display:flex}.nav .name{text-align:center;min-width:0;font-family:var(--font-display);letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:14px;font-weight:600;overflow:hidden}.nav .name small{font-family:var(--font-body);letter-spacing:0;color:var(--muted);text-overflow:ellipsis;margin-top:3px;font-size:12px;font-weight:500;display:block;overflow:hidden}.nav .name.swap{animation:swap .45s var(--ease-out)}@keyframes swap{0%{opacity:0;transform:translateY(6px)}}.btn-new{background:linear-gradient(var(--sheet), var(--sheet)) padding-box, var(--grad-brand) border-box;border:1px solid #0000;border-radius:14px;flex:none;padding:10px 14px;font-size:14px}@media (prefers-color-scheme:dark){.btn-new{background:linear-gradient(#1b1450, #1b1450) padding-box, var(--grad-brand) border-box}}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn-row{flex-wrap:wrap;gap:8px;display:flex}.banner{border-radius:var(--r-md);background:var(--bomb-bg);border:1px solid var(--bomb);justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px;padding:12px 14px;font-size:14px;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(12px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.ambient i{animation:none}.fx{display:none}}.meter-card{border-radius:var(--r-lg);background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(16px)saturate(140%);box-shadow:var(--shadow-card), inset 0 1px 0 var(--hi);animation:rise .6s .12s var(--ease-out) both;padding:14px 16px 12px;transition:border-color .6s,box-shadow .6s;position:relative}.meter-card.warm{border-color:color-mix(in srgb, var(--warn) 45%, var(--line))}.meter-card.danger{border-color:var(--bomb);box-shadow:0 0 0 1px color-mix(in srgb, var(--bomb) 40%, transparent), 0 0 34px -6px var(--bomb-glow), var(--shadow-card);animation:rise .6s .12s var(--ease-out) both, alarm 1.1s ease-in-out infinite}@keyframes alarm{50%{box-shadow:0 0 0 1px color-mix(in srgb, var(--bomb) 60%, transparent), 0 0 46px -2px var(--bomb-glow), var(--shadow-card)}}.mc-top{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.mc-label{font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.mc-bomb{width:26px;height:26px;color:var(--text);overflow:visible}.mc-bomb .spark-dot{transform-origin:19px 5px;animation:flicker calc(1.3s - var(--heat,0) * .95s) ease-in-out infinite}.meter-card.danger .mc-bomb{animation:.35s linear infinite jitter}@keyframes flicker{0%,to{opacity:1;transform:scale(1)}50%{opacity:.65;transform:scale(1.7)}}@keyframes jitter{25%{transform:translate(-1px,1px)rotate(-4deg)}75%{transform:translate(1px,-1px)rotate(4deg)}}.val{font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:28px;font-weight:800;line-height:1;position:relative}.val .num{display:inline-block}.val .num.bump{animation:bump .5s var(--ease-spring)}@keyframes bump{40%{transform:scale(1.28)}}.float{font-family:var(--font-body);color:var(--bomb);text-shadow:0 0 12px var(--bomb-glow);animation:up 1.5s var(--ease-out) forwards;pointer-events:none;white-space:nowrap;font-size:15px;font-weight:800;position:absolute;top:-20px;right:0}@keyframes up{0%{opacity:0;transform:translateY(8px)scale(.8)}20%{opacity:1;transform:translateY(0)scale(1.1)}to{opacity:0;transform:translateY(-20px)}}.fuse{background:var(--panel2);border-radius:99px;height:16px;position:relative;box-shadow:inset 0 2px 5px #00000059}.fuse-fill{background:var(--grad-heat);clip-path:inset(0 var(--rest,100%) 0 0 round 99px);transition:clip-path .9s var(--ease-out);box-shadow:0 0 18px -2px var(--bomb-glow);border-radius:99px;position:absolute;inset:0}.fuse-fill:after{content:"";border-radius:inherit;background:linear-gradient(#fff6,#0000 55%);position:absolute;inset:0}.fuse-tick{background:var(--text);opacity:.32;border-radius:2px;width:2px;margin-left:-1px;position:absolute;top:-3px;bottom:-3px}.fuse-spark{width:26px;height:26px;transition:left .9s var(--ease-out);pointer-events:none;background:radial-gradient(circle,#fff 0 14%,#ffd34d 32%,#ff6e288c 55%,#0000 72%);border-radius:50%;margin:-13px 0 0 -13px;animation:.5s ease-in-out infinite alternate twinkle;position:absolute;top:50%}.fuse-spark.off{opacity:0}@keyframes twinkle{0%{transform:scale(.8)}to{transform:scale(1.25)}}.tiers{letter-spacing:.06em;margin-top:9px;font-size:13px;line-height:1;display:flex}.tier{color:var(--muted);opacity:.85;padding-left:1px;transition:color .4s,opacity .4s,text-shadow .4s}.tier:first-child,.tier:nth-child(2){width:25%}.tier:nth-child(3){width:50%}.tier.on{color:var(--warn);opacity:1;text-shadow:0 0 12px color-mix(in srgb, var(--warn) 70%, transparent)}.tier.lost{opacity:.22}.goal{color:var(--muted);animation:rise .6s .18s var(--ease-out) both;justify-content:center;align-items:center;gap:7px;margin:16px 0 12px;font-size:13px;font-weight:500;display:flex}.gem{width:18px;height:18px;color:var(--muted);opacity:.55;transition:color .3s,opacity .3s,filter .3s}.gem.on{color:var(--green);opacity:1;filter:drop-shadow(0 0 7px var(--green-glow));animation:gem-pop .6s var(--ease-spring)}@keyframes gem-pop{0%{transform:scale(.4)rotate(-40deg)}60%{transform:scale(1.5)rotate(8deg)}}.goal .cnt{font-variant-numeric:tabular-nums;margin-left:6px}.goal .cnt b{color:var(--text);font-family:var(--font-display);font-weight:700}.board{position:relative}.grid{grid-template-columns:repeat(4,1fr);gap:9px;margin:0;padding:0;list-style:none;display:grid}.slot{animation:deal .6s var(--ease-spring) backwards;animation-delay:calc(var(--i,0) * 45ms + .12s);display:block}@keyframes deal{0%{opacity:0;transform:translateY(26px)scale(.7)rotate(-7deg)}}.tile{--c:var(--line);aspect-ratio:1/.92;background:var(--tile-bg);border:1.5px solid var(--line);min-height:70px;box-shadow:inset 0 1px 0 var(--hi), 0 10px 18px -12px #000000b3;text-align:center;overflow-wrap:anywhere;border-radius:16px;justify-content:center;align-items:center;padding:6px 4px;font-size:clamp(13px,4vw,16px);font-weight:650;line-height:1.12;transition:background .35s,border-color .35s,box-shadow .35s,color .35s,filter .35s;display:flex;position:relative}.tile.long{font-size:clamp(11px,3.3vw,13.5px)}.tile .word{z-index:1;position:relative}.tile.t{--c:var(--green);border-color:color-mix(in srgb, var(--green) 62%, transparent);background:radial-gradient(90% 80% at 50% 130%, var(--green-bg), transparent 70%), var(--tile-bg);box-shadow:inset 0 1px 0 var(--hi), 0 8px 22px -10px var(--green-glow)}.tile.b{--c:var(--bomb);border-color:color-mix(in srgb, var(--bomb) 68%, transparent);background:radial-gradient(90% 80% at 50% 130%, var(--bomb-bg), transparent 70%), var(--tile-bg)}.board .tile.b:not(.rev){animation:2.6s ease-in-out infinite ember}@keyframes ember{50%{box-shadow:inset 0 1px 0 var(--hi), 0 0 22px -2px var(--bomb-glow)}}.tile .mark{width:14px;height:14px;color:var(--c);display:flex;position:absolute;top:6px;left:7px}.tile .mark svg{width:100%;height:100%}.tile.b .mark svg{filter:drop-shadow(0 0 5px var(--bomb-glow))}.tile .tag{font-size:13px;font-weight:800;line-height:1.2;position:absolute;top:4px;right:7px}.tile.rev .mark{display:none}.tile.rev.t{color:var(--on-green);box-shadow:inset 0 1px 0 #ffffff8c, 0 12px 30px -8px var(--green-glow);background:linear-gradient(160deg,#6bfac0,#16c684);border-color:#0000}.tile.rev.d{background:var(--decoy-bg);color:var(--muted);box-shadow:none;filter:saturate(.5);border-color:#0000}.tile.rev.d .word{text-decoration:line-through;text-decoration-thickness:2px;-webkit-text-decoration-color:color-mix(in srgb, var(--bomb) 70%, transparent);text-decoration-color:color-mix(in srgb, var(--bomb) 70%, transparent)}.tile.rev.b{color:#fff;box-shadow:inset 0 1px 0 #fff6, 0 12px 34px -6px var(--bomb-glow);background:linear-gradient(160deg,#ff7f96,#d3173f);border-color:#0000}.tile.pop{z-index:3}.tile.pop.t{animation:flip .75s var(--ease-out)}.tile.pop.d{animation:miss .6s var(--ease-out)}.tile.pop.b{animation:blast .7s var(--ease-out)}@keyframes flip{0%{transform:perspective(520px)rotateY(-100deg)scale(.85)}55%{transform:perspective(520px)rotateY(12deg)scale(1.12)}80%{transform:perspective(520px)rotateY(-4deg)scale(1.02)}to{transform:none}}@keyframes miss{0%{transform:scale(1.1)rotate(-4deg)}30%{transform:translate(-7px)rotate(2deg)}55%{transform:translate(6px)}80%{transform:translate(-3px)}to{transform:none}}@keyframes blast{0%{transform:scale(.6)}40%{transform:scale(1.4)rotate(5deg)}to{transform:none}}.tile.pop.t:after{content:"";border-radius:inherit;border:2px solid var(--green);opacity:0;pointer-events:none;animation:.8s ease-out .2s ring;position:absolute;inset:-2px}.tile.pop.b:after{content:"";border-radius:inherit;border:3px solid var(--bomb);opacity:0;pointer-events:none;animation:.9s ease-out ring;position:absolute;inset:-2px}@keyframes ring{0%{opacity:.95;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.spark{width:7px;height:7px;box-shadow:0 0 10px 2px var(--green);opacity:0;pointer-events:none;background:#fff;border-radius:50%;margin:-3.5px;position:absolute;top:50%;left:50%}.tile.pop .spark{animation:spark .85s var(--ease-out) .18s}@keyframes spark{0%{opacity:1;transform:rotate(var(--a)) translateX(0) scale(1)}to{opacity:0;transform:rotate(var(--a)) translateX(var(--d)) scale(.2)}}.grid.thinking .tile:not(.rev){animation:1.3s ease-in-out infinite reading;animation-delay:calc(var(--i,0) * 80ms)}@keyframes reading{50%{border-color:var(--cyan);filter:brightness(1.45);transform:scale(.965)}}.scan{pointer-events:none;opacity:0;border-radius:24px;transition:opacity .3s;position:absolute;inset:-6px;overflow:hidden}.board.thinking .scan{opacity:1}.scan:before{content:"";background:linear-gradient(180deg, transparent 0%, transparent 38%, color-mix(in srgb, var(--cyan) 45%, transparent) 50%, transparent 62%, transparent 100%);animation:1.5s ease-in-out infinite sweep;position:absolute;inset:0}@keyframes sweep{0%{transform:translateY(-100%)}to{transform:translateY(100%)}}.grid.boom{animation:.6s shake}@keyframes shake{10%,90%{transform:translate(-3px)}20%,80%{transform:translate(6px,2px)}30%,50%,70%{transform:translate(-9px,-2px)}40%,60%{transform:translate(9px,2px)}}.cmd{background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);box-shadow:var(--shadow-card), inset 0 1px 0 var(--hi);animation:rise .6s .3s var(--ease-out) both;border-radius:22px;gap:8px;margin-top:18px;padding:6px;transition:border-color .25s,box-shadow .25s;display:flex}.cmd:focus-within{border-color:color-mix(in srgb, var(--accent) 85%, transparent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 24%, transparent), 0 12px 34px -12px var(--accent)}.cmd input{min-width:0;font:inherit;color:inherit;background:0 0;border:0;outline:none;flex:1;padding:11px 4px 11px 14px;font-size:16px;font-weight:500}.cmd input::placeholder{color:var(--muted);opacity:.8}.cmd button{border-radius:17px;align-items:center;gap:6px;padding:0 15px;font-size:15px;display:inline-flex}.cmd button svg{width:18px;height:18px;transition:transform .25s var(--ease-out)}.cmd button:hover:not(:disabled) svg{transform:translate(3px)}.hint{text-align:center;min-height:26px;color:var(--muted);justify-content:center;align-items:center;gap:9px;margin:12px 4px 0;font-size:14px;font-weight:500;display:flex}.hint.err{color:var(--bomb);animation:.4s nope}.hint.ok{color:var(--green)}@keyframes nope{25%{transform:translate(-5px)}75%{transform:translate(5px)}}.wave{gap:4px;display:inline-flex}.wave i{background:var(--cyan);border-radius:50%;width:6px;height:6px;animation:1s ease-in-out infinite wave}.wave i:nth-child(2){animation-delay:.15s}.wave i:nth-child(3){animation-delay:.3s}@keyframes wave{0%,to{opacity:.4;transform:translateY(0)}50%{opacity:1;transform:translateY(-5px)}}.hist{gap:8px;margin-top:16px;display:grid}.tip{border-radius:var(--r-md);background:var(--glass);border:1px dashed var(--line);color:var(--muted);animation:rise .6s .4s var(--ease-out) both;align-items:flex-start;gap:12px;padding:14px 16px;font-size:14px;line-height:1.45;display:flex}.tip svg{width:22px;height:22px;color:var(--accent);flex:none;margin-top:1px}.tip b{color:var(--text)}.hrow{border-radius:var(--r-md);background:var(--glass);border:1px solid var(--line);box-shadow:inset 0 1px 0 var(--hi);animation:slide-in .5s var(--ease-out) both;grid-template-columns:30px 1fr auto;align-items:center;gap:12px;padding:10px 14px 10px 12px;display:grid}@keyframes slide-in{0%{opacity:0;transform:translate(-16px)scale(.97)}}.hrow .ic{background:var(--panel2);border-radius:10px;place-items:center;width:30px;height:30px;font-size:15px;font-weight:800;display:grid}.hrow.t .ic{background:var(--green-bg);color:var(--green)}.hrow.b .ic{background:var(--bomb-bg);color:var(--bomb)}.hrow .ic svg{width:16px;height:16px}.hrow .body{min-width:0;line-height:1.3}.hrow .c{font-size:16px;font-weight:700}.hrow .r{overflow-wrap:anywhere;font-size:14px;display:block}.hrow .r small{color:var(--muted);font-size:12.5px}.hrow .h{background:var(--bomb-bg);color:var(--bomb);white-space:nowrap;font-variant-numeric:tabular-nums;border-radius:99px;align-items:center;gap:5px;padding:5px 9px;font-size:13px;font-weight:700;display:inline-flex}.hrow .h svg{width:13px;height:13px}.good{color:var(--green);font-weight:600}.bad{color:var(--muted)}.end{background:var(--glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);box-shadow:var(--shadow-card), inset 0 1px 0 var(--hi);text-align:center;animation:end-in .7s var(--ease-spring) both;border-radius:26px;margin-top:18px;padding:26px 18px 18px;position:relative;overflow:hidden}@keyframes end-in{0%{opacity:0;transform:translateY(30px)scale(.92)}}.end.win{border-color:color-mix(in srgb, var(--green) 55%, var(--line));box-shadow:0 0 0 1px color-mix(in srgb, var(--green) 20%, transparent), 0 20px 60px -20px var(--green-glow), inset 0 1px 0 var(--hi)}.end.lose{border-color:color-mix(in srgb, var(--bomb) 60%, var(--line));box-shadow:0 0 0 1px color-mix(in srgb, var(--bomb) 24%, transparent), 0 20px 60px -20px var(--bomb-glow), inset 0 1px 0 var(--hi)}.end>:not(.end-halo){position:relative}.end-halo{aspect-ratio:1;pointer-events:none;background:radial-gradient(closest-side, var(--halo), transparent);opacity:.55;border-radius:50%;width:120%;animation:4s ease-in-out infinite alternate halo;position:absolute;top:-30%;left:50%;translate:-50%}.end.win .end-halo{--halo:#3af0a580}.end.lose .end-halo{--halo:#ff55738c}@keyframes halo{to{opacity:.85;scale:1.12}}.end .big{font-family:var(--font-display);letter-spacing:-.01em;font-size:21px;font-weight:800;line-height:1.2}.end.win .big-text{background:linear-gradient(120deg, var(--green), var(--cyan));color:#0000;-webkit-background-clip:text;background-clip:text}.end.lose .big-text{color:var(--bomb)}.big-emoji{animation:emoji-pop .8s .2s var(--ease-spring) both;display:inline-block}@keyframes emoji-pop{0%{transform:scale(0)rotate(-40deg)}}.end .stars{justify-content:center;gap:8px;margin:14px 0 4px;font-size:46px;line-height:1;display:flex}.star{color:var(--muted);opacity:.35;animation:star-in .8s var(--ease-spring) both;animation-delay:calc(.45s + var(--k,0) * .28s);display:inline-block}.star.on{opacity:1;color:#ffc93d;text-shadow:0 0 22px #ffbe28d9,0 2px #c98a00}@keyframes star-in{0%{opacity:0;transform:scale(0)rotate(-140deg)}60%{transform:scale(1.4)rotate(12deg)}}.end .sub{color:var(--muted);margin-top:6px;font-size:15px}.record{letter-spacing:.02em;color:#3a2500;animation:record-in .7s 1.3s var(--ease-spring) both;background:linear-gradient(120deg,#ffd23f,#ff9d3a);border-radius:99px;align-items:center;gap:7px;margin-top:12px;padding:6px 14px;font-size:13px;font-weight:800;display:inline-flex;box-shadow:0 8px 22px -8px #ffaa28cc}.record svg{width:16px;height:16px}@keyframes record-in{0%{opacity:0;transform:scale(.3)rotate(-10deg)}}.recap{flex-wrap:wrap;justify-content:center;gap:6px;margin:16px 0 0;display:flex}.recap i{background:var(--c);width:22px;height:22px;box-shadow:0 4px 10px -3px var(--c);animation:pop-in .4s var(--ease-spring) both;animation-delay:calc(.3s + var(--k,0) * 70ms);border-radius:7px}.recap i.t{--c:#2fdc92}.recap i.d{--c:#ffbb3d}.recap i.b{--c:#ff4f6d}@keyframes pop-in{0%{opacity:0;transform:scale(0)}}.end .btns{grid-template-columns:1fr 1fr;gap:8px;margin-top:18px;display:grid}.end .btns button{justify-content:center;align-items:center;min-height:52px;line-height:1.2;display:flex}.end .btns .primary{grid-column:1/-1;padding:14px 16px;font-size:16px}.end details{text-align:left;border-top:1px solid var(--line);margin-top:16px;padding-top:14px;font-size:14px}.end summary{cursor:pointer;color:var(--muted);text-align:center;font-weight:600;list-style:none}.end summary::-webkit-details-marker{display:none}.end summary:after{content:" ▾"}.end details[open] summary:after{content:" ▴"}.end .row{background:var(--panel);overflow-wrap:anywhere;border-radius:12px;margin:8px 0;padding:8px 12px}.end details p{color:var(--text)}.fx{z-index:40;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti i{top:-20px;left:var(--x);width:var(--w);height:calc(var(--w) * 1.6);background:var(--col);opacity:0;animation:confetti var(--t) cubic-bezier(.3, .6, .5, 1) var(--dl) forwards;border-radius:2px;position:absolute}@keyframes confetti{0%{opacity:1;transform:translate(0,0)rotate(0)rotateX(0)}85%{opacity:1}to{opacity:0;transform:translate3d(var(--dx), 108vh, 0) rotate(var(--rot)) rotateX(720deg)}}.blast .flash{opacity:0;background:radial-gradient(circle at 50% 45%,#fff 0,#ffd34d 16%,#ff3c3cbf 42%,#0000 75%);animation:.9s ease-out flash;position:absolute;inset:0}@keyframes flash{0%{opacity:.95}to{opacity:0}}.blast .ring{opacity:0;border:4px solid #ffd34d;border-radius:50%;width:40px;height:40px;margin:-20px;animation:1s ease-out shock;position:absolute;top:45%;left:50%}.blast .ring.two{border-color:#ff4d4d;animation-delay:.12s}@keyframes shock{0%{opacity:1;transform:scale(.2)}to{opacity:0;transform:scale(22)}}.blast .ember{width:var(--s);height:var(--s);background:var(--col);box-shadow:0 0 12px 2px var(--col);opacity:0;animation:ember-fly 1.1s cubic-bezier(.1, .7, .3, 1) var(--dl) forwards;border-radius:50%;position:absolute;top:45%;left:50%}@keyframes ember-fly{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(var(--dx), var(--dy))}}@media (width>=640px){.wrap{padding-top:28px}.tile{min-height:92px;font-size:18px}.tile.long{font-size:15px}.grid{gap:12px}h1{font-size:24px}}@media (width<=359px){.grid{gap:6px}}.overlay{z-index:50;-webkit-backdrop-filter:blur(8px);background:#06031a9e;justify-content:center;align-items:flex-end;padding:0;animation:.25s both fade;display:flex;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.modal{width:100%;max-width:460px;max-height:min(94dvh,780px);padding:26px 20px calc(20px + env(safe-area-inset-bottom));background:radial-gradient(120% 60% at 50% -20%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 70%), var(--sheet);border:1px solid var(--line);box-shadow:0 -24px 70px -24px #000c, inset 0 1px 0 var(--hi);animation:sheet .5s var(--ease-out);border-bottom:0;border-radius:28px 28px 0 0;position:relative;overflow:auto}.modal:before{content:"";background:var(--line);border-radius:4px;width:40px;height:4px;margin:-14px auto 14px;display:block}@keyframes sheet{0%{opacity:0;transform:translateY(60px)scale(.98)}}@media (width>=560px){.overlay{align-items:center;padding:16px}.modal{border-bottom:1px solid var(--line);border-radius:28px}.modal:before{display:none}}.modal h2{font-family:var(--font-display);letter-spacing:-.01em;margin:0 0 10px;font-size:19px;font-weight:700}.modal p,.modal li{color:var(--muted);font-size:15px}.modal b{color:var(--text)}.modal label{color:var(--muted);margin:14px 0 6px;font-size:13px;font-weight:600;display:block}.modal input,.modal select{width:100%;font:inherit;color:inherit;background:var(--panel2);border:1px solid var(--line);border-radius:14px;padding:12px 14px;font-weight:500}.modal .btns{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.modal .note{color:var(--muted);margin-top:12px;font-size:13px}.orb{width:84px;height:84px;margin:6px auto 14px;position:relative}.orb i{border-radius:50%;position:absolute;inset:0}.orb .core{background:var(--grad-brand);animation:2.2s ease-in-out infinite breathe;inset:18px;box-shadow:0 0 40px 6px #a05aff99}.orb .r1,.orb .r2{border:2px solid var(--accent);opacity:0;animation:2.4s ease-out infinite emit}.orb .r2{border-color:var(--accent-2);animation-delay:1.2s}.orb .sat{animation:3.2s linear infinite orbit}.orb .sat:after{content:"";width:8px;height:8px;box-shadow:0 0 12px 3px var(--cyan);background:#fff;border-radius:50%;margin-left:-4px;position:absolute;top:-3px;left:50%}@keyframes breathe{50%{transform:scale(1.14)}}@keyframes emit{0%{opacity:.8;transform:scale(.5)}to{opacity:0;transform:scale(1.3)}}@keyframes orbit{to{transform:rotate(360deg)}}.modal .orb-title{text-align:center}.steps{gap:8px;margin:12px 0;padding:0;list-style:none;display:grid}.steps li{background:var(--panel);color:var(--muted);border:1px solid #0000;border-radius:14px;align-items:center;gap:10px;padding:10px 14px;transition:color .3s,border-color .3s;display:flex}.steps li.on{color:var(--text);border-color:color-mix(in srgb, var(--accent) 60%, transparent)}.steps li.done{color:var(--green)}.spin{border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;flex:none;width:14px;height:14px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.mini{vertical-align:-2px;border:2px solid var(--line);border-radius:4px;width:14px;height:14px;margin-right:4px;display:inline-block}.mini.t{border-color:var(--green)}.mini.b{border-color:var(--bomb)}.help-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.help-head h2{margin:0}.help-progress{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.help-title{font-family:var(--font-display);letter-spacing:-.01em;animation:rise .5s var(--ease-out) both;margin:16px 0 6px;font-size:18px;font-weight:700;line-height:1.25}.modal .help-text{animation:rise .5s 60ms var(--ease-out) both;color:var(--muted);margin:0;font-size:16px;line-height:1.5}.modal .help-text b{color:var(--text)}.modal .help-rules{margin:10px 0 0;font-size:13px}.dots{justify-content:center;gap:7px;margin:16px 0 0;display:flex}.dots i{background:var(--line);width:8px;height:8px;transition:background .3s, width .35s var(--ease-out);border-radius:99px}.dots i.seen{background:var(--muted)}.dots i.on{background:var(--grad-brand);width:26px}.help-btns{align-items:center}.help-btns .primary{flex:1}.demo{--cycle:8s;background:color-mix(in srgb, var(--bg) 55%, transparent);border:1px solid var(--line);box-shadow:inset 0 1px 0 var(--hi);border-radius:18px;margin-top:12px;padding:12px;position:relative}.demo .mini-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.demo .tile{aspect-ratio:auto;overflow-wrap:normal;word-break:normal;border-radius:12px;min-height:44px;padding:4px 2px;font-size:13px}.demo-view .tile{min-height:42px;padding:4px 1px;font-size:11.5px}.demo .tile .tag{font-size:11px;top:2px;right:4px}.demo .tile .mark{width:10px;height:10px;top:3px;left:4px}.demo .tile.unk{color:var(--muted);border-style:dashed}.demo .tick{opacity:0}.demo-cap{color:var(--muted);text-align:center;margin-bottom:6px;font-size:12px}.demo-say{text-align:center;min-height:20px;margin-top:10px;font-size:14px}.demo-say .warn{color:var(--bomb)}.demo-input{background:var(--panel);border:1px solid var(--accent);border-radius:10px;align-items:center;margin-top:10px;padding:8px 10px;font-size:15px;display:flex}.demo .typed{white-space:nowrap;width:4ch;display:inline-block;overflow:hidden}.demo .caret{background:var(--accent);width:2px;height:1.1em;margin-left:1px}.demo-meter{align-items:center;gap:8px;margin-bottom:10px;display:flex}.demo-bomb{flex:none;width:22px;height:22px}.demo-meter .meter{background:var(--panel2);border-radius:99px;flex:1;height:12px;overflow:hidden;box-shadow:inset 0 2px 4px #0000004d}.demo-meter .meter i{border-radius:99px;width:0;height:100%;display:block}.demo-meter-val{text-align:right;min-width:42px;font-family:var(--font-display);font-size:14px;font-weight:700}.demo-view{grid-template-columns:1fr 1fr;gap:10px;display:grid}.demo-legend{color:var(--muted);grid-column:1/-1;justify-content:center;gap:14px;margin-top:2px;font-size:13px;display:flex}.dot{border:2px solid var(--line);vertical-align:-2px;border-radius:4px;width:12px;height:12px;display:inline-block}.dot.t{border-color:var(--green)}.dot.b{border-color:var(--bomb)}.dot.d{border-color:var(--decoy);background:var(--decoy-bg)}.demo-view .unk{animation:2.4s ease-in-out infinite shimmer}.demo-view .unk:nth-child(2n){animation-delay:.6s}@keyframes shimmer{50%{opacity:.45}}.demo-clue .typed,.demo-heat .typed{animation:type var(--cycle) steps(4, end) infinite}@keyframes type{0%{width:0}14%{width:4ch}94%{width:4ch}to{width:0}}.demo-clue .idle,.demo-heat .idle{animation:think var(--cycle) ease-in-out infinite}@keyframes think{0%,16%{opacity:1}22%,30%{opacity:.5}36%,to{opacity:1}}.demo .tile.pick{background:var(--green-bg);animation:pick var(--cycle) ease infinite}.demo .tile.pick .tick{animation:tick var(--cycle) ease infinite}@keyframes pick{0%,32%{background:var(--panel);transform:scale(1)}36%{background:var(--green-bg);transform:scale(1.14)}42%,92%{background:var(--green-bg);transform:scale(1)}to{background:var(--panel)}}@keyframes tick{0%,34%{opacity:0}40%,92%{opacity:1}to{opacity:0}}.demo-clue .demo-say,.demo-heat .demo-say{animation:sayin var(--cycle) ease infinite}@keyframes sayin{0%,38%{opacity:0;transform:translateY(4px)}46%,92%{opacity:1;transform:none}to{opacity:0}}.demo-heat .meter i{background:var(--warn);width:40%;animation:heat var(--cycle) ease infinite}@keyframes heat{0%,36%{width:0}52%,92%{width:40%}to{width:0}}.demo-heat .v-end{animation:sayin var(--cycle) ease infinite}.demo .tile.hot{animation:hot var(--cycle) ease infinite}@keyframes hot{0%,34%{box-shadow:none}44%,60%,76%{box-shadow:0 0 0 4px color-mix(in srgb, var(--bomb) 35%, transparent)}52%,68%,92%{box-shadow:0 0 0 1px color-mix(in srgb, var(--bomb) 35%, transparent)}to{box-shadow:none}}.demo-boom .meter i{background:var(--bomb);width:100%;animation:boomheat var(--cycle) ease infinite}@keyframes boomheat{0%,8%{background:var(--warn);width:0}16%,30%{background:var(--warn);width:25%}38%,52%{background:var(--warn);width:50%}64%,94%{background:var(--bomb);width:100%}to{background:var(--warn);width:0}}.demo-boom .v-boom{animation:sayin var(--cycle) ease infinite}.demo .miss.m1{animation:miss1 var(--cycle) ease infinite}.demo .miss.m2{animation:miss2 var(--cycle) ease infinite}.demo .miss{color:var(--muted);background:var(--decoy-bg);text-decoration:line-through}@keyframes miss1{0%,12%{color:var(--text);background:var(--panel);text-decoration:none}16%,94%{color:var(--muted);background:var(--decoy-bg);text-decoration:line-through}to{background:var(--panel);text-decoration:none}}@keyframes miss2{0%,34%{color:var(--text);background:var(--panel);text-decoration:none}38%,94%{color:var(--muted);background:var(--decoy-bg);text-decoration:line-through}to{background:var(--panel);text-decoration:none}}.boom-grid{animation:shake8 var(--cycle) ease infinite}@keyframes shake8{0%,62%{transform:none}66%{transform:translate(-5px)}70%{transform:translate(5px)}74%{transform:translate(-3px)}78%,to{transform:none}}.boom-say{height:20px;position:relative}.boom-say span{opacity:0;position:absolute;inset:0}.boom-say .s3{opacity:1;color:var(--bomb);font-weight:700}.boom-say .s1{animation:s1 var(--cycle) ease infinite}.boom-say .s2{animation:s2 var(--cycle) ease infinite}.boom-say .s3{animation:s3 var(--cycle) ease infinite}@keyframes s1{0%,14%{opacity:0}18%,32%{opacity:1}36%,to{opacity:0}}@keyframes s2{0%,36%{opacity:0}40%,54%{opacity:1}58%,to{opacity:0}}@keyframes s3{0%,62%{opacity:0}68%,94%{opacity:1}to{opacity:0}}.demo-goal{gap:10px;padding:14px 12px;display:grid}.goal-row{grid-template-columns:52px 1fr 92px;align-items:center;gap:10px;display:grid}.goal-stars{color:var(--warn);letter-spacing:1px;white-space:nowrap;font-size:16px}.goal-bar{background:var(--panel2);border:1px solid var(--line);border-radius:6px;height:12px;overflow:hidden}.goal-bar i{transform-origin:0;border-radius:6px;height:100%;animation:1.1s cubic-bezier(.2,.8,.2,1) both grow;display:block}.goal-bar .g0{background:var(--green);animation-delay:.1s}.goal-bar .g1{background:var(--warn);animation-delay:.35s}.goal-bar .g2{background:var(--bomb);animation-delay:.6s}@keyframes grow{0%{transform:scaleX(0)}}.goal-label{color:var(--muted);font-size:13px}@media (prefers-reduced-motion:reduce){.demo *,.demo :before{animation:none!important}.demo .tick{opacity:1}.boom-say span{opacity:0}.boom-say .s3{opacity:1}}
