:root{--navy:#071b3d;--navy2:#0a315f;--blue:#0878f9;--sky:#dcecff;--green:#14804a;--orange:#d96d16;--red:#cf3c3c;--ink:#0c1838;--muted:#66708b;--line:#dfe5ee;--bg:#f3f6fa;--white:#fff;--shadow:0 10px 30px rgba(20,39,73,.08)}*{box-sizing:border-box}body{margin:0;font-family:Manrope,Segoe UI,sans-serif;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}.app-shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,#061630,#073d67);color:white;padding:20px 15px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:10}.brand{display:flex;align-items:center;gap:12px;padding:8px 7px 24px;border-bottom:1px solid #ffffff1f}.brand img{width:62px;height:62px;border-radius:12px;background:#fff;object-fit:contain}.brand strong{font-size:24px;display:block}.brand span{display:block;font-size:10px;color:#b6cce1}.sidebar nav{padding-top:15px}.sidebar nav p{font-size:9px;letter-spacing:1.3px;color:#82a5c3;margin:15px 10px 7px}.nav-item{width:100%;display:flex;align-items:center;gap:12px;padding:11px 13px;background:transparent;border:0;color:#dce8f4;border-radius:8px;text-align:left;cursor:pointer;font-weight:600;font-size:13px}.nav-item span{width:20px;text-align:center;font-size:17px}.nav-item:hover,.nav-item.active{background:linear-gradient(90deg,#0878f9,#0a8ef2);color:white;box-shadow:0 8px 20px #001b3980}.sidebar-foot{margin-top:auto;background:#ffffff0d;padding:14px;border-radius:10px}.sidebar-foot small{font-weight:700}.sidebar-foot span{display:block;font-size:9px;color:#91b2ce;margin-top:6px}main{min-width:0}.topbar{height:84px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:5}.title-row,.top-actions{display:flex;align-items:center;gap:14px}.icon-btn{display:none;border:0;background:transparent;font-size:22px}.eyebrow{font-size:9px;letter-spacing:1.4px;font-weight:800;color:#60708b;margin:0 0 5px}.topbar h1{font-size:22px;margin:0}.top-actions{font-size:12px}.avatar{width:39px;height:39px;display:grid;place-items:center;border-radius:50%;background:var(--navy);color:#fff;font-weight:800}.admin span{font-size:9px;color:var(--muted);display:block}.view{display:none;padding:24px 28px 40px}.active-view{display:block}.welcome,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:20px}.welcome h2,.section-heading h2{font-size:25px;margin:0 0 5px}.welcome>div>p:last-child,.section-heading>div>p:last-child{font-size:13px;color:var(--muted);margin:0}.primary,.secondary{border:0;border-radius:8px;padding:11px 16px;font-weight:700;font-size:12px;cursor:pointer}.primary{background:linear-gradient(135deg,#075cf2,#008df4);color:white;box-shadow:0 7px 15px #0878f938}.secondary{background:#eef2f7;color:var(--ink)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:14px}.stats.compact{grid-template-columns:repeat(4,minmax(160px,1fr))}.stat{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:12px;padding:16px;display:flex;align-items:center;gap:13px}.stat-icon{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:var(--sky);font-size:20px}.stat strong{font-size:22px;display:block}.stat span{font-size:10px;color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:1.2fr .9fr;gap:14px}.panel{background:white;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.panel-head{padding:16px 17px 12px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0f4}.panel h3{font-size:15px;margin:0}.live{font-size:10px;color:var(--green);font-weight:700}.live i{display:inline-block;width:7px;height:7px;background:#20bb6b;border-radius:50%;margin-right:5px}.map-stage{height:220px;position:relative;overflow:hidden;background-color:#e8f1ed;background-image:linear-gradient(30deg,#aecfbd 1px,transparent 1px),linear-gradient(120deg,#c2d7cc 1px,transparent 1px);background-size:45px 45px}.map-stage:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 45% 45%,transparent,#eef5f03f)}.map-label{position:absolute;font-size:11px;font-weight:800;z-index:1}.manila{left:45%;top:30%}.batangas{left:31%;top:76%}.laguna{left:65%;top:61%}.truck-marker{position:absolute;z-index:3;border:2px solid #fff;border-radius:50%;width:35px;height:35px;background:var(--blue);box-shadow:0 3px 12px #071b3d66;cursor:pointer}.m1{left:38%;top:38%}.m2{left:57%;top:57%;background:#1a9f55}.m3{left:29%;top:68%;background:#f07c1a}.route-line{height:2px;background:#0a6cec;position:absolute;transform-origin:left center;z-index:2}.r1{width:145px;left:40%;top:44%;transform:rotate(28deg)}.r2{width:105px;left:31%;top:72%;transform:rotate(-36deg)}.mini-list{display:grid;grid-template-columns:repeat(3,1fr);padding:10px 14px}.mini-fleet{padding:6px 9px;border-right:1px solid var(--line)}.mini-fleet:last-child{border:0}.mini-fleet strong,.mini-fleet span{display:block}.mini-fleet strong{font-size:11px}.mini-fleet span{font-size:9px;color:var(--muted)}.delivery-list{padding:5px 17px}.delivery-item{padding:13px 0;border-bottom:1px solid #edf0f4}.delivery-item:last-child{border:0}.delivery-top{display:flex;justify-content:space-between}.delivery-top strong{font-size:11px}.delivery-item>span{display:block;font-size:10px;color:var(--muted);margin-top:6px}.badge{display:inline-flex;padding:4px 8px;border-radius:20px;font-size:9px;font-weight:800;white-space:nowrap}.in-transit,.paid,.available,.delivered{background:#dff4e7;color:#147443}.loading,.sent{background:#fff0dc;color:#bf5e10}.maintenance,.overdue{background:#ffe5e4;color:#bd3535}.scheduled,.draft{background:#e6efff;color:#1e62c7}.finance-snapshot,.route-card{min-height:245px}.calc{padding:12px 17px}.calc-row{display:flex;justify-content:space-between;padding:6px 0;font-size:11px}.calc-row.deduction span:last-child{color:var(--red)}.calc-row.add span:last-child{color:var(--green)}.calc-row.total{border-top:1px solid var(--line);margin-top:6px;padding-top:12px;font-weight:800;font-size:15px}.currency-chip{background:#e1f7e8;color:var(--green);padding:5px 9px;font-size:9px;font-weight:800;border-radius:20px}.route-content{padding:26px 20px}.route-points{display:grid;grid-template-columns:1fr 100px 1fr;align-items:center}.route-point strong,.route-point span{display:block}.route-point strong{font-size:12px}.route-point span{font-size:10px;color:var(--muted);margin-top:5px}.route-track{border-top:2px dashed #9cafc1;text-align:center;color:var(--blue);font-size:20px}.route-meta{margin-top:22px;padding:11px;background:#f2f6fa;border-radius:8px;display:flex;justify-content:space-between;font-size:10px}.text-btn{border:0;background:transparent;color:var(--blue);font-weight:700;font-size:10px;cursor:pointer}.table-panel{overflow:visible}.toolbar{padding:13px;display:flex;gap:10px;border-bottom:1px solid var(--line)}input,select,textarea{width:100%;border:1px solid #d4dce8;border-radius:7px;background:white;padding:10px 11px;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0878f91a}.toolbar input{max-width:350px}.toolbar select{max-width:190px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:820px}th{text-align:left;background:#f7f9fc;color:#596680;font-size:9px;text-transform:uppercase;letter-spacing:.5px;padding:12px 15px}td{padding:13px 15px;border-top:1px solid #edf0f4;font-size:11px}td strong{font-weight:800}.load-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.load-card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:17px}.load-head{display:flex;justify-content:space-between;align-items:start}.load-head h3{font-size:15px;margin:4px 0}.load-head p{font-size:10px;color:var(--muted);margin:0}.route-inline{display:flex;align-items:center;gap:9px;margin:18px 0}.pin{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e0f3ff}.route-inline .line{flex:1;border-top:2px dashed #b8c5d2}.route-inline strong{font-size:10px;max-width:125px}.load-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;background:#f6f8fb;border-radius:8px;padding:12px}.load-grid span{font-size:9px;color:var(--muted);display:block}.load-grid strong{font-size:11px}.profit{display:flex;justify-content:space-between;align-items:end;margin-top:15px}.profit span{font-size:9px;color:var(--muted);display:block}.profit strong{font-size:19px;color:var(--green)}dialog{border:0;border-radius:14px;padding:0;box-shadow:0 25px 80px #071b3d55;width:min(680px,calc(100% - 30px))}dialog::backdrop{background:#041127aa;backdrop-filter:blur(3px)}.modal-form{padding:22px}.modal-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:20px}.modal-head h2{margin:0;font-size:22px}.close{border:0;background:#eef2f7;border-radius:50%;width:32px;height:32px;font-size:20px;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{font-size:10px;font-weight:800;color:#48546b}.form-grid label input,.form-grid label select,.form-grid label textarea{margin-top:6px}.wide{grid-column:1/-1}.formula-note{background:#eef7ff;border-radius:8px;padding:10px;display:flex;flex-direction:column;font-size:9px;color:#4f6078}.formula-note strong{color:var(--ink);margin-bottom:4px}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.invoice-paper{padding:38px;background:white}.invoice-title{display:flex;justify-content:space-between;border-bottom:3px solid var(--navy);padding-bottom:20px}.invoice-title img{width:80px;height:80px;object-fit:contain}.invoice-title h2{font-size:28px;margin:0;color:var(--navy)}.invoice-company{text-align:right;font-size:10px}.bill-info{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:25px 0}.bill-info p,.invoice-details p{font-size:11px;line-height:1.6}.invoice-amount{background:var(--navy);color:#fff;padding:15px 18px;display:flex;justify-content:space-between;font-weight:800}.preview-actions{display:flex;justify-content:flex-end;gap:9px;padding:15px;background:#f4f6f9}.action-btn{border:1px solid #ced8e6;background:white;color:var(--blue);padding:6px 9px;border-radius:6px;font-size:9px;font-weight:700;cursor:pointer}#toast{position:fixed;right:25px;bottom:25px;background:var(--navy);color:white;padding:12px 17px;border-radius:8px;box-shadow:var(--shadow);font-size:11px;transform:translateY(100px);opacity:0;transition:.25s;z-index:50}#toast.show{transform:none;opacity:1}@media(max-width:1050px){.app-shell{grid-template-columns:210px 1fr}.stats{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.load-cards{grid-template-columns:1fr}}@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;left:-260px;width:250px;transition:.25s}.sidebar.open{left:0}.icon-btn{display:block}.topbar{padding:0 16px}.top-actions #today,.admin{display:none}.view{padding:18px 14px}.welcome,.section-heading{align-items:flex-start;flex-direction:column}.stats,.stats.compact{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.load-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.stats,.stats.compact{grid-template-columns:1fr}.top-actions{display:none}}@media print{body>*{visibility:hidden}#invoicePreview,#invoicePreview *{visibility:visible}#invoicePreview{position:absolute;inset:0;width:100%;box-shadow:none}.preview-actions{display:none}}
