/**
 * Serene Word Search - Themes & Accessibility Styles
 * Thoughtfully chosen color palettes designed for visual comfort, zero glare, and high legibility.
 */

:root {
  --font-serif: 'Fraunces', 'Georgia', 'Times New Roman', serif;
  --font-sans: 'Outfit', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 20px;
  --radius-full: 9999px;
  --shadow-subtle: 0 2px 8px rgba(0, 0, 0, 0.05);
  --shadow-card: 0 4px 16px rgba(0, 0, 0, 0.08);
  --shadow-modal: 0 12px 36px rgba(0, 0, 0, 0.16);
  --transition-fast: 0.15s ease;
  --transition-smooth: 0.25s cubic-bezier(0.2, 0.8, 0.2, 1);
}

/* 📜 Theme: Warm Parchment (Default) */
body.theme-parchment {
  --bg-app: #FAF7EE;
  --bg-surface: #FFFFFF;
  --bg-surface-alt: #F4EFE0;
  --text-main: #2C261E;
  --text-muted: #6E6455;
  --border-color: #E6DCBE;
  --accent-primary: #8C532B;
  --accent-hover: #734220;
  --accent-light: #F7EBDC;
  --cell-bg: #FFFFFF;
  --cell-border: #E8E0CB;
  --cell-text: #2C261E;
  --cell-selected: #FCEFD9;
  --card-found-bg: #F4EFE0;
  --card-found-text: #998C7B;
}

/* 🌿 Theme: Soothing Sage */
body.theme-sage {
  --bg-app: #F2F7F2;
  --bg-surface: #FFFFFF;
  --bg-surface-alt: #E3EDE4;
  --text-main: #1D3323;
  --text-muted: #536B59;
  --border-color: #CADBCB;
  --accent-primary: #3E6B48;
  --accent-hover: #2E5236;
  --accent-light: #E0EDE3;
  --cell-bg: #FFFFFF;
  --cell-border: #D1DFD3;
  --cell-text: #1D3323;
  --cell-selected: #E3EFE5;
  --card-found-bg: #E3EDE4;
  --card-found-text: #829687;
}

/* 🪻 Theme: Calm Lavender */
body.theme-lavender {
  --bg-app: #F7F4FA;
  --bg-surface: #FFFFFF;
  --bg-surface-alt: #ECE6F3;
  --text-main: #2B1D3A;
  --text-muted: #655478;
  --border-color: #DDD4E8;
  --accent-primary: #6B4E8F;
  --accent-hover: #543B73;
  --accent-light: #EFE8F7;
  --cell-bg: #FFFFFF;
  --cell-border: #E0D7EB;
  --cell-text: #2B1D3A;
  --cell-selected: #EFE8F7;
  --card-found-bg: #ECE6F3;
  --card-found-text: #9385A3;
}

/* 🌙 Theme: Midnight Cozy */
body.theme-midnight {
  --bg-app: #18191E;
  --bg-surface: #22242B;
  --bg-surface-alt: #2D3039;
  --text-main: #F4F3EE;
  --text-muted: #A3A6B4;
  --border-color: #383C47;
  --accent-primary: #E5A857;
  --accent-hover: #F2BD77;
  --accent-light: #3D3528;
  --cell-bg: #22242B;
  --cell-border: #353945;
  --cell-text: #F4F3EE;
  --cell-selected: #3D3528;
  --card-found-bg: #292B33;
  --card-found-text: #666975;
}

/* ☀️ Theme: High Contrast Day */
body.theme-contrast {
  --bg-app: #FFFFFF;
  --bg-surface: #F8F8F8;
  --bg-surface-alt: #EEEEEE;
  --text-main: #000000;
  --text-muted: #333333;
  --border-color: #000000;
  --accent-primary: #000000;
  --accent-hover: #333333;
  --accent-light: #EEEEEE;
  --cell-bg: #FFFFFF;
  --cell-border: #000000;
  --cell-text: #000000;
  --cell-selected: #E0E0E0;
  --card-found-bg: #EEEEEE;
  --card-found-text: #777777;
}

/* 👓 Large Print Mode Modifiers */
body.large-print {
  font-size: 19px;
}

body.large-print .cell-letter {
  font-size: 1.65rem !important;
  font-weight: 700 !important;
}

body.large-print .word-main {
  font-size: 1.35rem !important;
  font-weight: 700 !important;
}

body.large-print .word-trans {
  font-size: 1.15rem !important;
}

body.large-print .wordbook-id-word {
  font-size: 1.55rem !important;
}

body.large-print .wordbook-en-word {
  font-size: 1.3rem !important;
}

body.large-print .btn-app,
body.large-print .btn-action {
  font-size: 1.15rem !important;
  padding: 14px 20px !important;
}
