/* Thèmes de l'Espace privé : SEULE source des couleurs qui changent avec l'apparence.
   Chargé APRÈS app.css et espace.css. js/theme-boot.js pose sur <html>, avant le premier rendu :
   data-theme="light|dark" (toujours), data-palette="lac|glacier|foret|sable|crepuscule" (toujours),
   data-accent="…" (seulement si l'utilisateur a choisi un accent).
   Format IMPOSÉ (lu par tests/themes-contrast.test.js) : un jeton par déclaration ; couleurs de texte et de
   fond pleines en #rrggbb ; rgba() réservé aux verres (--glass*), au halo (--bg-glow) et au survol.
   Sélecteurs reconnus par le test, sans variante :
     :root                                             ambiance Lac, clair (base)
     :root[data-theme="dark"]                          ambiance Lac, sombre (base sombre)
     :root[data-theme="light|dark"][data-palette="x"]  ambiance x
     :root[data-theme="light|dark"][data-accent="x"]   accent x (placé après les ambiances : il gagne)
     :root[data-theme="light|dark"] [data-scene="x"]   paysage x du bandeau (jetons --hero-* seulement)
   Spécificités : base (0,1,0) < base sombre (0,2,0) < ambiance = accent (0,3,0), l'ordre départage. */

/* ===== Base : Lac, clair ===== */
:root{
  color-scheme:light;
  --navy:#0c2b38; --ink:#14313c; --muted:#4e6971;
  --line:#d8e6ec; --line-soft:#ecf4f7;
  --aqua:#127d89; --aqua-dark:#0c5e68; --aqua-soft:#dff0f2; --on-accent:#ffffff;
  --ice:#cfe5ee; --bg:#f3f8fa; --bg-top:#e3eff4; --bg-bottom:#f3f8fa; --bg-end:#f7fafb;
  --bg-glow:rgba(255,255,255,.9);
  --white:#ffffff; --field-bg:#fbfdfe;
  --glass:rgba(255,255,255,.72); --glass-solid:rgba(255,255,255,.94); --glass-line:rgba(255,255,255,.85);
  --amber:#e2a04a; --amber-soft:#fcefd9; --amber-ink:#7a4f0f; --badge-ink:#0c2b38;
  --danger:#b3402f; --danger-soft:#f7e3e1; --ok:#26774f; --ok-soft:#e3f3ea;
  --violet-soft:#ececfa; --mark-bg:#fde3ad;
  --photo-ink:#ffffff; --photo-scrim:#08141a;
  --coral:#e0735a; --violet:#5957c9;
  --inc-salaire:#127d89; --inc-bonus:#499dac; --inc-dividende:#c08722; --inc-honoraires:#6b5fb5; --inc-autre:#7497a4;
  --shadow:0 1px 2px rgba(22,78,99,.05),0 10px 30px rgba(22,78,99,.08);
  --shadow-lift:0 2px 6px rgba(22,78,99,.06),0 18px 44px rgba(22,78,99,.14);
}

/* ===== Paysages du bandeau (jetons --hero-*) : clair ===== */
:root,
:root[data-theme="light"] [data-scene="lac"]{
  --hero-sky-1:#c4e1ea; --hero-sky-2:#e6f2f6; --hero-sky-3:#f6fafb; --hero-glow:#fbe3b4; --hero-sun:#f8dcaa;
  --hero-cloud:#ffffff; --hero-far-1:#a8cfda; --hero-far-2:#d3e8ee; --hero-mid-1:#3f8e9d; --hero-mid-2:#8cc0cb;
  --hero-near-1:#0c5e68; --hero-near-2:#127d89; --hero-lake-1:#a9d6df; --hero-lake-2:#4a9fae; --hero-veil:#f3f9fb;
  --hero-snow:#ffffff; --hero-shimmer:#ffffff; --hero-tree:#0a4a52; --hero-trees:none; --hero-snow-extra:none;
}
:root[data-theme="light"][data-palette="glacier"],
:root[data-theme="light"] [data-scene="glacier"]{
  --hero-sky-1:#cfe0f0; --hero-sky-2:#e9f1f9; --hero-sky-3:#f7fafd; --hero-glow:#f4f1e6; --hero-sun:#fbf3dc;
  --hero-cloud:#ffffff; --hero-far-1:#b9cfe3; --hero-far-2:#dde8f3; --hero-mid-1:#5b85ad; --hero-mid-2:#a6c0d9;
  --hero-near-1:#234e75; --hero-near-2:#2f6f9f; --hero-lake-1:#b5d0e6; --hero-lake-2:#5d8fba; --hero-veil:#f4f8fc;
  --hero-snow:#ffffff; --hero-shimmer:#ffffff; --hero-tree:#1c3f60; --hero-trees:none; --hero-snow-extra:inline;
}
:root[data-theme="light"][data-palette="foret"],
:root[data-theme="light"] [data-scene="foret"]{
  --hero-sky-1:#cfe6dc; --hero-sky-2:#e9f4ee; --hero-sky-3:#f6faf7; --hero-glow:#f7e6b8; --hero-sun:#f5dca0;
  --hero-cloud:#ffffff; --hero-far-1:#a9cdb8; --hero-far-2:#d4e8dc; --hero-mid-1:#3f7f5a; --hero-mid-2:#8dbb9f;
  --hero-near-1:#1f5c39; --hero-near-2:#2e7d4f; --hero-lake-1:#a8d3c4; --hero-lake-2:#4c9a80; --hero-veil:#f3f9f5;
  --hero-snow:#ffffff; --hero-shimmer:#ffffff; --hero-tree:#164a2d; --hero-trees:inline; --hero-snow-extra:none;
}
:root[data-theme="light"][data-palette="sable"],
:root[data-theme="light"] [data-scene="sable"]{
  --hero-sky-1:#f1dfc2; --hero-sky-2:#f8eedc; --hero-sky-3:#fcf8f1; --hero-glow:#fbd99a; --hero-sun:#f6c879;
  --hero-cloud:#fffaf0; --hero-far-1:#dcc6a2; --hero-far-2:#eee2cc; --hero-mid-1:#a8834f; --hero-mid-2:#d2b98f;
  --hero-near-1:#6f4f1f; --hero-near-2:#8f6a2e; --hero-lake-1:#c9d8d0; --hero-lake-2:#7fa3a0; --hero-veil:#fcf7ef;
  --hero-snow:#fffaf2; --hero-shimmer:#ffffff; --hero-tree:#5a4018; --hero-trees:none; --hero-snow-extra:none;
}
:root[data-theme="light"][data-palette="crepuscule"],
:root[data-theme="light"] [data-scene="crepuscule"]{
  --hero-sky-1:#e9cfe0; --hero-sky-2:#f6e2df; --hero-sky-3:#fbf1ea; --hero-glow:#f9c9a0; --hero-sun:#f6b384;
  --hero-cloud:#fff3ee; --hero-far-1:#c9b3d3; --hero-far-2:#e6d8e8; --hero-mid-1:#7d5f99; --hero-mid-2:#b59fc6;
  --hero-near-1:#4a3466; --hero-near-2:#5c3a78; --hero-lake-1:#d3bfd8; --hero-lake-2:#8a6fa6; --hero-veil:#fbf4f6;
  --hero-snow:#fff6f8; --hero-shimmer:#ffffff; --hero-tree:#3a2852; --hero-trees:none; --hero-snow-extra:none;
}

/* ===== Base sombre : Lac, sombre ===== */
:root[data-theme="dark"]{
  color-scheme:dark;
  --navy:#e6f1f4; --ink:#d4e3e8; --muted:#9db3bb;
  --line:#26404a; --line-soft:#1b2f37;
  --aqua:#4fb3bf; --aqua-dark:#7fd0da; --aqua-soft:#173a41; --on-accent:#062126;
  --ice:#16313a; --bg:#0b161b; --bg-top:#0f1d23; --bg-bottom:#0b161b; --bg-end:#0a1418;
  --bg-glow:rgba(79,179,191,.10);
  --white:#14252c; --field-bg:#10222a;
  --glass:rgba(20,37,44,.72); --glass-solid:rgba(20,37,44,.96); --glass-line:rgba(255,255,255,.08);
  --amber:#e2a04a; --amber-soft:#3a2a12; --amber-ink:#f3c98a; --badge-ink:#1d1405;
  --danger:#f08a7e; --danger-soft:#3a1a17; --ok:#6fcf9f; --ok-soft:#13301f;
  --violet-soft:#262445; --mark-bg:#5a4310;
  --violet:#8583dd; --inc-honoraires:#8a7fd0;
  --shadow:0 1px 2px rgba(0,0,0,.30),0 10px 30px rgba(0,0,0,.35);
  --shadow-lift:0 2px 6px rgba(0,0,0,.35),0 18px 44px rgba(0,0,0,.45);
}

/* ===== Paysages du bandeau : sombre (nuit) ===== */
:root[data-theme="dark"],
:root[data-theme="dark"] [data-scene="lac"]{
  --hero-sky-1:#0b1f29; --hero-sky-2:#10303b; --hero-sky-3:#163a46; --hero-glow:#9fc6d0; --hero-sun:#e6eef0;
  --hero-cloud:#5d7f8a; --hero-far-1:#24505c; --hero-far-2:#1a3b45; --hero-mid-1:#1f5f6a; --hero-mid-2:#2a6f7a;
  --hero-near-1:#08343b; --hero-near-2:#0c4650; --hero-lake-1:#174652; --hero-lake-2:#0b2b33; --hero-veil:#0b1f29;
  --hero-snow:#d8e6ea; --hero-shimmer:#9fc6d0; --hero-tree:#062a30; --hero-trees:none; --hero-snow-extra:none;
}
:root[data-theme="dark"][data-palette="glacier"],
:root[data-theme="dark"] [data-scene="glacier"]{
  --hero-sky-1:#0a1826; --hero-sky-2:#0f2536; --hero-sky-3:#15304a; --hero-glow:#a9c4e0; --hero-sun:#eef3f8;
  --hero-cloud:#5a738c; --hero-far-1:#22415e; --hero-far-2:#18324a; --hero-mid-1:#2b5276; --hero-mid-2:#375f86;
  --hero-near-1:#0b2740; --hero-near-2:#123555; --hero-lake-1:#173a58; --hero-lake-2:#0b2236; --hero-veil:#0a1826;
  --hero-snow:#dde8f2; --hero-shimmer:#a9c4e0; --hero-tree:#08203a; --hero-trees:none; --hero-snow-extra:inline;
}
:root[data-theme="dark"][data-palette="foret"],
:root[data-theme="dark"] [data-scene="foret"]{
  --hero-sky-1:#0a1a14; --hero-sky-2:#0f281e; --hero-sky-3:#143327; --hero-glow:#a8cdb5; --hero-sun:#ecf2ec;
  --hero-cloud:#567a65; --hero-far-1:#22473a; --hero-far-2:#18362b; --hero-mid-1:#245c41; --hero-mid-2:#2f6d4e;
  --hero-near-1:#0a3220; --hero-near-2:#0f4029; --hero-lake-1:#15443a; --hero-lake-2:#0a2a22; --hero-veil:#0a1a14;
  --hero-snow:#d9e8df; --hero-shimmer:#a8cdb5; --hero-tree:#06261a; --hero-trees:inline; --hero-snow-extra:none;
}
:root[data-theme="dark"][data-palette="sable"],
:root[data-theme="dark"] [data-scene="sable"]{
  --hero-sky-1:#1b140b; --hero-sky-2:#2a1f12; --hero-sky-3:#352816; --hero-glow:#e0b878; --hero-sun:#f3e2c0;
  --hero-cloud:#7a6650; --hero-far-1:#4b3a24; --hero-far-2:#36291a; --hero-mid-1:#6b5230; --hero-mid-2:#7d6038;
  --hero-near-1:#2e2212; --hero-near-2:#3d2d17; --hero-lake-1:#2c3a38; --hero-lake-2:#172222; --hero-veil:#1b140b;
  --hero-snow:#efe3cf; --hero-shimmer:#e0b878; --hero-tree:#241a0d; --hero-trees:none; --hero-snow-extra:none;
}
:root[data-theme="dark"][data-palette="crepuscule"],
:root[data-theme="dark"] [data-scene="crepuscule"]{
  --hero-sky-1:#1a1026; --hero-sky-2:#2a1838; --hero-sky-3:#3a2040; --hero-glow:#e9a98a; --hero-sun:#f3c6a8;
  --hero-cloud:#6e5480; --hero-far-1:#3e2a55; --hero-far-2:#2c1e3e; --hero-mid-1:#4f3570; --hero-mid-2:#5e4080;
  --hero-near-1:#22163a; --hero-near-2:#2d1d4a; --hero-lake-1:#2a1d40; --hero-lake-2:#160f24; --hero-veil:#1a1026;
  --hero-snow:#eadff0; --hero-shimmer:#d8b6e6; --hero-tree:#1a1030; --hero-trees:none; --hero-snow-extra:none;
}

/* ===== Ambiances : clair ===== */
:root[data-theme="light"][data-palette="glacier"]{
  --navy:#0f2740; --ink:#17283a; --muted:#536577; --line:#d6e2ee; --line-soft:#ebf1f7;
  --bg:#f4f7fb; --bg-top:#e4edf6; --bg-bottom:#f4f7fb; --bg-end:#f8fafd;
  --aqua:#2f6f9f; --aqua-dark:#1f5480; --aqua-soft:#e1ecf6; --badge-ink:#0f2740;
}
:root[data-theme="light"][data-palette="foret"]{
  --navy:#13301f; --ink:#1a3324; --muted:#56695c; --line:#d8e6dc; --line-soft:#ecf4ee;
  --bg:#f4f8f4; --bg-top:#e3eee5; --bg-bottom:#f4f8f4; --bg-end:#f8fbf8;
  --aqua:#2e7d4f; --aqua-dark:#1f5c39; --aqua-soft:#e0efe5; --badge-ink:#13301f;
}
:root[data-theme="light"][data-palette="sable"]{
  --navy:#3a2a12; --ink:#3a2d1a; --muted:#6b5d4b; --line:#e8dcc8; --line-soft:#f4ede1;
  --bg:#faf7f1; --bg-top:#f3ead9; --bg-bottom:#faf7f1; --bg-end:#fcfaf6;
  --aqua:#9a6a1f; --aqua-dark:#7a5114; --aqua-soft:#f5ead6; --badge-ink:#3a2a12;
}
:root[data-theme="light"][data-palette="crepuscule"]{
  --navy:#2a1f3a; --ink:#2c2438; --muted:#625870; --line:#e3d8ea; --line-soft:#f2ecf6;
  --bg:#f8f5fa; --bg-top:#efe6f3; --bg-bottom:#f8f5fa; --bg-end:#fbf9fc;
  --aqua:#7a4f9a; --aqua-dark:#5c3a78; --aqua-soft:#efe6f5; --badge-ink:#2a1f3a;
}

/* ===== Ambiances : sombre ===== */
:root[data-theme="dark"][data-palette="glacier"]{
  --bg:#0b141c; --bg-top:#0f1b26; --bg-bottom:#0b141c; --bg-end:#0a121a; --white:#142230; --field-bg:#0f1c28;
  --line:#24384a; --line-soft:#192a39; --glass:rgba(20,34,48,.72); --glass-solid:rgba(20,34,48,.96);
  --aqua:#6aa7d6; --aqua-dark:#9cc8ea; --aqua-soft:#173049; --on-accent:#08192a;
}
:root[data-theme="dark"][data-palette="foret"]{
  --bg:#0b1610; --bg-top:#0f1e15; --bg-bottom:#0b1610; --bg-end:#0a140e; --white:#14261b; --field-bg:#0f2016;
  --line:#24402f; --line-soft:#19301f; --glass:rgba(20,38,27,.72); --glass-solid:rgba(20,38,27,.96);
  --aqua:#5fb882; --aqua-dark:#8fd3a8; --aqua-soft:#173a25; --on-accent:#06200f;
}
:root[data-theme="dark"][data-palette="sable"]{
  --bg:#17130c; --bg-top:#1e1810; --bg-bottom:#17130c; --bg-end:#141009; --white:#262016; --field-bg:#1f1a11;
  --line:#3e3424; --line-soft:#2c2519; --glass:rgba(38,32,22,.72); --glass-solid:rgba(38,32,22,.96);
  --aqua:#d6a457; --aqua-dark:#e9c48a; --aqua-soft:#3b2e18; --on-accent:#231806;
}
:root[data-theme="dark"][data-palette="crepuscule"]{
  --bg:#14101a; --bg-top:#1b1524; --bg-bottom:#14101a; --bg-end:#120e17; --white:#221b2d; --field-bg:#1b1524;
  --line:#3a2f4a; --line-soft:#2a2236; --glass:rgba(34,27,45,.72); --glass-solid:rgba(34,27,45,.96);
  --aqua:#b48ad6; --aqua-dark:#d2b6ea; --aqua-soft:#33264a; --on-accent:#1c1028;
}

/* ===== Accents (après les ambiances : à spécificité égale, l'accent gagne) ===== */
:root[data-theme="light"][data-accent="sarcelle"]{--aqua:#127d89; --aqua-dark:#0c5e68; --aqua-soft:#dff0f2; --on-accent:#ffffff}
:root[data-theme="light"][data-accent="bleu"]{--aqua:#2f6f9f; --aqua-dark:#1f5480; --aqua-soft:#e1ecf6; --on-accent:#ffffff}
:root[data-theme="light"][data-accent="sapin"]{--aqua:#2e7d4f; --aqua-dark:#1f5c39; --aqua-soft:#e0efe5; --on-accent:#ffffff}
:root[data-theme="light"][data-accent="ocre"]{--aqua:#9a6a1f; --aqua-dark:#7a5114; --aqua-soft:#f5ead6; --on-accent:#ffffff}
:root[data-theme="light"][data-accent="framboise"]{--aqua:#b03a5b; --aqua-dark:#8c2a46; --aqua-soft:#f8e3ea; --on-accent:#ffffff}
:root[data-theme="light"][data-accent="ardoise"]{--aqua:#4a5d6e; --aqua-dark:#36485a; --aqua-soft:#e6ebf0; --on-accent:#ffffff}
:root[data-theme="dark"][data-accent="sarcelle"]{--aqua:#4fb3bf; --aqua-dark:#7fd0da; --aqua-soft:#173a41; --on-accent:#062126}
:root[data-theme="dark"][data-accent="bleu"]{--aqua:#6aa7d6; --aqua-dark:#9cc8ea; --aqua-soft:#173049; --on-accent:#08192a}
:root[data-theme="dark"][data-accent="sapin"]{--aqua:#5fb882; --aqua-dark:#8fd3a8; --aqua-soft:#173a25; --on-accent:#06200f}
:root[data-theme="dark"][data-accent="ocre"]{--aqua:#d6a457; --aqua-dark:#e9c48a; --aqua-soft:#3b2e18; --on-accent:#231806}
:root[data-theme="dark"][data-accent="framboise"]{--aqua:#e889a4; --aqua-dark:#f3b5c7; --aqua-soft:#3f1a26; --on-accent:#2a0a14}
:root[data-theme="dark"][data-accent="ardoise"]{--aqua:#9fb3c4; --aqua-dark:#c3d2de; --aqua-soft:#26323d; --on-accent:#121b23}

/* ===== Replis (repris d'espace.css, placés ici pour passer APRÈS les verres de chaque thème) ===== */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  :root,:root[data-theme],:root[data-theme][data-palette]{--glass:var(--glass-solid)}
}
@media (prefers-reduced-transparency:reduce){
  :root,:root[data-theme],:root[data-theme][data-palette]{--glass:var(--glass-solid);--glass-blur:none}
}

/* ===== Pastilles d'accent de Réglages › Apparence (couleur fixe : on montre l'accent, pas le thème) ===== */
.ap-sw[data-accent-sw="sarcelle"]{background:#127d89}
.ap-sw[data-accent-sw="bleu"]{background:#2f6f9f}
.ap-sw[data-accent-sw="sapin"]{background:#2e7d4f}
.ap-sw[data-accent-sw="ocre"]{background:#9a6a1f}
.ap-sw[data-accent-sw="framboise"]{background:#b03a5b}
.ap-sw[data-accent-sw="ardoise"]{background:#4a5d6e}
