:root{--felt: #134a32;--felt-deep: #0b3022;--felt-tex: none;--ink: #f7f0e1;--ink-dim: rgba(247, 240, 225, .72);--ivory: #fbf6ea;--card-ink: #1d1a17;--brass: #e3b23c;--brass-deep: #b8861f;--red: #c0262f;--blue: #1f3f8f;--panel: rgba(9, 22, 16, .86);--panel-line: rgba(227, 178, 60, .28);--good: #5fd28a;--bad: #ff6b5e;--bar-h: 58px;--radius: 14px;--shadow: 0 10px 30px rgba(0, 0, 0, .45);--serif: "Playfair Display", Georgia, serif;--sans: "Source Sans 3", system-ui, sans-serif;color-scheme:dark}html,body{margin:0;height:100%}body{background:var(--felt-deep);background-image:radial-gradient(ellipse at 50% 30%,#ffffff12,#00000059 80%),var(--felt-tex);background-size:auto,512px;background-attachment:fixed;color:var(--ink);font:16px/1.4 var(--sans);overflow:hidden;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none;touch-action:manipulation}button{font:inherit;color:inherit}#bar{position:fixed;inset:0 0 auto;height:var(--bar-h);z-index:50;display:flex;align-items:center;gap:10px;padding:0 max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left));background:linear-gradient(#050e0aeb,#050e0ac7);border-bottom:1px solid var(--panel-line);backdrop-filter:blur(6px)}#bar .home{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);font-weight:700;padding:6px 10px 6px 4px;border-radius:10px}#bar .home:hover{background:#ffffff0f}#bar .home svg{width:20px;height:20px}#bar h1{margin:0;font:900 23px var(--serif);letter-spacing:.3px;white-space:nowrap;color:var(--ivory)}#bar .stats{flex:1;display:flex;justify-content:center;gap:18px;font-weight:600;color:var(--ink-dim);font-variant-numeric:tabular-nums;min-width:0}#bar .stats b{color:var(--ink);font-weight:800}#bar .tools{display:flex;gap:6px}.tb{display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 14px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;cursor:pointer;font-weight:700;font-size:15px;white-space:nowrap}.tb:hover{background:#ffffff1f}.tb:disabled{opacity:.4;cursor:default}.tb svg{width:18px;height:18px;flex:none}.tb.primary{background:var(--brass);color:#2a1d05;border-color:transparent}.tb.primary:hover{background:#efc355}@media (max-width: 760px){#bar{gap:6px}#bar h1{font-size:19px}#bar .home span,.tb span{display:none}.tb{padding:0 10px}#bar .stats{gap:10px;font-size:14px}}@media (max-width: 480px){#bar h1{display:none}}#table{position:fixed;inset:var(--bar-h) 0 0 0;overflow:hidden}#veil{position:fixed;inset:0;z-index:100;background:#0000008c;display:none;align-items:center;justify-content:center;padding:16px}#veil.on{display:flex;animation:fade .18s ease-out}.dlg{width:min(480px,100%);max-height:calc(100vh - 32px);overflow:auto;background:linear-gradient(#fdf8ec,#f3ead6);color:var(--card-ink);border-radius:18px;box-shadow:var(--shadow);padding:24px 24px 20px;border:1px solid #d9c9a3;user-select:text;-webkit-user-select:text}.dlg h2{margin:0 0 10px;font:900 30px/1.1 var(--serif);color:#1d3b2c}.dlg p{margin:0 0 12px;font-size:17px}.dlg .row{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:18px}.dlg .btn{height:46px;padding:0 20px;border-radius:12px;border:1px solid #c8b78f;background:#fff;font-weight:800;font-size:16px;cursor:pointer;color:#2b2418}.dlg .btn:hover{background:#f6efdd}.dlg .btn.primary{background:#1d5a3c;color:#fff;border-color:transparent}.dlg .btn.primary:hover{background:#237049}.dlg .choices{display:grid;gap:8px;margin:10px 0 4px}.dlg .choice{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:12px;border:1px solid #d6c59d;background:#fff;cursor:pointer;font-size:16px;font-weight:700;text-align:left;color:#2b2418}.dlg .choice small{font-weight:600;color:#6b5f48;font-size:14px}.dlg .choice.on{border-color:#1d5a3c;box-shadow:inset 0 0 0 2px #1d5a3c;background:#eef6f0}.dlg .statgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:12px 0}.dlg .stat{background:#fff;border:1px solid #e0d2b0;border-radius:12px;padding:10px;text-align:center}.dlg .stat b{display:block;font:900 26px var(--serif);color:#1d3b2c}.dlg .stat span{font-size:13px;color:#6b5f48;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.dlg label.opt{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #e5d8ba;font-size:16px;font-weight:600}.dlg .rules h3{font:800 18px var(--sans);margin:14px 0 4px;color:#1d3b2c}.dlg .rules p,.dlg .rules li{font-size:16px}.dlg .rules ul{padding-left:20px;margin:0 0 8px}#toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%) translateY(20px);z-index:90;background:var(--panel);border:1px solid var(--panel-line);color:var(--ink);padding:12px 20px;border-radius:999px;font-weight:700;font-size:16px;opacity:0;transition:.25s;pointer-events:none;max-width:calc(100vw - 32px);text-align:center}#toast.on{opacity:1;transform:translate(-50%)}@keyframes fade{0%{opacity:0}}.card{position:absolute;width:var(--cw, 96px);height:calc(var(--cw, 96px) * 1.4);border-radius:calc(var(--cw, 96px) * .075)}.card .face,.card .back{position:absolute;inset:0;border-radius:inherit;overflow:hidden;backface-visibility:hidden}.card .face{background:var(--ivory);box-shadow:0 1px 2px #00000059,0 0 0 1px #00000024 inset}.card .face svg,.card .face img{position:absolute;inset:0;width:100%;height:100%;display:block}.card .back{background:#7d1620 var(--card-back) center/cover;box-shadow:0 1px 2px #0006,0 0 0 1px #00000040 inset}.card.down .face{display:none}.card:not(.down) .back{display:none}.dlg input.vol{width:min(220px,50%);accent-color:#1d5a3c;height:28px}@media (max-width: 760px){body.with-stats{--bar-h: 86px}body.with-stats #bar{flex-wrap:wrap;align-content:center;row-gap:2px;padding-top:4px;padding-bottom:4px}body.with-stats #bar .tools{margin-left:auto}body.with-stats #bar .stats{order:3;flex:0 0 100%;justify-content:center;font-size:14px;gap:14px;white-space:nowrap}}.club-chip{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 12px;border-radius:10px;border:1px solid rgba(227,178,60,.35);background:#e3b23c1a;cursor:pointer;font-weight:800;font-size:15px;color:var(--ivory);white-space:nowrap}.club-chip i{width:38px;height:6px;border-radius:3px;background:linear-gradient(90deg,var(--brass) var(--p),rgba(255,255,255,.15) var(--p))}.dlg table.lb{width:100%;border-collapse:collapse;margin:8px 0;font-size:16px}.dlg table.lb td{padding:8px 10px;border-bottom:1px solid #e5d8ba}.dlg table.lb td:first-child{width:44px;font-weight:800;color:#1d5a3c}.dlg table.lb td:last-child{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.dlg table.lb tr.me td{background:#eef6f0;font-weight:800}.dlg .lbtabs{display:flex;gap:6px;margin-bottom:8px}.dlg .lbtabs .choice{flex:1;justify-content:center;padding:8px}.dlg .lbtotal{font-size:14px;color:#6b5f48;margin:4px 0 0}.dlg .xpbar{height:10px;border-radius:5px;background:#e5d8ba;overflow:hidden;margin:6px 0}.dlg .xpbar i{display:block;height:100%;background:linear-gradient(90deg,#1d5a3c,#3a9a68)}.dlg .achs{display:grid;gap:6px}.dlg .ach{padding:8px 12px;border-radius:10px;border:1px solid #e0d2b0;background:#fff;opacity:.6}.dlg .ach.got{opacity:1;border-color:#1d5a3c}.dlg .ach b{display:block;font-size:15px}.dlg .ach span{font-size:14px;color:#6b5f48}@media (max-width: 760px){.club-chip i{display:none}.club-chip{padding:0 8px}}#bar{flex-wrap:nowrap}#bar.compact .tb span{display:none}#bar.compact .tb{padding:0 10px}#bar.compact h1{font-size:20px}body.bar-two-line{--bar-h: 86px}#bar.two-line{flex-wrap:wrap;align-content:center;row-gap:2px;padding-top:4px;padding-bottom:4px}#bar.two-line .tools{margin-left:auto}#bar.two-line .stats{order:3;flex:0 0 100%;justify-content:center;font-size:14px;gap:14px;white-space:nowrap}#bar .stats{overflow:hidden}:root{--felt: #4549d6;--felt-deep: #3b3fc4;--felt-tex: none !important;--ink: #ffffff;--ink-dim: #d9dcff;--ivory: #ffffff;--card-ink: #23264d;--brass: #ffc83d;--brass-deep: #e09b00;--red: #ff6b6b;--blue: #4549d6;--panel: rgba(36, 34, 132, .78);--panel-line: rgba(255, 255, 255, .18);--good: #3fe0a6;--bad: #ff8a8a;--bar-h: 58px;--radius: 18px;--shadow: 0 6px 0 rgba(20, 18, 90, .45), 0 18px 36px rgba(20, 18, 90, .35);--serif: "Fredoka", "Nunito", system-ui, sans-serif;--sans: "Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;color-scheme:dark;--bg-top: #4a4fe0;--bg-bottom: #3236b4;--shape-a: rgba(130, 140, 255, .35);--shape-b: rgba(255, 200, 61, .16);--shape-c: rgba(255, 107, 107, .18);--accent-2: #ff6b6b;--accent-3: #2ad4b0;--on-accent: #2a1d05;--accent-press: #d99100;--chip: #2f32a8;--chip-press: #23268a;--line: rgba(255, 255, 255, .16);--dlg-bg: #fffaf2;--dlg-ink: #23264d;--dlg-muted: #6a6d93;--dlg-line: #ebe5f5;--dlg-field: #ffffff;--dlg-tint: #eef0ff;--dlg-accent: #4549d6;--dlg-accent-ink: #ffffff;--dlg-press: #2f32a8;--card-face: #ffffff;--card-edge: rgba(35, 38, 77, .16);--card-font: "Nunito", system-ui, sans-serif;--suit-red: #d81e3c;--suit-black: #23264d;--court-bg: #fff3d6;--focus: 0 0 0 3px #fff, 0 0 0 6px rgba(255, 200, 61, .9);--ease: cubic-bezier(.3, 1.4, .5, 1)}body{background-color:var(--bg-bottom);background-image:radial-gradient(rgba(255,255,255,.07) 1.6px,transparent 1.8px),linear-gradient(170deg,var(--bg-top),var(--bg-bottom));background-size:26px 26px,auto;background-attachment:fixed;color:var(--ink);font:700 16px/1.4 var(--sans)}body:before{content:"";position:fixed;inset:-10%;z-index:-1;pointer-events:none;background:radial-gradient(circle at 12% 78%,var(--shape-a) 0 14%,transparent 14.2%),radial-gradient(circle at 90% 20%,var(--shape-b) 0 11%,transparent 11.2%),radial-gradient(circle at 76% 92%,var(--shape-c) 0 8%,transparent 8.2%),radial-gradient(circle at 30% 8%,rgba(42,212,176,.14) 0 6%,transparent 6.2%);animation:bp-bob 24s ease-in-out infinite alternate}@keyframes bp-bob{to{transform:translate3d(1.5%,-2%,0)}}#bar{background:var(--chip);border-bottom:0;box-shadow:0 4px 0 var(--chip-press),0 10px 24px #14125a4d;backdrop-filter:none}#bar .home{color:#fff;font-weight:800;border-radius:14px}#bar .home:hover{background:#ffffff1a}#bar h1{font:700 24px/1 var(--serif);letter-spacing:0;color:#fff}#bar .stats{color:var(--ink-dim);font-weight:700}#bar .stats b{color:var(--brass);font-weight:900}.tb{height:40px;border-radius:14px;border:0;background:#4549d6;color:#fff;font-weight:800;box-shadow:0 3px #1f2178;transition:transform .12s var(--ease),box-shadow .12s,background .12s}.tb:hover{background:#5357e6}.tb:active:not(:disabled){transform:translateY(3px);box-shadow:0 0 #1f2178}.tb:focus-visible,.club-chip:focus-visible,#bar .home:focus-visible{outline:none;box-shadow:var(--focus)}.tb.primary{background:var(--brass);color:var(--on-accent);box-shadow:0 3px 0 var(--accent-press)}.tb.primary:hover{background:#ffd35f}.tb.primary:active:not(:disabled){box-shadow:0 0 0 var(--accent-press)}.tb.active{background:var(--brass)!important;color:var(--on-accent)!important;box-shadow:0 3px 0 var(--accent-press)!important}.club-chip{border-radius:14px;border:0;background:#4549d6;box-shadow:0 3px #1f2178;color:#fff;font-weight:900}.club-chip b{color:var(--brass)}.club-chip i{height:8px;border-radius:4px;background:linear-gradient(90deg,var(--brass) var(--p),rgba(255,255,255,.2) var(--p))}#veil{background:#1a18608c}#veil.on .dlg{animation:bp-pop .32s var(--ease)}@keyframes bp-pop{0%{opacity:0;transform:scale(.9) translateY(8px)}}.dlg{background:var(--dlg-bg);color:var(--dlg-ink);border:0;border-radius:28px;box-shadow:0 8px #d6d0ff,0 24px 48px #14125a66;padding:26px 24px 22px}.dlg h2{font:700 30px/1.1 var(--serif);color:var(--dlg-ink)}.dlg h3{color:var(--dlg-ink)}.dlg p{color:var(--dlg-ink);font-weight:600}.dlg p[style*="6b5f48"]{color:var(--dlg-muted)!important}.dlg .btn{height:48px;border-radius:16px;border:2px solid var(--dlg-line);background:var(--dlg-field);color:var(--dlg-ink);font-weight:900;box-shadow:0 4px 0 var(--dlg-line);transition:transform .12s var(--ease),box-shadow .12s}.dlg .btn:hover{background:#fbfaff}.dlg .btn:active{transform:translateY(4px);box-shadow:0 0 0 var(--dlg-line)}.dlg .btn:focus-visible,.dlg .choice:focus-visible{outline:none;box-shadow:0 0 0 3px #fff,0 0 0 6px var(--dlg-accent)}.dlg .btn.primary{background:var(--dlg-accent);color:var(--dlg-accent-ink);border-color:var(--dlg-accent);box-shadow:0 4px 0 var(--dlg-press)}.dlg .btn.primary:hover{background:#5357e6}.dlg .btn.primary:active{box-shadow:0 0 0 var(--dlg-press)}.dlg .choice{border-radius:16px;border:2px solid var(--dlg-line);background:var(--dlg-field);color:var(--dlg-ink);font-weight:800;box-shadow:0 3px 0 var(--dlg-line)}.dlg .choice:hover{border-color:#c9ccff}.dlg .choice small{color:var(--dlg-muted);font-weight:700}.dlg .choice.on{border-color:var(--dlg-accent);box-shadow:0 3px 0 var(--dlg-press);background:var(--dlg-tint)}.dlg .stat{background:var(--dlg-field);border:2px solid var(--dlg-line);border-radius:18px;box-shadow:0 3px 0 var(--dlg-line)}.dlg .stat b{font:700 28px var(--serif);color:var(--dlg-accent)}.dlg .stat span{color:var(--dlg-muted);font-size:13px;font-weight:800;letter-spacing:.05em}.dlg label.opt{border-bottom:2px solid var(--dlg-line);color:var(--dlg-ink);font-weight:800}.dlg select{min-height:42px;padding:0 10px;border-radius:12px;border:2px solid var(--dlg-line);background:var(--dlg-field);color:var(--dlg-ink);font:800 15px var(--sans)}.dlg input.vol,.dlg input[type=checkbox]{accent-color:var(--dlg-accent)}.dlg .rules h3{font:700 19px var(--serif);color:var(--dlg-accent)}.dlg table.lb td{border-bottom:2px solid var(--dlg-line)}.dlg table.lb td:first-child{color:var(--dlg-accent);font-weight:900}.dlg table.lb tr.me td{background:#fff1c7}.dlg .lbtotal{color:var(--dlg-muted)}.dlg .xpbar{height:14px;border-radius:7px;background:var(--dlg-line)}.dlg .xpbar i{background:linear-gradient(90deg,var(--brass),#ffab2e);border-radius:7px}.dlg .ach{border:2px solid var(--dlg-line);background:var(--dlg-field);border-radius:14px}.dlg .ach.got{border-color:var(--brass);background:#fff8e1}.dlg .ach span{color:var(--dlg-muted)}#toast{background:#fff;color:var(--dlg-ink);border:0;border-radius:999px;box-shadow:0 4px #d6d0ff,0 12px 26px #14125a59;font-weight:900}.card{border-radius:calc(var(--cw, 96px) * .1)}.card .face{background:var(--card-face);box-shadow:0 0 0 1px var(--card-edge),0 3px #14125a47,0 6px 14px #14125a2e}.card .face svg text{font-family:var(--card-font);font-weight:900;letter-spacing:-1px}.card .face svg text:not([font-size="38"]){font-size:48px}.card .face svg text[font-size="38"]{font-size:41px;letter-spacing:-4px}.card .face svg [fill="#c0262f"]{fill:var(--suit-red)}.card .face svg [fill="#1d1a17"]{fill:var(--suit-black)}.card .face svg circle[stroke="#1d1a17"]{stroke:var(--suit-black);stroke-width:4px}.card .face svg circle[stroke="#b8861f"]{stroke:var(--brass);stroke-width:4px;stroke-dasharray:none}.card .face svg rect[fill="#f4ead2"]{fill:var(--court-bg)}.card .face svg rect[stroke="#c0262f"],.card .face svg line[stroke="#c0262f"]{stroke:var(--suit-red);stroke-width:4px}.card .face svg rect[stroke="#1f3f8f"],.card .face svg line[stroke="#1f3f8f"]{stroke:var(--suit-black);stroke-width:4px}.card .face svg rect[stroke="#b8861f"]{stroke:transparent}.card .back{background:radial-gradient(rgba(255,255,255,.9) 18%,transparent 20%) 0 0 / calc(var(--cw, 96px) * .2) calc(var(--cw, 96px) * .2),linear-gradient(160deg,#ff8080,#ff5a5f);box-shadow:inset 0 0 0 calc(var(--cw, 96px) * .05) #fff,0 0 0 1px var(--card-edge),0 3px #14125a47}html[data-back=blue] .card .back{background:radial-gradient(rgba(255,200,61,.95) 18%,transparent 20%) 0 0 / calc(var(--cw, 96px) * .2) calc(var(--cw, 96px) * .2),linear-gradient(160deg,#6c70ff,#4549d6)}.slot{border-color:#ffffff47;border-style:dashed;background:#14125a2e;color:#ffffff59}.slot.foundation[data-suit=H],.slot.foundation[data-suit=D]{color:#ffa0aa80}.card.selected:after,.card.hint-source:after{border-width:4px;box-shadow:0 0 0 3px #ffc83d59}.stock-count,.pass-count,.deal-badge,.turn-prompt,.score-rail,.hearts-goal,.pass-panel,.hand-summary,.field-status,.daily-status,.hint-box,.game-strip,.zoom-controls{background:var(--chip)!important;border-color:transparent!important;box-shadow:0 3px 0 var(--chip-press)}.hearts-arena:before{border:3px dashed rgba(255,255,255,.14);box-shadow:none}.trick-centre:before{border:3px dashed rgba(255,255,255,.14);background:radial-gradient(ellipse,rgba(20,18,90,.25),transparent 68%)}.paper{border-color:#fff;border-radius:18px;box-shadow:0 6px #14125a73,0 22px 40px #14125a59}.sudoku-cell,.paper{background:#fff}.sudoku-cell{color:var(--dlg-accent)}.grid{background:#c9ccef;border-color:var(--dlg-ink)}.sudoku-cell.box-right{box-shadow:3px 0 0 var(--dlg-ink)}.sudoku-cell.box-bottom:after{background:var(--dlg-ink)}.sudoku-cell.related{background:#f1f2ff}.sudoku-cell.same{background:#dfe1ff}.sudoku-cell.selected,.sudoku-cell.selected.box-right{background:#fff1c7;box-shadow:inset 0 0 0 3px var(--brass-deep)}.sudoku-cell.given .digit{color:var(--dlg-ink);font-weight:900}.number-key{background:#fff;border:0;box-shadow:0 4px #c9ccef;border-radius:14px}.number-key strong{color:var(--dlg-accent);font-family:var(--serif)}.number-key small{color:var(--dlg-muted)}.control{border:0;background:#4549d6;box-shadow:0 3px #1f2178;border-radius:12px}.control.on{box-shadow:0 3px 0 var(--accent-press)}.mine-board{border:0;border-radius:18px;background:#2f32a8;box-shadow:0 6px #1f2178,0 18px 36px #14125a59}.mine-cell.hidden{border:0;color:var(--suit-red);background:linear-gradient(180deg,#8a8eff,#6c70ff);box-shadow:inset 0 -3px #4549d6,inset 0 2px #ffffff59}.mine-cell.revealed{border:0;background:#f4f4ff;box-shadow:inset 0 2px 3px #23264d26}.mine-cell.n1{color:#4549d6}.mine-cell.n2{color:#12936b}.mine-cell.n3{color:#d81e3c}.mine-cell.n4{color:#6b2fb3}.mine-cell.n5{color:#b4441b}.mine-cell.n6{color:#0f7f86}.mine-cell.n7{color:#23264d}.mine-cell.n8{color:#6a6d93}.retention-status,.daily-status{color:var(--ink-dim)!important}.mah-tile:before{background:linear-gradient(135deg,#6c70ff,#3236b4 72%)}.dlg{color-scheme:light}.mine-board:focus-visible{box-shadow:0 6px #1f2178,var(--focus)}@media (prefers-reduced-motion: reduce){body:before,#veil.on .dlg{animation:none}.tb,.dlg .btn{transition:none}}:root{--bj-burgundy:#5f171d;--bj-deep:#250b0d;--bj-ruby:#a81f2b;--bj-gold:#e4b85f;--bj-cream:#fff4db;--bj-ink:#281816;--bj-ui:"River Nunito",Nunito,system-ui,sans-serif}*{box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden}body[data-blackjack-theme]{margin:0;background:#491014 var(--bj-scene) center/cover no-repeat fixed;color:var(--bj-cream);font-family:var(--bj-ui)}body[data-blackjack-theme]:before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,#1c040710,transparent 30%,#1f040518);pointer-events:none}body[data-blackjack-theme] #bar{display:none!important}body[data-blackjack-theme] #table{inset:0}body[data-blackjack-theme] #toast{bottom:22px;z-index:120;min-height:42px;padding:10px 16px;border:1px solid #ffffff26;border-radius:99px;background:#350a0ee8;box-shadow:0 12px 35px #14030459;color:#fff6e6;font:750 14px var(--bj-ui);backdrop-filter:blur(12px)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.riverboat-hud{position:absolute;z-index:60;top:max(14px,env(safe-area-inset-top));left:50%;width:min(1010px,calc(100% - 32px));height:66px;display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(230px,1fr);align-items:center;gap:14px;padding:8px 11px 8px 14px;transform:translate(-50%);border:1px solid #ffe1ab38;border-radius:23px;background:linear-gradient(110deg,#5b151af0,#3a0b0fe8);box-shadow:0 4px #2d070a9e,0 18px 48px #1605055c;backdrop-filter:blur(18px) saturate(1.15)}.riverboat-brand{display:flex;align-items:center;gap:11px;min-width:0;font-size:25px;font-weight:800;letter-spacing:-.03em}.brand-mark{width:43px;height:43px;flex:none;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,#f3cf7c,#b27125);color:#681821;box-shadow:inset 0 1px #fff4bd,0 4px 12px #12030447}.brand-mark svg{width:27px;height:27px}.riverboat-stats{display:flex;gap:7px}.riverboat-stat{width:106px;height:48px;display:grid;place-content:center;justify-items:center;border:1px solid #ffffff17;border-radius:14px;background:#1e040745;font-variant-numeric:tabular-nums}.riverboat-stat span{color:#fff3dba8;font-size:11px;font-weight:800;line-height:1;letter-spacing:.12em;text-transform:uppercase}.riverboat-stat b{margin-top:4px;color:#fff;font-size:17px;line-height:1}.riverboat-actions{display:flex;justify-content:flex-end;gap:6px}.riverboat-button{position:relative;width:43px;height:43px;padding:0;display:grid;place-items:center;border:1px solid #ffefcd38;border-radius:50%;background:#ffffff12;color:#fff9ea;cursor:pointer;transition:.15s}.riverboat-button svg{width:20px;height:20px}.riverboat-button:hover:not(:disabled){transform:translateY(-1px);background:#ffffff29;border-color:#ffefcd73}.riverboat-button:active:not(:disabled){transform:translateY(1px) scale(.96)}.riverboat-button:focus-visible{outline:0;box-shadow:0 0 0 3px #fff5da,0 0 0 6px #c4453f}.riverboat-button:disabled{opacity:.38;cursor:default}.riverboat-button:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 9px);right:0;width:max-content;padding:6px 9px;border-radius:8px;background:#260709f5;color:#fff;font-size:12px;font-weight:700;opacity:0;pointer-events:none;transform:translateY(-3px);transition:.14s}.riverboat-button:hover:not(:disabled):after,.riverboat-button:focus-visible:after{opacity:1;transform:none}.hud-menu{background:linear-gradient(#d39b42,#9c5b21);border-color:#f6d889}.daily-unplayed:before{content:"";position:absolute;width:8px;height:8px;top:3px;right:2px;border:2px solid #551119;border-radius:50%;background:#ffe17b}.blackjack-board{position:absolute;inset:0;isolation:isolate;overflow:hidden;--command-h:104px;color:var(--bj-cream)}.blackjack-board:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 55%,transparent 35%,#2704061f);pointer-events:none}.table-print{display:none}.shoe{position:absolute;z-index:8;right:clamp(18px,11vw,170px);top:126px;width:86px;height:112px;border:2px solid #d9ad5b;border-radius:12px 12px 19px 19px;transform:skewY(-3deg);background:linear-gradient(115deg,#371c18 0 18%,#6c2b21 18% 70%,#1c0d0b 70%);box-shadow:0 5px #20100e,0 14px 28px #18030359;pointer-events:none}.shoe:before{content:"";position:absolute;left:13px;right:13px;top:8px;height:var(--shoe-fill);max-height:80px;border-radius:7px;transform:skewY(3deg);background:repeating-linear-gradient(to bottom,#fff8e9 0 2px,#d8cdbb 2px 4px);box-shadow:0 0 0 2px #24110f}.shoe:after{content:"";position:absolute;left:7px;right:8px;bottom:7px;height:29px;border-radius:7px 7px 13px 13px;background:#260f0f;border-top:2px solid #d6a956}.shoe span{position:absolute;z-index:2;left:0;right:0;bottom:11px;text-align:center;color:#fff3d4;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums}.shoe i{position:absolute;right:8px;top:17px;width:4px;height:53px;border-radius:99px;background:#d5a74d}.shoe-shuffling .shoe{animation:shoeShuffle .8s ease-in-out}.retention-ribbon{position:absolute;z-index:9;left:clamp(16px,7vw,110px);top:112px;max-width:min(290px,31vw);padding:8px 12px;display:flex;flex-direction:column;gap:1px;border:1px solid #ffeac229;border-radius:14px;background:#32080ba8;box-shadow:0 9px 25px #1e030433;backdrop-filter:blur(10px);pointer-events:none}.retention-ribbon b{color:#ffe3a3;font-size:13px;font-weight:800}.retention-ribbon span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff4deb8;font-size:12px;font-weight:700}.dealer-zone{position:absolute;z-index:4;top:91px;left:50%;width:min(430px,58vw);height:205px;transform:translate(-50%);pointer-events:none}.zone-title,.player-seat>header{display:flex;align-items:center;justify-content:center;gap:8px;color:#fff4dcbf;font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.zone-title b,.player-seat>header b{padding:3px 9px;border:1px solid #ffffff1c;border-radius:99px;background:#2b0709bd;color:#fff5df;letter-spacing:0;font-variant-numeric:tabular-nums}.dealer-cards{position:absolute;top:27px;left:50%;width:min(270px,52vw);height:calc(var(--cw)*1.4);transform:translate(-50%);--cw:clamp(76px,7vw,100px);--card-step:clamp(41px,4.5vw,62px)}.card-rack .card{left:calc(var(--i)*var(--card-step));top:0;filter:drop-shadow(0 6px 5px #1b030457)}.card .back{background:#6d161d var(--bj-card-back) center/cover no-repeat!important}.dealer-cards .deal-in{animation:dealerDeal .36s backwards cubic-bezier(.18,.8,.3,1);animation-delay:calc(var(--i)*75ms)}.flip-reveal{animation:holeFlip .42s ease-out}.player-zone{position:absolute;z-index:5;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));top:44%;bottom:var(--deck-inset,calc(var(--command-h) + 18px));display:grid;grid-template-columns:repeat(var(--seat-count),minmax(0,1fr));gap:clamp(7px,1.3vw,17px);align-items:stretch}.player-zone[data-count="1"]{left:50%;right:auto;width:min(570px,90vw);transform:translate(-50%)}.player-seat{position:relative;min-width:0;padding:7px 5px 5px;border:1px solid #ffefcf2e;border-radius:25px;background:linear-gradient(180deg,#5b0d1214,#36060938);box-shadow:inset 0 1px #ffffff0a;outline:0;transition:.18s}.player-seat.empty-seat{cursor:pointer}.player-seat.selected-seat{border-color:#f4c669c2;background:linear-gradient(180deg,#8d252847,#3d070a42);box-shadow:0 0 0 3px #e5b34f21,inset 0 1px #ffffff17}.player-seat.active-seat{border-color:#f1c46d;box-shadow:0 0 0 3px #f1c46d2e,0 8px 25px #29030533}.player-seat:focus-visible{box-shadow:0 0 0 3px #fff4d9,0 0 0 6px #a51f2a}.player-seat>header{height:21px;overflow:hidden;white-space:nowrap}.hands{position:absolute;inset:33px 4px 4px;display:flex;justify-content:center;align-items:stretch;gap:3px;min-width:0}.bet-spot{align-self:center;width:clamp(90px,9vw,122px);aspect-ratio:1;display:grid;place-content:center;text-align:center;border:2px solid #efc1649e;border-radius:50%;background:radial-gradient(circle,#5b090d52,transparent 67%);box-shadow:inset 0 0 0 7px #efc16412;color:#fce5b1}.bet-spot i{min-height:48px;display:grid;place-items:center;color:#ffe2a1;font-style:normal;font-weight:800}.bet-spot i strong{margin-top:4px;font:800 17px var(--bj-ui)}.bet-spot span{margin-top:5px;font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.casino-chip{display:inline-grid;place-items:center;width:38px;height:38px;border:4px dashed #fff7eae8;border-radius:50%;color:#fff8e8;font:800 12px var(--bj-ui);box-shadow:inset 0 0 0 3px #41080a47,0 3px #270507b3}.chip-5{background:#397a57}.chip-25{background:#aa252f}.chip-100{background:#d7a543;color:#361214}.chip-500{background:#253e73}.chip-button{width:48px;min-width:48px;height:48px!important;min-height:48px;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.chip-button:hover:not(:disabled) .casino-chip{transform:translateY(-2px) rotate(-3deg)}.chip-stack{position:relative;display:block;width:42px;height:28px}.chip-stack .casino-chip{position:absolute;left:2px;top:calc(var(--stack)*-4px);width:34px;height:34px}.empty-chip{font-size:32px}.player-hand{position:relative;flex:1 1 0;min-width:0;height:100%;--cw:clamp(66px,6.8vw,94px);--card-step:clamp(24px,24%,42px);border-radius:18px;transition:.18s}.player-zone[data-count="2"] .player-hand{--cw:clamp(55px,5.5vw,78px)}.player-zone[data-count="3"] .player-hand{--cw:clamp(44px,4.4vw,65px)}.hands[data-count="2"] .player-hand{--cw:clamp(45px,4.6vw,65px)}.hands[data-count="3"] .player-hand,.hands[data-count="4"] .player-hand{--cw:clamp(34px,3.4vw,49px)}.player-hand.active-hand{z-index:25;background:#f8c7691a;box-shadow:inset 0 0 0 2px #f7c86bcc;transform:translateY(-3px)}.player-hand .deal-in{animation:playerDeal .38s backwards cubic-bezier(.18,.8,.3,1);animation-delay:calc(var(--i)*60ms)}.hand-total,.hand-wager{position:absolute;z-index:22;bottom:4px;min-height:24px;padding:3px 8px;border:1px solid #ffffff1c;border-radius:99px;background:#280507db;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.hand-total{left:3px}.hand-wager{right:3px;color:#ffda89}.result{position:absolute;z-index:28;left:50%;top:55%;max-width:96%;padding:6px 10px;transform:translate(-50%,-50%) rotate(-3deg);border:2px solid #d4a554;border-radius:11px;background:#fff3d7;box-shadow:0 5px #6e2a1c,0 12px 22px #18020345;color:#4b1117;font-size:12px;font-weight:800;text-align:center;white-space:nowrap;animation:stamp .28s cubic-bezier(.2,.85,.3,1.25) both}.result-win,.result-blackjack{background:#fff0b8;color:#5d2e0a}.result-lose,.result-bust,.result-dealer-blackjack{background:#f8dbd6;color:#751a25}.result-push{background:#e8e2d6;color:#443b31}.insurance-badge{position:absolute;z-index:30;right:8px;top:8px;padding:4px 8px;border-radius:99px;background:#d8a748;color:#351013;font-size:11px;font-weight:800}.command-deck{position:absolute;z-index:40;left:50%;bottom:max(16px,env(safe-area-inset-bottom));width:min(820px,calc(100% - 28px));min-height:var(--command-h);padding:12px 14px;display:grid;grid-template-columns:minmax(170px,.7fr) minmax(0,1.7fr);align-items:center;gap:14px;transform:translate(-50%);border:1px solid #ffe4b238;border-radius:25px;background:linear-gradient(110deg,#37080bf0,#250507e8);box-shadow:0 4px #1e0405ad,0 16px 40px #18020357;backdrop-filter:blur(16px)}.turn-copy{min-width:0}.turn-copy>b{display:block;color:#fff2d2;font-size:15px;font-weight:800}.turn-copy>span{display:block;margin-top:2px;color:#fff1d5a3;font-size:12px;font-weight:650}.round-lines{max-height:34px;overflow:hidden}.round-lines p{margin:2px 0 0;color:#e7bd6b;font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.actions{min-width:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.action{min-width:88px;min-height:45px;padding:9px 16px;border:1px solid #ffecca38;border-radius:99px;background:linear-gradient(#902630,#69141c);box-shadow:inset 0 1px #ffffff26,0 3px #35080b;color:#fff8e8;font:800 14px var(--bj-ui);cursor:pointer;transition:.13s}.action:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.13)}.action:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #35080b}.action:focus-visible{outline:0;box-shadow:0 0 0 3px #fff6dc,0 0 0 6px #c9983e}.action:disabled{opacity:.35;cursor:default}.action.primary{border-color:#f3ca74;background:linear-gradient(#d69839,#9a571f);box-shadow:inset 0 1px #ffe3a3,0 3px #57300f}.action.danger{background:#ffffff0f;color:#f0b5ae}.payout-layer{position:absolute;inset:0;z-index:70;pointer-events:none}.payout-chip{position:absolute;animation:payoutFly 1.25s cubic-bezier(.2,.8,.2,1) both}body[data-blackjack-theme] #veil{padding:20px;background:#1f04069c;backdrop-filter:blur(11px) saturate(.9)}body[data-blackjack-theme] #veil.on{animation:bjVeilIn .2s ease both}body[data-blackjack-theme] #veil.on .dlg{animation:bjDialogIn .2s cubic-bezier(.2,.8,.2,1) both}body[data-blackjack-theme] #veil.on.closing{animation:bjVeilOut .18s ease both}body[data-blackjack-theme] .dlg{width:min(550px,100%);max-height:calc(100dvh - 40px);padding:23px;overflow-x:hidden;overflow-y:auto;border:1px solid #69391e29;border-radius:25px;background:linear-gradient(155deg,#fffdf8,#f4e4c6);box-shadow:0 24px 70px #1b030461,inset 0 1px #fff;color:var(--bj-ink);font-family:var(--bj-ui)}body[data-blackjack-theme] .dlg.wide{width:min(790px,100%)}.dialog-header{min-height:44px;margin:0 0 17px;display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:11px}.dialog-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#f0d8aa;color:#7a2024}.dialog-icon svg{width:21px;height:21px}.dialog-header h2,body[data-blackjack-theme] .dlg h2{margin:0;color:#40151a;font:800 25px/1.1 var(--bj-ui);letter-spacing:-.03em}.dialog-close{width:42px;height:42px;display:grid;place-items:center;border:1px solid #dec9a4;border-radius:50%;background:#fffaf0;color:#4a1b1b;cursor:pointer}.dialog-close[hidden]{display:none!important}.dialog-close svg{width:18px;height:18px}.dialog-close:focus-visible{outline:0;box-shadow:0 0 0 3px #fff,0 0 0 6px #9d3035}body[data-blackjack-theme] .dlg p,body[data-blackjack-theme] .dlg li{font-size:15px;line-height:1.48}.dlg .row{gap:9px;margin-top:19px}.dlg .btn{min-height:44px;height:auto;padding:10px 18px;border:1.5px solid #c5a676;border-radius:14px;background:#ffffffb3;color:#562027;box-shadow:none;font:750 14px var(--bj-ui)}.dlg .btn.primary{border-color:#8c242c;background:#8c242c;color:#fff8e9;box-shadow:0 7px 18px #6c181f33}.dlg .btn:focus-visible,.dlg button:focus-visible{outline:0;box-shadow:0 0 0 3px #fff,0 0 0 6px #a52e35}.dlg label.opt{min-height:57px;padding:9px 0;border-bottom:1px solid #eadabe;color:#3c1a1b;font-size:14px;font-weight:700}.dlg input.vol{width:min(230px,52%);accent-color:#9b2931}.dlg input[type=checkbox]{appearance:none;width:48px;height:28px;flex:none;border:0;border-radius:99px;background:#cdbfa8;position:relative;cursor:pointer}.dlg input[type=checkbox]:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #28100b38;transition:.18s}.dlg input[type=checkbox]:checked{background:#8f2830}.dlg input[type=checkbox]:checked:after{transform:translate(20px)}.settings-group{margin-top:15px}.settings-label{display:block;margin-bottom:8px;color:#461b1f;font-size:13px;font-weight:800}.segmented{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px;border-radius:14px;background:#e6d4b7}.segmented button{min-height:40px;padding:7px 12px;border:0;border-radius:10px;background:transparent;color:#76634e;font:750 13px var(--bj-ui);cursor:pointer}.segmented button.on{background:#fffaf0;color:#681c23;box-shadow:0 2px 8px #38140d21}.segmented button:disabled{opacity:.4}.look-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.look-picker.back{grid-template-columns:repeat(5,minmax(0,1fr))}.look-picker button{min-width:0;min-height:44px;padding:4px 4px 6px;display:grid;gap:5px;justify-items:center;border:2px solid transparent;border-radius:14px;background:#f0e4cf;color:#482024;font:750 11px/1.2 var(--bj-ui);cursor:pointer}.look-picker button.on{border-color:#922932;background:#fffaf0;box-shadow:0 2px 10px #38140d24}.look-picker img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:9px}.look-picker.back img{aspect-ratio:5/7;object-fit:contain}.look-picker span{max-width:100%;overflow-wrap:anywhere;text-align:center}.settings-note,.stats-note{margin-top:14px!important;padding:10px 12px;border-radius:12px;background:#f0e2cc;color:#765e4d!important;font-size:13px!important}.statgrid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}.stat{padding:13px 8px!important;border:1px solid #e0c79c!important;border-radius:15px!important;background:#fffaf0!important}.stat b{display:block;color:#6f2026!important;font:800 24px var(--bj-ui)!important}.stat span{color:#79634f!important;font-size:11px!important;font-weight:800!important}.rules-lead{display:flex;align-items:center;gap:11px;padding:12px;border-radius:15px;background:#f0ddbc}.rules-lead>span,.rule-heading>span{width:38px;height:38px;flex:none;display:grid;place-items:center;border-radius:12px;background:#8f2830;color:#fff}.rules-lead svg,.rule-heading svg{width:20px;height:20px}.rules-lead p{margin:0!important}.rule-section{padding:14px 0;border-bottom:1px solid #e5d1af}.rule-heading{display:flex;align-items:center;gap:10px}.rule-heading h3{margin:0!important;color:#4c1b20!important;font:800 18px var(--bj-ui)!important}.rule-section ul{margin:8px 0 0;padding-left:20px}.rule-section p{margin:8px 0 0!important}.dlg kbd{padding:2px 6px;border:1px solid #cfb68e;border-radius:6px;background:#fffaf0;font:700 12px var(--bj-ui)}body[data-blackjack-theme] #veil:has(.riverboat-menu-dialog){align-items:flex-start;justify-content:center;padding-top:88px;background:#26040642;backdrop-filter:blur(6px)}.riverboat-menu-dialog{width:min(440px,calc(100% - 24px))!important;max-height:calc(100dvh - 102px);margin-left:min(555px,calc(100vw - 464px));padding:18px!important;border-radius:21px!important}.riverboat-menu-dialog .dialog-header{margin-bottom:6px}.menu-intro{display:inline-flex;margin:0 0 9px 54px!important;padding:4px 8px;border-radius:99px;background:#f0ddbc;color:#7b2328!important;font-size:12px!important;font-weight:800!important}.riverboat-menu-grid{display:grid;gap:5px}.riverboat-menu-item{width:100%;min-height:57px;padding:8px 9px;display:grid;grid-template-columns:40px minmax(0,1fr) 15px;align-items:center;gap:10px;border:0;border-radius:14px;background:transparent;color:#3e1a1c;text-align:left;cursor:pointer}.riverboat-menu-item:hover{background:#f1e2c9}.riverboat-menu-item i{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#f0d7a9;color:#7d252b;font-style:normal}.riverboat-menu-item svg{width:20px;height:20px}.riverboat-menu-item b,.riverboat-menu-item small{display:block}.riverboat-menu-item b{font-size:14px}.riverboat-menu-item small{margin-top:1px;color:#816b58;font-size:12px;font-weight:650}.riverboat-menu-item em{font-size:22px;font-style:normal;color:#a68c68}.riverboat-celebration{position:fixed;inset:0;z-index:89;overflow:hidden;pointer-events:auto;background:radial-gradient(ellipse at 50% 78%,#ffbd462e,transparent 52%);animation:celebrationIn .35s ease both}.riverboat-celebration i{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);border-radius:50%;background:#ffd56f;box-shadow:0 0 11px #ffb73d,0 0 24px #ffb42c8c;animation:firefly 2.2s var(--delay) ease-in-out infinite alternate}.riverboat-celebration.reduced i{animation:reducedGlow 1.1s var(--delay) ease-in-out infinite alternate}.riverboat-celebration.leaving{opacity:0;transition:opacity .25s}.celebration-skip{position:absolute;left:50%;bottom:24px;min-height:42px;padding:9px 15px;transform:translate(-50%);border:1px solid #ffebc338;border-radius:99px;background:#35080bd6;color:#fff1cf;font:750 13px var(--bj-ui);backdrop-filter:blur(10px)}@keyframes dealerDeal{0%{transform:translate(220px,-80px) rotate(7deg);opacity:.25}}@keyframes playerDeal{0%{transform:translate(300px,-180px) rotate(8deg);opacity:.2}}@keyframes holeFlip{0%{transform:rotateY(90deg)}to{transform:none}}@keyframes stamp{0%{opacity:0;transform:translate(-50%,-50%) scale(.72) rotate(-8deg)}}@keyframes shoeShuffle{30%{transform:skewY(-3deg) translate(-8px) rotate(-2deg)}70%{transform:skewY(-3deg) translate(7px) rotate(2deg)}}@keyframes payoutFly{0%{transform:translate(0) scale(.8);opacity:0}25%{opacity:1}70%{transform:translate(var(--dx),var(--dy)) scale(1)}to{transform:translate(var(--bx),var(--by)) scale(.5);opacity:0}}@keyframes bjVeilIn{0%{opacity:0}}@keyframes bjDialogIn{0%{opacity:0;transform:translateY(10px) scale(.975)}}@keyframes bjVeilOut{to{opacity:0}}@keyframes celebrationIn{0%{opacity:0}}@keyframes firefly{0%{transform:translateY(18px) scale(.55);opacity:.2}45%{opacity:1}to{transform:translate(var(--drift),-65px) scale(1.25);opacity:.1}}@keyframes reducedGlow{0%{opacity:.25}to{opacity:.9}}@media (max-width:760px) and (min-height:501px){.riverboat-hud{top:max(7px,env(safe-area-inset-top));width:calc(100% - 14px);height:94px;padding:7px 8px;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:42px 36px;gap:3px 6px;border-radius:19px}.riverboat-brand{font-size:20px}.brand-mark{width:36px;height:36px;border-radius:11px}.brand-mark svg{width:22px;height:22px}.riverboat-actions{gap:4px}.riverboat-button{width:40px;height:40px}.riverboat-stats{grid-column:1/-1;grid-row:2;justify-content:center;gap:5px}.riverboat-stat{width:calc((100vw - 36px)/3);max-width:112px;height:34px;border-radius:10px}.riverboat-stat span{font-size:9px}.riverboat-stat b{margin-top:2px;font-size:14px}.retention-ribbon{top:105px;left:9px;max-width:calc(100% - 100px);padding:5px 8px}.retention-ribbon span{display:none}.shoe{top:108px;right:12px;width:59px;height:78px}.shoe:before{max-height:51px;left:9px;right:10px}.shoe:after{height:22px}.shoe i{height:32px}.dealer-zone{top:104px;width:76vw;height:170px}.dealer-cards{--cw:clamp(62px,20vw,80px);--card-step:clamp(34px,11vw,46px)}.player-zone{top:39%;bottom:var(--deck-inset,164px)}.player-zone[data-count="1"]{width:calc(100% - 18px)}.player-seat{border-radius:18px}.player-hand{--cw:clamp(61px,20vw,82px);--card-step:clamp(25px,13vw,38px)}.command-deck{bottom:max(7px,env(safe-area-inset-bottom));width:calc(100% - 12px);min-height:116px;padding:9px;display:flex;flex-direction:column;justify-content:center;gap:7px;border-radius:19px}.turn-copy{text-align:center}.turn-copy>span,.round-lines{display:none}.actions{justify-content:center;gap:6px}.action{min-width:74px;min-height:44px;padding:8px 13px;font-size:13px}.look-picker{gap:5px}.look-picker button{font-size:10px;padding:3px}.statgrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}body[data-blackjack-theme] #veil{padding:10px}body[data-blackjack-theme] .dlg{max-height:calc(100dvh - 20px);padding:18px}body[data-blackjack-theme] #veil:has(.riverboat-menu-dialog){align-items:flex-end;padding:10px;background:#21040673}.riverboat-menu-dialog{width:100%!important;max-height:min(690px,calc(100dvh - 20px));margin:0;border-radius:23px!important}.riverboat-menu-grid{grid-template-columns:1fr}.riverboat-menu-item{min-height:56px}}@media (max-height:500px){.riverboat-hud{top:5px;width:min(920px,calc(100% - 10px));height:48px;padding:4px 6px 4px 10px;grid-template-columns:minmax(120px,.75fr) auto minmax(150px,.75fr);gap:7px;border-radius:15px}.riverboat-brand{font-size:18px;gap:7px}.brand-mark{width:34px;height:34px;border-radius:10px}.brand-mark svg{width:20px;height:20px}.riverboat-stat{width:75px;height:36px;border-radius:10px}.riverboat-stat span{font-size:8px}.riverboat-stat b{font-size:13px;margin-top:2px}.riverboat-button{width:36px;height:36px}.riverboat-button svg{width:17px;height:17px}.dealer-zone{top:52px;height:105px}.zone-title{font-size:10px}.dealer-cards{top:20px;--cw:clamp(45px,6vw,62px);--card-step:clamp(26px,4vw,38px)}.shoe{top:56px;right:6vw;width:49px;height:67px}.shoe:before{max-height:42px;left:8px;right:8px}.shoe:after{height:19px}.shoe i{height:27px}.shoe span{font-size:9px;bottom:8px}.retention-ribbon{top:56px;left:4vw;padding:4px 7px;max-width:29vw}.retention-ribbon b{font-size:10px}.retention-ribbon span{display:none}.player-zone{top:40%;bottom:var(--deck-inset,67px)}.player-zone[data-count="1"]{width:min(440px,70vw)}.player-seat{padding-top:3px;border-radius:14px}.player-seat>header{height:16px;font-size:9px}.hands{inset:20px 2px 2px}.player-hand{--cw:clamp(39px,6vw,58px);--card-step:clamp(19px,3.5vw,30px)}.hand-total,.hand-wager{bottom:1px;min-height:18px;padding:1px 5px;font-size:9px}.bet-spot{width:clamp(54px,8vw,72px)}.bet-spot i{min-height:24px}.bet-spot span{display:none}.command-deck{bottom:4px;width:min(760px,calc(100% - 8px));min-height:58px;padding:6px 8px;grid-template-columns:minmax(110px,.5fr) minmax(0,2fr);gap:6px;border-radius:16px}.turn-copy>b{font-size:11px}.turn-copy>span,.round-lines{display:none}.actions{gap:4px;flex-wrap:nowrap}.action{min-width:64px;min-height:42px;padding:5px 10px;font-size:11px}.chip-button{width:42px;min-width:42px;height:42px!important;min-height:42px}.chip-button .casino-chip{width:34px;height:34px;font-size:10px}.result{font-size:9px;padding:4px 6px}.riverboat-menu-dialog{max-height:calc(100dvh - 68px)!important}.riverboat-menu-grid{grid-template-columns:1fr 1fr}.riverboat-menu-item{min-height:50px;padding:5px}.riverboat-menu-item i{width:34px;height:34px}.riverboat-menu-item small{display:none}body[data-blackjack-theme] #veil{padding:7px}body[data-blackjack-theme] .dlg{max-height:calc(100dvh - 14px);padding:15px}.look-picker img{max-height:54px}}@media (max-width:430px) and (max-height:270px){.riverboat-hud{height:38px;grid-template-columns:minmax(0,1fr) auto;padding:3px 5px}.riverboat-brand{display:none}.riverboat-stats{gap:3px;justify-content:start}.riverboat-stat{width:54px;height:31px;padding:2px}.riverboat-stat span{font-size:7px}.riverboat-stat b{font-size:11px}.riverboat-actions .riverboat-button:not(.hud-menu):not(.hud-new){display:none}.riverboat-button{width:32px;height:32px}.dealer-zone{top:39px;height:75px}.dealer-cards{top:17px;--cw:37px;--card-step:21px}.zone-title{font-size:8px}.zone-title b{padding:1px 5px}.shoe{top:42px;right:8px;width:37px;height:50px}.shoe:before{max-height:30px}.shoe:after{height:15px}.shoe i,.shoe span,.retention-ribbon{display:none}.player-zone{top:45%;bottom:54px}.player-zone[data-count="1"]{width:72vw}.player-seat>header{display:none}.hands{inset:2px}.player-hand{--cw:35px;--card-step:19px}.hand-total,.hand-wager{min-height:14px;font-size:8px}.command-deck{height:49px;min-height:49px;padding:4px;display:block}.turn-copy{display:none}.actions{height:100%;align-items:center;justify-content:center}.action{min-width:49px;min-height:36px;height:36px;padding:3px 7px;font-size:9px}.chip-button{width:36px;min-width:36px;height:36px!important;min-height:36px}.chip-button .casino-chip{width:30px;height:30px;border-width:3px;font-size:9px}.bet-spot{width:44px}.bet-spot i{min-height:20px}.casino-chip{width:28px;height:28px}.riverboat-menu-dialog{max-height:calc(100dvh - 10px)!important}.riverboat-menu-item{min-height:42px}.riverboat-celebration{display:none}}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}.riverboat-celebration i{animation:reducedGlow 1.1s ease-in-out infinite alternate!important}}.player-hand .card{left:calc(43% - var(--cw)/2 + var(--i)*var(--card-step))}.riverboat-celebration{z-index:105}.celebration-skip{bottom:76px}.riverboat-stats{min-width:0}.menu-intro{max-width:calc(100% - 54px);white-space:normal}.riverboat-stat{width:94px}.riverboat-progress{width:118px}.riverboat-progress b{max-width:106px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-print{position:absolute;z-index:2;top:27%;left:50%;display:block;width:min(1080px,94vw);height:49%;transform:translate(-50%);overflow:visible;pointer-events:none}.table-print path{fill:none;stroke:#e7b957;stroke-width:2.4;opacity:.72;vector-effect:non-scaling-stroke}.table-print text{fill:#f0c66f;font:800 13px var(--bj-ui);letter-spacing:.1em;opacity:.78}.zone-title{width:max-content;max-width:100%;min-height:29px;margin:0 auto;padding:4px 7px 4px 11px;border:1px solid #ffeccf38;border-radius:99px;background:#2b0709d9;box-shadow:0 5px 18px #1b030438;color:#fff4dc;backdrop-filter:blur(10px)}.zone-title b{border:0;border-left:1px solid #ffffff26;border-radius:0;background:transparent;padding:1px 7px 1px 10px}.dealer-zone{top:94px;width:min(520px,64vw);height:230px}.dealer-cards{top:35px;width:min(390px,60vw);--cw:clamp(104px,8.5vw,122px);--card-step:clamp(56px,5.2vw,74px)}.card-rack .card{left:calc(50% - var(--cw)/2 + var(--offset)*var(--card-step))}.player-zone{top:42%;gap:clamp(10px,1.5vw,22px)}.player-zone[data-count="1"]{width:min(700px,92vw)}.player-seat{padding:5px;border:0;border-radius:0;background:transparent;box-shadow:none}.player-seat:before{content:"";position:absolute;z-index:0;left:50%;top:57%;width:min(205px,74%);aspect-ratio:1;transform:translate(-50%,-50%);border:2px solid #e8bb6175;border-radius:50%;box-shadow:inset 0 0 0 7px #e8bb610e;pointer-events:none}.player-seat.selected-seat,.player-seat.active-seat{border:0;background:transparent;box-shadow:none}.player-seat.active-seat:before{border-color:#f4ca73c7;box-shadow:0 0 22px #f4bd4d24,inset 0 0 0 7px #e8bb6114}.player-seat>header{position:relative;z-index:2;width:max-content;max-width:100%;height:25px;margin:0 auto;padding:3px 9px;border:1px solid #ffe9c52b;border-radius:99px;background:#2d0709a8;backdrop-filter:blur(7px)}.bet-spot{border:0;background:transparent;box-shadow:none}.hands{z-index:1;inset:30px 0 0}.player-hand{--cw:clamp(110px,9vw,130px);--card-step:clamp(50px,5vw,70px)}.player-zone[data-count="2"] .player-hand{--cw:clamp(84px,7vw,102px);--card-step:clamp(40px,4vw,57px)}.player-zone[data-count="3"] .player-hand{--cw:clamp(64px,5.4vw,82px);--card-step:clamp(31px,3.1vw,44px)}.hands[data-count="2"] .player-hand{--cw:clamp(66px,6vw,88px);--card-step:clamp(30px,3vw,44px)}.hands[data-count="3"] .player-hand,.hands[data-count="4"] .player-hand{--cw:clamp(48px,4.4vw,66px);--card-step:clamp(21px,2.2vw,31px)}.player-hand .card{top:6px}.player-hand.active-hand{background:transparent;box-shadow:none;transform:none}.player-hand.active-hand .card{filter:drop-shadow(0 0 8px #f5c6696b) drop-shadow(0 6px 5px #1b030457)}.hand-total,.hand-wager{top:calc(12px + var(--cw)*1.4);bottom:auto;min-height:28px;padding:4px 10px;border-color:#fff4da42;background:#250507e8;box-shadow:0 5px 16px #19030438;backdrop-filter:blur(9px);font-size:13px}.hand-total{left:calc(50% - 55px)}.hand-wager{right:auto;left:calc(50% + 5px)}body[data-blackjack-theme] #toast{bottom:132px}@media (max-width:760px) and (min-height:501px){.riverboat-stat{width:calc((100vw - 46px)/4);max-width:88px}.riverboat-progress{width:calc((100vw - 46px)/4)}.dealer-zone{top:116px;width:82vw;height:190px}.dealer-cards{top:34px;--cw:clamp(82px,24vw,98px);--card-step:clamp(45px,13vw,56px)}.shoe{top:121px;right:10px;width:54px;height:72px}.player-zone{top:38%;bottom:var(--deck-inset,164px)}.player-zone[data-count="1"]{width:calc(100% - 16px)}.player-seat:before{width:min(190px,64%)}.player-hand{--cw:clamp(88px,27vw,104px);--card-step:clamp(40px,13vw,54px)}.hand-total,.hand-wager{top:calc(11px + var(--cw)*1.4)}body[data-blackjack-theme] #toast{bottom:154px}}@media (max-height:500px){.riverboat-hud{grid-template-columns:minmax(112px,.65fr) auto minmax(174px,.7fr)}.riverboat-stats{gap:4px}.riverboat-stat{width:62px}.riverboat-progress{width:82px}.riverboat-progress b{max-width:74px}.dealer-zone{top:57px;height:116px;width:min(470px,58vw)}.zone-title{min-height:23px;padding:2px 6px 2px 9px;font-size:10px}.dealer-cards{top:25px;--cw:clamp(58px,7.5vw,68px);--card-step:clamp(32px,4.2vw,40px)}.shoe{top:61px;right:4vw;width:45px;height:61px}.player-zone{top:43%;bottom:var(--deck-inset,67px)}.player-zone[data-count="1"]{width:min(520px,72vw)}.player-seat:before{top:56%;width:min(120px,45%);border-width:1px}.player-seat:after{bottom:2px;font-size:7px}.player-seat>header{height:18px;padding:1px 6px;font-size:8px}.hands{inset:20px 0 0}.player-hand{--cw:clamp(58px,8vw,72px);--card-step:clamp(28px,4vw,38px)}.hand-total,.hand-wager{top:calc(7px + var(--cw)*1.4);bottom:auto;min-height:19px;padding:1px 6px;font-size:9px}.hand-total{left:calc(50% - 40px)}.hand-wager{left:calc(50% + 3px)}body[data-blackjack-theme] #toast{left:16%;bottom:70px;min-height:32px;padding:6px 10px;transform:translate(-50%);font-size:11px}body[data-blackjack-theme] #toast.on{transform:translate(-50%)}}@media (max-width:430px) and (max-height:270px){.riverboat-hud{grid-template-columns:minmax(0,1fr) auto}.riverboat-stats{gap:2px}.riverboat-stat{width:52px;height:31px}.riverboat-progress{width:66px}.riverboat-progress b{max-width:62px;font-size:9px}.riverboat-actions{gap:3px}.dealer-zone{top:44px;width:70vw;height:74px}.zone-title{min-height:17px;padding:1px 5px 1px 7px;font-size:8px}.zone-title b{padding:0 4px 0 6px}.dealer-cards{top:19px;--cw:clamp(36px,10.8vw,40px);--card-step:clamp(20px,6.1vw,23px)}.shoe{top:48px;right:6px;width:31px;height:43px}.shoe:before{left:6px;right:6px;max-height:25px}.shoe:after{height:13px}.table-print{top:37%;height:38%;opacity:.72}.table-print text{display:none}.table-print circle{stroke-width:1.2}.player-zone{top:53%;bottom:53px}.player-zone[data-count="1"]{width:78vw}.player-seat{padding:0}.player-seat:before{top:54%;width:74px}.player-seat>header{display:none}.hands{inset:0}.player-hand{--cw:clamp(34px,10.6vw,38px);--card-step:clamp(19px,5.9vw,22px)}.hand-total,.hand-wager{top:16px;min-height:16px;padding:1px 4px;font-size:8px}.hand-total{left:calc(50% - 74px)}.hand-wager{left:calc(50% + 45px)}.bet-spot{width:62px;border-width:1.5px}.bet-spot span{display:block;margin-top:1px;font-size:6px}.dealer-cards .deal-in{animation-name:dealerDealSmall}.player-hand .deal-in{animation-name:playerDealSmall}body[data-blackjack-theme] #toast{opacity:0!important;pointer-events:none}}@keyframes dealerDealSmall{0%{transform:translate(42px,-8px) rotate(5deg);opacity:.25}}@keyframes playerDealSmall{0%{transform:translate(52px,-24px) rotate(6deg);opacity:.2}}@keyframes dealerDealSafe{0%{transform:translate(120px,-45px) rotate(7deg);opacity:.25}}@keyframes playerDealSafe{0%{transform:translate(145px,-90px) rotate(8deg);opacity:.2}}@keyframes dealerDealPortrait{0%{transform:translate(48px,-30px) rotate(6deg);opacity:.25}}@keyframes playerDealPortrait{0%{transform:translate(48px,-60px) rotate(7deg);opacity:.2}}.dealer-cards .deal-in{animation-name:dealerDealSafe}.player-hand .deal-in{animation-name:playerDealSafe}@media (max-width:430px) and (max-height:270px){.dealer-cards .deal-in{animation-name:dealerDealSmall}.player-hand .deal-in{animation-name:playerDealSmall}}@media (max-width:760px) and (min-height:501px){.dealer-cards .deal-in{animation-name:dealerDealPortrait}.player-hand .deal-in{animation-name:playerDealPortrait}.dealer-cards[data-cards="5"]{--card-step:48px}.dealer-cards[data-cards="6"]{--card-step:40px}.dealer-cards[data-cards="7"],.dealer-cards[data-cards="8"],.dealer-cards[data-cards="9"],.dealer-cards[data-cards="10"],.dealer-cards[data-cards="11"]{--card-step:34px}.player-hand[data-cards="5"]{--card-step:48px}.player-hand[data-cards="6"]{--card-step:38px}.player-hand[data-cards="7"],.player-hand[data-cards="8"],.player-hand[data-cards="9"],.player-hand[data-cards="10"],.player-hand[data-cards="11"]{--card-step:32px}}@media (max-width:330px) and (max-height:230px){.player-hand{--cw:33px;--card-step:18px}.player-hand .card{top:1px}.hand-total,.hand-wager{top:14px}}.riverboat-menu-grid>.riverboat-menu-item:last-child:nth-child(odd){grid-column:1/-1}
