

.fm-pantalla{--cw:min(64px,16.5vw);background:radial-gradient(520px 380px at 50% 0,#14624d55 0,#0000 70%),linear-gradient(180deg,#07130f,#0b1f18 60%,#040a08)}
.fm-escena{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;padding:.3rem .5rem .1rem;gap:.3rem;position:relative;z-index:2}
.fm-mesa{position:relative;flex:1 1 auto;min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:space-around;gap:.2rem;padding:.5rem .4rem;border-radius:22px;
  border:2px solid #d4a62a;background:radial-gradient(90% 80% at 50% 35%,#13705a 0,#0b4a3c 52%,#052a22 100%);box-shadow:inset 0 0 36px #000c,0 8px 20px #000c;overflow:hidden}
.fm-mesa::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(75% 55% at 50% 12%,#ffe7a540 0,#0000 72%)}
.fm-zapato{position:absolute;top:6px;right:8px;width:38px;height:26px;z-index:1;pointer-events:none}
.fm-zapato i{position:absolute;left:0;width:100%;height:9px;border-radius:3px;background:linear-gradient(180deg,#4b2e1a,#1a0e07);border:1px solid #d4a62a}
.fm-zapato i:nth-child(1){top:0}.fm-zapato i:nth-child(2){top:8px}.fm-zapato i:nth-child(3){top:16px}
.fm-rotulo{font:700 .78rem Georgia,serif;letter-spacing:.06em;text-transform:uppercase;color:#f1d98a;text-align:center;z-index:1}
.fm-rotulo em{font-style:normal;margin-left:.4rem;padding:.05rem .45rem;border-radius:999px;background:#000a;color:#fff;font:700 .85rem Georgia,serif}
.fm-rotulo em:empty{display:none}
.fm-cartas{display:flex;justify-content:center;min-height:calc(var(--cw)*1.4);z-index:1;perspective:800px}
.fm-cartas .rp-carta{margin-left:calc(var(--cw)*-.32)}
.fm-cartas .rp-carta:first-child{margin-left:0}
.fm-lado-bac{display:flex;flex-direction:column;align-items:center;gap:.2rem}
.fm-bac{flex-direction:row;align-items:center;justify-content:space-around;--cw:min(59px,17vw)}
.fm-bac .fm-cartas{min-width:calc(var(--cw)*2.2)}
.fm-bj{--cw:min(64px,16.5vw)}.fm-pk{--cw:min(70px,18vw)}
.fm-manos{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem .8rem;z-index:1;max-width:100%}
.fm-manos.multi{--cw:min(45px,11.5vw)}
.fm-bj:has(.fm-manos.multi) #fm-cb{--cw:min(46px,12vw)}
.fm-mano{display:flex;flex-direction:column;align-items:center;gap:.15rem;padding:.2rem .35rem;border-radius:10px;border:1.5px solid transparent}
.fm-mano.activa{border-color:#ffc627;background:#ffc6271a;box-shadow:0 0 12px #ffc62755}
.fm-info{font:600 .72rem "Segoe UI",system-ui;color:#e8dcb5;white-space:nowrap}
.fm-info b{font:700 .85rem Georgia,serif;color:#fff}
.fm-info .blackjack,.fm-info .gana{color:#7dffb2}.fm-info .pierde{color:#ff9d92}.fm-info .empate,.fm-info .rendida{color:#ffe08a}
.fm-aviso{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:4;min-width:40%;padding:.3rem .9rem;text-align:center;border-radius:12px;border:1.5px solid #ffc627;
  background:linear-gradient(180deg,#000a,#0008);box-shadow:0 6px 18px #000a;pointer-events:none}
.fm-aviso b{display:block;font:800 1rem Georgia,serif;color:#ffe58a}.fm-aviso small{display:block;font:600 .75rem "Segoe UI";color:#cdbf98}
.fm-aviso.jugador b{color:#8fc0ff}.fm-aviso.banca b{color:#ff9d92}.fm-aviso.empate b{color:#8be29a}
.fm-aviso.va{animation:fm-sube .5s cubic-bezier(.2,.9,.3,1.3)}
@keyframes fm-sube{from{transform:translate(-50%,-30%) scale(.7);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}

.fm-casillas{flex:none;display:flex;flex-direction:column;gap:5px}
.fm-fila{display:grid;gap:5px}.fm-fila.f3{grid-template-columns:repeat(3,minmax(0,1fr))}.fm-fila.f2{grid-template-columns:repeat(2,minmax(0,1fr))}
.fm-c{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-height:46px;padding:.25rem .2rem;border-radius:12px;color:#fff;border:1.5px solid #e2b43c88;
  background:linear-gradient(180deg,#0f3a2d,#082419);box-shadow:inset 0 1px 0 #ffffff1a,0 3px 8px #000a;font-family:"Segoe UI",system-ui}
.fm-c .fm-ct{font:700 .8rem "Segoe UI",system-ui;line-height:1.05;text-align:center}.fm-c em{font:600 .62rem "Segoe UI";font-style:normal;color:#cdbf98}
.fm-c.jug{background:linear-gradient(180deg,#1b3f7a,#0e2650)}.fm-c.ban{background:linear-gradient(180deg,#7a1b1b,#4a0e0e)}.fm-c.emp{background:linear-gradient(180deg,#1f6a3a,#0e4a22)}
.fm-c.dra{background:linear-gradient(180deg,#5a2a7a,#331550)}
.fm-c.con{border-color:#ffc627;box-shadow:0 0 0 1px #ffc627,0 3px 10px #000a}
.fm-c.gana,.fm-n.gana,.fm-x.gana,.fm-col.gana{border-color:#7dffb2;box-shadow:0 0 0 2px #7dffb2,0 0 14px #7dffb2aa}
.fm-c.media,.fm-x.media{border-color:#ffe08a;box-shadow:0 0 0 2px #ffe08a88}
.fm-f{position:absolute;right:3px;top:-6px;min-width:22px;padding:.05rem .32rem;border-radius:999px;background:#ffc627;color:#1a1200;font:800 .66rem Georgia,serif;text-align:center;box-shadow:0 1px 3px #000a;pointer-events:none;z-index:2}

.fm-rueda{position:relative;flex:none;display:flex;justify-content:center;height:clamp(120px,28vh,240px)}
.fm-rueda canvas{height:100%;width:auto;aspect-ratio:1;filter:drop-shadow(0 6px 10px #000c)}
.fm-res{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;pointer-events:none}
.fm-res b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font:800 1rem Georgia,serif;color:#fff;border:2px solid #ffc627;box-shadow:0 0 12px #000}
.fm-res b.rojo{background:#c62828}.fm-res b.negro{background:#15171c}.fm-res b.verde{background:#0b6b2e}
.fm-hist{flex:none;display:flex;gap:3px;justify-content:center;min-height:19px}
.fm-hist i{display:grid;place-items:center;width:19px;height:19px;border-radius:50%;font:700 .6rem Georgia,serif;font-style:normal;color:#fff;border:1px solid #fff5}
.fm-hist i.rojo{background:#c62828}.fm-hist i.negro{background:#15171c}.fm-hist i.verde{background:#0b6b2e}
.fm-tablero{flex:none;display:flex;flex-direction:column;gap:3px;padding:4px;border-radius:12px;background:#07301f;border:1.5px solid #d4a62a}
.fm-pano{display:grid;grid-template-columns:7.5% 1fr;grid-template-rows:repeat(3,minmax(26px,1fr));height:clamp(84px,14vh,112px);gap:2px}
.fm-cero{grid-column:1;grid-row:1/4;display:flex}.fm-cero .fm-n{flex:1}
.fm-numeros{grid-column:2;grid-row:1/4;display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(3,1fr);gap:2px}
.fm-n,.fm-x,.fm-col{position:relative;min-width:0;padding:0;border:1px solid #ffffff55;border-radius:5px;color:#fff;font:700 .74rem Georgia,serif;display:grid;place-items:center}
.fm-n.rojo,.fm-x.rojo{background:#c62828}.fm-n.negro,.fm-x.negro{background:#15171c}.fm-n.verde{background:#0b6b2e}
.fm-x{min-height:30px;background:#0d3a28;font-size:.7rem}
.fm-x.rojo::after{content:"◆";color:#fff}.fm-x.negro::after{content:"◆";color:#9aa}
.fm-col{grid-column:3;background:#0d3a28;font-size:.62rem}
.fm-n.zona{box-shadow:inset 0 0 0 2px #7dff9a;filter:brightness(1.4)}
.fm-n.con,.fm-x.con,.fm-col.con{border-color:#ffc627;box-shadow:0 0 0 1px #ffc627}
.fm-docenas{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.fm-sencillas{display:grid;grid-template-columns:repeat(6,1fr);gap:2px}
.fm-n .fm-f,.fm-col .fm-f{right:-2px;top:-5px;min-width:16px;font-size:.55rem;padding:0 .2rem}

.fm-spots{flex:none;display:flex;justify-content:center;align-items:flex-end;gap:.6rem}
.fm-spot{position:relative;flex:1 1 0;max-width:132px;min-height:76px;padding:.3rem .2rem;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:1px;border-radius:16px;
  border:1.5px dashed #e2b53a99;background:#0a3a2c99;color:#fff;font-family:"Segoe UI",system-ui}
.fm-spot.principal{min-height:88px;border-style:solid;border-color:#ffc627;background:#0f5a43aa}
.fm-spot .fm-st{font:700 .8rem Georgia,serif;color:#f1d98a}.fm-spot em{font:600 .6rem "Segoe UI";font-style:normal;color:#cdbf98}
.fm-spot.con{border-style:solid;box-shadow:0 0 10px #ffc62766}
.fm-spot:disabled{opacity:.7}
.fm-sv{display:flex;align-items:flex-end;gap:.3rem;min-height:30px}.fm-sv i{font:700 .78rem Georgia,serif;font-style:normal;color:#fff}
.fm-sv .rp-pila{--t:22px;height:30px}

.fm-dato{flex:none;min-height:34px;display:flex;flex-direction:column;justify-content:center;font:500 .76rem "Segoe UI",system-ui;text-align:center}
.fm-lats{display:flex;flex-wrap:wrap;gap:.2rem .7rem;justify-content:center;font:600 .74rem "Segoe UI";margin-top:.15rem}.fm-lats .g{color:#7dffb2}.fm-lats .p{color:#aab4cf}.fm-lats span span{opacity:.8;margin-right:.2rem}
.fm-mando{flex:none;display:flex;align-items:center;justify-content:center;gap:.4rem;min-height:46px}
.fm-gran{flex:1 1 auto;max-width:230px;min-width:0}
.fm-lado{flex:none;width:44px;height:44px;padding:0;display:grid;place-items:center;font-size:1.1rem}
.fm-acc{flex:1 1 0;min-width:0;padding:.55rem .25rem;font-size:.82rem}
.fm-fichas{flex:none;padding-bottom:.25rem}
.fm-modal{max-height:82vh;overflow:auto}
.fm-reg{list-style:none;margin:.5rem 0;padding:0;font-size:.85rem}.fm-reg li{display:flex;justify-content:space-between;gap:.6rem;padding:.2rem 0;border-bottom:1px solid #ffffff18}.fm-reg b{white-space:nowrap}

@media(max-height:640px){.fm-spot{min-height:64px}.fm-spot.principal{min-height:74px}.fm-dato{min-height:28px}.fm-pantalla{--cw:42px}.fm-bj{--cw:40px}.fm-pk{--cw:50px}.fm-bac{--cw:42px}.fm-manos.multi{--cw:30px}.fm-bj:has(.fm-manos.multi) #fm-cb{--cw:30px}}
.fm-aviso.neutro{border-color:#8a8f98}.fm-aviso.neutro b{color:#d5d8de}.fm-aviso.banca.neutro b{color:#ff9d92}
.fm-manos.sin-ganancia .fm-info .gana,.fm-manos.sin-ganancia .fm-info .blackjack{color:inherit}
