[hidden]{display:none!important}
:root{
  --bg:#F3F4F2; --surface:#FFFFFF; --sunk:#E8EBE8; --line:#D5DAD6;
  --fg:#1E2724; --muted:#56635E; --accent:#2D5B55; --accent-ink:#FFFFFF; --accent-soft:#DCE8E5;
  --s0:#9AA5A0; --s1:#4F7FAA; --s2:#B5841C; --s3:#C25A28; --s4:#9E2B3A;
  --ok:#3E7B4F; --warn:#9A6A12; --bad:#9E2B3A;
  --font:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){:root{
  --bg:#141917; --surface:#1C2320; --sunk:#232B28; --line:#34403A;
  --fg:#E6ECE9; --muted:#9AA8A2; --accent:#7FB8AE; --accent-ink:#0F1513; --accent-soft:#25403B;
  --s0:#6E7A75; --s1:#7EAAD3; --s2:#DDB050; --s3:#E0834F; --s4:#E06A78;
  --ok:#77B887; --warn:#DDB050; --bad:#E06A78; color-scheme:dark}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.5 var(--font)}
a{color:var(--accent)}
.wrap{max-width:1120px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
.top{background:var(--surface);border-bottom:1px solid var(--line)}
.top-inner{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding-block:12px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.15rem;color:var(--fg);text-decoration:none;letter-spacing:-.01em}
.mark{width:22px;height:22px;border-radius:6px;background:var(--accent);display:inline-block;position:relative}
.mark::after{content:"";position:absolute;inset:6px 5px 5px;border:2.5px solid var(--accent-ink);border-top:0;border-radius:0 0 6px 6px}
.who{margin-left:auto;color:var(--muted);font-size:.85rem}
.logout{margin:0}
.nav{display:flex;flex-wrap:wrap;gap:4px;padding-bottom:8px;position:relative;z-index:20}
.nav-gr{position:relative}
.nav-gr>summary{list-style:none;display:flex;align-items:center;cursor:pointer;padding:6px 12px;border-radius:8px;color:var(--muted);font-weight:600;font-size:.9rem;white-space:nowrap;user-select:none}
.nav-gr>summary::-webkit-details-marker{display:none}
.nav-gr>summary::after{content:"";display:inline-block;width:6px;height:6px;margin-left:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);opacity:.6}
.nav-gr[open]>summary::after{transform:translateY(2px) rotate(-135deg)}
.nav-gr>summary:hover,.nav-gr[open]>summary{background:var(--sunk);color:var(--fg)}
.nav-gr.an>summary{background:var(--accent-soft);color:var(--fg)}
.nav-menu{position:absolute;left:0;top:calc(100% + 4px);min-width:200px;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.12);padding:6px;display:flex;flex-direction:column;gap:2px}
.nav-menu a{display:block}
.nav a{padding:6px 12px;border-radius:8px;text-decoration:none;color:var(--muted);font-weight:600;font-size:.9rem;white-space:nowrap}
.nav a:hover{background:var(--sunk);color:var(--fg)}
.nav a[aria-current="page"]{background:var(--accent-soft);color:var(--fg)}
.main{padding-block:24px 48px;min-height:60vh}
.foot{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:.82rem;padding-block:16px 32px;border-top:1px solid var(--line)}
.foot a{color:var(--muted)}
h1{font-size:1.6rem;line-height:1.2;margin:0 0 6px;letter-spacing:-.01em;text-wrap:balance}
h2{font-size:1.15rem;margin:0 0 10px}
h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 8px}
.lede{color:var(--muted);margin:0 0 20px;max-width:65ch}
.muted{color:var(--muted)} .small{font-size:.85rem}
.mono{font-family:var(--mono);font-size:.88em}
.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.spread{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}
.stack{display:flex;flex-direction:column;gap:16px}
.grid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}
.grid-side{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px;align-items:start}
@media (max-width:820px){.grid2,.grid-side{grid-template-columns:minmax(0,1fr)}}
.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:18px;min-width:0}
.card>h2:first-child,.card>h3:first-child{margin-top:0}
.flash{padding:10px 14px;border-radius:10px;margin-bottom:18px;border:1px solid var(--line);background:var(--surface)}
.flash.ok{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,var(--surface))}
.flash.err{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 10%,var(--surface))}
.flash.info{border-color:var(--accent)}
.notice{border-left:4px solid var(--s4);background:color-mix(in srgb,var(--s4) 8%,var(--surface));padding:10px 14px;border-radius:0 8px 8px 0;font-size:.9rem}
.note{border-left:4px solid var(--accent);background:var(--accent-soft);padding:10px 14px;border-radius:0 8px 8px 0;font-size:.9rem}
/* Kennzahlen */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:20px}
.stat{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 14px;text-decoration:none;color:var(--fg)}
.stat b{display:block;font-size:1.7rem;line-height:1.15;font-variant-numeric:tabular-nums}
.stat span{font-size:.8rem;color:var(--muted)}
.stat.alert b{color:var(--bad)}
/* Formulare */
form{margin:0}
label{font-weight:600;font-size:.9rem}
.field{display:flex;flex-direction:column;gap:6px}
.hint{font-weight:400;color:var(--muted);font-size:.82rem}
input[type=text],input[type=email],input[type=password],input[type=date],input[type=time],input[type=number],input[type=search],select,textarea{
  font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:9px 10px;width:100%}
textarea{min-height:110px;resize:vertical}
input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.form{display:flex;flex-direction:column;gap:16px;max-width:640px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:520px){.form-row{grid-template-columns:1fr}}
.check{display:flex;gap:10px;align-items:flex-start;font-weight:500}
.check input{margin-top:4px;accent-color:var(--accent);width:17px;height:17px;flex:none}
.seg{display:flex;flex-wrap:wrap;gap:6px}
.seg label{border:1px solid var(--line);border-radius:99px;padding:6px 13px;font-size:.88rem;cursor:pointer;font-weight:500;background:var(--surface)}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg label:has(input:checked){background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.seg label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}
.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);font:600 .92rem var(--font);padding:9px 16px;border-radius:9px;cursor:pointer;text-decoration:none;white-space:nowrap}
.btn.ghost{background:transparent;color:var(--accent)}
.btn.small{padding:5px 10px;font-size:.82rem}
.btn.danger{background:transparent;color:var(--bad);border-color:var(--bad)}
button.link{background:none;border:0;color:var(--accent);font:inherit;font-size:.85rem;cursor:pointer;padding:0;text-decoration:underline}
.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
/* Tabellen */
.table-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:12px}
table{border-collapse:collapse;width:100%;font-size:.9rem}
th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600;background:var(--surface)}
tr:last-child td{border-bottom:0}
td.num{font-variant-numeric:tabular-nums;text-align:right}
tr.clickable{cursor:pointer}
tr.clickable:hover td{background:var(--sunk)}
/* Fälle */
.pill{display:inline-block;font-size:.74rem;font-weight:600;padding:2px 9px;border-radius:99px;background:var(--sunk);color:var(--fg);white-space:nowrap}
.pill.bad{background:color-mix(in srgb,var(--bad) 16%,transparent);color:var(--bad)}
.pill.ok{background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok)}
.lvl{--lv:var(--s0)} .lvl-1{--lv:var(--s1)} .lvl-2{--lv:var(--s2)} .lvl-3{--lv:var(--s3)} .lvl-4{--lv:var(--s4)}
.lvpill{background:color-mix(in srgb,var(--lv) 20%,transparent);border-left:4px solid var(--lv);border-radius:4px 99px 99px 4px}
td.stripe{width:6px;padding:0;background:var(--lv)}
.levels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
@media (max-width:520px){.levels{grid-template-columns:repeat(2,minmax(0,1fr))}}
.levels button{border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:8px;padding:9px 6px;font:600 .85rem var(--font);cursor:pointer;border-top:4px solid var(--lv)}
.levels button[aria-pressed="true"]{background:color-mix(in srgb,var(--lv) 22%,var(--surface));border-color:var(--lv)}
.flow{display:flex;gap:4px;flex-wrap:wrap}
.flow button{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:99px;padding:5px 11px;font:500 .8rem var(--font);cursor:pointer}
.flow button.done{color:var(--fg);background:var(--sunk)}
.flow button[aria-pressed="true"]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.plan{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.plan li{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--line)}
.plan li:last-child{border-bottom:0}
.plan .txt{flex:1;min-width:0}
.plan .done .txt{text-decoration:line-through;color:var(--muted)}
.plan .due{font-size:.78rem;color:var(--muted);white-space:nowrap}
.plan .due.late{color:var(--bad);font-weight:600}
.timeline{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.timeline li{border-left:2px solid var(--line);padding-left:12px}
.timeline .meta{font-size:.78rem;color:var(--muted)}
.timeline .sys{color:var(--muted)}
.msg{padding:10px 12px;border-radius:10px;max-width:85%}
.msg-text{white-space:pre-wrap;margin-top:4px;overflow-wrap:anywhere}
.msg.an{background:var(--accent-soft);align-self:flex-end}
.msg.von{background:var(--sunk);align-self:flex-start}
.msgs{display:flex;flex-direction:column;gap:8px}
.pre{white-space:pre-wrap}
.code{font-family:var(--mono);font-size:1.5rem;letter-spacing:.1em;padding:8px 12px;background:var(--sunk);border-radius:8px;display:inline-block}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.filters select,.filters input{width:auto}
/* Öffentlich */
.public .main{max-width:760px}
.hero{padding-block:24px 8px}
.hero h1{font-size:2.1rem}
.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.bar{height:10px;background:var(--sunk);border-radius:99px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--accent)}
.qr{background:#fff;padding:12px;border-radius:8px;display:inline-block}
.qr img,.qr canvas{display:block;width:220px;height:220px;image-rendering:pixelated}
.empty{padding:28px;text-align:center;color:var(--muted)}
.kpi-table td:first-child{width:60%}
.mt{margin-top:24px} .mt-s{margin-top:12px} .mb{margin-bottom:16px} select.w-auto,input.w-auto{width:auto} .right{text-align:right}
.row .grow{flex:1;min-width:0;width:auto} .row .w-auto,.filters .w-auto{width:auto;flex:none}
progress{width:100%;height:10px;accent-color:var(--accent)}
.err-text{color:var(--bad);font-size:.85rem;font-weight:500}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media print{
  .top,.foot,.nav,.no-print,.flash{display:none!important}
  body{background:#fff;color:#000}
  .card,.table-wrap{border-color:#bbb}
  .main{padding:0}
}
fieldset{border:0;margin:0;padding:0;min-width:0}
legend{font-weight:600;font-size:.9rem;padding:0;margin-bottom:6px}
.stufe-wahl{border-left:4px solid var(--lv,var(--line));padding:6px 10px;border-radius:0 8px 8px 0;background:var(--bg)}
.stufe-wahl:has(input:checked){background:color-mix(in srgb,var(--lv,var(--accent)) 16%,var(--surface))}
.details td:first-child{width:45%;color:var(--muted)}
.form-h{font-size:.95rem;margin:10px 0 -4px;padding-top:14px;border-top:1px solid var(--line);color:var(--accent)}
.verdacht{border-left:4px solid var(--s4);padding:6px 10px;border-radius:0 8px 8px 0;background:color-mix(in srgb,var(--s4) 7%,var(--surface))}
.spark{display:flex;align-items:flex-end;gap:2px;height:38px;margin:6px 0}
.spark i{flex:1;background:var(--accent);border-radius:2px 2px 0 0;min-height:2px;opacity:.85}
.spark i.leer{background:var(--sunk)}
.spark-svg{width:100%;max-width:420px;height:auto;display:block}
.spark-svg .sbar{fill:var(--accent)} .spark-svg .sbar.leer{fill:var(--sunk)} .spark-svg .axis{stroke:var(--line);stroke-width:1}
details>summary{list-style:none;cursor:pointer;display:inline-flex}
details>summary::-webkit-details-marker{display:none}
.kodex-text{max-width:70ch;line-height:1.6}
.kodex-text h2.kx{font-size:1.1rem;margin:22px 0 6px;color:var(--accent)}
.kodex-text h3.kx{font-size:.95rem;text-transform:none;letter-spacing:0;color:var(--fg);margin:14px 0 4px}
.kodex-text ul.kx{padding-left:1.2em;margin:6px 0}
.kodex-text p{margin:6px 0}
.raster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media (max-width:900px){.raster{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.raster{grid-template-columns:minmax(0,1fr)}}
.raster-col{background:color-mix(in srgb,var(--lv) 12%,var(--surface));border:1px solid var(--line);border-top:5px solid var(--lv);border-radius:10px;padding:12px;font-size:.87rem}
.raster-h{font-size:.95rem;text-transform:none;letter-spacing:0;color:var(--fg);margin:0 0 6px}
.raster-h span{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.raster-form{font-weight:600;margin:10px 0 2px}
.raster-col ul,ul.tight{margin:0;padding-left:1.1em}
.raster-col li,ul.tight li{margin:2px 0}
th.lvl{border-top:4px solid var(--lv)}
.public.wide .main{max-width:1120px}
.raster-col li,ul.tight li{overflow-wrap:anywhere;hyphens:auto}
.vorschau{background:var(--sunk);border-radius:10px;padding:12px 14px}
.vorschau ol{margin:0;padding-left:20px}
details.bs{border-top:1px solid var(--line);padding-top:10px}
details.bs summary{cursor:pointer;font-weight:600}
.bs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:10px 0}
.bs-rolle{border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.bs-rolle h4{margin:0 0 6px}
.bs-rolle ul{margin:0;padding-left:18px}
.bs-ich{border-color:var(--accent);background:var(--accent-soft)}
.form-row3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media (max-width:720px){.form-row3{grid-template-columns:1fr}}
.kal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.kal .kopf{font-size:.75rem;font-weight:600;color:var(--muted);text-align:center;padding:4px 0}
.kal .tag{min-height:92px;border:1px solid var(--line);border-radius:8px;padding:4px;background:var(--surface);overflow:hidden}
.kal .tag.aus{opacity:.45}
.kal .tag.heute{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.kal .nr{font-size:.75rem;color:var(--muted)}
.kal a.ev{display:block;font-size:.72rem;line-height:1.25;padding:2px 4px;margin-top:2px;border-radius:4px;background:var(--accent-soft);color:var(--fg);text-decoration:none;overflow-wrap:anywhere}
.kal a.ev.vs{background:transparent;border:1px dashed var(--line)}
@media (max-width:640px){.kal .tag{min-height:56px}.kal a.ev .ev-ort{display:none}}
.termin-wahl label{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:10px;cursor:pointer}
.termin-wahl label:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}
.form-row3 input,.form-row input{min-width:0;width:100%}

/* ---------- Jahresbericht: Diagramme ---------- */
:root{--g-accent:#2D5B55;--g-prev:#C3C2B7;--g-grid:#E6E8E5;--g-axis:#C3C8C4;
  --g-c1:#2a78d6;--g-c2:#eb6834;--g-c3:#1baf7a;--g-c4:#eda100;--g-c5:#e87ba4;--g-c6:#008300;--g-c7:#6250d6;--g-c8:#e34948}
@media (prefers-color-scheme:dark){:root{--g-accent:#7FB8AE;--g-prev:#55574F;--g-grid:#2C3430;--g-axis:#3D4843;
  --g-c1:#3987e5;--g-c2:#d95926;--g-c3:#199e70;--g-c4:#c98500;--g-c5:#d55181;--g-c6:#008300;--g-c7:#9085e9;--g-c8:#e66767}}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.eyebrow{font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0}
.bericht-kopf{border-bottom:2px solid var(--accent);padding-bottom:12px;margin-bottom:18px}
.bericht-kopf h1{margin:4px 0}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:18px}
.kpi{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}
.kpi b{font-size:2rem;font-weight:650;line-height:1.1;letter-spacing:-.01em}
.kpi-hero b{font-size:3rem;color:var(--accent)}
.kpi-l{font-size:.82rem;color:var(--muted)}
.kpi .delta{font-size:.78rem;color:var(--muted)}
.meter{display:block;height:8px;border-radius:99px;background:color-mix(in srgb,var(--accent) 18%,var(--surface));overflow:hidden;margin:4px 0}
.meter-f{display:block;height:100%;border-radius:99px;background:var(--accent)}
.g-raster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.g-breit{grid-column:1/-1}
@media (max-width:900px){.g-raster{grid-template-columns:minmax(0,1fr)}}
.g-karte{display:flex;flex-direction:column;gap:8px;break-inside:avoid;page-break-inside:avoid}
.g-kopf{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.g-kopf h2{margin:0;font-size:1rem}
.g-wahl select{width:auto;font-size:.8rem;padding:4px 8px;min-height:0}
.g{width:100%}
.g-svg{width:100%;height:auto;display:block;overflow:visible;font-family:inherit}
.g-breit .g-svg{max-height:420px}
.g-grid{stroke:var(--g-grid);stroke-width:1}
.g-axis{stroke:var(--g-axis);stroke-width:1}
.g-netzring{fill:none;stroke:var(--g-grid);stroke-width:1}
.g-tick{fill:var(--muted);font-size:11.5px;font-variant-numeric:tabular-nums}
.g-netzwert{font-size:10px}
.g-lbl{fill:var(--fg);font-size:12.5px}
.g-val{fill:var(--fg);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}
.g-hero{fill:var(--fg);font-size:34px;font-weight:650}
.g-hit{fill:transparent}
.g-mark:hover .g-hit{fill:color-mix(in srgb,var(--fg) 5%,transparent)}
.g-a{fill:var(--g-accent)}
.g-prev{fill:var(--g-prev)}
.g-la{fill:none;stroke:var(--g-accent);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.g-lp{fill:none;stroke:var(--g-prev);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.g-wash{fill:var(--g-accent);opacity:.1}
.g-dot{fill:var(--g-accent);stroke:var(--surface);stroke-width:2}
.g-netzfl{fill:color-mix(in srgb,var(--g-accent) 16%,transparent);stroke:var(--g-accent);stroke-width:2;stroke-linejoin:round}
.g-netzprev{fill:none;stroke:var(--g-prev);stroke-width:2;stroke-linejoin:round}
.g-ringvoll{fill:none;stroke-width:26}
.g-c1{fill:var(--g-c1)}.g-c2{fill:var(--g-c2)}.g-c3{fill:var(--g-c3)}.g-c4{fill:var(--g-c4)}.g-c5{fill:var(--g-c5)}.g-c6{fill:var(--g-c6)}.g-c7{fill:var(--g-c7)}.g-c8{fill:var(--g-c8)}
.g-s0{fill:var(--s0)}.g-s1{fill:var(--s1)}.g-s2{fill:var(--s2)}.g-s3{fill:var(--s3)}.g-s4{fill:var(--s4)}
circle.g-ringvoll.g-a{stroke:var(--g-accent)} circle.g-ringvoll.g-c1{stroke:var(--g-c1)} circle.g-ringvoll.g-s1{stroke:var(--s1)} circle.g-ringvoll.g-s0{stroke:var(--s0)}
circle.g-ringvoll.g-s2{stroke:var(--s2)} circle.g-ringvoll.g-s3{stroke:var(--s3)} circle.g-ringvoll.g-s4{stroke:var(--s4)}
.g-legende{display:flex;gap:16px;font-size:.8rem;color:var(--muted);margin-top:2px}
.g-legende span{display:inline-flex;align-items:center;gap:6px}
.g-sw{display:inline-block;width:12px;height:12px;border-radius:3px}
i.g-sw.g-a{background:var(--g-accent)} i.g-sw.g-prev{background:var(--g-prev)}
.g-zahlen summary{font-size:.8rem;color:var(--muted);cursor:pointer}
.g-tab{margin-top:6px}
.g-tab th{font-size:.75rem;color:var(--muted);font-weight:600;text-align:left}
@media print{
  .g-raster{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .g-breit{grid-column:1/-1}
  .kpis{grid-template-columns:repeat(3,1fr)}
  .kpi,.g-karte{border-color:#ccc}
  .g-mark:hover .g-hit{fill:transparent}
  :root{--g-accent:#2D5B55;--g-prev:#C3C2B7;--g-grid:#E6E8E5;--g-axis:#C3C8C4}
  @page{size:A4;margin:14mm}
}
.m0{width:0%}.m5{width:5%}.m10{width:10%}.m15{width:15%}.m20{width:20%}.m25{width:25%}.m30{width:30%}.m35{width:35%}.m40{width:40%}.m45{width:45%}.m50{width:50%}.m55{width:55%}.m60{width:60%}.m65{width:65%}.m70{width:70%}.m75{width:75%}.m80{width:80%}.m85{width:85%}.m90{width:90%}.m95{width:95%}.m100{width:100%}
.g-raster{align-items:start}
.swatch{width:22px;height:22px;flex:none;color:var(--muted)}
.pal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pal-grid input{min-width:0}
.logo-vorschau{max-width:220px;max-height:90px;object-fit:contain}
.bericht-kopf{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}
.bericht-logo{max-height:64px;max-width:200px;object-fit:contain}
.kpi-hero b{color:var(--g-accent)}
.meter{background:color-mix(in srgb,var(--g-accent) 18%,var(--surface))}
.meter-f{background:var(--g-accent)}
.bericht-kopf{border-bottom-color:var(--g-accent)}
.kodex-docs{display:flex;flex-wrap:wrap;gap:8px}
.kodex-text{border-top:1px solid var(--line);padding-top:8px}
.kodex-form{border-top:1px solid var(--line);padding-top:12px}
.kodex-punkt{align-items:flex-start;padding:8px 10px;border:1px solid var(--line);border-radius:10px}
.kodex-punkt:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}
.kodex-punkt b{margin-right:6px}
.druck-bestaetigung{max-width:720px}
.druck-bestaetigung .kopf{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid var(--g-accent);padding-bottom:10px;margin-bottom:16px}
.druck-bestaetigung ol li{margin-bottom:6px}
.druck-bestaetigung .unterschrift{margin-top:18px;padding:12px;border:1px solid var(--line);border-radius:8px}
@media print{.druck-bestaetigung{max-width:none}.seitenumbruch{break-after:page;page-break-after:always}}
.kodex-docs .btn{white-space:normal;max-width:100%;text-align:left}
/* Einstufungsraster in den Originalfarben */
:root{--rs-1:#D4EDDA;--rs-2:#FFF3CD;--rs-3:#FFE6CC;--rs-4:#DBA8AF;--rs-kopf:#E8F5F8;--rs-linie:#4C94D8;--rs-text:#1E1E1E}
.raster{gap:0;border:1px solid var(--rs-linie);border-radius:6px;overflow:hidden}
.raster-col.rs{border:0;border-left:1px solid var(--rs-linie);border-radius:0;padding:0;color:var(--rs-text);font-size:.87rem}
.raster-col.rs:first-child{border-left:0}
.rs-1{background:var(--rs-1)}.rs-2{background:var(--rs-2)}.rs-3{background:var(--rs-3)}.rs-4{background:var(--rs-4)}
.rs-titel{background:var(--rs-kopf);font-weight:700;text-align:center;padding:10px 8px;border-bottom:1px solid var(--rs-linie)}
.rs-stufe{margin:0;font-size:.95rem;font-weight:700;text-align:center;padding:9px 8px;border-bottom:1px solid var(--rs-linie);color:var(--rs-text)}
.rs-inhalt{padding:10px 12px 14px}
.rs-inhalt .raster-form{color:var(--rs-text)}
@media (max-width:900px){.raster-col.rs:nth-child(3){border-left:0}.raster-col.rs:nth-child(n+3){border-top:1px solid var(--rs-linie)}}
@media (max-width:520px){.raster-col.rs{border-left:0}.raster-col.rs+.raster-col.rs{border-top:1px solid var(--rs-linie)}}
.rs-tabelle th,.rs-tabelle td{border:1px solid var(--rs-linie)}
.rs-tabelle th[class^="rs-"],.rs-tabelle td[class^="rs-"]{color:var(--rs-text)}
.rs-tabelle th span{font-weight:400;font-size:.8rem}
.rs-tabelle thead th:first-child,.rs-tabelle tbody td:first-child{background:#F5F5F5;color:var(--rs-text)}
@media print{.raster-col.rs,.rs-tabelle td,.rs-tabelle th{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.rs-stufe,.rs-tabelle th{text-transform:none;letter-spacing:0}
.rs-tabelle th{color:var(--rs-text);font-size:.85rem}

/* ---------- Formulare und Instrumente ---------- */
.flash.warn{border-color:var(--warn);background:color-mix(in srgb,var(--warn) 10%,var(--surface))}
.pill.warn{background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn)}
.mt{margin-top:18px}
.fo-form{display:flex;flex-direction:column;gap:16px}
.fo-fieldset{border:0;padding:0;margin:0;min-width:0;display:flex;flex-direction:column;gap:16px}
.fo-abschnitt{display:flex;flex-direction:column;gap:14px}
.fo-abschnitt>h2{margin:0;display:flex;gap:10px;align-items:center}
.fo-nr-gross{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;border-radius:99px;background:var(--accent);color:var(--accent-ink);font-size:.85rem}
.fo-feld{display:flex;flex-direction:column;gap:6px;padding-top:2px}
.fo-titel{font-weight:600}
.pflicht{color:var(--bad);font-weight:700}
.fo-hilfe{margin:0}
.fo-fett{font-weight:700;margin:0}
.fo-optionen{display:flex;flex-direction:column;gap:6px}
.fo-optionen.jn{flex-direction:row;gap:22px}
.fo-sonst{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.fo-sonst input{flex:1;min-width:180px}
.fo-datum,.fo-zahl{max-width:220px}
.fo-fehlt{border-left:3px solid var(--bad);padding-left:10px}
.fo-fehlt-text{color:var(--bad);font-size:.8rem;margin:0;font-weight:600}
.fo-hinweis{border-left:4px solid var(--accent);background:var(--accent-soft);padding:10px 14px;border-radius:0 8px 8px 0;display:flex;flex-direction:column;gap:4px;font-size:.92rem}
.fo-hinweis.warn{border-color:var(--bad);background:color-mix(in srgb,var(--bad) 9%,var(--surface))}
.fo-zwischentitel{display:flex;flex-direction:column;gap:2px;border-bottom:1px solid var(--line);padding-bottom:4px}
.fo-zwischentitel span{color:var(--muted);font-size:.88rem}
.fo-skala{display:flex;flex-wrap:wrap;gap:5px}
.fo-skala label{position:relative}
.fo-skala input{position:absolute;opacity:0;width:1px;height:1px}
.fo-skala span{display:inline-flex;align-items:center;justify-content:center;width:40px;height:36px;border:1px solid var(--line);border-radius:8px;background:var(--surface);cursor:pointer;font-weight:600}
.fo-skala input:checked+span{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.fo-skala input:focus-visible+span{outline:3px solid var(--accent);outline-offset:2px}
.fo-skala-legende{display:flex;justify-content:space-between;gap:10px;margin:0}
.fo-matrix{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.fo-mzeile{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;padding:10px 12px;border-top:1px solid var(--line);align-items:center}
.fo-mzeile:first-child{border-top:0}
.fo-mzeile:nth-child(even){background:var(--bg)}
.fo-mtext{display:flex;flex-direction:column;gap:3px}
.fo-nr{color:var(--accent);font-weight:700;margin-right:4px}
.fo-mopt{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.fo-mopt label{position:relative}
.fo-mopt input{position:absolute;opacity:0;width:1px;height:1px}
.fo-mopt span{display:inline-block;padding:5px 10px;border:1px solid var(--line);border-radius:99px;font-size:.82rem;cursor:pointer;background:var(--surface);white-space:nowrap}
.fo-mopt input:checked+span{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.fo-mopt input:focus-visible+span{outline:3px solid var(--accent);outline-offset:2px}
.fo-begruendung{grid-column:1/-1;display:flex;flex-direction:column;gap:4px}
.fo-begruendung label{font-size:.85rem;font-weight:600;color:var(--accent)}
.fo-tabelle td{vertical-align:top;padding:4px}
.fo-tabelle td:first-child{width:150px}.fo-tabelle td:nth-child(2){width:180px}
.fo-datumsliste{display:flex;flex-direction:column;gap:6px}
.fo-unterschriften{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.fo-unterschriften label{display:flex;flex-direction:column;gap:4px;font-size:.88rem;font-weight:600}
.fo-leiste{position:sticky;bottom:0;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(4px);padding:12px 0;display:flex;gap:14px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);z-index:5}
fieldset[disabled] .fo-skala span,fieldset[disabled] .fo-mopt span{cursor:default}
@media (max-width:640px){.fo-mzeile{grid-template-columns:1fr}.fo-mopt{justify-content:flex-start}}

/* Ergebnis eines Instruments */
.er{display:flex;flex-direction:column;gap:14px;margin-bottom:16px}
.er h3{margin:6px 0 0}
.er-stufe{border-left:6px solid var(--muted);padding:14px 18px;border-radius:0 10px 10px 0;display:flex;flex-direction:column;gap:6px;background:var(--sunk)}
.er-stufe b{font-size:1.15rem}
.er-rot{--er:#B3261E}.er-orange{--er:#C26A12}.er-gelb{--er:#A8761C}.er-gruen{--er:#2E7D4F}.er-grau{--er:#7A7A7A}.er-akzent{--er:var(--accent)}
.er-stufe.er-rot,.er-stufe.er-orange,.er-stufe.er-gelb,.er-stufe.er-gruen,.er-stufe.er-grau{border-color:var(--er);background:color-mix(in srgb,var(--er) 11%,var(--surface))}
.er-matrix{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.er-matrix div{padding:9px 11px;border-radius:6px;background:var(--sunk);color:var(--muted);font-size:.86rem}
.er-matrix div.an{background:var(--er);color:#fff;font-weight:700}
.er-kz{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}
.er-kz div{border:1px solid var(--line);border-radius:10px;padding:10px;text-align:center;display:flex;flex-direction:column;gap:2px}
.er-kz span{font-size:.8rem;color:var(--muted)}
.er-kz b{font-size:1.5rem}
.er-kz small{font-size:.75rem;color:var(--muted)}
.er-tab td,.er-tab th{vertical-align:middle}
.er-balken{display:block;height:12px;min-width:110px;background:var(--sunk);border-radius:99px;overflow:hidden}
.er-balken i{display:block;height:100%;background:var(--er,var(--accent));border-radius:99px}
.er-tag{display:inline-block;padding:2px 9px;border-radius:99px;font-size:.78rem;font-weight:700;color:#fff;background:var(--er,var(--muted));white-space:nowrap}
.er-punkte{display:inline-flex;gap:3px}
.er-punkte i{display:block;width:15px;height:14px;border-radius:3px;background:var(--sunk)}
.er-punkte i.an{background:var(--er)}
.er-liste{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:4px}
.er-hinweis{border-left:5px solid var(--accent);background:var(--accent-soft);padding:11px 14px;border-radius:0 8px 8px 0;display:flex;flex-direction:column;gap:4px;font-size:.92rem}
.er-hinweis.er-warn{border-color:#B3261E;background:color-mix(in srgb,#B3261E 9%,var(--surface))}
.er-hinweis.er-orange{border-color:#C26A12;background:color-mix(in srgb,#C26A12 10%,var(--surface))}
.er-hinweis.er-grau{border-color:var(--muted);background:var(--sunk)}
.er-empf{border:1px solid var(--line);border-radius:10px;overflow:hidden}
.er-empf-kopf{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 12px;background:var(--accent-soft);font-weight:700}
.er-empf p{margin:0;padding:10px 12px;font-size:.92rem}
.er-grundlage{margin:0}

/* Protokoll */
.fo-protokoll{background:#fff;color:#1E1E1E;border:1px solid var(--line);border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:14px}
.fo-protokoll .kopf{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:2px solid var(--accent);padding-bottom:12px}
.fo-protokoll h1{margin:2px 0 4px;font-size:1.45rem}
.fo-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin:0;color:#444}
.fo-unvollstaendig{border-left:5px solid #B3261E;background:#FBEBEA;padding:10px 14px;font-weight:600}
.fo-pabschnitt h2{font-size:1.05rem;margin:10px 0 6px;color:var(--accent)}
.fo-ptab{width:100%;border-collapse:collapse;font-size:.9rem}
.fo-ptab th,.fo-ptab td{border:1px solid #CFCFCF;padding:6px 8px;text-align:left;vertical-align:top}
.fo-ptab.zwei td:first-child{width:38%;background:#F5F6F5;font-weight:600}
.fo-ptab tr.leer td{height:30px}
.fo-leer{color:#B3261E;font-weight:700}
.fo-sig-liste{display:flex;flex-direction:column;gap:8px}
.fo-sig{display:grid;grid-template-columns:1.2fr .8fr 1.3fr .7fr;gap:14px;align-items:end;break-inside:avoid}
.fo-sig .rolle{font-weight:700}
.fo-sig .linie{border-top:1px solid #444;padding-top:3px;font-size:.75rem;color:#555;margin-top:26px}
.fo-phinweise{border:1px solid #CFCFCF;border-radius:8px;padding:10px 14px;font-size:.88rem}
.fo-phinweise ol{margin:6px 0 0;padding-left:20px}
.fo-fuss{margin:0}
.er-druck .er-stufe,.er-druck .er-matrix div,.er-druck .er-balken i,.er-druck .er-tag,.er-druck .er-punkte i{-webkit-print-color-adjust:exact;print-color-adjust:exact}
@media print{
  .fo-protokoll{border:0;padding:0}
  .fo-pabschnitt,.er-empf,.er-hinweis{break-inside:avoid}
  .fo-ptab thead{display:table-header-group}
}

/* Baukasten */
.bk-abschnitt{border-left:4px solid var(--accent)}
.bk-kopf{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.bk-kopf h2{margin:0}
.bk-feld{border:1px solid var(--line);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:10px;background:var(--bg)}
.bk-code{font-family:var(--mono);font-size:.75rem;background:var(--sunk);padding:2px 6px;border-radius:5px}
.bk-mini{padding:2px 9px;min-width:0}
.bk-bedingung{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;border-top:1px dashed var(--line);padding-top:8px}
.bk-bedingung .field{min-width:160px;flex:1}
.bk-klein{max-width:260px}
.instr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.instr-karte{border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:6px;background:var(--surface)}
.instr-karte p{margin:0}
.fo-form button[data-zeile-plus],.fo-feld .btn{width:auto;align-self:flex-start}

/* Fallführung */
.ff-eintrag{border-top:1px solid var(--line);padding-top:12px;display:flex;flex-direction:column;gap:6px}
.ff-eintrag:first-of-type{border-top:0}
.ff-eintrag.intern{background:color-mix(in srgb,var(--warn) 6%,transparent);border-radius:8px;padding:10px}
.ff-kopf{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.ff-kopf .grow{flex:1}
.ff-betreff{margin:0;font-weight:600}
.ff-spalten{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px 14px}
.ff-person summary{cursor:pointer}
.ff-person{border-top:1px solid var(--line);padding-top:8px}
.ff-phase{border-left:4px solid var(--line);padding:6px 0 6px 12px;display:flex;flex-direction:column;gap:4px}
.ff-phase.ff-laufend{border-color:var(--accent);background:var(--accent-soft);border-radius:0 8px 8px 0}
.ff-phase.ff-abgeschlossen{border-color:var(--ok);opacity:.8}
.ff-phase select{width:auto;padding:2px 6px;font-size:.8rem}
.ff-link{display:block;word-break:break-all;background:var(--surface);padding:6px 8px;border-radius:6px;margin:6px 0;cursor:copy}
.ff-link.kopiert{outline:2px solid var(--ok)}
.ki-leiste{background:var(--accent-soft);border-radius:10px;padding:8px 10px}
.ki-box{border-color:var(--accent)}
.ki-form{border-top:1px dashed var(--line);padding-top:10px}
.bericht-text{font-family:var(--mono);font-size:.88rem;line-height:1.5}
.bericht-druck h1{font-size:1.4rem}.bericht-druck h2{font-size:1.08rem;margin:16px 0 4px}
.bericht-druck p{margin:0 0 8px;line-height:1.55}
.bericht-li{padding-left:14px}
.narrow{max-width:460px;margin:0 auto}
.w-40{width:40%}
.err-text{color:var(--bad);margin:0}
.ff-person summary .muted{margin-left:6px}

.fo-kicker{font-size:.8rem;color:var(--muted);margin:2px 0 4px;letter-spacing:.02em}
.fo-oben{margin:10px 0}
.fo-werte{display:flex;gap:0;margin-top:22px;border-radius:6px;overflow:hidden;break-inside:avoid}
.fo-werte span{flex:1;text-align:center;padding:8px 6px;font-size:.82rem;font-weight:700;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.fo-schluss{font-size:.8rem;color:var(--muted);margin-top:8px}
/* Versandfassung */
.vs-brief{background:#fff;color:#111;padding:20mm 20mm 16mm;max-width:210mm;font-size:11pt;line-height:1.45;position:relative;min-height:250mm}
.vs-absender{font-size:9pt;color:#444;white-space:normal}
.vs-empfaenger{margin:12mm 0 14mm auto;width:85mm;min-height:30mm}
.vs-datum{text-align:right;margin-bottom:10mm}
.vs-betreff{font-weight:700;margin-bottom:6mm}
.vs-unterschrift{margin-top:16mm}
.vs-beilagen{margin-top:10mm;color:#444}
.vs-umbruch{break-after:page;height:24px}
.vs-beilage p{margin:0 0 10px}
.vs-kreuz span{font-size:1.2em;margin-right:6px}
.vs-linie{border-bottom:1px solid #444;height:28px;margin-bottom:4px}
@media print{.vs-brief{padding:0;min-height:0}.vs-umbruch{height:0}.vs-empfaenger{margin-top:20mm}}
/* Risikoanalyse */
.amp{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:9px;font-size:.72rem;font-weight:700;color:#fff;padding:0 5px;vertical-align:middle;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.amp:empty{width:14px;min-width:14px;height:14px;padding:0}
.amp-rot{background:#B3261E}.amp-gelb{background:#D9A400;color:#2a2000}.amp-gruen{background:#3E7B4F}
.rk-ampeln .amp{margin-right:4px}
.rk-liste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.rk-liste>li{border-top:1px solid var(--line);padding-top:10px}
.rk-kopf{display:flex;gap:10px;align-items:flex-start}
.rk-kopf>.amp{margin-top:3px}
.rk-mass{margin-top:6px;padding:6px 10px;background:var(--sunk);border-radius:8px;font-size:.9rem}
.rk-umgesetzt .rk-mass{opacity:.75}
.rk-edit,.rk-neu{margin-top:6px}
.rk-neu>summary{list-style:none;display:inline-block;cursor:pointer}
.rk-neu>summary::-webkit-details-marker{display:none}
.rk-neu[open]>summary{margin-bottom:10px}
.rk-ideen{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.chip{font:inherit;font-size:.8rem;border:1px solid var(--line);background:var(--surface);color:var(--fg);border-radius:999px;padding:3px 10px;cursor:pointer}
.chip:hover{background:var(--accent-soft)}
.amp-vorschau{display:inline-block;margin-top:4px;font-size:.8rem}
.rk-tab td{vertical-align:top}
/* Druck Risikoanalyse */
.rk-druck{background:#fff;color:#111;max-width:297mm}
.rk-druck table{width:100%;border-collapse:collapse;font-size:9.5pt}
.rk-druck th,.rk-druck td{border:1px solid #bbb;padding:5px 7px;vertical-align:top;text-align:left}
.rk-druck th{background:#eee}
.rk-druck .kopf{display:flex;justify-content:space-between;gap:20px;border-bottom:2px solid #444;padding-bottom:8px;margin-bottom:12px}
.rk-druck dl{display:grid;grid-template-columns:auto 1fr;gap:3px 14px;font-size:10pt;margin:0 0 12px}
.rk-druck dt{font-weight:700}
.rk-druck dd{margin:0}
@media print{@page rk{size:A4 landscape}.rk-druck{page:rk}}
.weiterleitung{border:1px solid var(--line);border-left:4px solid var(--accent);background:var(--accent-soft);border-radius:0 10px 10px 0;padding:12px 16px;margin:6px 0 14px}
.weiterleitung ul{margin:4px 0 0;padding-left:20px}
.weiterleitung li{margin:3px 0}
/* Startseite */
.lp-hero{padding-block:40px 18px;max-width:780px}
.lp-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700;color:var(--accent);margin:0 0 8px}
.lp-hero h1{font-size:clamp(1.9rem,4.5vw,2.8rem);line-height:1.12;margin:0 0 14px;letter-spacing:-.01em}
.lp-lead{font-size:1.1rem;color:var(--muted);margin:0 0 20px;max-width:65ch}
.lp-cta{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.lp-ablauf{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:0;margin:28px 0 40px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}
.lp-ablauf>div{padding:18px 18px 16px;border-right:1px solid var(--line)}
.lp-ablauf>div:last-child{border-right:0}
.lp-ablauf span{display:inline-flex;width:28px;height:28px;border-radius:50%;background:var(--accent);color:var(--accent-ink);align-items:center;justify-content:center;font-weight:700;font-size:.9rem;margin-right:8px}
.lp-ablauf b{font-size:1.05rem}
.lp-ablauf p{margin:8px 0 0;font-size:.9rem;color:var(--muted)}
.lp-h2{font-size:1.4rem;margin:0 0 4px}
.lp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.lp-grid h3{margin:0 0 6px;font-size:1.02rem;text-transform:none;letter-spacing:0;color:var(--fg)}
.lp-grid p{margin:0;font-size:.9rem;color:var(--muted)}
.lp-sicher{margin:36px 0;border-left:4px solid var(--accent)}
.lp-sicher ul{margin:8px 0 0;padding-left:20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:4px 28px}
.lp-pakete .card{border-top:3px solid var(--accent)}
.lp-kontakt{margin:36px 0 10px}
@media (max-width:640px){.lp-ablauf>div{border-right:0;border-bottom:1px solid var(--line)}.lp-ablauf>div:last-child{border-bottom:0}}
