/* Reading themes — each one re-paints the variables declared in styles.css.
   Applied as <html data-theme="…">; the picker lives in js/app.js (THEMES).
   Keep every theme readable first: body text must stay high-contrast on --card,
   and the four highlighter colours must all be legible behind dark text. */

/* ---------- soft / light ---------- */
html[data-theme="linen"]{
  --parchment:#f4f1ea; --parchment-2:#e8e3d8; --ink:#2a2723; --ink-soft:#5d5850; --line:#d5cec0;
  --gold:#9c8a5f; --gold-2:#c3b183; --wine:#7c4a4a; --olive:#5f6b4a; --sky:#4a6b80; --card:#fffefb;
  --page-glow:#faf8f3; --bar-1:#3b382f; --bar-2:#2a2822; --bar-ink:#efe9dc; --bar-accent:#d9cfae;
  --btn-1:#7a6a4d; --btn-2:#5d5039; --btn-ink:#fbf8f0; --gold-ink:#2f2a1c;
}
html[data-theme="sepia"]{
  --parchment:#f2e6d0; --parchment-2:#e8d8bb; --ink:#3a2c18; --ink-soft:#6b573a; --line:#d2bb95;
  --gold:#a97c2f; --gold-2:#cfa14f; --wine:#7c3b2a; --olive:#6a6a34; --sky:#4a6478; --card:#fdf6e6;
  --page-glow:#f8eeda; --bar-1:#4a3418; --bar-2:#33240f; --bar-ink:#f5e6c8; --bar-accent:#e2c48a;
  --btn-1:#8a6229; --btn-2:#6b4a1c; --btn-ink:#fdf6e6; --gold-ink:#3a2a10;
}
html[data-theme="rustic"]{
  --parchment:#efe3d3; --parchment-2:#e0cfb8; --ink:#332720; --ink-soft:#63503f; --line:#c9ae8d;
  --gold:#a8722f; --gold-2:#cd9750; --wine:#7b3524; --olive:#5f6a3a; --sky:#4b6472; --card:#fbf3e7;
  --page-glow:#f6ecdc; --bar-1:#4b3524; --bar-2:#33231a; --bar-ink:#f2e2cc; --bar-accent:#d9b483;
  --btn-1:#8b5a30; --btn-2:#6a4222; --btn-ink:#fbf1e2; --gold-ink:#382312;
  --hl-1:#f6e2a0; --hl-2:#cfe0a8; --hl-3:#eec5b5; --hl-4:#b9cfd8;
}
html[data-theme="sand"]{
  --parchment:#f6efdf; --parchment-2:#eadfc6; --ink:#33301f; --ink-soft:#635e45; --line:#d6c9a5;
  --gold:#b09029; --gold-2:#d6b654; --wine:#7c5230; --olive:#6c7434; --sky:#4d7286; --card:#fffdf2;
  --page-glow:#fbf6e6; --bar-1:#4a4526; --bar-2:#33301a; --bar-ink:#f5eed6; --bar-accent:#e0cf94;
  --btn-1:#8d7a34; --btn-2:#6b5c22; --btn-ink:#fdf9ea; --gold-ink:#332c0c;
}
html[data-theme="mint"]{
  --parchment:#e9f5ee; --parchment-2:#d6ebdf; --ink:#1e3128; --ink-soft:#4a6357; --line:#b6d6c4;
  --gold:#3f9070; --gold-2:#6ebc99; --wine:#7a3f4f; --olive:#4b7a45; --sky:#3d7285; --card:#fbfffd;
  --page-glow:#f0faf5; --bar-1:#1f4034; --bar-2:#132a22; --bar-ink:#dff2e8; --bar-accent:#9ddcbe;
  --btn-1:#3d8368; --btn-2:#2a614b; --btn-ink:#f4fffa; --gold-ink:#0f2a20;
  --hl-1:#f2f0a8; --hl-2:#a8e8bd; --hl-3:#f0c6d8; --hl-4:#b6d9ee;
}
html[data-theme="sky"]{
  --parchment:#eaf1f7; --parchment-2:#d8e5f0; --ink:#1e2b38; --ink-soft:#4a5c6d; --line:#b7cbdd;
  --gold:#3f7ba8; --gold-2:#6fa9d0; --wine:#6d4360; --olive:#4c7060; --sky:#2f6c96; --card:#fbfdff;
  --page-glow:#f1f7fc; --bar-1:#1f3448; --bar-2:#14283a; --bar-ink:#dcecf8; --bar-accent:#a6d0ef;
  --btn-1:#3c7098; --btn-2:#28536f; --btn-ink:#f4fbff; --gold-ink:#0d2334;
}
html[data-theme="blossom"]{
  --parchment:#fbeef3; --parchment-2:#f6dde7; --ink:#3a2430; --ink-soft:#6d4f5e; --line:#e8c3d3;
  --gold:#c4638d; --gold-2:#e08fb1; --wine:#8e3557; --olive:#6f7a45; --sky:#5d6f96; --card:#fffafc;
  --page-glow:#fdf3f7; --bar-1:#4d2337; --bar-2:#361626; --bar-ink:#fae3ee; --bar-accent:#f3b9d3;
  --btn-1:#b45c85; --btn-2:#8c3f63; --btn-ink:#fff6fa; --gold-ink:#3b1226;
  --hl-1:#ffe9a7; --hl-2:#c8e9c6; --hl-3:#ffc9de; --hl-4:#c8daf5;
}
html[data-theme="lavender"]{
  --parchment:#f1edf9; --parchment-2:#e3dcf2; --ink:#2c2440; --ink-soft:#584d75; --line:#cbc0e6;
  --gold:#7d63c0; --gold-2:#a58fdc; --wine:#7a3f6d; --olive:#5c7350; --sky:#4c6597; --card:#fdfbff;
  --page-glow:#f6f2fd; --bar-1:#332a4c; --bar-2:#221a35; --bar-ink:#e9e2f8; --bar-accent:#c3b2ef;
  --btn-1:#6c56a8; --btn-2:#4e3b82; --btn-ink:#f8f5ff; --gold-ink:#231a3a;
}
html[data-theme="rose"]{
  --parchment:#f9eeec; --parchment-2:#f2dcd8; --ink:#3a2523; --ink-soft:#6f504c; --line:#e3c2bc;
  --gold:#b56a5e; --gold-2:#d99a8d; --wine:#8d3a34; --olive:#6e7550; --sky:#5b6e8c; --card:#fffbfa;
  --page-glow:#fdf4f2; --bar-1:#4b2723; --bar-2:#341a17; --bar-ink:#f7e3df; --bar-accent:#eeb9ae;
  --btn-1:#a8564a; --btn-2:#803a31; --btn-ink:#fff6f4; --gold-ink:#3a1712;
}
html[data-theme="sunrise"]{
  --parchment:#fdf0e2; --parchment-2:#f8dfc7; --ink:#3a2718; --ink-soft:#6f5539; --line:#e9c8a3;
  --gold:#c07a24; --gold-2:#e6a54e; --wine:#93412a; --olive:#6f7238; --sky:#4f6f8c; --card:#fffaf3;
  --page-glow:#fff5e9; --bar-1:#5a3013; --bar-2:#3d1f0b; --bar-ink:#fbe6cd; --bar-accent:#f5c184;
  --btn-1:#c2762c; --btn-2:#96551b; --btn-ink:#fff8ef; --gold-ink:#3d2308;
}
html[data-theme="highcontrast"]{
  --parchment:#ffffff; --parchment-2:#f0f0f0; --ink:#000000; --ink-soft:#333333; --line:#767676;
  --gold:#6b4b00; --gold-2:#a37400; --wine:#a30000; --olive:#22591f; --sky:#00468b; --card:#ffffff;
  --page-glow:#ffffff; --bar-1:#000000; --bar-2:#000000; --bar-ink:#ffffff; --bar-accent:#ffd97a;
  --btn-1:#222222; --btn-2:#000000; --btn-ink:#ffffff; --gold-ink:#000000;
  --shadow:0 2px 8px rgba(0,0,0,.35);
  --hl-1:#ffe14d; --hl-2:#8ff0a4; --hl-3:#ffb3d1; --hl-4:#9ecdff;
}

/* ---------- dark ---------- */
html[data-theme="night"]{
  --parchment:#171719; --parchment-2:#1f1f23; --ink:#e9e6df; --ink-soft:#a9a49a; --line:#3a3a41;
  --gold:#c8a24a; --gold-2:#e0bd6a; --wine:#c07070; --olive:#8aa663; --sky:#79aacd; --card:#202024;
  --page-glow:#232329; --bar-1:#101013; --bar-2:#08080a; --bar-ink:#ece7dc; --bar-accent:#e0bd6a;
  --btn-1:#4a4a52; --btn-2:#33333a; --btn-ink:#f3f0e9; --gold-ink:#1b1509;
  --shadow:0 6px 22px rgba(0,0,0,.5);
  --hl-1:#6b5f1f; --hl-2:#2f5a35; --hl-3:#6a3348; --hl-4:#274a68;
}
html[data-theme="midnight"]{
  --parchment:#121826; --parchment-2:#182031; --ink:#e2e8f5; --ink-soft:#9aa6bf; --line:#2c3752; --gold:#8fb3e8; --gold-2:#b3cdf3; --wine:#d08a9c; --olive:#7fae86; --sky:#79a9e0;
  --card:#1a2334; --page-glow:#1b2438; --bar-1:#0c1220; --bar-2:#070b14; --bar-ink:#dce6fa; --bar-accent:#a9c8f4;
  --btn-1:#33507e; --btn-2:#233962; --btn-ink:#eef4ff; --gold-ink:#0b1526;
  --shadow:0 6px 22px rgba(0,0,0,.55);
  --hl-1:#5c5522; --hl-2:#28503a; --hl-3:#5b2f45; --hl-4:#254a72;
}
html[data-theme="matrix"]{
  --parchment:#050a06; --parchment-2:#0a140c; --ink:#54ff8f; --ink-soft:#2fbf68; --line:#14512c;
  --gold:#39d96f; --gold-2:#6bffa1; --wine:#c8f57a; --olive:#3ee07a; --sky:#41e0b0; --card:#08120a;
  --page-glow:#0b1a0d; --bar-1:#040d06; --bar-2:#010402; --bar-ink:#6bffa1; --bar-accent:#b6ffcf;
  --btn-1:#125c31; --btn-2:#0a3a1e; --btn-ink:#c9ffdc; --gold-ink:#04120a;
  --shadow:0 0 18px rgba(45,255,130,.18);
  --hl-1:#14401f; --hl-2:#175230; --hl-3:#0b4033; --hl-4:#0d3a44;
}
html[data-theme="slate"]{
  --parchment:#20242a; --parchment-2:#2a2f37; --ink:#e6e9ee; --ink-soft:#a5adb9; --line:#3c434e;
  --gold:#8fa3bd; --gold-2:#b3c3d8; --wine:#c88a8a; --olive:#8fae7c; --sky:#7fa8c9; --card:#272c34;
  --page-glow:#2a3038; --bar-1:#171a1f; --bar-2:#0f1216; --bar-ink:#e6e9ee; --bar-accent:#b3c3d8;
  --btn-1:#4a5464; --btn-2:#343c48; --btn-ink:#f1f4f8; --gold-ink:#141920;
  --shadow:0 6px 22px rgba(0,0,0,.45);
  --hl-1:#5f5a25; --hl-2:#2f5638; --hl-3:#5d3346; --hl-4:#2b4d6b;
}
html[data-theme="steel"]{
  --parchment:#e7eaee; --parchment-2:#d6dbe2; --ink:#1d2229; --ink-soft:#4c5560; --line:#b2bac5;
  --gold:#4d6a8a; --gold-2:#7a95b3; --wine:#7a4040; --olive:#4f6b45; --sky:#37587a; --card:#fbfcfe;
  --page-glow:#eff2f6; --bar-1:#242a33; --bar-2:#171b21; --bar-ink:#e4e9f0; --bar-accent:#9db4cd;
  --btn-1:#42556e; --btn-2:#2c3a4c; --btn-ink:#f4f8fc; --gold-ink:#0f1620;
}
html[data-theme="forest"]{
  --parchment:#101d14; --parchment-2:#16281b; --ink:#e2ecdf; --ink-soft:#9db69f; --line:#28422e;
  --gold:#a8c46a; --gold-2:#c6dd8f; --wine:#c98a6a; --olive:#8fc06e; --sky:#79b3a5; --card:#152219;
  --page-glow:#18271c; --bar-1:#0a150d; --bar-2:#050c07; --bar-ink:#dfeadb; --bar-accent:#bcdc94;
  --btn-1:#3c5f3c; --btn-2:#274127; --btn-ink:#eff6ec; --gold-ink:#101a09;
  --shadow:0 6px 22px rgba(0,0,0,.45);
  --hl-1:#5f5d21; --hl-2:#2f5f34; --hl-3:#5e3444; --hl-4:#265059;
}
html[data-theme="ocean"]{
  --parchment:#0c1c24; --parchment-2:#122831; --ink:#dceaf0; --ink-soft:#93b1bd; --line:#22434f;
  --gold:#5fc4c9; --gold-2:#8fdde0; --wine:#d08f95; --olive:#79bb92; --sky:#6fb6d8; --card:#102530;
  --page-glow:#123039; --bar-1:#07141b; --bar-2:#030b10; --bar-ink:#d9ecf2; --bar-accent:#8fdde0;
  --btn-1:#2b6470; --btn-2:#1b4650; --btn-ink:#eefaff; --gold-ink:#04161c;
  --shadow:0 6px 22px rgba(0,0,0,.45);
  --hl-1:#5d5a25; --hl-2:#2b5b45; --hl-3:#5c3348; --hl-4:#245570;
}
html[data-theme="coffee"]{
  --parchment:#1b1512; --parchment-2:#251d18; --ink:#ece0d2; --ink-soft:#b09a86; --line:#3d3129;
  --gold:#c99a5b; --gold-2:#e3b87c; --wine:#c47e6c; --olive:#9aa96a; --sky:#86a8bd; --card:#221a15;
  --page-glow:#261e18; --bar-1:#120d0a; --bar-2:#0a0705; --bar-ink:#efe3d5; --bar-accent:#e3b87c;
  --btn-1:#5c4331; --btn-2:#3f2d20; --btn-ink:#f6ece0; --gold-ink:#1a1109;
  --shadow:0 6px 22px rgba(0,0,0,.5);
  --hl-1:#665a24; --hl-2:#3a5c33; --hl-3:#653744; --hl-4:#2b4d63;
}
html[data-theme="royal"]{
  --parchment:#171331; --parchment-2:#1f1a41; --ink:#e8e4f6; --ink-soft:#a9a2c9; --line:#332c5c;
  --gold:#d4b25e; --gold-2:#efd189; --wine:#c98aa8; --olive:#8fb37f; --sky:#8ea6e8; --card:#1d1839;
  --page-glow:#221c45; --bar-1:#100c24; --bar-2:#090717; --bar-ink:#ece7fb; --bar-accent:#efd189;
  --btn-1:#3f3577; --btn-2:#2b2455; --btn-ink:#f4f1ff; --gold-ink:#171006;
  --shadow:0 6px 22px rgba(0,0,0,.5);
  --hl-1:#645a24; --hl-2:#2f5c3c; --hl-3:#5f3352; --hl-4:#2b4577;
}
html[data-theme="autumn"]{
  --parchment:#f6e9d8; --parchment-2:#eed6ba; --ink:#3a2415; --ink-soft:#6d4c33; --line:#dcb894; --gold:#b5701f; --gold-2:#dd9a45; --wine:#8d3320; --olive:#6f6a2c; --sky:#4f6b7a;
  --card:#fdf5ea; --page-glow:#faeddc; --bar-1:#552d12; --bar-2:#3a1c09; --bar-ink:#f8e4cb;
  --bar-accent:#f0bd7c; --btn-1:#a85f24; --btn-2:#7e4315; --btn-ink:#fdf3e7; --gold-ink:#3a1f07;
}
html[data-theme="cocoa"]{
  --parchment:#efe6df; --parchment-2:#e0d2c7; --ink:#332721; --ink-soft:#66524a; --line:#c9b3a6;
  --gold:#9a6f4c; --gold-2:#bf9271; --wine:#7d4038; --olive:#63704b; --sky:#4f6675; --card:#fbf6f2;
  --page-glow:#f5ece5; --bar-1:#3d2c24; --bar-2:#291c17; --bar-ink:#f0e3da; --bar-accent:#d4ab8a;
  --btn-1:#7c5540; --btn-2:#5b3b2c; --btn-ink:#fbf3ec; --gold-ink:#2c1a10;
}
