*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%;background:#0b0f0d;color:#e8e2cf;font-family:'Trebuchet MS',Segoe UI,sans-serif;overflow:hidden;user-select:none}
button{font-family:inherit;cursor:pointer}
.card{width:var(--cw,74px);height:calc(var(--cw,74px)*1.4);border-radius:calc(var(--cw,74px)*.08);background:linear-gradient(160deg,#fbf7ec,#e9e1cc);position:relative;
 box-shadow:0 3px 8px rgba(0,0,0,.55),inset 0 0 0 1px rgba(0,0,0,.15);display:inline-block;flex:none;font-family:Georgia,serif;transform-style:preserve-3d}
.card.red{color:#c0262d}.card.blk{color:#1b1b22}
.card .ix{position:absolute;font-size:calc(var(--cw,74px)*.2);line-height:.95;text-align:center;font-weight:bold}
.card .tl{top:5%;left:7%}.card .br{bottom:5%;right:7%;transform:rotate(180deg)}
.card .pip{position:absolute;transform:translate(-50%,-50%);font-size:calc(var(--cw,74px)*.22)}
.card .pip.flip{transform:translate(-50%,-50%) rotate(180deg)}
.card .ace{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:calc(var(--cw,74px)*.6)}
.card .face{position:absolute;inset:16% 18%;border:2px solid currentColor;border-radius:6px;background:linear-gradient(135deg,rgba(212,175,55,.35),rgba(212,175,55,.08));display:flex;flex-direction:column;align-items:center;justify-content:center}
.card .face .fl{font-size:calc(var(--cw,74px)*.42);font-weight:bold;text-shadow:0 1px 0 #d4af37}.card .face .fs{font-size:calc(var(--cw,74px)*.25)}
.card.back{background:#7a1020}.card .backpat{position:absolute;inset:6%;border-radius:5px;border:2px solid #d4af37;
 background:repeating-linear-gradient(45deg,#8e1626 0 6px,#6a0c1a 6px 12px),#7a1020;box-shadow:inset 0 0 0 3px #7a1020,inset 0 0 0 4px #d4af37}
.chip{width:var(--chip,46px);height:var(--chip,46px);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:bold;font-size:calc(var(--chip,46px)*.32);
 border:calc(var(--chip,46px)*.1) dashed rgba(255,255,255,.85);box-shadow:0 2px 4px rgba(0,0,0,.6),inset 0 0 0 calc(var(--chip,46px)*.06) rgba(0,0,0,.25);color:#fff;text-shadow:0 1px 2px #000}
.chip span{background:rgba(0,0,0,.18);border-radius:50%;width:62%;height:62%;display:flex;align-items:center;justify-content:center}
.c5{background:#c62f2f}.c10{background:#2f63c6}.c20{background:#2f9a4c}.c100{background:#1d1d1d;border-color:#d4af37!important;color:#ffd760}
.stack{position:relative;width:var(--chip,46px);height:calc(var(--chip,46px) + 40px)}.stack .chip{position:absolute;left:0}
.banner{position:fixed;left:50%;top:42%;transform:translate(-50%,-50%);z-index:50;font-size:72px;font-weight:900;letter-spacing:3px;pointer-events:none;animation:ban 1.8s ease forwards;text-align:center;white-space:nowrap;background:radial-gradient(ellipse,rgba(0,0,0,.72) 40%,rgba(0,0,0,0) 72%);padding:30px 90px;border-radius:40px}
.banner.bj{color:#ffd760;text-shadow:0 0 25px #ffb300,0 0 60px #ff8c00,0 4px 0 #6b4a00}
.banner.bust{color:#ff4242;text-shadow:0 0 25px #ff0000,0 4px 0 #400}
.banner.win{color:#7dff9b;text-shadow:0 0 25px #00c853}.banner.info{color:#ffd760;font-size:54px;text-shadow:0 0 20px #000}
@keyframes ban{0%{transform:translate(-50%,-50%) scale(.2);opacity:0}15%{transform:translate(-50%,-50%) scale(1.15);opacity:1}25%{transform:translate(-50%,-50%) scale(1)}80%{opacity:1}100%{transform:translate(-50%,-70%) scale(1.05);opacity:0}}
#fxc{position:fixed;inset:0;pointer-events:none;z-index:60}
.shake{animation:shake .5s}@keyframes shake{0%,100%{transform:translateX(0)}20%{transform:translateX(-12px) rotate(-2deg)}40%{transform:translateX(10px) rotate(2deg)}60%{transform:translateX(-8px)}80%{transform:translateX(6px)}}
.redburst{position:absolute;inset:-30px;border-radius:50%;background:radial-gradient(circle,rgba(255,40,40,.7),rgba(255,0,0,0) 70%);animation:burst .8s forwards;pointer-events:none}
@keyframes burst{from{transform:scale(.3);opacity:1}to{transform:scale(1.6);opacity:0}}
.glow{animation:glow 1.2s ease-in-out 3}@keyframes glow{50%{box-shadow:0 0 30px 10px #ffd760}}
.aidebig{display:inline-flex;align-items:center;justify-content:center;border-radius:12px;font-weight:900;color:#111;animation:pop .4s}
@keyframes pop{from{transform:scale(0)}70%{transform:scale(1.2)}to{transform:scale(1)}}
.btn{border:none;border-radius:14px;padding:14px 22px;font-size:22px;font-weight:bold;color:#111;background:#d4af37;box-shadow:0 4px 0 #7a6320}
.btn:active{transform:translateY(3px);box-shadow:0 1px 0 #7a6320}.btn.ghost{background:#2a332e;color:#e8e2cf;box-shadow:0 4px 0 #111}
.btn:disabled{opacity:.35}
.fsbtn{width:44px;height:44px;padding:0;border-radius:12px;border:2px solid #d4af37;background:rgba(0,0,0,.6);color:#ffd760;font-size:24px;line-height:1;display:inline-flex;align-items:center;justify-content:center}
.fsbtn:focus,.fsbtn:focus-visible{outline:4px solid #ffd760;outline-offset:2px}.fsbtn.on{background:#3a3215}
