:root{--night-0: #171130;--night-1: #211940;--night-2: #2b2254;--night-3: #3a2f6e;--panel: rgba(43, 34, 84, .55);--line: rgba(233, 185, 107, .22);--gold: #e9b96b;--gold-deep: #e3a94f;--gold-soft: rgba(233, 185, 107, .35);--rose: #ef93c6;--rose-deep: #e679ad;--moss: #9fd8a6;--ink: #f3ecda;--dim: #a89bd0;--dim-2: #72659d;--on-gold: #241a3f;--danger: #ef93c6;--card-frame: #241c46;--card-line: rgba(233, 185, 107, .28);--card-back: #1c1538;--font-display: "Kaiti SC", "STKaiti", "KaiTi", "Songti SC", Georgia, "Times New Roman", serif;--font-body: "PingFang SC", -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", sans-serif;--font-data: "Songti SC", "STSong", Georgia, "Times New Roman", serif;--card-w: 52px;--card-h: 74px;--card-scale: 1;--radius: 10px;--gap: 10px;--pad: 10px}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);color:var(--ink);min-height:100vh;min-height:100dvh;-webkit-text-size-adjust:100%;background:radial-gradient(1100px 680px at 50% 18%,rgba(233,185,107,.1),transparent 60%),radial-gradient(760px 540px at 82% 88%,rgba(239,147,198,.09),transparent 62%),radial-gradient(620px 480px at 12% 80%,rgba(159,216,166,.06),transparent 60%),linear-gradient(180deg,var(--night-0),var(--night-1));background-attachment:fixed}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:radial-gradient(1.5px 1.5px at 12% 22%,rgba(243,236,218,.6),transparent 100%),radial-gradient(1px 1px at 28% 64%,rgba(233,185,107,.6),transparent 100%),radial-gradient(1.5px 1.5px at 45% 34%,rgba(243,236,218,.45),transparent 100%),radial-gradient(1px 1px at 60% 78%,rgba(239,147,198,.5),transparent 100%),radial-gradient(1.5px 1.5px at 74% 26%,rgba(233,185,107,.6),transparent 100%),radial-gradient(1px 1px at 88% 58%,rgba(243,236,218,.5),transparent 100%),radial-gradient(2px 2px at 8% 52%,rgba(233,185,107,.45),transparent 100%),radial-gradient(1px 1px at 52% 12%,rgba(243,236,218,.4),transparent 100%),radial-gradient(1px 1px at 92% 16%,rgba(239,147,198,.45),transparent 100%),radial-gradient(1px 1px at 34% 90%,rgba(243,236,218,.32),transparent 100%);background-size:920px 920px;z-index:0}html{-webkit-tap-highlight-color:transparent}.app{min-height:100vh;min-height:100dvh;position:relative;z-index:1}.conn-banner,.error-banner{position:fixed;top:0;left:0;right:0;z-index:100;text-align:center;padding:8px;font-size:13px;font-family:var(--font-data);letter-spacing:.4px}.conn-banner{background:#080514bf;color:var(--gold);border-bottom:1px solid rgba(233,185,107,.3)}.error-banner{background:var(--danger);color:#2a1030;cursor:pointer}.lobby{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:34px;padding:28px 20px}.title{font-family:var(--font-display);font-size:clamp(36px,11vw,60px);letter-spacing:.12em;margin:0;text-align:center;color:var(--ink);font-weight:700;text-shadow:0 0 24px rgba(233,185,107,.35),0 2px 0 rgba(0,0,0,.18)}.title:after{content:"";display:block;width:92px;height:2px;margin:12px auto 0;background:linear-gradient(90deg,transparent,var(--gold),transparent);box-shadow:0 0 14px #e9b96b8c}.entry-card,.room-card{background:linear-gradient(180deg,#ffffff05,#0000001f),var(--panel);border:1px solid var(--line);border-radius:18px;padding:24px;width:min(352px,92vw);display:flex;flex-direction:column;gap:14px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 18px 44px #0a061a8c,inset 0 0 0 1px #f3ecda08,0 0 32px #e9b96b0d}.entry-hero{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.eyebrow{margin:0;font-family:var(--font-data);font-size:12px;letter-spacing:.5em;padding-left:.5em;color:var(--gold);text-transform:uppercase;opacity:.92;text-shadow:0 0 14px rgba(233,185,107,.4)}.seal-wrap{display:flex;justify-content:center}.seal{position:relative;width:88px;height:88px;border-radius:50%;background:radial-gradient(circle at 50% 50%,rgba(233,185,107,.95) 0 5%,transparent 8%),radial-gradient(circle at 50% 14%,rgba(233,185,107,.85) 0 3.5%,transparent 7%),radial-gradient(circle at 50% 86%,rgba(233,185,107,.85) 0 3.5%,transparent 7%),radial-gradient(72% 72% at 50% 42%,rgba(239,147,198,.1),transparent 70%),radial-gradient(72% 72% at 50% 46%,rgba(233,185,107,.12),transparent 66%),#100a269e;border:1.5px solid rgba(233,185,107,.6);box-shadow:0 0 34px #e9b96b4d,inset 0 0 22px #e9b96b1f;animation:sealSpin 28s linear infinite}.seal:before{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:50%;background:repeating-conic-gradient(rgba(233,185,107,.75) 0deg 2.5deg,transparent 2.5deg 11deg);-webkit-mask:radial-gradient(circle,transparent 58%,#000 61% 100%);mask:radial-gradient(circle,transparent 58%,#000 61% 100%)}.seal:after{content:"";position:absolute;top:26px;right:26px;bottom:26px;left:26px;border-radius:50%;border:1px dashed rgba(233,185,107,.55)}@keyframes sealSpin{to{transform:rotate(360deg)}}.wordmark{margin:-2px 0 0;font-family:var(--font-display);font-size:clamp(46px,13vw,70px);line-height:1;letter-spacing:.2em;padding-left:.2em;color:var(--ink);font-weight:700;text-shadow:0 0 30px rgba(233,185,107,.35),0 2px 0 rgba(0,0,0,.2)}.sub-brand{margin:-4px 0 0;font-family:var(--font-display);font-size:18px;letter-spacing:.62em;padding-left:.62em;color:var(--dim)}.hero-rule{width:72px;height:1px;margin:8px 0 2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);box-shadow:0 0 12px #e9b96b80}.hero-tag{margin:0;font-family:var(--font-data);font-size:13px;letter-spacing:.14em;color:var(--dim)}.rules-link{border:1px solid rgba(233,185,107,.28);background:#100a2673;color:var(--gold-soft);font-family:var(--font-data);font-size:12.5px;letter-spacing:.1em;padding:6px 16px;border-radius:999px;cursor:pointer;transition:color .18s ease,border-color .18s ease,box-shadow .18s ease}.rules-link:hover{color:var(--gold);border-color:#e9b96b8c;box-shadow:0 0 18px #e9b96b33}.entry-card{width:min(400px,92vw);padding:24px;gap:18px}.mode-tabs{position:relative;display:grid;grid-template-columns:1fr 1fr;padding:4px;border:1px solid var(--line);border-radius:999px;background:#100a2680}.mode-tab{position:relative;z-index:1;padding:10px 12px;border:none;background:transparent;border-radius:999px;color:var(--dim);font-family:var(--font-body);font-size:15px;font-weight:600;letter-spacing:.04em;cursor:pointer;transition:color .25s ease}.mode-tab:hover{color:var(--ink)}.mode-tab.active{color:var(--on-gold)}.mode-slider{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:999px;background:linear-gradient(180deg,#f0c67e,var(--gold-deep));box-shadow:0 0 16px #e9b96b59;transition:transform .32s cubic-bezier(.35,0,.2,1)}.mode-slider[data-mode=join]{transform:translate(100%)}.field-label{font-family:var(--font-data);font-size:12px;color:var(--dim);letter-spacing:.16em}.mode-panel{display:flex;flex-direction:column;gap:12px;animation:panelIn .3s ease}@keyframes panelIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.mode-desc{margin:-2px 0 0;font-size:12.5px;color:var(--dim-2);text-align:center;line-height:1.5}.eyebrow{animation:riseIn .5s ease .05s both}.seal-wrap{animation:riseIn .55s ease .12s both}.wordmark{animation:riseIn .55s ease .18s both}.sub-brand{animation:riseIn .5s ease .24s both}.hero-rule{animation:riseIn .5s ease .3s both}.hero-tag{animation:riseIn .5s ease .34s both}.rules-link{animation:riseIn .5s ease .4s both}.entry-card{animation:riseIn .55s ease .48s both}@keyframes riseIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.room-card{width:min(384px,94vw)}.room-code-label{text-align:center;font-size:12px;letter-spacing:.35em;color:var(--gold);font-family:var(--font-data);text-transform:uppercase}.room-code{text-align:center;font-size:clamp(30px,10vw,42px);font-family:var(--font-data);font-weight:700;letter-spacing:.55em;padding-left:.55em;color:var(--gold);text-shadow:0 0 22px rgba(233,185,107,.5)}.hint{font-size:13px;color:var(--dim);text-align:center;margin:0;line-height:1.55}.divider{text-align:center;color:var(--dim-2);font-size:12px;letter-spacing:2px;font-family:var(--font-data)}.row{display:flex;gap:8px}.input{flex:1;padding:12px;min-height:46px;border-radius:12px;border:1px solid var(--line);background:#100a268c;color:var(--ink);font-size:15px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.input::placeholder{color:var(--dim-2)}.input:focus{border-color:#e9b96bb3;box-shadow:0 0 0 3px #e9b96b29}.code-input{text-align:center;letter-spacing:.3em;text-transform:uppercase;font-family:var(--font-data)}.btn{padding:12px 18px;min-height:44px;border-radius:12px;border:1px solid var(--line);background:#e9b96b21;color:var(--ink);font-size:15px;font-weight:700;cursor:pointer;transition:transform .05s ease,opacity .15s ease,box-shadow .2s ease,filter .2s ease}.btn:hover{box-shadow:0 0 18px #e9b96b40;filter:brightness(1.04)}.btn:active{transform:translateY(1px)}.btn.primary{background:linear-gradient(180deg,#f0c67e,var(--gold-deep));color:var(--on-gold);border-color:transparent}.btn.primary:hover{filter:brightness(1.06);box-shadow:0 0 22px #e9b96b66}.btn.ghost{background:#f3ecda0a;color:var(--dim);border-color:#e9b96b29}.btn.ghost:hover{box-shadow:none;background:#f3ecda14;filter:none}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none;filter:none}.btn.cabo-btn,.btn.danger{background:linear-gradient(180deg,#f6a2cf,var(--rose-deep));color:#2a1030;border-color:transparent;white-space:nowrap}.btn.danger:hover{box-shadow:0 0 20px #ef93c666}.name-hint{font-size:12px;color:var(--dim-2);text-align:center;margin:-8px 0 0;line-height:1.4}.name-hint b{color:var(--gold);font-weight:600}.copy-row{display:flex;align-items:center;justify-content:center;gap:8px}.copy-btn{padding:6px 14px;min-height:34px;font-size:13px;border-radius:999px;white-space:nowrap}.copy-btn.flash{background:linear-gradient(180deg,#f0c67e,var(--gold-deep));color:var(--on-gold);border-color:transparent}.spinner{display:inline-block;width:12px;height:12px;border-radius:50%;border:2px solid rgba(233,185,107,.25);border-top-color:var(--gold);margin-right:8px;vertical-align:-1px;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.player-list{display:flex;flex-direction:column;gap:8px}.player-row{display:flex;align-items:center;gap:8px;background:#f3ecda0d;border-radius:10px;padding:8px 12px}.dot{width:9px;height:9px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px #e9b96b99}.tag{font-size:11px;padding:2px 8px;border-radius:999px;background:#f3ecda14;color:var(--dim);font-family:var(--font-data);letter-spacing:.1em}.tag.warn{background:#ef93c62e;color:var(--rose)}.tag.bot{background:#9fd8a62e;color:var(--moss)}.btn.small{padding:4px 10px;min-height:30px;font-size:12px;border-radius:8px}.tag.cabo{background:linear-gradient(180deg,#f6a2cf,var(--rose-deep));color:#2a1030;font-weight:800;box-shadow:0 0 12px #ef93c666;text-shadow:none}.tag.cabo.bounce{display:inline-block;animation:bounce .6s ease}@keyframes bounce{0%{transform:scale(1)}30%{transform:scale(1.4)}60%{transform:scale(.9)}to{transform:scale(1)}}@keyframes hintPulse{0%,to{box-shadow:0 0 0 2px #e9b96b66,0 0 16px #e9b96b40}50%{box-shadow:0 0 0 3px #e9b96be6,0 0 22px #e9b96b66}}@keyframes dropIn{0%{transform:translateY(-26px) scale(.85);opacity:0}to{transform:none;opacity:1}}@keyframes seatPulse{0%,to{box-shadow:0 0 0 1px #e9b96b66,0 0 14px #e9b96b33}50%{box-shadow:0 0 0 2px #e9b96be6,0 0 26px #e9b96b73}}.tag.think{background:#f3ecda14}.game{max-width:1100px;margin:0 auto;padding:var(--pad);display:flex;flex-direction:column;gap:var(--gap);min-height:100vh;min-height:100dvh}.topbar{display:flex;flex-direction:row;align-items:center;gap:16px}.round-label{font-size:13px;color:var(--gold);font-family:var(--font-data);letter-spacing:.25em;text-transform:uppercase;white-space:nowrap;text-shadow:0 0 12px rgba(233,185,107,.35)}.opponents{display:flex;justify-content:center;align-items:flex-start;gap:var(--gap);flex-wrap:wrap}.seat.opponent .hand{flex-direction:row;gap:0}.seat.opponent .hand .card:not(:first-child){margin-left:calc(var(--card-w) * -.55)}.seat.opponent .hand .card:nth-child(1){z-index:1}.seat.opponent .hand .card:nth-child(2){z-index:2}.seat.opponent .hand .card:nth-child(3){z-index:3}.seat.opponent .hand .card:nth-child(4){z-index:4}.seat.opponent .hand .card:nth-child(5){z-index:5}.seat.opponent .hand .card:nth-child(6){z-index:6}.board{display:flex;justify-content:center;align-items:center;gap:var(--gap);padding:var(--pad)}.pile{position:relative;padding:10px;border-radius:14px;border:1px solid var(--line);background:#0e092080;transition:border-color .15s ease,box-shadow .15s ease}.pile.clickable{cursor:pointer;border-color:#e9b96ba6;box-shadow:0 0 18px #e9b96b38}.pile.clickable:hover{box-shadow:0 0 26px #e9b96b66}.pile-count{position:absolute;top:calc(50% + 30px);left:50%;transform:translate(-50%,-50%);z-index:2;font-size:12px;font-weight:700;color:var(--dim);font-family:var(--font-data);letter-spacing:.15em;pointer-events:none}.own-area{display:flex;justify-content:center;align-items:flex-end;gap:var(--gap);flex-wrap:wrap}.my-pending{margin-bottom:6px}.seat{background:linear-gradient(180deg,#ffffff05,#00000014),var(--panel);border-radius:16px;padding:10px;border:1px solid var(--line);display:flex;flex-direction:column;gap:6px;transition:border-color .2s ease,box-shadow .2s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 10px 26px #0a061a59}.seat.active{border-color:#e9b96bbf;animation:seatPulse 2s ease-in-out infinite}.seat.me{background:#231b44e0;border-color:#e9b96b6b;--card-scale: 1.12}.seat.opponent{background:#140e2a80}.seat-header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;position:relative;z-index:10;pointer-events:none}.seat-name{font-size:13px;font-weight:600;color:var(--ink)}.score-badge{margin-left:auto;min-width:26px;padding:2px 8px;border-radius:999px;background:#100a26b3;border:1px solid var(--line);color:var(--dim);font-family:var(--font-data);font-size:12px;font-weight:700;text-align:center;letter-spacing:.05em}.seat.me .score-badge{border-color:#e9b96b8c;color:var(--gold);box-shadow:0 0 12px #e9b96b40}.seat-marks{display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap}.round-mark{padding:2px 10px;border-radius:999px;border:1px solid rgba(233,185,107,.4);background:#0e092099;color:var(--gold);font-family:var(--font-data);font-size:13px;font-weight:700;letter-spacing:.05em}.rank-mark{padding:2px 10px;border-radius:999px;border:1px solid rgba(147,216,166,.5);background:#0e092099;color:var(--moss);font-family:var(--font-data);font-size:13px;font-weight:700;letter-spacing:.05em}.rank-mark.first{border-color:#e9b96bcc;color:var(--gold);box-shadow:0 0 12px #e9b96b4d}.round-mark.me{border-color:#e9b96bb3;box-shadow:0 0 12px #e9b96b4d}.round-over{display:flex;justify-content:center;align-items:center;gap:12px}.round-over-label{font-size:14px;color:var(--gold);font-family:var(--font-display);letter-spacing:.1em}.round-over-wait{font-size:13px;color:var(--dim);letter-spacing:.05em}.hand{display:flex;gap:calc(var(--card-w) * .16)}.seat.me .hand{gap:calc(var(--card-w) * .26);margin-top:10px}.seat.me .hand{padding-top:8px}.card{width:calc(var(--card-w) * var(--card-scale));height:calc(var(--card-h) * var(--card-scale));border-radius:calc(var(--radius) * var(--card-scale));position:relative;border:1px solid var(--card-line);background:var(--card-frame);box-shadow:0 4px 12px #00000073,0 0 0 1px #f3ecda0a;perspective:700px;transition:transform .12s ease,box-shadow .18s ease}.card-inner{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:preserve-3d;transition:transform .45s ease}.card-inner.face{transform:rotateY(0)}.card-inner.back{transform:rotateY(180deg)}.card-front,.card-back{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:calc(var(--radius) * var(--card-scale));backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}.card-back{transform:rotateY(180deg)}.card.clickable{cursor:pointer}.card.clickable:hover{box-shadow:0 0 20px #e9b96b4d}.card.selected{outline:3px solid var(--gold);outline-offset:3px;transform:translateY(-8px) scale(1.06);box-shadow:0 0 0 2px #e9b96b59,0 0 30px #e9b96bb3,0 10px 22px #00000080;z-index:5}.card.hint{cursor:pointer;animation:hintPulse 1.2s ease-in-out infinite}.card.dim{opacity:.7}.card.flip-in .card-inner{transform:rotateY(0)}.card.drop-in{animation:dropIn .35s ease}.card-front{width:100%;height:100%;border-radius:calc(var(--radius) * var(--card-scale));position:relative;background:var(--card-frame)}.card-img{width:100%;height:100%;border-radius:calc(var(--radius) * var(--card-scale));object-fit:cover;display:block}.card-back{width:100%;height:100%;border-radius:calc(var(--radius) * var(--card-scale));display:flex;align-items:center;justify-content:center;background:radial-gradient(70% 70% at 50% 42%,rgba(239,147,198,.1),transparent 70%),radial-gradient(70% 70% at 50% 40%,rgba(233,185,107,.12),transparent 65%),repeating-linear-gradient(45deg,rgba(233,185,107,.05) 0 2px,transparent 2px 4px),var(--card-back);border:1px solid rgba(233,185,107,.5);box-shadow:inset 0 0 0 1px #0006,inset 0 0 16px #e9b96b26}.card-back:after{content:"";width:36%;height:36%;border-radius:50%;border:1.5px solid rgba(233,185,107,.65);background:radial-gradient(circle at 50% 50%,rgba(233,185,107,.9) 0 12%,transparent 14%);box-shadow:0 0 10px #e9b96b59,inset 0 0 8px #e9b96b33}.known-badge{position:absolute;top:4px;right:4px;width:clamp(14px,calc(var(--card-w) * var(--card-scale) * .28),18px);height:clamp(14px,calc(var(--card-w) * var(--card-scale) * .28),18px);border-radius:50%;background:var(--gold);color:var(--on-gold);font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center}.holding{display:flex;gap:4px;justify-content:center}.holding-card{background:#e9b96b24;color:var(--gold);border:1px solid rgba(233,185,107,.3);border-radius:8px;padding:2px 8px;font-size:12px;font-weight:700;font-family:var(--font-data)}.holding-actions{display:flex;gap:6px}.holding-actions .holding-card{cursor:pointer;padding:0}.holding-actions .holding-card:hover{opacity:.85}.fly-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:70}.flyer{position:absolute;top:0;left:0;will-change:transform,opacity;pointer-events:none}.flyer-body{width:100%;height:100%;border-radius:var(--radius);overflow:hidden;border:1px solid var(--card-line);box-shadow:0 8px 22px #0a061a8c,0 0 14px #e9b96b33;background:var(--card-frame)}.flyer-back{background:var(--card-back)}.flyer-front .card-img{position:absolute;top:0;right:0;bottom:0;left:0}.flyer-red .card-img{filter:saturate(1.15)}.card.hidden{visibility:hidden}.event-log{position:fixed;bottom:8px;right:8px;z-index:60;display:flex;flex-direction:column;align-items:flex-end;gap:6px;max-width:min(240px,60vw);max-height:40vh;overflow:hidden;pointer-events:none}.event-log-item{padding:5px 11px;border-radius:999px;background:#100a268c;border:1px solid rgba(233,185,107,.25);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:var(--dim);font-size:12px;font-family:var(--font-data);letter-spacing:.03em;text-align:right;box-shadow:0 6px 18px #0a061a59;animation:logIn .25s ease}.event-log-item.cabo{color:var(--rose);border-color:#ef93c673;text-shadow:0 0 10px rgba(239,147,198,.35)}.event-log-item.match{color:var(--moss);border-color:#9fd8a659}.event-log-item.fail{color:var(--rose)}.event-log-item.end{color:var(--gold);border-color:#e9b96b73;text-shadow:0 0 10px rgba(233,185,107,.35)}@keyframes logIn{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:none}}.banner{text-align:center;font-size:14px;min-height:24px;color:var(--gold);letter-spacing:.4px}.actions{display:flex;justify-content:center;gap:var(--gap);flex-wrap:wrap}.actions .hint{align-self:center}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#090614b8;display:flex;align-items:center;justify-content:center;z-index:50;padding:16px;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.overlay-card{background:linear-gradient(180deg,#ffffff05,#0000001f),var(--night-2);border:1px solid var(--line);border-radius:20px;padding:20px;width:min(480px,100%);max-height:92vh;max-height:92dvh;overflow-y:auto;display:flex;flex-direction:column;gap:14px;align-items:center;box-shadow:0 14px 44px #0a061a8c,0 0 30px #e9b96b14}.overlay-card h2{margin:0;color:var(--ink);font-family:var(--font-display);letter-spacing:.12em;font-weight:700;text-shadow:0 0 16px rgba(233,185,107,.3)}.results{width:100%;border-collapse:collapse;font-size:13px;font-family:var(--font-data)}.results th,.results td{padding:8px 10px;text-align:center;border-bottom:1px solid var(--line)}.results th{color:var(--dim);font-size:11px;letter-spacing:.15em;text-transform:uppercase}.results tr.lost{opacity:.45}@media (min-width: 640px){:root{--card-w: 54px;--card-h: 78px;--radius: 11px;--gap: 12px;--pad: 14px}}@media (min-width: 900px){:root{--card-w: 64px;--card-h: 92px;--radius: 12px;--gap: 16px;--pad: 16px}.board{gap:28px}.seat{padding:12px}.game{padding:16px}}@media (orientation: landscape) and (max-height: 500px){:root{--card-w: 40px;--card-h: 58px;--gap: 8px;--pad: 8px;--radius: 9px}.game{gap:8px}.title{font-size:26px}.banner{font-size:13px;min-height:18px}.actions .btn{min-height:38px;padding:8px 14px}.overlay-card{max-height:88vh;max-height:88dvh}}.debug-panel{position:fixed;right:12px;top:12px;z-index:90;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.debug-toggle{border:1px solid rgba(233,185,107,.35);background:#100a26b3;color:var(--gold);border-radius:999px;padding:6px 14px;font-size:13px;font-weight:700;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.debug-toggle:hover{box-shadow:0 0 16px #e9b96b4d}.debug-body{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:12px;background:#100a26d1;border:1px solid rgba(233,185,107,.25);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);max-height:70vh;overflow:auto}.debug-row{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--dim);flex-wrap:wrap}.debug-row input{width:52px;padding:4px 6px;border-radius:6px;border:1px solid rgba(233,185,107,.3);background:#f3ecda0f;color:var(--text);font-size:12px}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}@media (prefers-reduced-motion: reduce){.seat.active,.card.hint,.card.drop-in,.tag.cabo.bounce,.seal,.eyebrow,.seal-wrap,.wordmark,.sub-brand,.hero-rule,.hero-tag,.rules-link,.entry-card,.mode-panel{animation:none}.mode-slider{transition:none}*{scroll-behavior:auto}}
