/* Festival Toy Pagoda: primary-color spectacle, paper-cut scenery, chunky toy
   blocks, and navy outlines. Loaded after pagoda_deluxe.css on purpose. */
body.pagoda-deluxe.pagoda-fun {
  --pagoda-ink: #17315b;
  --pagoda-blue: #1677ff;
  --pagoda-red: #ff4057;
  --pagoda-gold: #ffd52f;
  --pagoda-green: #35c76f;
  --pagoda-orange: #ff8a2b;
  --pagoda-violet: #8d55e8;
  --pagoda-paper: #fffdf0;
  --pagoda-mist: #56c9ff;
  color: var(--pagoda-ink) !important;
  background: #6dceff !important;
}

body.pagoda-deluxe.pagoda-fun::before { display: none !important; }
body.pagoda-fun #siege-grain { display: none !important; }
body.pagoda-fun #kenney-cloud-layer,
body.pagoda-fun #kenney-grade-layer { display: none !important; }

body.pagoda-fun #siege-flash {
  background: radial-gradient(circle at var(--impact-x, 65%) var(--impact-y, 55%), rgba(255,255,255,.9), rgba(255,213,47,.42) 18%, transparent 42%) !important;
}
body.pagoda-fun #siege-flash.is-danger {
  background: radial-gradient(circle at var(--impact-x, 65%) var(--impact-y, 55%), rgba(255,255,255,.88), rgba(255,64,87,.5) 22%, transparent 45%) !important;
}
body.pagoda-fun #siege-callout {
  border: 4px solid #fff !important;
  color: var(--pagoda-ink) !important;
  background: var(--pagoda-gold) !important;
  box-shadow: 0 7px 0 #ad8200, 0 14px 26px rgba(23,49,91,.22) !important;
  font-family: "Arial Rounded MT Bold", "Trebuchet MS", sans-serif;
}
body.pagoda-fun #siege-callout.is-break { color: #fff !important; background: var(--pagoda-red) !important; box-shadow: 0 7px 0 #b51e33 !important; }
body.pagoda-fun #siege-callout.is-target { color: #fff !important; background: var(--pagoda-violet) !important; box-shadow: 0 7px 0 #5d30a9 !important; }

body.pagoda-fun #hud {
  border: 4px solid var(--pagoda-blue) !important;
  color: var(--pagoda-ink) !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: 0 7px 0 #0959be, 0 16px 30px rgba(23,49,91,.2) !important;
  backdrop-filter: none !important;
}
body.pagoda-fun .pagoda-hud-kicker { color: var(--pagoda-violet) !important; }
body.pagoda-fun #hud .title { color: var(--pagoda-red) !important; text-shadow: 0 2px 0 #ffd2d9 !important; }
body.pagoda-fun #hud .title em { color: var(--pagoda-blue) !important; }
body.pagoda-fun .pagoda-stat { border: 2px solid #c8ddef; background: #edf8ff !important; }
body.pagoda-fun .pagoda-stat:nth-child(2) { border-color: #ffc1ca; background: #fff0f2 !important; }
body.pagoda-fun .pagoda-stat:nth-child(3) { border-color: #ffe074; background: #fff8c9 !important; }
body.pagoda-fun .pagoda-stat:nth-child(4) { border-color: #a8dfba; background: #ecfff2 !important; }
body.pagoda-fun .pagoda-stat small { color: #637894 !important; }
body.pagoda-fun .pagoda-stat b { color: var(--pagoda-ink) !important; }
body.pagoda-fun #siege-progress { background: #dceaf4 !important; }
body.pagoda-fun #siege-progress-fill { background: linear-gradient(90deg, var(--pagoda-green), var(--pagoda-gold), var(--pagoda-orange), var(--pagoda-red)) !important; box-shadow: none !important; }

body.pagoda-fun #hint {
  border: 3px solid #e2ac00 !important;
  color: var(--pagoda-ink) !important;
  background: rgba(255,249,201,.96) !important;
  box-shadow: 0 5px 0 #a97f00 !important;
  backdrop-filter: none !important;
}

body.pagoda-fun #menu {
  background:
    radial-gradient(circle at 10% 13%, rgba(255,255,255,.94) 0 5%, transparent 5.2%),
    radial-gradient(circle at 86% 9%, rgba(255,255,255,.82) 0 7%, transparent 7.2%),
    linear-gradient(180deg, #69c9ff 0 64%, #76dd78 64.2% 100%) !important;
  backdrop-filter: none !important;
}
body.pagoda-fun #menu .panel {
  border: 5px solid var(--pagoda-blue) !important;
  color: var(--pagoda-ink) !important;
  background: rgba(255,255,255,.985) !important;
  box-shadow: 0 9px 0 #0959be, 0 25px 50px rgba(23,49,91,.25) !important;
}
body.pagoda-fun #menu .panel::before {
  background:
    radial-gradient(circle at 90% 8%, rgba(255,213,47,.25), transparent 24%),
    radial-gradient(circle at 8% 92%, rgba(53,199,111,.2), transparent 28%) !important;
}
body.pagoda-fun .pagoda-eyebrow { color: var(--pagoda-violet) !important; }
body.pagoda-fun #menu h1 {
  color: var(--pagoda-blue) !important;
  font-family: "Arial Rounded MT Bold", "Trebuchet MS", sans-serif !important;
  text-shadow: 0 3px 0 #fff, 0 6px 0 #a8d0ff !important;
}
body.pagoda-fun #menu h1 span { color: var(--pagoda-red) !important; }
body.pagoda-fun .pagoda-lede { color: #536a88 !important; }
body.pagoda-fun .pagoda-specs { border: 3px solid var(--pagoda-blue) !important; background: var(--pagoda-blue) !important; }
body.pagoda-fun .pagoda-specs span { color: var(--pagoda-ink) !important; background: #fff !important; }
body.pagoda-fun .pagoda-specs span:nth-child(2) { background: #fff8c9 !important; }
body.pagoda-fun .pagoda-specs span:nth-child(3) { background: #ecfff2 !important; }
body.pagoda-fun .pagoda-specs small { color: #637894 !important; }
body.pagoda-fun .pagoda-specs b { color: var(--pagoda-ink) !important; }
body.pagoda-fun .captain-label { color: var(--pagoda-violet) !important; }

body.pagoda-fun #character-grid > .char-card {
  border: 3px solid var(--pagoda-blue) !important;
  color: var(--pagoda-ink) !important;
  background: #edf8ff !important;
  box-shadow: 0 5px 0 #9ebed7 !important;
}
body.pagoda-fun #character-grid > .char-card:nth-child(6n + 2) { border-color: var(--pagoda-red) !important; background: #fff0f2 !important; box-shadow: 0 5px 0 #e8a4ae !important; }
body.pagoda-fun #character-grid > .char-card:nth-child(6n + 3) { border-color: #e2ac00 !important; background: #fff8c9 !important; box-shadow: 0 5px 0 #dfc76e !important; }
body.pagoda-fun #character-grid > .char-card:nth-child(6n + 4) { border-color: var(--pagoda-green) !important; background: #ecfff2 !important; box-shadow: 0 5px 0 #9dd9b1 !important; }
body.pagoda-fun #character-grid > .char-card:nth-child(6n + 5) { border-color: var(--pagoda-orange) !important; background: #fff0df !important; box-shadow: 0 5px 0 #e3b98f !important; }
body.pagoda-fun #character-grid > .char-card:nth-child(6n) { border-color: var(--pagoda-violet) !important; background: #f3edff !important; box-shadow: 0 5px 0 #beace0 !important; }
body.pagoda-fun #character-grid > .char-card:hover,
body.pagoda-fun #character-grid > .char-card:focus-visible { outline: 4px solid var(--pagoda-gold) !important; outline-offset: 2px; transform: translateY(-4px) !important; }
body.pagoda-fun .char-card img { border: 0 !important; border-radius: 50%; filter: drop-shadow(0 4px 5px rgba(23,49,91,.22)) !important; }
body.pagoda-fun .char-card span { color: var(--pagoda-ink) !important; font-weight: 1000; }

body.pagoda-fun .chip {
  border: 3px solid var(--pagoda-blue) !important;
  color: var(--pagoda-ink) !important;
  background: #fff !important;
  box-shadow: 0 4px 0 #9ebed7 !important;
}
body.pagoda-fun #toggle-hand { border-color: var(--pagoda-red) !important; background: #fff0f2 !important; }
body.pagoda-fun #toggle-sfx { border-color: #e2ac00 !important; background: #fff8c9 !important; }
body.pagoda-fun #toggle-music { border-color: var(--pagoda-green) !important; background: #ecfff2 !important; }
body.pagoda-fun .pagoda-lobby-link { color: var(--pagoda-blue) !important; }
body.pagoda-fun #result { border: 3px solid var(--pagoda-red) !important; color: var(--pagoda-ink) !important; background: #fff0f2 !important; }

body.pagoda-fun #victory-window { background: rgba(74,180,230,.54) !important; backdrop-filter: blur(9px) !important; }
body.pagoda-fun #victory-window .card {
  border: 5px solid var(--pagoda-violet) !important;
  color: var(--pagoda-ink) !important;
  background: #fffdf0 !important;
  box-shadow: 0 9px 0 #5d30a9, 0 28px 60px rgba(23,49,91,.28) !important;
}
body.pagoda-fun #victory-window .msg { color: var(--pagoda-ink) !important; }
body.pagoda-fun #victory-window .chip-primary,
body.pagoda-fun #end-controls .chip-primary { border-color: #e2ac00 !important; color: var(--pagoda-ink) !important; background: var(--pagoda-gold) !important; box-shadow: 0 5px 0 #a97f00 !important; }

body.pagoda-fun #dmg-global-controls .dmg-ctl-btn {
  border: 3px solid var(--pagoda-blue) !important;
  color: var(--pagoda-ink) !important;
  background: #fff !important;
  box-shadow: 0 5px 0 #0959be !important;
  text-shadow: none !important;
}
body.pagoda-fun #dmg-pause-overlay { background: rgba(82,190,235,.62) !important; backdrop-filter: blur(8px) !important; }

@media (prefers-reduced-motion: reduce) {
  body.pagoda-fun *, body.pagoda-fun *::before, body.pagoda-fun *::after { transition: none !important; animation-duration: .01ms !important; }
}
