.casino-reel {
  --casino-reel-step: 120px;
  display: block;
  height: 144px;
  min-height: 0;
}

.casino-lobby{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:850px}.casino-game-card{display:grid;gap:9px;min-height:240px;padding:24px;border:3px solid #416b68;background:linear-gradient(145deg,#123d3b,#10232d);box-shadow:6px 6px 0 #07151b;color:#dbe6d7;text-decoration:none}.casino-game-card:hover,.casino-game-card:focus-visible{border-color:#ffd166;transform:translate(-2px,-2px)}.casino-game-card h3{margin:0;color:#fff0c7;font:900 26px Georgia,serif;text-transform:uppercase}.casino-game-card p:not(.eyebrow){margin:0;color:#b8d0cc;line-height:1.5}.casino-game-card b{align-self:end;color:#65e6c2;font-size:11px;letter-spacing:.1em}.casino-game-icon{color:#ffd166;font-size:42px;line-height:1}.blackjack-bankroll{display:flex;align-items:center;gap:14px;padding:14px 18px;border:2px solid #416b68;background:#102b30}.blackjack-bankroll span,.blackjack-bankroll small{color:#9bb5b3;font-size:9px;letter-spacing:.1em}.blackjack-bankroll strong{color:#ffd166;font:900 25px Georgia,serif}.blackjack-bankroll small{margin-left:auto}.blackjack-table{position:relative;display:grid;grid-template-rows:1fr auto 1fr;gap:18px;min-height:390px;margin-top:18px;padding:24px;border:5px solid #9d7940;border-radius:45% 45% 18px 18px;background:radial-gradient(ellipse at center,#27705c,#123e38 72%);box-shadow:inset 0 0 0 3px #08251f,8px 8px 0 #07151b}.blackjack-seat{z-index:1;text-align:center}.blackjack-seat .eyebrow{color:#d9f3d7}.blackjack-seat .eyebrow b{color:#ffd166}.blackjack-hand{display:flex;justify-content:center;min-height:112px}.blackjack-card{width:80px;height:auto;margin-left:-21px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(3px 4px 0 #07151baa);animation:blackjack-deal .32s both}.blackjack-card:first-child{margin-left:0}.blackjack-card:nth-child(2){animation-delay:.09s}.blackjack-card:nth-child(3){animation-delay:.18s}.blackjack-hole{animation:blackjack-flip .42s both}.blackjack-felt-mark{align-self:center;color:#d9f3d744;font:900 24px Georgia,serif;letter-spacing:.16em;line-height:1;text-align:center}.blackjack-felt-mark span{font-size:11px}.blackjack-table-empty{display:grid;place-items:center;grid-template-rows:auto auto;min-height:270px;color:#d9f3d7;text-align:center}.blackjack-result,.blackjack-actions,.blackjack-bet-form{display:flex;justify-content:center;align-items:center;gap:10px;margin:14px 0}.blackjack-result{flex-direction:column;padding:10px;border:1px solid #416b68;background:#0d202b;color:#b8d0cc}.blackjack-result strong{color:#ffd166}.blackjack-result.settled strong{color:#65e6c2}.blackjack-actions button,.blackjack-deal{min-width:120px}.blackjack-bet-form label{display:grid;gap:5px;color:#b8d0cc;font-size:10px;letter-spacing:.08em}.blackjack-bet-form input{width:180px;padding:10px;border:2px solid #416b68;background:#07151b;color:#fff0c7;font:inherit}.blackjack-rules,.blackjack-history{margin-top:16px;padding:13px 16px;border:2px solid #416b68;background:rgba(8,26,35,.88)}.blackjack-rules p:last-child{margin:5px 0 0;color:#b8d0cc;font-size:11px}.blackjack-history summary{color:#ffd166;font:900 11px Georgia,serif;letter-spacing:.1em;cursor:pointer}.blackjack-history ul{display:grid;gap:7px;margin:12px 0 0;padding:0;list-style:none}.blackjack-history li{display:flex;justify-content:space-between;gap:12px;font-size:11px}.blackjack-history li small{display:block;margin-top:3px;color:#91aca8;font-size:9px}.blackjack-empty{color:#91aca8}.positive{color:#65e6c2}.negative{color:#bd6d63}@keyframes blackjack-deal{from{opacity:0;transform:translate(0,-45px) rotate(-8deg)}to{opacity:1;transform:translate(0,0) rotate(0)}}@keyframes blackjack-flip{0%{transform:rotateY(90deg)}100%{transform:rotateY(0)}}@media(max-width:620px){.casino-lobby{grid-template-columns:1fr}.blackjack-table{min-height:330px;padding:16px;border-width:3px}.blackjack-card{width:62px;margin-left:-17px}.blackjack-hand{min-height:87px}.blackjack-bankroll{flex-wrap:wrap}.blackjack-bankroll small{margin-left:0}.blackjack-bet-form{align-items:end;flex-wrap:wrap}.blackjack-bet-form input{width:min(180px,100%)}}

.casino-reel.is-spinning .casino-symbol-window img {
  animation: none;
}

.casino-reel-strip {
  display: block;
  width: 100%;
  transform: translateY(0);
  will-change: transform;
}

.casino-reel-item {
  display: grid;
  place-items: center;
  height: var(--casino-reel-step);
  background: rgba(4, 14, 20, .88);
  border: 1px solid #5a7770;
}

.casino-reel-item img {
  width: 92px;
  height: 92px;
  object-fit: contain;
  image-rendering: pixelated;
}

@media (max-width: 480px) {
  .casino-reel {
    --casino-reel-step: 83px;
    height: 105px;
  }

  .casino-reel-item img {
    width: 62px;
    height: 62px;
  }
}
.blackjack-loss-limit{margin-top:16px;padding:13px 16px;border:2px solid #416b68;background:rgba(8,26,35,.88)}.blackjack-loss-limit form{display:flex;align-items:end;gap:10px;margin-top:8px}.blackjack-loss-limit label{display:grid;flex:1;gap:5px;color:#b8d0cc;font-size:9px;letter-spacing:.08em}.blackjack-loss-limit input{padding:8px;border:1px solid #416b68;background:#07151b;color:#fff0c7;font:inherit}.blackjack-loss-limit small{display:block;margin-top:8px;color:#91aca8;font-size:10px}@media(max-width:620px){.blackjack-loss-limit form{align-items:stretch;flex-direction:column}.blackjack-loss-limit button{width:100%}}

/* Keep each hand anchored while cards are added, then animate only the delta. */
.blackjack-hand {
  position: relative;
  display: block;
  height: 112px;
  min-height: 112px;
  overflow: visible;
}

.blackjack-card {
  position: absolute;
  top: 0;
  left: calc(50% + var(--card-offset, 0px));
  margin-left: 0;
  transform: translateX(-50%);
  animation: none;
}

.blackjack-card--new {
  animation: blackjack-deal-stable .36s var(--deal-delay, 0ms) both;
}

.blackjack-card--reveal {
  animation: blackjack-reveal .46s ease-out both;
  transform-origin: center;
}

.blackjack-actions {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  flex-wrap: wrap;
}

.blackjack-actions button {
  flex: 1 1 120px;
  max-width: 220px;
}

.blackjack-outcome {
  opacity: 0;
  animation: blackjack-outcome-in .55s ease-out .08s forwards;
}

.blackjack-outcome strong {
  font: 900 24px Georgia, serif;
  letter-spacing: .08em;
}

.blackjack-outcome--win strong { color: #65e6c2; }
.blackjack-outcome--lose strong { color: #e98579; }
.blackjack-outcome--push strong { color: #ffd166; }

@keyframes blackjack-deal-stable {
  from { opacity: 0; transform: translate(-50%, -45px) rotate(-8deg); }
  to { opacity: 1; transform: translate(-50%, 0) rotate(0); }
}

@keyframes blackjack-reveal {
  from { opacity: .35; transform: translate(-50%, 0) rotateY(90deg); }
  to { opacity: 1; transform: translate(-50%, 0) rotateY(0); }
}

@keyframes blackjack-outcome-in {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

@media(max-width:620px) {
  .blackjack-hand {
    height: 87px;
    min-height: 87px;
  }

  .blackjack-actions {
    gap: 8px;
  }

  .blackjack-actions button {
    min-width: 0;
    max-width: none;
  }
}