/* Seat the Queen v0.76 — gameplay/UI/session hotfix r2.
   Final cascade layer for the approved 1920x1080 composition. */

/* Slightly shorter and wider physical cards with a denser information face. */
#game-screen .card{aspect-ratio:3/4!important}

/* Approved bespoke card faces. Semantic text remains in the DOM and in each
   card's accessible label; only the duplicated visual layers are hidden. */
.card.card-art-seven-hearts,
.card.card-art-seven-diamonds,
.card.card-art-eight-diamonds,
.card.card-art-nine-diamonds,
.card.card-art-ten-diamonds,
.card.card-art-seven-clubs,
.card.card-art-eight-clubs,
.card.card-art-nine-clubs,
.card.card-art-ten-clubs,
.card.card-art-seven-spades,
.card.card-art-eight-spades,
.card.card-art-nine-spades,
.card.card-art-ten-spades{
  background-color:transparent!important;
  background-position:center!important;
  background-size:100% 100%!important;
  background-repeat:no-repeat!important;
  border-color:#d2a541!important;
}
.card.card-art-seven-hearts{background-image:url("/assets/previews/card-seven-hearts-v076-preview-transparent.png")!important}
.card.card-art-seven-diamonds{background-image:url("/assets/previews/card-seven-diamonds-v076-preview-transparent.png")!important}
.card.card-art-eight-diamonds{background-image:url("/assets/previews/card-eight-diamonds-v076-preview-transparent.png")!important}
.card.card-art-nine-diamonds{background-image:url("/assets/previews/card-nine-diamonds-v076-preview-transparent.png")!important}
.card.card-art-ten-diamonds{background-image:url("/assets/previews/card-ten-diamonds-v076-preview-transparent.png")!important}
.card.card-art-seven-clubs{background-image:url("/assets/previews/card-seven-clubs-v076-preview-transparent.png")!important}
.card.card-art-eight-clubs{background-image:url("/assets/previews/card-eight-clubs-v076-preview-transparent.png")!important}
.card.card-art-nine-clubs{background-image:url("/assets/previews/card-nine-clubs-v076-preview-transparent.png")!important}
.card.card-art-ten-clubs{background-image:url("/assets/previews/card-ten-clubs-v076-preview-transparent.png")!important}
.card.card-art-seven-spades{background-image:url("/assets/previews/card-seven-spades-v076-preview-transparent.png")!important}
.card.card-art-eight-spades{background-image:url("/assets/previews/card-eight-spades-v076-preview-transparent.png")!important}
.card.card-art-nine-spades{background-image:url("/assets/previews/card-nine-spades-v076-preview-transparent.png")!important}
.card.card-art-ten-spades{background-image:url("/assets/previews/card-ten-spades-v076-preview-transparent.png")!important}
.card:is(.card-art-seven-hearts,.card-art-seven-diamonds,.card-art-eight-diamonds,.card-art-nine-diamonds,.card-art-ten-diamonds,.card-art-seven-clubs,.card-art-eight-clubs,.card-art-nine-clubs,.card-art-ten-clubs,.card-art-seven-spades,.card-art-eight-spades,.card-art-nine-spades,.card-art-ten-spades)::before,
.card:is(.card-art-seven-hearts,.card-art-seven-diamonds,.card-art-eight-diamonds,.card-art-nine-diamonds,.card-art-ten-diamonds,.card-art-seven-clubs,.card-art-eight-clubs,.card-art-nine-clubs,.card-art-ten-clubs,.card-art-seven-spades,.card-art-eight-spades,.card-art-nine-spades,.card-art-ten-spades)::after{display:none!important}
.card:is(.card-art-seven-hearts,.card-art-seven-diamonds,.card-art-eight-diamonds,.card-art-nine-diamonds,.card-art-ten-diamonds,.card-art-seven-clubs,.card-art-eight-clubs,.card-art-nine-clubs,.card-art-ten-clubs,.card-art-seven-spades,.card-art-eight-spades,.card-art-nine-spades,.card-art-ten-spades)>.card-rank,
.card:is(.card-art-seven-hearts,.card-art-seven-diamonds,.card-art-eight-diamonds,.card-art-nine-diamonds,.card-art-ten-diamonds,.card-art-seven-clubs,.card-art-eight-clubs,.card-art-nine-clubs,.card-art-ten-clubs,.card-art-seven-spades,.card-art-eight-spades,.card-art-nine-spades,.card-art-ten-spades)>.card-symbol,
.card:is(.card-art-seven-hearts,.card-art-seven-diamonds,.card-art-eight-diamonds,.card-art-nine-diamonds,.card-art-ten-diamonds,.card-art-seven-clubs,.card-art-eight-clubs,.card-art-nine-clubs,.card-art-ten-clubs,.card-art-seven-spades,.card-art-eight-spades,.card-art-nine-spades,.card-art-ten-spades)>.card-suit-label,
.card:is(.card-art-seven-hearts,.card-art-seven-diamonds,.card-art-eight-diamonds,.card-art-nine-diamonds,.card-art-ten-diamonds,.card-art-seven-clubs,.card-art-eight-clubs,.card-art-nine-clubs,.card-art-ten-clubs,.card-art-seven-spades,.card-art-eight-spades,.card-art-nine-spades,.card-art-ten-spades)>.card-name,
.card:is(.card-art-seven-hearts,.card-art-seven-diamonds,.card-art-eight-diamonds,.card-art-nine-diamonds,.card-art-ten-diamonds,.card-art-seven-clubs,.card-art-eight-clubs,.card-art-nine-clubs,.card-art-ten-clubs,.card-art-seven-spades,.card-art-eight-spades,.card-art-nine-spades,.card-art-ten-spades)>.card-effect{opacity:0!important}

/* Complete the approved Hearts number family. */
.card.card-art-eight-hearts,
.card.card-art-nine-hearts,
.card.card-art-ten-hearts{
  background-color:transparent!important;
  background-position:center!important;
  background-size:100% 100%!important;
  background-repeat:no-repeat!important;
  border-color:#d2a541!important;
}
.card.card-art-eight-hearts{background-image:url("/assets/previews/card-eight-hearts-v076-preview-transparent.png")!important}
.card.card-art-nine-hearts{background-image:url("/assets/previews/card-nine-hearts-v076-preview-transparent.png")!important}
.card.card-art-ten-hearts{background-image:url("/assets/previews/card-ten-hearts-v076-preview-transparent.png")!important}
.card:is(.card-art-eight-hearts,.card-art-nine-hearts,.card-art-ten-hearts)::before,
.card:is(.card-art-eight-hearts,.card-art-nine-hearts,.card-art-ten-hearts)::after{display:none!important}
.card:is(.card-art-eight-hearts,.card-art-nine-hearts,.card-art-ten-hearts)>.card-rank,
.card:is(.card-art-eight-hearts,.card-art-nine-hearts,.card-art-ten-hearts)>.card-symbol,
.card:is(.card-art-eight-hearts,.card-art-nine-hearts,.card-art-ten-hearts)>.card-suit-label,
.card:is(.card-art-eight-hearts,.card-art-nine-hearts,.card-art-ten-hearts)>.card-name,
.card:is(.card-art-eight-hearts,.card-art-nine-hearts,.card-art-ten-hearts)>.card-effect{opacity:0!important}

/* Ace, Jack, and King are neutral royals: one shared face each, never per-suit. */
.card.card-art-ace,
.card.card-art-jack,
.card.card-art-king{
  background-color:transparent!important;
  background-position:center!important;
  background-size:100% 100%!important;
  background-repeat:no-repeat!important;
  border-color:#d2a541!important;
}
.card.card-art-ace{background-image:url("/assets/previews/card-ace-v076-preview-transparent.png")!important}
.card.card-art-jack{background-image:url("/assets/previews/card-jack-v076-preview-transparent.png")!important}
.card.card-art-king{background-image:url("/assets/previews/card-king-v076-preview-transparent.png")!important}
.card:is(.card-art-ace,.card-art-jack,.card-art-king)::before,
.card:is(.card-art-ace,.card-art-jack,.card-art-king)::after{display:none!important}
.card:is(.card-art-ace,.card-art-jack,.card-art-king)>.card-rank,
.card:is(.card-art-ace,.card-art-jack,.card-art-king)>.card-symbol,
.card:is(.card-art-ace,.card-art-jack,.card-art-king)>.card-suit-label,
.card:is(.card-art-ace,.card-art-jack,.card-art-king)>.card-name,
.card:is(.card-art-ace,.card-art-jack,.card-art-king)>.card-effect{opacity:0!important}

/* Special Cards candidate: shared rare-card frame with distinct production art. */
.card.card-art-royal-summons,.card.card-art-double{
  background-size:cover!important;background-position:center!important;
  border:2px solid #d9aa4e!important;box-shadow:inset 0 0 0 1px #fff0a855,0 0 13px #963cff88!important;
  color:#fff4d0!important;overflow:hidden
}
.card.card-art-royal-summons{background-image:url("/assets/card-royal-summons-special-r90.png")!important}
.card.card-art-double{background-image:url("/assets/card-double-special-r90.png")!important}
.card:is(.card-art-royal-summons,.card-art-double)::before{
  content:"SPECIAL"!important;display:block!important;position:absolute!important;inset:auto 8% 30% 8%!important;
  padding:2px 4px!important;background:#17091dcc!important;border:1px solid #d9aa4e!important;
  color:#f5d98b!important;font:700 clamp(7px,.55vw,10px)/1 Cinzel,serif!important;letter-spacing:.18em!important;text-align:center!important
}
.card:is(.card-art-royal-summons,.card-art-double)::after{
  content:""!important;display:block!important;position:absolute!important;inset:68% 0 0!important;background:linear-gradient(transparent,#100713 22%)!important
}
.card:is(.card-art-royal-summons,.card-art-double)>.card-rank,.card:is(.card-art-royal-summons,.card-art-double)>.card-symbol{display:none!important}
.card:is(.card-art-royal-summons,.card-art-double)>.card-name{z-index:2!important;color:#ffe7a1!important;text-shadow:0 1px 3px #000!important}
.card:is(.card-art-royal-summons,.card-art-double)>.card-effect{z-index:2!important;color:#fff9e9!important;text-shadow:0 1px 2px #000!important}
@media (prefers-reduced-motion:no-preference){.resolution-focus-card.card-art-royal-summons,.resolution-focus-card.card-art-double{animation:special-card-pulse .7s ease-out}}
@keyframes special-card-pulse{0%{filter:brightness(1)}45%{filter:brightness(1.3) drop-shadow(0 0 12px #c385ff)}100%{filter:brightness(1)}}

/* Approved suit Queen faces. Override the legacy portraits for both the live
   Queen's Path and resolution playback without changing incomplete suits. */
.queen-marker.hearts,
.result-track .queen-marker.hearts{
  background-color:transparent!important;
  background-image:url("/assets/previews/card-queen-hearts-v076-preview-transparent.png")!important;
  background-position:center!important;
  background-size:100% 100%!important;
  background-repeat:no-repeat!important;
}
.queen-marker.spades,
.result-track .queen-marker.spades{
  background-color:transparent!important;
  background-image:url("/assets/previews/card-queen-spades-v076-preview-transparent.png")!important;
  background-position:center!important;
  background-size:100% 100%!important;
  background-repeat:no-repeat!important;
}
.queen-marker.clubs,
.result-track .queen-marker.clubs{
  background-color:transparent!important;
  background-image:url("/assets/previews/card-queen-clubs-v076-preview-transparent.png")!important;
  background-position:center!important;
  background-size:100% 100%!important;
  background-repeat:no-repeat!important;
}
.queen-marker.diamonds,
.result-track .queen-marker.diamonds{
  background-color:transparent!important;
  background-image:url("/assets/previews/card-queen-diamonds-v076-preview-transparent.png")!important;
  background-position:center!important;
  background-size:100% 100%!important;
  background-repeat:no-repeat!important;
}

@media (min-width:1000px) and (min-height:720px){
  /* Final approved 16:9 hierarchy: generous Courts and Queen's Path,
     a compact Sequence, then one readable straight row of cards. */
  #game-screen.solo-hud .royal-board{
    grid-template-rows:120px 220px 132px minmax(0,352px) 120px!important;
  }
  #game-screen.solo-hud .court-strip,
  #game-screen.solo-hud .court-and-resources{
    height:120px!important;
    min-height:120px!important;
  }
  #game-screen.solo-hud .court-and-resources .court-strip{height:120px!important}
  #game-screen.solo-hud:not(.perspective-ace) .ace-court-strip>.court-name,
  #game-screen.solo-hud.perspective-ace .human-court-strip>.court-name{
    display:block!important;
    top:-10px!important;
    transform:none!important;
  }
  #game-screen.solo-hud .court-name{
    left:12px!important;
    right:12px!important;
    width:auto!important;
    max-width:none!important;
    transform:none!important;
    overflow:visible!important;
    text-align:center!important;
    z-index:4!important;
    text-shadow:0 2px 5px #070309,0 0 12px #070309!important;
  }
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="hearts"]{
    background:#09060d url("/assets/court-hearts-empty-v076.jpg") center/100% 100% no-repeat!important;
  }
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="diamonds"]{
    background:#09060d url("/assets/court-diamonds-empty-v076.jpg") center/100% 100% no-repeat!important;
  }
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="clubs"]{
    background:#09060d url("/assets/court-clubs-empty-v076.jpg") center/100% 100% no-repeat!important;
  }
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="spades"]{
    background:#09060d url("/assets/court-spades-empty-v076.jpg") center/100% 100% no-repeat!important;
  }
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="hearts"],
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="diamonds"],
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="clubs"],
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="spades"]{
    padding:0!important;
    border-color:transparent!important;
    box-shadow:none!important;
  }
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="hearts"]::before,
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="hearts"]::after,
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="diamonds"]::before,
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="diamonds"]::after,
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="clubs"]::before,
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="clubs"]::after,
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="spades"]::before,
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="spades"]::after,
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="hearts"]>*,
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="diamonds"]>*,
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="clubs"]>*,
  #game-screen.solo-hud .queen-seat:not(.seated)[data-suit="spades"]>*{
    opacity:0!important;
  }
  #game-screen.solo-hud .queen-seat.spades::before{
    left:0!important;
    top:0!important;
    bottom:0!important;
    width:62px!important;
    height:100%!important;
    background-position:center!important;
    background-size:contain!important;
  }
  #game-screen.solo-hud .queen-seat.spades .seat-orb{
    left:19px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
  }
  #game-screen.solo-hud:not(.perspective-ace) .human-court-strip>.court-name,
  #game-screen.solo-hud.perspective-ace .ace-court-strip>.court-name{
    left:12px!important;
    right:12px!important;
    width:auto!important;
    max-width:none!important;
    transform:none!important;
    text-align:center!important;
  }
  #game-screen.solo-hud .royal-edge{height:220px!important}
  #game-screen.solo-hud .queue-duel{
    height:132px!important;
    grid-template-columns:minmax(0,1fr) 176px minmax(0,1fr)!important;
  }
  #game-screen.solo-hud .human-queue-side{order:1!important}
  #game-screen.solo-hud .execution-order{order:2!important}
  #game-screen.solo-hud .ace-queue-side{order:3!important}
  #game-screen.solo-hud .opponent-queue,
  #game-screen.solo-hud .team-slots,
  #game-screen.solo-hud .back-card,
  #game-screen.solo-hud .slot{
    height:88px!important;
    min-height:88px!important;
  }
  #game-screen.solo-hud .human-queue-row{height:94px!important}

  /* The outside edges belong to Future Beckon. The entire inner span belongs
     to the three Waiting positions, matching the approved concept. */
  #game-screen.solo-hud .waiting-row{
    left:12px!important;
    right:12px!important;
    width:auto!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:clamp(24px,2vw,42px)!important;
    padding:0 4px!important;
  }
  #game-screen.solo-hud .waiting-side{
    width:100%!important;
    min-width:0!important;
    height:188px!important;
    display:grid!important;
    grid-auto-flow:row!important;
    align-items:stretch!important;
    gap:12px!important;
  }
  #game-screen.solo-hud .waiting-side-left{
    grid-template-columns:170px minmax(0,380px)!important;
    justify-content:start!important;
  }
  #game-screen.solo-hud .waiting-side-right{
    grid-template-columns:minmax(0,380px) 170px!important;
    justify-content:end!important;
  }
  #game-screen.solo-hud .waiting-side-left .waiting-resource{grid-column:1!important;order:initial!important}
  #game-screen.solo-hud .waiting-side-left .waiting-cluster{grid-column:2!important;order:initial!important}
  #game-screen.solo-hud .waiting-side-right .waiting-cluster{grid-column:1!important;order:initial!important}
  #game-screen.solo-hud .waiting-side-right .waiting-resource{grid-column:2!important;order:initial!important}
  #game-screen.solo-hud.perspective-ace .waiting-side-left{grid-template-columns:minmax(0,380px) 170px!important;justify-content:end!important}
  #game-screen.solo-hud.perspective-ace .waiting-side-right{grid-template-columns:170px minmax(0,380px)!important;justify-content:start!important}
  #game-screen.solo-hud.perspective-ace .waiting-side-left .waiting-cluster{grid-column:1!important}
  #game-screen.solo-hud.perspective-ace .waiting-side-left .waiting-resource{grid-column:2!important}
  #game-screen.solo-hud.perspective-ace .waiting-side-right .waiting-resource{grid-column:1!important}
  #game-screen.solo-hud.perspective-ace .waiting-side-right .waiting-cluster{grid-column:2!important}

  #game-screen.solo-hud .waiting-side .waiting-resource{
    width:170px!important;
    min-width:170px!important;
    height:188px!important;
    min-height:188px!important;
    padding:12px 10px 10px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 58px!important;
    grid-template-rows:auto minmax(0,1fr) minmax(0,1fr)!important;
    align-content:stretch!important;
    border-color:rgba(205,151,61,.66)!important;
    background:linear-gradient(180deg,rgba(39,17,48,.98),rgba(9,5,13,.99))!important;
    box-shadow:inset 0 0 28px rgba(141,52,168,.24),0 5px 16px rgba(0,0,0,.5)!important;
  }
  #game-screen.solo-hud .waiting-resource>span{grid-column:1/3!important;grid-row:1!important;font-size:10px!important;line-height:1.12!important;text-align:center!important}
  #game-screen.solo-hud .waiting-resource>small{grid-column:1!important;grid-row:2!important;align-self:center!important;justify-self:start!important;font-size:9px!important}
  #game-screen.solo-hud .waiting-resource>strong{
    grid-column:2!important;
    grid-row:2!important;
    width:54px!important;
    height:54px!important;
    font-size:24px!important;
    border-color:#e7bc58!important;
    background:radial-gradient(circle at 38% 30%,#f0b9ff 0 4%,#832aae 22%,#270d38 58%,#09050f 72%)!important;
    box-shadow:inset 0 0 12px #edb8ff80,0 0 0 2px #3d174d,0 0 20px #c14be988!important;
  }
  #game-screen.solo-hud .waiting-resource>em{grid-column:1/3!important;grid-row:3!important}
  #game-screen.solo-hud .waiting-resource .mini-deck{display:none!important}

  #game-screen.solo-hud .waiting-side .waiting-cluster{
    position:relative!important;
    width:100%!important;
    min-width:0!important;
    height:188px!important;
    min-height:188px!important;
    padding:8px!important;
    display:grid!important;
    grid-template-columns:1fr auto 1fr!important;
    grid-template-rows:20px minmax(0,1fr)!important;
    align-content:stretch!important;
    border:1px solid rgba(184,119,200,.24)!important;
    border-radius:8px!important;
    background:linear-gradient(180deg,rgba(24,12,30,.72),rgba(7,4,10,.4))!important;
  }
  #game-screen.solo-hud:not(.perspective-ace) .waiting-side-left .waiting-cluster,
  #game-screen.solo-hud.perspective-ace .waiting-side-right .waiting-cluster{
    --waiting-art-left:1.2%;
    --waiting-art-right:5.8%;
    --waiting-art-top:21.4%;
    --waiting-art-bottom:4.8%;
    --waiting-art-gap:4%;
    background:#09050d url("/assets/waiting-your-empty-v076.jpg") center/100% 100% no-repeat!important;
  }
  #game-screen.solo-hud:not(.perspective-ace) .waiting-side-right .waiting-cluster,
  #game-screen.solo-hud.perspective-ace .waiting-side-left .waiting-cluster{
    --waiting-art-left:4.8%;
    --waiting-art-right:1.5%;
    --waiting-art-top:18.2%;
    --waiting-art-bottom:6.1%;
    --waiting-art-gap:4.5%;
    background:#09050d url("/assets/waiting-opponent-empty-v076.jpg") center/100% 100% no-repeat!important;
  }
  #game-screen.solo-hud .waiting-cluster>span:first-child{
    grid-column:2!important;
    grid-row:1!important;
    align-self:center!important;
    justify-self:center!important;
    color:#e2c46d!important;
    font:700 11px/1 Georgia,serif!important;
    white-space:nowrap!important;
    opacity:0!important;
  }
  #game-screen.solo-hud .waiting-capacity{
    grid-column:3!important;
    grid-row:1!important;
    align-self:center!important;
    justify-self:end!important;
    padding:3px 7px!important;
    border:1px solid rgba(208,158,65,.48)!important;
    border-radius:999px!important;
    color:#c9b8cd!important;
    font:800 7px/1 Inter,system-ui,sans-serif!important;
    letter-spacing:.08em!important;
    white-space:nowrap!important;
    opacity:0!important;
  }
  #game-screen.solo-hud .waiting-side .waiting-queen{
    grid-column:1/4!important;
    grid-row:2!important;
    width:100%!important;
    min-width:0!important;
    height:100%!important;
    min-height:0!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    align-items:stretch!important;
    gap:8px!important;
  }
  #game-screen.solo-hud .waiting-side .waiting-queen-entry{
    width:auto!important;
    min-width:0!important;
    height:100%!important;
    min-height:0!important;
    padding:6px 4px!important;
    border:1px solid rgba(202,152,58,.64)!important;
    border-radius:7px!important;
    background:linear-gradient(180deg,rgba(32,14,39,.96),rgba(5,3,8,.99))!important;
    box-shadow:inset 0 0 0 1px rgba(245,207,119,.1),inset 0 0 18px rgba(0,0,0,.7),0 0 9px rgba(209,158,62,.07)!important;
  }
  #game-screen.solo-hud .waiting-side .waiting-position-empty,
  #game-screen.solo-hud .waiting-side .waiting-queen .waiting-empty i{
    width:auto!important;
    min-width:0!important;
    height:100%!important;
    min-height:0!important;
    padding:0!important;
    border:0!important;
    background:none!important;
    box-shadow:none!important;
    opacity:0!important;
  }
  #game-screen.solo-hud .waiting-empty{grid-column:1/4!important;height:100%!important;gap:8px!important}
  #game-screen.solo-hud .waiting-empty i{display:grid!important;place-items:center!important}
  #game-screen.solo-hud .waiting-side .waiting-queen .waiting-empty i::after{
    content:""!important;
  }
  #game-screen.solo-hud .waiting-queen-entry strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:9px!important}
  #game-screen.solo-hud .waiting-queen-entry small{font-size:7px!important;line-height:1.05!important}
  #game-screen.solo-hud .waiting-position-label,
  #game-screen.solo-hud .waiting-position-empty b{font-size:7px!important}
  #game-screen.solo-hud .waiting-progress-pip{width:17px!important;height:17px!important;font-size:7px!important}
  /* Position Waiting content over the exact three card apertures baked into
     each side's artwork. The art owns the border; entries must not draw a
     second, misaligned card frame over it. */
  #game-screen.solo-hud .waiting-side .waiting-queen{
    position:absolute!important;
    left:var(--waiting-art-left)!important;
    right:var(--waiting-art-right)!important;
    top:var(--waiting-art-top)!important;
    bottom:var(--waiting-art-bottom)!important;
    grid-column:auto!important;
    grid-row:auto!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    gap:var(--waiting-art-gap)!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }
  #game-screen.solo-hud .waiting-side .waiting-queen-entry,
  #game-screen.solo-hud .waiting-side .waiting-position-empty{
    width:auto!important;
    height:100%!important;
    max-height:100%!important;
    padding:7px 4px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  #game-screen.solo-hud .waiting-cluster.court-lighting{animation:court-lighting .95s ease-out both}
  #game-screen.solo-hud .waiting-cluster>.waiting-flourish{position:absolute!important;left:50%!important;bottom:3px!important;z-index:20!important}

  #game-screen.solo-hud .hand .card{
    /* Let the available hand-row height determine width through the approved
       3:4 card ratio. Flex growth previously stretched these into strips. */
    flex:0 0 auto!important;
    width:auto!important;
    max-width:none!important;
    height:min(calc(100% - 2px),190px)!important;
    aspect-ratio:3/4!important;
    margin-left:0!important;
    padding:7px 6px 6px!important;
    display:grid!important;
    grid-template-rows:auto 36% auto minmax(0,1fr)!important;
    align-content:stretch!important;
    justify-content:stretch!important;
    overflow:visible!important;
    transform:none!important;
  }
  #game-screen.solo-hud .hand{
    top:36px!important;
    bottom:auto!important;
    height:calc(100% - 36px)!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:clamp(5px,.45vw,9px)!important;
    padding:7px 8px 1px!important;
  }
  #game-screen.solo-hud .hand-heading{text-align:center!important}
  #game-screen.solo-hud .local-player-chip{display:none!important}
  #game-screen.solo-hud .hand .card:first-child{margin-left:0!important}
  #game-screen.solo-hud .hand .card:hover{
    transform:translateY(-10px) scale(1.035)!important;
  }
  #game-screen.solo-hud .hand .card-rank{grid-row:1!important;align-self:start!important;font-size:clamp(16px,1.15vw,21px)!important}
  #game-screen.solo-hud .hand .card-symbol{
    position:static!important;
    grid-row:2!important;
    align-self:center!important;
    justify-self:center!important;
    transform:none!important;
    font-size:clamp(34px,2.7vw,50px)!important;
  }
  #game-screen.solo-hud .hand .card-name{
    grid-row:3!important;
    align-self:start!important;
    margin:0!important;
    padding:4px 1px 3px!important;
    font-size:9px!important;
    line-height:1.05!important;
  }
  #game-screen.solo-hud .hand .card-effect{
    grid-row:4!important;
    align-self:stretch!important;
    margin:0!important;
    padding:6px 2px 0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
    font-size:9px!important;
    line-height:1.11!important;
    text-align:center!important;
  }
  #game-screen.solo-hud .hand .card-suit-label{position:absolute!important;left:6px!important;right:6px!important;top:43%!important}
}

@media (min-width:1000px) and (max-width:1500px) and (min-height:720px){
  #game-screen.solo-hud .waiting-side-left{grid-template-columns:132px minmax(0,308px)!important}
  #game-screen.solo-hud .waiting-side-right{grid-template-columns:minmax(0,308px) 132px!important}
  #game-screen.solo-hud.perspective-ace .waiting-side-left{grid-template-columns:minmax(0,308px) 132px!important}
  #game-screen.solo-hud.perspective-ace .waiting-side-right{grid-template-columns:132px minmax(0,308px)!important}
  #game-screen.solo-hud .waiting-side .waiting-resource{width:132px!important;min-width:132px!important}
  #game-screen.solo-hud .hand{gap:2px!important}
  #game-screen.solo-hud .hand .card{width:auto!important;max-width:none!important;height:calc(100% - 2px)!important;margin-left:-11px!important}
  #game-screen.solo-hud .hand .card:first-child{margin-left:0!important}
  #game-screen.solo-hud .hand .card-effect{font-size:7.5px!important}
}

@media (prefers-reduced-motion:reduce){#game-screen.solo-hud .waiting-cluster.court-lighting{animation:none!important}}
body.reduce-motion #game-screen.solo-hud .waiting-cluster.court-lighting{animation:none!important}

/* r95 online play hotfix — the 2v2 Court still used the former three-column
   hand shell after Future Beckon/Waiting moved into the Path. That placed the
   only remaining child, .hand-center, into the obsolete 95px left column and
   left an unused sixth board row. Give Duo its real five-region Court and a
   deliberate teammate-hand rail. */
@media (min-width:1000px) and (min-height:720px){
  #game-screen.duo-hud .royal-board{
    height:calc(100vh - 86px)!important;
    margin:7px 0 0!important;
    padding:8px 10px 10px!important;
    display:grid!important;
    grid-template-rows:86px 210px 158px minmax(190px,1fr) 86px!important;
    gap:8px!important;
    overflow:hidden!important;
  }
  #game-screen.duo-hud .ace-court-strip{grid-row:1!important}
  #game-screen.duo-hud .royal-edge{grid-row:2!important;min-height:0!important}
  #game-screen.duo-hud .queue-duel{grid-row:3!important;min-height:0!important}
  #game-screen.duo-hud .hand-zone{grid-row:4!important}
  #game-screen.duo-hud .court-and-resources{grid-row:5!important}
  #game-screen.duo-hud.perspective-ace .court-and-resources{grid-row:1!important}
  #game-screen.duo-hud.perspective-ace .ace-court-strip{grid-row:5!important}

  #game-screen.duo-hud .hand-zone{
    position:relative!important;
    inset:auto!important;
    width:99%!important;
    height:100%!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:0!important;
    display:block!important;
    grid-template-columns:none!important;
    background:none!important;
    box-shadow:none!important;
  }
  #game-screen.duo-hud .hand-center{
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  #game-screen.duo-hud .hand-heading{
    left:16px!important;
    right:clamp(310px,25vw,430px)!important;
    padding:0!important;
    text-align:center!important;
  }
  #game-screen.duo-hud .hand{
    top:34px!important;
    right:clamp(300px,24vw,420px)!important;
    bottom:6px!important;
    left:8px!important;
    width:auto!important;
    height:auto!important;
    padding:2px 12px 4px!important;
    justify-content:center!important;
    overflow:visible!important;
  }
  #game-screen.duo-hud .hand .card{
    flex:0 1 108px!important;
    width:clamp(76px,6vw,108px)!important;
    max-width:108px!important;
    height:100%!important;
    margin-left:-8px!important;
  }
  #game-screen.duo-hud .hand .card:first-child{margin-left:0!important}
  #game-screen.duo-hud .teammate-hand-wrap{
    position:absolute!important;
    top:40px!important;
    right:10px!important;
    bottom:8px!important;
    width:clamp(282px,22vw,390px)!important;
    min-height:0!important;
    margin:0!important;
    padding:6px 8px!important;
    display:grid!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    border:1px solid rgba(124,78,139,.48)!important;
    border-radius:8px!important;
    background:linear-gradient(180deg,rgba(29,14,36,.9),rgba(8,5,11,.96))!important;
    overflow:hidden!important;
  }
  #game-screen.duo-hud .teammate-hand-wrap.hidden{display:none!important}
  #game-screen.duo-hud .teammate-hand-wrap>span{
    margin:0 0 4px!important;
    color:#d8bc71!important;
    font:700 9px/1.1 Georgia,serif!important;
  }
  #game-screen.duo-hud .teammate-hand{
    min-height:0!important;
    max-height:none!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:3px!important;
    overflow:hidden!important;
  }
  #game-screen.duo-hud .teammate-hand .card{
    flex:0 1 52px!important;
    width:52px!important;
    min-width:38px!important;
    height:100%!important;
    max-height:82px!important;
  }
}

/* The removed resource sidebars must not reserve hand columns at any desktop
   height, including a 1280×720 browser viewport with visible browser chrome. */
#game-screen.duo-hud .hand-zone{display:block!important;grid-template-columns:none!important}
#game-screen.duo-hud .hand-center{grid-column:auto!important;width:100%!important}

@media (min-width:1000px) and (max-height:719px) and (pointer:fine){
  #game-screen.duo-hud .royal-board{
    grid-template-rows:70px 150px 110px minmax(130px,1fr) 70px!important;
    gap:6px!important;
    overflow:hidden!important;
  }
  #game-screen.duo-hud .ace-court-strip{grid-row:1!important}
  #game-screen.duo-hud .royal-edge{grid-row:2!important;min-height:0!important}
  #game-screen.duo-hud .queue-duel{grid-row:3!important;min-height:0!important}
  #game-screen.duo-hud .hand-zone{grid-row:4!important;min-height:0!important}
  #game-screen.duo-hud .court-and-resources{grid-row:5!important}
  #game-screen.duo-hud.perspective-ace .court-and-resources{grid-row:1!important}
  #game-screen.duo-hud.perspective-ace .ace-court-strip{grid-row:5!important}
  #game-screen.duo-hud .hand{right:276px!important}
  #game-screen.duo-hud .teammate-hand-wrap{
    position:absolute!important;
    top:30px!important;
    right:6px!important;
    bottom:4px!important;
    width:264px!important;
    margin:0!important;
    padding:3px 5px!important;
    overflow:hidden!important;
  }
  #game-screen.duo-hud .teammate-hand-wrap.hidden{display:none!important}
  #game-screen.duo-hud .teammate-hand-wrap>span{margin:0!important;font-size:8px!important}
  #game-screen.duo-hud .teammate-hand{max-height:72px!important;overflow:hidden!important}
  #game-screen.duo-hud .teammate-hand .card{width:38px!important;min-width:38px!important;height:58px!important}
}
