/* Living table: readable active cards, a full hand, and finite action effects. */
body.in-game .premium-table-arena.universe-table { --guide-width:clamp(310px,27vw,430px); }
body.in-game .premium-center-stage { align-items:flex-start !important; }
body.in-game .premium-board.universe-board.new-board { aspect-ratio:3/2 !important; width:min(100%,calc((100dvh - 24px)*1.5)) !important; }
@media (orientation:landscape) and (min-height:601px) {
  body.in-game .universe-table:has(.premium-hand-dock) .premium-board.classic-board { width:min(100%,calc((100dvh - 125px)*1.3333333)) !important; }
}
.new-board .universe-brand-badge { display:none !important; }
.new-board .physical-mat { object-fit:fill !important; }
body.in-game .new-board .board-player-seat { height:11.2% !important; width:22.2% !important; }
body.in-game .new-board .board-seat-tl { left:2.15% !important; top:10.05% !important; }
body.in-game .new-board .board-seat-tr { left:70.65% !important; top:10.05% !important; }
body.in-game .new-board .board-seat-bl { left:2.3% !important; top:80.3% !important; width:23.5% !important; }
body.in-game .new-board .board-seat-br { left:67.45% !important; top:80.3% !important; width:25.25% !important; }
body.in-game .new-board .premium-seat-cards { grid-template-columns:repeat(5,minmax(0,1fr)) !important; left:0 !important; top:0 !important; height:100% !important; gap:2% !important; }
body.in-game .new-board .premium-seat-head { left:14% !important; top:-76% !important; width:84% !important; height:47% !important; }
body.in-game .new-board .board-seat-bl .premium-seat-head,
body.in-game .new-board .board-seat-br .premium-seat-head { top:-69% !important; }
body.in-game .new-board .premium-seat-head strong { font-size:clamp(14px,2.1cqw,32px) !important; }
.new-board .seat-lead-guardian { display:none !important; }
.new-board .seat-panel-glow { width:104% !important; height:105% !important; }
.new-board .seat-turn-marker { top:-73%; width:clamp(22px,2.8cqw,40px); }
body.in-game .new-board .guardian-zoom { width:clamp(20px,2.7cqw,36px) !important; height:clamp(20px,2.7cqw,36px) !important; font-size:clamp(17px,2.1cqw,27px) !important; right:-2px !important; bottom:-7px !important; }
body.in-game .new-board .table-guardian-slot img { width:100% !important; height:100% !important; }
.new-board .challenge-deck-slot { left:29.9% !important; top:28.3% !important; width:8.1% !important; }
.new-board .mission-deck-slot { left:40.5% !important; top:28.3% !important; width:8.1% !important; }
.new-board .power-deck-slot { left:51.3% !important; top:28.3% !important; width:8.1% !important; }
.new-board .big-deck-slot { left:61.7% !important; top:28.3% !important; width:8.1% !important; }
.new-board .challenge-discard-slot { left:18.2% !important; top:29% !important; width:8.9% !important; }
.new-board .power-discard-slot { left:73% !important; top:29% !important; width:8.9% !important; }
.new-board .board-deck > span,.new-board .board-deck > small,
.new-board .board-discard > span,.new-board .board-discard > small { display:none !important; }
/* More than 50% taller than the old live row; cards fill the digital wells. */
.active-row-backplate { position:absolute; z-index:32; left:24%; top:48.6%; width:51%; height:23%; border:1px solid #60bbdc88; border-radius:16px; background:linear-gradient(160deg,#04172df5,#092447eb); box-shadow:0 12px 36px #0008,inset 0 1px #9cedff66; pointer-events:none; }
.active-row-backplate > span { display:block; text-align:center; color:#cff6ff; font:800 clamp(9px,1.05cqw,16px)/1.7 system-ui,sans-serif; letter-spacing:.22em; }
body.in-game .universe-board .challenge-live-zone { left:27% !important; top:52% !important; width:13% !important; height:18.5% !important; }
body.in-game .universe-board .mission-live-zone { left:42% !important; top:52% !important; width:13% !important; height:18.5% !important; }
body.in-game .universe-board .power-live-zone { left:57% !important; top:52% !important; width:15% !important; height:18.5% !important; }
body.in-game .universe-board .mission-live-zone .card-open { width:100% !important; height:100% !important; }
body.in-game .universe-board .board-challenge-card { height:100% !important; width:88% !important; }
body.in-game .universe-board .board-challenge-card img { height:100% !important; }
body.in-game .universe-board .challenge-back { width:100% !important; height:100% !important; object-fit:contain !important; }
body.in-game .universe-board .board-challenge-stack { position:relative !important; width:100% !important; height:100% !important; display:flex !important; align-items:center !important; justify-content:center !important; }
body.in-game .universe-board .challenge-back { position:static !important; transform:none !important; max-height:100% !important; }
body.in-game .universe-board .board-power-fan { width:100% !important; height:100% !important; }
body.in-game .universe-board .power-fan-card { width:59% !important; height:96% !important; }
body.in-game .universe-board .power-fan-card img { width:100% !important; height:100% !important; }
.power-stack-count { bottom:-4px !important; z-index:20; font:800 clamp(8px,.95cqw,14px) system-ui; color:white; padding:3px 7px; border-radius:12px; background:#082341ed; white-space:nowrap; }
/* A hand spans the table instead of squeezing into the guide column. */
.premium-hand-dock { position:absolute; z-index:150; left:24px; right:calc(var(--guide-width) + 36px); bottom:15px; max-height:51dvh; padding:14px 18px 12px; display:flex; flex-direction:column; gap:9px; border:1px solid rgba(var(--hand-rgb),.8); border-top:2px solid var(--hand-color); border-radius:20px; background:radial-gradient(ellipse at 50% 0,rgba(var(--hand-rgb),.22),transparent 65%),linear-gradient(160deg,#081c37fa,#030c21fc); box-shadow:0 -12px 55px #0009,0 0 28px rgba(var(--hand-rgb),.2),inset 0 1px #b7eaff44; backdrop-filter:blur(14px); }
.guardian-hand-heading { display:flex; align-items:center; justify-content:space-between; gap:15px; font:700 13px/1.3 system-ui; color:#bed7e8; }
.guardian-hand-heading > div { display:grid; gap:3px; }
.guardian-hand-heading span { color:var(--hand-color); font-size:10px; letter-spacing:.18em; }
.guardian-hand-heading strong { color:#f2faff; font-size:16px; }
.premium-hand-cards { display:flex; justify-content:safe center; align-items:stretch; gap:12px; overflow:auto; padding:10px 6px 3px; scrollbar-width:thin; overscroll-behavior:contain; }
.premium-hand-card { position:relative; flex:0 0 clamp(115px,10vw,175px); min-width:0; }
.premium-hand-play { width:100%; height:100%; border:1px solid #5c80a2; border-radius:12px; padding:6px; display:grid; justify-items:center; gap:5px; background:linear-gradient(155deg,#17395b,#09182e); color:#f2faff; transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease; }
.premium-hand-play img { height:clamp(135px,19dvh,212px); max-width:100%; object-fit:contain; border-radius:6px; filter:drop-shadow(0 6px 8px #0008); }
.premium-hand-play strong { font:800 14px/1.2 system-ui; }
.premium-hand-play small { font:800 9px/1.2 system-ui; letter-spacing:.06em; color:#acdcf3; }
.hand-stats { display:flex; justify-content:center; flex-wrap:wrap; gap:3px; font:800 8px/1.2 system-ui; }
.hand-stats b { padding:3px; border:1px solid currentColor; border-radius:4px; }
.hand-stats .think { color:#67dfff; }.hand-stats .act { color:#ffe779; }.hand-stats .care { color:#ff9aca; }
.premium-hand-card.chosen .premium-hand-play { transform:translateY(-7px); border-color:#fff394; box-shadow:0 0 0 2px #ffc44355,0 0 24px #ffcb4055; }
.premium-hand-play:not(:disabled):hover,.premium-hand-play:focus-visible { transform:translateY(-7px); border-color:#b9f7ff; box-shadow:0 8px 22px #0008,0 0 18px #5fdcff55; }
.premium-hand-card.unavailable { opacity:.44; filter:saturate(.3); }
.premium-hand-zoom { position:absolute; right:4px; top:4px; border:1px solid #9be8ff; border-radius:50%; background:#082844e8; color:white; font-size:24px; width:32px; height:32px; display:grid; place-items:center; }
.premium-hand-dock .board-power-choice-tray { display:flex !important; flex-direction:column !important; position:static !important; inset:auto !important; width:100% !important; height:auto !important; min-height:0 !important; padding:0 !important; border:0 !important; box-shadow:none !important; background:transparent !important; animation:none !important; }
.premium-hand-dock .power-tray-head { font:800 16px/1.3 system-ui; }
.premium-hand-dock .power-tray-head button { width:36px; height:36px; font-size:24px; flex-shrink:0; }
.premium-hand-dock .power-tray-cards { display:flex !important; justify-content:safe center; align-items:stretch; gap:12px; padding:9px 6px 4px; min-height:0; overflow:auto; scrollbar-width:thin; }
.premium-hand-dock .power-choice-card { height:auto !important; flex:0 0 clamp(120px,10vw,175px); width:auto; max-width:none; display:block; }
.premium-hand-dock .power-choice-play { display:flex; flex-direction:column; align-items:center; gap:4px; width:100%; height:auto; background:linear-gradient(145deg,#173454,#06162c); color:white; border:1px solid #72b2dd; border-radius:12px; padding:7px 5px; }
.premium-hand-dock .power-choice-card.think .power-choice-play { border-color:#50ccf5; }
.premium-hand-dock .power-choice-card.act .power-choice-play { border-color:#ffd658; }
.premium-hand-dock .power-choice-card.care .power-choice-play { border-color:#ff85bc; }
.premium-hand-dock .power-choice-play img { width:auto; max-width:100%; height:clamp(135px,19dvh,212px); }
.premium-hand-dock .power-choice-name { font:800 13px/1.2 system-ui; }
.premium-hand-dock .power-choice-value { font:800 11px/1.2 system-ui; }
.premium-hand-dock .power-choice-preview { font:700 11px/1.2 system-ui; }
.premium-hand-dock .power-choice-card.response-disabled { opacity:.36; filter:saturate(.15); }
.premium-hand-dock .power-choice-zoom { top:3px !important; right:3px !important; bottom:auto !important; width:32px !important; height:32px !important; font-size:24px !important; }
.hand-turn-tools { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:10px; font:700 12px/1.3 system-ui; color:#bddded; }
.hand-turn-tools button { min-height:35px; padding:5px 12px; font-size:12px; }
.base-plan-progress { border:1px solid #4483a8; padding:10px; border-radius:10px; background:#091f34; font:700 12px/1.4 system-ui; color:#cbe9fa; }
.base-plan-progress > div:first-child { display:flex; justify-content:space-between; color:#f3fbff; }
.base-power-pips { display:flex; gap:6px; margin:7px 0; }
.base-power-pips i { font-style:normal; width:30px; height:28px; display:grid; place-items:center; border-radius:6px; border:1px dashed #7bbac5; color:#8ab6c5; }
.base-power-pips i.filled { border-style:solid; background:#ffe074; border-color:#fff4b7; color:#072d48; box-shadow:0 0 14px #ffcd2633; }
/* Keep recovery controls reachable even when text wraps or a screen is short. */
body.in-game .readable-game-guide .guide-play-pane .universe-action { display:block !important; overflow-y:auto !important; overflow-x:hidden !important; }
body.in-game .readable-game-guide .guide-play-pane .universe-action > .action-panel { display:flex !important; flex:none !important; height:auto !important; max-height:none !important; overflow:visible !important; gap:10px !important; }
body.in-game .readable-game-guide .guardian-select-panel .readable-guardian-picks { display:none; }
body.in-game .readable-game-guide .guardian-select-panel > p { display:block !important; }
body.in-game .readable-game-guide .universe-action .guide-deck-action { margin-top:12px !important; }
.board-theme-setting { padding:16px; border:1px solid #527cbd; border-radius:12px; }
.board-theme-setting .segmented { margin-top:12px; flex-wrap:wrap; }
.board-theme-setting button[aria-pressed=true] { border-color:#7df3ff; background:#245386; }
.premium-hand-dock { padding:9px 14px; gap:5px; }
.guardian-hand-heading { min-height:30px; height:30px; flex:0 0 30px; }
.guardian-hand-heading span { font:800 9px/1.15 system-ui !important; margin:0 !important; }
.guardian-hand-heading strong { font:800 14px/1.2 system-ui !important; margin:0 !important; }
.guardian-hand-heading small { font:600 11px/1.2 system-ui !important; }
.hand-hide { border:1px solid #5aacc4; border-radius:8px; background:#10334c; color:#d5f4ff; font:800 10px/1.2 system-ui; padding:8px; min-height:32px; }
.premium-hand-play { display:flex; flex-direction:column; justify-content:flex-start; gap:4px; padding:5px; }
.premium-hand-play strong { font:800 13px/1.2 system-ui !important; margin:0 !important; }
.premium-hand-play small { font:800 8px/1.2 system-ui !important; margin:0 !important; }
.hand-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; }
.hand-stats b { font:800 8px/1.2 system-ui !important; white-space:nowrap; text-align:center; padding:2px 1px; }
.gu-flying-card { position:fixed; z-index:1000; pointer-events:none; object-fit:contain; filter:drop-shadow(0 0 12px #a2eeff) drop-shadow(0 14px 18px #052142); border-radius:9px; will-change:transform,opacity; }
.gu-card-land { animation:gu-card-land .55s cubic-bezier(.2,.8,.25,1) both !important; }
.gu-challenge-flip { animation:gu-challenge-flip .65s cubic-bezier(.2,.8,.2,1) both !important; }
.gu-score-pulse { animation:gu-score-pulse .6s ease both; }
.hand-arrive .premium-hand-card,.hand-arrive .power-choice-card { animation:gu-hand-deal .38s both; animation-delay:calc(var(--deal-i,0)*45ms); }
.hand-arrive .pc2{--deal-i:1}.hand-arrive .pc3{--deal-i:2}.hand-arrive .pc4{--deal-i:3}.hand-arrive .pc5{--deal-i:4}.hand-arrive .pc6{--deal-i:5}
@keyframes gu-hand-deal { from { opacity:0; transform:translateY(45px) rotate(5deg) scale(.85); } to { opacity:1; transform:none; } }
@keyframes gu-card-land { 0% { filter:brightness(1.7) drop-shadow(0 0 20px #78e9ff); scale:1.15; } 100% { filter:none; scale:1; } }
@keyframes gu-challenge-flip { 0% { rotate:y -85deg; filter:brightness(2); scale:.85; } 65% { rotate:y 8deg; scale:1.07; } 100% { rotate:y 0deg; filter:none; scale:1; } }
@keyframes gu-score-pulse { 40% { background:#235674; box-shadow:0 0 20px #8ee7ff88; scale:1.035; } }
@media (max-width:1150px) {
  .premium-hand-dock { left:12px; right:calc(var(--guide-width) + 24px); padding:10px; }
  .premium-hand-cards,.premium-hand-dock .power-tray-cards { gap:7px; }
  .premium-hand-card { flex-basis:100px; }.premium-hand-dock .power-choice-card { flex-basis:110px; }
  .premium-hand-play img,.premium-hand-dock .power-choice-play img { height:145px; }
  .guardian-hand-heading small { display:none; }
}
@media (orientation:landscape) and (max-height:600px) {
  body.in-game .premium-table-arena.universe-table { --guide-width:clamp(265px,35vw,310px); }
  .premium-hand-dock { left:8px; right:calc(var(--guide-width) + 20px); bottom:8px; max-height:67dvh; padding:7px; border-radius:12px; gap:3px; }
  .guardian-hand-heading strong,.premium-hand-dock .power-tray-head { font-size:12px; }
  .guardian-hand-heading span { font-size:8px; }
  .premium-hand-cards,.premium-hand-dock .power-tray-cards { gap:5px; padding:5px 2px 2px; }
  .premium-hand-card,.premium-hand-dock .power-choice-card { flex-basis:94px; }
  .premium-hand-play img,.premium-hand-dock .power-choice-play img { height:105px; }
  .premium-hand-play strong,.premium-hand-dock .power-choice-name { font-size:11px; }
  .premium-hand-play small { font-size:8px; }
  .hand-stats { font-size:7px; gap:2px; }.hand-stats b { padding:1px; }
  .premium-hand-dock .power-choice-preview { font-size:9px; }
  .premium-hand-dock .power-choice-play { padding:4px; gap:3px; }
  .premium-hand-zoom,.premium-hand-dock .power-choice-zoom { width:28px !important; height:28px !important; font-size:22px !important; }
  .hand-turn-tools { gap:4px; font-size:10px; }.hand-turn-tools button { min-height:30px; font-size:10px; }
  .base-plan-progress { padding:6px; font-size:11px; }.base-power-pips { margin:4px 0; }.base-power-pips i { height:22px; }
  body.in-game .readable-game-guide .guide-play-pane .universe-action > .action-panel { gap:7px !important; }
}
@media (prefers-reduced-motion:reduce) { .gu-flying-card { display:none; } .gu-card-land,.gu-challenge-flip,.gu-score-pulse,.hand-arrive .premium-hand-card,.hand-arrive .power-choice-card { animation:none !important; } }
body.reduce-motion .gu-flying-card { display:none; }
body.reduce-motion .gu-card-land,body.reduce-motion .gu-challenge-flip,body.reduce-motion .gu-score-pulse,body.reduce-motion .hand-arrive .premium-hand-card,body.reduce-motion .hand-arrive .power-choice-card { animation:none !important; }
