/* CsLib.Web — charte Coursoft, partie commune à toutes les applications (compatible Bootstrap).
   Bronze #A1600D, noir #1A1718. Thème : sombre par défaut ; <html data-theme="light|dark"> force un mode,
   sans attribut on suit le système. Ne définit que des variables et des classes sans équivalent Bootstrap. */
:root{
  --bronze:#A1600D;--bronze-hi:#D58B2B;--bronze-glow:rgba(213,139,43,.18);--radius:16px;
  --bg:#0f0d0e;--bg2:#171415;--card:rgba(255,255,255,.04);--card-solid:#1a1718;--line:rgba(255,255,255,.09);
  --text:#f3efe9;--muted:#9a928a;
  --ok:#3ecf8e;--ok-bg:rgba(62,207,142,.12);--warn:#f2c14e;--warn-bg:rgba(242,193,78,.12);--err:#ff6b5e;--err-bg:rgba(255,107,94,.13);
  --shadow:0 10px 30px rgba(0,0,0,.35);--on-status:#0f0d0e;
  --logo-dark:block;--logo-light:none;color-scheme:dark;
}
@media (prefers-color-scheme:light){:root:not([data-theme=dark]){
  --bronze-hi:#A1600D;--bronze-glow:rgba(161,96,13,.14);
  --bg:#f5f1ec;--bg2:#ebe5de;--card:rgba(255,255,255,.75);--card-solid:#fff;--line:rgba(26,23,24,.1);
  --text:#1a1718;--muted:#7a716a;
  --ok:#14864f;--ok-bg:rgba(20,134,79,.11);--warn:#9a6a00;--warn-bg:rgba(200,140,0,.14);--err:#c62d20;--err-bg:rgba(198,45,32,.1);
  --shadow:0 8px 24px rgba(60,40,10,.1);--on-status:#fff;--logo-dark:none;--logo-light:block;color-scheme:light;}}
:root[data-theme=light]{
  --bronze-hi:#A1600D;--bronze-glow:rgba(161,96,13,.14);
  --bg:#f5f1ec;--bg2:#ebe5de;--card:rgba(255,255,255,.75);--card-solid:#fff;--line:rgba(26,23,24,.1);
  --text:#1a1718;--muted:#7a716a;
  --ok:#14864f;--ok-bg:rgba(20,134,79,.11);--warn:#9a6a00;--warn-bg:rgba(200,140,0,.14);--err:#c62d20;--err-bg:rgba(198,45,32,.1);
  --shadow:0 8px 24px rgba(60,40,10,.1);--on-status:#fff;--logo-dark:none;--logo-light:block;color-scheme:light;}
:root[data-theme=dark]{
  --bronze-hi:#D58B2B;--bronze-glow:rgba(213,139,43,.18);
  --bg:#0f0d0e;--bg2:#171415;--card:rgba(255,255,255,.04);--card-solid:#1a1718;--line:rgba(255,255,255,.09);
  --text:#f3efe9;--muted:#9a928a;
  --ok:#3ecf8e;--ok-bg:rgba(62,207,142,.12);--warn:#f2c14e;--warn-bg:rgba(242,193,78,.12);--err:#ff6b5e;--err-bg:rgba(255,107,94,.13);
  --shadow:0 10px 30px rgba(0,0,0,.35);--on-status:#0f0d0e;--logo-dark:block;--logo-light:none;color-scheme:dark;}

/* Cartes en verre, texte discret, pastilles d'état */
.muted{color:var(--muted)}
.glass{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.dot{width:9px;height:9px;border-radius:50%;background:var(--muted);display:inline-block;flex:none}
.dot.ok{background:var(--ok);box-shadow:0 0 0 4px var(--ok-bg)}.dot.warn{background:var(--warn);box-shadow:0 0 0 4px var(--warn-bg)}.dot.err{background:var(--err);box-shadow:0 0 0 4px var(--err-bg)}
.t-ok{color:var(--ok)}.t-warn{color:var(--warn)}.t-err{color:var(--err)}

/* Icônes pleines (composant <Icon>) : taille et couleur du texte */
.icon{width:1em;height:1em;vertical-align:-.125em;flex:none}

/* Logo Coursoft selon le thème (composant <CoursoftLogo>) */
.cs-logo .l-dark{display:var(--logo-dark)}.cs-logo .l-light{display:var(--logo-light)}

/* Bouton de thème (composant <ThemeToggle>) : soleil en sombre, lune en clair */
.theme-btn{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:var(--card-solid);color:var(--text);cursor:pointer;box-shadow:var(--shadow);display:grid;place-items:center;padding:0}
.theme-btn:hover{border-color:var(--bronze-hi);color:var(--bronze-hi)}
.theme-btn svg{width:18px;height:18px}
.theme-btn .i-moon{display:none}
:root[data-theme=light] .theme-btn .i-sun{display:none}:root[data-theme=light] .theme-btn .i-moon{display:block}
@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .theme-btn .i-sun{display:none}:root:not([data-theme=dark]) .theme-btn .i-moon{display:block}}
.theme-btn-form{display:contents}
