@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#172f30;--muted:#778486;--line:#e4e9e8;--paper:#f5f7f6;--green:#23675a;--lime:#d9ef9c;--orange:#bd7131;--red:#b75151;--shadow:0 8px 35px #16312c0a}*{box-sizing:border-box}body{margin:0;background:var(--paper);font:14px 'DM Sans',sans-serif;color:var(--ink)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3,.brand{font-family:Manrope,sans-serif}h1{font-size:29px;letter-spacing:-1.2px;font-weight:800}h2{font-size:17px;letter-spacing:-.4px}h3{font-size:14px}a{color:inherit}.icon{width:19px;height:19px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sidebar{width:228px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:30px 17px 18px;z-index:10}.brand{display:flex;align-items:center;gap:9px;font-size:26px;font-weight:800;letter-spacing:-1.4px;padding:0 12px 29px}.brand-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--ink);color:var(--lime);transform:rotate(-8deg)}.brand-mark .icon{width:23px;height:23px}.workspace{display:flex;border:1px solid var(--line);border-radius:10px;padding:4px;margin-bottom:25px;background:#f7f9f8;gap:3px}.workspace button{border:0;background:none;padding:9px 8px;flex:1;font-size:12px;border-radius:7px;color:var(--muted)}.workspace .active{background:var(--ink);color:white;box-shadow:0 2px 5px #102f3020}.nav-label{font-size:10px;letter-spacing:1.8px;color:#9aa5a4;margin:0 13px 10px;font-weight:700}.nav button{width:100%;border:0;background:none;display:flex;gap:13px;align-items:center;padding:12px 13px;border-radius:9px;text-align:left;color:#6a7a7c;margin-bottom:4px;font-weight:500}.nav button:hover{background:#f3f6f4}.nav button.active{background:#eaf2ed;color:var(--green);font-weight:700}.nav .count{font-size:10px;background:white;border:1px solid #d3e0d8;border-radius:5px;padding:1px 5px;margin-left:auto}.sidebar-bottom{margin-top:auto}.demo-note{padding:16px 12px;border:1px dashed #cfdcd5;border-radius:10px;background:#f7faf5;font-size:11px;line-height:1.7;margin-bottom:18px;color:#788575}.demo-note strong{color:var(--green);display:block;font-size:12px}.profile{display:flex;align-items:center;gap:10px;padding:10px 7px;border-top:1px solid var(--line)}.avatar{border-radius:50%;background:#e8efe9;color:#547462;font-size:10px;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;font-weight:700}.profile b{font-size:12px}.profile small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.main{margin-left:228px}.topbar{height:78px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;background:#fff;gap:18px}.crumb{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:12px}.crumb b{color:var(--ink);font-weight:500}.search{display:flex;align-items:center;gap:10px;color:#8b9798;background:#f6f8f7;border:1px solid var(--line);padding:10px 12px;border-radius:8px;width:290px}.search input{min-width:0;width:100%;border:0;background:none;font-size:12px;color:var(--ink);outline:none}.top-tools{display:flex;align-items:center;gap:18px}.status-dot{width:6px;height:6px;border-radius:50%;background:#589279;display:inline-block;margin-right:6px}.sub{color:var(--muted);font-size:12px;line-height:1.7}.bell{position:relative;background:none;border:0;padding:6px}.bell:after{content:'';position:absolute;right:7px;top:5px;background:var(--orange);width:5px;height:5px;border:2px solid white;border-radius:50%}.content{padding:32px 38px 24px;max-width:1660px;margin:0 auto}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.eyebrow{font-size:10px;letter-spacing:1.6px;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-weight:600}.page-head .sub{margin-top:7px}.actions{display:flex;gap:9px;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 15px;border:1px solid var(--line);background:#fff;border-radius:8px;font-size:12px;font-weight:600;white-space:nowrap}.btn:hover{background:#f0f5f1}.btn.primary{background:var(--ink);border-color:var(--ink);color:#fff}.btn.primary:hover{background:#2c5049}.btn.lime{background:var(--lime);color:var(--ink);border-color:var(--lime)}.btn.small{padding:7px 10px;font-size:11px}.text-btn{border:0;background:none;display:inline-flex;gap:6px;align-items:center;color:var(--green);font-size:11px;font-weight:600;padding:5px 0}.text-btn .icon{width:14px;height:14px}.welcome{display:flex;align-items:center;justify-content:space-between;background:#163b35;color:#fff;border-radius:14px;padding:25px 27px;margin-bottom:24px;overflow:hidden;position:relative;gap:20px}.welcome:after{content:'';position:absolute;width:250px;height:250px;right:75px;top:-115px;border:1px solid #ffffff0e;border-radius:50%;box-shadow:0 0 0 35px #ffffff03,0 0 0 70px #ffffff03;pointer-events:none}.welcome .eyebrow{color:#a8c7b4}.welcome h2{font-size:23px;line-height:1.4}.welcome p{font-size:12px;color:#a8c0b5;margin-top:6px;line-height:1.7}.welcome .actions{z-index:1}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:26px}.stat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:19px 21px;box-shadow:var(--shadow)}.stat-top{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#738282}.stat-top .icon{width:17px;height:17px;color:#8a9a94}.stat-value{font-family:Manrope,sans-serif;font-size:30px;font-weight:700;letter-spacing:-1px;line-height:1.25;margin:12px 0 7px}.stat-value small{font-size:12px;color:var(--muted);letter-spacing:0;font-weight:500;margin-left:4px}.stat-foot{font-size:10px;color:var(--muted)}.stat-foot b{color:var(--green);font-weight:500}.grid-main{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;align-items:start}.panel{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:22px}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:21px 22px 17px;gap:12px}.panel-head h2 small{display:inline-block;background:#f1f4f2;color:var(--muted);font:11px 'DM Sans',sans-serif;padding:3px 7px;border-radius:5px;margin-left:7px}.tabs{display:flex;align-items:center;gap:21px;border-bottom:1px solid var(--line);padding:0 22px}.tabs button{border:0;background:none;padding:12px 0 13px;color:var(--muted);font-size:11px;position:relative;white-space:nowrap}.tabs button.active{color:var(--green);font-weight:700}.tabs button.active:after{content:'';height:2px;position:absolute;bottom:-1px;left:0;right:0;background:var(--green)}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap}th{background:#fafbfa;color:#899493;font-size:9px;text-transform:uppercase;letter-spacing:1px;padding:13px 22px;font-weight:500}td{padding:17px 22px;font-size:12px;border-top:1px solid #f0f2f1}td .sub{font-size:10px;line-height:1.8}tbody tr.clickable{cursor:pointer}tbody tr.clickable:hover{background:#f7faf8}td strong{font-weight:600}.vehicle-cell{display:flex;align-items:center;gap:12px}.car-box{width:44px;height:35px;border-radius:7px;display:grid;place-items:center;background:#f0f4f1;color:#72877b}.car-box svg{width:30px;height:23px}.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:5px;font-size:10px;font-weight:500;white-space:nowrap;background:#edf1ef;color:#6d7a73}.badge:before{content:'';width:4px;height:4px;border-radius:50%;background:currentColor}.badge.blue{background:#edf3fa;color:#5a7eb2}.badge.amber{background:#fbf2e5;color:#b57c36}.badge.purple{background:#f1edfa;color:#8d73b1}.badge.green{background:#edf5ed;color:#548363}.badge.red{background:#faeded;color:#b96060}.badge.gray{background:#f0f2f2;color:#768582}.assignee{display:flex;align-items:center;gap:7px;font-size:10px}.assignee .avatar{width:24px;height:24px;font-size:8px}.row-bottom{padding:14px 22px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);display:flex;justify-content:space-between}.attention{background:#fffcf5;border-color:#eee4cf}.attention .panel-head{padding-bottom:4px}.attention h2{font-size:14px;display:flex;gap:8px;align-items:center}.attention h2 .icon{color:#bc9552;width:16px}.attention-item{padding:15px 22px;border-bottom:1px solid #eee9df;cursor:pointer}.attention-item:hover{background:#faf4e8}.attention-item:last-child{border:0}.attention-item strong{font-size:11px;display:block;margin:6px 0}.attention-item p{font-size:10px;line-height:1.8;color:#8c887d}.tiny-label{font-size:8px;letter-spacing:1px;text-transform:uppercase;color:#bc9552}.schedule-item{display:flex;padding:15px 22px;gap:12px;border-top:1px solid #f0f2f1}.schedule-time{font-size:10px;color:var(--muted);width:44px;flex-shrink:0;line-height:1.7}.schedule-detail{border-left:2px solid #c6dbc9;padding-left:13px}.schedule-detail b{font-size:11px}.schedule-detail p{font-size:10px;color:var(--muted);margin-top:5px;line-height:1.6}.pill{font-size:9px;background:#edf4ee;border-radius:4px;padding:4px 6px;display:inline-block;margin-top:8px;color:#64876a}.capacity{padding:0 22px 20px}.capacity-row{display:flex;justify-content:space-between;font-size:10px;margin-top:15px}.bar{height:5px;background:#edf1ef;border-radius:5px;overflow:hidden;margin-top:8px}.bar span{display:block;background:#8ead90;height:100%;border-radius:5px}.footer{display:flex;justify-content:space-between;color:#98a3a1;font-size:10px;padding:3px 0 0}.filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.filter{border:1px solid var(--line);background:white;border-radius:7px;padding:9px 13px;font-size:11px}.filter.active{color:var(--green);background:#eaf2ed;border-color:#b7d0bf}.filter select{border:0;background:transparent}.board{display:grid;grid-template-columns:repeat(6,minmax(195px,1fr));gap:14px;overflow:auto;padding-bottom:15px}.lane{background:#eef2ef;border-radius:10px;padding:12px;min-height:360px}.lane-title{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;margin:3px 0 17px}.lane-title span{font-weight:400;color:var(--muted)}.job-card{display:block;text-align:left;width:100%;border:1px solid var(--line);border-radius:9px;background:#fff;padding:15px;margin-bottom:11px;box-shadow:0 2px 3px #18342503}.job-card:hover{border-color:#8eb199;transform:translateY(-1px)}.job-card .job-num{font-size:9px;color:var(--muted);margin-bottom:10px;display:flex;justify-content:space-between}.job-card h3{margin-bottom:5px}.job-card p{font-size:10px;color:var(--muted);line-height:1.8}.job-card .work-name{font-size:11px;color:var(--ink);margin:13px 0}.job-card .bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eff2ef;padding-top:11px;font-size:10px;color:var(--muted)}.empty{padding:45px 20px;text-align:center;color:var(--muted);font-size:12px;line-height:1.8}.vehicle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.vehicle-card{padding:22px;background:#fff;border:1px solid var(--line);border-radius:12px;cursor:pointer}.vehicle-card:hover{border-color:#9bb9a6}.vehicle-card-top{display:flex;justify-content:space-between;align-items:center}.vehicle-art{height:95px;display:grid;place-items:center;margin:14px 0;color:#7f9c8f;background:linear-gradient(180deg,#fff,#f5f8f5);border-radius:8px}.vehicle-art svg{width:130px;height:75px;stroke-width:1.1}.vehicle-card h2{margin-bottom:5px}.vehicle-card .details{border-top:1px solid var(--line);margin-top:15px;padding-top:15px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.vehicle-card label{font-size:9px;color:var(--muted);display:block;margin-bottom:4px}.vehicle-card .details span{font-size:11px}.fleet-banner{background:#e8efe7;border:1px solid #d9e5d6;border-radius:12px;padding:22px;display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px}.fleet-banner h2{font-size:18px}.fleet-banner p{font-size:12px;color:#71846f;margin-top:7px}.chart{padding:15px 25px 23px}.chart-grid{display:flex;align-items:flex-end;justify-content:space-around;gap:16px;height:175px;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to top,transparent 0,transparent 42px,#f0f3f0 43px,#f0f3f0 44px)}.chart-col{flex:1;max-width:42px;background:#c8ddc3;border-radius:5px 5px 0 0;position:relative;min-height:4px}.chart-col:last-child{background:#2f6c58}.chart-col span{position:absolute;bottom:-25px;left:50%;transform:translateX(-50%);font-size:9px;color:var(--muted)}.chart-col b{position:absolute;top:-19px;left:50%;transform:translateX(-50%);font-size:9px;font-weight:500;color:#758477}.chart-note{margin-top:42px;font-size:10px;color:var(--muted);line-height:1.8}.split{display:grid;grid-template-columns:1fr 1fr;gap:22px}.metric-list{padding:0 22px 18px}.metric-row{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.metric-row:last-child{border:0}.calendar-day{display:grid;grid-template-columns:70px 1fr;gap:15px;border-top:1px solid var(--line);padding:20px 22px}.calendar-day .date-block{color:var(--muted);font-size:10px}.calendar-day .date-block b{font-family:Manrope;font-size:28px;display:block;color:var(--ink);margin:5px 0}.appointment{border:1px solid #dbe6dd;border-left:3px solid #8db298;border-radius:8px;padding:16px;background:#f7faf7;margin-bottom:9px;display:flex;align-items:center;justify-content:space-between;gap:10px}.appointment b{font-size:12px}.appointment p{font-size:11px;margin-top:6px;color:var(--muted)}.backdrop{position:fixed;inset:0;background:#10292755;backdrop-filter:blur(3px);z-index:50;display:flex;justify-content:flex-end}.drawer{background:#fff;width:620px;max-width:100%;height:100%;overflow:auto;box-shadow:-20px 0 70px #10312220}.drawer-head{padding:28px 28px 22px;background:#fafcf9;border-bottom:1px solid var(--line)}.drawer-head .title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.close{border:1px solid var(--line);background:#fff;border-radius:7px;padding:6px;display:grid;place-items:center}.drawer-head h2{font-size:24px;margin-bottom:7px}.drawer-body{padding:26px 28px}.drawer-body h3{margin:22px 0 12px}.drawer-body h3:first-child{margin-top:0}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.info-grid dt{font-size:10px;color:var(--muted);margin-bottom:6px}.info-grid dd{font-size:12px;margin:0;line-height:1.7}.stage-track{display:flex;margin:24px 0 0;gap:5px}.stage-track span{height:4px;border-radius:3px;flex:1;background:#e3eae4}.stage-track span.done{background:#779e7c}.callout{border:1px solid #e3eacb;background:#f8faee;border-radius:8px;font-size:11px;line-height:1.8;padding:15px;margin-bottom:20px;color:#72805e}.check-row{display:flex;align-items:center;gap:11px;padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.check-row input{accent-color:var(--green);width:16px;height:16px}.check-row span{flex:1}.estimate-row{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.estimate-row small{display:block;color:var(--muted);font-size:10px;margin-top:6px}.estimate-total{padding:18px;background:#f3f7f1;border-radius:8px;display:flex;justify-content:space-between;font-size:14px;font-weight:700;margin-top:16px}.timeline-item{border-left:1px solid #d7e3d9;padding:0 0 23px 18px;margin-left:5px;position:relative;font-size:12px;line-height:1.7}.timeline-item:before{content:'';width:7px;height:7px;background:#86a88c;position:absolute;left:-4px;top:5px;border-radius:50%}.timeline-item small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.drawer-action{padding:18px 28px;border-top:1px solid var(--line);background:#fafcf9;display:flex;gap:10px;align-items:center;justify-content:space-between;position:sticky;bottom:0}.modal-wrap{position:fixed;inset:0;z-index:60;background:#10292755;backdrop-filter:blur(3px);display:grid;place-items:center;padding:20px;overflow:auto}.modal{background:#fff;border-radius:15px;width:560px;max-width:100%;max-height:92vh;overflow:auto;box-shadow:var(--shadow)}.modal-head{padding:24px 26px 19px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:start}.modal-head h2{font-size:21px}.modal-head p{margin-top:7px}.form-body{padding:24px 26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:11px;font-weight:600}.field input,.field select,.field textarea{border:1px solid #dbe3de;border-radius:7px;background:#fff;padding:11px 12px;width:100%;min-width:0;color:var(--ink);font-size:12px}.field textarea{resize:vertical;min-height:80px}.modal-footer{padding:18px 26px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:9px}.mobile-menu{display:none}#toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%,15px);z-index:90;background:#153c32;color:#fff;font-size:12px;padding:14px 22px;border-radius:9px;box-shadow:0 5px 30px #10292730;opacity:0;pointer-events:none;transition:.2s;max-width:90vw}#toast.show{opacity:1;transform:translate(-50%,0)}.search-results{position:absolute;top:65px;right:38px;width:400px;max-width:90vw;z-index:35;background:#fff;box-shadow:0 15px 40px #12352c20;border:1px solid var(--line);border-radius:10px;overflow:hidden}.search-result{display:block;width:100%;border:0;background:#fff;text-align:left;padding:15px 18px;border-bottom:1px solid var(--line);font-size:12px}.search-result:hover{background:#eff5ef}.search-result small{display:block;color:var(--muted);margin-top:5px}.search-title{font-size:10px;padding:13px 18px;background:#f7faf7;color:var(--muted)}.notice-strip{font-size:11px;line-height:1.8;background:#f0f5ee;border:1px solid #dae5d7;border-radius:8px;padding:13px 16px;margin-bottom:20px;color:#6f8169}.cost-label{font-size:9px;color:var(--muted)}.no-results{padding:25px;font-size:12px;color:var(--muted)}.mobile-nav{display:none}@media(min-width:1500px){.grid-main{grid-template-columns:minmax(0,1fr) 350px}.content{padding-top:38px}.welcome{padding:30px}.stat{padding:23px}}@media(max-width:1200px){.sidebar{width:195px;padding-left:12px;padding-right:12px}.main{margin-left:195px}.content{padding:28px 24px}.topbar{padding:0 24px}.grid-main{grid-template-columns:minmax(0,1fr) 270px;gap:16px}td,th{padding-left:15px;padding-right:15px}.stats{gap:12px}.stat{padding:16px}.vehicle-grid{grid-template-columns:repeat(2,1fr)}.brand{font-size:24px}.top-tools .sub{display:none}.welcome h2{font-size:20px}}@media(max-width:980px){.grid-main{grid-template-columns:1fr}.side-panels{display:grid;grid-template-columns:1fr 1fr;gap:20px}.sidebar{width:180px}.main{margin-left:180px}.crumb{display:none}.topbar{justify-content:flex-end}.stats{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.welcome{padding:23px}.welcome p{max-width:280px}.page-head{align-items:flex-start}}@media(max-width:700px){.sidebar{display:none;width:235px;box-shadow:10px 0 30px #12352c20}.sidebar.mobile-open{display:flex}.main{margin-left:0}.mobile-menu{display:grid;place-items:center;border:0;background:none;padding:0;margin-right:auto}.topbar{height:64px;padding:0 18px;gap:10px}.top-tools{gap:10px}.search{width:220px;max-width:55vw;padding:9px}.top-tools>.avatar{display:none}.content{padding:24px 17px 90px}.page-head{margin-bottom:22px;gap:12px}h1{font-size:24px}.page-head .actions .btn:not(.primary){display:none}.btn{padding:10px 12px;font-size:11px}.welcome{display:block;padding:23px}.welcome .actions{margin-top:18px}.welcome p{max-width:none}.welcome h2{font-size:21px}.stats{gap:11px;margin-bottom:20px}.stat{padding:16px}.stat-value{font-size:28px}.stat-top{font-size:11px}.stat-foot{font-size:9px;line-height:1.7}.side-panels{display:block}.panel-head{padding:18px}.panel-head h2{font-size:15px}td,th{padding:14px}.tabs{overflow:auto;gap:19px;padding:0 18px}.vehicle-grid{grid-template-columns:1fr}.footer{display:none}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);justify-content:space-around;padding:9px 6px max(10px,env(safe-area-inset-bottom));z-index:20}.mobile-nav button{display:flex;flex-direction:column;align-items:center;gap:5px;background:none;border:0;color:var(--muted);font-size:9px;padding:3px 10px}.mobile-nav button.active{color:var(--green);font-weight:700}.search-results{right:17px;top:58px}.fleet-banner{display:block}.fleet-banner .btn{margin-top:14px}.drawer-head,.drawer-body{padding:22px}.drawer-action{padding:16px 22px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.modal-wrap{padding:12px}.modal-head,.form-body{padding:22px}.appointment{align-items:flex-start}.calendar-day{padding:18px 13px;grid-template-columns:44px 1fr}.info-grid{gap:16px}.page-head .eyebrow{font-size:9px}.notice-strip{font-size:10px}}

.grid-main>* , .split>*{min-width:0}.panel{min-width:0}.content{min-width:0}.table-wrap{max-width:100%}@media(max-width:700px){.page-head h1{font-size:23px}.page-head .sub{font-size:11px}}
.walkin-fields{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:17px;padding:18px;background:#f5f8f3;border:1px solid #dbe5d8;border-radius:9px}.walkin-fields[hidden]{display:none}@media(max-width:700px){.walkin-fields{grid-template-columns:1fr}}
