/* ---- Temaer: kun variabler. Skiftes via <html data-theme="..."> ---- */
:root, :root[data-theme="harbor"] {
  --bg: #dfe9f0; --page: linear-gradient(180deg, #cfe3ee 0%, #e9eef2 65%);
  --panel: #f6f1e7; --ink: #1d2b44; --muted: #66758a;
  --water: #a8c4dd; --water-line: #ffffff88;
  --accent: #1d2b44; --accent-ink: #ffffff; --accent-glow: #4f8cff;
  --hit: #e5484d; --miss: #ffffff; --warn: #c2410c; --good: #2f9e44;
  --hull: #5b6675; --hull-edge: #2d3748; --deck: #8795a6; --detail: #3a4556;
  --input-bg: #ffffff; --input-ink: #1d2b44; --item: #ffffff99; --item-strong: #ffffff;
  --font-head: 'Fraunces', Georgia, serif; --font-body: 'Inter', system-ui, sans-serif;
  --radius: 14px; --page-ink: var(--ink); --page-muted: var(--muted);
}
:root[data-theme="night"] {
  --bg: #0b1220; --page: radial-gradient(circle at 75% -10%, #1d305c 0%, #0b1220 60%);
  --panel: #141d33; --ink: #e6ecf7; --muted: #8b99b5;
  --water: #16284a; --water-line: #5b7bb844;
  --accent: #4f8cff; --accent-ink: #ffffff; --accent-glow: #7aa8ff;
  --hit: #ff5a5f; --miss: #cfe0ff; --warn: #ff9f5a; --good: #5bd37a;
  --hull: #7b8aa5; --hull-edge: #0c1424; --deck: #a7b4cc; --detail: #3b4a68;
  --input-bg: #0e1730; --input-ink: #e6ecf7; --item: #ffffff12; --item-strong: #ffffff1f;
}
:root[data-theme="radar"] {
  --bg: #02100a; --page: radial-gradient(circle at 50% 35%, #06301a 0%, #02100a 70%);
  --panel: #04200f; --ink: #7dff9c; --muted: #3fae5f;
  --water: #031a0e; --water-line: #1f7a3d99;
  --accent: #1fb85a; --accent-ink: #02100a; --accent-glow: #4dff88;
  --hit: #ff4d4d; --miss: #7dff9c; --warn: #ffb347; --good: #4dff88;
  --hull: #0b3d1d; --hull-edge: #4dff88; --deck: #0f5a2b; --detail: #4dff88;
  --input-bg: #021a0c; --input-ink: #7dff9c; --item: #4dff8814; --item-strong: #4dff8826;
  --font-head: 'Courier New', ui-monospace, monospace; --font-body: 'Courier New', ui-monospace, monospace;
  --radius: 4px;
}
:root[data-theme="blueprint"] {
  --bg: #0d3b66;
  --page: linear-gradient(#ffffff14 1px, transparent 1px) 0 0 / 28px 28px, linear-gradient(90deg, #ffffff14 1px, transparent 1px) 0 0 / 28px 28px, #0d3b66;
  --panel: #114b82; --ink: #eaf4ff; --muted: #a9c7e8;
  --water: #1b5a96; --water-line: #ffffff55;
  --accent: #eaf4ff; --accent-ink: #0d3b66; --accent-glow: #ffffff;
  --hit: #ffb703; --miss: #eaf4ff; --warn: #ffb703; --good: #7cf0c0;
  --hull: #1b5a96; --hull-edge: #eaf4ff; --deck: #1b5a96; --detail: #eaf4ff; --dash: 14 7;
  --input-bg: #0d3b66; --input-ink: #eaf4ff; --item: #ffffff14; --item-strong: #ffffff26;
  --radius: 6px;
}
:root[data-theme="candy"] {
  --bg: #ffe6f2; --page: linear-gradient(135deg, #ffe0ef 0%, #e2f1ff 100%);
  --panel: #fff7fb; --ink: #5b2a56; --muted: #a06b9a;
  --water: #bde6ff; --water-line: #ffffffcc;
  --accent: #ff5fa2; --accent-ink: #ffffff; --accent-glow: #ff8bc0;
  --hit: #ff3d7f; --miss: #ffffff; --warn: #ff7a18; --good: #2fbf71;
  --hull: #ff8fb8; --hull-edge: #b5175f; --deck: #ffd1e3; --detail: #7c4dff;
  --toy-5: #ff8fb8; --toy-4: #7cc6ff; --toy-3: #ffd166; --toy-2: #9be28a;
  --input-bg: #ffffff; --input-ink: #5b2a56; --item: #ffffffaa; --item-strong: #ffffff;
  --font-head: 'Fraunces', 'Trebuchet MS', sans-serif; --radius: 22px;
}
:root[data-theme="pirate"] {
  --bg: #3b2a1d;
  --page: repeating-linear-gradient(90deg, #402e20 0 46px, #382819 46px 48px), #3b2a1d;
  --panel: #ead9b5; --ink: #3b2415; --muted: #7a5c3c;
  --water: #2f6f7a; --water-line: #ffffff40;
  --accent: #5a3a1c; --accent-ink: #f6e7c8; --accent-glow: #e0a84a;
  --hit: #d62828; --miss: #f1e3c0; --warn: #b4540a; --good: #3a7d2c;
  --hull: #7a4b24; --hull-edge: #34200f; --deck: #a36a35; --detail: #f1e3c0;
  --input-bg: #f6ecd2; --input-ink: #3b2415; --item: #ffffff55; --item-strong: #fff8e6;
  --font-head: 'Pirata One', 'Fraunces', Georgia, serif; --radius: 8px;
  --page-ink: #f3e6c4; --page-muted: #c9b48a;
}
