/* ==========================================================================
   Board themes & dice skins (cosmetic only).
   A theme is a set of CSS variables applied via [data-board-theme].
   ========================================================================== */

/* ---------------------------------------------------------------- Classic (free) */
:root,
[data-board-theme="classic"] {
  --b-line: #1f2a24;
  --b-space: #fbf7ea;
  --b-corner: #f4ecd2;
  --b-center: #cfe7d3;
  --b-center-pattern: radial-gradient(circle at 50% 45%, rgba(255, 255, 255, 0.6), transparent 62%);
  --b-text: #1d211f;
  --b-muted: #5e6660;
  --b-accent: #c62f2f;
  --b-logo: #c62f2f;
  --b-logo-2: #1d211f;
  --b-logo-shadow: 0.3cqw 0.3cqw 0 rgba(0, 0, 0, 0.12);
  --b-font: 'Outfit', system-ui, sans-serif;
  --b-title-font: 'Outfit', system-ui, sans-serif;
  --b-shadow: 0 2cqw 6cqw rgba(0, 0, 0, 0.5);
  --b-chip-bg: rgba(255, 255, 255, 0.88);
  --b-chip-text: #1d211f;
  --b-btn-bg: #26324f;
  --b-btn-text: #ffffff;
  --b-jail: #f59e0b;
  --fortune-bg: #f39c32;
  --fund-bg: #4ea6e0;
  --g-brown: #8a5a3b;
  --g-lightblue: #8fd3f4;
  --g-pink: #d9489b;
  --g-orange: #f39a1e;
  --g-red: #e23b3b;
  --g-yellow: #f2d31b;
  --g-green: #1fa35a;
  --g-darkblue: #2552b9;
  --page-bg: radial-gradient(1200px 700px at 50% 0%, #1e2a4a, #0d1020 70%);
}

/* ---------------------------------------------------------------- Midnight (free) */
[data-board-theme="midnight"] {
  --b-line: #070a16;
  --b-space: #1b2140;
  --b-corner: #161b36;
  --b-center: #11162f;
  --b-center-pattern: radial-gradient(circle at 50% 40%, rgba(124, 140, 255, 0.2), transparent 62%);
  --b-text: #e6e9ff;
  --b-muted: #8f98c4;
  --b-accent: #8b99ff;
  --b-logo: #a5b0ff;
  --b-logo-2: #e6e9ff;
  --b-logo-shadow: 0 0 2cqw rgba(124, 140, 255, 0.45);
  --b-font: 'Outfit', system-ui, sans-serif;
  --b-title-font: 'Outfit', system-ui, sans-serif;
  --b-shadow: 0 2cqw 6cqw rgba(0, 0, 0, 0.6);
  --b-chip-bg: rgba(255, 255, 255, 0.1);
  --b-chip-text: #e6e9ff;
  --b-btn-bg: #353d78;
  --b-btn-text: #ffffff;
  --b-jail: #e0a83a;
  --fortune-bg: #9b5cf0;
  --fund-bg: #2f8fd6;
  --g-brown: #a06a48;
  --g-lightblue: #6cc6f0;
  --g-pink: #e05aa8;
  --g-orange: #f0a03a;
  --g-red: #f05252;
  --g-yellow: #e8c93a;
  --g-green: #34c179;
  --g-darkblue: #5b7cfa;
  --page-bg: radial-gradient(1200px 700px at 50% 0%, #1a1f42, #080a16 70%);
}

/* ---------------------------------------------------------------- Neon Nights */
[data-board-theme="neon"] {
  --b-line: #ff2bd6;
  --b-gap: 0.25cqw;
  --b-space: #0d0519;
  --b-corner: #140828;
  --b-center: #07030f;
  --b-center-pattern:
    linear-gradient(transparent 55%, rgba(255, 43, 214, 0.22)),
    repeating-linear-gradient(90deg, rgba(0, 240, 255, 0.13) 0 1px, transparent 1px 6cqw),
    repeating-linear-gradient(0deg, rgba(255, 43, 214, 0.13) 0 1px, transparent 1px 6cqw);
  --b-text: #f5e9ff;
  --b-muted: #b39ad8;
  --b-accent: #00f0ff;
  --b-logo: #ff3ddb;
  --b-logo-2: #00f0ff;
  --b-logo-shadow: 0 0 1cqw #ff3ddb, 0 0 3cqw #ff3ddb;
  --b-font: 'Outfit', system-ui, sans-serif;
  --b-title-font: 'Orbitron', 'Outfit', sans-serif;
  --b-logo-size: 5.2cqw;
  --b-shadow: 0 0 2cqw rgba(255, 43, 214, 0.65), 0 0 8cqw rgba(0, 240, 255, 0.3);
  --b-band-shadow: 0 0 1.2cqw var(--gc);
  --b-chip-bg: rgba(0, 0, 0, 0.6);
  --b-chip-text: #ffffff;
  --b-btn-bg: #3a0f66;
  --b-btn-text: #ffffff;
  --b-jail: #ff2e63;
  --fortune-bg: #c41fa8;
  --fund-bg: #0aa5b8;
  --g-brown: #ff8a3d;
  --g-lightblue: #00e5ff;
  --g-pink: #ff3ddb;
  --g-orange: #ffa600;
  --g-red: #ff2e63;
  --g-yellow: #f9f871;
  --g-green: #39ff14;
  --g-darkblue: #6b5bff;
  --page-bg: radial-gradient(1000px 600px at 50% 0%, #2a0845, #05020c 70%);
}
[data-board-theme="neon"] .space .nm { text-shadow: 0 0 0.6cqw rgba(255, 255, 255, 0.4); }

/* ---------------------------------------------------------------- Ocean Depths */
[data-board-theme="ocean"] {
  --b-line: #0b3a52;
  --b-space: #e6f7f6;
  --b-corner: #cdeff0;
  --b-center: #4fb8cf;
  --b-center-pattern:
    radial-gradient(ellipse at 50% 120%, rgba(255, 255, 255, 0.35), transparent 60%),
    repeating-radial-gradient(circle at 50% 130%, rgba(255, 255, 255, 0.13) 0 1.2cqw, transparent 1.2cqw 3.2cqw);
  --b-text: #073b4c;
  --b-muted: #3f6f7d;
  --b-accent: #0b6e99;
  --b-logo: #ffffff;
  --b-logo-2: #073b4c;
  --b-logo-shadow: 0 0.4cqw 0 rgba(7, 59, 76, 0.35);
  --b-font: 'Outfit', system-ui, sans-serif;
  --b-title-font: 'Fredoka', 'Outfit', sans-serif;
  --b-shadow: 0 2cqw 6cqw rgba(0, 30, 50, 0.6);
  --b-chip-bg: rgba(255, 255, 255, 0.88);
  --b-chip-text: #073b4c;
  --b-btn-bg: #0b4f6c;
  --b-btn-text: #ffffff;
  --b-jail: #ffa94d;
  --fortune-bg: #ff922b;
  --fund-bg: #228be6;
  --g-brown: #a47551;
  --g-lightblue: #7fdbff;
  --g-pink: #ff7eb6;
  --g-orange: #ffa94d;
  --g-red: #ff6b6b;
  --g-yellow: #ffe066;
  --g-green: #20c997;
  --g-darkblue: #1864ab;
  --page-bg: radial-gradient(1200px 700px at 50% 0%, #0c4a6e, #04121f 70%);
}

/* ---------------------------------------------------------------- Royal Gold */
[data-board-theme="royal"] {
  --b-line: #c9a227;
  --b-gap: 0.3cqw;
  --b-space: #2a0f3a;
  --b-corner: #22092f;
  --b-center: #3b0f4f;
  --b-center-pattern:
    radial-gradient(circle at 50% 50%, rgba(201, 162, 39, 0.2), transparent 60%),
    repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.035) 0 1cqw, transparent 1cqw 2cqw);
  --b-text: #f7e7b4;
  --b-muted: #c8b07a;
  --b-accent: #e6c35c;
  --b-logo: #e6c35c;
  --b-logo-2: #f7e7b4;
  --b-logo-shadow: 0 0.3cqw 0 #5e4100;
  --b-font: 'Cinzel', Georgia, serif;
  --b-title-font: 'Cinzel', Georgia, serif;
  --b-nm: 0.95cqw;
  --b-logo-size: 5.2cqw;
  --b-shadow: 0 0 0 0.4cqw #6b4b00, 0 2cqw 6cqw rgba(0, 0, 0, 0.6);
  --b-chip-bg: rgba(0, 0, 0, 0.45);
  --b-chip-text: #f7e7b4;
  --b-btn-bg: #5b1a73;
  --b-btn-text: #f7e7b4;
  --b-jail: #c9a227;
  --fortune-bg: #a8841c;
  --fund-bg: #7b1fa2;
  --g-brown: #8d5a3b;
  --g-lightblue: #7ec8e3;
  --g-pink: #c2185b;
  --g-orange: #e08e0b;
  --g-red: #b71c1c;
  --g-yellow: #d4af37;
  --g-green: #1b7f4b;
  --g-darkblue: #1a3a8f;
  --page-bg: radial-gradient(1200px 700px at 50% 0%, #3b0f4f, #0d0412 70%);
}

/* ---------------------------------------------------------------- Sugar Rush */
[data-board-theme="sugar"] {
  --b-line: #f48fb1;
  --b-gap: 0.3cqw;
  --b-radius: 3cqw;
  --b-space: #fff5fa;
  --b-corner: #ffe3f0;
  --b-center: #ffd6e8;
  --b-center-pattern: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.55) 0 2cqw, transparent 2cqw 4cqw);
  --b-text: #6b2c4a;
  --b-muted: #a0607f;
  --b-accent: #ff4fa3;
  --b-logo: #ff4fa3;
  --b-logo-2: #7c4dff;
  --b-logo-shadow: 0.3cqw 0.3cqw 0 #ffffff;
  --b-font: 'Fredoka', 'Outfit', sans-serif;
  --b-title-font: 'Fredoka', 'Outfit', sans-serif;
  --b-shadow: 0 2cqw 6cqw rgba(80, 0, 40, 0.5);
  --b-chip-bg: rgba(255, 255, 255, 0.92);
  --b-chip-text: #6b2c4a;
  --b-btn-bg: #c2417f;
  --b-btn-text: #ffffff;
  --b-jail: #ffc078;
  --fortune-bg: #9775fa;
  --fund-bg: #4dabf7;
  --g-brown: #c69c72;
  --g-lightblue: #9ad7ff;
  --g-pink: #ff9ecf;
  --g-orange: #ffc078;
  --g-red: #ff8787;
  --g-yellow: #ffe58a;
  --g-green: #8ce99a;
  --g-darkblue: #9fa8ff;
  --page-bg: radial-gradient(1200px 700px at 50% 0%, #5b2a4a, #1a0b16 70%);
}

/* ---------------------------------------------------------------- Retro Arcade */
[data-board-theme="arcade"] {
  --b-line: #000000;
  --b-gap: 0.3cqw;
  --b-radius: 0;
  --b-space: #10162f;
  --b-corner: #0a0f24;
  --b-center: #050816;
  --b-center-pattern:
    repeating-linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0 0.3cqw, transparent 0.3cqw 0.6cqw),
    radial-gradient(circle at 50% 50%, rgba(80, 255, 180, 0.16), transparent 65%);
  --b-text: #e0ffe9;
  --b-muted: #7fd1a6;
  --b-accent: #ffea00;
  --b-logo: #ffea00;
  --b-logo-2: #ff3d7f;
  --b-logo-shadow: 0.4cqw 0.4cqw 0 #ff3d7f;
  --b-font: 'Press Start 2P', monospace;
  --b-title-font: 'Press Start 2P', monospace;
  --b-nm: 0.72cqw;
  --b-pr: 0.8cqw;
  --b-corner-title: 1.15cqw;
  --b-logo-size: 3.6cqw;
  --b-shadow: 0 0 0 0.6cqw #222a55, 0 2cqw 6cqw rgba(0, 0, 0, 0.6);
  --b-chip-bg: #000000;
  --b-chip-text: #ffea00;
  --b-btn-bg: #222a55;
  --b-btn-text: #e0ffe9;
  --b-jail: #ff9e1b;
  --fortune-bg: #d42a66;
  --fund-bg: #1e9fc7;
  --g-brown: #c46b2a;
  --g-lightblue: #4fd8ff;
  --g-pink: #ff5ad1;
  --g-orange: #ff9e1b;
  --g-red: #ff3b3b;
  --g-yellow: #ffe14d;
  --g-green: #32ff7e;
  --g-darkblue: #3d5afe;
  --page-bg: repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.025) 0 1px, transparent 1px 4px), radial-gradient(1200px 700px at 50% 0%, #121a3d, #04060f 70%);
}
[data-board-theme="arcade"] .space .nm { line-height: 1.5; letter-spacing: 0; }
[data-board-theme="arcade"] .corner-inner small { font-size: 0.62cqw; line-height: 1.5; }

/* ---------------------------------------------------------------- Enchanted Forest */
[data-board-theme="forest"] {
  --b-line: #3b2a1a;
  --b-gap: 0.28cqw;
  --b-space: #f3ead3;
  --b-corner: #e6d9b8;
  --b-center: #5f7f45;
  --b-center-pattern:
    radial-gradient(circle at 20% 30%, rgba(255, 255, 255, 0.09) 0 6cqw, transparent 6cqw),
    radial-gradient(circle at 75% 70%, rgba(0, 0, 0, 0.13) 0 8cqw, transparent 8cqw),
    radial-gradient(circle at 62% 20%, rgba(255, 255, 255, 0.07) 0 4cqw, transparent 4cqw),
    radial-gradient(circle at 30% 80%, rgba(0, 0, 0, 0.1) 0 5cqw, transparent 5cqw);
  --b-text: #2e2414;
  --b-muted: #6b5a3c;
  --b-accent: #2f5d2a;
  --b-logo: #f3ead3;
  --b-logo-2: #ffd27a;
  --b-logo-shadow: 0 0.4cqw 0 #2e2414;
  --b-font: 'Outfit', system-ui, sans-serif;
  --b-title-font: 'Cormorant Garamond', Georgia, serif;
  --b-logo-size: 6.6cqw;
  --b-shadow: 0 0 0 0.5cqw #5a3f24, 0 2cqw 6cqw rgba(0, 0, 0, 0.55);
  --b-chip-bg: rgba(243, 234, 211, 0.92);
  --b-chip-text: #2e2414;
  --b-btn-bg: #3b2a1a;
  --b-btn-text: #f3ead3;
  --b-jail: #b8862b;
  --fortune-bg: #c46f1d;
  --fund-bg: #4f8fa3;
  --g-brown: #7a4e2d;
  --g-lightblue: #7fb8c9;
  --g-pink: #c96b8f;
  --g-orange: #d9822b;
  --g-red: #b8432f;
  --g-yellow: #d9b44a;
  --g-green: #3e7c3a;
  --g-darkblue: #2d4a7a;
  --page-bg: radial-gradient(1200px 700px at 50% 0%, #22351c, #0b120a 70%);
}
[data-board-theme="forest"] .act-title { color: #fdf6e3; text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5); }
[data-board-theme="forest"] .act-sub, [data-board-theme="forest"] .act-wait { color: #e6dcc0; }
[data-board-theme="ocean"] .act-sub, [data-board-theme="ocean"] .act-wait { color: #073b4c; }

/* ==========================================================================
   Dice skins — 3D cubes. --d-bg paints each face, --d-core fills the cube's
   inside (visible behind the rounded corners), --d-glow tints the shadow.
   ========================================================================== */
.dice {
  --d-bg: linear-gradient(145deg, #ffffff, #e6e6ee);
  --d-core: #dedee8;
  --d-pip: #1a1a1a;
  --d-border: rgba(0, 0, 0, 0.08);
}
.dice.skin-onyx { --d-bg: linear-gradient(145deg, #3c3c46, #141419); --d-core: #18181e; --d-pip: #f5f5f5; --d-border: rgba(255, 255, 255, 0.06); --d-pip-shadow: none; }
.dice.skin-wood {
  --d-bg: repeating-linear-gradient(100deg, #c08a52 0 6%, #b07a44 6% 10%, #c99460 10% 18%, #b9814a 18% 22%);
  --d-core: #b07a44;
  --d-pip: #3b2412;
  --d-border: rgba(80, 40, 10, 0.35);
}
.dice.skin-ruby {
  --d-bg: radial-gradient(circle at 30% 25%, rgba(255, 255, 255, 0.5), transparent 38%), linear-gradient(145deg, #ff4d6d, #8c001f);
  --d-core: #a3001f;
  --d-pip: #ffd36b;
  --d-border: rgba(110, 0, 24, 0.6);
  --d-pip-shadow: 0 0 0.3em rgba(255, 211, 107, 0.8);
  --d-glow: rgba(220, 20, 60, 0.55);
}
.dice.skin-marble {
  --d-bg: radial-gradient(circle at 30% 30%, rgba(255, 255, 255, 0.9), transparent 40%), linear-gradient(120deg, #f4f4f4 0 30%, #cfd0d8 32%, #f8f8f8 34% 58%, #c4c6cf 60%, #f1f1f1 62% 80%, #d6d7de 82%, #f4f4f4 84%);
  --d-core: #dcdde3;
  --d-pip: #2b2b33;
  --d-border: rgba(0, 0, 0, 0.12);
}
.dice.skin-gold {
  --d-bg: radial-gradient(circle at 30% 25%, #fffbe0, transparent 38%), linear-gradient(145deg, #fff0a8, #f5c542 40%, #b8860b);
  --d-core: #c99a1e;
  --d-pip: #4a3500;
  --d-border: rgba(138, 101, 8, 0.6);
  --d-glow: rgba(255, 200, 60, 0.7);
}
.dice.skin-neon {
  --d-bg: radial-gradient(circle at 50% 50%, rgba(255, 61, 219, 0.18), transparent 70%), #0a0016;
  --d-core: #0a0016;
  --d-pip: #00f0ff;
  --d-border: #ff3ddb;
  --d-pip-shadow: 0 0 0.35em #00f0ff, 0 0 0.8em #00f0ff;
  --d-glow: rgba(255, 61, 219, 0.85);
}
.dice.skin-galaxy {
  --d-bg:
    radial-gradient(circle at 28% 30%, #fff 0 2%, transparent 3%),
    radial-gradient(circle at 72% 62%, #fff 0 1.5%, transparent 2.5%),
    radial-gradient(circle at 40% 82%, #bde0ff 0 1.5%, transparent 2.5%),
    radial-gradient(ellipse at 30% 40%, #7b2ff7, transparent 60%),
    radial-gradient(ellipse at 72% 72%, #f107a3, transparent 55%),
    #12002e;
  --d-core: #2a0a5e;
  --d-pip: #ffffff;
  --d-border: rgba(75, 29, 143, 0.8);
  --d-pip-shadow: 0 0 0.35em rgba(255, 255, 255, 0.9);
  --d-glow: rgba(123, 47, 247, 0.75);
}
