/* =========================================================
   OUTPUTS JUPYTER / QUARTO
   ========================================================= */

.cell-output,
pre.output,
div.output {
  background-color: #f7fdf9;
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 0.75em 1em;
  margin: 0.75em 0;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
  overflow-x: auto;
  font-family: monospace;
  font-size: 0.9em;
  line-height: 1.2;
}

span.math.display {
  display: block;
  text-align: center;
  margin: 1.2em auto;
  font-size: 1.05em;
}

/* =========================================================
   NUMÉROTATION DES TITRES DANS LES NOTEBBOOKS
   ========================================================= */

#quarto-document-content {
  counter-reset: h2;
}

#quarto-document-content section.level2:not([data-number]) > h2::before {
  counter-increment: h2;
  content: counter(h2) ". ";
  margin-right: 0.3em;
}

#quarto-document-content section.level2 {
  counter-reset: h3;
}

#quarto-document-content section.level3:not([data-number]) > h3::before {
  counter-increment: h3;
  content: counter(h2) "." counter(h3) ". ";
  margin-right: 0.3em;
}

#quarto-document-content section.level3 {
  counter-reset: h4;
}

#quarto-document-content section.level4:not([data-number]) > h4::before {
  counter-increment: h4;
  content: counter(h2) "." counter(h3) "." counter(h4) ". ";
  margin-right: 0.3em;
}

/* =========================================================
   SIDEBAR / TOC - STYLE CÉRULEAN
   ========================================================= */

#quarto-sidebar {
  background-color: #f7f7f7;
  padding: 0.5rem 0.75rem;
  overflow-x: hidden;
}

#quarto-sidebar .sidebar-divider {
  border-color: #ddd;
  margin: 0.5rem 0;
}

#quarto-sidebar .sidebar-item-toggle {
  color: #0275d8;
}

#quarto-sidebar .sidebar-item-toggle:hover {
  color: #025aa5;
}

#quarto-sidebar .sidebar-item .sidebar-item-text .menu-text {
  display: block;
  width: 100%;
  padding: 4px 10px;
  color: #2c3e50;
  border-radius: 3px;
}

#quarto-sidebar .sidebar-item .sidebar-item-text .chapter-number {
  font-weight: bold;
  margin-right: 4px;
  color: #0275d8;
}

#quarto-sidebar .sidebar-item .sidebar-item-text:hover .menu-text {
  background-color: #d9edf7;
  color: #2c3e50;
}

#quarto-sidebar .sidebar-item.active > .sidebar-item-container > .sidebar-item-text .menu-text {
  background-color: #025aa5;
  color: white;
}

#quarto-sidebar .sidebar-item-section > .sidebar-item-container > a > .menu-text strong {
  display: block;
  width: 100%;
  background-color: #2FA4E7;
  color: white;
  padding: 6px 12px;
  border-radius: 4px;
  margin-bottom: 4px;
  box-sizing: border-box;
}

#quarto-sidebar .sidebar-item-section > .sidebar-item-container > a:hover > .menu-text strong {
  background-color: #1C7EBB;
  color: white;
}

#quarto-sidebar .sidebar-item.active > .sidebar-item-container > a > .menu-text strong {
  background-color: #014c8c;
  color: white;
}

/* =========================================================
   TOC DE LA COLONNE DE DROITE
   ========================================================= */

#quarto-margin-sidebar nav#TOC {
  counter-reset: toc-h2;
}

#quarto-margin-sidebar nav#TOC > ul > li:not(:has(a > .header-section-number)) {
  counter-increment: toc-h2;
}

#quarto-margin-sidebar nav#TOC > ul > li > a:not(:has(.header-section-number))::before {
  content: counter(toc-h2) ". ";
  margin-right: 0.3em;
}

#quarto-margin-sidebar nav#TOC ul ul {
  counter-reset: toc-h3;
}

#quarto-margin-sidebar nav#TOC ul ul > li:not(:has(a > .header-section-number)) {
  counter-increment: toc-h3;
}

#quarto-margin-sidebar nav#TOC ul ul > li > a:not(:has(.header-section-number))::before {
  content: counter(toc-h2) "." counter(toc-h3) ". ";
  margin-right: 0.3em;
}

#quarto-margin-sidebar nav#TOC ul ul ul {
  counter-reset: toc-h4;
}

#quarto-margin-sidebar nav#TOC ul ul ul > li:not(:has(a > .header-section-number)) {
  counter-increment: toc-h4;
}

#quarto-margin-sidebar nav#TOC ul ul ul > li > a:not(:has(.header-section-number))::before {
  content: counter(toc-h2) "." counter(toc-h3) "." counter(toc-h4) ". ";
  margin-right: 0.3em;
}
