body.speed-royal-table .card-game-battle {
  background: #073d30 url('../../assets/card-table/emerald-table-v1.webp') center / cover no-repeat;
}
body.speed-royal-table .card-table-center {
  background: #003a2b50;
  border: 1px solid #dab96b99;
  box-shadow: inset 0 0 24px #001c1680, 0 0 0 3px #052a2266;
}
body.speed-royal-table .opponent-card {
  background: linear-gradient(145deg,#143f38ee,#06271fee);
  border-color: #c8b07977;
  box-shadow: inset 0 1px #ffedc933, 0 3px 8px #00191166;
}
body.speed-royal-table .opponent-card strong { color: #ffe4a2; }
body.speed-royal-table .card-game-player { background:#05281fe6; border-color:#d8ba6d88; }
body.speed-royal-table .playing-card { --classic-card-width:52px; font-family:Georgia,'Times New Roman',serif; }
body.speed-royal-table .playing-card .rank {font-size:10px;line-height:1;}
body.speed-royal-table .playing-card .deck-center {inset:17% 12%;}
body.speed-royal-table .playing-card .deck-pip {font-size:8px;}
body.speed-royal-table .playing-card[data-deck-rank='A'] .deck-pip {font-size:18px;}
body.speed-royal-table .playing-card .deck-court {inset:16% auto auto 19%;}
body.speed-royal-table .playing-card.is-selected {border-color:#ffe3a0;box-shadow:0 0 0 2px #ffdd87,0 6px 10px #001a14aa;}
body.speed-royal-table .playing-card.is-selected {transform:none;outline:2px solid #ffe6a0;outline-offset:-3px;}
body.speed-royal-table .playing-card.speed-card-arrival {animation:speed-card-arrival 180ms ease-out;}
@keyframes speed-card-arrival {from{opacity:.55;transform:translateY(5px);}to{opacity:1;transform:translateY(0);}}
@media(prefers-reduced-motion:reduce){body.speed-royal-table .playing-card {animation:none!important;transition:none!important;}}

body.speed-royal-table .playing-card.is-face-down {background:#082d26 url('../../assets/klondike-solitaire-card-back.webp') center/100% 100%;border-color:#d4b56b;}
body.speed-royal-table .playing-card.is-face-down::after {content:none;}
body.speed-royal-table #cardGameActions button,
body.speed-royal-table .main-actions button,
body.speed-royal-table .result-actions button {
 border:1px solid #cbb376;border-radius:12px;padding:10px 12px;min-height:44px;
 background:linear-gradient(140deg,#20423b,#092727);color:#fff1cf;font:700 14px/1.3 system-ui,sans-serif;
 box-shadow:inset 0 1px #fff3,0 3px 8px #0004;
}
body.speed-royal-table button.primary-btn {background:linear-gradient(135deg,#ffe4a0,#e6bc5b);color:#123028;}
body.speed-royal-table button:disabled {opacity:.42;cursor:default;}

body.speed-royal-table #cardGameCenter .playing-card {width:96px;min-width:96px;height:134px;min-height:134px;border-radius:12px;box-shadow:0 6px 16px #001e17aa;}
body.speed-royal-table #cardGameCenter .playing-card .rank {font-size:17px;}
body.speed-royal-table #cardGameCenter .playing-card .deck-pip {font-size:14px;}
body.speed-royal-table #cardGameCenter .playing-card[data-deck-rank='A'] .deck-pip {font-size:34px;}
body.speed-royal-table .card-speed-lane {width:min(100%,300px);gap:18px;}
body.speed-royal-table .card-speed-pile {min-height:158px;padding:6px;border:1px solid #d4b57688;background:#092b2399;box-shadow:inset 0 0 18px #001c1688;}
body.speed-royal-table #cardGameHand {display:flex;flex-wrap:nowrap;justify-content:center;gap:7px;min-width:0;}
body.speed-royal-table #cardGameHand .playing-card {width:50px;min-width:50px;flex:0 0 50px;height:70px;min-height:70px;}
body.speed-royal-table #cardGameHand .card-speed-legal {border-color:#ffe296;box-shadow:0 0 0 3px #ffe296aa,0 4px 12px #001c16;}
body.speed-royal-table #cardGameHand .playing-card:focus-visible {outline:3px solid #fff3ba;outline-offset:3px;}
body.speed-royal-table .opponent-card {color:#ffefcd;}
body.speed-royal-table #cardGameActions .card-help {background:#062a24;border:1px solid #bba46980;border-radius:8px;padding:3px 8px;color:#fff0d0;}
body.speed-royal-table .card-game-player-header {gap:10px;}
body.speed-royal-table .card-game-player-header strong {flex-shrink:0;}
body.speed-royal-table #resultOverlay .result-card {background:radial-gradient(ellipse at top,#254d42,#071e22);border-color:#d7b96f;}
@media(orientation:landscape) and (max-height:560px){
 body.speed-royal-table .card-game-board {grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-rows:40px minmax(0,1fr);grid-template-areas:'opponents opponents' 'table player';gap:5px;}
 body.speed-royal-table #cardGameOpponents {grid-area:opponents;min-height:0;}
 body.speed-royal-table .opponent-card {min-height:0;height:40px;padding:3px 8px;box-sizing:border-box;}
 body.speed-royal-table #cardGameTable {grid-area:table;padding:4px;min-width:0;}
 body.speed-royal-table .card-game-player {grid-area:player;padding:5px;justify-content:center;min-width:0;}
 body.speed-royal-table .card-game-player-header {font-size:11px;line-height:1.2;}
 body.speed-royal-table #cardGameCenter .playing-card {width:53px;min-width:53px;height:74px;min-height:74px;border-radius:7px;}
 body.speed-royal-table #cardGameCenter .playing-card .rank {font-size:11px;}
 body.speed-royal-table #cardGameCenter .playing-card .deck-pip {font-size:8px;}
 body.speed-royal-table #cardGameCenter .playing-card[data-deck-rank='A'] .deck-pip {font-size:21px;}
 body.speed-royal-table .card-speed-pile {min-height:82px;padding:3px;}
 body.speed-royal-table .card-speed-lane {max-width:180px;gap:10px;}
 body.speed-royal-table #cardGameHand {gap:5px;}
 body.speed-royal-table #cardGameHand .playing-card {width:43px;min-width:43px;flex-basis:43px;height:61px;min-height:61px;}
}
