:root{
  --bg:#f4f6f8; --card:#fff; --line:#e4e8ee; --line2:#eef1f5; --text:#1b2430; --muted:#6b7686; --muted2:#97a1af;
  --brand:#1a9b5b; --brand-d:#137a47; --brand-l:#e7f6ee;
  --side:#13202d; --side2:#1c2d3d; --side-t:#a9b6c4;
  --danger:#d93a3a; --danger-l:#fdecec; --warn:#c77700; --warn-l:#fff4e0; --ok:#15803d; --ok-l:#e8f6ed;
  --info:#2563eb; --info-l:#e8f0fe; --radius:10px;
  --shadow:0 1px 2px rgba(16,24,40,.05), 0 1px 3px rgba(16,24,40,.04);
}
*{box-sizing:border-box}
html,body{margin:0}
body{font:14px/1.45 "Inter",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--text);background:var(--bg);display:flex;min-height:100vh;-webkit-font-smoothing:antialiased}
a{color:var(--brand-d);text-decoration:none}
a:hover{text-decoration:underline}
code{background:#eef1f5;padding:1px 5px;border-radius:4px;font-size:12px}
h1,h2,h3{margin:0;font-weight:650;letter-spacing:-.01em}
h1{font-size:22px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
h2{font-size:15px}
h3{font-size:14px;margin-bottom:10px;display:flex;align-items:center;gap:8px}
hr{border:0;border-top:1px solid var(--line);margin:20px 0}
.ic{flex:none;vertical-align:-3px}

/* sidebar */
.sidebar{width:228px;flex:none;background:var(--side);color:var(--side-t);display:flex;flex-direction:column;position:sticky;top:0;height:100vh}
.brand{display:flex;align-items:center;gap:10px;color:#fff;font-weight:700;font-size:16px;padding:18px 18px 16px;text-decoration:none!important}
.logo{width:32px;height:32px;border-radius:8px;background:var(--brand);display:grid;place-items:center;color:#fff}
.sidebar nav{display:flex;flex-direction:column;padding:4px 10px;gap:2px;flex:1;overflow:auto}
.sidebar nav a{display:flex;align-items:center;gap:11px;padding:8px 10px;border-radius:7px;color:var(--side-t);font-weight:500;text-decoration:none}
.sidebar nav a:hover{background:var(--side2);color:#fff}
.sidebar nav a.active{background:var(--brand);color:#fff}
.sidebar nav a span{flex:1}
.badge{font-style:normal;background:var(--danger);color:#fff;font-size:11px;font-weight:700;border-radius:10px;padding:1px 7px;min-width:20px;text-align:center}
.sidebar nav a.active .badge{background:rgba(255,255,255,.25)}
.nav-sep{height:1px;background:var(--side2);margin:10px 4px}
.side-foot{font-size:11px;color:#6d7d8e;padding:14px 18px}

/* main */
.main{flex:1;min-width:0;display:flex;flex-direction:column}
.topbar{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding:20px 28px 14px}
.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.content{padding:0 28px 40px}
.crumb{font-size:12.5px;color:var(--muted);display:inline-block;margin-bottom:4px}
.h-sub{font-weight:450;color:var(--muted);font-size:17px}
.banner{display:flex;align-items:flex-start;gap:10px;background:#fff8e6;border-bottom:1px solid #f3dfa6;color:#6b4e00;padding:10px 28px;font-size:13px}
.banner .ic{margin-top:2px;color:#b07b00}
.banner div{flex:1}
.banner a{color:#7a5300;font-weight:600;margin-left:6px}
.banner-x{border:0;background:transparent;color:#8a6a10;cursor:pointer;padding:2px;border-radius:5px}
.banner-x:hover{background:#f6e7b8}
.flash{margin:0 28px 14px;padding:10px 14px;border-radius:8px;font-weight:500;border:1px solid}
.flash-success{background:var(--ok-l);border-color:#bfe3cb;color:#11602e}
.flash-error{background:var(--danger-l);border-color:#f5c2c2;color:#9b1c1c}
.flash-warn{background:var(--warn-l);border-color:#f3d6a0;color:#8a5200}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;color:var(--text);padding:7px 13px;border-radius:7px;font:inherit;font-weight:550;cursor:pointer;text-decoration:none!important;white-space:nowrap;box-shadow:var(--shadow);line-height:1.3}
.btn:hover{background:#f7f9fb;border-color:#d4dae2}
.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}
.btn.primary:hover{background:var(--brand-d)}
.btn.ghost{background:transparent;box-shadow:none;border-color:transparent;color:var(--muted)}
.btn.ghost:hover{background:#eef1f5;color:var(--text)}
.btn.sm{padding:4px 10px;font-size:12.5px;border-radius:6px}
.btn.full{width:100%;justify-content:center;margin-top:6px}
.btn.danger-outline{color:var(--danger);border-color:#f0c4c4;box-shadow:none}
.btn.danger-outline:hover{background:var(--danger-l)}
.inline-form{display:inline}

/* cards */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:18px;overflow-x:auto}
.card.pad,.pad{padding:18px 20px}
.pad-x{padding-left:18px;padding-right:18px}
.card-h{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line2);gap:10px}
.card-h.sub-h{border-top:1px solid var(--line2)}
.card-f{padding:10px 18px;border-top:1px solid var(--line2);font-size:13px}
.muted{color:var(--muted)}
.sub{color:var(--muted);font-size:12.5px;margin-top:1px}
.sm{font-size:12.5px}
.b{font-weight:650}
.r{text-align:right}.c{text-align:center}
.nowrap{white-space:nowrap}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px}
.t-danger{color:var(--danger)!important}.t-warn{color:var(--warn)!important}
.mt{margin-top:18px}
.cols{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;align-items:start}
.cols.wide-left{grid-template-columns:1.6fr 1fr}
.cols.narrow{grid-template-columns:1.2fr 1fr;max-width:980px}
.cols > *{min-width:0}

/* kpis */
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}
.kpi{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow);color:var(--text);text-decoration:none!important;transition:border-color .12s}
.kpi:hover{border-color:#c9d2dc}
.kpi-ic{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;flex:none}
.kpi-ic.green{background:var(--brand-l);color:var(--brand)}.kpi-ic.red{background:var(--danger-l);color:var(--danger)}
.kpi-ic.amber{background:var(--warn-l);color:var(--warn)}.kpi-ic.blue{background:var(--info-l);color:var(--info)}
.kpi-label{font-size:12px;color:var(--muted);font-weight:500}
.kpi-val{font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.2}
.kpi-val small{font-size:12.5px;font-weight:500;color:var(--muted);letter-spacing:0}
.mini-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
.mini-kpis.three{grid-template-columns:repeat(3,1fr)}
.mk{background:#fff;border:1px solid var(--line);border-radius:9px;padding:11px 14px;box-shadow:var(--shadow)}
.mk span{display:block;font-size:12px;color:var(--muted)}
.mk b{font-size:18px;font-weight:700}

/* attention list */
.attn{list-style:none;margin:0;padding:0}
.attn li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px;border-bottom:1px solid var(--line2);border-left:3px solid transparent}
.attn li:last-child{border-bottom:0}
.attn li.sev0{border-left-color:var(--danger)}.attn li.sev1{border-left-color:#f0a020}.attn li.sev2{border-left-color:#9bb5e6}
.attn-kind{font-size:11.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600;margin:0 4px}
.attn-main{min-width:0}
.empty{text-align:center;color:var(--muted);padding:28px 18px}
.empty .ic{color:var(--brand)}
.empty-row{text-align:center;color:var(--muted);padding:22px!important}

/* bars */
.bars{display:flex;gap:14px;align-items:flex-end;height:190px;padding:18px 20px 6px}
.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}
.bar-val{font-size:11.5px;color:var(--muted);height:18px;white-space:nowrap}
.bar-track{flex:1;width:100%;max-width:46px;display:flex;flex-direction:column-reverse;background:#f3f5f8;border-radius:6px 6px 0 0;overflow:hidden}
.bar-seg{width:100%}
.bar-label{font-size:12px;color:var(--muted);margin-top:6px;font-weight:550}
.c-fuel{background:#3b82f6}.c-maint{background:#1a9b5b}.c-repair{background:#f59e0b}.c-reg{background:#8b5cf6}.c-other{background:#94a3b8}
.legend{display:flex;gap:14px;flex-wrap:wrap;padding:6px 20px 12px;font-size:12px;color:var(--muted)}
.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}
.cat-ytd{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line2)}
.cat-ytd div{display:flex;justify-content:space-between;padding:8px 20px;border-bottom:1px solid var(--line2);font-size:13px}
.cat-ytd span{color:var(--muted)}

/* tables */
.tbl{width:100%;border-collapse:collapse}
.tbl th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600;text-align:left;padding:9px 10px;white-space:nowrap;background:#fafbfc;border-bottom:1px solid var(--line)}
.tbl td{padding:10px 10px;border-bottom:1px solid var(--line2);vertical-align:middle}
.tbl th:first-child,.tbl td:first-child{padding-left:18px}
.tbl th:last-child,.tbl td:last-child{padding-right:18px}
.tbl th.r{text-align:right}.tbl th.c{text-align:center}
.tbl tbody tr:hover{background:#fafcfd}
.tbl tbody tr:last-child td{border-bottom:0}
.tbl.compact td,.tbl.compact th{padding:6px 10px}
.row-danger td:first-child{box-shadow:inset 3px 0 0 var(--danger)}
.row-warn td:first-child{box-shadow:inset 3px 0 0 #f0a020}
.vcode{font-weight:650;color:var(--text)}
.vlink:hover .vcode{color:var(--brand-d)}
.alerts .pill{margin:1px 2px 1px 0}
.dot-n{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:11px;font-weight:700;font-size:12px;padding:0 6px}
.dot-n.danger{background:var(--danger-l);color:var(--danger)}.dot-n.warn{background:var(--warn-l);color:var(--warn)}
.foot-note{font-size:12px;color:var(--muted);margin:8px 2px 16px}

/* pills & tags */
.pill{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;padding:2px 9px;border-radius:999px;white-space:nowrap;line-height:1.5;vertical-align:middle}
.pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.85}
.pill-danger{background:var(--danger-l);color:#b42323}.pill-warn{background:var(--warn-l);color:#a35f00}
.pill-ok{background:var(--ok-l);color:var(--ok)}.pill-info{background:var(--info-l);color:var(--info)}
.pill-muted{background:#eef1f5;color:#5b6676}
h1 .pill{font-size:12.5px}
.ex-tag{display:inline-block;font-size:9.5px;font-weight:700;letter-spacing:.06em;color:#8a6200;background:#fff3cf;border:1px solid #f1dc9c;border-radius:4px;padding:0 4px;margin-left:6px;vertical-align:middle;line-height:15px}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}
.dot.danger{background:var(--danger)}.dot.warn{background:#f0a020}.dot.ok{background:var(--ok)}
.cat{font-size:12px;font-weight:600;padding:2px 8px;border-radius:5px;background:#eef1f5;color:#4b5563}
.cat-fuel{background:#e6efff;color:#1d4ed8}.cat-maintenance{background:var(--brand-l);color:var(--brand-d)}
.cat-repair{background:#fff2dc;color:#a35f00}.cat-registration-insurance{background:#f1eafe;color:#6d28d9}
.cat-part{background:#e6efff;color:#1d4ed8}.cat-labor{background:#fff2dc;color:#a35f00}

/* toolbar & filters */
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.seg{display:inline-flex;background:#fff;border:1px solid var(--line);border-radius:8px;padding:3px;gap:2px;box-shadow:var(--shadow);flex-wrap:wrap}
.seg a{padding:5px 12px;border-radius:6px;color:var(--muted);font-weight:550;font-size:13px;text-decoration:none!important;display:inline-flex;align-items:center}
.seg a b{margin-left:6px;font-size:11.5px;background:#eef1f5;color:#4b5563;border-radius:9px;padding:0 6px}
.seg a:hover{background:#f4f6f8;color:var(--text)}
.seg a.on{background:var(--text);color:#fff}
.seg a.on b{background:rgba(255,255,255,.2);color:#fff}
.search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:0 10px;box-shadow:var(--shadow);width:340px;color:var(--muted)}
.search input{border:0;outline:0;padding:8px 0;font:inherit;flex:1;background:transparent}
.filter-form{display:flex;gap:8px;align-items:center}

/* forms */
input,select,textarea{font:inherit;color:var(--text);border:1px solid #d5dbe3;border-radius:7px;padding:7px 10px;background:#fff;outline:none;min-width:0}
input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(26,155,91,.15)}
textarea{resize:vertical}
.form-card{max-width:820px}
.form-card.wide{max-width:1080px}
.grid-form{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
.grid-form.three{grid-template-columns:repeat(3,1fr)}
.field{display:flex;flex-direction:column;gap:5px;margin-bottom:10px}
.grid-form .field{margin-bottom:0}
.field > span{font-size:12.5px;font-weight:600;color:#3d4756}
.field.span2{grid-column:span 2}.field.span3{grid-column:span 3}
.req{color:var(--danger);font-style:normal}
.form-actions{display:flex;gap:8px;margin-top:18px}
.help{background:var(--info-l);color:#1e3a8a;border-radius:8px;padding:9px 12px;font-size:13px;margin:0 0 16px}
.check{display:flex;align-items:center;gap:8px;margin:14px 0 4px;font-size:13.5px;cursor:pointer}
.check input{width:16px;height:16px;accent-color:var(--brand)}
.danger-zone{max-width:820px;margin-top:4px}
.inline-add{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:12px 18px;border-bottom:1px solid var(--line2)}
.inline-add .grow{flex:1;min-width:160px}
.w80{width:80px}.w100{width:100px}.w120{width:120px}
.lines input,.lines select{width:100%}
.lines td{padding:6px 8px}
.row-btns{display:flex;gap:10px;margin-top:14px}
.exports{list-style:none;padding:0;margin:0}
.exports li{padding:8px 0;border-bottom:1px solid var(--line2);display:flex;justify-content:space-between;gap:10px}
.exports a{font-weight:600;display:inline-flex;gap:8px;align-items:center}
.exports .muted{font-size:12px}

/* vehicle detail */
.vhead{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;gap:20px}
.vfacts{display:flex;gap:34px;flex-wrap:wrap}
.vfacts > div > span,.wo-meta > div > span:first-child{display:block;font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600;margin-bottom:2px}
.vfacts b{font-size:14.5px}
.odo-form label{display:block;font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600;margin-bottom:4px}
.odo-form .inline{display:flex;gap:6px}
.odo-form input{width:130px;padding:5px 9px}
.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:18px;overflow-x:auto}
.tabs a{padding:9px 11px;color:var(--muted);font-weight:550;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap;text-decoration:none!important}
.tabs a b{font-size:11px;background:#e9edf2;color:#5b6676;border-radius:9px;padding:0 6px;margin-left:3px}
.tabs a:hover{color:var(--text)}
.tabs a.on{color:var(--brand-d);border-bottom-color:var(--brand)}
.tabs a.on b{background:var(--brand-l);color:var(--brand-d)}
.dl{display:grid;grid-template-columns:150px 1fr;gap:8px 12px;margin:0;padding:14px 18px;font-size:13.5px}
.card.pad .dl{padding:0}
.dl dt{color:var(--muted)}.dl dd{margin:0}

/* work order */
.wo-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.wo-title h2{font-size:18px;margin-bottom:4px}
.desc{white-space:pre-line;color:#3d4756;margin:10px 0 0}
.wo-meta{display:grid;grid-template-columns:repeat(3,minmax(110px,auto));gap:12px 28px}
.wo-meta b{font-size:13.5px}
.totals{display:flex;justify-content:flex-end;gap:28px;padding:14px 18px;border-top:1px solid var(--line);background:#fafbfc}
.totals span{display:block;font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}
.totals b{font-size:15px}
.totals .grand b{font-size:19px;color:var(--brand-d)}
.add-line td{background:#fcfdfd}
.add-line .inline-add{padding:0;border:0}
.done-card h3{color:var(--ok)}
.linked{padding:6px 0;font-size:13px;border-bottom:1px solid var(--line2)}
.linked:last-child{border:0}
#complete .field{margin-bottom:10px}

/* inspection checklist */
.checklist{border:1px solid var(--line);border-radius:9px;overflow:hidden}
.ck-row{display:grid;grid-template-columns:1.2fr auto 1.3fr;gap:14px;align-items:center;padding:8px 14px;border-bottom:1px solid var(--line2)}
.ck-row:last-child{border-bottom:0}
.ck-row.failed{background:#fff6f6}
.ck-name{font-weight:550}
.pf{display:flex;gap:4px}
.pf label{cursor:pointer}
.pf input{position:absolute;opacity:0;pointer-events:none}
.pf span{display:inline-block;padding:4px 12px;border:1px solid var(--line);border-radius:6px;font-size:12.5px;font-weight:600;color:var(--muted);background:#fff}
.pf-pass input:checked + span{background:var(--ok-l);border-color:#9fd5b2;color:var(--ok)}
.pf-fail input:checked + span{background:var(--danger-l);border-color:#efaaaa;color:var(--danger)}
.pf-na input:checked + span{background:#eef1f5;border-color:#cfd6df;color:#4b5563}
.ck-note{width:100%;padding:5px 9px}

@media (max-width: 1100px){
  .kpis{grid-template-columns:repeat(2,1fr)}
  .cols,.cols.wide-left,.cols.narrow{grid-template-columns:1fr}
}
@media (max-width: 760px){
  body{flex-direction:column}
  .sidebar{width:100%;height:auto;position:static}
  .sidebar nav{flex-direction:row;flex-wrap:wrap}
  .topbar{flex-direction:column;align-items:flex-start}
  .grid-form,.grid-form.three{grid-template-columns:1fr}
  .field.span2,.field.span3{grid-column:auto}
  .mini-kpis{grid-template-columns:repeat(2,1fr)}
  .ck-row{grid-template-columns:1fr}
  .tbl{display:block;overflow-x:auto}
}

.vcell{white-space:nowrap}
.vcell .sub{max-width:190px;overflow:hidden;text-overflow:ellipsis}
.wo-meta .pill{align-self:flex-start}
.attn li .btn{flex:none}
.remaining div + div{font-size:12.5px;opacity:.85}
.vcell .sub{max-width:150px}
td.task{min-width:170px}
td.task .sub{max-width:260px}
.vehicles-tbl .vcell .sub{max-width:none}

/* inventory & vendors */
.nav-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:#6d7d8e;font-weight:700;padding:12px 10px 4px}
.badge.amber{background:#d98a00}.badge.blue{background:#2563eb}
.kpis.five{grid-template-columns:repeat(5,1fr);gap:12px}
.kpis.five .kpi{padding:12px 13px;gap:10px}
.kpis.five .kpi-ic{width:34px;height:34px}
.kpis.five .kpi-val{font-size:20px}
.kpis.five .kpi-label{line-height:1.25}
.t-ok{color:var(--ok)!important}
.mono-h{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:20px}
.vfacts.contact b{display:inline-flex;align-items:center;gap:6px;font-weight:550}
.vfacts.contact .ic{color:var(--muted)}
.inv-tag{display:inline-flex;align-items:center;gap:3px;font-size:10.5px;font-weight:700;color:#1d4ed8;background:#e6efff;border-radius:4px;padding:0 5px;text-transform:uppercase;letter-spacing:.03em}
.stock-warn{display:flex;gap:8px;background:var(--danger-l);border:1px solid #f3c4c4;color:#8f1d1d;border-radius:8px;padding:9px 11px;font-size:12.5px;margin:4px 0 12px}
.stock-warn .ic{margin-top:2px;flex:none}
.w220{width:220px;max-width:240px}
.inline-add.flat{padding:0;border:0}
.sm-search{width:260px}
.qty{font-size:14.5px}
.lines .stock-hint{margin-top:3px}
h1 .cat{font-size:12.5px;font-weight:600}
@media (max-width: 1100px){ .kpis.five{grid-template-columns:repeat(3,1fr)} }
/* WO add-line form: let the part picker + description share a row and keep qty/cost compact */
.inline-add .w80{width:70px;flex:0 0 70px}
.inline-add .w100{width:100px;flex:0 0 100px}
.inline-add .part-sel.w220{flex:1 1 200px;max-width:none;width:0;min-width:0}
.inline-add .flex-break{flex-basis:100%;height:0}
.inline-add .flex-break ~ .grow{flex:1 1 120px;min-width:0;width:0}
/* kits: a part flagged as a kit + its contents */
.check.span2{grid-column:span 2}
.field-check{margin:0;align-items:flex-start}
.field-check input{margin-top:2px;flex:none}
.kit-tag{display:inline-flex;align-items:center;gap:3px;font-size:10.5px;font-weight:700;color:#6d28d9;background:#f1eafe;border-radius:4px;padding:0 6px;text-transform:uppercase;letter-spacing:.03em;vertical-align:middle;line-height:1.7}
h1 .kit-tag{font-size:11.5px;padding:1px 8px}
.kit-hit{margin-top:3px;font-size:12px;color:#5b21b6}
.kit-hit mark{background:#fef3c7;color:inherit;border-radius:2px;padding:0 1px}
.tbl tr.kit-comp td{padding-top:4px;padding-bottom:4px;border-bottom:0;font-size:12.5px;color:#4b5563;background:#fcfbff}
.tbl tr.kit-comp.last td{border-bottom:1px solid var(--line2);padding-bottom:8px}
.kit-comp .kc{padding-left:16px;position:relative}
.kit-comp .kc::before{content:"";position:absolute;left:3px;top:-2px;width:8px;height:11px;border-left:1.5px solid #c4b5fd;border-bottom:1.5px solid #c4b5fd;border-bottom-left-radius:3px}
.kit-tbl td.edit-row{background:#faf8ff}
.kit-tbl .inline-add{padding:0;border:0}
.kit-card .card-h .muted{font-size:12.5px}
@media (max-width: 760px){ .check.span2{grid-column:auto} }
.ext-link{display:inline-flex;align-items:center;gap:3px}
.vfacts.contact .mono{font-size:13.5px}
/* per-unit filters & service parts */
.w140{width:140px}.inline-add .w140{width:140px;flex:0 0 140px}.inline-add .w120{flex:0 0 120px}
.svc-card h2 .pill{margin-left:8px;font-size:11.5px}
.svc-card .card-h .muted{font-size:12.5px}
.svc-tbl td{vertical-align:top}
.svc-tbl td.edit-row{background:#f6fbf8}
.svc-tbl .inline-add{padding:0;border:0}
.stock-badge{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:700;border-radius:5px;padding:1px 7px;white-space:nowrap}
.stock-badge.ok{background:var(--ok-l);color:var(--ok)}.stock-badge.low{background:var(--warn-l);color:#a35f00}.stock-badge.out{background:var(--danger-l);color:#b42323}
.stock-badge:hover{text-decoration:none;filter:brightness(.97)}
.svc-wo{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 18px;border-top:1px solid var(--line2);background:#fafbfc;font-size:13px}
.svc-wo span:first-child{display:inline-flex;align-items:center;gap:6px}
.svc-wo select{max-width:340px}
.svc-hits h3{margin-bottom:6px}
