/* Tutorial header controls belong to the cabinet, with no surrounding well. */
#modal-help .help-game-tabs.seg {width:100%;padding:0 0 4px;margin:0;gap:10px;border:0;border-bottom:2px solid #ffffff16;border-radius:0;background:none;box-shadow:none;}
#modal-help .help-game-tabs.seg button {border-radius:7px 7px 3px 3px;min-height:44px;}
#modal-help .help-game-tabs.seg button.active {transform:none;box-shadow:0 3px 0 var(--ui-primary-shadow),inset 0 1px #fff4;}
.guide-mode-tabs {display:flex;justify-content:center;gap:8px;flex:0 0 auto;}
.guide-mode-tabs button {font:650 17px/1.15 var(--ui-display);color:var(--cream);border:0;border-bottom:3px solid transparent;background:transparent;padding:9px 15px;cursor:pointer;}
.guide-mode-tabs button.active {color:var(--gold);border-bottom-color:var(--gold);}
.guide-mode-tabs button:focus-visible {outline:2px solid var(--gold);outline-offset:2px;}
.guide-chapters {grid-template-columns:repeat(6,minmax(0,1fr));}
#partnershipGuide .guide-goal {font:750 clamp(21px,3vw,29px)/1.2 var(--ui-display);text-align:center;color:var(--gold);margin:3px auto 16px;max-width:680px;}
.guide-start-practice {display:block;margin:22px auto 0;font-size:19px;}
.guide-turn-loop {display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin:14px 0 24px;color:var(--gold);}
.guide-turn-loop strong {padding:12px;background:#ffffff0a;border-radius:6px;}
.guide-rules {max-width:800px;margin:auto;padding:8px;}
.guide-rules h3 {color:var(--gold);font-size:24px;margin:0 0 12px;}
.guide-rules p {font:500 16px/1.5 var(--ui-display);color:var(--cream);}
.guide-rules details {padding:12px 0;border-bottom:1px solid #ffffff1a;}
.guide-rules summary {font:700 19px/1.2 var(--ui-display);color:var(--gold);cursor:pointer;}
.practice-window {max-width:930px;margin:auto;}
.practice-caption {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 12px;color:var(--cream);font-size:13px;line-height:1.3;}
.practice-caption strong {color:var(--gold);font-size:17px;flex-shrink:0;}
.practice-caption>span {max-width:470px;text-align:right;}
.practice-table {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 12px;padding:17px 16px 14px;border:3px solid #483d33;border-radius:16px;background:var(--felt-art) center/100% 100%;box-shadow:inset 0 0 0 2px #ffffff0b,0 4px 0 #0004;min-width:0;color:#fff2d2;}
.practice-seat {min-width:0;display:flex;flex-direction:column;align-items:center;gap:10px;padding:7px 5px;border:2px solid transparent;border-radius:8px;background:#151b172e;}
.practice-seat.taking-turn {border-color:#dfbd73;}
.practice-seat.teammate .practice-name {color:#d8f0b8;}
.practice-seat-2 {grid-column:2;grid-row:1;}
.practice-seat-3 {grid-column:1;grid-row:1;}
.practice-seat-1 {grid-column:3;grid-row:1;}
.practice-seat-0 {grid-column:1/-1;grid-row:3;justify-self:center;width:min(560px,100%);}
.practice-name {display:flex;align-items:center;gap:6px;font-size:13px;line-height:1.1;}
.practice-name svg {width:24px;height:24px;flex-shrink:0;}
.practice-name>span {font-size:12px;opacity:.75;}
.practice-hand {display:flex;justify-content:center;gap:0;max-width:100%;padding-left:13px;}
.practice-hand .guide-card.card {width:42px!important;height:59px!important;flex-basis:42px;margin-left:-13px!important;--card-w:42px;--card-h:59px;}
.practice-seat-0 .guide-card.card {width:55px!important;height:77px!important;flex-basis:55px;margin-left:-10px!important;--card-w:55px;--card-h:77px;}
.practice-center {grid-column:1/-1;grid-row:2;min-height:98px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;font-size:13px;}
.practice-center p {margin:0;}
.practice-piles,.practice-trick {display:flex;justify-content:center;gap:12px;align-items:center;flex-wrap:wrap;}
.practice-piles>div,.practice-trick>div {display:flex;flex-direction:column;align-items:center;gap:5px;}
.practice-trick small {font-size:11px;}
.practice-piles .guide-card.card,.practice-trick .guide-card.card {width:46px!important;height:65px!important;flex-basis:46px;--card-w:46px;--card-h:65px;}
.practice-back {width:46px;height:65px;background:var(--card-back);border:var(--deck-border);border-radius:var(--deck-radius);image-rendering:pixelated;}
.practice-out {font-size:15px;padding:18px;color:#ecdb9d;}
.practice-coach {display:grid;grid-template-columns:44px 1fr;gap:12px;margin:17px 0 10px;padding:14px;background:#ffffff07;border:1px solid #ffffff12;border-radius:9px;}
.practice-coach>span svg {width:44px;height:44px;}
.practice-coach h3 {font-size:21px;line-height:1.2;color:var(--gold);margin:0 0 7px;}
.practice-coach p {font:500 16px/1.45 var(--ui-display);color:var(--cream);margin:0;}
.practice-choices {display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:15px 0;}
.practice-choices .btn {font-size:17px;min-height:44px;white-space:normal;}
.practice-feedback {border-left:3px solid var(--gold);background:#caa55a18;padding:12px;font-size:15px;line-height:1.4;color:var(--cream);}
.practice-result {display:flex;gap:15px;flex-wrap:wrap;justify-content:center;}
.practice-result span {padding:9px 12px;background:#171916b3;border-radius:6px;}
.practice-result b {color:#f6d574;margin-left:5px;}
.practice-window .guide-pager {margin-bottom:8px;}
body.light #modal-help .help-game-tabs.seg {background:none;border-bottom-color:#624a362e;}
body.light .practice-coach {background:#ffffff40;border-color:#74572c26;}
/* Keep room controls close, with two columns when the screen can use them. */
.join-code-actions {display:grid;grid-template-columns:1fr 1.3fr;gap:13px;margin-top:5px;}
.join-code-actions .btn {width:100%;}
#screen-lobby-host>.cabinet {width:min(950px,94vw)!important;max-width:950px!important;}
@media(min-width:780px){
  #screen-lobby-host>.cabinet {display:grid!important;grid-template-columns:1fr 1fr;column-gap:35px;row-gap:12px;padding:25px 30px!important;align-items:center;max-height:94dvh!important;overflow:auto;}
  #screen-lobby-host .game-context,#screen-lobby-host .section-title {grid-column:1/-1;margin:0!important;}
  #screen-lobby-host .lobby-copy {grid-column:1;grid-row:3;margin:0;}
  #screen-lobby-host .room-code {grid-column:1;grid-row:4;margin:0;}
  #screen-lobby-host #btnCopyCode {grid-column:1;grid-row:5;}
  #screen-lobby-host .invite-link {grid-column:1;grid-row:6;max-width:100%;overflow-wrap:anywhere;}
  #screen-lobby-host .setup-row {grid-column:2;margin:0!important;}
  #screen-lobby-host .setup-row:has(#segPlayers) {grid-row:3;}
  #screen-lobby-host .setup-row:has(#segWinAt) {grid-row:4;}
  #screen-lobby-host .setup-row:has(#segJokers) {grid-row:5;}
  #screen-lobby-host .toggle-row {grid-column:2;margin:0;padding:8px 0;}
  #screen-lobby-host .seat-list {grid-column:1;grid-row:7/10;margin:0;}
  #screen-lobby-host .menu-buttons {grid-column:2;grid-row:9;gap:12px;margin:0;}
}
/* A small, consistent increase in the authored material overlays. */
body.felt-weave #feltBg::after,.cosmetic-table-preview[data-texture="weave"]::before,.locker-table-preview[data-texture="weave"]::before {opacity:.23;}
body.felt-baize #feltBg::after,.cosmetic-table-preview[data-texture="baize"]::before,.locker-table-preview[data-texture="baize"]::before {opacity:.19;}
body.felt-linen #feltBg::after,.cosmetic-table-preview[data-texture="linen"]::before,.locker-table-preview[data-texture="linen"]::before {opacity:.25;}
@media(max-width:760px){
  #modal-help .help-game-tabs.seg {gap:6px;}
  .guide-mode-tabs {gap:2px;}
  .guide-mode-tabs button {font-size:14px;padding:8px 11px;}
  .guide-chapters {grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;}
  .guide-chapters button {flex-direction:row;font-size:11px;padding:5px 1px;}
  .guide-chapters button b {width:20px;height:20px;flex-basis:20px;}
  .guide-start-practice {font-size:16px;}
  .practice-caption {align-items:flex-start;flex-direction:column;gap:4px;}
  .practice-caption>span {text-align:left;font-size:12px;}
  .practice-table {grid-template-columns:1fr 1fr;padding:10px 6px;gap:8px;}
  .practice-seat {padding:5px 2px;gap:7px;}
  .practice-seat-2 {grid-column:1/-1;grid-row:1;justify-self:center;width:70%;}
  .practice-seat-3 {grid-column:1;grid-row:2;}
  .practice-seat-1 {grid-column:2;grid-row:2;}
  .practice-center {grid-row:3;min-height:80px;}
  .practice-seat-0 {grid-row:4;}
  .practice-hand {padding-left:18px;}
  .practice-hand .guide-card.card {width:34px!important;height:48px!important;flex-basis:34px;margin-left:-18px!important;--card-w:34px;--card-h:48px;}
  .practice-seat-0 .practice-hand {padding-left:14px;}
  .practice-seat-0 .guide-card.card {width:40px!important;height:56px!important;flex-basis:40px;margin-left:-14px!important;--card-w:40px;--card-h:56px;}
  .practice-name {font-size:11px;gap:4px;}
  .practice-name svg {width:20px;height:20px;}
  .practice-coach {grid-template-columns:30px 1fr;gap:9px;padding:10px;margin-top:12px;}
  .practice-coach>span svg {width:30px;height:30px;}
  .practice-coach h3 {font-size:18px;}
  .practice-coach p {font-size:14px;line-height:1.4;}
  .practice-choices {gap:10px;}
  .practice-choices .btn {font-size:14px;padding:9px 12px;}
}
/* The neutral stock is a loading surface; ranks and artwork reveal together. */
.cardface[data-art-state="loading"],.card-pack-scope:not([data-art-state="ready"]):not([data-art-state="error"]) .cardface {visibility:hidden;}
.card:has(.cardface[data-art-state="loading"]),.card-pack-scope[data-art-state="loading"] .card {background:#eee1c7!important;}
.card:has(>.cardface[data-art-state="loading"])::before {content:'···';position:absolute;inset:0;display:grid;place-items:center;color:#8d7a63;font:600 23px/1 var(--ui-display);}
.cardface[data-art-state="error"] .court-portrait {background-image:none;}
.cardface[data-art-state="error"] .court-portrait::after {content:attr(data-court-rank);position:absolute;inset:0;display:grid;place-items:center;font:bold 40cqw/1 var(--deck-font);color:currentColor;}
.cardface[data-art-state="error"] :is(.cf-suit,.cf-pip,.cf-ace) {color:currentColor;}
.cardface[data-art-state="error"] :is(.cf-suit,.cf-pip,.cf-ace)::after {display:none;}
body[data-art-state="loading"] :is(.stock-pile,.fly-back,.practice-back),.card-pack-scope[data-art-state="loading"] .cosmetic-preview-back-real {background:#eee1c7!important;}
.title-card-fan:not([data-art-state="ready"]):not([data-art-state="error"]),.founder-tree-art:not([data-art-state="ready"]):not([data-art-state="error"]) {visibility:hidden;}
:is(.cosmetic-table-preview,.locker-table-preview,.progress-reward-icon)[data-art-state="loading"] {visibility:hidden;}
.cosmetic-preview-stage[data-art-state="loading"]>.cosmetic-stage-inner {visibility:hidden;}
.cosmetic-preview-stage[data-art-state="loading"]::after {content:'···';position:absolute;inset:0;display:grid;place-items:center;color:var(--gold);font-size:32px;}
/* Coached choices stay at hand while the miniature table can scroll. */
#modal-help .help-modal-v29[data-guide-view="practice"] .help-done-v29 {display:none;}
.guide-practice-controls {flex:0 0 auto;border-top:1px solid #ffffff14;padding:8px 4px 0;}
.guide-practice-controls[hidden] {display:none;}
.guide-practice-controls .practice-choices {margin:0 0 9px;}
.guide-practice-controls .guide-pager {margin:0;}
.guide-practice-controls .guide-pager .btn {min-height:32px;padding:5px 10px;font-size:13px;}
@media(min-width:761px){
 .practice-window {display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:12px 18px;max-width:none;}
 .practice-caption {grid-column:1/-1;margin-bottom:0;}
 .practice-table {grid-column:1;grid-row:2;gap:10px 6px;padding:12px 8px;}
 .practice-coach {grid-column:2;grid-row:2;align-self:center;grid-template-columns:1fr;margin:0;padding:18px;}
 .practice-coach>span svg {width:38px;height:38px;}
 .practice-coach p {font-size:16px;}
 .practice-name {font-size:11px;}
 .practice-hand .guide-card.card {width:33px!important;height:46px!important;flex-basis:33px;margin-left:-16px!important;--card-w:33px;--card-h:46px;}
 .practice-seat-0 .guide-card.card {width:46px!important;height:65px!important;flex-basis:46px;margin-left:-10px!important;--card-w:46px;--card-h:65px;}
 .practice-feedback {grid-column:2;}
}
@media(max-width:760px){
 .practice-window {display:flex;flex-direction:column;}
 .practice-caption {order:0;margin:0 0 8px;}
 .practice-coach {order:1;margin:0 0 10px;}
 .practice-table {order:3;}
 .practice-feedback {order:2;margin-bottom:10px;}
 .practice-center {min-height:60px;}
 .guide-practice-controls .practice-choices .btn {font-size:13px;min-height:38px;padding:7px 10px;}
 .guide-practice-controls .practice-choices {gap:8px;}
}
/* The journey is authored raster scenery; the reward panels remain real controls. */
#progressPathView {height:100%;display:flex;flex-direction:column;gap:10px;min-height:0;}
#progressPathView.hidden {display:none;}
#progressPathView .progress-next-v12 {height:auto;min-height:83px;flex:0 0 auto;grid-template-columns:auto minmax(0,1fr) auto;gap:9px 15px;}
#progressPathView .progress-earn-v12 {grid-column:2;grid-row:2;font-size:12px;justify-content:flex-start;}
#progressPathView .progress-next-label {grid-row:1/3;}
#progressPathView .progress-next-copy {font-size:23px;}
.founder-next-preview {grid-column:3;grid-row:1/3;display:flex;align-items:center;gap:7px;background:#19161077;border:2px solid #ad884c66;border-radius:8px;padding:7px 10px;cursor:pointer;color:var(--gold);font:700 14px/1 var(--ui-display);}
.founder-next-preview .progress-reward-icon {width:44px;height:44px;border-radius:6px;}
.founder-next-preview .reward-ui-icon {width:95%;height:95%;object-fit:contain;}
#progressPathView .progress-path-frame-v12 {height:auto;flex:1 1 auto;min-height:0;padding:0;background:#43323f;border-color:#7e664c66;}
#progressTrack.progress-track-v12 {display:block;height:100%;width:100%;overflow-x:hidden;overflow-y:auto;padding:0;scroll-snap-type:none;scrollbar-width:thin;scrollbar-color:#ad8b55 #352b30;}
#progressTrack::before {display:none!important;}
.founder-map {position:relative;width:min(700px,100%);aspect-ratio:1/3;min-height:1120px;margin:auto;}
.founder-tree-art {position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated;object-fit:fill;pointer-events:none;}
.founder-branches {position:absolute;inset:0;}
#progressTrack .progress-node {position:absolute;transform:translate(-50%,-50%);min-height:140px;width:230px;max-width:46%;padding:12px 10px;gap:7px;border:3px solid #191312;border-radius:10px;background:linear-gradient(#383027f2,#251e1bf5);box-shadow:0 5px 0 #1b1515bb,inset 0 1px #ffe9ba22;}
#progressTrack .progress-node.locked {opacity:1!important;filter:none!important;}
#progressTrack .progress-node:hover {filter:brightness(1.12)!important;}
#progressTrack .progress-node.current {border-color:#e2b35d;box-shadow:0 5px 0 #6f492a,inset 0 1px #ffe9ba66;}
#progressTrack .progress-node.unlocked {border-color:#849b69;}
#progressTrack .progress-node-level {font-size:16px;color:#f3cb7d;}
#progressTrack .progress-node-rewards {min-height:54px;gap:7px;}
#progressTrack .progress-reward-icon {width:51px;height:51px;border-radius:6px;border-width:2px;}
#progressTrack .progress-node-name {font-size:16px;line-height:1.1;min-height:0;color:#f9edd6;}
#progressTrack .progress-node-state {font-size:11px;line-height:1.1;padding:4px 7px;color:#d2c4af;}
#progressTrack .progress-node.current .progress-node-state {color:#291f14;background:#e8bd72;}
#progressTrack .progress-node.unlocked .progress-node-state {color:#bcda9c;}
#progressTrack .progress-more-rewards {font-size:13px;color:#ead9ba;}
.founder-you {position:absolute;left:50%;bottom:calc(100% + 7px);transform:translateX(-50%);width:40px;height:40px;padding:4px;background:#302421;border:2px solid #e6b75c;border-radius:7px;box-shadow:0 3px 0 #241815;}
.founder-you svg {display:block;width:100%;height:100%;}
.founder-current {position:absolute;z-index:10;right:14px;bottom:14px;padding:10px 13px;color:#f9e2b9;background:#322620f2;border:2px solid #be9255;border-radius:7px;box-shadow:0 3px 0 #191312;font:700 14px/1 var(--ui-display);cursor:pointer;}
#progressPathView .progress-path-arrow {top:auto;left:auto;right:14px;bottom:65px;transform:none;width:38px;height:38px;border-radius:6px;background:#322620f2;}
#progressPathView .progress-path-arrow img {width:22px!important;height:22px!important;object-fit:contain;}
#progressPathView .progress-path-prev {bottom:111px;}
#progressPathView .progress-path-prev img {transform:rotate(90deg);}
#progressPathView .progress-path-next img {transform:rotate(-90deg);}
body.light #progressTrack .progress-node {background:linear-gradient(#f7e7cafa,#ddc7a5fa);border-color:#795a3d;}
body.light #progressTrack .progress-node-name,body.light #progressTrack .progress-node-level {color:#352619;}
body.light #progressTrack .progress-node-state {background:#594735;color:#ffedce;}
body.light #progressTrack .progress-node.current {border-color:#a36f25;}
@media(max-width:760px){
 #progressPathView .progress-next-v12 {grid-template-columns:minmax(0,1fr) auto;padding:9px;gap:6px;min-height:80px;}
 #progressPathView .progress-next-label {display:none;}
 #progressPathView .progress-next-copy {grid-column:1;grid-row:1;font-size:17px;}
 #progressPathView .progress-earn-v12 {grid-column:1;grid-row:2;gap:3px;flex-wrap:wrap;}
 #progressPathView .progress-earn-v12 span {font-size:10px;padding:3px;}
 .founder-next-preview {grid-column:2;padding:6px;gap:4px;flex-wrap:wrap;justify-content:center;max-width:100px;}
 .founder-next-preview .progress-reward-icon {width:32px;height:32px;}
 .founder-next-preview>span:last-child {width:100%;font-size:11px;}
 #progressTrack .progress-node {width:154px;min-height:110px;max-width:48%;padding:8px 5px;gap:5px;}
 #progressTrack .progress-node-rewards {min-height:39px;gap:5px;}
 #progressTrack .progress-reward-icon {width:37px;height:37px;border-radius:5px;}
 #progressTrack .progress-node-level {font-size:13px;}
 #progressTrack .progress-node-name {font-size:12px;}
 #progressTrack .progress-node-state {font-size:9px;padding:3px 5px;}
 .founder-you {width:30px;height:30px;padding:3px;bottom:calc(100% + 5px);}
 .founder-current {right:9px;bottom:9px;font-size:12px;padding:9px;}
 #progressPathView .progress-path-arrow {right:9px;bottom:53px;width:33px;height:33px;}
 #progressPathView .progress-path-prev {bottom:94px;}
}
/* The tilted pixel edges are in the generated art, not resampled rotations. */
.title-card-fan .hero-card-art {inset:auto;height:auto;object-fit:contain;animation:none!important;will-change:translate;}
.title-card-fan .hero-card-ace {left:3%;top:9%;width:45%;z-index:2;}
.title-card-fan .hero-card-king {left:31%;top:7%;width:35%;z-index:4;}
.title-card-fan .hero-card-jack {left:51%;top:17%;width:45%;z-index:6;}
.hero-effect-sprite {position:absolute;inset:0;background-image:url('../assets/art/hero-weave-v46.webp');background-size:200% 200%;image-rendering:pixelated;pointer-events:none;opacity:0;}
.hero-thread-back {z-index:1;clip-path:inset(0 0 36% 0);}
.hero-thread-front {z-index:8;clip-path:inset(64% 0 0 0);}
body.no-motion .hero-card-art {translate:0 0!important;}
@media(prefers-reduced-motion:reduce){.hero-card-art{translate:0 0!important}.hero-effect-sprite{display:none!important}}
/* Retire the old phone-only horizontal-path/list overrides for the tree. */
#progressTrack .progress-node {overflow:visible!important;}
@media(max-width:760px){
 #screen-progress.progress-screen-v12 {height:100dvh!important;max-height:100dvh!important;overflow:hidden!important;padding:5px!important;align-items:stretch!important;justify-content:center!important;}
 #screen-progress .progress-stage-v12 {height:calc(100dvh - 10px)!important;min-height:0!important;max-height:calc(100dvh - 10px)!important;display:grid!important;grid-template-rows:auto auto minmax(0,1fr) auto!important;overflow:hidden!important;}
 #screen-progress .progress-content-v12 {min-height:0!important;overflow:hidden!important;}
 #screen-progress .progress-view-v12 {height:100%!important;overflow:hidden!important;}
 #screen-progress #progressLockerView {overflow:auto!important;}
 #screen-progress #progressLockerView .progress-locker-grid-v12 {height:auto!important;overflow:visible!important;}
 #progressPathView .progress-path-frame-v12 {height:auto!important;min-height:0!important;overflow:hidden!important;padding:0!important;}
 #progressPathView .progress-next-v12 {grid-template-columns:minmax(0,1fr) auto!important;margin-bottom:0!important;gap:5px!important;}
 #progressPathView .progress-next-copy {white-space:normal!important;font-size:15px!important;line-height:1.15!important;}
 #progressPathView .progress-earn-v12 {grid-column:1!important;display:flex!important;gap:4px!important;}
 #progressPathView .progress-earn-v12>span {font-size:9px!important;padding:3px!important;}
 #progressPathView .progress-earn-v12>span span {font-size:9px!important;padding:0!important;}
 #progressTrack.progress-track-v12 {height:100%!important;display:block!important;overflow-x:hidden!important;overflow-y:auto!important;padding:0!important;}
 #progressTrack .progress-node {display:flex!important;flex-direction:column!important;width:150px!important;max-width:48%!important;min-height:110px!important;padding:8px 5px!important;gap:5px!important;align-items:center!important;text-align:center!important;}
 #progressTrack .progress-node-level {font-size:13px!important;align-self:center!important;text-align:center!important;}
 #progressTrack .progress-node-rewards {height:auto!important;min-height:40px!important;justify-content:center!important;gap:5px!important;}
 #progressTrack .progress-reward-icon {width:34px!important;height:34px!important;flex:0 0 34px!important;border-radius:5px!important;}
 #progressTrack .progress-reward-icon.deck {width:33px!important;height:45px!important;flex:0 0 33px!important;}
 #progressTrack .progress-node-name {font-size:12px!important;line-height:1.1!important;text-align:center!important;align-self:center!important;}
 #progressTrack .progress-node-state {font-size:8px!important;padding:3px 5px!important;white-space:normal!important;align-self:center!important;}
 #progressPathView .progress-path-arrow {display:flex!important;}
}
/* Every face-down card uses the equipped generated back too. */
.opp-hand .mini-card,.opponent-mini-card {background:var(--card-back);image-rendering:pixelated;}
.practice-seat-0 .practice-recommended {outline:2px solid #f6d16b;outline-offset:2px;translate:0 -4px;z-index:1;}
body[data-art-state="loading"] :is(.opp-hand .mini-card,.opponent-mini-card) {background:#eee1c7!important;}
.artwork-retry.btn {position:fixed;z-index:100000;right:12px;bottom:12px;min-height:38px;padding:9px 13px;font-size:13px;}
:is(.progress-node,.founder-next-preview,.progress-locker-item)[data-art-state="loading"]>* {visibility:hidden;}
:is(.progress-node,.founder-next-preview,.progress-locker-item)[data-art-state="loading"]::after {content:'···';position:absolute;inset:0;display:grid;place-items:center;color:var(--gold);font-size:20px;}
#feltBg[data-art-state="loading"] {visibility:hidden;}
.guide-combo-example {display:flex;flex-direction:column;align-items:center;gap:9px;min-width:0;}
.guide-combo-example>small {font:500 13px/1.35 var(--ui-display);color:var(--cream);opacity:.8;text-align:center;max-width:230px;}
@media(max-width:360px){
 .practice-seat:not(.practice-seat-0) .guide-card.card {width:28px!important;height:40px!important;flex-basis:28px;margin-left:-16px!important;--card-w:28px;--card-h:40px;}
 .practice-seat:not(.practice-seat-0) .practice-hand {padding-left:16px;}
}
@media(min-width:761px) and (max-width:1000px){
 .practice-hand .guide-card.card {width:30px!important;height:42px!important;flex-basis:30px;margin-left:-18px!important;--card-w:30px;--card-h:42px;}
 .practice-seat-0 .guide-card.card {width:42px!important;height:59px!important;flex-basis:42px;margin-left:-12px!important;--card-w:42px;--card-h:59px;}
}
#progressTrack[data-art-state="loading"]>.founder-map,.practice-table[data-art-state="loading"]>* {visibility:hidden;}
#progressTrack[data-art-state="loading"]::after {content:'···';position:absolute;inset:0;display:grid;place-items:center;color:var(--gold);font-size:30px;}
.play-hub-panel[data-art-state="loading"]>.play-hub-grid {visibility:hidden;}
.guide-chapters button span {min-width:0;overflow-wrap:anywhere;}
@media(max-width:360px){.guide-chapters button {flex-direction:column;font-size:10px;gap:4px;}}
img[data-art-failed="true"] {visibility:hidden!important;}
@media(max-height:520px) and (min-width:761px){
 #screen-progress {height:100dvh!important;overflow:hidden!important;padding:5px!important;}
 #screen-progress .progress-stage-v12 {height:calc(100dvh - 10px)!important;min-height:0!important;padding:10px 14px!important;gap:7px!important;}
 #screen-progress .progress-header-v12 {grid-template-columns:40px 1fr minmax(230px,300px);gap:10px;}
 #screen-progress .progress-back-v12 {width:38px;height:38px;}
 #screen-progress .progress-title-v12 span {font-size:9px;}
 #screen-progress .progress-title-v12 h2 {font-size:26px;}
 #screen-progress .progress-profile-v12 {grid-template-columns:36px 1fr;padding:4px 7px;gap:8px;}
 #screen-progress .progress-avatar-v12 {width:34px;height:34px;padding:3px;}
 #screen-progress .progress-level-row-v12 {font-size:13px;}
 #screen-progress .progress-xp-track-v12 {height:8px;margin-top:5px;}
 #screen-progress .progress-tabs-v12 button {height:35px;min-height:35px;font-size:15px;padding:4px 9px;}
 #screen-progress .progress-tabs-v12 img {width:25px!important;height:25px!important;}
 #progressPathView {gap:7px;}
 #progressPathView .progress-next-v12 {min-height:0;padding:5px 9px;gap:4px 12px;}
 #progressPathView .progress-next-copy {font-size:16px;}
 #progressPathView .progress-next-label {font-size:10px;padding:5px;}
 #progressPathView .progress-earn-v12>span {font-size:10px;padding:2px 5px;}
 #progressPathView .progress-earn-v12>span span {font-size:10px;padding:0;}
 .founder-next-preview {padding:4px 6px;font-size:11px;}
 .founder-next-preview .progress-reward-icon {width:32px;height:32px;}
 #screen-progress .progress-done-v12 {height:32px;min-height:32px;font-size:14px;}
 #progressTrack .progress-node {min-height:0;padding:8px;gap:5px;}
 #progressTrack .progress-node-rewards {min-height:36px;}
 #progressTrack .progress-reward-icon {width:36px;height:36px;}
 #progressTrack .progress-reward-icon.deck {width:30px!important;height:42px!important;flex-basis:30px!important;}
 #progressTrack .progress-node-level {font-size:13px;}
 #progressTrack .progress-node-name {font-size:13px;}
 #progressTrack .progress-node-state {font-size:9px;padding:3px 5px;}
}
.founder-next-preview .progress-reward-icon {width:40px!important;height:40px!important;flex:0 0 40px!important;}
@media(max-width:760px){.founder-next-preview .progress-reward-icon{width:30px!important;height:30px!important;flex-basis:30px!important;}}
@media(max-height:520px) and (min-width:761px){
 .founder-next-preview .progress-reward-icon {width:30px!important;height:30px!important;flex-basis:30px!important;}
 #progressTrack .progress-reward-icon {width:36px!important;height:36px!important;flex-basis:36px!important;}
}
@media(max-height:520px) and (min-width:761px){
 #progressTrack .progress-more-rewards {width:36px!important;height:36px!important;min-height:0!important;min-width:0!important;padding:0!important;flex:0 0 36px!important;font-size:12px!important;display:grid;place-items:center;}
 #progressTrack .founder-you {top:7px;bottom:auto;left:10px;transform:none;width:25px;height:25px;padding:2px;}
 #progressPathView .progress-path-arrow {bottom:54px;width:32px;height:32px;}
 #progressPathView .progress-path-prev {right:54px;}
}
.practice-move-caption {font:700 13px/1.2 var(--ui-display);color:#ffe2a6;padding:5px 10px;background:#241d20b3;border-radius:5px;}
#progressPathView .progress-next-v12 {margin-bottom:0;}
@media(max-height:520px) and (min-width:761px){#progressTrack .progress-node{padding:6px;gap:3px;}}
/* On phones the learner's actual hand is docked with their action choices. */
.practice-hand-dock {margin:0 0 9px;padding:5px;background:var(--felt-art) center/100% 100%;border:2px solid #665343;border-radius:8px;}
.practice-hand-dock .practice-seat-0 {margin:auto;padding:3px;width:100%;gap:6px;}
.practice-hand-dock .practice-name {font-size:11px;}
.practice-hand-dock .practice-name svg {width:18px;height:18px;}
.practice-hand-dock .practice-hand .guide-card.card {width:38px!important;height:53px!important;flex-basis:38px;margin-left:-13px!important;--card-w:38px;--card-h:53px;}
@media(max-width:760px){
 .practice-center {grid-row:1;}
 .practice-seat-2 {grid-row:2;}
 .practice-seat-3,.practice-seat-1 {grid-row:3;}
 .guide-practice-controls {padding-top:6px;}
 .guide-practice-controls .practice-choices {margin-bottom:7px;}
}
/* Keep the menu usable while the complete fan is decoded. */
.title-card-fan:not([data-art-state="ready"]):not([data-art-state="error"]) {visibility:visible;}
.title-card-fan:not([data-art-state="ready"]):not([data-art-state="error"])>* {visibility:hidden;}
.title-card-fan:not([data-art-state="ready"]):not([data-art-state="error"])::after {content:'···';position:absolute;inset:0;display:grid;place-items:center;color:var(--cream);opacity:.35;font-size:25px;}
.guide-value-title {color:var(--gold);text-align:center;font-size:18px;margin:0 0 14px;}
.guide-value-grid {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;width:min(570px,100%);margin:auto;}
.guide-value-grid>div {display:flex;align-items:center;flex-direction:column;gap:7px;}
.guide-value-grid strong {font-size:24px;color:var(--gold);}
.guide-value-grid small {font-size:12px;color:var(--cream);}
@media(max-width:760px){.guide-value-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;}}
