:root{--bg:#050505;--bg-2:#0c0a08;--gold:#f36b1c;--gold-2:#ff8a3d;--ink:#ffffff;--muted:#ffffff;--line:rgba(243,107,28,0.45);--font:"Helvetica Neue",Helvetica,Arial,sans-serif}*{box-sizing:border-box;margin:0;padding:0}body,html{min-height:100%;background:var(--bg);color:var(--ink);font-family:var(--font);font-weight:700}a{color:inherit;text-decoration:none}button{font-family:inherit;font-weight:700;cursor:pointer}.page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;background:radial-gradient(ellipse at 50% 0,#1a0e06 0,#050505 55%)}.logo{width:min(62vw,220px);height:auto;margin-bottom:28px}.logo-sm{width:56px;height:auto;vertical-align:middle}h1{font-size:clamp(2rem,5vw,3.5rem);letter-spacing:.04em;font-weight:700}.live{margin-top:8px;letter-spacing:.08em;color:var(--gold)}.live,.tag{font-size:1rem;font-weight:700}.tag{margin-top:18px;color:#fff;letter-spacing:.04em;text-transform:uppercase}.row{display:flex;gap:14px;margin-top:40px;flex-wrap:wrap;justify-content:center}.card{border:1px solid #5a3018;border-bottom:5px solid #8a3a10;border-radius:10px;padding:18px 22px;min-width:180px;text-align:center;background:linear-gradient(#2a211c,#120e0c);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 4px 0 #1a0c06}.card b{display:block;color:var(--gold);letter-spacing:.06em;font-size:1rem;font-weight:700;margin-bottom:6px}.card:hover{border-color:var(--gold);transform:translateY(-1px)}.foot{margin-top:52px;font-size:.85rem;font-weight:700;color:var(--gold);letter-spacing:.06em}.mat{justify-items:center;background:#050505}.board,.mat{min-height:100dvh;display:grid}.board{--px:0.42;--py:0.32;width:min(100%,440px);grid-template-rows:auto auto auto auto auto;background:#c4843a url(/brand/court-floor.jpg) 50%/cover no-repeat;border-inline:1px solid rgba(243,107,28,.35)}.seat{display:grid;grid-template-columns:1fr auto auto;align-items:center;grid-gap:8px 12px;gap:8px 12px;padding:12px 14px 10px;background:rgba(8,8,8,.82)}.seat.opp{border-bottom:3px solid var(--gold);padding-top:calc(12px + env(safe-area-inset-top))}.seat.you{border-top:3px solid var(--gold);padding-bottom:calc(12px + env(safe-area-inset-bottom))}.seat-actions{grid-column:1/-1;display:flex;flex-wrap:nowrap;gap:6px}.seat-actions .btn{flex:1 1;min-width:0;padding-left:4px;padding-right:4px;font-size:.72rem}.who{letter-spacing:.08em;font-size:.95rem}.pts,.who{font-weight:700;color:var(--gold)}.pts{font-size:3rem;line-height:.9}.meta{color:#fff;letter-spacing:.03em;font-size:.8rem;font-weight:700;margin-top:2px}.hud{display:flex;flex-direction:column;align-items:center;gap:4px;padding:0 12px 2px}.crest{height:64px;width:auto;justify-self:center}.call-row{display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.call{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:none;border:0;padding:0;color:#fff;font:inherit;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-align:center}.line-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.line-row .id-btn{border:1px solid rgba(243,107,28,.7);border-radius:8px;padding:6px 8px}.id-btn{background:none;border:0;padding:0 2px;color:var(--gold);font:inherit;font-size:.78rem;letter-spacing:.08em}.face{display:grid;place-items:center;height:100%;padding:6px;background:#111;color:#fff;font-size:.62rem;letter-spacing:.04em;text-align:center}.sheet{position:fixed;inset:0;z-index:30;display:flex;flex-direction:column;overflow:auto;background:rgba(5,5,5,.94);padding:12px 12px calc(12px + env(safe-area-inset-bottom))}.sheet>*{flex:none}.sheet-bar{display:flex;gap:8px;align-items:center}.sheet-bar .room-code{flex:1 1}.sheet-list{list-style:none;margin-top:10px}.sheet-list .thumb{width:28px;height:40px;object-fit:cover;border-radius:3px;flex:none}.sheet-list button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:8px;background:#141414;color:#fff;border:0;border-bottom:1px solid #2a2a2a;min-height:48px;padding:8px 10px;text-align:left;font:inherit}.sheet-list span{color:var(--gold);font-size:.72rem}.sheet-list li.spent{display:flex;justify-content:space-between;gap:8px;min-height:36px;padding:8px 10px;background:#101010;color:#fff;border-bottom:1px solid #2a2a2a;font-size:.78rem}.sheet-note{color:#fff;margin-top:18px;text-align:center}.still{position:relative;display:block;width:min(100%,420px);margin:12px auto 0;padding:0;border:2px solid var(--gold);background:#000}.still img{width:100%;height:auto;display:block}.mark{position:absolute;width:16px;height:16px;margin:-8px 0 0 -8px;border:2px solid #fff;border-radius:50%;background:var(--gold);pointer-events:none}.win{position:fixed;left:50%;top:42%;transform:translate(-50%,-50%);z-index:40;background:#050505;color:#fff;border:2px solid var(--gold);border-radius:12px;padding:18px 22px;text-align:center;letter-spacing:.08em}.win b{display:block;color:var(--gold);font-size:1.4rem;margin-bottom:10px}.mat-src{position:fixed;width:16px;height:16px;left:0;bottom:0;opacity:0;pointer-events:none}.session-chip{position:fixed;top:12px;right:12px;z-index:20;display:flex;gap:8px;align-items:center;color:#fff;font-size:.75rem}.session-chip .btn{min-height:36px}.lane-stack{min-height:0}.cam{display:none;width:calc(100% - 16px);height:72px;margin:4px 8px 0;object-fit:cover;border:2px solid var(--gold);border-radius:8px;background:#000}.cam.on{display:block}.lane{margin:2px 8px;display:flex;gap:8px;align-items:stretch;justify-content:center;padding:0;border:0;background:none;min-height:0;overflow:visible;perspective:700px}.pcard{position:relative;flex:1 1;width:0;height:auto;aspect-ratio:63/88;padding:0;overflow:hidden;background:#000;border:1px solid #ffb27a;border-bottom:5px solid #8a3a10;border-radius:10px;color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 4px 0 #140a06;transform:translateY(0);transition:transform .12s ease}.pcard img{width:100%;height:100%;object-fit:cover;display:block}.foil,.glare,.spark{position:absolute;inset:0;pointer-events:none;border-radius:inherit}.foil{background:linear-gradient(118deg,transparent,transparent 30%,rgba(255,255,255,.28) 40%,rgba(243,107,28,.72) 48%,rgba(255,236,196,.85) 52%,rgba(243,107,28,.5) 60%,transparent 72%);background-size:230% 230%;background-position:calc(var(--px) * 180% - 40%) calc(var(--py) * 180% - 40%);mix-blend-mode:screen;opacity:.38}.glare{background:radial-gradient(circle at calc(var(--px) * 100%) calc(var(--py) * 100%),rgba(255,255,255,.72),rgba(243,107,28,.22) 26%,transparent 58%);mix-blend-mode:soft-light}.spark{background-image:radial-gradient(circle,rgba(255,248,230,.95) 0 1px,transparent 1.7px);background-size:13px 17px;background-position:calc(var(--px) * 36px) calc(var(--py) * 36px);mix-blend-mode:screen;opacity:.28}.pcard.on{z-index:1;border-bottom-width:7px;border-color:#fff #fff #ffb27a;outline:3px solid #f36b1c;outline-offset:2px;transform:translateY(-5px) rotateX(calc((.5 - var(--py)) * 12deg)) rotateY(calc((var(--px) - .5) * 14deg));box-shadow:inset 0 0 0 3px #f36b1c,0 10px 0 #6a2a0a}.pcard.on .foil{opacity:.9}.pcard.on .spark{opacity:.72}.plate{width:min(100%,340px);background:rgba(5,5,5,.9);border:1px solid rgba(243,107,28,.7);border-radius:10px;padding:6px 8px 8px;box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 4px 0 #140a06}.roombar{display:flex;gap:6px;align-items:center;margin-top:4px;width:100%}.roombar .btn{min-height:36px;padding:4px 6px;font-size:.68rem;flex:1 1}.room-code{flex:1.2 1;min-height:36px;border-radius:8px;border:1px solid #4a3024;border-bottom:4px solid #6a3010;background:#111;font:inherit;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}.room-code,.room-tag{min-width:0;color:#fff;text-align:center}.room-tag{flex:1.4 1;font-size:.68rem;letter-spacing:.06em;background:none;border:0;font-family:inherit;font-weight:700}.qr-grid{grid-gap:18px;gap:18px;margin-top:18px;overflow:auto}.qr-grid,.qr-grid figure{display:grid;justify-items:center}.qr-grid figure{margin:0;grid-gap:8px;gap:8px}.qr-grid svg{background:#fff;padding:10px}.qr-host{margin:12px 0 0;color:var(--gold);letter-spacing:.06em;font-size:.72rem;font-weight:700;text-align:center}.qr-grid figcaption{color:#fff;letter-spacing:.08em;font-size:.78rem;font-weight:700}.phase-row{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0}.phase-row .phase{flex:1 1;min-width:0}.phase-row .id-btn.on,.sheet-bar .id-btn.on{color:#fff;background:#f36b1c;border-radius:8px;padding:4px 8px}.flag{color:#6a5348;font-size:.68rem;font-weight:700;letter-spacing:.08em}.flag.warm{color:#fff}.flag.on{color:var(--gold)}button.phase{background:none;border:0;font:inherit;cursor:pointer}.phase{letter-spacing:.06em;color:var(--gold);font-size:.92rem;font-weight:700;text-align:center}.mark-stats{color:#fff;font-size:.78rem;font-weight:700;display:grid;grid-gap:6px;gap:6px;margin-top:12px}.mark-stats b{color:var(--gold)}.hand-label{justify-content:space-between;margin:14px 0 0;color:var(--gold);letter-spacing:.08em;font-size:.72rem;font-weight:700}.deck-row,.hand-label,.log-row{display:flex;align-items:center}.deck-row,.log-row{width:100%;gap:8px;color:#fff;font:inherit;font-weight:700}.deck-row span,.log-row span{flex:1 1;min-width:0;text-align:left}.deck-row small{display:block;color:var(--gold);font-size:.62rem;letter-spacing:.06em}.deck-row button{width:36px;min-height:36px;border:0;border-radius:8px;background:#1c1c1c;color:#fff;font:inherit;font-weight:700}.deck-row b{width:16px;text-align:center;color:var(--gold)}.log-row{min-height:48px}.log-row b{color:var(--gold);width:24px}.line-row .id-btn.on{color:#fff;background:#f36b1c}.to21{letter-spacing:.1em;color:#fff;font-size:.72rem;font-weight:700;text-align:center}.plays{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:6px;gap:6px;width:100%}.hud-actions{display:flex;gap:6px;width:100%}.hud-actions .btn{flex:1 1;text-align:center}.btn{border:1px solid #4a3024;border-bottom:4px solid #6a3010;border-radius:8px;background:linear-gradient(#3a3a3a,#161616);color:#fff;min-height:44px;padding:8px 8px 6px;letter-spacing:.03em;font-size:.78rem;font-weight:700;touch-action:manipulation;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 3px 0 #120804}.btn.on,.btn:hover{border-color:#ffd2b0 #ffd2b0 #9a4012;background:linear-gradient(#ff9348,#e85d0c);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 3px 0 #5c2408}.btn:active{transform:translateY(2px);border-bottom-width:2px;box-shadow:inset 0 2px 3px rgba(0,0,0,.4)}.btn.gold{background:linear-gradient(#ff9348,#e85d0c);border-color:#ffd2b0 #ffd2b0 #9a4012;color:#fff}.arena-badge{position:fixed;left:16px;bottom:calc(16px + env(safe-area-inset-bottom));height:64px;width:auto;z-index:5}@media (max-width:720px){.page{padding:32px 16px calc(32px + env(safe-area-inset-bottom))}.logo{width:min(56vw,200px)}h1{letter-spacing:.18em}.tag{letter-spacing:.08em;text-align:center}.row{flex-direction:column;width:min(100%,420px);margin-top:28px}.card{width:100%;min-height:64px;display:grid;place-items:center;align-content:center}.board{width:100%;border-inline:0}.crest{height:58px}.pts{font-size:2.6rem}.arena-badge{height:52px;left:12px}}