:root{--navy:#15263d;--ink:#17202a;--muted:#687385;--line:#dce2e9;--bg:#f4f6f8;--danger:#b42318;--ok:#177245}
*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink)}
header{background:var(--navy);color:#fff;padding:16px 20px;display:flex;gap:14px;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:5}header h1{font-size:19px;margin:0}header small{opacity:.8}.wrap{max-width:1100px;margin:0 auto;padding:20px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;margin-bottom:16px;box-shadow:0 2px 8px rgba(0,0,0,.04)}
h2,h3{margin-top:0}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}label{display:block;font-size:13px;font-weight:700;margin-bottom:5px}input,select,textarea{width:100%;padding:12px;border:1px solid #bec7d1;border-radius:9px;font:inherit;background:#fff}textarea{min-height:90px}button{border:0;border-radius:9px;padding:12px 16px;font-weight:800;cursor:pointer}button.primary{background:var(--navy);color:#fff}button.secondary{background:#e8edf2;color:var(--ink)}button.danger{background:var(--danger);color:#fff}.actions{display:flex;gap:10px;flex-wrap:wrap}.muted{color:var(--muted)}.error{background:#fff1f0;color:var(--danger);border:1px solid #f1b5af;border-radius:9px;padding:12px;margin:10px 0}.success{background:#edf8f2;color:var(--ok);border:1px solid #b9dfc8;border-radius:9px;padding:12px;margin:10px 0}.pill{display:inline-block;border-radius:999px;background:#edf1f5;padding:4px 9px;font-size:12px;font-weight:700}.job{border-left:4px solid var(--navy)}.hidden{display:none!important}.topnav{display:flex;gap:8px;flex-wrap:wrap}.topnav button{padding:8px 11px}.login{max-width:420px;margin:7vh auto}.bol{font-size:25px;font-weight:900;letter-spacing:2px}.required:after{content:" *";color:var(--danger)}.sig{border:1px dashed #8d99a6;border-radius:9px;height:120px;touch-action:none;width:100%;background:#fff}.listrow{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid var(--line);padding:12px 0}.listrow:first-child{border-top:0}.driver-note{background:#f0f5fa;padding:10px;border-radius:8px}.money{background:#fffbe8;border-color:#e6d68f}.small{font-size:12px}#customerPrint{display:none}
@media(max-width:720px){.wrap{padding:12px}.grid,.grid3{grid-template-columns:1fr}.card{padding:14px}.listrow{align-items:flex-start;flex-direction:column}header{align-items:flex-start;flex-direction:column}.topnav{width:100%}.topnav button{flex:1}.actions button{flex:1 1 140px}}
@media print{@page{size:letter portrait;margin:.28in}body.customer-printing>*:not(#customerPrint){display:none!important}body.customer-printing{background:#fff;font-size:9pt}body.customer-printing #customerPrint{display:block!important;color:#111;font-family:Arial,sans-serif}.cp-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #15263d;padding-bottom:6px;margin-bottom:7px}.cp-head h1{font-size:14pt;margin:0 0 2px}.cp-head small{font-size:8pt}.cp-head strong{font-size:15pt;letter-spacing:1px}.cp-details{display:grid;grid-template-columns:repeat(3,1fr);gap:3px 10px}.cp-item{border-bottom:1px solid #ddd;padding:2px 0;min-height:25px;break-inside:avoid}.cp-item b{display:block;font-size:7pt;text-transform:uppercase;color:#555;margin-bottom:1px}.cp-item span{font-size:9pt}.cp-signatures{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:7px}.cp-sig{break-inside:avoid}.cp-sig b{display:block;font-size:8pt}.cp-sig img{display:block;max-width:100%;height:42px;object-fit:contain;object-position:left center;border-bottom:1px solid #777}.cp-sig-line{height:42px;border-bottom:1px solid #777}.cp-billing{margin-top:7px;border-top:2px solid #15263d;padding-top:5px;break-inside:avoid}.cp-billing h2{font-size:11pt;margin:0 0 3px}.cp-billing table{width:100%;border-collapse:collapse;font-size:8pt}.cp-billing th,.cp-billing td{text-align:left;padding:2px 4px;border-bottom:1px solid #ddd}.cp-billing th:last-child,.cp-billing td:last-child{text-align:right}.cp-totals{display:flex;justify-content:flex-end;gap:18px;margin-top:4px;font-size:9pt}.cp-totals span{white-space:nowrap}header,.no-print{display:none!important}body:not(.customer-printing){background:#fff}.wrap{max-width:none;padding:0}.card{border:0;box-shadow:none;padding:0}.print-break{break-before:page}}
