.bj{--bj-ink:#151923;--bj-face:#f5f3ef;--bj-face-edge:#dcd8d0;--bj-red:#c0342a;--bj-green:hsl(var(--accent));--bj-line:hsl(var(--foreground)/0.08);--bj-muted:hsl(var(--foreground)/0.55);--bj-ease:cubic-bezier(0.22,0.8,0.3,1);--bj-card-w:60px;--bj-card-h:86px;display:flex;flex-direction:column;gap:12px;color:hsl(var(--foreground));-moz-user-select:none;user-select:none;-webkit-user-select:none}@media (max-width:767px){.bj{--bj-card-w:48px;--bj-card-h:68px}}.bj-head{display:flex;align-items:center;justify-content:space-between}.bj-title{display:flex;align-items:baseline;gap:10px;min-width:0}.bj-title-dot{align-self:center;width:7px;height:7px;border-radius:50%;background:var(--bj-green);box-shadow:0 0 10px hsl(var(--accent)/.6);animation:homeLivePulse 2s ease-in-out infinite}.bj-title-name{font-size:14px;font-weight:600;letter-spacing:-.01em}.bj-rules{min-width:0;font:500 10.5px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bj-close,.bj-rules{color:var(--bj-muted)}.bj-close{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 6px 0 8px;border-radius:8px;transition:color .15s,background-color .15s}.bj-close svg{width:14px;height:14px}.bj-close:hover{color:hsl(var(--foreground));background:hsl(var(--foreground)/.06)}.bj-kbd{padding:2px 5px;border-radius:4px;border:1px solid var(--bj-line);font:500 9.5px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--bj-muted)}.bj-body{display:grid;grid-template-columns:minmax(0,1fr) 232px;gap:12px}@media (max-width:767px){.bj-body{grid-template-columns:minmax(0,1fr)}}.bj-felt{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:330px;padding:18px 20px 16px;border-radius:14px;border:1px solid var(--bj-line);background:radial-gradient(120% 90% at 50% 0,hsl(var(--accent)/.16),transparent 62%),radial-gradient(90% 70% at 50% 110%,hsl(var(--accent)/.1),transparent 60%),hsl(var(--background)/.55);overflow:hidden}.bj-felt:before{content:"";position:absolute;left:50%;top:44%;width:150%;aspect-ratio:2/1;translate:-50% 0;border-radius:50% 50% 0 0/100% 100% 0 0;border-top:1px solid hsl(var(--accent)/.22);box-shadow:0 -18px 50px -30px hsl(var(--accent)/.5);pointer-events:none}@media (max-width:767px){.bj-felt{min-height:300px;padding:14px 14px 12px}}.bj-shoe{position:absolute;top:14px;right:16px;width:54px;height:4px;border-radius:2px;background:hsl(var(--foreground)/.08);overflow:hidden}.bj-shoe-fill{display:block;height:100%;border-radius:inherit;background:hsl(var(--foreground)/.35);transition:width .6s var(--bj-ease)}.bj-row{position:relative;display:flex;flex-direction:column;gap:8px}.bj-hand-meta,.bj-row-meta{display:flex;align-items:center;gap:8px}.bj-who{font:500 10.5px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--bj-muted)}.bj-total{display:inline-flex;align-items:baseline;gap:1px;min-width:22px;padding:2px 7px;border-radius:6px;border:1px solid var(--bj-line);background:hsl(var(--background)/.6);font:600 11.5px/1.3 var(--font-mono);font-variant-numeric:tabular-nums;color:hsl(var(--foreground)/.9);animation:bj-pop .3s var(--bj-ease) both}.bj-total.is-empty{color:var(--bj-muted);animation:none}.bj-total-plus{color:var(--bj-muted);font-weight:500}.bj-total.is-bust{color:var(--bj-red);border-color:rgba(192,52,42,.4)}.bj-total.is-natural{color:var(--bj-green);border-color:hsl(var(--accent)/.45)}.bj-cards{display:flex;align-items:flex-start;min-height:var(--bj-card-h)}.bj-cards>.bj-card+.bj-card{margin-left:calc(var(--bj-card-w) * -.42)}.bj-card{position:relative;width:var(--bj-card-w);height:var(--bj-card-h);perspective:700px;flex:none;animation:bj-deal .5s var(--bj-ease) var(--d,0ms) both;will-change:transform}.bj-card[data-from=dealer]{--fx:140px;--fy:-70px}.bj-card[data-from=player]{--fx:220px;--fy:-230px}@keyframes bj-deal{0%{transform:translate(var(--fx),var(--fy)) rotate(10deg) scale(.92);opacity:0}40%{opacity:1}to{transform:translate(0) rotate(0deg) scale(1);opacity:1}}.bj-cards>.bj-card:nth-child(2) .bj-card-inner{rotate:2deg}.bj-cards>.bj-card:nth-child(3) .bj-card-inner{rotate:4deg}.bj-cards>.bj-card:nth-child(4) .bj-card-inner{rotate:6deg}.bj-cards>.bj-card:nth-child(n+5) .bj-card-inner{rotate:8deg}.bj-card.is-sideways .bj-card-inner{rotate:90deg;translate:0 6px}.bj-card-inner{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .6s var(--bj-ease),rotate .3s var(--bj-ease),translate .3s var(--bj-ease);transform-origin:center}.bj-card.is-down .bj-card-inner{transform:rotateY(180deg)}.bj-back,.bj-face{position:absolute;inset:0;border-radius:7px;backface-visibility:hidden;-webkit-backface-visibility:hidden}.bj-face{background:linear-gradient(160deg,#faf8f5,var(--bj-face) 60%,#eeece7);border:1px solid var(--bj-face-edge);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.9),0 1px 2px rgba(0,0,0,.35),0 10px 24px -14px rgba(0,0,0,.7);color:var(--bj-ink)}.bj-face.is-red{color:var(--bj-red)}.bj-rank{position:absolute;left:7px;top:4px;font:700 26px/1 var(--font-sans);letter-spacing:-.04em;font-variant-numeric:tabular-nums lining-nums}.bj-suit{position:absolute;left:8px;top:32px;font-size:13px;line-height:1;opacity:.85}.bj-rank-mirror{left:auto;top:auto;right:6px;bottom:4px;rotate:180deg;font-size:15px;opacity:.55}@media (max-width:767px){.bj-rank{font-size:21px;left:5px;top:3px}.bj-suit{top:26px;left:6px;font-size:11px}.bj-rank-mirror{font-size:12px}}.bj-back{transform:rotateY(180deg);background:repeating-linear-gradient(45deg,hsl(var(--accent)/.22) 0 2px,transparent 2px 7px),repeating-linear-gradient(-45deg,hsl(var(--accent)/.16) 0 2px,transparent 2px 7px),#151923;border:1px solid hsl(var(--accent)/.35);box-shadow:inset 0 0 0 3px #151923,inset 0 0 0 4px hsl(var(--accent)/.4),0 10px 24px -14px rgba(0,0,0,.7)}.bj-back-mark{position:absolute;left:50%;top:50%;width:12px;height:12px;translate:-50% -50%;rotate:45deg;border-radius:2px;background:var(--bj-green);box-shadow:0 0 12px hsl(var(--accent)/.7)}.bj-card-slot{border-radius:7px;border:1px dashed hsl(var(--foreground)/.14);animation:none}.bj-card-slot+.bj-card-slot{margin-left:6px!important}.bj-hands{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 26px}.bj-hand{position:relative;display:flex;flex-direction:column;gap:8px;padding:8px 10px;border-radius:12px;border:1px solid transparent;transition:border-color .25s,background-color .25s,opacity .25s}.bj-hand.is-active{border-color:hsl(var(--accent)/.45);background:hsl(var(--accent)/.06);box-shadow:0 0 0 3px hsl(var(--accent)/.08),0 0 32px -12px hsl(var(--accent)/.5)}.bj-hand.is-active:after{content:"";position:absolute;left:50%;bottom:-5px;width:8px;height:8px;translate:-50% 0;rotate:45deg;border-radius:1px;background:var(--bj-green);animation:bj-nudge 1.4s ease-in-out infinite}@keyframes bj-nudge{50%{translate:-50% 3px}}.bj-hand.is-bust{animation:bj-shake .4s cubic-bezier(.36,.07,.19,.97) both}.bj-hand.is-bust .bj-face,.bj-hand.is-lose .bj-face{filter:saturate(.7) brightness(.9)}.bj-hand.is-bust .bj-cards,.bj-hand.is-lose .bj-cards{opacity:.8}@keyframes bj-shake{10%,90%{translate:-1px 0}20%,80%{translate:2px 0}30%,50%,70%{translate:-4px 0}40%,60%{translate:4px 0}}.bj-hand-foot{display:flex;align-items:center;gap:10px;min-height:22px}.bj-stack{position:relative;width:44px;height:22px;flex:none}.bj-stack-disc{position:absolute;left:0;width:44px;height:18px;border-radius:50%;border:1px solid hsl(var(--accent)/.6);background:hsl(var(--background));box-shadow:inset 0 0 0 3px hsl(var(--accent)/.22)}.bj-stack-disc:first-child{top:6px}.bj-stack-disc:nth-child(2){top:3px}.bj-stack-top{top:0;display:grid;place-items:center;font:600 10px/1 var(--font-mono);font-variant-numeric:tabular-nums;color:hsl(var(--foreground)/.9);animation:bj-bump .3s var(--bj-ease) both}@keyframes bj-bump{35%{translate:0 -5px;scale:1.06}}.bj-stack.is-ghost .bj-stack-disc{border-style:dashed;border-color:hsl(var(--foreground)/.2);box-shadow:none}.bj-stack.is-ghost .bj-stack-top{color:var(--bj-muted)}.bj-stack.is-doubled .bj-stack-disc{border-color:hsl(var(--accent)/.9);box-shadow:inset 0 0 0 3px hsl(var(--accent)/.4)}.bj-outcome{display:inline-flex;align-items:baseline;gap:6px;padding:3px 8px;border-radius:6px;font:600 11px/1.2 var(--font-sans);letter-spacing:-.01em;animation:bj-pop .35s var(--bj-ease) .15s both}.bj-outcome b{font:600 10.5px/1 var(--font-mono);font-variant-numeric:tabular-nums}.bj-outcome.is-blackjack,.bj-outcome.is-win{color:var(--bj-green);background:hsl(var(--accent)/.12)}.bj-outcome.is-push{color:hsl(var(--foreground)/.8);background:hsl(var(--foreground)/.07)}.bj-outcome.is-bust,.bj-outcome.is-lose{color:var(--bj-red);background:rgba(192,52,42,.12)}.bj-centre{display:grid;grid-template-columns:minmax(0,1fr);place-items:center;min-height:40px;padding:4px 0;text-align:center}.bj-hint{font-size:12px;color:var(--bj-muted);text-wrap:balance}@media (max-width:767px){.bj-hint-keys,.bj-kbd{display:none}.bj-btn-action{justify-content:center}}.bj-banner{display:flex;align-items:baseline;gap:10px;animation:bj-banner .55s var(--bj-ease) both}.bj-banner-text{font:500 clamp(22px,3.2vw,30px)/1 var(--font-sans);letter-spacing:-.03em}.bj-banner-net{font:600 14px/1 var(--font-mono);font-variant-numeric:tabular-nums;padding:4px 8px;border-radius:6px}.bj-banner.is-win .bj-banner-text{color:var(--bj-green)}.bj-banner.is-win .bj-banner-net{color:var(--bj-green);background:hsl(var(--accent)/.12)}.bj-banner.is-lose .bj-banner-text{color:hsl(var(--foreground)/.85)}.bj-banner.is-lose .bj-banner-net{color:var(--bj-red);background:rgba(192,52,42,.12)}.bj-banner.is-push .bj-banner-text{color:hsl(var(--foreground)/.7)}@keyframes bj-banner{0%{opacity:0;scale:.86;filter:blur(4px)}60%{filter:blur(0)}to{opacity:1;scale:1}}@keyframes bj-pop{0%{opacity:0;scale:.8}to{opacity:1;scale:1}}.bj-rail{gap:12px;padding:14px 14px 12px;border-radius:14px;border:1px solid var(--bj-line);background:hsl(var(--background)/.35)}.bj-rail,.bj-stat{display:flex;flex-direction:column}.bj-stat{gap:4px}.bj-label{font:500 10px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--bj-muted)}.bj-money{display:inline-block;font:500 22px/1 var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;animation:bj-bump .3s var(--bj-ease) both}.bj-bet{font-size:18px;color:hsl(var(--foreground)/.85)}.bj-bet.is-up{color:var(--bj-green)}.bj-bet.is-down{color:var(--bj-red)}.bj-chips{display:flex;gap:6px}.bj-chip{--chip:hsl(var(--foreground)/0.5);position:relative;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1.5px dashed var(--chip);background:radial-gradient(circle,hsl(var(--background)) 0 52%,transparent 54%),color-mix(in oklab,var(--chip) 55%,hsl(var(--background)));box-shadow:inset 0 0 0 2px hsl(var(--background)),0 4px 10px -6px rgba(0,0,0,.6);font:600 10.5px/1 var(--font-mono);font-variant-numeric:tabular-nums;color:hsl(var(--foreground)/.9);transition:translate .15s var(--bj-ease),box-shadow .15s,opacity .15s}.bj-chip[data-amt="25"]{--chip:var(--bj-green)}.bj-chip[data-amt="50"]{--chip:#efa92e}.bj-chip[data-amt="100"]{--chip:hsl(var(--foreground)/0.95)}.bj-chip[data-amt="500"]{--chip:var(--bj-red)}.bj-chip:hover:not(:disabled){translate:0 -3px;box-shadow:inset 0 0 0 2px hsl(var(--background)),0 10px 16px -8px rgba(0,0,0,.7)}.bj-chip:active:not(:disabled){translate:0 0;transition-duration:.05s}.bj-chip:disabled{opacity:.3;cursor:default}.bj-actions{flex-direction:column;margin-top:auto}.bj-actions,.bj-actions-sub{display:flex;gap:6px}.bj-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.bj-actions-grid .bj-dealer-note{grid-column:1/-1}.bj-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:36px;padding:0 12px;border-radius:9px;border:1px solid var(--bj-line);background:hsl(var(--foreground)/.04);font-size:12.5px;font-weight:600;color:hsl(var(--foreground));white-space:nowrap;transition:background-color .15s,border-color .15s,translate .15s var(--bj-ease),opacity .15s,box-shadow .15s}.bj-btn:hover:not(:disabled){background:hsl(var(--foreground)/.08)}.bj-btn:active:not(:disabled){translate:0 1px}.bj-btn:disabled{opacity:.4;cursor:default}.bj-btn-quiet{flex:1;height:30px;font-size:11.5px;font-weight:500;color:hsl(var(--foreground)/.75)}.bj-btn-primary{height:40px;border-color:transparent;color:#0c1d14;background:linear-gradient(180deg,color-mix(in oklab,var(--bj-green) 82%,#fff),var(--bj-green));box-shadow:inset 0 1px 0 hsla(0,0%,100%,.35),0 10px 24px -12px hsl(var(--accent)/.9)}.bj-btn-primary:hover:not(:disabled){background:linear-gradient(180deg,color-mix(in oklab,var(--bj-green) 72%,#fff),var(--bj-green));translate:0 -1px}.bj-btn-action{justify-content:space-between;height:42px;padding:0 10px 0 12px}.bj-btn-action .bj-kbd{opacity:.8}.bj-broke,.bj-dealer-note,.bj-foot{font-size:11px;line-height:1.4;color:var(--bj-muted);text-align:center}.bj-broke{text-align:left}.hero-stage-in{animation:hero-stage-in .45s cubic-bezier(.22,.8,.3,1) both}@keyframes hero-stage-in{0%{opacity:0;translate:0 8px}}.hero-dice-vanish{animation:hero-dice-vanish .42s cubic-bezier(.55,0,.8,.4) both!important}@keyframes hero-dice-vanish{to{transform:rotate(540deg) scale(0);opacity:0}}.bj-fold{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:0fr;opacity:0;transition:grid-template-rows .55s cubic-bezier(.22,.8,.3,1),opacity .4s ease .1s}.bj-fold.is-open{grid-template-rows:1fr;opacity:1}.bj-fold>div{min-height:0;overflow:hidden}.bj-fold.is-open>div{overflow:visible}@media (prefers-reduced-motion:reduce){.bj *,.bj :after,.bj :before,.bj-fold,.hero-dice-vanish,.hero-stage-in{animation:none!important;transition:none!important}.bj-card.is-down .bj-card-inner{transform:rotateY(180deg)}}