/* Generated theme: nukes */
/* surface:light tint:warm accent:amber texture:grain cover:gradient typography:classical */

/* Surface: Light — default reading surface */
[data-surface="light"] {
  --surface-mode: light;
  --bg-primary: #f4f0e8;
  --bg-dark: #1a1a2e;
  --bg-darker: #0e0a06;
  --bg-page-outer: #e8e4dc;
  --text-primary: #1a1208;
  --text-secondary: #4a3a28;
  --heading-color: var(--accent-dark, #1a1208);
  --divider-color: rgba(0, 0, 0, .12);
  --border-subtle: rgba(0, 0, 0, .08);
  --stripe-even: rgba(0, 0, 0, .035);
  --box-bg: rgba(0, 0, 0, .04);
  --box-border: rgba(0, 0, 0, .08);
}

/* Surface: Dark — dark reading surface */
[data-surface="dark"] {
  --surface-mode: dark;
  --bg-primary: #141418;
  --bg-dark: #0a0a0e;
  --bg-darker: #060608;
  --bg-page-outer: #08080a;
  --text-primary: #f0ece4;
  --text-secondary: #d8d0c8;
  --heading-color: var(--accent-light, #f0ece4);
  --divider-color: rgba(255, 255, 255, .12);
  --border-subtle: rgba(255, 255, 255, .1);
  --stripe-even: rgba(255, 255, 255, .05);
  --box-bg: rgba(255, 255, 255, .06);
  --box-border: rgba(255, 255, 255, .1);
}

/* Tint: Warm — shifts background toward cream/amber */
:root {
  --tint-hue: 35;
  --tint-sat: 30%;
}
[data-surface="light"] {
  --bg-primary: #f4f0e8;
  --bg-dark: #1e1408;
  --bg-darker: #0e0a06;
  --bg-page-outer: #e8e0d4;
}
[data-surface="dark"] {
  --bg-primary: #18140e;
  --bg-dark: #0e0a06;
  --bg-darker: #080602;
  --bg-page-outer: #040200;
}

/* Accent: Amber — muted warm gold, softer than gold */
:root {
  --accent: #c9a84c;
  --accent-dark: #8b6914;
  --accent-light: #e8d5a0;
  --accent-trans: rgba(201, 168, 76, .3);
  --accent-on-dark: #e8d5a0;
  --accent-on-light: #8b6914;
}

/* Texture: Grain — subtle paper noise */
.page {
  background-image:
    repeating-linear-gradient(
      -45deg,
      transparent,
      transparent 4px,
      rgba(128, 100, 60, .022) 4px,
      rgba(128, 100, 60, .022) 5px
    ),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='.032'/%3E%3C/svg%3E");
}

[data-surface="dark"] .page {
  background-image:
    repeating-linear-gradient(
      -45deg,
      transparent,
      transparent 4px,
      rgba(200, 180, 140, .015) 4px,
      rgba(200, 180, 140, .015) 5px
    ),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='.025'/%3E%3C/svg%3E");
}

/* Cover: Gradient — dark base with accent tint at ~30% */
.cover {
  background:
    linear-gradient(160deg, rgba(0,0,0,.7) 0%, rgba(0,0,0,.4) 100%),
    linear-gradient(160deg, var(--bg-darker, #0a0a10), var(--accent-dark, #1a1a2e));
}

/* Typography: Classical — traditional serif-led reading experience */
:root {
  --serif: 'Crimson Pro', Georgia, serif;
  --sans: 'Oswald', sans-serif;
  --mono: 'Special Elite', serif;
  --fs-body: 18px;
  --fs-body-sm: 16px;
  --lh-body: 1.75;
}


/* Secondary accent: teal */
/* Accent: Teal — deep cyan/teal */
:root {
  --accent-secondary: #1c6a6a;
  --accent-secondary-dark: #0e4a4a;
  --accent-secondary-light: #3a9090;
  --accent-secondary-trans: rgba(28, 106, 106, .3);
  --accent-secondary-on-dark: #3a9090;
  --accent-secondary-on-light: #0e4a4a;
}


/* Section divider */
.section+.section::before{content:'☢';display:block;text-align:center;font-size:14px;color:var(--accent);opacity:.35;margin:-10px 0 0;line-height:1;}

/* Game-specific overrides */
/* Nukes — game-specific component overrides */

/* Unit card head variants */
.uc-head--infantry{background:var(--accent-secondary, #1c6a6a);}
.uc-head--artillery{background:#456030;}
.uc-head--airborne{background:#384070;}
.uc-head--nuke{background:var(--text-primary);}
.uc-head--base{background:var(--accent);}

/* Biome colours */
.biome.fields{background:#eaf4e0;border-color:#b0d494;}
.biome.forest{background:#d4ecd2;border-color:#82b47a;}
.biome.mountain{background:#eae6e0;border-color:#bcb4aa;}
.biome.desert{background:#f8f0ce;border-color:#d8bc78;}
.biome.water{background:#d8eaf8;border-color:#86bade;}
.biome.hazard{background:#eddff5;border-color:#b07ece;}
.biome.city{background:#fde8e8;border-color:#dc9898;}

/* Biome colours — dark surface */
[data-surface="dark"] .biome.fields{background:rgba(176,212,148,.12);border-color:rgba(176,212,148,.3);}
[data-surface="dark"] .biome.forest{background:rgba(130,180,122,.12);border-color:rgba(130,180,122,.3);}
[data-surface="dark"] .biome.mountain{background:rgba(188,180,170,.12);border-color:rgba(188,180,170,.3);}
[data-surface="dark"] .biome.desert{background:rgba(216,188,120,.12);border-color:rgba(216,188,120,.3);}
[data-surface="dark"] .biome.water{background:rgba(134,186,222,.12);border-color:rgba(134,186,222,.3);}
[data-surface="dark"] .biome.hazard{background:rgba(176,126,206,.12);border-color:rgba(176,126,206,.3);}
[data-surface="dark"] .biome.city{background:rgba(220,152,152,.12);border-color:rgba(220,152,152,.3);}

/* Biome chips */
.chip-fields{background:#b4e090;}
.chip-forest{background:#7aba70;}
.chip-mountain{background:#bcb4aa;}
.chip-desert{background:#e0c878;}
.chip-water{background:#86bade;}
.chip-hazard{background:#c090e0;color:white;}
.chip-city{background:#e08888;}

/* Bookmark biome dots */
.dot-water{background:#86bade;}
.dot-desert{background:#e0c878;}
.dot-forest{background:#82b47a;}
.dot-mountain{background:#bcb4aa;}


/* Print: force authored surface (light) */
@media print {
/* Surface: Light — default reading surface */
:root {
  --surface-mode: light;
  --bg-primary: #f4f0e8;
  --bg-dark: #1a1a2e;
  --bg-darker: #0e0a06;
  --bg-page-outer: #e8e4dc;
  --text-primary: #1a1208;
  --text-secondary: #4a3a28;
  --heading-color: var(--accent-dark, #1a1208);
  --divider-color: rgba(0, 0, 0, .12);
  --border-subtle: rgba(0, 0, 0, .08);
  --stripe-even: rgba(0, 0, 0, .035);
  --box-bg: rgba(0, 0, 0, .04);
  --box-border: rgba(0, 0, 0, .08);
}

}
