/* ===== Thème moderne – CS1 SR1 BTS SIO SISR ===== */
:root {
  --c1: #4f46e5; --c2: #06b6d4; --c3: #10b981;
  --radius: 14px;
  --shadow: 0 1px 2px rgba(15,23,42,.06), 0 8px 24px -8px rgba(15,23,42,.18);
  --md-text-font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --md-code-font: ui-monospace, "Cascadia Code", "SF Mono", Menlo, Consolas, monospace;
}
[data-md-color-scheme="default"] {
  --md-primary-fg-color: #4f46e5; --md-primary-fg-color--light: #6366f1; --md-primary-fg-color--dark: #3730a3;
  --md-accent-fg-color: #06b6d4;
  --md-default-bg-color: #fbfbfe;
  --md-typeset-a-color: #4338ca;
  --card-bg: #ffffff; --card-border: #e5e7f3;
}
[data-md-color-scheme="slate"] {
  --md-hue: 232;
  --md-primary-fg-color: #1e1b4b; --md-accent-fg-color: #22d3ee;
  --md-typeset-a-color: #818cf8;
  --card-bg: #1b1d2e; --card-border: #2c2f48;
}

/* En-tête dégradé */
.md-header, .md-tabs { background: linear-gradient(100deg, #3730a3 0%, #4f46e5 55%, #0891b2 100%); }
[data-md-color-scheme="slate"] .md-header, [data-md-color-scheme="slate"] .md-tabs { background: linear-gradient(100deg, #0f0e2a 0%, #1e1b4b 60%, #134e5e 100%); }
.md-header { box-shadow: 0 2px 14px rgba(30,27,75,.35); }
.md-tabs__link { opacity: .8; font-weight: 600; }
.md-tabs__link--active, .md-tabs__link:hover { opacity: 1; }

/* Lecture confortable */
.md-typeset { font-size: .82rem; line-height: 1.75; }
.md-content__inner { margin-bottom: 3rem; }
.md-typeset h1 { font-weight: 800; letter-spacing: -.02em; color: var(--md-default-fg-color); margin-bottom: .6em;
  background: linear-gradient(90deg, var(--c1), var(--c2)); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.md-typeset h2 { font-weight: 700; margin-top: 2.2em; padding: 0 0 .3em; border-bottom: 3px solid transparent;
  border-image: linear-gradient(90deg, var(--c1), var(--c2), transparent) 1; }
.md-typeset h3 { font-weight: 650; color: var(--md-primary-fg-color--light); }
[data-md-color-scheme="slate"] .md-typeset h3 { color: #a5b4fc; }
.md-typeset img { max-width: 100%; height: auto; }
.md-typeset p > img:only-child { display: block; margin: 1rem auto; border-radius: var(--radius); box-shadow: var(--shadow); background: #fff; padding: .4rem; }
.md-typeset kbd { white-space: nowrap; border-radius: 6px; }
.md-typeset code { border-radius: 6px; }
.md-typeset pre > code { border-radius: var(--radius); }
.md-typeset hr { border: 0; height: 2px; background: linear-gradient(90deg, var(--c1), var(--c2), transparent); opacity: .5; margin: 2rem 0; }

/* Encadrés (alertes GitHub) */
.md-typeset .admonition, .md-typeset details {
  font-size: .8rem; border: 0; border-left: 5px solid; border-radius: var(--radius);
  box-shadow: var(--shadow); background: var(--card-bg); overflow: hidden; }
.md-typeset .admonition-title, .md-typeset summary { font-weight: 700; border-radius: 0; }
.md-typeset details > summary { cursor: pointer; }
.md-typeset details:not([open]) { box-shadow: 0 1px 2px rgba(15,23,42,.06); }
/* Questions de compréhension : réponses repliées bien visibles */
.md-typeset details:not(.note):not(.tip):not(.warning):not(.important) { border-left-color: var(--c3); }
.md-typeset details:not(.note):not(.tip):not(.warning):not(.important) > summary { background: color-mix(in srgb, var(--c3) 12%, transparent); }

/* Tableaux */
.md-typeset__table { display: block; width: 100%; overflow-x: auto; }
.md-typeset__table table:not([class]) { display: table; width: 100%; }
.md-typeset table:not([class]) th, .md-typeset table:not([class]) td { min-width: 5.5rem; vertical-align: top; }
.md-typeset table:not([class]) td code { overflow-wrap: anywhere; white-space: normal; }
.md-typeset table:not([class]) { font-size: .76rem; border: 1px solid var(--card-border); border-radius: var(--radius); box-shadow: var(--shadow);
  border-collapse: separate; border-spacing: 0; overflow: hidden; background: var(--card-bg); }
.md-typeset table:not([class]) th { background: linear-gradient(180deg, color-mix(in srgb, var(--c1) 14%, transparent), color-mix(in srgb, var(--c1) 6%, transparent));
  font-weight: 700; color: var(--md-default-fg-color); border-bottom: 2px solid var(--card-border); }
.md-typeset table:not([class]) td { border-top: 1px solid var(--card-border); }
.md-typeset table:not([class]) tbody tr:hover { background: color-mix(in srgb, var(--c2) 8%, transparent); }

/* Pastilles et boutons (ajoutés par extra.js) */
.pill { display: inline-block; padding: .1em .75em; border-radius: 999px; font-weight: 700; font-size: .72rem; white-space: nowrap; }
.pill-g { background: #d1fae5; color: #065f46; } .pill-y { background: #fef3c7; color: #92400e; } .pill-r { background: #fee2e2; color: #991b1b; }
[data-md-color-scheme="slate"] .pill-g { background: #064e3b; color: #a7f3d0; }
[data-md-color-scheme="slate"] .pill-y { background: #78350f; color: #fde68a; }
[data-md-color-scheme="slate"] .pill-r { background: #7f1d1d; color: #fecaca; }
.btn-open { display: inline-block; padding: .25em .9em; border-radius: 999px; font-weight: 700; color: #fff !important;
  background: linear-gradient(90deg, var(--c1), var(--c2)); box-shadow: 0 4px 12px -4px rgba(79,70,229,.6); transition: transform .15s, box-shadow .15s; }
.btn-open:hover { transform: translateY(-1px); box-shadow: 0 8px 18px -6px rgba(79,70,229,.7); }
.soon { opacity: .55; font-style: italic; }

/* Page d'accueil */
.hero { text-align: center; padding: 2.6rem 1.2rem 2.2rem; margin: 0 0 1.8rem; border-radius: 22px; color: #fff;
  background: radial-gradient(circle at 15% 20%, rgba(34,211,238,.45), transparent 45%), radial-gradient(circle at 85% 80%, rgba(16,185,129,.35), transparent 40%),
   linear-gradient(135deg, #312e81, #4f46e5 60%, #0e7490); box-shadow: 0 18px 40px -18px rgba(49,46,129,.7); }
.hero h1 { color: #fff !important; -webkit-text-fill-color: #fff; background: none; font-size: 2.1rem; margin: 0 0 .4rem; }
.hero p { margin: .3rem auto; max-width: 38rem; opacity: .95; font-size: .95rem; }
.hero .hero-btn { display: inline-block; margin: .9rem .3rem 0; padding: .55em 1.3em; border-radius: 999px; font-weight: 700; text-decoration: none;
  background: #fff; color: #3730a3 !important; box-shadow: 0 8px 20px -8px rgba(0,0,0,.5); transition: transform .15s; }
.hero .hero-btn.alt { background: rgba(255,255,255,.16); color: #fff !important; border: 1px solid rgba(255,255,255,.5); }
.hero .hero-btn:hover { transform: translateY(-2px); }

.cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1rem; margin: 1.2rem 0; }
.card { position: relative; padding: 1.2rem 1.2rem 1rem; border-radius: var(--radius); background: var(--card-bg); border: 1px solid var(--card-border);
  box-shadow: var(--shadow); transition: transform .18s, box-shadow .18s; overflow: hidden; }
.card::before { content: ""; position: absolute; inset: 0 0 auto 0; height: 5px; background: linear-gradient(90deg, var(--c1), var(--c2)); }
.card:hover { transform: translateY(-4px); box-shadow: 0 16px 34px -14px rgba(79,70,229,.45); }
.card .big { font-size: 2rem; line-height: 1; }
.card h3 { margin: .4rem 0 .2rem; } .card p { margin: .2rem 0; } .card a.go { font-weight: 700; }
.card.green::before { background: linear-gradient(90deg, #10b981, #06b6d4); }
.card.amber::before { background: linear-gradient(90deg, #f59e0b, #10b981); }

.steps { counter-reset: s; display: grid; grid-template-columns: repeat(auto-fit, minmax(150px,1fr)); gap: .8rem; margin: 1rem 0; }
.steps div { counter-increment: s; padding: .8rem; border-radius: var(--radius); background: var(--card-bg); border: 1px solid var(--card-border); font-size: .76rem; }
.steps div::before { content: counter(s); display: inline-flex; width: 1.7rem; height: 1.7rem; margin-bottom: .3rem; align-items: center; justify-content: center;
  border-radius: 50%; color: #fff; font-weight: 800; background: linear-gradient(135deg, var(--c1), var(--c2)); }


.md-header__button.md-logo img,.md-header__button.md-logo svg{height:1.6rem;width:1.6rem}
.card.violet::before { background: linear-gradient(90deg, #8b5cf6, #ec4899); }

/* Mode projection (bouton dans l'en-tête) : texte ~1,4× plus grand, contenu pleine largeur, panneaux latéraux masqués */
html.projection { font-size: 175% !important; }
html.projection .md-sidebar { display: none; }
html.projection .md-grid { max-width: 72rem; }
html.projection .md-content { margin: 0 auto; }
html.projection .md-typeset { line-height: 1.6; }
#projection-btn[aria-pressed="true"] { background: rgba(255,255,255,.22); border-radius: 8px; }

/* Mise en page large : le contenu et les panneaux latéraux occupent la largeur de l'écran */
@media screen and (min-width: 76.25em) {
  .md-grid { max-width: 108rem; }
  .md-sidebar--primary { width: 13.5rem; }
  .md-sidebar--secondary { width: 12rem; }
}
/* Panneaux latéraux repliables (flèches) */
html.hide-nav .md-sidebar--primary, html.hide-toc .md-sidebar--secondary { display: none; }
.side-toggle { display: none; position: fixed; top: 50%; z-index: 4; width: 1.5rem; height: 3.2rem; padding: 0; border: 1px solid var(--card-border);
  background: var(--card-bg); color: var(--md-default-fg-color); cursor: pointer; font-size: 1rem; line-height: 1; opacity: .75; box-shadow: var(--shadow); }
.side-toggle:hover { opacity: 1; background: color-mix(in srgb, var(--c2) 12%, var(--card-bg)); }
#toggle-nav { left: 0; border-radius: 0 8px 8px 0; border-left: 0; }
#toggle-toc { right: 0; border-radius: 8px 0 0 8px; border-right: 0; }
@media screen and (min-width: 76.25em) { .side-toggle { display: block; } }
html.projection .side-toggle { display: none; }
@media screen and (min-width: 76.25em) {
  .md-sidebar--primary .md-sidebar__scrollwrap { margin-left: 1.5rem; }
  .md-sidebar--secondary .md-sidebar__scrollwrap { margin-right: 1.5rem; }
  html.hide-nav.hide-toc .md-content { max-width: 88rem; margin: 0 auto; }
}


/* ===== Export PDF : bouton dans l'en-tête + mise en page « manuel » ===== */
#print-cover, #print-colophon { display: none; }
#pdf-btn { cursor: pointer; }

@page {
  size: A4;
  margin: 22mm 20mm 24mm 20mm;
  @bottom-left  { content: "yahnlp.github.io/bts1-sio-sisr-cejma"; font: 7.5pt "Segoe UI", Helvetica, Arial, sans-serif; color: #6b7280; }
  @bottom-right { content: "Page " counter(page) " / " counter(pages); font: 7.5pt "Segoe UI", Helvetica, Arial, sans-serif; color: #6b7280; }
}

@media print {
  :root { --pf-serif: "Source Serif 4", Charter, "Iowan Old Style", Georgia, Cambria, "Times New Roman", serif;
          --pf-sans: "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
          --pf-mono: "JetBrains Mono", Consolas, "DejaVu Sans Mono", Menlo, monospace;
          --pf-ink: #1a1a1a; --pf-navy: #1f2a6b; --pf-rule: #c9cde3; --pf-tint: #f4f5fb; }
  * { -webkit-print-color-adjust: exact; print-color-adjust: exact; box-shadow: none !important; }
  html { font-size: 100% !important; }
  body, .md-main, .md-content, .md-main__inner { background: #fff !important; color: var(--pf-ink) !important; }
  .md-header, .md-tabs, .md-sidebar, .md-footer, .md-top, .md-source-file, .md-content__button, .side-toggle, .md-dialog,
  .headerlink, .md-clipboard, .md-search, .md-banner { display: none !important; }
  .md-main__inner, .md-grid, .md-content, .md-content__inner { margin: 0 !important; padding: 0 !important; max-width: none !important; }

  /* Texte courant */
  .md-typeset { font-family: var(--pf-serif); font-size: 10.5pt !important; line-height: 1.55; color: var(--pf-ink);
                text-align: justify; hyphens: auto; -webkit-hyphens: auto; }
  .md-typeset p, .md-typeset li { orphans: 3; widows: 3; }
  .md-typeset p { margin: 0 0 .65em; }
  .md-typeset li, .md-typeset dd { text-align: left; }
  .md-typeset ul, .md-typeset ol { margin: 0 0 .75em; }
  .md-typeset li { margin-bottom: .2em; }
  .md-typeset strong { color: #000; }
  .md-typeset a { color: var(--pf-navy); text-decoration: none; }
  .md-typeset hr { border: 0; border-top: .6pt solid var(--pf-rule); margin: 1.2em 0; }

  /* Titres */
  .md-typeset h1 { display: none; }
  .md-typeset h2, .md-typeset h3, .md-typeset h4 { font-family: var(--pf-sans); color: var(--pf-navy); font-weight: 700; text-align: left; hyphens: manual; break-after: avoid; break-inside: avoid; }
  .md-typeset h2 { font-size: 15.5pt; margin: 1.6em 0 .6em; padding: 0 0 3pt; border: 0; border-bottom: 1.2pt solid var(--pf-navy); border-image: none; background: none !important; }
  .md-typeset h2::before, .md-typeset h2::after, .md-typeset h3::after { display: none !important; }
  .md-typeset h3 { font-size: 12.5pt; margin: 1.3em 0 .45em; }
  .md-typeset h4 { font-size: 10.5pt; margin: 1.1em 0 .35em; text-transform: uppercase; letter-spacing: .04em; }

  /* Code */
  .md-typeset code { font-family: var(--pf-mono); font-size: .86em; background: #f0f1f6; border-radius: 2pt; padding: .05em .3em; color: #111; }
  .md-typeset pre, .md-typeset .highlight { break-inside: avoid; margin: .6em 0 .9em; }
  .md-typeset pre { background: #f6f7fa !important; border: .6pt solid var(--pf-rule); border-left: 2.5pt solid var(--pf-navy); border-radius: 2pt; padding: 6pt 9pt; text-align: left; }
  .md-code__nav, .md-typeset .md-code__nav, .md-typeset .md-clipboard { display: none !important; }
  .md-typeset .admonition pre, .md-typeset details pre { border-left-width: .6pt; border-left-color: var(--pf-rule); background: #fff !important; margin: .4em 0 .7em; }
  .md-typeset pre > code { background: none !important; padding: 0; font-size: 8.6pt; line-height: 1.45; white-space: pre-wrap !important; overflow-wrap: anywhere; }

  /* Tableaux */
  .md-typeset .md-typeset__table, .md-typeset table:not([class]) { display: table !important; width: 100% !important; overflow: visible !important; }
  .md-typeset table:not([class]) { font-family: var(--pf-sans); font-size: 9pt; line-height: 1.4; text-align: left; hyphens: manual;
                                   border-collapse: collapse; border-top: 1.2pt solid var(--pf-navy); border-bottom: 1.2pt solid var(--pf-navy); margin: .8em 0 1.1em; }
  .md-typeset table:not([class]) thead { display: table-header-group; }
  .md-typeset table:not([class]) th { background: var(--pf-tint) !important; color: var(--pf-navy); font-weight: 700; border-bottom: .8pt solid var(--pf-navy); padding: 4pt 6pt; }
  .md-typeset table:not([class]) td { border: .5pt solid var(--pf-rule); border-left: 0; border-right: 0; padding: 4pt 6pt; vertical-align: top; }
  .md-typeset table:not([class]) tr { break-inside: avoid; }
  .md-typeset td code, .md-typeset th code { font-size: .92em; }

  /* Encadrés */
  .md-typeset .admonition, .md-typeset details:not(.print-hide), .md-typeset blockquote {
      break-inside: avoid; margin: .9em 0 1.1em; border: .6pt solid var(--pf-rule); border-left: 3pt solid var(--pf-navy);
      border-radius: 2pt; background: var(--pf-tint) !important; padding: 0; font-size: 9.8pt; text-align: left; }
  .md-typeset .admonition > :not(.admonition-title), .md-typeset details > :not(summary) { margin-left: 9pt; margin-right: 9pt; }
  .md-typeset .admonition-title, .md-typeset summary { font-family: var(--pf-sans); font-size: 8.5pt; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
      color: var(--pf-navy); background: transparent !important; padding: 5pt 9pt 2pt !important; margin: 0 !important; }
  .md-typeset .admonition-title::before, .md-typeset summary::before, .md-typeset summary::after, .md-typeset .admonition-title::after { display: none !important; }
  .md-typeset .admonition.warning, .md-typeset .admonition.danger, .md-typeset .admonition.caution { border-left-color: #b45309; background: #fffaf0 !important; }
  .md-typeset .admonition.warning .admonition-title, .md-typeset .admonition.danger .admonition-title { color: #92400e; }
  .md-typeset .admonition.tip, .md-typeset .admonition.success { border-left-color: #1b7a4b; background: #f3faf6 !important; }
  .md-typeset .admonition.tip .admonition-title, .md-typeset .admonition.success .admonition-title { color: #14633c; }
  .md-typeset .admonition > p:last-child, .md-typeset details > :last-child { margin-bottom: 6pt; }
  .md-typeset img, .md-typeset svg, .md-typeset figure, .md-typeset .mermaid { max-width: 100%; height: auto; break-inside: avoid; }
  .md-typeset img { display: block; margin: .6em auto; }

  /* Cases à cocher */
  .md-typeset .task-list-control .task-list-indicator::before { -webkit-mask: none !important; mask: none !important; background: #fff !important;
      border: .8pt solid #444; border-radius: 1.5pt; width: 3.2mm; height: 3.2mm; top: .3em; }
  .md-typeset [type=checkbox]:checked + .task-list-indicator::before { background: #fff !important; }

  /* En-tête d'identité (première page) */
  #print-cover { display: block; margin: 0 0 18pt; padding: 0; break-inside: avoid; font-family: var(--pf-sans); border-top: 4pt solid var(--pf-navy); }
  #print-cover .pc-top { display: flex; justify-content: space-between; align-items: center; padding: 8pt 0 0; font-size: 8.5pt; letter-spacing: .12em; text-transform: uppercase; color: var(--pf-navy); font-weight: 700; }
  #print-cover .pc-top .pc-left { display: flex; align-items: center; gap: 7pt; }
  #print-cover .pc-top img { height: 15pt; width: 15pt; }
  #print-cover .pc-kind { color: #6b7280; }
  #print-cover .pc-title { font-family: var(--pf-serif); font-size: 25pt; line-height: 1.15; font-weight: 700; color: #111; margin: 16pt 0 5pt; text-align: left; hyphens: manual; }
  #print-cover .pc-module { font-size: 11pt; color: #374151; margin: 0 0 12pt; text-align: left; }
  #print-cover .pc-meta { display: flex; flex-wrap: wrap; gap: 2pt 16pt; padding: 7pt 0; border-top: .6pt solid var(--pf-rule); border-bottom: .6pt solid var(--pf-rule); font-size: 8.5pt; color: #374151; text-align: left; }
  #print-cover .pc-meta b { color: var(--pf-navy); }

  /* Licences et crédits (fin de document) */
  #print-colophon { display: block; margin-top: 22pt; padding: 9pt 11pt; border: .6pt solid var(--pf-rule); border-top: 2.5pt solid var(--pf-navy); background: var(--pf-tint);
                    font-family: var(--pf-sans); font-size: 8pt; line-height: 1.45; color: #374151; break-inside: avoid; text-align: left; hyphens: manual; }
  #print-colophon h2 { font-size: 9.5pt !important; margin: 0 0 4pt !important; padding: 0 !important; border: 0 !important; text-transform: uppercase; letter-spacing: .08em; color: var(--pf-navy) !important; }
  #print-colophon p { margin: 0 0 4pt; text-align: left; }
  #print-colophon table { width: 100%; border-collapse: collapse; margin: 4pt 0 5pt; font-size: 7.8pt; border: 0 !important; }
  #print-colophon th, #print-colophon td { border: 0 !important; border-bottom: .4pt solid var(--pf-rule) !important; padding: 2pt 4pt 2pt 0; text-align: left; vertical-align: top; background: none !important; color: #374151; }
  #print-colophon th { font-weight: 700; color: var(--pf-navy); }
  #print-colophon small { color: #4b5563; }
  #print-colophon table + p small, #print-colophon > p:last-child small { font-size: 7.2pt; }

  /* Zones de réponse manuscrites */
  .print-hide { display: none !important; }
  .answer-zone { display: block; position: relative; height: calc(var(--lines, 3) * 8mm + 6mm); margin: .5em 0 1.1em;
                 border: .6pt solid #aab1d6; border-radius: 3pt; background-color: #fff;
                 background-image: linear-gradient(to bottom, transparent calc(8mm - 1px), #d3d6e6 calc(8mm - 1px));
                 background-size: 100% 8mm; background-position: 0 6mm; break-inside: avoid; }
  .answer-zone .az-label { position: absolute; top: 1.4mm; left: 2.5mm; font: 700 6.8pt var(--pf-sans); color: #7a82a8; letter-spacing: .1em; text-transform: uppercase; }
  .md-typeset td.ans-cell { height: 13mm; min-width: 28mm; background-image: linear-gradient(to bottom, transparent calc(100% - 4mm), #dfe2ef calc(100% - 4mm), #dfe2ef calc(100% - 4mm + 1px), transparent calc(100% - 4mm + 1px)); }
  .md-typeset .blank { display: inline-block; min-width: min(calc(var(--n, 12) * 1.25ch), 100%); border-bottom: .7pt solid #555; height: 1.05em; vertical-align: baseline; margin: 0 .15em; }
  .md-typeset .blank-long { display: block; width: 100%; height: 16mm; border-bottom: 0; margin: .3em 0;
                 background-image: linear-gradient(to bottom, transparent calc(8mm - 1px), #888 calc(8mm - 1px)); background-size: 100% 8mm; }
}

/* Badge « notion technique » et encadré « Pour aller plus loin » */
.technique { display: inline-block; padding: 0 .55em; margin-left: .3em; border-radius: 999px; font-size: .68rem; font-weight: 700;
  letter-spacing: .02em; vertical-align: middle; color: #7c2d12; background: #ffedd5; border: 1px solid #fdba74; white-space: nowrap; }
[data-md-color-scheme="slate"] .technique { color: #fed7aa; background: #431407; border-color: #9a3412; }
.technique::before { content: "\2605\00a0"; }
.md-typeset .callout[data-callout="tip"] { }

/* Page d'accueil : présentation du bandeau */
.hero .hero-kicker { letter-spacing: .06em; font-size: .78rem; font-weight: 700; opacity: .9; margin: 0 0 .2rem; }
.hero .hero-sem { display: flex; justify-content: center; gap: .6rem; flex-wrap: wrap; margin: .6rem auto .2rem; }
.hero .hero-sem span { background: rgba(255,255,255,.18); border: 1px solid rgba(255,255,255,.45); border-radius: 999px; padding: .2em .9em; font-weight: 600; font-size: .85rem; }
.hero .hero-sub { font-size: 1.05rem; font-weight: 600; margin-top: .7rem; }
.hero .hero-author { font-size: .85rem; opacity: .85; }
.hero .hero-quote { margin: 1.1rem auto .2rem; padding-top: .9rem; border-top: 1px solid rgba(255,255,255,.3); max-width: 30rem; font-size: 1rem; font-style: italic; line-height: 1.5; }
.hero .hero-quote strong { font-style: normal; }

/* Bouton « Accueil » de la barre du haut (retour au portail) */
.md-header__button.home-general {
  display: inline-flex; align-items: center; gap: .35rem;
  width: auto; padding: .2rem .55rem; margin: 0 .2rem;
  border-radius: .3rem; color: inherit; font-size: .72rem; font-weight: 600; line-height: 1;
}
.md-header__button.home-general:hover { background: rgba(255, 255, 255, .15); opacity: 1; }
.md-header__button.home-general svg { flex: none; }
@media screen and (max-width: 59.9375em) { .home-general__txt { display: none; } .md-header__button.home-general { padding: .2rem; } }
@media print { .md-header__button.home-general { display: none; } }
