/* P0 batch 05 runtime visuals. All semantic data stays in DOM/Canvas. */
:root {
  --holdem-a11y-004-your-turn: url("./components/a11y-004/your-turn.svg");
  --holdem-a11y-004-timer-warning: url("./components/a11y-004/timer-warning.svg");
  --holdem-a11y-004-error: url("./components/a11y-004/error.svg");
  --holdem-a11y-004-reconnecting: url("./components/a11y-004/reconnecting.svg");
  --holdem-a11y-004-settlement: url("./components/a11y-004/settlement.svg");
  --holdem-fx-001-full: url("./components/fx-001/full.svg");
  --holdem-fx-001-reduced-motion: url("./components/fx-001/reduced-motion.svg");
  --holdem-fx-001-static: url("./components/fx-001/static.svg");
  --holdem-fx-002-full: url("./components/fx-002/full.svg");
  --holdem-fx-002-reduced-motion: url("./components/fx-002/reduced-motion.svg");
  --holdem-fx-002-static: url("./components/fx-002/static.svg");
  --holdem-fx-018-full: url("./components/fx-018/full.svg");
  --holdem-fx-018-reduced-motion: url("./components/fx-018/reduced-motion.svg");
  --holdem-fx-018-static: url("./components/fx-018/static.svg");
  --holdem-fx-019-full: url("./components/fx-019/full.svg");
  --holdem-fx-019-reduced-motion: url("./components/fx-019/reduced-motion.svg");
  --holdem-fx-019-static: url("./components/fx-019/static.svg");
  --holdem-tb-006-default: url("./components/tb-006/default.svg");
  --holdem-tb-006-moving: url("./components/tb-006/moving.svg");
  --holdem-tb-006-current: url("./components/tb-006/current.svg");
  --holdem-tb-007-small-blind: url("./components/tb-007/small-blind.svg");
  --holdem-tb-007-small-blind-emphasis: url("./components/tb-007/small-blind-emphasis.svg");
  --holdem-tb-007-big-blind: url("./components/tb-007/big-blind.svg");
  --holdem-tb-007-big-blind-emphasis: url("./components/tb-007/big-blind-emphasis.svg");
  --holdem-tb-008-empty: url("./components/tb-008/empty.svg");
  --holdem-tb-008-pending: url("./components/tb-008/pending.svg");
  --holdem-tb-008-new-card: url("./components/tb-008/new-card.svg");
  --holdem-tb-008-stable: url("./components/tb-008/stable.svg");
  --holdem-tb-009-main-pot: url("./components/tb-009/main-pot.svg");
  --holdem-tb-009-side-pot: url("./components/tb-009/side-pot.svg");
  --holdem-tb-009-multi-pot: url("./components/tb-009/multi-pot.svg");
  --holdem-tb-009-eligibility-entry: url("./components/tb-009/eligibility-entry.svg");
  --holdem-cd-001-standard: url("./components/cd-001/standard.svg");
  --holdem-cd-001-compact: url("./components/cd-001/compact.svg");
  --holdem-cd-001-high-contrast: url("./components/cd-001/high-contrast.svg");
  --holdem-cd-009-self: url("./components/cd-009/self.svg");
  --holdem-cd-009-community: url("./components/cd-009/community.svg");
  --holdem-cd-009-folded: url("./components/cd-009/folded.svg");
  --holdem-cd-009-showdown: url("./components/cd-009/showdown.svg");
  --holdem-cd-009-new-card: url("./components/cd-009/new-card.svg");
  --holdem-cd-009-winning-five: url("./components/cd-009/winning-five.svg");
  --holdem-ch-005-small: url("./chips/ch-005/small.webp");
  --holdem-ch-005-medium: url("./chips/ch-005/medium.webp");
  --holdem-ch-005-large: url("./chips/ch-005/large.webp");
  --holdem-ch-005-all-in: url("./chips/ch-005/all-in.webp");
  --holdem-ch-006-small: url("./chips/ch-006/small.webp");
  --holdem-ch-006-medium: url("./chips/ch-006/medium.webp");
  --holdem-ch-006-large: url("./chips/ch-006/large.webp");
  --holdem-ch-006-multi-pot: url("./chips/ch-006/multi-pot.webp");
  --holdem-p0-chip-helpers-atlas: url("./atlases/p0-chip-helpers.webp");
}

.holdem-v5-skin {
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  image-rendering: pixelated;
}

.holdem-v5-chip-helper {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  image-rendering: pixelated;
}

.holdem-v5-chip-atlas {
  background-image: var(--holdem-p0-chip-helpers-atlas);
  background-repeat: no-repeat;
  image-rendering: pixelated;
}

/* A11Y-004: runtime content must be layered above this visual. */
.holdem-a11y-004-skin {
  background-image: var(--holdem-a11y-004-your-turn);
}
.holdem-a11y-004-skin[data-art-state="timer-warning"] { background-image: var(--holdem-a11y-004-timer-warning); }
.holdem-a11y-004-skin[data-art-state="error"] { background-image: var(--holdem-a11y-004-error); }
.holdem-a11y-004-skin[data-art-state="reconnecting"] { background-image: var(--holdem-a11y-004-reconnecting); }
.holdem-a11y-004-skin[data-art-state="settlement"] { background-image: var(--holdem-a11y-004-settlement); }
/* Pair with .holdem-v5-skin. */

/* FX-001: runtime content must be layered above this visual. */
.holdem-fx-001-skin {
  background-image: var(--holdem-fx-001-full);
}
.holdem-fx-001-skin[data-art-state="reduced-motion"] { background-image: var(--holdem-fx-001-reduced-motion); }
.holdem-fx-001-skin[data-art-state="static"] { background-image: var(--holdem-fx-001-static); }
/* Pair with .holdem-v5-skin. */

/* FX-002: runtime content must be layered above this visual. */
.holdem-fx-002-skin {
  background-image: var(--holdem-fx-002-full);
}
.holdem-fx-002-skin[data-art-state="reduced-motion"] { background-image: var(--holdem-fx-002-reduced-motion); }
.holdem-fx-002-skin[data-art-state="static"] { background-image: var(--holdem-fx-002-static); }
/* Pair with .holdem-v5-skin. */

/* FX-018: runtime content must be layered above this visual. */
.holdem-fx-018-skin {
  background-image: var(--holdem-fx-018-full);
}
.holdem-fx-018-skin[data-art-state="reduced-motion"] { background-image: var(--holdem-fx-018-reduced-motion); }
.holdem-fx-018-skin[data-art-state="static"] { background-image: var(--holdem-fx-018-static); }
/* Pair with .holdem-v5-skin. */

/* FX-019: runtime content must be layered above this visual. */
.holdem-fx-019-skin {
  background-image: var(--holdem-fx-019-full);
}
.holdem-fx-019-skin[data-art-state="reduced-motion"] { background-image: var(--holdem-fx-019-reduced-motion); }
.holdem-fx-019-skin[data-art-state="static"] { background-image: var(--holdem-fx-019-static); }
/* Pair with .holdem-v5-skin. */

/* TB-006: runtime content must be layered above this visual. */
.holdem-tb-006-skin {
  background-image: var(--holdem-tb-006-default);
}
.holdem-tb-006-skin[data-art-state="moving"] { background-image: var(--holdem-tb-006-moving); }
.holdem-tb-006-skin[data-art-state="current"] { background-image: var(--holdem-tb-006-current); }
/* Pair with .holdem-v5-skin. */

/* TB-007: runtime content must be layered above this visual. */
.holdem-tb-007-skin {
  background-image: var(--holdem-tb-007-small-blind);
}
.holdem-tb-007-skin[data-art-state="small-blind-emphasis"] { background-image: var(--holdem-tb-007-small-blind-emphasis); }
.holdem-tb-007-skin[data-art-state="big-blind"] { background-image: var(--holdem-tb-007-big-blind); }
.holdem-tb-007-skin[data-art-state="big-blind-emphasis"] { background-image: var(--holdem-tb-007-big-blind-emphasis); }
/* Pair with .holdem-v5-skin. */

/* TB-008: runtime content must be layered above this visual. */
.holdem-tb-008-skin {
  background-image: var(--holdem-tb-008-empty);
}
.holdem-tb-008-skin[data-art-state="pending"] { background-image: var(--holdem-tb-008-pending); }
.holdem-tb-008-skin[data-art-state="new-card"] { background-image: var(--holdem-tb-008-new-card); }
.holdem-tb-008-skin[data-art-state="stable"] { background-image: var(--holdem-tb-008-stable); }
/* Pair with .holdem-v5-skin. */

/* TB-009: runtime content must be layered above this visual. */
.holdem-tb-009-skin {
  background-image: var(--holdem-tb-009-main-pot);
}
.holdem-tb-009-skin[data-art-state="side-pot"] { background-image: var(--holdem-tb-009-side-pot); }
.holdem-tb-009-skin[data-art-state="multi-pot"] { background-image: var(--holdem-tb-009-multi-pot); }
.holdem-tb-009-skin[data-art-state="eligibility-entry"] { background-image: var(--holdem-tb-009-eligibility-entry); }
/* Pair with .holdem-v5-skin. */

/* CD-001: runtime content must be layered above this visual. */
.holdem-cd-001-skin {
  background-image: var(--holdem-cd-001-standard);
}
.holdem-cd-001-skin[data-art-state="compact"] { background-image: var(--holdem-cd-001-compact); }
.holdem-cd-001-skin[data-art-state="high-contrast"] { background-image: var(--holdem-cd-001-high-contrast); }
/* Pair with .holdem-v5-skin. */

/* CD-009: runtime content must be layered above this visual. */
.holdem-cd-009-skin {
  background-image: var(--holdem-cd-009-self);
}
.holdem-cd-009-skin[data-art-state="community"] { background-image: var(--holdem-cd-009-community); }
.holdem-cd-009-skin[data-art-state="folded"] { background-image: var(--holdem-cd-009-folded); }
.holdem-cd-009-skin[data-art-state="showdown"] { background-image: var(--holdem-cd-009-showdown); }
.holdem-cd-009-skin[data-art-state="new-card"] { background-image: var(--holdem-cd-009-new-card); }
.holdem-cd-009-skin[data-art-state="winning-five"] { background-image: var(--holdem-cd-009-winning-five); }
/* Pair with .holdem-v5-skin. */

/* CH-005: runtime content must be layered above this visual. */
.holdem-ch-005-skin {
  background-image: var(--holdem-ch-005-small);
}
.holdem-ch-005-skin[data-art-state="medium"] { background-image: var(--holdem-ch-005-medium); }
.holdem-ch-005-skin[data-art-state="large"] { background-image: var(--holdem-ch-005-large); }
.holdem-ch-005-skin[data-art-state="all-in"] { background-image: var(--holdem-ch-005-all-in); }
/* Pair with .holdem-v5-chip-helper. */

/* CH-006: runtime content must be layered above this visual. */
.holdem-ch-006-skin {
  background-image: var(--holdem-ch-006-small);
}
.holdem-ch-006-skin[data-art-state="medium"] { background-image: var(--holdem-ch-006-medium); }
.holdem-ch-006-skin[data-art-state="large"] { background-image: var(--holdem-ch-006-large); }
.holdem-ch-006-skin[data-art-state="multi-pot"] { background-image: var(--holdem-ch-006-multi-pot); }
/* Pair with .holdem-v5-chip-helper. */

@media (prefers-reduced-motion: reduce) {
  .holdem-v5-skin, .holdem-v5-chip-helper {
    animation: none !important;
    transition: none !important;
  }
  .holdem-fx-001-skin { background-image: var(--holdem-fx-001-reduced-motion); }
  .holdem-fx-002-skin { background-image: var(--holdem-fx-002-reduced-motion); }
  .holdem-fx-018-skin { background-image: var(--holdem-fx-018-reduced-motion); }
  .holdem-fx-019-skin { background-image: var(--holdem-fx-019-reduced-motion); }
}

/* Desktop, landscape and portrait intentionally reuse the same visual files.
   Responsive placement, safe areas and semantic text belong to page CSS/DOM. */
