:root {
  --bg: #545351;
  --width-mm: 210;
  --margin-top-mm: 12;
  --margin-right-mm: 15;
  --margin-bottom-mm: 12;
  --margin-left-mm: 15;
  --font-size-pt: 12;


  /* Actual width */
  --width: min(280mm, 97vw);

  --inner-width-mm: calc(var(--width-mm) - (var(--margin-left-mm) + var(--margin-right-mm)));
  --inner-width: calc(var(--width) * var(--inner-width-mm) / var(--width-mm));

  --mm: calc(var(--width) / var(--width-mm));

  --pt: calc(var(--mm) * 0.352778);
  --page-margin: calc(var(--margin-top-mm) * var(--mm)) calc(var(--margin-right-mm) * var(--mm)) calc(var(--margin-bottom-mm) * var(--mm)) calc(var(--margin-left-mm) * var(--mm));
}

body {
  background: var(--bg);
  font-size: calc(var(--pt) * var(--font-size-pt));
  width: var(--width);
  margin: auto;
}





h1 {
  font-size: 1.7em;
}
section-row {
  display: flex;
  gap: 1em;
}
rich-text {
  display: block;
  /* min-width: 0.5em */
}

table, rich-text, code-insert {
  font-size: calc(var(--font-size-pt) * var(--pt));
}
section {
  display: flex;
  flex-direction: column;
  gap: 1em;
}
section-image img{
  width: 100%;
  /* height: 100%; */
}

section-image {
  display: flex;
  flex-direction: column;
  align-items:center;
  break-inside: avoid;
  page-break-inside: avoid;
  --img-width: 100%;
}
section-row > * {
  width: var(--img-width);
}
:not(section-row) > section-image img,:not(section-row) > section-image svg  {
  width: var(--img-width);
}

section-row > .wide {
  width: 100%;
}

dox-table table {
  border-collapse: collapse;
  margin: auto;
}
dox-table td {
  border: 1px solid black;
  padding: 0.3em;
}

code-insert pre {margin: 0;}
/* code-insert code.hljs {background: transparent;
font-size: 0.9em; padding: 0;} */

mjx-frac mjx-dbox mjx-line {
  margin-bottom: 2px;
}

@page {
  margin: 12mm 15mm 12mm 15mm;
}

@media print{
  * {
    --pt: 1pt;
    --mm: 1mm;
    --margin-top-mm: 0;
    --margin-bottom-mm: 0;
    --margin-left-mm: 0;
    --margin-right-mm: 0;
    --width: 100vw;
  }

  body {
    position: relative;
    /* width: 100vw; */
    background: white;
    margin: 0;
    /* margin: var(--page-margin); */
    /* --inner-width: */

  }

  section {
    display: block;
    page-break-inside: avoid;
  }

 

  section-row {
    break-inside: avoid;
    page-break-inside: avoid;
  }



  .dox-container > section > section{
    page-break-after: always;
  }
}
