:root{--bg-0: #07121e;--bg-1: #0b1f34;--ink: #07121e;--paper: #fff7ea;--cyan: #18e0ff;--blue: #3b6bff;--green: #2ee06a;--red: #ff3b5b;--yellow: #ffd23f;--purple: #9b5bff;color-scheme:dark;font-family:Rubik,system-ui,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;min-height:100vh}body{display:flex;justify-content:center;align-items:safe center;padding:16px;color:#eaf6ff;overflow-x:hidden;background:radial-gradient(circle at 20% 10%,rgba(24,224,255,.12),transparent 45%),radial-gradient(circle at 85% 90%,rgba(155,91,255,.14),transparent 45%),linear-gradient(160deg,var(--bg-1) 0%,var(--bg-0) 70%)}body:before{content:"";position:fixed;top:-40px;right:-40px;bottom:-40px;left:-40px;background-image:linear-gradient(rgba(24,224,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(24,224,255,.06) 1px,transparent 1px);background-size:38px 38px;-webkit-mask-image:radial-gradient(circle at center,#000 30%,transparent 80%);mask-image:radial-gradient(circle at center,#000 30%,transparent 80%);pointer-events:none;z-index:0;animation:grid-drift 24s linear infinite}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse at center,transparent 55%,rgba(2,7,13,.5) 100%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E")}@keyframes grid-drift{to{background-position:38px 38px}}::selection{background:#18e0ff52;color:#fff}#app{position:relative;z-index:1;width:min(680px,100%)}.lobby{display:flex;flex-direction:column;gap:20px}.lobby-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.arcade-title{font-family:Bangers,system-ui,sans-serif;font-size:clamp(2.6rem,11vw,4rem);line-height:.9;letter-spacing:2px;margin:0;color:var(--yellow);text-shadow:3px 3px 0 var(--purple),6px 6px 0 rgba(0,0,0,.4),0 0 18px rgba(255,210,63,.25);animation:title-glow 3.4s ease-in-out infinite}.arcade-title span{color:var(--cyan);text-shadow:3px 3px 0 var(--blue),6px 6px 0 rgba(0,0,0,.4),0 0 18px rgba(24,224,255,.3)}@keyframes title-glow{0%,to{filter:brightness(1)}50%{filter:brightness(1.12)}}.arcade-sub{margin:8px 0 0;font-weight:700;color:#bfe6ff;font-size:.92rem}.game-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.game-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:8px;padding:18px;min-height:168px;border-radius:22px;cursor:pointer;color:#eaf6ff;background:radial-gradient(circle at 80% 0%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 60%),#07101cd1;border:3px solid color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:0 14px 34px #00000073;transition:transform .14s ease,box-shadow .14s ease,border-color .2s ease}.game-card:not(.locked):hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 20px 44px #00000080,0 0 0 1px var(--accent)}.game-card:not(.locked):active{transform:translateY(-1px)}.game-card.locked{cursor:default;opacity:.55;filter:grayscale(.4)}.card-emoji{font-size:2.6rem;line-height:1;filter:drop-shadow(0 6px 12px color-mix(in srgb,var(--accent) 50%,transparent))}.card-title{font-family:Bangers,system-ui,sans-serif;letter-spacing:1px;font-size:1.5rem;color:var(--accent)}.card-tagline{font-size:.86rem;font-weight:600;color:#cfe6f7;flex:1}.card-foot{width:100%;display:flex;align-items:center;justify-content:space-between;font-weight:800;font-size:.85rem}.card-best{color:var(--yellow)}.card-play{color:var(--accent)}.soon{letter-spacing:2px;font-size:.78rem;color:#9fc3e0;border:2px solid rgba(255,255,255,.18);border-radius:999px;padding:3px 12px}.lobby-foot{text-align:center;font-size:.85rem;color:#8fb6d6}.install-banner{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:16px;background:linear-gradient(135deg,#18e0ff29,#3b6bff29);border:2px solid rgba(24,224,255,.4);animation:pop .35s ease}.install-ic{font-size:1.5rem}.install-text{flex:1;font-size:.86rem;font-weight:600;color:#eaf6ff}.install-go{flex:0 0 auto;padding:9px 16px;border-radius:12px;font-weight:800;cursor:pointer;color:#07121e;border:none;background:linear-gradient(135deg,var(--cyan),var(--blue))}.install-x{flex:0 0 auto;width:30px;height:30px;border-radius:9px;cursor:pointer;color:#cfe6f7;background:#ffffff14;border:1px solid rgba(255,255,255,.15)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:20px;background:#03080eb8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:screen-in .25s ease}.modal{position:relative;width:min(440px,100%);text-align:center;padding:28px 22px 22px;border-radius:24px;background:#091220fa;border:3px solid rgba(24,224,255,.3);box-shadow:0 24px 70px #0009}.modal-x{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:10px;cursor:pointer;color:#cfe6f7;background:#ffffff0f;border:1px solid rgba(255,255,255,.15)}.modal-ic{font-size:3rem}.modal-title{font-family:Bangers,system-ui,sans-serif;letter-spacing:1.5px;font-size:1.8rem;margin:6px 0 2px;color:var(--yellow)}.modal-sub{margin:0 0 16px;font-weight:700;color:var(--cyan);font-size:.9rem}.install-steps{text-align:left;margin:0 0 18px;padding-left:22px;display:grid;gap:10px}.install-steps li{font-size:.96rem;line-height:1.4;color:#eaf6ff}.install-steps b{color:var(--cyan)}.modal .cta-btn{font-size:1.3rem;padding:12px 28px;margin-bottom:10px}.modal .ghost-btn{display:block;width:100%}.lobby-bar{display:flex;gap:10px;flex-wrap:wrap}.player-chip,.board-btn{flex:1;min-width:140px;padding:11px 16px;border-radius:14px;font-weight:800;cursor:pointer;color:#eaf6ff;background:#ffffff0f;border:2px solid rgba(255,255,255,.15);transition:transform .12s ease,background .2s ease}.board-btn{background:#ffd23f24;border-color:#ffd23f66;color:var(--yellow)}.player-chip:hover,.board-btn:hover{transform:translateY(-2px)}.name-input{width:min(360px,100%);margin:4px 0 18px;padding:14px 18px;border-radius:16px;border:2px solid rgba(24,224,255,.4);background:#ffffff0f;color:#fff;font-family:inherit;font-size:1.1rem;font-weight:700;text-align:center;outline:none}.name-input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #18e0ff33}.board-screen{align-items:stretch;overflow:visible}.board-title{font-family:Bangers,system-ui,sans-serif;letter-spacing:1.5px;font-size:1.6rem;color:var(--yellow);margin:0;flex:1;text-align:center}.board-note{margin-bottom:12px;padding:10px 12px;border-radius:12px;font-size:.82rem;color:#ffd9a0;background:#ffd23f1a;border:1px solid rgba(255,210,63,.3)}.board-select{width:100%;margin-bottom:14px;padding:13px 44px 13px 16px;border-radius:14px;font-family:inherit;font-size:1rem;font-weight:800;color:#eaf6ff;cursor:pointer;background-color:#ffffff0f;border:2px solid rgba(24,224,255,.4);-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2318e0ff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");background-repeat:no-repeat;background-position:right 14px center}.board-select:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px #18e0ff33}.board-select option{color:#07121e;background:#fff}.board-list{display:grid;gap:8px;min-height:120px}.board-row{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:#ffffff0d;border:2px solid rgba(255,255,255,.08)}.board-row.me{border-color:var(--cyan);background:#18e0ff1f}.board-rank{font-size:1.2rem;font-weight:900;text-align:center;color:var(--yellow)}.board-name{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-score{font-weight:900;color:var(--cyan)}.board-loading,.board-empty{text-align:center;padding:28px 12px;color:#8fb6d6;font-weight:600}@media (max-width: 460px){.game-grid{grid-template-columns:1fr}}.screen{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:22px;border-radius:26px;background:#07101cd1;border:3px solid rgba(24,224,255,.25);box-shadow:0 26px 70px #0000008c,inset 0 0 60px #18e0ff0d;overflow:hidden;animation:screen-in .35s ease}@keyframes screen-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.topbar{position:absolute;top:14px;right:14px}.icon-btn{width:42px;height:42px;border-radius:12px;border:2px solid rgba(255,255,255,.15);background:#ffffff0f;font-size:1.1rem;cursor:pointer;color:#fff}.hero-emoji{font-size:5.2rem;filter:drop-shadow(0 8px 18px rgba(24,224,255,.45));margin:10px 0}.game-title{font-family:Bangers,system-ui,sans-serif;font-size:clamp(3rem,14vw,4.6rem);line-height:.9;letter-spacing:2px;margin:0;color:var(--yellow);text-shadow:3px 3px 0 var(--red),6px 6px 0 rgba(0,0,0,.4)}.game-title span{display:block;color:var(--cyan);text-shadow:3px 3px 0 var(--blue),6px 6px 0 rgba(0,0,0,.4)}.game-sub{font-weight:700;font-size:1.05rem;margin:14px 0 18px;color:#cdeaff}.best-badge{background:#ffd23f24;border:2px solid rgba(255,210,63,.4);color:var(--yellow);font-weight:700;padding:8px 16px;border-radius:999px;margin-bottom:18px}.cta-btn{font-family:Bangers,system-ui,sans-serif;letter-spacing:2px;font-size:1.7rem;padding:14px 40px;border:none;border-radius:18px;cursor:pointer;color:var(--ink);background:linear-gradient(135deg,var(--cyan),var(--blue));box-shadow:0 8px #1d3a8a,0 14px 26px #0006;transition:transform .12s ease,box-shadow .12s ease}.cta-btn:active{transform:translateY(6px);box-shadow:0 2px #1d3a8a,0 6px 12px #0006}.hint{margin-top:18px;font-size:.85rem;color:#8fb6d6}.hud{width:100%;display:grid;gap:10px;margin-bottom:16px}.hud-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.defense{flex:1}.hud-label{font-size:.78rem;font-weight:700;color:#bfe6ff}.bar{height:16px;margin-top:4px;border-radius:999px;background:#ffffff14;border:2px solid rgba(255,255,255,.12);overflow:hidden}.bar-fill{height:100%;border-radius:999px;transition:width .5s cubic-bezier(.2,.9,.3,1),background .4s ease}.bar-fill.high{background:linear-gradient(90deg,var(--green),#7dffb0)}.bar-fill.mid{background:linear-gradient(90deg,var(--yellow),#ffe98a)}.bar-fill.low{background:linear-gradient(90deg,var(--red),#ff8aa0)}.hud-stats{display:flex;align-items:center;gap:8px}.hud-stats .icon-btn{width:36px;height:36px;font-size:.95rem}.score{font-weight:900;font-size:1.1rem;color:var(--yellow);white-space:nowrap}.hud-bottom{justify-content:space-between}.dots{display:flex;gap:7px}.dot{width:11px;height:11px;border-radius:50%;background:#ffffff2e;border:2px solid rgba(255,255,255,.15)}.dot.done{background:var(--green);border-color:var(--green)}.dot.current{background:var(--cyan);border-color:var(--cyan);box-shadow:0 0 10px var(--cyan)}.combo{font-weight:900;color:var(--yellow);animation:pop .3s ease}.battle{width:100%;display:flex;flex-direction:column;align-items:center}.villain-card{position:relative;padding:14px 28px;border-radius:20px;background:linear-gradient(160deg,#ff3b5b29,#9b5bff29);border:3px solid rgba(255,59,91,.4);margin-bottom:14px}.villain-emoji{font-size:4.4rem;line-height:1;filter:drop-shadow(0 6px 14px rgba(255,59,91,.5));animation:villain-idle 1.6s ease-in-out infinite}.villain-emoji.defeated{animation:defeated .6s ease forwards}.villain-name{font-family:Bangers,system-ui,sans-serif;letter-spacing:1.5px;font-size:1.5rem;color:var(--red);margin-top:6px;text-shadow:2px 2px 0 rgba(0,0,0,.4)}.villain-tag{font-size:.8rem;font-weight:700;color:#ffb3c1;text-transform:uppercase}.attack-text{font-weight:700;font-size:1.02rem;line-height:1.45;margin:6px 4px 18px;color:#eaf6ff}.mail-card{width:100%;padding:16px 18px;border-radius:18px;margin-bottom:16px;background:#ffffff0d;border:2px solid rgba(255,255,255,.12);text-align:left}.mail-head{display:flex;align-items:center;gap:12px;padding-bottom:10px;margin-bottom:10px;border-bottom:1px dashed rgba(255,255,255,.15)}.mail-avatar{font-size:1.6rem;width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#18e0ff1f}.mail-from{font-weight:900;font-size:1.05rem}.mail-label{font-size:.74rem;color:#8fb6d6;text-transform:uppercase;letter-spacing:1px}.mail-text{margin:0;font-weight:600;font-size:1.02rem;line-height:1.5;color:#eaf6ff;word-break:break-word}.verdict-btn{padding:18px 14px;border-radius:16px;border:2px solid transparent;font-weight:900;font-size:1.05rem;cursor:pointer;color:#fff;transition:transform .12s ease,filter .2s ease}.verdict-btn.danger{background:#ff3b5b2e;border-color:#ff3b5b80}.verdict-btn.safe{background:#2ee06a2e;border-color:#2ee06a80}.verdict-btn:not(:disabled):hover{transform:translateY(-2px);filter:brightness(1.15)}.verdict-btn:disabled{cursor:default;opacity:.5}.verdict-btn.chosen-correct{opacity:1;box-shadow:0 0 0 3px var(--green);animation:pop .3s ease}.verdict-btn.chosen-wrong{opacity:1;box-shadow:0 0 0 3px var(--red)}.pw-card{width:100%;display:flex;align-items:center;gap:12px;padding:16px 18px;border-radius:18px;margin-bottom:12px;background:#2ee06a14;border:2px dashed rgba(46,224,106,.4)}.pw-card.final{justify-content:center;margin:10px 0 14px}.pw-anvil{font-size:1.8rem}.pw-string{font-family:Courier New,monospace;font-weight:700;font-size:1.3rem;letter-spacing:1px;color:var(--green);word-break:break-all;text-shadow:0 0 12px rgba(46,224,106,.4)}.ing-frag{display:inline-block;min-width:1.6em;padding:1px 7px;margin-right:6px;border-radius:8px;font-family:Courier New,monospace;font-weight:800;background:#ffffff1f;color:#fff}.mem-grid{width:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.mem-card{position:relative;aspect-ratio:1 / 1;border:none;border-radius:14px;cursor:pointer;padding:0;background:transparent}.mem-card .mem-back,.mem-card .mem-face{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border-radius:14px;font-size:clamp(1.6rem,8vw,2.4rem);transition:opacity .18s ease,transform .18s ease}.mem-card .mem-back{background:linear-gradient(135deg,#9b5bff59,#3b6bff59);border:2px solid rgba(155,91,255,.5);color:#fff9;opacity:1}.mem-card .mem-face{background:#ffffff14;border:2px solid rgba(24,224,255,.4);opacity:0;transform:rotateY(90deg)}.mem-card.flipped .mem-back{opacity:0;transform:rotateY(90deg)}.mem-card.flipped .mem-face{opacity:1;transform:rotateY(0)}.mem-card:not(.flipped):not(.matched):hover .mem-back{transform:translateY(-2px)}.mem-card.matched .mem-face{border-color:var(--green);background:#2ee06a2e;box-shadow:0 0 0 2px var(--green);animation:pop .3s ease}.hunt-grid{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.hunt-cell{aspect-ratio:1 / 1;border-radius:16px;border:2px solid rgba(255,255,255,.08);background:#ffffff0a;cursor:pointer;display:grid;place-items:center;padding:0;overflow:hidden}.hunt-icon{font-size:clamp(1.8rem,9vw,2.8rem);opacity:0;transform:scale(.3);transition:opacity .12s ease,transform .12s ease}.hunt-cell.up .hunt-icon{opacity:1;transform:scale(1);animation:pop .18s ease}.hunt-cell.is-threat{border-color:#ff5b7a66;background:#ff5b7a14}.hunt-cell.caught{border-color:var(--green);background:#2ee06a33}.hunt-cell.zap{border-color:var(--red);background:#ff3b5b38;animation:shake .4s ease}.url-btn{display:flex;align-items:center;gap:10px}.url-glyph{font-size:1.2rem}.url-btn code{font-family:Courier New,monospace;font-size:1.05rem;font-weight:700;letter-spacing:.5px;color:#eaf6ff;word-break:break-all}.url-btn.reveal-fake{border-color:var(--yellow);box-shadow:inset 0 0 0 1px #ffd23f80}.url-btn.correct code{color:#6effb0}.incident-card{width:100%;text-align:center;padding:16px 18px;border-radius:18px;margin-bottom:14px;background:#ff9f1c1a;border:2px solid rgba(255,159,28,.4)}.incident-emoji{font-size:2.6rem;line-height:1}.incident-title{font-weight:900;font-size:1.12rem;margin:6px 0 4px;color:#ffd9a0}.incident-sub{font-size:.85rem;color:#cfe6f7}.step-btn{display:flex;align-items:center;gap:12px}.step-num{flex:0 0 auto;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;font-weight:900;font-size:.9rem;color:#07121e;background:#fff3}.step-btn.placed{border-color:var(--green);background:#2ee06a29;opacity:1}.step-btn.placed .step-num{background:var(--green)}.step-btn.step-hint{border-color:var(--yellow);box-shadow:0 0 0 3px #ffd23f66}.match-hint{width:100%;text-align:center;font-weight:800;font-size:.9rem;color:#9fe6df;margin-bottom:10px}.match-board{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:10px}.match-col{display:grid;gap:10px;align-content:start}.match-item{width:100%;min-height:64px;padding:10px 12px;border-radius:14px;font-weight:700;font-size:.9rem;line-height:1.25;cursor:pointer;color:#eaf6ff;border:2px solid rgba(255,255,255,.12);background:#ffffff0d;transition:transform .12s ease,background .2s ease,border-color .2s ease}.match-item.threat{border-color:#ff5b7a59;background:#ff5b7a14}.match-item.defense{border-color:#1ad6c059;background:#1ad6c014}.match-item:not(.matched):hover{transform:translateY(-2px)}.match-item.selected{border-color:var(--cyan);box-shadow:0 0 0 3px #18e0ff4d}.match-item.matched{border-color:var(--green);background:#2ee06a2e;opacity:.65;cursor:default;animation:pop .3s ease}.choices{width:100%;display:grid;gap:12px}.choices.two-col{grid-template-columns:1fr 1fr}.choice-btn{width:100%;text-align:left;padding:16px 18px;border-radius:16px;border:2px solid rgba(24,224,255,.3);background:#18e0ff12;color:#eaf6ff;font-weight:700;font-size:1rem;cursor:pointer;transition:transform .12s ease,background .2s ease,border-color .2s ease}.choice-btn:hover{transform:translateY(-2px);background:#18e0ff24}.choice-btn:disabled{cursor:default;opacity:.55}.choice-btn.correct{background:#2ee06a33;border-color:var(--green);opacity:1;animation:pop .3s ease}.choice-btn.wrong{background:#ff3b5b33;border-color:var(--red);opacity:1}.feedback{width:100%;min-height:8px;margin-top:14px}.fb{padding:12px 14px;border-radius:14px;font-weight:600;line-height:1.4;animation:pop .3s ease}.fb-good{background:#2ee06a24;border:2px solid rgba(46,224,106,.4)}.fb-bad{background:#ff3b5b24;border:2px solid rgba(255,59,91,.4)}.burst{position:absolute;top:38%;left:50%;transform:translate(-50%,-50%) rotate(-8deg);font-family:Bangers,system-ui,sans-serif;font-size:clamp(3rem,13vw,4.5rem);letter-spacing:2px;pointer-events:none;z-index:5;animation:burst .85s ease forwards}.burst-good{color:var(--green);text-shadow:3px 3px 0 #063,0 0 22px rgba(46,224,106,.6)}.burst-bad{color:var(--red);text-shadow:3px 3px 0 #600,0 0 22px rgba(255,59,91,.6)}.result-emoji{font-size:5rem;margin:8px 0;filter:drop-shadow(0 8px 18px rgba(255,210,63,.4))}.result-title{font-family:Bangers,system-ui,sans-serif;letter-spacing:2px;font-size:clamp(2.4rem,10vw,3.4rem);margin:0;color:var(--yellow);text-shadow:3px 3px 0 var(--red),6px 6px 0 rgba(0,0,0,.4)}.rank{font-weight:900;font-size:1.1rem;margin:12px 0 6px;color:var(--cyan)}.result-advice{font-weight:600;color:#cdeaff;margin:0 0 18px;line-height:1.45}.result-stats{display:flex;gap:28px;margin-bottom:16px}.stat{display:flex;flex-direction:column;align-items:center}.stat span{font-family:Bangers,system-ui,sans-serif;font-size:2.4rem;color:var(--yellow);line-height:1}.stat small{font-size:.78rem;color:#9fc3e0;text-transform:uppercase;letter-spacing:1px}.new-record{background:#ffd23f29;border:2px solid rgba(255,210,63,.5);color:var(--yellow);font-weight:800;padding:8px 18px;border-radius:999px;margin-bottom:18px;animation:pop .4s ease}.result-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:center}.ghost-btn{font-weight:800;font-size:1rem;padding:12px 24px;border-radius:16px;cursor:pointer;color:#eaf6ff;background:#ffffff0f;border:2px solid rgba(255,255,255,.18);transition:transform .12s ease,background .2s ease}.ghost-btn:hover{transform:translateY(-2px);background:#ffffff1f}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.float{animation:float 2.6s ease-in-out infinite}@keyframes villain-idle{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-6px) rotate(2deg)}}@keyframes defeated{0%{transform:scale(1) rotate(0);opacity:1}30%{transform:scale(1.25) rotate(8deg)}to{transform:scale(.2) rotate(70deg);opacity:0}}@keyframes pop{0%{transform:scale(.7);opacity:0}60%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}.pop{animation:pop .35s ease}@keyframes burst{0%{transform:translate(-50%,-50%) rotate(-8deg) scale(.3);opacity:0}35%{transform:translate(-50%,-50%) rotate(-8deg) scale(1.15);opacity:1}70%{transform:translate(-50%,-50%) rotate(-8deg) scale(1);opacity:1}to{transform:translate(-50%,-50%) rotate(-8deg) scale(1.1);opacity:0}}@keyframes shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-8px)}40%,60%{transform:translate(8px)}}.shake{animation:shake .5s cubic-bezier(.36,.07,.19,.97)}.game-card{position:relative;overflow:hidden;isolation:isolate;animation:card-rise .55s cubic-bezier(.2,.85,.25,1) backwards}.game-card:nth-child(1){animation-delay:.04s}.game-card:nth-child(2){animation-delay:.1s}.game-card:nth-child(3){animation-delay:.16s}.game-card:nth-child(4){animation-delay:.22s}.game-card:nth-child(5){animation-delay:.28s}.game-card:nth-child(6){animation-delay:.34s}.game-card:nth-child(7){animation-delay:.4s}.game-card:nth-child(8){animation-delay:.46s}@keyframes card-rise{0%{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:none}}.game-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-image:radial-gradient(color-mix(in srgb,var(--accent) 40%,transparent) 1.4px,transparent 1.6px);background-size:11px 11px;-webkit-mask-image:radial-gradient(circle at 88% 6%,#000 0%,transparent 46%);mask-image:radial-gradient(circle at 88% 6%,#000 0%,transparent 46%);opacity:.55;transition:opacity .25s ease}.game-card:after{content:"";position:absolute;top:0;left:-120%;width:70%;height:100%;z-index:1;pointer-events:none;background:linear-gradient(100deg,transparent,rgba(255,255,255,.16),transparent);transform:skew(-18deg);transition:left .55s ease}.game-card:not(.locked):hover:after{left:130%}.game-card:not(.locked):hover:before{opacity:.9}.game-card:not(.locked):hover{transform:translateY(-5px) rotate(-.6deg)}.game-card:not(.locked):hover .card-emoji{animation:emoji-wiggle .5s ease}@keyframes emoji-wiggle{0%,to{transform:rotate(0) scale(1)}30%{transform:rotate(-9deg) scale(1.12)}65%{transform:rotate(7deg) scale(1.08)}}.card-emoji{transition:transform .2s ease}.soon{background:repeating-linear-gradient(-45deg,#ffd23f1f,#ffd23f1f 6px,#ffffff0a 6px,#ffffff0a 12px);border-color:#ffd23f59;color:#ffe08a}.choice-btn,.verdict-btn,.step-btn,.match-item{box-shadow:0 4px #00000059}.choice-btn:not(:disabled):active,.verdict-btn:not(:disabled):active,.step-btn:not(:disabled):active,.match-item:not(.matched):active{transform:translateY(4px)!important;box-shadow:0 0 #00000059}.cta-btn{position:relative;overflow:hidden}.cta-btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translate(-100%);animation:cta-sheen 3.2s ease-in-out infinite}@keyframes cta-sheen{0%,60%{transform:translate(-100%)}to{transform:translate(100%)}}.player-chip:active,.board-btn:active{transform:translateY(2px)}.bar-fill{position:relative;overflow:hidden}.bar-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,transparent 40%,rgba(255,255,255,.45) 50%,transparent 60%);transform:translate(-100%);animation:bar-sheen 2.4s ease-in-out infinite}@keyframes bar-sheen{0%,70%{transform:translate(-100%)}to{transform:translate(100%)}}.result-emoji{position:relative;z-index:1}.result-emoji:before{content:"";position:absolute;top:-40%;right:-40%;bottom:-40%;left:-40%;z-index:-1;background:radial-gradient(circle,rgba(255,210,63,.35),transparent 65%);animation:result-pulse 2s ease-in-out infinite}@keyframes result-pulse{0%,to{opacity:.5;transform:scale(.9)}50%{opacity:1;transform:scale(1.15)}}.result-title{animation:title-glow 2.6s ease-in-out infinite}.lobby-head,.lobby-bar,.lobby-foot{animation:card-rise .5s cubic-bezier(.2,.85,.25,1) backwards}.lobby-head{animation-delay:0s}.lobby-bar{animation-delay:.08s}.lobby-foot{animation-delay:.5s}.result-emoji:after{content:"";position:absolute;top:-75%;right:-75%;bottom:-75%;left:-75%;z-index:-2;pointer-events:none;background:repeating-conic-gradient(from 0deg,rgba(255,210,63,.14) 0deg 5deg,transparent 5deg 13deg);-webkit-mask-image:radial-gradient(circle,#000 6%,transparent 60%);mask-image:radial-gradient(circle,#000 6%,transparent 60%);animation:rays-spin 18s linear infinite}@keyframes rays-spin{to{transform:rotate(360deg)}}:focus-visible{outline:3px solid var(--cyan);outline-offset:2px;border-radius:8px}.cta-btn:focus-visible,.game-card:focus-visible{outline-offset:4px}:focus:not(:focus-visible){outline:none}.confetti{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;pointer-events:none;overflow:hidden}.confetti i{position:absolute;top:-6%;width:9px;height:14px;background:var(--c);border-radius:2px;box-shadow:0 0 8px var(--c);opacity:0;animation:confetti-fall var(--d) cubic-bezier(.25,.6,.4,1) var(--delay) forwards}.confetti i.round{width:11px;height:11px;border-radius:50%}@keyframes confetti-fall{0%{transform:translateY(0) translate(0) rotate(0);opacity:0}12%{opacity:1}85%{opacity:1}to{transform:translateY(110vh) translate(var(--x)) rotate(var(--r));opacity:0}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0ms!important}}
