:root{
  --cyan:#7ffcff;--gold:#ffd98a;--purple:#9b4dff;--green:#8dffb4;--danger:#ff6289;
  --felt:#0b3b2a;--ink:#02040a;--panel:#050b15ee;--muted:#bfd4e7
}
*{box-sizing:border-box}
html,body{margin:0;width:100%;min-height:100%;background:#02040a;color:#fff;font-family:system-ui,Arial;overscroll-behavior:none}
body{background:radial-gradient(circle at 50% 8%,#124f55 0,#07101a 40%,#02040a 84%);overflow:hidden}
button,a,input{font:inherit}.hide{display:none!important}
.gate{min-height:100dvh;display:grid;place-items:center;padding:16px}.gate-card{width:min(560px,96vw);padding:22px;border:1px solid var(--cyan);border-radius:26px;background:#050a14f5;text-align:center;box-shadow:0 30px 90px #000}.gate-card img{width:108px;height:108px;object-fit:contain;filter:drop-shadow(0 0 26px #7ffcff66)}.gate-card h1{margin:.45rem 0;font:900 clamp(28px,7vw,46px) Orbitron,system-ui;letter-spacing:.08em}.platform-badge{display:inline-flex;min-height:34px;align-items:center;padding:0 12px;border:1px solid var(--green);border-radius:999px;color:var(--green);font-weight:950;letter-spacing:.07em}.gate-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.btn,.actions button,.footer button,.footer a,.raise-presets button{min-height:46px;border:1px solid var(--gold);border-radius:13px;background:#111827;color:#fff;font-weight:950;text-decoration:none;display:flex;align-items:center;justify-content:center;padding:8px}.btn.primary{grid-column:1/-1;border:0;background:linear-gradient(135deg,var(--cyan),var(--purple));color:#02040a;font-size:20px}
.shell{height:100dvh;width:min(930px,100%);margin:auto;padding:max(5px,env(safe-area-inset-top)) 6px max(5px,env(safe-area-inset-bottom));display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto auto;gap:5px;overflow:hidden}
.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:6px;align-items:center}.profile-pill,.brand-pill,.stack-pill{min-width:0;border:1px solid rgba(127,252,255,.55);border-radius:17px;background:rgba(2,8,18,.94);padding:6px 8px}.profile-pill{display:grid;grid-template-columns:42px minmax(0,1fr);gap:8px;align-items:center}.profile-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#7ffcff,#9b4dff);color:#02040a;font-weight:950;border:2px solid #fff}.profile-text{min-width:0}.profile-text strong,.profile-text span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-text strong{font-size:13px}.profile-text span{font-size:10px;color:var(--muted)}.xp-track{height:5px;margin-top:4px;border-radius:999px;background:#ffffff1c;overflow:hidden}.xp-track i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--green),var(--cyan))}.brand-pill{text-align:center;padding:3px 7px}.brand-pill img{width:52px;height:38px;object-fit:contain;filter:drop-shadow(0 0 14px #7ffcff88)}.brand-pill span{display:block;font-size:8px;font-weight:950;letter-spacing:.08em;color:#dffcff}.stack-pill{text-align:right}.stack-pill strong{display:block;color:var(--gold);font-size:13px}.stack-pill span{display:block;font-size:10px;color:var(--muted)}
.turn-strip{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;min-height:36px;padding:3px 7px}.turn-strip strong{text-align:center;color:var(--gold);font-size:clamp(15px,4vw,23px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.turn-clock{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--cyan);background:#06101c;color:#fff;font-weight:950;box-shadow:0 0 18px #7ffcff44}.turn-clock.warning{border-color:var(--danger);color:var(--danger);animation:clockPulse .55s ease-in-out infinite alternate}
.table-wrap{position:relative;min-height:0}.table-surface{position:relative;height:100%;min-height:0;border:8px solid #241a2f;border-radius:42px;background:radial-gradient(ellipse at 50% 46%,#1b6a48 0,#0b3b2a 45%,#041711 100%);box-shadow:inset 0 0 0 2px #ffd98a66,inset 0 -35px 62px #0009,0 18px 48px #000;overflow:hidden}.table-surface::before{content:"";position:absolute;inset:8px;border:1px solid #ffffff66;border-radius:31px;pointer-events:none}.table-logo{position:absolute;left:50%;top:48%;width:min(330px,55vw);height:min(210px,34vw);transform:translate(-50%,-50%);background:url('/logo.png') center/contain no-repeat;opacity:.67;filter:brightness(1.65) saturate(1.45) drop-shadow(0 0 26px #7ffcff66);mask-image:radial-gradient(ellipse,#000 42%,transparent 82%);pointer-events:none}.center-pot{position:absolute;left:50%;top:48%;z-index:20;transform:translate(-50%,-50%);display:grid;place-items:center;min-width:108px;padding:8px 12px;border:1px solid var(--gold);border-radius:999px;background:rgba(2,8,12,.9);box-shadow:0 0 26px #ffd98a44;font-weight:950;color:var(--gold)}.center-pot small{color:#fff;font-size:9px;letter-spacing:.08em}.center-pot span{font-size:20px}.deck-zone{position:absolute;left:50%;top:96px;z-index:15;transform:translateX(-50%);display:flex;align-items:center;gap:6px}.deck-card{width:31px;height:43px;border:2px solid var(--cyan);border-radius:7px;background:radial-gradient(circle,#4b2b9d,#172654 64%,#050812);display:grid;place-items:center;box-shadow:0 0 14px #7ffcff66}.deck-card img{width:74%;height:74%;object-fit:contain}.deck-zone span{font-size:9px;color:var(--gold);font-weight:950;letter-spacing:.07em;white-space:nowrap}.players{position:absolute;inset:10px 12px 150px;z-index:18;pointer-events:none}.player-box{position:absolute;width:clamp(122px,29vw,190px);min-height:82px;padding:5px 6px;border:1px solid #52758a;border-radius:15px;background:#020812eF;display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto auto;gap:2px 6px;overflow:hidden;pointer-events:auto;transition:.18s transform,.18s box-shadow,.18s border-color}.player-box[data-seat="1"]{left:0;top:0}.player-box[data-seat="2"]{left:50%;top:0;transform:translateX(-50%)}.player-box[data-seat="3"]{right:0;top:0}.player-box[data-seat="4"]{right:0;top:48%}.player-box[data-seat="5"]{left:0;top:48%}.player-box.active{border-color:var(--green);box-shadow:0 0 24px #8dffb477,0 0 0 2px #8dffb455 inset;animation:activeSeat .72s ease-in-out infinite alternate}.player-box.button{border-color:var(--gold)}.player-box.folded{opacity:.42;filter:grayscale(.55)}.player-box.winner{animation:winnerFlash .52s ease 6}.face{grid-row:1/3;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#253b58,#7f43b7);font-size:19px;border:1px solid #ffffff77}.player-meta{min-width:0}.player-meta strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-meta span{display:block;font-size:8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-action{grid-column:1/-1;min-height:15px;color:var(--gold);font-size:8px;font-weight:950;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-cards{grid-column:1/-1;display:flex;justify-content:center;gap:5px;min-height:45px}.turn-badge{position:absolute;right:5px;top:5px;min-width:25px;height:25px;padding:0 5px;border-radius:999px;display:grid;place-items:center;background:var(--green);color:#021009;font-size:9px;font-weight:950;box-shadow:0 0 14px #8dffb4}
.card{position:relative;display:grid;place-items:center;width:clamp(36px,9.4vw,52px);height:clamp(50px,13vw,72px);border-radius:8px;background:linear-gradient(160deg,#fffdf6,#e8e0d3);color:#10131b;border:1px solid #111;box-shadow:0 4px 10px #0009,0 0 0 1px #ffffff88 inset;overflow:hidden}.card.red{color:#b00028}.card .rank{position:absolute;left:4px;top:3px;font:950 clamp(11px,3vw,15px) Georgia}.card .suit{font:950 clamp(23px,7vw,33px) Georgia}.card.back{background:radial-gradient(circle at 50% 45%,#4d2da0,#152353 65%,#050812);border:2px solid var(--cyan)}.card.back img{width:76%;height:76%;object-fit:contain;filter:drop-shadow(0 0 6px #9b4dff)}.player-cards .card{width:34px;height:47px;border-radius:6px}.player-cards .card .rank{font-size:9px;left:2px;top:2px}.player-cards .card .suit{font-size:19px}
.board-zone{position:absolute;left:50%;bottom:9px;z-index:22;transform:translateX(-50%);width:min(72%,570px);display:grid;gap:4px}.board-row,.hole-row{display:grid;grid-template-columns:44px 1fr;align-items:center;gap:5px}.zone-label{font-size:9px;font-weight:950;letter-spacing:.08em;color:#e5fbff}.cards{display:flex;justify-content:center;align-items:center;gap:5px}.community-cards .card{width:clamp(32px,8.4vw,48px);height:clamp(45px,11.8vw,66px)}.hole-cards .card{width:clamp(38px,10vw,56px);height:clamp(54px,14vw,78px)}.sponsor-zone{position:absolute;z-index:12;bottom:16px;width:58px;min-height:86px;border:1px solid rgba(127,252,255,.42);border-radius:14px;background:linear-gradient(180deg,rgba(11,34,31,.74),rgba(2,8,18,.82));display:grid;place-items:center;padding:5px;overflow:hidden;box-shadow:inset 0 0 20px #7ffcff18}.sponsor-left{left:15px}.sponsor-right{right:15px}.sponsor-zone img{max-width:100%;max-height:47px;object-fit:contain}.sponsor-zone span{font-size:7px;text-align:center;color:#dffcff;font-weight:950;letter-spacing:.06em}.table-message{position:absolute;left:50%;top:63%;z-index:14;transform:translateX(-50%);max-width:58%;padding:4px 8px;border-radius:999px;background:#020812b8;color:#dffcff;font-size:9px;font-weight:900;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.raise-panel{border:1px solid rgba(127,252,255,.38);border-radius:15px;background:#050b15eF;padding:7px 9px}.raise-panel.disabled{opacity:.38;pointer-events:none}.raise-head{display:flex;justify-content:space-between;align-items:center;font-size:10px}.raise-head span{color:var(--gold);font-size:14px;font-weight:950}.raise-panel input{width:100%;accent-color:var(--cyan)}.raise-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.raise-presets button{min-height:29px;padding:3px;border-color:#ffffff33;font-size:9px}
.actions{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.actions button{min-height:46px;padding:6px;font-size:clamp(10px,2.8vw,14px);border-color:#ffffff35;background:linear-gradient(180deg,#151c2a,#080c14)}.actions button.valid{border-color:var(--green);box-shadow:0 0 12px #8dffb438}.actions button:disabled{opacity:.34}.footer{display:flex;justify-content:center;gap:5px}.footer button,.footer a{min-height:34px;padding:5px 10px;font-size:10px;border-color:var(--cyan)}
.overlay{position:fixed;inset:0;z-index:180;display:grid;place-items:center;background:rgba(0,3,8,.84);backdrop-filter:blur(8px)}.overlay-card{width:min(440px,90vw);padding:22px;border:1px solid var(--danger);border-radius:22px;background:#090d17;text-align:center}.overlay-card h2{color:var(--danger)}.chip-layer,.fx-layer{position:fixed;inset:0;z-index:150;pointer-events:none}.chip-flight{position:fixed;width:14px;height:14px;border-radius:50%;border:2px solid #ffeaa7;background:radial-gradient(circle,#ffec8f 0 30%,#e64b65 32% 58%,#fff 60% 70%,#15223f 72%);box-shadow:0 0 10px #ffd98a;animation:chipMove .62s cubic-bezier(.2,.8,.2,1) forwards}.confetti{position:fixed;width:8px;height:14px;border-radius:2px;background:var(--c);animation:confetti 1.4s ease-out forwards}.winner-banner{position:fixed;left:50%;top:48%;z-index:170;transform:translate(-50%,-50%) scale(.8);max-width:90vw;padding:15px 20px;border:2px solid var(--green);border-radius:18px;background:#03130ef2;color:#fff;text-align:center;font-weight:950;box-shadow:0 0 45px #8dffb477;opacity:0;pointer-events:none}.winner-banner.show{animation:winnerBanner 2.7s ease forwards}
@keyframes activeSeat{from{transform:var(--seat-transform,none) scale(1)}to{transform:var(--seat-transform,none) scale(1.035)}}@keyframes clockPulse{to{transform:scale(1.09);box-shadow:0 0 25px #ff628988}}@keyframes chipMove{to{left:var(--tx);top:var(--ty);transform:scale(.72) rotate(540deg);opacity:.15}}@keyframes confetti{to{transform:translate(var(--dx),var(--dy)) rotate(720deg);opacity:0}}@keyframes winnerFlash{50%{background:#8dffb4;color:#03100a;border-color:#fff;box-shadow:0 0 30px #8dffb4;transform:scale(1.04)}}@keyframes winnerBanner{0%{opacity:0;transform:translate(-50%,-50%) scale(.75)}14%,76%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.08)}}
@media(max-width:620px){
  .shell{gap:4px;padding-left:4px;padding-right:4px}.table-surface{border-width:5px;border-radius:31px}.table-surface::before{inset:5px;border-radius:24px}.brand-pill span{display:none}.brand-pill img{width:40px}.profile-pill{grid-template-columns:34px 1fr;padding:4px}.profile-avatar{width:34px;height:34px}.profile-text strong{font-size:10px}.profile-text span{font-size:8px}.stack-pill{padding:4px 6px}.stack-pill strong{font-size:11px}.players{inset:8px 8px 142px}.player-box{width:30.5vw;min-height:76px;padding:4px;grid-template-columns:28px 1fr;gap:1px 4px}.face{width:28px;height:28px;font-size:15px}.player-meta strong{font-size:9px}.player-meta span{font-size:7px}.player-action{font-size:7px}.player-cards .card{width:30px;height:42px}.player-box[data-seat="4"],.player-box[data-seat="5"]{top:47%}.deck-zone{top:88px}.sponsor-zone{width:48px;min-height:72px;bottom:12px}.sponsor-left{left:9px}.sponsor-right{right:9px}.board-zone{width:77%;bottom:5px}.board-row,.hole-row{grid-template-columns:35px 1fr}.zone-label{font-size:8px}.table-message{top:62%;font-size:8px}.raise-panel{padding:5px 7px}.actions button{min-height:42px}.footer button,.footer a{padding:4px 7px;font-size:9px}
  .player-box[data-seat="2"]{--seat-transform:translateX(-50%)}
}
@media(max-height:760px){.footer{display:none}.shell{grid-template-rows:auto auto minmax(0,1fr) auto auto}.players{bottom:126px}.player-box{min-height:66px}.player-cards .card{width:27px;height:38px}.deck-zone{top:75px}.sponsor-zone{display:none}.board-zone{width:84%}.raise-presets{display:none}.raise-panel{padding:4px 7px}.actions button{min-height:38px}.turn-strip{min-height:31px}.turn-clock{width:31px;height:31px}.table-message{display:none}}
@media(orientation:landscape) and (max-height:520px){.shell{width:100%;grid-template-columns:minmax(0,1fr) 290px;grid-template-rows:auto auto minmax(0,1fr) auto}.topbar,.turn-strip{grid-column:1/-1}.table-wrap{grid-column:1;grid-row:3/5}.raise-panel{grid-column:2;grid-row:3}.actions{grid-column:2;grid-row:4;grid-template-columns:1fr 1fr}.footer{display:none}.players{bottom:102px}.board-zone{width:68%}}
