/* di·em – Befundblatt */
@font-face{font-family:"Faustina";src:url("/assets/fonts/faustina.woff2") format("woff2");font-weight:300 800;font-style:normal;font-display:swap}
@font-face{font-family:"Faustina";src:url("/assets/fonts/faustina-kursiv.woff2") format("woff2");font-weight:300 800;font-style:italic;font-display:swap}
@font-face{font-family:"Sofia Sans Condensed";src:url("/assets/fonts/sofia-sans-condensed.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap}

:root{
  --grund:#eef2f1;--blatt:#fcfdfc;--tinte:#152225;--grau:#52615f;--linie:#cad6d3;--linie-hell:#dfe7e5;
  --kobalt:#0f5f7a;--kobalt-tief:#0a3f52;--signal:#d9531e;--signal-text:#a63c10;--salbei:#8fb3a0;--salbei-hell:#e3eee8;--gelb:#f2c14e;
  --titel:"Sofia Sans Condensed","Arial Narrow",sans-serif;--text:"Faustina",Georgia,serif;
  --mass:46rem;--weit:72rem
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--grund);color:var(--tinte);font:400 1.1rem/1.68 var(--text)}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--kobalt);text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{color:var(--signal-text);text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--gelb);outline-offset:2px}
h1,h2,h3,h4{font-family:var(--titel);font-weight:760;line-height:1.08;letter-spacing:.005em;margin:0 0 .5em}
h1{font-size:clamp(2.1rem,5.2vw,3.35rem)}
h2{font-size:clamp(1.55rem,3vw,2rem);margin-top:1.8em}
h3{font-size:1.3rem}
p{margin:0 0 1.05em}
strong{font-weight:680}
.tabula{position:absolute;left:-999px;top:0;background:var(--gelb);color:var(--tinte);padding:.5rem 1rem;z-index:9}
.tabula:focus{left:1rem}

/* Kopf */
.caput__scala{height:10px;background:
  repeating-linear-gradient(90deg,var(--kobalt-tief) 0 1px,transparent 1px 10px),
  repeating-linear-gradient(90deg,var(--kobalt-tief) 0 2px,transparent 2px 50px) var(--salbei-hell);
  background-size:auto 6px,auto 10px;background-repeat:repeat-x;background-position:0 0,0 0}
.caput{background:var(--blatt);border-bottom:1px solid var(--linie)}
.caput__intus{max-width:var(--weit);margin:0 auto;padding:1rem 1.25rem .9rem;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.8rem 2rem}
.signum{display:flex;align-items:flex-end;gap:.8rem;text-decoration:none;color:var(--tinte)}
.signum:hover{color:var(--tinte)}
.signum__nomen{font:800 2.5rem/0.9 var(--titel);letter-spacing:-.01em}
.signum__punctum{display:inline-block;width:.34em;height:.34em;background:var(--signal);margin:0 .06em .08em;vertical-align:baseline}
.signum__titulus{font:600 .78rem/1.25 var(--titel);text-transform:uppercase;letter-spacing:.12em;color:var(--grau);max-width:12rem;padding-bottom:.2rem;border-left:2px solid var(--linie);padding-left:.8rem}
.index{display:flex;flex-wrap:wrap;gap:.2rem 1.3rem;font:600 1.02rem/1.3 var(--titel)}
.index a{color:var(--tinte);text-decoration:none;padding:.3rem 0;border-bottom:3px solid transparent}
.index a:hover,.index a[aria-current]{border-bottom-color:var(--signal);color:var(--tinte)}
.index__num{color:var(--kobalt);font-weight:800;margin-right:.3rem}

.semita{max-width:var(--weit);margin:0 auto;padding:.9rem 1.25rem 0;font:500 .92rem/1.4 var(--titel);color:var(--grau)}
.semita ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.25rem}
.semita li+li::before{content:"›";margin:0 .35rem 0 .1rem;color:var(--salbei)}
.semita a{color:var(--grau)}

.corpus{max-width:var(--weit);margin:0 auto;padding:1.4rem 1.25rem 3rem}

/* Startseite */
.porta{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center;padding:1.5rem 0 2.5rem;border-bottom:1px solid var(--linie)}
.porta__rubrica,.scriptum__rubrica,.nota-parva{font:700 .82rem/1.2 var(--titel);text-transform:uppercase;letter-spacing:.14em;color:var(--kobalt)}
.porta h1{font-size:clamp(2.3rem,5.8vw,3.9rem);margin:.4rem 0 .9rem}
.porta h1 em{font-style:normal;color:var(--kobalt)}
.porta__lead{font-size:1.22rem;max-width:34rem}
.porta__figura{background:var(--blatt);border:1px solid var(--linie);padding:1.1rem 1.1rem .7rem}
.porta__figura figcaption{font:500 .9rem/1.35 var(--titel);color:var(--grau);margin-top:.5rem}
.actus{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.3rem}
.actus a{font:700 1rem/1 var(--titel);text-decoration:none;padding:.85rem 1.2rem;border:2px solid var(--kobalt);color:var(--kobalt);background:var(--blatt)}
.actus a:first-child{background:var(--kobalt);color:#fff}
.actus a:hover{background:var(--kobalt-tief);border-color:var(--kobalt-tief);color:#fff}

.sectio{padding:2.6rem 0;border-bottom:1px solid var(--linie)}
.sectio>h2{margin-top:0}
.sectio__intro{max-width:44rem;color:var(--grau)}
.tres{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;counter-reset:q;list-style:none;margin:1.4rem 0 0;padding:0}
.tres li{counter-increment:q;background:var(--blatt);border-top:4px solid var(--kobalt);padding:1.1rem 1.2rem 1rem}
.tres li::before{content:counter(q);font:800 2.6rem/1 var(--titel);color:var(--signal);display:block;margin-bottom:.3rem}
.tres h3{margin-bottom:.35rem}
.tres p{margin:0;font-size:1rem}

.tabella{overflow-x:auto;margin:1.2rem 0 1.6rem;border:1px solid var(--linie);background:var(--blatt)}
.tabella table{border-collapse:collapse;width:100%;font-size:.98rem;line-height:1.45}
.tabella th{font:700 .9rem/1.25 var(--titel);text-transform:uppercase;letter-spacing:.06em;text-align:left;background:var(--salbei-hell);color:var(--kobalt-tief);padding:.65rem .8rem;border-bottom:2px solid var(--kobalt)}
.tabella td{padding:.6rem .8rem;border-bottom:1px solid var(--linie-hell);vertical-align:top}
.tabella tr:last-child td{border-bottom:0}
.conspectus td:first-child{min-width:14rem}
.conspectus td:first-child a{font-weight:620}
.conspectus td:last-child{white-space:nowrap}

.capitula{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:1.3rem}
.capitulum{background:var(--blatt);border:1px solid var(--linie);padding:1.2rem 1.25rem}
.capitulum__num{font:800 1rem/1 var(--titel);color:var(--signal-text);letter-spacing:.1em}
.capitulum h3{font-size:1.5rem;margin:.35rem 0 .5rem}
.capitulum h3 a{color:var(--tinte);text-decoration:none}
.capitulum h3 a:hover{color:var(--kobalt)}
.capitulum ul{margin:.7rem 0 0;padding:0;list-style:none;font-size:1rem}
.capitulum li{padding:.35rem 0;border-top:1px dotted var(--linie)}

.gradus{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.2rem}
.gradus div{background:var(--blatt);padding:.9rem 1rem;border-left:3px solid var(--salbei)}
.gradus p{margin:.4rem 0 0;font-size:.98rem}

.commendatio{background:var(--salbei-hell);border:1px solid var(--linie);padding:1.3rem 1.4rem}
.commendatio p:last-child{margin-bottom:0}

/* Sicherheitsanzeige */
.puncta{display:inline-flex;align-items:center;gap:.28rem;font:600 .92rem/1 var(--titel);color:var(--tinte);white-space:nowrap}
.puncta i{width:.72rem;height:.72rem;border:2px solid var(--kobalt);border-radius:50%;display:inline-block}
.puncta i.plenus{background:var(--kobalt)}
.puncta span{margin-left:.3rem}
.puncta--methodus{color:var(--grau);font-style:normal}

/* Beitrag */
.scriptum{max-width:var(--mass);margin:0 auto}
.scriptum__caput h1{margin:.45rem 0 .6rem}
.scriptum__meta{font:500 .95rem/1.4 var(--titel);color:var(--grau);display:flex;flex-wrap:wrap;gap:.2rem 1rem;margin-bottom:1.4rem}
.abstractum{background:var(--blatt);border:1px solid var(--linie);border-top:5px solid var(--kobalt);padding:1.1rem 1.3rem;margin:0 0 1.6rem;display:grid;grid-template-columns:9.5rem 1fr;gap:.55rem 1rem}
.abstractum dt{font:700 .8rem/1.5 var(--titel);text-transform:uppercase;letter-spacing:.1em;color:var(--kobalt-tief);padding-top:.15rem}
.abstractum dd{margin:0}
.abstractum dd.responsum{font-weight:560}
.figura{margin:0 0 1.8rem}
.figura img{width:100%;border:1px solid var(--linie);background:var(--blatt)}
.figura--hoch img{max-height:34rem;width:auto;margin:0 auto}
.figura figcaption,.diagramma figcaption{font:500 .88rem/1.4 var(--titel);color:var(--grau);margin-top:.5rem}
.figura figcaption a{color:var(--grau)}
.ordo{border:1px dashed var(--linie);padding:.7rem 1rem;margin:0 0 1.6rem;background:transparent}
.ordo summary{cursor:pointer;font:700 .95rem/1.4 var(--titel);text-transform:uppercase;letter-spacing:.08em;color:var(--kobalt-tief)}
.ordo ol{margin:.6rem 0 .2rem;padding-left:1.6rem;font-size:1rem}
.textus{counter-reset:cap}
.textus h2{counter-increment:cap}
.textus h2::before{content:counter(cap) ". ";color:var(--signal)}
.textus h3{font-size:1.22rem;margin:1.3em 0 .35em;color:var(--kobalt-tief)}
.textus ul,.textus ol{padding-left:1.35rem;margin:0 0 1.2rem}
.textus li{margin:.3rem 0}
.textus li::marker{color:var(--kobalt)}
.capsa{background:var(--salbei-hell);border-left:5px solid var(--kobalt);padding:1rem 1.2rem .3rem;margin:1.4rem 0 1.6rem}
.capsa__titulus{font:750 1.05rem/1.3 var(--titel);color:var(--kobalt-tief);margin-bottom:.4rem;display:block}
.capsa--cave{background:#fbece4;border-left-color:var(--signal)}
.capsa--cave .capsa__titulus{color:var(--signal-text)}
.diagramma{margin:1.5rem 0 1.8rem;background:var(--blatt);border:1px solid var(--linie);padding:1rem}
.fontes{margin-top:2.6rem;padding-top:1.2rem;border-top:3px double var(--linie)}
.fontes h2{font-size:1.3rem;margin:0 0 .6rem}
.fontes h2::before{content:none}
.fontes ol{font-size:.95rem;padding-left:1.4rem;margin:0}
.fontes li{margin:.35rem 0;overflow-wrap:anywhere}
.monitum{font-size:.93rem;color:var(--grau);border-top:1px solid var(--linie);margin-top:1.8rem;padding-top:1rem}
.affines{margin-top:2.4rem}
.affines>h2{font-size:1.35rem;margin-top:0}
.affines__grex{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.affinis{background:var(--blatt);border:1px solid var(--linie);padding:.95rem 1rem;display:flex;flex-direction:column;gap:.45rem;text-decoration:none;color:var(--tinte)}
.affinis:hover{border-color:var(--kobalt);color:var(--tinte)}
.affinis strong{font:700 1.12rem/1.2 var(--titel);color:var(--kobalt-tief)}
.affinis span{font-size:.95rem;color:var(--grau)}
.gressus{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem;padding-top:1rem;border-top:1px solid var(--linie);font:600 1rem/1.3 var(--titel)}
.gressus a{max-width:48%;text-decoration:none}
.gressus small{display:block;font-weight:500;color:var(--grau);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}
.gressus__post{text-align:right;margin-left:auto}

/* Kapitelseiten */
.summarium{list-style:none;margin:1.5rem 0 0;padding:0;counter-reset:s;border-top:2px solid var(--tinte)}
.summarium li{counter-increment:s;display:grid;grid-template-columns:3rem 1fr auto;gap:.4rem 1rem;padding:1rem 0;border-bottom:1px solid var(--linie)}
.summarium li::before{content:counter(s,decimal-leading-zero);font:800 1.3rem/1.3 var(--titel);color:var(--signal)}
.summarium h3{margin:0 0 .25rem;font-size:1.3rem}
.summarium h3 a{text-decoration:none;color:var(--tinte)}
.summarium h3 a:hover{color:var(--kobalt)}
.summarium p{margin:0;font-size:1rem;color:var(--grau)}
.summarium__meta{font:500 .9rem/1.4 var(--titel);color:var(--grau);text-align:right}

/* Glossar */
.litterae{display:flex;flex-wrap:wrap;gap:.35rem;margin:1.2rem 0;padding:0;list-style:none}
.litterae a{display:inline-block;min-width:2.1rem;text-align:center;font:700 1rem/2.1rem var(--titel);background:var(--blatt);border:1px solid var(--linie);text-decoration:none}
.lexicon dt{font:750 1.25rem/1.3 var(--titel);margin-top:1.3rem;scroll-margin-top:1rem}
.lexicon dd{margin:.25rem 0 0;padding-bottom:.9rem;border-bottom:1px dotted var(--linie)}
.lexicon h2{font-size:2.2rem;color:var(--signal);margin:2rem 0 0;border-bottom:2px solid var(--tinte)}

.pagina{max-width:var(--mass);margin:0 auto}

/* Fuß */
.pes{background:var(--kobalt-tief);color:#dbe8ea;font-size:1rem}
.pes a{color:#fff}
.pes__intus{max-width:var(--weit);margin:0 auto;padding:2.4rem 1.25rem 1.2rem;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem}
.pes h2{font-size:1rem;text-transform:uppercase;letter-spacing:.12em;color:var(--gelb);margin:0 0 .7rem}
.pes ul{list-style:none;margin:0;padding:0}
.pes li{margin:.3rem 0}
.pes__signum{font:800 2rem/1 var(--titel);color:#fff;margin-bottom:.6rem}
.pes__signum b{display:inline-block;width:.34em;height:.34em;background:var(--signal);margin:0 .06em .06em}
.pes__imum{max-width:var(--weit);margin:0 auto;padding:1rem 1.25rem 1.6rem;border-top:1px solid rgba(255,255,255,.18);font:500 .88rem/1.4 var(--titel);color:#b9cdd1}

@media (max-width:900px){
  .porta{grid-template-columns:1fr;gap:1.5rem}
  .tres,.capitula,.affines__grex{grid-template-columns:1fr}
  .gradus{grid-template-columns:1fr 1fr}
  .pes__intus{grid-template-columns:1fr}
}
@media (max-width:560px){
  body{font-size:1.04rem}
  .signum__nomen{font-size:2.1rem}
  .signum__titulus{display:none}
  .index{gap:.1rem 1rem;font-size:.98rem}
  .abstractum{grid-template-columns:1fr;gap:.15rem}
  .abstractum dd{margin-bottom:.5rem}
  .gradus{grid-template-columns:1fr}
  .summarium li{grid-template-columns:2.3rem 1fr}
  .summarium__meta{grid-column:2;text-align:left}
  .gressus{flex-direction:column}
  .gressus a{max-width:100%}
  .gressus__post{text-align:left;margin-left:0}
  .conspectus td:first-child{min-width:11rem}
}
@media print{.caput__scala,.index,.affines,.gressus,.pes{display:none}body{background:#fff}}
