@font-face{font-family:Archivo Variable;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/hearts/fonts/archivo-latin-wdth-normal.woff2) format("woff2-variations")}@font-face{font-family:Manrope Variable;font-weight:200 800;font-display:swap;src:url(/hearts/fonts/manrope-latin-wght-normal.woff2) format("woff2-variations")}:root{--ink: #070a12;--panel: #0e1424;--panel-2: #141d33;--line: rgba(255, 255, 255, .08);--line-2: rgba(255, 255, 255, .14);--text: #eef2fb;--muted: #9aa7c0;--accent: #4d9aff;--accent-hi: #8fc0ff;--mint: #4fe3ae;--gold: #f5c25b;--rose: #ff7a9a;--heart: #ff4f7e;--violet: #a98bff;--display: "Archivo Variable", "Archivo", ui-sans-serif, system-ui, sans-serif;--body: "Manrope Variable", "Manrope", ui-sans-serif, system-ui, -apple-system, sans-serif;--cw: 64px;--tcw: 56px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;overscroll-behavior:none}body{background:var(--ink);color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none}#app{position:fixed;inset:0;overflow:hidden;background:radial-gradient(120% 70% at 50% -10%,rgba(47,107,255,.26),transparent 60%),radial-gradient(90% 60% at 100% 110%,rgba(255,79,126,.12),transparent 60%),var(--ink)}button{font:inherit;color:inherit;cursor:pointer;border:none;background:none;padding:0}button:disabled{cursor:default}svg{display:block}.hidden{display:none!important}.ix{font-family:var(--display);font-weight:800;font-stretch:92%;letter-spacing:-1px}.ix.ten{font-stretch:66%;letter-spacing:-2.5px}.mono{font-family:var(--display);font-weight:850;font-stretch:112%}.screen{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;padding:calc(14px + var(--safe-top)) calc(16px + var(--safe-right)) calc(14px + var(--safe-bottom)) calc(16px + var(--safe-left))}.menu{display:flex;flex-direction:column;gap:12px;width:min(340px,100%)}.btn{display:flex;align-items:center;justify-content:center;gap:10px;height:58px;border-radius:18px;padding:0 16px;font-family:var(--display);font-weight:760;font-stretch:106%;font-size:19px;letter-spacing:.2px;white-space:nowrap;transition:transform .15s ease,filter .15s ease}.btn:active{transform:scale(.97)}.btn svg{width:20px;height:20px;flex:none}.btn-primary{color:#06132e;background:linear-gradient(180deg,#a7cdff,var(--accent) 55%,#2f6bff);box-shadow:0 12px 30px #2f6bff66,inset 0 1px #ffffff80}.btn-ghost{background:var(--panel-2);border:1px solid var(--line-2)}.btn-gold{color:#2a1a02;background:linear-gradient(180deg,#ffe7ad,var(--gold) 55%,#dc9725);box-shadow:0 12px 30px #f5c25b4d,inset 0 1px #ffffff8c}.btn small{font-family:var(--body);font-weight:600;font-size:13px;color:var(--muted)}.btn-primary small{color:#12306a}.btn-gold small{color:#6a4508}.round{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--panel-2);border:1px solid var(--line-2);flex:none}.round svg{width:20px;height:20px}.by{font-size:12px;color:var(--muted)}.by a{color:var(--accent-hi);text-decoration:none}.help-pill{display:flex;align-items:center;gap:7px;height:46px;padding:0 16px 0 12px;border-radius:999px;background:var(--panel-2);border:1px solid var(--line-2);font-weight:750;font-size:14.5px;color:#dbe3f3;white-space:nowrap}.help-pill svg{width:20px;height:20px;color:var(--accent-hi)}.help-pill:active{transform:scale(.96)}.hc svg,.tc svg,.fly svg,.lc svg,.hw-card svg,.backs i svg{width:100%;height:100%}.home{justify-content:center;gap:18px;text-align:center}.home-logo{position:relative;width:230px;height:124px;margin:0 auto}.home-logo .glow{position:absolute;inset:-22px -34px -10px;border-radius:50px;background:radial-gradient(closest-side,rgba(255,79,126,.22),transparent)}.home-logo .lh{position:absolute;left:calc(50% - 46px);top:-4px;width:92px;height:92px;opacity:.55;filter:blur(.4px) drop-shadow(0 0 22px rgba(255,79,126,.7));animation:beat 2.2s ease-in-out infinite}.home-logo .lh path{fill:url(#g-red)}@keyframes beat{0%,to{transform:scale(1)}12%{transform:scale(1.1)}24%{transform:scale(.98)}36%{transform:scale(1.06)}50%{transform:scale(1)}}.home-logo .lc{position:absolute;left:calc(50% - 31px);bottom:0;width:62px;height:87px;border-radius:6px;transform-origin:50% 135%;box-shadow:0 8px 18px #00000073;animation:fan 4.6s cubic-bezier(.45,0,.55,1) infinite}@keyframes fan{0%,to{transform:rotate(calc(var(--i) * 11deg)) translateY(0)}45%,62%{transform:rotate(calc(var(--i) * 18deg)) translateY(calc(var(--i) * var(--i) * 1.4px))}}.home-logo .lc.q{animation-name:queen-up;z-index:2}@keyframes queen-up{0%,to{transform:translateY(0);box-shadow:0 8px 18px #00000073}45%,62%{transform:translateY(-14px) scale(1.05);box-shadow:0 0 0 2px #a98bffcc,0 0 26px #a98bff99,0 14px 22px #00000080}}.home h1{font-family:var(--display);font-weight:820;font-stretch:112%;font-size:clamp(40px,11vw,62px);line-height:.95;letter-spacing:-1.5px;margin:0}.home h1 span{display:block;font-size:.42em;letter-spacing:6px;font-weight:700;color:var(--accent-hi);margin-bottom:8px}.best-line{font-size:14px;color:var(--muted);letter-spacing:.3px;display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap}.best-line b{font-family:var(--display);color:var(--gold);font-size:18px;margin-left:6px}.setup{width:min(340px,100%);display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:22px;background:linear-gradient(180deg,#151f37,#0f172a);border:1px solid var(--line-2);box-shadow:0 20px 40px #00000059,inset 0 1px #ffffff0d}.opt{display:flex;align-items:center;gap:10px}.opt>span{flex:0 0 64px;text-align:left;font-size:11px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);white-space:nowrap}.seg{flex:1;display:flex;gap:3px;padding:3px;border-radius:13px;background:#0000004d;border:1px solid var(--line);min-width:0}.seg button{flex:1;height:34px;border-radius:10px;font-family:var(--display);font-weight:720;font-size:14.5px;color:var(--muted);transition:background .2s ease,color .2s ease;white-space:nowrap;padding:0 6px;min-width:0}.seg button.on{color:#06132e;background:linear-gradient(180deg,#a7cdff,var(--accent));box-shadow:0 4px 12px #2f6bff59,inset 0 1px #ffffff80}.home-foot{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap}.overlay{position:absolute;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:calc(14px + var(--safe-top)) calc(16px + var(--safe-right)) calc(14px + var(--safe-bottom)) calc(16px + var(--safe-left));background:#04060cb8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:fade .25s ease both}@keyframes fade{0%{opacity:0}}.card{position:relative;width:min(380px,100%);max-height:100%;padding:24px 22px 20px;border-radius:26px;text-align:center;background:linear-gradient(180deg,#17213a,#0d1424);border:1px solid rgba(143,192,255,.3);box-shadow:0 40px 80px #0009;animation:card .4s cubic-bezier(.2,1.3,.4,1) both;display:flex;flex-direction:column}@keyframes card{0%{transform:translateY(24px) scale(.94);opacity:0}}.card h2{font-family:var(--display);font-weight:820;font-stretch:110%;font-size:30px;margin:0 0 4px;letter-spacing:-.5px}.card p{margin:0 0 4px;color:var(--muted)}.card .menu{margin:16px auto 0}.ribbon{align-self:center;display:inline-block;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:1.5px;color:#2a1a02;background:linear-gradient(180deg,#ffe7ad,var(--gold));margin-bottom:10px}.ribbon.blue{color:#06132e;background:linear-gradient(180deg,#cfe2ff,var(--accent-hi))}.game{gap:8px}.bar{width:100%;display:flex;align-items:center;gap:10px;flex:none;min-height:46px}.title-box{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px}.eyebrow{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:11px;letter-spacing:2.2px;font-weight:800;color:var(--accent-hi);text-transform:uppercase;white-space:nowrap}.title{font-family:var(--display);font-weight:800;font-stretch:108%;font-size:19px;line-height:1.05;white-space:nowrap}.title b{color:var(--gold)}.arena{position:relative;flex:1;width:100%;min-height:0}.table{position:absolute;border-radius:28px;overflow:hidden;touch-action:none;background:radial-gradient(70% 60% at 50% 50%,rgba(255,79,126,.1),transparent 70%),radial-gradient(90% 70% at 50% 45%,#173764,#102445 48%,#0b162c);border:1px solid rgba(143,192,255,.2);box-shadow:0 30px 60px #00000080,inset 0 1px #ffffff12,inset 0 0 60px #00000059}.table:before{content:"";position:absolute;inset:9px;border-radius:21px;border:1px solid rgba(143,192,255,.08);pointer-events:none}.table:after{content:"";position:absolute;left:50%;top:50%;width:min(64%,300px);aspect-ratio:1;translate:-50% -50%;border-radius:50%;border:1.5px dashed rgba(143,192,255,.1);pointer-events:none}.table.dark{animation:dark 1.2s ease}@keyframes dark{0%{box-shadow:0 30px 60px #00000080,inset 0 0 60px #00000059}18%{box-shadow:0 30px 60px #00000080,inset 0 0 120px #501ea0d9,inset 0 0 0 2px #a98bff99}to{box-shadow:0 30px 60px #00000080,inset 0 0 60px #00000059}}.trick{position:absolute;inset:0;pointer-events:none}.tc{position:absolute;left:0;top:0;width:var(--tcw);height:calc(var(--tcw) * 1.4);border-radius:calc(var(--tcw) * .09);box-shadow:0 2px #00000040,0 10px 18px #00000073}.tc.land{animation:land .3s cubic-bezier(.2,1.4,.4,1)}@keyframes land{0%{scale:1.1}}.tc.won{box-shadow:0 0 0 3px #f5c25bf2,0 0 26px #f5c25b99,0 10px 18px #00000073;z-index:2}.tc.queen{box-shadow:0 0 0 2px #a98bffd9,0 0 24px #a98bff8c,0 10px 18px #00000073}.tc.queen.won{box-shadow:0 0 0 3px #f5c25bf2,0 0 30px #a98bffcc,0 10px 18px #00000073}.center-note{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.hb-chip{position:absolute;left:50%;bottom:12px;translate:-50% 0;display:flex;align-items:center;gap:6px;padding:5px 12px 5px 9px;border-radius:999px;font-size:10.5px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:var(--muted);white-space:nowrap;background:#060c1a80;border:1px solid var(--line-2);transition:color .3s ease,background .3s ease}.hb-chip svg{width:13px;height:13px;color:#ff7a9a80}.center-note.broken .hb-chip{color:#ffd0db;background:#ff4f7e29;border-color:#ff7a9a73}.center-note.broken .hb-chip svg{color:var(--heart);filter:drop-shadow(0 0 4px rgba(255,79,126,.8))}.pass-badge{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 22px 14px;border-radius:22px;background:#060c1a73;border:1px solid rgba(143,192,255,.2);animation:pop .5s cubic-bezier(.2,1.4,.4,1) both}.pass-badge i{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#2a1a02;background:linear-gradient(180deg,#ffe7ad,var(--gold) 55%,#dc9725);box-shadow:0 10px 24px #f5c25b59,inset 0 1px #fff9}.pass-badge i svg{width:28px;height:28px}.pass-badge.d-left i svg{animation:nudge-l 1.2s ease-in-out infinite}.pass-badge.d-right i svg{animation:nudge-r 1.2s ease-in-out infinite}.pass-badge.d-across i svg{animation:nudge-u 1.2s ease-in-out infinite}@keyframes nudge-l{50%{transform:translate(-4px)}}@keyframes nudge-r{50%{transform:translate(4px)}}@keyframes nudge-u{50%{transform:translateY(-4px)}}.pass-badge .act{margin-top:10px;pointer-events:auto;min-width:128px;justify-content:center}.pass-badge b{font-family:var(--display);font-weight:820;font-size:20px;margin-top:6px}.pass-badge small{font-size:12.5px;color:var(--muted);font-weight:700}@keyframes pop{0%{transform:scale(.6);opacity:0}}.seat{position:absolute;display:flex;align-items:center;gap:10px;padding:8px 12px 8px 8px;border-radius:20px;background:linear-gradient(180deg,#19243feb,#0f1729eb);border:1px solid var(--line-2);box-shadow:0 10px 24px #0000004d,inset 0 1px #ffffff0f;transition:border-color .25s ease,box-shadow .25s ease}.seat.turn{border-color:#4fe3ae8c;box-shadow:0 0 0 1px #4fe3ae40,0 10px 26px #4fe3ae29}.av-wrap{position:relative;width:44px;height:44px;flex:none}.av{position:absolute;inset:3px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 34% 28%,var(--a),var(--b) 78%);box-shadow:inset 0 2px #ffffff59,inset 0 -3px #0003,0 3px 8px #0006}.av>svg{width:48%;height:48%;filter:drop-shadow(0 1px 1px rgba(0,0,0,.3))}.cpu-chip{position:absolute;right:-4px;bottom:-3px;width:18px;height:18px;border-radius:6px;display:grid;place-items:center;color:#06132e;background:linear-gradient(180deg,#e3eeff,#9cc0ff);box-shadow:0 2px 5px #00000073}.cpu-chip svg{width:13px;height:13px}.ring{position:absolute;inset:0;border-radius:50%;opacity:0;transition:opacity .25s ease;background:conic-gradient(from 0deg,var(--mint),var(--accent),var(--mint));-webkit-mask:radial-gradient(closest-side,transparent calc(100% - 3px),#000 calc(100% - 2.5px));mask:radial-gradient(closest-side,transparent calc(100% - 3px),#000 calc(100% - 2.5px))}.turn .ring{opacity:1;animation:spin 1.6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.seat-info{min-width:0;display:flex;flex-direction:column;gap:2px}.seat-name{font-family:var(--display);font-weight:780;font-size:15px;line-height:1.1;white-space:nowrap}.seat-tag{font-size:10px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:var(--accent-hi);white-space:nowrap}.seat-side{display:flex;align-items:center;gap:7px;margin-left:auto}.seat-score{font-family:var(--display);font-weight:840;font-stretch:108%;font-size:20px;line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap}.seat-score small{font-family:var(--body);font-size:9.5px;font-weight:800;color:var(--muted);letter-spacing:1px;margin-left:3px}.taken{display:flex;align-items:center;gap:4px}.taken.bump{animation:bump .5s cubic-bezier(.2,1.6,.4,1)}@keyframes bump{30%{transform:scale(1.3)}}.hp,.qp{display:inline-flex;align-items:center;gap:3px;height:20px;padding:0 7px 0 5px;border-radius:999px;font-family:var(--display);font-weight:820;font-size:12.5px;white-space:nowrap;color:var(--muted);background:#ffffff0f;border:1px solid var(--line)}.hp svg{width:12px;height:12px;color:#ff7a9a73}.hp.on{color:#fff;background:#ff4f7e38;border-color:#ff7a9a80}.hp.on svg{color:var(--heart)}.qp{color:#efe6ff;background:#7b55d659;border-color:#a98bff99;padding:0 6px;gap:1px}.qp svg{width:11px;height:11px;color:#efe6ff}.backs{position:relative;width:64px;height:22px;flex:none}.backs i{position:absolute;left:calc(50% - 6px);bottom:0;width:12px;height:17px;border-radius:2px;box-shadow:0 1px 3px #00000073;transform-origin:50% 160%;transform:rotate(calc(var(--k) * 6.5deg))}.bubble{position:absolute;z-index:5;left:50%;top:100%;transform:translate(-50%,4px);padding:4px 11px;border-radius:999px;font-size:12.5px;font-weight:800;white-space:nowrap;pointer-events:none;color:#06132e;background:#e8f0ff;box-shadow:0 6px 16px #0006;animation:bubble 1.6s ease both}.bubble.blue{background:linear-gradient(180deg,#cfe2ff,var(--accent-hi))}.bubble.think{animation:bubble-in .25s ease both,think 1s ease-in-out .25s infinite alternate;letter-spacing:3px;color:var(--accent-hi);background:#14203cf2;border:1px solid rgba(143,192,255,.35)}@keyframes think{to{color:#fff}}@keyframes bubble{0%{opacity:0;transform:translate(-50%,-2px) scale(.7)}12%{opacity:1;transform:translate(-50%,4px) scale(1.05)}20%{transform:translate(-50%,4px) scale(1)}82%{opacity:1}to{opacity:0;transform:translate(-50%)}}@keyframes bubble-in{0%{opacity:0;transform:translate(-50%,-2px) scale(.7)}}.you .bubble{top:auto;bottom:100%;transform:translate(-50%,-4px);left:22px}.seat.compact{flex-direction:column;gap:4px;padding:9px 6px 8px;width:var(--seat-w, 118px)}.seat.compact .seat-info{align-items:center}.seat.compact .seat-side{margin:0;justify-content:center;flex-wrap:wrap;row-gap:3px}.seat.compact.narrow .seat-side{min-height:43px;align-content:center}.seat.compact .seat-score{font-size:18px}.seat.compact .seat-tag{font-size:8.5px;letter-spacing:.6px}.seat.compact .seat-name{font-size:14px}.seat.compact .backs{margin-top:1px}.me{width:100%;display:flex;align-items:center;gap:10px;flex:none;min-height:48px;position:relative;z-index:3}.you{position:relative;display:flex;align-items:center;gap:9px;flex:none}.you .seat-info{gap:2px}.you-line{display:flex;align-items:center;gap:6px}.you .seat-score{font-size:18px}.status{flex:1;min-width:0;text-align:center;font-weight:750;font-size:14px;color:#d9e6ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status b{color:var(--gold)}.status.warn{color:#ffe39a}.sb{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 3px;margin:0 1px;border-radius:6px;vertical-align:-3px;font-size:14px;line-height:1;background:#fffaf0;color:#16213f;box-shadow:0 1px #0000004d}.sb.s1,.sb.s3{color:#c8234f}.acts{display:flex;align-items:center;gap:8px;flex:none}.act{display:flex;align-items:center;gap:7px;height:46px;padding:0 16px 0 13px;border-radius:15px;font-family:var(--display);font-weight:780;font-size:16px;white-space:nowrap;transition:transform .15s ease,opacity .2s ease,filter .2s ease}.act svg{width:18px;height:18px}.act small{font-family:var(--display);font-size:12px;font-weight:800;opacity:.75}.act.pass{color:#2a1a02;background:linear-gradient(180deg,#ffe7ad,var(--gold) 55%,#dc9725);box-shadow:0 8px 22px #f5c25b59,inset 0 1px #ffffff8c}.act.pass:disabled{color:#ffe7ad;background:#f5c25b14;border:1.5px dashed rgba(245,194,91,.55);box-shadow:none}.act.pass:disabled small{opacity:.8}.act.pass.ready{animation:call .9s ease-in-out infinite alternate}@keyframes call{to{transform:scale(1.06)}}.tool{position:relative;width:46px;height:46px;border-radius:15px;display:grid;place-items:center;flex:none;background:linear-gradient(180deg,#1b2742,#121a2e);border:1px solid var(--line-2);color:var(--gold);box-shadow:0 8px 18px #00000059,inset 0 1px #ffffff14;transition:transform .15s ease,opacity .2s ease}.tool:active{transform:scale(.93)}.tool svg{width:24px;height:24px}.tool .badge{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;display:grid;place-items:center;font-family:var(--display);font-size:12px;font-weight:800;color:#06132e;background:linear-gradient(180deg,#a7cdff,var(--accent));box-shadow:0 3px 8px #0006}.tool .badge.video{color:#2a1a02;background:linear-gradient(180deg,#ffe7ad,var(--gold))}.tool .badge svg{width:10px;height:10px}.tool.off{opacity:.4}.hand{position:relative;width:100%;flex:none}.hc{position:absolute;left:0;top:0;width:var(--cw);height:calc(var(--cw) * 1.4);border-radius:calc(var(--cw) * .09);transform-origin:50% 100%;touch-action:none;cursor:default;box-shadow:0 1px #00000040,-3px 6px 12px #0006;transition:transform .3s cubic-bezier(.2,1,.3,1),translate .22s cubic-bezier(.2,1.3,.4,1),filter .25s ease,box-shadow .25s ease}.hc.play{translate:0 calc(var(--lift) * -1);cursor:pointer;box-shadow:0 0 0 2px #4fe3aed9,0 0 16px #4fe3ae73,-3px 8px 14px #00000073}.hc.dim{filter:brightness(.55) saturate(.7)}.hc.pick{cursor:pointer}.hc.sel{translate:0 calc(var(--lift) * -1.15);box-shadow:0 0 0 3px #f5c25bf2,0 0 22px #f5c25b8c,-3px 10px 16px #00000080}.hc.new{box-shadow:0 0 0 3px #8fc0ffe6,0 0 20px #8fc0ff8c,-3px 6px 12px #0006}.hc.play.new{box-shadow:0 0 0 3px #8fc0ffe6,0 0 20px #8fc0ff8c,-3px 8px 14px #00000073}.hc.hint{animation:hint .7s ease-in-out infinite alternate}@keyframes hint{0%{box-shadow:0 0 0 3px #f5c25bb3,0 0 12px #f5c25b66}to{box-shadow:0 0 0 4px #f5c25b,0 0 34px #f5c25bd9,-3px 10px 16px #00000080}}.hc.enter{animation:enter .45s cubic-bezier(.2,1.3,.4,1) both}@keyframes enter{0%{translate:0 80%;opacity:0}}.hc.shake{animation:shake .3s ease}@keyframes shake{25%{margin-left:-6px}75%{margin-left:6px}}.fly{position:fixed;z-index:40;left:0;top:0;pointer-events:none;border-radius:9%;transform-origin:50% 50%;box-shadow:0 16px 24px #00000080}.float{position:fixed;z-index:42;pointer-events:none;font-family:var(--display);font-weight:860;font-stretch:112%;color:#fff;white-space:nowrap;transform:translate(-50%,-50%)}.float.points{font-size:30px;color:#ffd0db;text-shadow:0 0 14px rgba(255,79,126,.8),0 3px 12px rgba(0,0,0,.7);animation:rise 1.4s ease-out forwards}.float.points.big{font-size:44px;color:#efe6ff;text-shadow:0 0 18px rgba(169,139,255,.95),0 3px 12px rgba(0,0,0,.7)}.float.points.good{color:#c9ffe9;text-shadow:0 0 14px rgba(79,227,174,.8),0 3px 12px rgba(0,0,0,.7)}.float.word{font-size:clamp(36px,10vw,72px);letter-spacing:-1px;animation:word 1.7s cubic-bezier(.2,1.2,.4,1) forwards;background:linear-gradient(180deg,#fff,#ffe39a 60%,#f5a623);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 12px rgba(0,0,0,.6))}@keyframes rise{0%{transform:translate(-50%,-50%) scale(.6);opacity:0}14%{transform:translate(-50%,-70%) scale(1.15);opacity:1}70%{opacity:1}to{transform:translate(-50%,-180%) scale(1);opacity:0}}@keyframes word{0%{transform:translate(-50%,-50%) scale(.4);opacity:0}16%{transform:translate(-50%,-50%) scale(1.12);opacity:1}72%{transform:translate(-50%,-62%) scale(1);opacity:1}to{transform:translate(-50%,-80%) scale(.98);opacity:0}}.confetti{position:fixed;inset:0;width:100%;height:100%;z-index:60;pointer-events:none}.crack{position:absolute;left:50%;top:50%;width:min(46%,150px);aspect-ratio:1;translate:-50% -58%;z-index:4;pointer-events:none;animation:crack-life 1.5s ease forwards}@keyframes crack-life{0%{opacity:0;transform:scale(.5)}14%{opacity:1;transform:scale(1.08)}24%{transform:scale(1)}80%{opacity:1}to{opacity:0}}.crack .flash{position:absolute;inset:-30%;border-radius:50%;background:radial-gradient(closest-side,#ff4f7ea6,#ff4f7e00);animation:flash 1.5s ease forwards}@keyframes flash{0%{opacity:0;transform:scale(.6)}26%{opacity:1;transform:scale(1.1)}to{opacity:0;transform:scale(1.4)}}.crack .half{position:absolute;inset:0;filter:drop-shadow(0 0 14px rgba(255,79,126,.85)) drop-shadow(0 6px 10px rgba(0,0,0,.5))}.crack .half svg{width:100%;height:100%}.crack .half path{fill:url(#g-red);stroke:#ffd0db;stroke-width:2}.crack .half.l{clip-path:polygon(0 0,52% 0,52% 18%,46% 34%,56% 46%,45% 60%,54% 74%,50% 100%,0 100%);animation:half-l 1.5s cubic-bezier(.3,0,.2,1) forwards}.crack .half.r{clip-path:polygon(52% 0,100% 0,100% 100%,50% 100%,54% 74%,45% 60%,56% 46%,46% 34%,52% 18%);animation:half-r 1.5s cubic-bezier(.3,0,.2,1) forwards}@keyframes half-l{0%,34%{transform:none}60%,to{transform:translate(-12%,6%) rotate(-14deg)}}@keyframes half-r{0%,34%{transform:none}60%,to{transform:translate(12%,6%) rotate(14deg)}}.crack .line{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.crack .line path{fill:none;stroke:#fff;stroke-width:3.5;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;filter:drop-shadow(0 0 4px #fff);animation:crack-line 1.5s ease forwards}@keyframes crack-line{0%,20%{stroke-dashoffset:100;opacity:1}34%{stroke-dashoffset:0;opacity:1}46%,to{stroke-dashoffset:0;opacity:0}}.crack b{position:absolute;left:50%;top:104%;translate:-50% 0;white-space:nowrap;font-family:var(--display);font-weight:860;font-stretch:110%;font-size:clamp(20px,5.6vw,30px);letter-spacing:-.4px;color:#fff;text-shadow:0 0 16px rgba(255,79,126,.9),0 3px 10px rgba(0,0,0,.7);animation:crack-word 1.5s ease forwards}@keyframes crack-word{0%,26%{opacity:0;transform:scale(.6)}38%{opacity:1;transform:scale(1.1)}46%{transform:none}to{opacity:1}}.crack .shard{position:absolute;left:50%;top:45%;width:8px;height:8px;margin:-4px;border-radius:2px;background:#ff9db6;opacity:0;box-shadow:0 0 8px #ff4f7ee6;animation:shard 1.5s ease-out forwards}@keyframes shard{0%,32%{opacity:0;transform:rotate(var(--a)) translateY(0) rotate(45deg)}40%{opacity:1}to{opacity:0;transform:rotate(var(--a)) translateY(-90px) rotate(200deg) scale(.4)}}.qwave{position:absolute;width:20px;height:20px;margin:-10px;border-radius:50%;z-index:3;pointer-events:none;border:3px solid rgba(169,139,255,.95);box-shadow:0 0 22px #a98bffe6,inset 0 0 18px #a98bff99;animation:qwave 1.1s cubic-bezier(.2,.7,.3,1) forwards}@keyframes qwave{0%{transform:scale(.4);opacity:1}to{transform:scale(13);opacity:0}}.q-word{position:absolute;left:50%;top:14%;translate:-50% 0;z-index:5;white-space:nowrap;pointer-events:none;font-family:var(--display);font-weight:860;font-stretch:112%;font-size:clamp(24px,7vw,40px);letter-spacing:-.6px;background:linear-gradient(180deg,#fff,#d9ccff 55%,#8f6bf0);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 12px rgba(123,85,214,.9)) drop-shadow(0 3px 8px rgba(0,0,0,.6));animation:word-in 1.3s cubic-bezier(.2,1.2,.4,1) forwards}@keyframes word-in{0%{opacity:0;transform:scale(.4)}18%{opacity:1;transform:scale(1.12)}30%{transform:none}80%{opacity:1}to{opacity:0;transform:translateY(-8px)}}.moon-fx{position:absolute;left:50%;top:50%;translate:-50% -50%;z-index:6;display:flex;flex-direction:column;align-items:center;gap:4px;pointer-events:none;animation:moon-life 2.4s ease forwards}.moon-fx svg{width:74px;height:74px;color:var(--gold);filter:drop-shadow(0 0 22px rgba(245,194,91,.9));animation:moon-rise 2.4s cubic-bezier(.2,1,.3,1) forwards}.moon-fx b{font-family:var(--display);font-weight:860;font-stretch:112%;font-size:clamp(32px,9vw,58px);letter-spacing:-1px;white-space:nowrap;background:linear-gradient(180deg,#fff,#ffe39a 60%,#f5a623);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 12px rgba(0,0,0,.6))}.moon-fx small{font-size:14px;font-weight:800;color:#ffe7ad;letter-spacing:.4px}@keyframes moon-life{0%{opacity:0;transform:scale(.5)}12%{opacity:1;transform:scale(1.08)}20%{transform:none}85%{opacity:1}to{opacity:0}}@keyframes moon-rise{0%{transform:translateY(30px) rotate(-30deg)}to{transform:none}}.result h2{font-size:30px}.rows{display:flex;flex-direction:column;gap:6px;margin-top:14px}.row{display:flex;align-items:center;gap:10px;padding:7px 10px 7px 7px;border-radius:16px;background:#ffffff0a;border:1px solid var(--line);text-align:left}.row.win{background:linear-gradient(90deg,#f5c25b29,#f5c25b0a);border-color:#f5c25b73}.row.moon{background:linear-gradient(90deg,#a98bff33,#a98bff0a);border-color:#a98bff80}.row .av-wrap{width:36px;height:36px}.row .cpu-chip{width:15px;height:15px;border-radius:5px}.row .cpu-chip svg{width:11px;height:11px}.row .who{flex:1 1 auto;min-width:0}.row .who b{display:block;font-family:var(--display);font-size:15px;line-height:1.1}.row .who small{font-size:11px;font-weight:800;white-space:nowrap;color:var(--rose)}.row .who small.good{color:var(--mint)}.row .who small.zero{color:var(--muted)}.row .left{flex:none;display:flex;gap:4px;align-items:center}.row .pts{text-align:right;flex:0 0 64px}.row .pts b{display:block;font-family:var(--display);font-weight:840;font-size:20px;line-height:1;font-variant-numeric:tabular-nums}.row .place{flex:none;width:22px;font-family:var(--display);font-weight:820;font-size:17px;color:var(--muted);text-align:center}.row.win .place{color:var(--gold)}.bar-t{height:5px;border-radius:3px;background:#ffffff14;margin-top:5px;overflow:hidden}.bar-t i{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,var(--mint),var(--accent));transition:width .9s cubic-bezier(.3,.8,.3,1) .35s}.row.win .bar-t i{background:linear-gradient(90deg,#ffe7ad,var(--gold))}.scores{width:100%;margin-top:12px;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums;table-layout:fixed}.scores th{font-size:10px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:var(--muted);padding:0 4px 5px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scores th:first-child,.scores td:first-child{text-align:left;width:20%}.scores td{padding:4px;text-align:center;color:var(--muted);font-weight:700;border-top:1px solid var(--line)}.scores td.got{color:#ffb3c5}.scores td.minus{color:var(--mint)}.scores td.moon{color:var(--violet);font-weight:800}.scores tr.more td{font-style:italic}.scores tr.total td{font-family:var(--display);font-weight:820;font-size:15px;color:var(--text);border-top:1px solid var(--line-2)}.trophy{width:74px;height:74px;margin:0 auto 8px;border-radius:24px;display:grid;place-items:center;color:#2a1a02;background:linear-gradient(180deg,#ffe7ad,var(--gold) 55%,#dc9725);box-shadow:0 14px 34px #f5c25b66,inset 0 2px #fff9;animation:pop-in .6s cubic-bezier(.2,1.6,.4,1) .15s both;flex:none}.trophy svg{width:44px;height:44px}.trophy.sad{color:#cfd8ea;background:linear-gradient(180deg,#2a3756,#1a2440);box-shadow:0 14px 30px #0006,inset 0 1px #ffffff1f}.trophy.moon{color:#fff6d6;background:linear-gradient(180deg,#8f6bf0,#4b30b8);box-shadow:0 14px 34px #7b55d680,inset 0 2px #ffffff59}@keyframes pop-in{0%{transform:scale(0) rotate(-20deg)}}.statline{margin-top:12px;font-size:13px;color:var(--muted)}.statline b{color:var(--text);font-family:var(--display)}.moon-opts{display:flex;flex-direction:column;gap:10px;margin-top:16px}.moon-opt{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 14px;border-radius:18px;background:var(--panel-2);border:1px solid var(--line-2);transition:transform .15s ease}.moon-opt:active{transform:scale(.97)}.moon-opt b{font-family:var(--display);font-weight:800;font-size:18px}.moon-opt small{font-size:12px;color:var(--muted);font-weight:700}.moon-opt .after{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;width:100%;margin-top:8px}.moon-opt .after i{display:flex;flex-direction:column;align-items:center;padding:4px 2px 5px;border-radius:10px;background:#00000040;font-style:normal;font-family:var(--display);font-weight:820;font-size:15px;color:var(--text)}.moon-opt .after i em{font-style:normal;font-family:var(--body);font-size:10px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}.moon-opt .after i.me{color:var(--gold);box-shadow:inset 0 0 0 1px #f5c25b73}.moon-opt.best{border-color:#f5c25b99;background:linear-gradient(180deg,#f5c25b24,#f5c25b0a)}.game.side .bar{min-height:50px}.game.side .title-box{flex:1 1 0;align-items:flex-start;text-align:left}.game.side .bar .spacer{flex:1 1 0}.game.side .bar .seat{position:relative;padding:5px 12px 5px 6px}.game.side .bar .seat .backs{display:none}.game.side .bottom{width:100%;display:flex;align-items:flex-end;gap:14px;flex:none}.game.side .bottom .you{align-self:center;flex-direction:column;gap:4px;width:96px}.game.side .bottom .you .seat-info{align-items:center}.game.side .bottom .hand{flex:1;width:auto;min-width:0}.game.side .bottom .acts{align-self:center;flex-direction:column-reverse;gap:10px;width:96px}.game.side .status{max-width:100%;font-size:13.5px;text-align:left;color:var(--muted)}.game.side .status.mine{color:#d9e6ff}.game.side .you .bubble{left:50%}.game.side.short{padding-top:calc(8px + var(--safe-top));padding-bottom:calc(8px + var(--safe-bottom));gap:6px}.game.side.short .bar{min-height:44px}.game.side.short .round{width:40px;height:40px}.game.side.short .bottom .you{width:84px}.game.side.short .bottom .you .av-wrap{width:38px;height:38px}.game.side.short .act{height:40px;padding:0 12px 0 10px;font-size:15px}.game.side.short .tool{width:40px;height:40px;border-radius:13px}.game.side.short .bottom .acts{width:84px;gap:8px}.game.side.short .bar .seat{padding:3px 10px 3px 4px;gap:8px}.game.side.short .bar .seat .av-wrap{width:36px;height:36px}.game.side.short .bar .seat .seat-score{font-size:17px}.game.side.short .seat.compact{padding:7px 5px 6px;gap:3px}.game.side.short .seat.compact .av-wrap,.game.portrait.short .seat .av-wrap{width:38px;height:38px}.game.portrait.short .seat.compact{padding:7px 5px 6px;gap:3px}.game.portrait.short .me{min-height:44px}.game.portrait.short .you .av-wrap{width:38px;height:38px}.game.portrait.short .tool,.game.portrait.short .act{height:42px}.game.portrait.short .tool{width:42px}.game.portrait.short .round{width:42px;height:42px}.game.portrait.short .status{font-size:13px}.game.roomy .bar{min-height:60px}.game.roomy .round{width:54px;height:54px}.game.roomy .title{font-size:24px}.game.roomy .eyebrow{font-size:12.5px}.game.roomy .seat{padding:10px 16px 10px 10px;gap:12px}.game.roomy .seat.compact{padding:12px 8px 10px;gap:6px}.game.roomy .seat .av-wrap,.game.roomy .you .av-wrap{width:56px;height:56px}.game.roomy .seat-name{font-size:18px}.game.roomy .seat-tag{font-size:10.5px}.game.roomy .seat-score{font-size:24px}.game.roomy .hp,.game.roomy .qp{height:24px;font-size:14px}.game.roomy .backs{width:84px;height:28px}.game.roomy .backs i{width:16px;height:22px;left:calc(50% - 8px);transform:rotate(calc(var(--k) * 7deg))}.game.roomy .status{font-size:16px}.game.roomy .act{height:54px;font-size:18px;padding:0 20px 0 16px}.game.roomy .tool{width:54px;height:54px;border-radius:17px}.game.roomy .tool svg{width:28px;height:28px}.game.roomy.side .bottom .you,.game.roomy.side .bottom .acts{width:124px}.game.roomy.side .bottom{max-width:1180px}.game.roomy .hb-chip{font-size:12px;bottom:16px}.game.side.short .pass-badge{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto auto;column-gap:14px;row-gap:2px;align-items:center;justify-items:start;padding:12px 16px}.game.side.short .pass-badge i{grid-row:1 / 3;width:44px;height:44px}.game.side.short .pass-badge i svg{width:24px;height:24px}.game.side.short .pass-badge b{margin:0;font-size:18px;align-self:end}.game.side.short .pass-badge small{align-self:start}.game.side.short .pass-badge .act{grid-column:1 / 3;justify-self:stretch;margin-top:8px;height:40px}.game.roomy .pass-badge{padding:22px 30px 18px}.game.roomy .pass-badge i{width:66px;height:66px}.game.roomy .pass-badge b{font-size:26px}.game.roomy .pass-badge small{font-size:14px}@media(max-height:520px){.card{width:min(600px,100%);padding:14px 18px 12px}.card h2,.result h2{font-size:24px}.ribbon{margin-bottom:4px;padding:3px 10px;font-size:11px}.card .menu{flex-direction:row;width:100%;margin-top:10px}.card .menu .btn{flex:1;height:46px;font-size:16px}.card .menu .btn small{display:none}.rows{margin-top:8px;gap:4px}.scores{margin-top:6px;font-size:12px}.scores td{padding:2px 4px}.scores tr.total td{font-size:13px}.row{padding:4px 8px 4px 5px}.row .av-wrap{width:30px;height:30px}.row .pts b{font-size:17px}.trophy{width:50px;height:50px;border-radius:16px;margin-bottom:4px}.trophy svg{width:30px;height:30px}.statline{margin-top:6px}.moon-opts{flex-direction:row;margin-top:10px}.moon-opt{flex:1;padding:10px}.home{display:grid;grid-template-columns:minmax(0,300px) minmax(0,370px);grid-template-rows:1fr auto auto auto auto 1fr;column-gap:40px;row-gap:10px;align-items:center;justify-content:center;align-content:center}.home-logo{grid-column:1;grid-row:2;transform:scale(.8);margin:-10px auto -12px}.home h1{grid-column:1;grid-row:3;font-size:46px}.home .best-line{grid-column:1;grid-row:4}.home .home-foot{grid-column:1;grid-row:5}.home .setup{grid-column:2;grid-row:2 / 4;width:100%;padding:9px;gap:5px}.home .seg button{height:30px}.home .menu{grid-column:2;grid-row:4 / 6;width:100%;flex-direction:row;gap:9px}.home .menu .btn{flex:1;height:50px;font-size:17px;padding:0 10px}.home .menu .btn small{display:none}}@media(max-height:700px)and (min-height:521px){.home{gap:12px}.home-logo{transform:scale(.8);margin:-12px auto}.home h1{font-size:44px}.home .menu{gap:9px}.home .menu .btn{height:50px}.setup{padding:9px;gap:5px}.seg button{height:31px}}@media(min-width:700px)and (min-height:860px){.home{gap:26px}.home-logo{transform:scale(1.3);margin:22px auto 16px}.home h1{font-size:80px}.best-line{font-size:17px}.best-line b{font-size:22px}.menu,.setup{width:440px}.seg button{height:40px;font-size:16px}.opt>span{flex-basis:80px;font-size:12px}.btn{height:64px;font-size:22px;border-radius:20px}.btn small{font-size:15px}.by{font-size:14px}}@media(prefers-reduced-motion:reduce){.home-logo .lc,.home-logo .lh,.turn .ring,.act.pass.ready,.pass-badge i svg,.hc.hint{animation:none}}.site-back{position:absolute;z-index:5;top:calc(12px + var(--safe-top));left:calc(14px + env(safe-area-inset-left,0px));display:flex;align-items:center;gap:4px;height:40px;padding:0 14px 0 9px;border-radius:999px;background:var(--panel-2);border:1px solid var(--line-2);color:var(--text);text-decoration:none;font-family:var(--body);font-weight:700;font-size:14px;letter-spacing:.1px;transition:transform .15s ease}.site-back svg{width:18px;height:18px}.site-back:active{transform:scale(.96)}.exit-btn{align-self:center;flex:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;margin-top:14px;padding:0 18px 0 14px;border-radius:999px;color:#dbe3f3;vertical-align:top;background:linear-gradient(180deg,#ffffff17,#ffffff08);border:1px solid var(--line-2);box-shadow:inset 0 1px #ffffff14,0 6px 16px #00000040;font-family:var(--display);font-weight:740;font-stretch:104%;font-size:15px;letter-spacing:.2px;white-space:nowrap;transition:transform .15s ease,background .15s ease}.exit-btn svg{display:block;width:18px;height:18px;flex:none;color:var(--accent-hi)}.exit-btn:active{transform:scale(.96);background:#ffffff1f}@media(max-height:560px){.exit-btn{height:36px;margin-top:8px;padding:0 15px 0 12px;font-size:14px;gap:7px}.exit-btn svg{width:16px;height:16px}}.card.result{overflow-y:auto;touch-action:pan-y;overscroll-behavior:contain}.card.result>*,.res-col>*{flex-shrink:0}.res-col{display:contents}.card-foot{position:sticky;bottom:-20px;z-index:1;display:flex;flex-direction:column;align-items:center;padding-bottom:20px;margin-bottom:-20px;background:linear-gradient(180deg,#0d142400,#0d1424 16px)}@media(max-height:520px){.card-foot{bottom:-12px;flex-direction:row;gap:10px;padding:10px 0 12px;margin-bottom:-12px;background:linear-gradient(180deg,#0d142400,#0d1424 10px)}.card-foot .menu{flex:1;width:auto;margin:0}.card-foot .exit-btn{height:46px;margin-top:0;padding:0 18px 0 14px;font-size:15px}}@media(max-height:520px)and (min-aspect-ratio:1/1){.card.result{width:min(800px,100%);display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,1fr);grid-template-rows:minmax(0,auto);overflow:hidden;touch-action:none;padding:14px 0}.res-col{display:flex;flex-direction:column;justify-content:center;min-width:0;min-height:0;padding:0 18px}.res-side{border-left:1px solid var(--line)}.res-main .ribbon{margin-bottom:6px}.res-main h2{line-height:1.08}.res-main p{font-size:14px;line-height:1.3}.res-main .rows{display:flex;flex-direction:column;gap:4px;margin-top:9px}.res-main .row{padding:4px 9px 4px 6px;gap:9px}.res-main .row .av-wrap{width:28px;height:28px}.res-main .row .who b{font-size:14px}.res-main .row .who small{display:block;margin-top:1px;font-size:10.5px;line-height:1.3}.res-main .row .pts b{font-size:16px}.res-main .row .bar-t{margin-top:4px}.res-main .trophy{width:44px;height:44px;border-radius:14px}.res-main .trophy svg{width:26px;height:26px}.res-side .scores{margin-top:0}.res-side .scores td{padding:3px 4px}.res-side .statline{margin-top:8px}.res-side .card-foot{position:static;flex-wrap:wrap;justify-content:center;gap:8px 10px;margin:12px 0 0;padding:0;background:none}.res-side .card-foot .menu{flex:1 1 auto;flex-wrap:wrap;min-width:0;gap:8px 10px}.res-side .card-foot .menu .btn{flex:1 1 auto;padding:0 14px}}@media(max-height:340px)and (min-aspect-ratio:1/1){.card.result{padding:10px 0}.res-main h2{font-size:21px}.res-main p{font-size:13px}.res-main .rows{gap:3px;margin-top:6px}.res-main .row{padding:3px 8px 3px 5px}.res-main .row .av-wrap{width:24px;height:24px}.res-main .trophy{width:36px;height:36px;border-radius:12px;margin-bottom:2px}.res-side .card-foot .btn,.res-side .card-foot .exit-btn{height:40px}}.hw-overlay{z-index:70}.card.hw{width:min(460px,100%);max-height:100%;padding:0;overflow:hidden;touch-action:none;outline:none;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(132px,auto) auto auto;grid-template-areas:"top" "stage" "text" "dots" "nav";text-align:center}.hw-top{grid-area:top;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 14px 12px 20px}.hw-kicker{display:flex;align-items:center;gap:7px;font-size:11.5px;font-weight:800;letter-spacing:2.2px;text-transform:uppercase;color:var(--accent-hi);white-space:nowrap}.hw-kicker svg{width:18px;height:18px}.hw-kicker b{margin-left:4px;padding:2px 8px;border-radius:999px;font-family:var(--display);font-size:11px;letter-spacing:1px;color:var(--text);background:#ffffff14}.hw-skip{display:flex;align-items:center;gap:5px;height:36px;padding:0 10px 0 14px;border-radius:999px;background:var(--panel-2);border:1px solid var(--line-2);font-weight:750;font-size:13.5px;color:#dbe3f3;flex:none}.hw-skip svg{width:15px;height:15px;opacity:.8}.hw-stage{grid-area:stage;position:relative;margin:0 16px;aspect-ratio:16 / 13;border-radius:22px;overflow:hidden;background:radial-gradient(60% 55% at 50% 50%,rgba(255,79,126,.1),transparent 70%),radial-gradient(90% 75% at 50% 42%,#173764,#102445,#0b162c);border:1px solid rgba(143,192,255,.22);box-shadow:0 18px 40px #00000059,inset 0 1px #ffffff12,inset 0 0 50px #00000059}.hw-stage:before{content:"";position:absolute;inset:8px;border-radius:15px;border:1px solid rgba(143,192,255,.08);pointer-events:none}.hw-text{grid-area:text;padding:20px 26px 0;min-height:0}.hw-text h2{font-family:var(--display);font-weight:820;font-stretch:108%;font-size:27px;line-height:1.1;letter-spacing:-.4px;margin:0 0 8px}.hw-text p{margin:0;font-size:15.5px;line-height:1.45;color:#c9d3e8}.hw-text b{color:#fff}.hw-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.hw-stage.fwd,.hw-text.fwd{animation:hw-in .38s cubic-bezier(.2,.9,.3,1) both}.hw-stage.rev,.hw-text.rev{animation:hw-in-rev .38s cubic-bezier(.2,.9,.3,1) both}.hw-text.fwd,.hw-text.rev{animation-delay:.04s}@keyframes hw-in{0%{opacity:0;transform:translate(26px)}}@keyframes hw-in-rev{0%{opacity:0;transform:translate(-26px)}}.hw-dots{grid-area:dots;display:flex;justify-content:center;gap:2px;padding:12px 0 2px}.hw-dots button{width:24px;height:24px;display:grid;place-items:center}.hw-dots button.on{width:34px}.hw-dots i{display:block;width:8px;height:8px;border-radius:4px;background:#ffffff38;transition:width .25s ease,background .25s ease}.hw-dots button.on i{width:26px;background:linear-gradient(90deg,var(--accent-hi),var(--accent));box-shadow:0 0 10px #4d9aff80}.hw-nav{grid-area:nav;display:flex;align-items:center;gap:10px;padding:10px 20px 20px}.hw-nav .hw-prev{width:56px;height:56px;transition:opacity .2s ease}.hw-nav .hw-prev:disabled{opacity:.3}.hw button:focus-visible{outline:2px solid var(--accent-hi);outline-offset:3px}.hw-next{flex:1;height:56px}.hw-next svg{width:20px;height:20px}.hw-scene{position:absolute;left:50%;top:50%;width:320px;height:210px;margin:-105px 0 0 -160px;transform:scale(var(--s, 1));--t: 4.8s}.hw-scene>*{position:absolute}.hw-card{width:40px;height:56px;border-radius:4px;box-shadow:-2px 4px 8px #00000073}.hw-card.dim{filter:brightness(.55) saturate(.7)}.hw-card.lift{translate:0 -10px;box-shadow:0 0 0 1.5px #4fe3aee6,0 0 12px #4fe3ae80,-2px 4px 8px #00000073}.hw-finger{left:0;top:0;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;z-index:9;opacity:0;pointer-events:none;background:radial-gradient(circle,#fff 0 34%,#d6e8ffbf 46%,#8fc0ff00 72%);filter:drop-shadow(0 3px 6px rgba(0,0,0,.5)) drop-shadow(0 0 8px rgba(143,192,255,.6))}.hw-finger i{position:absolute;inset:-8px;border-radius:50%;border:2.5px solid rgba(255,255,255,.9);opacity:0}.hw-seat{display:flex;align-items:center;gap:8px;padding:5px 12px 5px 5px;border-radius:16px;white-space:nowrap;z-index:2;background:linear-gradient(180deg,#19243feb,#0f1729eb);border:1px solid var(--line-2)}.hw-seat .av-wrap{width:34px;height:34px}.hw-seat .cpu-chip{width:14px;height:14px;border-radius:4px}.hw-seat .cpu-chip svg{width:10px;height:10px}.hw-seat b{font-family:var(--display);font-weight:780;font-size:15px}.hw-seat em{position:relative;font-style:normal;font-family:var(--display);font-weight:840;font-size:18px;min-width:26px;height:22px}.hw-seat em i{position:absolute;left:0;top:0;font-style:normal}.hw-seat em .s1{color:var(--rose);opacity:0}.hw-chip{display:flex;align-items:center;gap:6px;padding:6px 12px 6px 9px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;white-space:nowrap;color:#2a1a02;background:linear-gradient(180deg,#ffe7ad,var(--gold));box-shadow:0 0 16px #f5c25b59}.hw-chip svg{width:16px;height:16px}.hw-pass{display:flex;align-items:center;gap:5px;height:34px;padding:0 12px 0 9px;border-radius:12px;font-family:var(--display);font-weight:780;font-size:14px;color:#2a1a02;background:linear-gradient(180deg,#ffe7ad,var(--gold) 55%,#dc9725);filter:saturate(.25) brightness(.62)}.hw-pass svg{width:15px;height:15px}.hw-tag{translate:-50% 0;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:800;color:#2a1a02;background:linear-gradient(180deg,#ffe7ad,var(--gold));opacity:0;z-index:5}.hw-pop{position:absolute!important;left:100%;top:-6px;margin-left:6px;font-style:normal;font-family:var(--display);font-weight:860;font-size:22px;color:#ffd0db;text-shadow:0 0 12px rgba(255,79,126,.8);opacity:0}.hw-wave{width:20px;height:20px;margin:-10px;border-radius:50%;border:3px solid rgba(169,139,255,.95);box-shadow:0 0 18px #a98bffe6;opacity:0}.hw-legend{display:flex;gap:8px}.hw-legend .hp,.hw-legend .qp{height:24px;font-size:13px;padding:0 9px 0 7px}.hw-legend .hp{color:#fff;background:#ff4f7e38;border-color:#ff7a9a80}.hw-legend .hp svg{width:13px;height:13px;color:var(--heart)}.hw-moon{translate:-50% 0;display:flex;flex-direction:column;align-items:center;gap:0;opacity:0;z-index:6}.hw-moon svg{width:40px;height:40px;color:var(--gold);filter:drop-shadow(0 0 14px rgba(245,194,91,.9))}.hw-moon b{font-family:var(--display);font-weight:860;font-size:26px;white-space:nowrap;background:linear-gradient(180deg,#fff,#ffe39a 60%,#f5a623);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 3px 6px rgba(0,0,0,.6))}.hw-row{width:292px;height:32px;display:flex;align-items:center;gap:8px;padding:0 10px 0 3px;border-radius:12px;background:#ffffff0d;border:1px solid var(--line)}.hw-row .av-wrap{width:26px;height:26px}.hw-row .cpu-chip{width:11px;height:11px;border-radius:3px;right:-3px}.hw-row .cpu-chip svg{width:8px;height:8px}.hw-row b{width:40px;font-family:var(--display);font-size:13px}.hw-row .track{flex:1;height:7px;border-radius:4px;background:#ffffff14;overflow:hidden}.hw-row .track i{display:block;height:100%;width:var(--w);border-radius:4px;background:linear-gradient(90deg,var(--mint),var(--accent));transform-origin:0 50%}.hw-row.over .track i{background:linear-gradient(90deg,#ffb3c5,var(--heart))}.hw-row em{width:26px;text-align:right;font-style:normal;font-family:var(--display);font-weight:820;font-size:14px}.hw-row.me{border-color:#f5c25b80}.hw-limit{width:2px;height:160px;background:repeating-linear-gradient(180deg,rgba(255,122,154,.8) 0 5px,transparent 5px 9px)}.hw-limit span{position:absolute;left:50%;bottom:-16px;translate:-50% 0;font-family:var(--display);font-weight:820;font-size:11px;color:var(--rose)}.hw-crown{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;color:#2a1a02;z-index:4;background:linear-gradient(180deg,#ffe7ad,var(--gold) 55%,#dc9725);box-shadow:0 6px 14px #f5c25b66;opacity:0}.hw-crown svg{width:20px;height:20px}.hw-bulb{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;color:var(--gold);background:linear-gradient(180deg,#1b2742,#121a2e);border:1px solid var(--line-2)}.hw-bulb svg{width:22px;height:22px}.hw-bulb span{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;border-radius:9px;display:grid;place-items:center;font-family:var(--display);font-size:11px;font-weight:800;color:#06132e;background:linear-gradient(180deg,#a7cdff,var(--accent))}.hw-h1 .hw-card{transition:none}.hw-h1 .pk{animation:hw-h1-pick var(--t) infinite}.hw-h1 .h1{--at: 10%;animation-name:hw-h1-p1}.hw-h1 .h2{animation-name:hw-h1-p2}.hw-h1 .h4{animation-name:hw-h1-p4}@keyframes hw-h1-p1{0%,9%{transform:none;box-shadow:-2px 4px 8px #00000073;opacity:1}12%,58%{transform:translateY(-14px);box-shadow:0 0 0 2px #f5c25bf2,0 0 14px #f5c25b99;opacity:1}74%,92%{transform:translate(-58px,-122px) scale(.4) rotate(-20deg);opacity:0}93%,to{transform:none;opacity:0}}@keyframes hw-h1-p2{0%,23%{transform:none;box-shadow:-2px 4px 8px #00000073;opacity:1}26%,60%{transform:translateY(-14px);box-shadow:0 0 0 2px #f5c25bf2,0 0 14px #f5c25b99;opacity:1}76%,92%{transform:translate(-92px,-122px) scale(.4) rotate(-20deg);opacity:0}93%,to{transform:none;opacity:0}}@keyframes hw-h1-p4{0%,37%{transform:none;box-shadow:-2px 4px 8px #00000073;opacity:1}40%,62%{transform:translateY(-14px);box-shadow:0 0 0 2px #f5c25bf2,0 0 14px #f5c25b99;opacity:1}78%,92%{transform:translate(-160px,-122px) scale(.4) rotate(-20deg);opacity:0}93%,to{transform:none;opacity:0}}.hw-h1 .hw-pass{animation:hw-h1-btn var(--t) infinite}@keyframes hw-h1-btn{0%,41%{filter:saturate(.25) brightness(.62);transform:none}43%,55%{filter:none;transform:scale(1.06);box-shadow:0 6px 16px #f5c25b66}57%{transform:scale(.94)}60%,to{filter:saturate(.25) brightness(.62);transform:none}}.hw-h1 .hw-finger{animation:hw-h1-finger var(--t) infinite}@keyframes hw-h1-finger{0%{transform:translate(300px,230px);opacity:0}7%{transform:translate(112px,160px);opacity:1}10%{transform:translate(112px,160px) scale(.8)}21%{transform:translate(146px,160px)}24%{transform:translate(146px,160px) scale(.8)}35%{transform:translate(214px,162px)}38%{transform:translate(214px,162px) scale(.8)}52%{transform:translate(268px,167px);opacity:1}56%{transform:translate(268px,167px) scale(.8);opacity:1}66%,to{transform:translate(310px,220px);opacity:0}}.hw-h1 .hw-finger i{animation:hw-h1-taps var(--t) infinite}@keyframes hw-h1-taps{0%,9%{opacity:0;transform:scale(.4)}10%{opacity:1;transform:scale(.55)}16%{opacity:0;transform:scale(1.6)}23%{opacity:0;transform:scale(.4)}24%{opacity:1;transform:scale(.55)}30%{opacity:0;transform:scale(1.6)}37%{opacity:0;transform:scale(.4)}38%{opacity:1;transform:scale(.55)}44%{opacity:0;transform:scale(1.6)}55%{opacity:0;transform:scale(.4)}56%{opacity:1;transform:scale(.55)}62%,to{opacity:0;transform:scale(1.6)}}.hw-h1 .hw-seat{animation:hw-h1-seat var(--t) infinite}@keyframes hw-h1-seat{0%,74%{box-shadow:none}80%,88%{box-shadow:0 0 0 2px #f5c25bcc,0 0 18px #f5c25b73}94%,to{box-shadow:none}}.hw-h2 .mover{animation:hw-h2-move var(--t) infinite}@keyframes hw-h2-move{0%,22%{transform:none;opacity:1}26%{transform:translateY(-6px) scale(1.06)}40%,62%{transform:translate(-6px,-46px) rotate(-6deg);opacity:1}66%{transform:translate(-6px,-46px) rotate(-6deg);box-shadow:0 0 0 2.5px #f5c25bf2,0 0 18px #f5c25bb3}80%,90%{transform:translate(-90px,20px) scale(.3);opacity:0}91%{transform:none;opacity:0}to{transform:none;opacity:1}}.hw-h2 .led,.hw-h2 .p1,.hw-h2 .p3{animation:hw-h2-sweep var(--t) infinite}.hw-h2 .led{--sx: -74px;--sy: 110px}.hw-h2 .p1{--sx: -34px;--sy: 88px}.hw-h2 .p3{--sx: -118px;--sy: 88px}@keyframes hw-h2-sweep{0%,66%{transform:none;opacity:1}80%,92%{transform:translate(var(--sx),var(--sy)) scale(.3);opacity:0}to{transform:none;opacity:1}}.hw-h2 .hw-tag{animation:hw-h2-tag var(--t) infinite}@keyframes hw-h2-tag{0%,44%{opacity:0;transform:scale(.6)}48%{opacity:1;transform:scale(1.1)}52%,66%{opacity:1;transform:none}72%,to{opacity:0}}.hw-h2 .hw-finger{animation:hw-h2-finger var(--t) infinite}@keyframes hw-h2-finger{0%,6%{transform:translate(290px,230px);opacity:0}18%{transform:translate(150px,170px);opacity:1}22%{transform:translate(150px,170px) scale(.8)}26%{transform:translate(150px,164px) scale(.9)}40%{transform:translate(146px,122px) scale(.9);opacity:1}48%,to{transform:translate(200px,160px);opacity:0}}.hw-h2 .hw-finger i{animation:hw-h2-tap var(--t) infinite}@keyframes hw-h2-tap{0%,21%{opacity:0;transform:scale(.4)}22%{opacity:1;transform:scale(.55)}30%,to{opacity:0;transform:scale(1.6)}}.hw-h3 .c0,.hw-h3 .c1,.hw-h3 .c2,.hw-h3 .c3{animation:var(--t) infinite}.hw-h3 .c0{animation-name:hw-h3-c0}.hw-h3 .c1{animation-name:hw-h3-c1}.hw-h3 .c2{animation-name:hw-h3-c2}.hw-h3 .c3{animation-name:hw-h3-c3}@keyframes hw-h3-c0{0%,4%{opacity:0;transform:translateY(-40px) scale(.5)}10%,62%{opacity:1;transform:none}76%,to{opacity:0;transform:translateY(-60px) scale(.3)}}@keyframes hw-h3-c1{0%,16%{opacity:0;transform:translate(60px) scale(.5)}22%{opacity:1;transform:none;box-shadow:0 0 0 2px #a98bfff2,0 0 24px #a98bffcc}26%{transform:translate(-3px)}28%{transform:translate(3px)}30%,62%{opacity:1;transform:none;box-shadow:0 0 0 2px #a98bffd9,0 0 14px #a98bff80}76%,to{opacity:0;transform:translate(-42px,-78px) scale(.3)}}@keyframes hw-h3-c2{0%,32%{opacity:0;transform:translate(-60px) scale(.5)}38%,62%{opacity:1;transform:none}76%,to{opacity:0;transform:translate(42px,-78px) scale(.3)}}@keyframes hw-h3-c3{0%,44%{opacity:0;transform:translateY(60px) scale(.5)}50%,62%{opacity:1;transform:none}76%,to{opacity:0;transform:translateY(-98px) scale(.3)}}.hw-h3 .hw-wave{animation:hw-h3-wave var(--t) infinite}@keyframes hw-h3-wave{0%,21%{opacity:0;transform:scale(.4)}22%{opacity:1;transform:scale(.6)}40%,to{opacity:0;transform:scale(9)}}.hw-h3 .hw-pop{animation:hw-h3-pop var(--t) infinite}@keyframes hw-h3-pop{0%,74%{opacity:0;transform:scale(.5)}79%{opacity:1;transform:scale(1.2)}84%,94%{opacity:1;transform:none}to{opacity:0}}.hw-h3 .hw-legend span{animation:hw-h3-legend var(--t) infinite}.hw-h3 .hw-legend .qp{animation-name:hw-h3-legend-q}@keyframes hw-h3-legend{0%,36%{transform:none}40%{transform:scale(1.12)}44%,to{transform:none}}@keyframes hw-h3-legend-q{0%,20%{transform:none}24%{transform:scale(1.12)}28%,to{transform:none}}.hw-h4 .hw-seat{flex-direction:column;gap:2px;padding:5px 6px 4px;width:72px}.hw-h4 .hw-seat b{font-size:13px}.hw-h4 .hw-seat em{font-size:15px;height:18px;min-width:24px;text-align:center}.hw-h4 .hw-seat em i{left:50%;translate:-50% 0}.hw-h4 .hw-seat.you{flex-direction:row;width:auto;padding:4px 10px 4px 4px;gap:7px}.hw-h4 .hw-seat.you .av-wrap{width:28px;height:28px}.hw-h4 .hw-seat.you em i{left:0;translate:none;color:var(--gold)}.hw-h4 .pile{animation:hw-h4-pile var(--t) infinite}.hw-h4 .k0{animation-delay:0s}.hw-h4 .k1{--d: 1}.hw-h4 .k2{--d: 2}.hw-h4 .k3{--d: 3}.hw-h4 .k4{--d: 4}.hw-h4 .k5{--d: 5}@keyframes hw-h4-pile{0%{opacity:0;transform:translateY(40px) scale(.6)}8%,34%{opacity:1;transform:none}44%,to{opacity:0;transform:translateY(70px) scale(.3)}}.hw-h4 .k1{animation-name:hw-h4-pile1}.hw-h4 .k2{animation-name:hw-h4-pile2}.hw-h4 .k3{animation-name:hw-h4-pile3}.hw-h4 .k4{animation-name:hw-h4-pile4}.hw-h4 .k5{animation-name:hw-h4-pile5}@keyframes hw-h4-pile1{0%,4%{opacity:0;transform:translateY(40px) scale(.6)}12%,34%{opacity:1;transform:none}44%,to{opacity:0;transform:translateY(70px) scale(.3)}}@keyframes hw-h4-pile2{0%,8%{opacity:0;transform:translateY(40px) scale(.6)}16%,34%{opacity:1;transform:none}44%,to{opacity:0;transform:translateY(70px) scale(.3)}}@keyframes hw-h4-pile3{0%,12%{opacity:0;transform:translateY(40px) scale(.6)}20%,34%{opacity:1;transform:none;box-shadow:0 0 0 2px #a98bffd9,0 0 14px #a98bff80}44%,to{opacity:0;transform:translateY(70px) scale(.3)}}@keyframes hw-h4-pile4{0%,16%{opacity:0;transform:translateY(40px) scale(.6)}24%,34%{opacity:1;transform:none}44%,to{opacity:0;transform:translateY(70px) scale(.3)}}@keyframes hw-h4-pile5{0%,20%{opacity:0;transform:translateY(40px) scale(.6)}28%,34%{opacity:1;transform:none}44%,to{opacity:0;transform:translateY(70px) scale(.3)}}.hw-h4 .hw-moon{animation:hw-h4-moon var(--t) infinite}@keyframes hw-h4-moon{0%,40%{opacity:0;transform:translateY(26px) scale(.5)}48%{opacity:1;transform:scale(1.1)}54%,88%{opacity:1;transform:none}96%,to{opacity:0}}.hw-h4 .hw-seat em .s0{animation:hw-h4-s0 var(--t) infinite}.hw-h4 .hw-seat em .s1{animation:hw-h4-s1 var(--t) infinite}.hw-h4 .hw-seat.you em .s0{animation:none}@keyframes hw-h4-s0{0%,59.9%{opacity:1}60%,95.9%{opacity:0}96%,to{opacity:1}}@keyframes hw-h4-s1{0%,59.9%{opacity:0;transform:none}60%{opacity:1;transform:scale(1.4)}66%,95.9%{opacity:1;transform:none}96%,to{opacity:0}}.hw-h5 .hw-row .track i{animation:hw-h5-grow var(--t) infinite}@keyframes hw-h5-grow{0%,6%{transform:scaleX(.15)}44%,92%{transform:none}to{transform:scaleX(.15)}}.hw-h5 .hw-row.over{animation:hw-h5-over var(--t) infinite}@keyframes hw-h5-over{0%,42%{border-color:var(--line)}46%,90%{border-color:#ff7a9ab3;box-shadow:0 0 14px #ff4f7e66}96%,to{border-color:var(--line)}}.hw-h5 .hw-row.me{animation:hw-h5-me var(--t) infinite}@keyframes hw-h5-me{0%,50%{background:#ffffff0d}56%,90%{background:linear-gradient(90deg,#f5c25b38,#f5c25b0a)}96%,to{background:#ffffff0d}}.hw-h5 .hw-crown{animation:hw-h5-crown var(--t) infinite}@keyframes hw-h5-crown{0%,52%{opacity:0;transform:scale(.3) rotate(-30deg)}58%{opacity:1;transform:scale(1.15)}62%,90%{opacity:1;transform:none}96%,to{opacity:0}}.hw-h5 .hw-bulb{animation:hw-h5-bulb var(--t) infinite}@keyframes hw-h5-bulb{0%,70%{box-shadow:none}74%,90%{box-shadow:0 0 0 2px #f5c25be6,0 0 20px #f5c25b99}96%,to{box-shadow:none}}.hw-h5 .hw-finger{animation:hw-h5-finger var(--t) infinite}@keyframes hw-h5-finger{0%,60%{transform:translate(310px,230px);opacity:0}68%{transform:translate(288px,186px);opacity:1}72%{transform:translate(288px,186px) scale(.8)}80%,to{transform:translate(310px,220px);opacity:0}}.hw-h5 .hw-finger i{animation:hw-h5-tap var(--t) infinite}@keyframes hw-h5-tap{0%,71%{opacity:0;transform:scale(.4)}72%{opacity:1;transform:scale(.55)}80%,to{opacity:0;transform:scale(1.6)}}@media(max-height:520px)and (min-aspect-ratio:1/1){.card.hw{width:min(800px,100%);height:100%;padding:0;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto auto;grid-template-areas:"stage top" "stage text" "stage dots" "stage nav";text-align:left}.hw-stage{margin:12px 0 12px 12px;aspect-ratio:auto;min-height:0}.hw-top{padding:12px 12px 4px 22px}.hw-text{align-self:center;padding:4px 22px 0}.hw-text h2{font-size:24px;margin-bottom:6px}.hw-text p{font-size:14.5px;line-height:1.42}.hw-dots{justify-content:flex-start;padding:6px 0 0 16px}.hw-nav{padding:8px 14px 14px 22px}.hw-nav .hw-prev{width:50px;height:50px}.hw-next{height:50px;font-size:17px}}@media(min-width:700px)and (min-height:820px){.card.hw{width:540px}.hw-text h2{font-size:30px}.hw-text p{font-size:16.5px}}@media(prefers-reduced-motion:reduce){.hw-scene,.hw-scene *,.hw-scene *:before,.hw-scene *:after{animation-play-state:paused!important;animation-delay:-2.9s!important}.hw-finger i{animation:none!important}.hw-stage.fwd,.hw-stage.rev,.hw-text.fwd,.hw-text.rev{animation:none}}
