/* lvkm hessen — Projektseiten (Analyse, Inhalte, Styleguide)
   Gemeinsame Basis. Farben und Schriften stammen aus der Altseite,
   ausgelesen am 23.09.2026. Schriften liegen lokal in assets/fonts/. */
:root{
  --brand:#A70932; --brand-tief:#7E0625; --brand-hell:#E8698A; --brand-blass:#FBEDF1;
  --gruen:#32A709; --gruen-tief:#2A6B14; --gruen-blass:#EEF8E9;
  --text:#1B1B1B; --text-dim:#6B6B66; --text-hell:#8A8A85;
  --paper:#FAFAF9; --surface:#FFFFFF; --surface-2:#F4F2EF; --line:#E2E0DC; --line-2:#CFCCC6;
  --warn:#9A6A00; --warn-blass:#FDF6E6;
  --radius:14px;
  --schrift-titel:"Signika",system-ui,sans-serif;
  --schrift-text:"Signika Negative",system-ui,sans-serif;
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--text);
  font:16px/1.68 var(--schrift-text);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,th,.titel,.wort{font-family:var(--schrift-titel);letter-spacing:-.012em}
a{color:var(--brand-tief)}
.wrap{max-width:1000px;margin:0 auto;padding:32px 22px 90px}
.zurueck{display:inline-block;margin-bottom:22px;font-size:13.5px;text-decoration:none;color:var(--text-dim)}
.zurueck:hover{color:var(--brand)}
h1{font-size:32px;margin:0 0 6px;font-weight:600;line-height:1.14}
.lead{font-size:16.5px;color:var(--text-dim);max-width:74ch;margin:0 0 32px}
h2{font-size:21px;margin:42px 0 14px;font-weight:600;padding-bottom:9px;border-bottom:2px solid var(--brand)}
h3{font-size:15.5px;margin:26px 0 9px;font-weight:600;font-family:var(--schrift-text)}
p{max-width:78ch}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px 24px;margin:14px 0}
table{width:100%;border-collapse:collapse;font-size:14.2px;background:var(--surface);
  border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:12px 0}
th,td{text-align:left;padding:10px 13px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-size:11.4px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-dim);background:var(--paper);font-weight:600}
tr:last-child td{border-bottom:0}
td.zahl{font-variant-numeric:tabular-nums;white-space:nowrap}
.quote{border-left:4px solid var(--brand);padding:4px 0 4px 18px;margin:16px 0;font-size:15.3px;color:#33332F}
.quote b{display:block;font-family:var(--schrift-titel);font-size:15px;margin-bottom:3px}
.quote .q{color:var(--text-dim);font-size:12.4px;margin-top:4px}
.hinweis{background:var(--brand-blass);border:1px solid #E8BFCB;border-left-width:4px;border-radius:12px;padding:15px 18px;font-size:14.2px;margin:16px 0}
.hinweis.warn{background:var(--warn-blass);border-color:#E8D6A8}
.hinweis.gut{background:var(--gruen-blass);border-color:#C6E3B4}
.sw{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:14px 0 6px}
.sw .b{height:74px;border-radius:10px;border:1px solid var(--line)}
.sw .t{padding:9px 2px 0;font-size:12.4px;line-height:1.5}
.sw b{display:block;font-size:12.6px}
.sw span{color:var(--text-dim)}
.ampel{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px;vertical-align:0}
.a-hoch{background:#C0271E}.a-mittel{background:#D8921A}.a-niedrig{background:#3D8B4A}.a-info{background:#7A8CA8}
code{font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:12.8px;background:var(--surface-2);
  border:1px solid var(--line);border-radius:5px;padding:1px 5px}
.zeiten{font-variant-numeric:tabular-nums}
.fuss{margin-top:46px;padding-top:18px;border-top:1px solid var(--line);font-size:12.4px;color:var(--text-hell);
  display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
.fuss a{color:var(--text-dim);text-decoration:none}
.fuss a:hover{color:var(--brand)}
/* Tabellen: breite Tabellen bekommen einen eigenen Scroll-Bereich,
   damit die Seite selbst nicht seitlich überläuft. */
.tabelle{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px;margin:12px 0}
.tabelle table{margin:0;min-width:100%}
@media (max-width:700px){
  h1{font-size:26px}.wrap{padding:24px 16px 70px}
  table{font-size:13.4px}th,td{padding:8px 10px}
  /* In der Seitenliste ist die Adresse nur Beiwerk — auf dem Telefon weg,
     damit die Tabelle ohne Scrollen lesbar bleibt. */
  .seitenliste th:nth-child(2),.seitenliste td:nth-child(2){display:none}
  .seitenliste td{word-break:break-word}
  code{font-size:11.8px}
}
