:root{
  --ink:#111827;
  --muted:#667085;
  --line:#cbd5e1;
  --soft:#f4f7fb;
  --brand:#0f172a;
  --accent:#d70000;
  --doc-margin-right:1cm;
  --page-bg:#eef2f7;
  --header-bg:rgba(238,242,247,.92);
  --card-bg:#fff;
  --card-border:#d9e1ee;
  --card-shadow:0 10px 35px rgba(15,23,42,.08);
  --input-bg:#fff;
  --input-border:#cfd7e6;
  --label:#344054;
  --btn-bg:#e8edf5;
  --ghost-bg:#fff;
  --ghost-border:#d0d7e2;
  --dropzone-bg:#f8fafc;
  --dropzone-border:#99a6bb;
  --parts-head-bg:#f8fafc;
  --side-bg:#0f172a;
  --side-text:#fff;
  --side-muted:#cbd5e1;
  --modal-bg:#fff;
  --modal-text:#475467;
}
[data-theme="dark"]{
  --ink:#e5e7eb;
  --muted:#94a3b8;
  --line:#334155;
  --soft:#1e293b;
  --page-bg:#0b1220;
  --header-bg:rgba(11,18,32,.92);
  --card-bg:#111827;
  --card-border:#334155;
  --card-shadow:0 10px 35px rgba(0,0,0,.35);
  --input-bg:#0f172a;
  --input-border:#475569;
  --label:#cbd5e1;
  --btn-bg:#1e293b;
  --ghost-bg:#111827;
  --ghost-border:#475569;
  --dropzone-bg:#0f172a;
  --dropzone-border:#475569;
  --parts-head-bg:#0f172a;
  --side-bg:#020617;
  --side-text:#f8fafc;
  --side-muted:#94a3b8;
  --modal-bg:#111827;
  --modal-text:#cbd5e1;
}
*{box-sizing:border-box}body{margin:0;background:var(--page-bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif}.no-print{display:block}.app-shell{min-height:100vh;display:grid;grid-template-columns:calc(300px + 2mm) 1fr}.side{background:var(--side-bg);color:var(--side-text);padding:34px 26px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.side .logo{width:210px;background:#fff;border-radius:10px;padding:10px;margin-bottom:28px}.side h1{font-size:30px;line-height:1.06;margin:0 0 12px}.side p{color:var(--side-muted)}.status-card{margin-top:28px;padding:14px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.08)}.side-actions{margin-top:auto;display:grid;gap:10px;padding-top:24px}.side-btn{width:100%;background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.2)}.side-btn.ghost{background:transparent}.workspace{padding:34px;max-width:1180px}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:18px;box-shadow:var(--card-shadow);padding:24px}.hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.hero h2{font-size:30px;margin:0 0 8px}.hero p{margin:0;color:var(--muted)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:22px}h3{margin:0 0 16px;font-size:20px}.dropzone{border:2px dashed var(--dropzone-border);background:var(--dropzone-bg);border-radius:18px;padding:30px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.dropzone.active{background:#eef6ff;border-color:#2563eb}[data-theme="dark"] .dropzone.active{background:#172554;border-color:#60a5fa}.button,.primary,.ghost,button{appearance:none;border:0;border-radius:12px;padding:12px 16px;background:var(--btn-bg);color:var(--ink);font-weight:800;cursor:pointer}button:hover,.button:hover{filter:brightness(.96)}button:disabled,.button:disabled{opacity:.55;cursor:not-allowed;filter:none}.primary{background:#0f172a;color:#fff}.ghost{background:var(--ghost-bg);border:1px solid var(--ghost-border)}.button input{display:none}.note{font-size:14px;color:var(--muted);margin-top:12px}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{display:flex;flex-direction:column;font-weight:700;font-size:13px;color:var(--label)}.form-grid input{margin-top:7px;border:1px solid var(--input-border);border-radius:10px;padding:12px;font:inherit;background:var(--input-bg);color:var(--ink)}.table-headline{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.table-headline h3{margin:0}.table-headline span{color:var(--muted)}.form-grid label.full{grid-column:1/-1}.parts-editor-head{display:grid;grid-template-columns:88px 1fr 44px;gap:12px;padding:10px 14px;background:var(--parts-head-bg);border:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0;font-size:12px;font-weight:800;color:var(--label)}.parts-list{border:1px solid var(--line);border-radius:0 0 12px 12px;overflow:hidden}.part-row{display:grid;gap:12px;padding:11px 14px;border-top:1px solid var(--line);align-items:center}.part-row:first-child{border-top:0}.part-row.edit{grid-template-columns:88px 1fr 44px}.part-row.edit input{border:1px solid var(--input-border);border-radius:8px;padding:10px 12px;font:inherit;width:100%;background:var(--input-bg);color:var(--ink)}.part-row.edit .part-qty{text-align:right}.part-remove{width:36px;height:36px;padding:0;border-radius:8px;background:var(--ghost-bg);border:1px solid var(--ghost-border);color:var(--muted);font-size:22px;line-height:1;cursor:pointer}.part-remove:hover{background:#fef2f2;border-color:#fca5a5;color:#b91c1c}.parts-actions{margin-top:14px}.part-row:first-child{border-top:0}.part-row b{text-align:right}.part-row small{color:var(--muted)}.empty{padding:18px;color:var(--muted)}.protocol{display:none;background:#fff;max-width:210mm;margin:30px auto;border:1px solid #d7dce7;box-shadow:0 18px 50px rgba(15,23,42,.12)}.protocol-toolbar{max-width:210mm;margin:30px auto 0;padding:12px 16px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:#fff;border:1px solid #d9e1ee;border-radius:14px;box-shadow:0 8px 24px rgba(15,23,42,.08)}.protocol-toolbar[hidden]{display:none!important}.protocol-edit-status{font-size:13px;color:var(--muted)}.protocol-is-editing .document{outline:2px dashed #d70000;outline-offset:4px}.document.is-editing{cursor:text}.document.is-editing [contenteditable="true"]:focus{outline:none}.document{position:relative;background:#fff;min-height:297mm;padding:12mm 1cm 12mm 12mm;box-sizing:border-box;overflow-x:hidden}.doc-header{display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1.5px solid #111;padding:12mm 12mm 6mm}.doc-title{text-transform:uppercase;font-size:24px;font-weight:900;letter-spacing:.03em}.doc-company{font-size:13px;font-weight:800;margin-top:6px}.doc-logo{width:175px;height:auto}.doc-content{padding:10mm 12mm 18mm}.doc-footer{display:flex;justify-content:space-between;border-top:1px solid #111;padding:5mm 12mm 7mm;color:#555;font-size:11px}.doc-section{margin-bottom:12mm}.page-break{break-before:page;page-break-before:always}.section-head{border-bottom:1.5px solid #111;text-align:center;padding:4mm 0 4mm;margin-bottom:7mm}.subsection-head{margin:8mm 0 4mm;padding-bottom:3mm;border-bottom:1px solid #cbd5e1}.subsection-head h3{margin:0;font-size:16px}.subsection-head p{margin:2mm 0 0;color:#667085;font-size:12px;font-weight:700}.section-head h2{margin:0;text-transform:uppercase;font-size:22px;letter-spacing:.06em}.section-head p{margin:3mm 0 0;color:#667085;font-weight:700}.meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10mm}.meta-grid div{border:1px solid var(--line);min-height:17mm;padding:5mm}.meta-grid b{display:block;font-size:12px;color:#475467}.meta-grid span{display:block;margin-top:2mm}.component-block{break-inside:avoid;page-break-inside:avoid;margin-bottom:9mm}.table-keep{break-inside:avoid;page-break-inside:avoid;margin-bottom:9mm}.component-block h3{font-size:16px;margin:0 0 4mm}.hydrant-table-title{margin:6mm 0 3mm;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.abbs-table{width:100%;border-collapse:collapse;table-layout:fixed;margin:0 0 8mm;font-size:12px}.abbs-table th{background:#eef2f7;color:#000;border:1.2px solid #111;padding:7px 6px;text-align:center;font-weight:900;line-height:1.2;vertical-align:middle;white-space:normal;overflow-wrap:anywhere;word-break:break-word;hyphens:auto}.abbs-table td{border:1px solid #667085;min-height:36px;height:36px;padding:7px 8px;vertical-align:middle;background:#fff;overflow-wrap:anywhere;word-break:break-word}.hydrant-table th{font-size:9.5px;line-height:1.15}.hydrant-table td{font-size:10px}.hydrant-table td:first-child{text-align:center}.check-box{display:inline-block;width:13px;height:13px;border:1.4px solid #111;vertical-align:middle}.technical-table td:nth-child(1),.technical-table td:nth-child(3){background:#f8fafc}.measure-table td{text-align:center;height:38px;min-height:38px}.diesel-note{border:1px solid #94a3b8;background:#f8fafc;padding:5mm;margin-bottom:7mm;line-height:1.45}.mini-grid{display:grid;grid-template-columns:26mm 1fr 26mm 1fr;border:1px solid #111;margin-bottom:8mm}.mini-grid div{border:1px solid #cbd5e1;min-height:12mm;padding:4mm}.large-write-box{border:1px solid #111;height:70mm;margin-bottom:18mm}.closing-text{margin:0 0 6mm;line-height:1.45}.closing-section{break-inside:avoid;page-break-inside:avoid}.signature-grid{display:grid;grid-template-columns:1fr 1fr;gap:20mm}.signature-pair{display:grid;grid-template-columns:.32fr .68fr;gap:8mm;align-items:end}.signature-field{border-top:1.5px solid #111;padding-top:4mm;text-align:center;font-weight:700;min-height:14mm}.signature-field span{display:block;font-size:11px}.muted{color:#667085}.modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.modal[hidden]{display:none!important}.modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.55)}.modal-card{position:relative;z-index:1;width:min(520px,100%);background:var(--modal-bg);border:1px solid var(--card-border);border-radius:18px;padding:28px;box-shadow:0 24px 60px rgba(15,23,42,.25)}.modal-card h3{margin:0 0 10px;font-size:24px}.modal-card p{margin:0 0 22px;color:var(--modal-text);line-height:1.45}.modal-actions{display:flex;flex-wrap:wrap;gap:10px}.tav-inspection-notice{border:1px solid #cbd5e1;background:#f8fafc;padding:3mm 3.5mm;margin:0 0 5mm;font-size:10px;line-height:1.35;color:#475467}.tav-inspection-notice p{margin:0}.tav-inspection-notice strong{font-weight:700;color:#344054}.checklist-legend{margin:0 0 3mm;font-size:10px;line-height:1.35;color:#475467}.measure-conversion{margin-top:3mm;max-width:28%}.measure-conversion-title{margin:0 0 1mm;font-size:8px;font-weight:800;color:#475467}.gallon-conversion-table{width:100%;margin:0 0 3mm;font-size:8px}.gallon-conversion-table th,.gallon-conversion-table td{height:20px;min-height:20px;padding:2px 4px;text-align:center}
@media(max-width:900px){.app-shell{display:block}.side{height:auto;position:static}.grid{grid-template-columns:1fr}.workspace{padding:18px}.hero{display:block}.hero-actions{margin-top:16px;justify-content:flex-start}.form-grid{grid-template-columns:1fr}.part-row.edit,.parts-editor-head{grid-template-columns:72px 1fr 40px}}

.doc-liegenschaft{margin-top:4px;font-size:12px;font-weight:700;color:#344054;}
