:root{--ink:#111827;--muted:#667085;--line:#cbd5e1;--soft:#f4f7fb;--brand:#0f172a;--accent:#d70000}*{box-sizing:border-box}body{margin:0;background:#eef2f7;color:var(--ink);font-family:Arial,Helvetica,sans-serif}.no-print{display:block}.app-shell{min-height:100vh;display:grid;grid-template-columns:300px 1fr}.side{background:#0f172a;color:#fff;padding:34px 26px;position:sticky;top:0;height:100vh}.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:#cbd5e1}.status-card{margin-top:28px;padding:14px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.08)}.workspace{padding:34px;max-width:1180px}.card{background:#fff;border:1px solid #d9e1ee;border-radius:18px;box-shadow:0 10px 35px rgba(15,23,42,.08);padding:24px}.hero{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.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 #99a6bb;background:#f8fafc;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}.button,.primary,.ghost,button{appearance:none;border:0;border-radius:12px;padding:12px 16px;background:#e8edf5;color:#111827;font-weight:800;cursor:pointer}button:hover,.button:hover{filter:brightness(.96)}.primary{background:#0f172a;color:#fff}.ghost{background:#fff;border:1px solid #d0d7e2}.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:#344054}.form-grid input{margin-top:7px;border:1px solid #cfd7e6;border-radius:10px;padding:12px;font:inherit}.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)}.parts-list{border:1px solid var(--line);border-radius:12px;overflow:hidden}.part-row{display:grid;grid-template-columns:80px 1fr 120px;gap:12px;padding:11px 14px;border-top:1px solid var(--line);align-items:center}.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)}.document{position:relative;background:#fff;min-height:297mm}.doc-header{display:flex;align-items:flex-start;justify-content:space-between;border-bottom:2px solid #111;padding:18mm 12mm 8mm}.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-top:2px solid #111;border-bottom:2px solid #111;text-align:center;padding:7mm 0 5mm;margin-bottom:7mm}.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:14mm;padding:4mm}.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}.component-block h3{font-size:16px;margin:0 0 4mm}.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.25;vertical-align:middle}.abbs-table td{border:1px solid #667085;min-height:28px;height:28px;padding:6px;vertical-align:middle;background:#fff}.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:32px}.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:10mm;padding:3mm}.large-write-box{border:1px solid #111;height:65mm;margin-bottom:18mm}.signature-grid{display:grid;grid-template-columns:1fr 1fr;gap:20mm}.signature-grid div{border-top:1.5px solid #111;padding-top:4mm;text-align:center;font-weight:700}.muted{color:#667085}
@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 .ghost{margin-top:16px}.form-grid{grid-template-columns:1fr}.part-row{grid-template-columns:60px 1fr}}
