*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:#060f06;color:#a8d4a8;font-family:"Press Start 2P",monospace;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;position:relative;image-rendering:pixelated}body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.65) 100%);pointer-events:none;z-index:100}body:after{content:"";position:fixed;inset:0;background:repeating-linear-gradient(to bottom,transparent 0px,transparent 3px,rgba(0,0,0,.12) 3px,rgba(0,0,0,.12) 4px);pointer-events:none;z-index:101}.machine{background:#0a1a0a;border:3px solid #1a3d1a;box-shadow:0 0 0 1px #0d280d,0 0 40px #00b40012,inset 0 0 60px #0006;padding:clamp(.9rem,3vw,1.5rem);width:100%;max-width:640px;display:flex;flex-direction:column;gap:.85rem}.title{text-align:center;font-size:clamp(.6rem,2.5vw,.95rem);color:gold;letter-spacing:.12em;padding:.4rem 0 .7rem;border-bottom:2px solid #1a3d1a;text-shadow:0 0 8px rgba(255,215,0,.7),0 0 20px rgba(255,215,0,.3)}.game-tabs{display:flex;gap:.3rem}.game-tab{font-family:"Press Start 2P",monospace;font-size:clamp(.28rem,1vw,.4rem);cursor:pointer;border:1px solid #1a3d1a;background:transparent;color:#3a6a3a;padding:.3rem .4rem;flex:1;transition:color .1s,border-color .1s,background .1s;line-height:1.4}.game-tab:hover:not(:disabled){color:#6ab06a;border-color:#2a5a2a}.game-tab.active{border-color:gold;color:gold;background:#ffd7000d}.game-tab:disabled{opacity:.25;cursor:not-allowed}.paytable{display:grid;grid-template-columns:1fr 1fr;grid-auto-flow:column;gap:2px .75rem;border-bottom:2px solid #1a3d1a;padding-bottom:.85rem}.pt-row{display:flex;justify-content:space-between;align-items:center;padding:.2rem .3rem;font-size:clamp(.38rem,1.4vw,.54rem);color:#5a9a5a;gap:.4rem;transition:color .15s,background .15s;border:1px solid transparent}.pt-row.active{color:gold;background:#ffd70014;border-color:#ffd70033;text-shadow:0 0 6px rgba(255,215,0,.5)}.pt-name{flex:1}.pt-val{color:#7ab87a;min-width:3ch;text-align:right;transition:color .15s}.pt-row.active .pt-val{color:#fff}.cards-area{display:flex;gap:clamp(.3rem,1.8vw,.65rem);justify-content:center;padding:.3rem 0}.card-slot{display:flex;flex-direction:column;align-items:center;gap:.35rem;cursor:pointer;user-select:none}.hold-label{font-size:clamp(.28rem,1vw,.4rem);color:transparent;letter-spacing:.05em;height:1em;transition:color .1s,text-shadow .1s}.hold-label.on{color:#0fc;text-shadow:0 0 8px rgba(0,255,204,.8)}.card-flip{perspective:700px;width:clamp(52px,10.5vw,88px);height:clamp(74px,15vw,124px)}.card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .32s cubic-bezier(.4,0,.2,1)}.card-inner.flipped{transform:rotateY(180deg)}.card-face,.card-back-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:3px}.card-back-face{background:#126;background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.04) 0px,rgba(255,255,255,.04) 2px,transparent 2px,transparent 9px),repeating-linear-gradient(-45deg,rgba(255,255,255,.04) 0px,rgba(255,255,255,.04) 2px,transparent 2px,transparent 9px);border:2px solid #1a2d8a;display:flex;align-items:center;justify-content:center}.card-back-face:after{content:"★";color:#ffffff2e;font-size:clamp(.8rem,2.5vw,1.4rem)}.card-face{transform:rotateY(180deg);background:#f5f0e8;border:2px solid #888;padding:clamp(2px,.6vw,5px);display:flex;flex-direction:column;justify-content:space-between}.card-face.held{border-color:#0fc;box-shadow:0 0 0 1px #0fc,0 0 10px #00ffcc80,inset 0 0 6px #00ffcc14}.card-face.empty-face{background:#0a150a;border:2px dashed #1a3d1a}.cr-top{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2}.cr-bot{display:flex;flex-direction:column;align-items:flex-start;transform:rotate(180deg);line-height:1.2}.cr-rank{font-family:"Press Start 2P",monospace;font-size:clamp(.62rem,2.2vw,1rem);line-height:1}.cr-suit-sm{display:none}.cr-suit-center{text-align:center;font-size:clamp(1.4rem,5vw,2.6rem);line-height:1}.red{color:#c11}.dark{color:#111}.ev-line{text-align:center;font-size:clamp(.4rem,1.4vw,.56rem);min-height:1.2em;letter-spacing:.08em;color:#3a6a3a}.ev-line.ev-pos{color:#7ab87a}.ev-line.ev-good{color:gold;text-shadow:0 0 6px rgba(255,215,0,.4)}.ev-line.ev-dim{color:#2a4a2a}.message{text-align:center;font-size:clamp(.48rem,1.6vw,.64rem);min-height:1.4em;color:#5a9a5a;letter-spacing:.06em}.message.win{color:gold;text-shadow:0 0 10px rgba(255,215,0,.6);animation:msgflash .45s ease-in-out 4}.message.loss{color:#f55}.message.info{color:#5a9a5a}@keyframes msgflash{0%,to{opacity:1}50%{opacity:.2}}.controls{display:flex;align-items:center;justify-content:space-between;gap:.5rem;border-top:2px solid #1a3d1a;padding-top:.75rem;flex-wrap:wrap}.cred-block{display:flex;flex-direction:column;gap:.3rem}.cred-label{font-size:clamp(.36rem,1.2vw,.48rem);color:#4a7a4a}.cred-val{font-size:clamp(.58rem,2vw,.82rem);color:gold}.bet-block{display:flex;flex-direction:column;align-items:center;gap:.35rem}.bet-label{font-size:clamp(.36rem,1.2vw,.48rem);color:#4a7a4a}.bet-row{display:flex;align-items:center;gap:.3rem}.btn{font-family:"Press Start 2P",monospace;cursor:pointer;border:2px solid;background:transparent;padding:.35rem .55rem;font-size:clamp(.38rem,1.4vw,.54rem);line-height:1;transition:background .1s,box-shadow .1s,transform .05s}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.25;cursor:not-allowed}.btn-adj{border-color:#2a5a2a;color:#6ab06a;padding:.3rem .45rem}.btn-adj:hover:not(:disabled){background:#152515;color:#a0d4a0}.bet-val{font-family:"Press Start 2P",monospace;font-size:clamp(.48rem,1.6vw,.68rem);color:gold;border:2px solid #2a5a2a;padding:.3rem .45rem;min-width:2.5ch;text-align:center;cursor:default}.btn-action{border-color:gold;color:gold;padding:.5rem 1rem;font-size:clamp(.48rem,1.7vw,.68rem);box-shadow:0 0 10px #ffd70026}.btn-action:hover:not(:disabled){background:#ffd70014;box-shadow:0 0 16px #ffd70059}.btn-action.draw-mode{border-color:#0fc;color:#0fc;box-shadow:0 0 10px #00ffcc26}.btn-action.draw-mode:hover:not(:disabled){background:#00ffcc14;box-shadow:0 0 16px #00ffcc59}.back-link{font-size:clamp(.28rem,1vw,.38rem);color:#2a5a2a;text-decoration:none;margin-top:.75rem;transition:color .2s}.back-link:hover{color:#5a9a5a}
