:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;color:#f5f7f0;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 50% 0,#d3ac463d,#0000 30%),linear-gradient(160deg,#071b17 0%,#103727 46%,#070b0e 100%);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;background:#071b17;min-height:100%}body{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;background:radial-gradient(circle at 50% 0,#d3ac463d,#0000 30%),linear-gradient(160deg,#071b17 0%,#103727 46%,#070b0e 100%);min-width:320px;min-height:100svh;margin:0}#root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;min-height:100svh}@media (prefers-color-scheme:dark){:root,html,body,#root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only}}.app-shell{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;color:#fff7d8;width:min(100vw,1920px);min-height:100svh;margin:0 auto;padding:0}.top-bar{z-index:20;pointer-events:none;align-items:flex-start;gap:14px;display:flex;position:fixed;top:12px;left:18px}.eyebrow{color:#fff06b;text-shadow:0 2px 3px #000;margin:0 0 3px;font-size:11px;font-weight:900}h1,h2,p{margin:0}h1{color:#fffbe2;text-shadow:0 2px #0d1114,0 4px 10px #000000bf;font-size:22px;line-height:1}h2{color:#fffbe2;font-size:26px;line-height:1.05}button,input{appearance:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;font:inherit}button{cursor:pointer;min-height:44px;color:inherit;border:0}button:disabled{cursor:not-allowed;opacity:.45}.record-pill{display:none}.start-screen{background:linear-gradient(#00000029,#0000007a),url(/assets/baccarat-table-bg-C3FxWnM0.png) 50%/cover no-repeat;grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:center;gap:18px;min-height:100svh;padding:88px 28px 28px;display:grid}.start-copy{background:linear-gradient(#e00000f2,#0f1218f2 58%);border:4px solid #d6b25a;border-radius:18px;align-content:center;gap:24px;min-height:420px;padding:36px;display:grid;box-shadow:inset 0 0 0 2px #fff3,0 22px 50px #0000007a}.start-copy p{color:#fff7c8;max-width:620px;font-size:20px;line-height:1.55}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.stats-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.stat{background:linear-gradient(#d90000 0 45%,#090a0f 45% 100%);border:3px solid #d1aa58;border-radius:16px;gap:6px;min-height:92px;padding:16px;display:grid;box-shadow:0 14px 24px #0000006b}.stat span,.manual-bet span,.deal-row span{color:#ffe65e;text-transform:uppercase;font-size:12px;font-weight:900}.stat strong{color:#fff5b6;text-shadow:0 2px 2px #000;font-size:24px;line-height:1}.table{isolation:isolate;background:linear-gradient(#00140014,#0000001a),url(/assets/baccarat-table-bg-C3FxWnM0.png) 50%/cover no-repeat;width:100vw;min-height:100svh;position:relative;overflow:hidden}.table:after{z-index:0;content:"";pointer-events:none;background:radial-gradient(circle at 50% 48%,#0000 0 42%,#0000001a 65%,#00000070),linear-gradient(90deg,#0000003d,#0000 18% 82%,#0000003d);position:absolute;inset:0}.open-badge{z-index:4;aspect-ratio:1;color:#fff;text-shadow:-2px -2px #33504c,2px 2px #33504c,0 4px 4px #000;background:radial-gradient(circle at 50% 25%,#fff,#ef1019 42%,#ba0000 72%);border:7px solid #fff422;border-radius:50%;place-items:center;width:clamp(74px,8vw,138px);font-size:clamp(22px,2.4vw,46px);font-weight:1000;display:grid;position:absolute;top:6.5%;left:1.5%;box-shadow:0 5px 18px #000}.limit-plaque{z-index:4;color:#151515;background:#ffe05e;border:5px solid #31343a;border-radius:8px;gap:2px;width:clamp(112px,9vw,178px);padding:10px 14px;display:grid;position:absolute;top:7.8%;left:14.8%;transform:rotate(-8deg);box-shadow:inset 0 0 0 3px #ab8738,0 8px 16px #00000080}.limit-plaque span{color:#dfdfdf;text-align:center;background:#151515;border-radius:4px;font-size:clamp(12px,1.1vw,18px);overflow:hidden}.limit-plaque strong{color:#111;font-size:clamp(13px,1.15vw,21px);line-height:1}.chip-rack{z-index:4;background:linear-gradient(#fff4b3,#8c5a22);border:5px solid #dcb35e;border-radius:0 0 8px 8px;justify-content:center;align-items:end;gap:clamp(5px,.55vw,10px);width:min(38vw,560px);padding:10px 16px 8px;display:flex;position:absolute;top:-.8%;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #0006}.rack-chip{aspect-ratio:1;color:#111;background:radial-gradient(circle,#fff 0 33%,#0000 34%),conic-gradient(#ffea00,#0dbb20,#ffea00,#0dbb20,#ffea00);border:6px dashed #fbfbfb;border-radius:50%;place-items:center;width:clamp(36px,4vw,66px);font-size:clamp(11px,1vw,18px);font-weight:1000;display:grid;box-shadow:inset 0 0 0 3px #7a1414,0 5px 8px #0000006b}.rack-chip:nth-child(2){background:radial-gradient(circle,#fff 0 33%,#0000 34%),conic-gradient(#111,#d4d4d4,#111,#d4d4d4,#111)}.rack-chip:nth-child(3){background:radial-gradient(circle,#fff 0 33%,#0000 34%),conic-gradient(#f400ff,#ffcf00,#f400ff,#ffcf00,#f400ff)}.rack-chip:nth-child(4){background:radial-gradient(circle,#fff 0 33%,#0000 34%),conic-gradient(#fbd318,#f1c30a,#fbd318)}.rack-chip:nth-child(5){background:radial-gradient(circle,#fff 0 33%,#0000 34%),conic-gradient(#f595d6,#50114d,#f595d6,#50114d,#f595d6)}.rack-chip:nth-child(6){color:#fff;text-shadow:0 1px 2px #000;background:radial-gradient(circle,#fff 0 33%,#0000 34%),conic-gradient(#2434c8,#efefef,#2434c8,#efefef,#2434c8)}.shoe{z-index:4;background:linear-gradient(145deg,#08090d,#24262a 55%,#050608);border-radius:12px;align-items:end;width:clamp(160px,18vw,310px);height:clamp(72px,9vw,145px);padding:0 18px 16px;display:grid;position:absolute;top:2%;right:5%;transform:rotate(28deg);box-shadow:inset 0 0 0 5px #ffffff0d,0 14px 24px #0009}.shoe-card{clip-path:polygon(0 0,65% 0,100% 100%,0 100%);background:repeating-linear-gradient(45deg,#fff 0 4px,#c70000 4px 8px,#fff 8px 12px),#b90000;border-radius:6px;position:absolute;inset:18% 22% 24% 8%}.shoe strong{color:#ddd;text-shadow:0 2px 3px #000;font-size:clamp(16px,1.65vw,32px);position:relative;transform:rotate(6deg)}.felt-letter{z-index:1;color:#f8e90d;text-shadow:0 3px 3px #00000059;pointer-events:none;font-family:Georgia,serif;font-size:clamp(44px,5vw,94px);font-weight:900;line-height:1;position:absolute}.felt-p1{color:#f20a13;top:26%;left:41%}.felt-b1{top:28%;left:55%}.felt-b2{top:54%;left:49%}.side-score{z-index:4;text-align:center;background:linear-gradient(#e00000 0 48%,#08080d 49% 100%);border:3px solid #5b5d62;border-radius:999px;min-width:clamp(150px,14vw,250px);display:grid;position:absolute;top:38%;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff26,0 9px 18px #00000073}.side-score.left{left:-2.2%}.side-score.right{right:-2.2%}.side-score span{color:#101010;font-size:clamp(17px,1.7vw,34px);line-height:1.2}.side-score strong{color:#fff0a2;text-shadow:0 2px 2px #000;font-size:clamp(18px,1.85vw,36px);line-height:1.35}.seat-badge{z-index:5;background:linear-gradient(#e10000 0 48%,#07070c 49% 100%);border:4px solid #ae8950;border-radius:999px;grid-template-rows:1fr 1fr;grid-template-columns:auto 1fr;align-items:center;min-width:clamp(190px,18vw,335px);height:clamp(68px,6.5vw,115px);display:grid;position:absolute;bottom:12%;box-shadow:0 14px 20px #00000073}.seat-left{left:8%}.seat-center{left:50%;transform:translate(-50%)}.seat-right{right:8%}.seat-badge strong,.seat-badge em{text-align:center;text-shadow:0 2px 3px #000;padding-right:18px;font-style:normal}.seat-badge strong{color:#fff;font-size:clamp(17px,1.9vw,34px);line-height:1}.seat-badge em{color:#fff0a3;font-size:clamp(17px,1.8vw,32px);font-weight:1000;line-height:1}.avatar{aspect-ratio:1;color:#fff;text-shadow:0 2px 3px #000;border:5px solid #111;border-radius:50%;grid-row:1/3;place-items:center;width:clamp(58px,6vw,106px);margin-left:-4px;font-size:clamp(24px,2.8vw,48px);font-weight:1000;display:grid}.avatar.panda{color:#111;background:radial-gradient(circle,#fff 0 36%,#151515 37% 48%,#f4f4f4 49%)}.avatar.dragon{background:conic-gradient(#f8d000,#f0005c,#1014c8,#00d6ff,#f8d000)}.avatar.wave{background:linear-gradient(135deg,#0ac5df,#0b2850 70%)}.goal-track{z-index:6;background:#0a0a0aad;border-radius:999px;width:7px;height:clamp(70px,9vw,160px);position:absolute;bottom:10.6%;right:15%;overflow:hidden;box-shadow:0 0 0 4px #ffffff26}.goal-track span,.progress-track span{border-radius:inherit;background:linear-gradient(#4aff3d,#f8ef4d,#ff1038);display:block}.goal-track span{width:100%;position:absolute;bottom:0}.empty-table{z-index:3;color:#fffbe2;text-align:center;text-shadow:0 3px 5px #000;align-content:center;place-items:center;gap:18px;font-size:clamp(18px,2vw,36px);font-weight:1000;display:grid;position:absolute;inset:22% 25% 29%}.chip-stack{width:126px;height:92px;position:relative}.chip-stack span{background:#b12038;border:10px dashed #f7d776;border-radius:50%;width:82px;height:82px;position:absolute;left:50%;box-shadow:inset 0 0 0 10px #f7f1db}.chip-stack span:first-child{transform:translate(-82%)}.chip-stack span:nth-child(2){transform:translate(-50%)}.chip-stack span:nth-child(3){transform:translate(-18%)}.hand-zone{z-index:3;justify-items:center;gap:8px;display:grid;position:absolute}.banker-hand:not(.active){top:7%;left:50%;transform:translate(-50%)}.player-hand:not(.active){bottom:22%;left:50%;transform:translate(-50%)}.hand-zone.active{z-index:8;gap:4px;top:29%;left:6%;right:6%}.hand-header{color:#fff;text-shadow:0 2px 3px #000;background:#0000006b;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:28px;padding:0 12px;display:flex}.hand-zone.active .hand-header{position:absolute;top:-46px}.hand-header span{color:#fffbe2;font-size:clamp(15px,1.4vw,24px);font-weight:1000}.hand-header small,.table-center small,.result-summary small,.deal-row small{color:#ffe96a;font-size:12px;font-weight:900}.cards-row,.squeeze-area{justify-content:center;gap:clamp(10px,1vw,18px);display:flex}.squeeze-area{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:10px;padding:8px}.squeeze-area:has(.three-squeeze-canvas){perspective:1200px;height:min(38vh,360px);padding:0}.squeeze-area.single-card:has(.three-squeeze-canvas){height:min(35vh,330px)}.three-squeeze-canvas{pointer-events:none;width:100%;height:100%}.three-squeeze-canvas canvas{width:100%;height:100%;display:block}.card{aspect-ratio:.72;color:#111;perspective:900px;width:clamp(74px,7vw,138px);transform-style:preserve-3d;filter:drop-shadow(0 12px 14px #00000061);background:#fffaf0;border:2px solid #e5dcc4;border-radius:8px;position:relative;overflow:hidden}.hand-zone.active .squeeze-area{justify-content:space-between;width:100%}.hand-zone.active .squeeze-area.single-card{justify-content:center}.hand-zone.active .card{border-radius:12px;width:min(42vw,760px);max-height:34vh;box-shadow:0 18px 28px #00000070,inset 0 0 0 8px #fff}.hand-zone.active .card:first-child{transform:rotate(-15deg) translateY(14px) rotateX(var(--card-bend)) translateY(var(--card-lift))}.hand-zone.active .card:nth-child(2){transform:rotate(15deg) translateY(14px) rotateX(var(--card-bend)) translateY(var(--card-lift))}.third-card-zone.active .card{width:min(26vw,420px);transform:rotate(-7deg) translateY(10px) rotateX(var(--card-bend)) translateY(var(--card-lift))}.card.red{color:#f70000}.card.black{color:#020202}.card-face{border-radius:inherit;clip-path:polygon(0 var(--peel-left), 100% var(--peel-right), 100% 100%, 0 100%);transform:translateZ(var(--front-depth));transform-style:preserve-3d;backface-visibility:hidden;background:radial-gradient(circle at 50% 42%,#fffffff5,#f5f1e7fa 68%),#fffaf0;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 0 0 5px #fff,inset 0 0 22px #50361614}.card-face:after{content:"";opacity:var(--front-shine);pointer-events:none;background:linear-gradient(105deg,#0000 0 26%,#ffffff9e 42%,#0000 58%),radial-gradient(circle at 55% 0,#ffffff6b,#0000 34%);position:absolute;inset:0}.card-corner{justify-items:center;gap:0;font-size:clamp(17px,2.4vw,46px);line-height:1;display:grid;position:absolute;top:8px;left:8px}.card-corner.bottom{inset:auto 8px 8px auto;transform:rotate(180deg)}.card-center{place-items:center;height:100%;font-size:clamp(44px,9vw,174px);display:grid}.card-back{border-radius:inherit;color:#f7d776;clip-path:polygon(0 0, 100% 0, 100% var(--peel-right), 0 var(--peel-left));transform:translateY(var(--peel-lift)) skewX(var(--peel-skew)) translateZ(8px);transform-origin:50% 0;transform-style:preserve-3d;backface-visibility:hidden;will-change:transform, clip-path;background:linear-gradient(#ffffff2e,#0000 30%),repeating-linear-gradient(45deg,#fff 0 5px,#c30000 5px 10px,#fff 10px 15px,#c30000 15px 20px),#b00;place-items:center;font-size:24px;font-weight:1000;display:grid;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 -14px 24px #00000038,inset 0 16px 18px #ffffff29}.card-back:before{content:"";opacity:var(--peel-highlight);pointer-events:none;background:linear-gradient(#ffffff8c,#0000 12%),linear-gradient(90deg,#0003,#0000 18% 82%,#00000040);position:absolute;inset:0}.card-back:after{display:none}.card-fold-ridge{left:0;right:0;bottom:min(var(--peel-left), var(--peel-right));height:18px;opacity:var(--peel-highlight);transform-origin:50%;pointer-events:none;background:linear-gradient(#ffffff8c,#0003,#0000);position:absolute;transform:rotate(1.5deg)}.peel-left .card-fold-ridge{transform:rotate(-5deg)}.peel-right .card-fold-ridge{transform:rotate(5deg)}.peel-shadow{z-index:2;clip-path:polygon(0 var(--peel-left), 100% var(--peel-right), 100% calc(var(--peel-right) + 8%), 0 calc(var(--peel-left) + 8%));filter:blur(4px);opacity:var(--peel-shadow);pointer-events:none;background:linear-gradient(#00000061,#0000 72%);position:absolute;inset:0}.peel-left .peel-shadow{transform:translateY(8px)rotate(-1.5deg)}.peel-right .peel-shadow{transform:translateY(8px)rotate(1.5deg)}.card.open .card-back,.card.open .peel-shadow{display:none}.card-back .card-fold-ridge{left:0;right:0}.card-back span{z-index:1;text-shadow:0 2px 2px #00000075;position:relative;transform:translateZ(18px)}.hand-zone.active .card.covered .card-face{box-shadow:inset 0 0 0 8px #fff,inset 0 18px 24px #00000014,0 2px #0000002e}.table-center{z-index:7;text-align:center;text-shadow:0 2px 3px #000;background:#00000070;border-radius:999px;justify-items:center;gap:4px;min-width:clamp(180px,18vw,340px);padding:8px 14px;display:grid;position:absolute;top:39%;left:50%;transform:translate(-50%)}.table-center>p{color:#fffbe2;font-weight:1000}.table-center>strong{color:#fff06a;font-size:clamp(18px,2vw,38px);line-height:1}.reveal-actions{background:#00000070;border-radius:999px;grid-template-columns:minmax(0,210px) auto;align-items:center;gap:12px;padding:8px 12px;display:grid}.progress-track{background:#fff3;border-radius:999px;height:10px;overflow:hidden}.progress-track span{background:linear-gradient(90deg,#ff1438,#fff06a,#40ff4c);height:100%}.ghost-button{color:#fff;text-shadow:0 2px 2px #000;background:linear-gradient(#f30000,#920000);border:2px solid #ffe967;border-radius:999px;min-height:38px;padding:0 18px;font-weight:1000}.bet-panel,.round-actions,.end-screen{z-index:10;background:#04080cd1;border:3px solid #d4aa52;border-radius:18px;gap:8px;width:min(720px,68vw);padding:10px;display:grid;position:absolute;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 1px #ffffff24,0 16px 24px #0000007a}.bet-panel{bottom:1.8%}.target-grid,.chip-grid{gap:7px;display:grid}.target-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.chip-grid{grid-template-columns:repeat(8,minmax(0,1fr))}.target-grid button,.chip-grid button{color:#fff7d4;text-shadow:0 2px 3px #000;background:linear-gradient(#f01818,#0a0a0e 52%);border:2px solid #ffffff3d;border-radius:999px;place-items:center;gap:1px;min-height:42px;padding:5px 8px;font-weight:1000;display:grid}.target-grid button span{color:#ffe65e;font-size:11px}.target-grid button.selected{color:#101010;text-shadow:none;background:linear-gradient(#fff327,#ff241e 54%,#0a0a0e 55%);border-color:#fff327}.chip-grid button.all-in{color:#fff;background:linear-gradient(#ffeb2d,#e50000 55%,#050508 56%)}.manual-bet{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;display:grid}.manual-bet input{color:#fff4a8;caret-color:#fff4a8;background:#08080d;border:2px solid #fff3;border-radius:999px;width:100%;min-height:38px;padding:0 14px;font-weight:1000}.manual-bet input::placeholder{color:#fff4a894}.deal-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.deal-row>div{gap:0;display:grid}.deal-row strong{color:#fff4a8;text-shadow:0 2px 2px #000;font-size:22px}.primary-button{color:#111;text-shadow:0 1px #ffffff73;background:linear-gradient(#ffef51 0 36%,#ff1515 37% 100%);border:3px solid #ffffff3d;border-radius:999px;min-width:132px;padding:0 22px;font-weight:1000;box-shadow:0 9px 18px #00000070}.round-actions{justify-items:center;width:auto;bottom:3.2%}.result-summary{justify-items:center;gap:4px;display:grid}.result-summary.win h2{color:#58ff47}.result-summary.lose h2{color:#ff3040}.result-summary.push h2{color:#fff06a}.result-summary strong{color:#fffbe2}.end-screen{text-align:center;background:#04080ceb;justify-items:center;top:28%;bottom:auto}.end-screen.success{border-color:#7ff0a4e6}.end-screen.failed{border-color:#ff4a54e6}.end-screen>p{color:#fff7c8}@media (width<=900px){.top-bar{max-width:138px;position:absolute}h1{font-size:17px;line-height:1.08}.table{min-height:100svh}.open-badge,.limit-plaque,.shoe,.seat-left,.seat-right,.side-score,.felt-letter{display:none}.chip-rack{width:56vw;padding-inline:8px;left:calc(50% + 50px)}.app-shell:has(.hand-zone.active) .top-bar{display:none}.table:has(.hand-zone.active) .chip-rack{transform-origin:top;width:68vw;top:-1.5%;left:50%;transform:translate(-50%)scale(.82)}.banker-hand:not(.active){top:10%}.player-hand:not(.active){bottom:31%}.hand-zone.active{top:27%;left:3%;right:3%}.hand-zone.active .hand-header{top:-34px}.squeeze-area:has(.three-squeeze-canvas){height:min(36vh,300px)}.hand-zone.active .card{width:43vw;max-height:none}.table-center{min-width:220px;top:45%}.seat-center{min-width:235px;bottom:13%}.goal-track{bottom:12%;right:10%}.reveal-actions{grid-template-columns:minmax(0,1fr) auto;width:min(86vw,420px);margin-inline:auto}.bet-panel{border-radius:14px;width:calc(100vw - 20px);bottom:8px}.chip-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stats-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.start-screen{grid-template-columns:1fr;padding:76px 12px 16px}}
