/* =========================================================
   Charte PaderfSuite — alignée sur Website/css/style.css
   CLAIR  : crème chaud (#faf4eb), encre (#141311), appbar crème
   SOMBRE : brun très foncé chaud, texte clair, appbar foncée
   Marque : #f1641e (accent) · #b54811 (foncé) · Sora + Plus Jakarta Sans
   ========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Sora:wght@500;600;700;800&display=swap');

/* =========================================================
   RTL (arabe) — le logo reste TOUJOURS à gauche de la marque
   (le lockup logo+nom garde l'ordre LTR, en-tête et pied de page)
   ========================================================= */
[dir="rtl"] .md-header__inner { direction: ltr; }
[dir="rtl"] .md-header__title { text-align: left; }
[dir="rtl"] .md-footer-meta .footer-brand-wrap { direction: ltr; }

/* =========================================================
   SÉLECTEUR DE LANGUE — pilule identique au site (.nav-language select)
   ========================================================= */
.pf-lang-wrap { display: inline-flex; align-items: center; margin: 0 0.3rem; }
.pf-lang {
  min-width: 78px;
  padding: 8px 32px 8px 14px;
  border-radius: 999px;
  border: 1px solid rgba(20, 19, 17, 0.12);
  color: #141311;
  font-family: 'Plus Jakarta Sans', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, #b54811 50%),
    linear-gradient(135deg, #b54811 50%, transparent 50%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(255, 249, 243, 0.92));
  background-position: calc(100% - 18px) calc(50% - 2px), calc(100% - 13px) calc(50% - 2px), 0 0;
  background-size: 6px 6px, 6px 6px, 100% 100%;
  background-repeat: no-repeat;
}
.pf-lang option { color: #141311; background: #fffdf8; }
/* En mode sombre : pilule sombre, flèche orange clair */
[data-md-color-scheme="slate"] .pf-lang {
  color: #f2ece2;
  border-color: rgba(255, 255, 255, 0.18);
  background-image:
    linear-gradient(45deg, transparent 50%, #ff9a5c 50%),
    linear-gradient(135deg, #ff9a5c 50%, transparent 50%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.06));
}
[data-md-color-scheme="slate"] .pf-lang option { color: #f2ece2; background: #201811; }

/* --- Marque (orange en ACCENT). Texte sur orange = clair partout --- */
[data-md-color-primary=custom] {
  --md-primary-fg-color:        #f1641e;
  --md-primary-fg-color--light: #ff7b2d;
  --md-primary-fg-color--dark:  #b54811;
  --md-primary-bg-color:        #fffdf8;
  --md-primary-bg-color--light: #fffaf2;
}
[data-md-color-accent=custom] {
  --md-accent-fg-color:              #b54811;
  --md-accent-fg-color--transparent: rgba(241, 100, 30, 0.10);
}

/* =========================================================
   TYPO (commune) — titres Sora
   ========================================================= */
.md-typeset h1, .md-typeset h2, .md-typeset h3, .md-typeset h4,
.md-nav__title, .md-header__title, .md-header__topic {
  font-family: 'Sora', 'Plus Jakarta Sans', sans-serif;
  letter-spacing: -0.01em;
}
.md-typeset h1 { font-weight: 800; }

/* Coins arrondis communs */
.md-typeset .admonition, .md-typeset details { border-radius: 14px; border-left-width: 4px; }
.md-typeset table:not([class]) { border-radius: 12px; overflow: hidden; }
.md-typeset .md-button { border-radius: 999px; }
.md-search__form, .md-search__input { border-radius: 12px; }
.md-search__output { border-radius: 0 0 12px 12px; }
.md-typeset .grid.cards > :is(ul, ol) > li,
.md-typeset .grid.cards > .card,
.md-typeset .grid > .card {
  border-radius: 22px;
  padding: 18px;
}
.md-header__button.md-logo img,
.md-header__button.md-logo svg { height: 2rem; width: auto; }

/* =========================================================
   ☀️  THÈME CLAIR  (default)
   ========================================================= */
[data-md-color-scheme="default"] {
  --md-default-bg-color:          #faf4eb;
  --md-default-fg-color:          #141311;
  --md-default-fg-color--light:   #6a6258;
  --md-default-fg-color--lighter: #8a8275;
  --md-typeset-a-color:           #b54811;
  --md-code-bg-color:             #f6efe5;
}
/* Halo de marque ancré au VIEWPORT (taille fixe) : identique sur toutes les
   pages, qu'elles soient longues ou courtes. */
[data-md-color-scheme="default"] .md-container {
  background-image:
    radial-gradient(circle at top left, rgba(241,100,30,0.05), transparent 480px),
    radial-gradient(circle at 92% 0, rgba(255,189,107,0.14), transparent 420px);
  background-attachment: fixed, fixed;
  background-repeat: no-repeat, no-repeat;
}
[data-md-color-scheme="default"] .md-typeset h1 { color: #141311; }
[data-md-color-scheme="default"] .md-typeset h2 { color: #b54811; }
[data-md-color-scheme="default"] .md-nav__link--active,
[data-md-color-scheme="default"] .md-nav__link:hover { color: #b54811; }

/* Appbar claire (= .site-header du site) */
[data-md-color-scheme="default"] .md-header,
[data-md-color-scheme="default"] .md-tabs {
  background-color: rgba(247,241,232,0.88);
  color: #141311;
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
  border-bottom: 1px solid rgba(20,19,17,0.10);
}
[data-md-color-scheme="default"] .md-header { box-shadow: 0 8px 24px rgba(31,20,8,0.06); }
[data-md-color-scheme="default"] .md-header__title,
[data-md-color-scheme="default"] .md-header__topic,
[data-md-color-scheme="default"] .md-header__button { color: #141311; }
[data-md-color-scheme="default"] .md-tabs__link { color: #6a6258; opacity: 1; font-weight: 600; }
[data-md-color-scheme="default"] .md-tabs__link--active,
[data-md-color-scheme="default"] .md-tabs__item--active .md-tabs__link,
[data-md-color-scheme="default"] .md-tabs__link:hover { color: #141311; }
[data-md-color-scheme="default"] .md-search__input { background-color: rgba(20,19,17,0.06); color: #141311; }
[data-md-color-scheme="default"] .md-search__input::placeholder { color: rgba(20,19,17,0.5); }
[data-md-color-scheme="default"] .md-search__icon { color: #6a6258; }

/* Cartes claires (= .module-card du site) */
[data-md-color-scheme="default"] .md-typeset .grid.cards > :is(ul, ol) > li,
[data-md-color-scheme="default"] .md-typeset .grid.cards > .card {
  background: rgba(255,255,255,0.78);
  border: 1px solid rgba(20,19,17,0.08);
  box-shadow: 0 14px 32px rgba(31,20,8,0.08);
  color: #141311;
}
[data-md-color-scheme="default"] .md-typeset .admonition,
[data-md-color-scheme="default"] .md-typeset details { background: rgba(255,255,255,0.7); }
[data-md-color-scheme="default"] .md-typeset table:not([class]) th { background: rgba(20,19,17,0.04); }

/* =========================================================
   🌙  THÈME SOMBRE  (slate) — brun très foncé chaud
   ========================================================= */
[data-md-color-scheme="slate"] {
  --md-hue: 28;
  --md-default-bg-color:          #17120d;
  --md-default-fg-color:          #f2ece2;
  --md-default-fg-color--light:   #cdc3b5;
  --md-default-fg-color--lighter: #9c9385;
  --md-typeset-a-color:           #ff9a5c;
  --md-code-bg-color:             #241c14;
  --md-default-fg-color--lightest: rgba(255,255,255,0.07);
}
[data-md-color-scheme="slate"] .md-container { background: none; }
[data-md-color-scheme="slate"] .md-typeset h1 { color: #ffffff; }
[data-md-color-scheme="slate"] .md-typeset h2 { color: #ff9a5c; }
[data-md-color-scheme="slate"] .md-nav__link--active,
[data-md-color-scheme="slate"] .md-nav__link:hover { color: #ff9a5c; }

/* Appbar sombre chaude + texte clair */
[data-md-color-scheme="slate"] .md-header,
[data-md-color-scheme="slate"] .md-tabs {
  background-color: #201811;
  color: #f2ece2;
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
[data-md-color-scheme="slate"] .md-header { box-shadow: 0 8px 24px rgba(0,0,0,0.4); }
[data-md-color-scheme="slate"] .md-header__title,
[data-md-color-scheme="slate"] .md-header__topic,
[data-md-color-scheme="slate"] .md-header__button { color: #f2ece2; }
[data-md-color-scheme="slate"] .md-tabs__link { color: #cdc3b5; opacity: 1; font-weight: 600; }
[data-md-color-scheme="slate"] .md-tabs__link--active,
[data-md-color-scheme="slate"] .md-tabs__item--active .md-tabs__link,
[data-md-color-scheme="slate"] .md-tabs__link:hover { color: #ffffff; }
[data-md-color-scheme="slate"] .md-search__input { background-color: rgba(255,255,255,0.08); color: #f2ece2; }
[data-md-color-scheme="slate"] .md-search__input::placeholder { color: rgba(255,255,255,0.5); }
[data-md-color-scheme="slate"] .md-search__icon { color: #cdc3b5; }

/* Cartes sombres translucides */
[data-md-color-scheme="slate"] .md-typeset .grid.cards > :is(ul, ol) > li,
[data-md-color-scheme="slate"] .md-typeset .grid.cards > .card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  box-shadow: 0 14px 32px rgba(0,0,0,0.35);
  color: #f2ece2;
}
[data-md-color-scheme="slate"] .md-typeset .grid.cards > :is(ul, ol) > li:hover,
[data-md-color-scheme="slate"] .md-typeset .grid.cards > .card:hover {
  border-color: rgba(241,100,30,0.55);
}
[data-md-color-scheme="slate"] .md-typeset .admonition,
[data-md-color-scheme="slate"] .md-typeset details { background: rgba(255,255,255,0.03); }
[data-md-color-scheme="slate"] .md-typeset table:not([class]) th { background: rgba(255,255,255,0.06); }

/* Survol commun des cartes */
.md-typeset .grid.cards > :is(ul, ol) > li:hover,
.md-typeset .grid.cards > .card:hover { box-shadow: 0 18px 48px rgba(0,0,0,0.18); }
.md-typeset .admonition.tip, .md-typeset details.tip { border-color: #1f7a57; }

/* =========================================================
   PIED DE PAGE — CSS EXACT du site PaderfSuite (.site-footer)
   recopié à l'identique, scopé sous .md-footer-meta
   ========================================================= */
/* On neutralise tout l'habillage Material du pied de page : seule la bande
   .site-footer (fond 0.96, padding 28/36 du site) doit être visible. */
.md-footer { background-color: transparent; padding: 0; }
.md-footer-meta { background-color: transparent; padding: 0; }
.md-footer-meta__inner {
  display: block;
  max-width: none;
  margin: 0;
  padding: 0;
}
.md-footer-meta .md-copyright {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  font-size: 16px;
}

.md-footer-meta .site-footer {
  padding: 28px 0 36px;
  border-top: 1px solid rgba(20, 19, 17, 0.08);
  background: rgba(19, 18, 17, 0.96);
  color: rgba(255, 250, 242, 0.84);
  font-family: 'Plus Jakarta Sans', sans-serif;
  /* Material force html à 125% : on fige en px pour matcher le site (racine 16px) */
  font-size: 16px;
  line-height: 1.6;
}
.md-footer-meta .site-footer * { font-size: 16px; }
.md-footer-meta .container {
  width: min(100% - 32px, 1240px);
  margin: 0 auto;
}
.md-footer-meta .footer-shell {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.md-footer-meta .footer-brand-wrap {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
}
.md-footer-meta .brand-mark {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  overflow: hidden;
  background: #000000;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 8px 24px rgba(31, 20, 8, 0.06);
}
.md-footer-meta .footer-brand-mark { width: 36px; height: 36px; }
.md-footer-meta .brand-mark img { width: 100%; height: 100%; padding: 5px; object-fit: contain; }
.md-footer-meta .brand-text { font-size: 16px; letter-spacing: -0.02em; }
.md-footer-meta .footer-brand { color: #fff; }
.md-footer-meta .site-footer p { max-width: 58ch; margin: 0; color: rgba(255, 250, 242, 0.64); }
.md-footer-meta .footer-links { display: flex; flex-wrap: wrap; gap: 18px; }
.md-footer-meta .footer-links a {
  color: rgba(255, 250, 242, 0.84);
  text-decoration: none;
}
.md-footer-meta .footer-links a:hover { color: #ff9a5c; }
@media screen and (max-width: 820px) {
  .md-footer-meta .footer-shell { flex-direction: column; align-items: flex-start; }
}
