:root{--bg:#121416;--panel:#1a1c1e;--card:#222528;--hover:#292d32;--lime:#c7f240;--blue:#3b5bf6;--text:#f4f5f5;--muted:#9aa0a6;--line:#ffffff14;--orange:#ff9f43;--red:#ff8b8b}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible{outline:2px solid var(--lime)}button{background:var(--lime);color:#101416;cursor:pointer;border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:9px;padding:12px 17px;font-weight:650;transition:background .15s;display:inline-flex}button:hover{filter:brightness(1.07)}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}button.secondary,.button-link{border:1px solid var(--line);color:var(--text);background:var(--card)}.button-link{white-space:nowrap;border-radius:9px;padding:9px 12px;font-size:12px;display:inline-flex}button.ghost{color:var(--muted);background:0 0;border:0;padding:8px}button.ghost:hover{background:var(--hover);color:#fff}.small{font-size:12px;padding:7px 9px!important}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-1.3px;margin-bottom:10px;font-size:33px;font-weight:650}h2{letter-spacing:-.45px;font-size:19px;font-weight:600}h3{margin-bottom:7px;font-size:15px;font-weight:600}p{line-height:1.6}small{color:var(--muted);font-size:12px}.muted{color:var(--muted)}.eyebrow{letter-spacing:2px;color:var(--muted);margin-bottom:10px;font-size:10px;font-weight:600}.app-shell{min-height:100vh;display:flex}.app-shell>aside{border-right:1px solid var(--line);z-index:50;background:#17191b;flex-direction:column;width:225px;padding:28px 18px;display:flex;position:fixed;inset:0 auto 0 0;overflow:auto}.brand{align-items:center;gap:12px;margin-bottom:40px;display:flex}.brand>span{letter-spacing:-3px;color:var(--lime);background:var(--card);border-radius:13px;padding:8px 13px 8px 9px;font-size:27px;font-style:italic;font-weight:850}.brand b{letter-spacing:3px;font-size:16px}.brand small{letter-spacing:1.5px;margin-top:4px;font-size:8px;display:block}.nav-label{color:#696f74;letter-spacing:2px;margin:0 13px 13px;font-size:9px}nav{gap:5px;display:grid}nav button{color:var(--muted);background:0 0;justify-content:flex-start;padding:11px 14px;font-size:12px;font-weight:500;position:relative}nav button:hover{background:var(--card)}nav button.active{color:var(--lime);background:#2c3221}nav button.active:before{content:"";background:var(--lime);border-radius:4px;width:3px;height:24px;position:absolute;left:-18px}.nav-dot{background:var(--lime);border-radius:50%;width:5px;height:5px;margin-left:auto}.sidebar-foot{color:var(--muted);margin-top:auto;padding:30px 10px 0;font-size:10px;line-height:2}.sidebar-foot small{margin-left:13px;font-size:10px}.sidebar-foot a{color:var(--lime);margin-top:8px;display:block}.status-dot,.orbit-label i{background:var(--lime);border-radius:50%;width:5px;height:5px;margin-right:6px;display:inline-block}.app-shell>main{width:calc(100% - 225px);min-width:0;margin-left:225px}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:81px;padding:0 34px;display:flex}.breadcrumb{color:var(--muted);font-size:12px}.breadcrumb span{color:#555;margin:0 14px}.top-right{align-items:center;gap:15px;display:flex}.date{color:var(--muted);margin-right:12px;font-size:11px}.avatar{width:35px;height:35px;color:var(--lime);background:#363d2c;border-radius:50%;padding:0;font-size:13px}.user-name{font-size:11px}.user-name small{margin-top:3px;font-size:9px;display:block}.content{max-width:1720px;margin:auto;padding:32px 34px}.page-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.page-heading p.muted{margin-bottom:0;font-size:12px}.title-dot{color:var(--lime)}.heading-actions{align-items:center;gap:9px;display:flex}.overview-grid{grid-template-columns:2.3fr 1fr;gap:20px;margin-bottom:20px;display:grid}.hero-card{background:var(--card);border-radius:24px;min-height:294px;padding:32px;display:flex;position:relative;overflow:hidden}.hero-text{z-index:2}.hero-card h2{letter-spacing:-1.3px;margin:19px 0 12px;font-size:32px;line-height:1.12}.hero-card p{color:var(--muted);font-size:11px}.hero-card button{margin-top:7px;font-size:11px}.pill{color:var(--lime);letter-spacing:1.7px;border:1px solid #555b43;border-radius:20px;padding:6px 9px;font-size:8px;display:inline-block}.fleet-orbit{min-width:180px;color:var(--lime);flex:1;justify-content:center;align-items:center;display:flex;position:relative}.orbit-grid{border:1px solid #3c4331;border-radius:50%;width:240px;height:240px;position:absolute;box-shadow:0 0 0 20px #2b302633,0 0 0 42px #333a2022}.orbit-grid:before{content:"";border:1px dashed #4b533c;border-radius:50%;position:absolute;inset:24px}.fleet-orbit svg{z-index:1;filter:drop-shadow(0 8px 22px #0008);transform:rotate(-5deg)}.orbit-label{background:#262c23;border:1px solid #444a3e;border-radius:10px;padding:9px 12px;font-size:9px;position:absolute;bottom:25px;right:0}.readiness-card{background:var(--panel);border:1px solid var(--line);border-radius:24px;padding:23px}.section-head{justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px;display:flex}.section-head h2,.section-head h3{margin:0}.section-head p{margin:7px 0 0;font-size:11px}.section-head>svg{color:var(--muted)}.donut{border-radius:50%;width:156px;height:156px;margin:20px auto;padding:10px}.donut>div{background:var(--panel);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.donut strong{letter-spacing:-1px;font-size:32px}.donut span{color:var(--muted);margin-top:4px;font-size:10px}.readiness-legend{color:var(--muted);justify-content:center;gap:14px;font-size:9px;display:flex}.readiness-legend i{border-radius:50%;width:5px;height:5px;margin-right:5px;display:inline-block}.lime{background:var(--lime)}.blue{background:var(--blue)}.metrics{grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:26px;display:grid}.metric{text-align:left;background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:18px;padding:21px;display:block}.metric>div{color:var(--muted);justify-content:space-between;align-items:center;font-size:11px;display:flex}.metric>div svg{color:var(--lime)}.metric strong{letter-spacing:-1px;margin:16px 0 9px;font-size:34px;font-weight:550;display:block}.metric small{font-size:9px;font-weight:400}.metric-1>div svg{color:#7b91ff}.metric-2>div svg{color:#bf99e6}.metric-3>div svg{color:var(--orange)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:20px;min-width:0;margin-bottom:22px;padding:23px}.project-line{border-top:1px solid var(--line);align-items:center;gap:16px;padding:20px 0;display:flex}.project-icon{color:var(--lime);background:#2b3023;border-radius:13px;padding:13px}.project-line h3{font-size:13px}.project-line small{font-size:10px}.project-progress{min-width:180px;max-width:280px;margin-left:auto}.project-progress>div{margin-bottom:8px}.project-progress span{font-size:10px}.progress-track{background:#333;border-radius:10px;height:4px;margin:8px 0}.progress-track i{background:var(--lime);border-radius:10px;height:100%;display:block}.agent-pills{max-width:150px}.agent-pills span{background:var(--card);border-radius:5px;margin:3px;padding:5px 8px;font-size:9px;display:block}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.search{background:var(--card);border:1px solid var(--line);color:var(--muted);border-radius:10px;align-items:center;gap:10px;padding:0 12px;display:flex}.search input{background:0 0;border:0;max-width:240px;padding:11px 0}.table-wrap{overflow-x:auto}table{border-collapse:collapse;text-align:left;white-space:nowrap;width:100%}th{text-transform:uppercase;letter-spacing:.7px;color:var(--muted);border-bottom:1px solid var(--line);background:#202325;padding:13px 14px;font-size:9px;font-weight:500}td{border-bottom:1px solid var(--line);color:#c5c9cd;padding:17px 14px;font-size:11px}td b{color:var(--text);font-weight:550}td small{margin-top:6px;font-size:9px;display:block}tr:last-child td{border-bottom:0}.row-actions{gap:4px;display:flex}.badge{color:#bec6cc;background:#33383c;border-radius:20px;align-items:center;padding:5px 8px;font-size:9px;display:inline-flex}.badge.available,.badge.active,.badge.online,.badge.approved,.badge.enabled{color:var(--lime);background:#2c3522}.badge.assigned,.badge.on_truck{color:#9baeff;background:#272e51}.badge.blocked,.badge.rejected,.badge.expired{color:var(--red);background:#422728}.badge.pending,.badge.stale,.badge.offline{color:var(--orange);background:#3c3224}.empty{text-align:center;color:var(--muted);padding:50px 20px}.empty svg{color:#687061;margin-bottom:14px}.empty p,.empty button{font-size:12px}.pagination{color:var(--muted);justify-content:space-between;align-items:center;padding-top:17px;font-size:10px;display:flex}.pagination>div{gap:8px;display:flex}.notice,.alert{border-radius:10px;align-items:center;gap:10px;margin:0 0 20px;padding:13px 16px;font-size:12px;line-height:1.5;display:flex}.notice{color:var(--lime);background:#273020;border:1px solid #404d2d}.notice button{margin-left:auto}.alert{color:#ffb6b6;background:#392627;border:1px solid #674042}.loading{text-align:center;color:var(--muted);padding:60px}label{color:#c2c6c8;font-size:11px;display:block}input,select,textarea{width:100%;color:var(--text);background:#222629;border:1px solid #3a3f43;border-radius:8px;min-width:0;margin-top:7px;padding:11px 12px;font-size:12px;display:block}select,input[type=date],input[type=datetime-local]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.check{align-items:center;gap:8px;font-size:11px;display:flex}.check input{width:auto;margin:0}.required{color:var(--lime)}.wide{grid-column:1/-1}dialog{color:var(--text);background:#1a1d20;border:1px solid #444a4f;border-radius:20px;width:min(850px,94vw);max-height:90vh;padding:0;box-shadow:0 35px 120px #0009}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000b}dialog>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:20px 25px;display:flex}dialog h2{margin:0;font-size:19px}.modal-body{padding:24px}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.modal-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;padding:20px 25px;display:flex}.signature canvas{touch-action:none;background:#f7f8f3;border-radius:9px;width:100%;max-width:600px;margin:8px 0;display:block}.signature small{margin-left:12px}.requirements>label{margin-bottom:8px}.requirement{border:1px solid var(--line);border-radius:10px;grid-template-columns:1.4fr .6fr 1fr;gap:8px;margin-bottom:10px;padding:12px;display:grid}.requirement input,.requirement select{margin:0}.two-columns{grid-template-columns:1fr 1fr;gap:20px;display:grid}.list-item{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:16px 0;font-size:12px;display:flex}.list-item>div{margin-right:auto}.list-item small{margin-top:6px;font-size:10px;display:block}.fleet-map,.map-placeholder{z-index:1;border-radius:20px;height:400px;margin-bottom:22px;overflow:hidden}.map-placeholder{color:var(--muted);background:radial-gradient(#293024,#181b1c);border:1px dashed #41473a;flex-direction:column;justify-content:center;align-items:center;display:flex}.map-placeholder h3{margin-top:16px}.map-placeholder p{text-align:center;padding:0 20px;font-size:12px}.integration-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.integration{background:var(--card);border-radius:15px;padding:22px}.integration p{color:var(--muted);font-size:11px}.integration small{font-size:10px}.integration .heading-actions{margin-top:18px}.filters{gap:16px;margin:10px 0 20px;display:flex}.filters>label{flex:1}.preview-rows{background:var(--card);border-radius:10px;max-height:220px;margin:18px 0;padding:15px;font-size:12px;overflow:auto}.preview-rows>div{margin-bottom:8px}.token{word-break:break-all;white-space:normal;background:var(--card);color:var(--lime);border-radius:10px;padding:16px;font-size:14px;display:block}pre{white-space:pre-wrap;max-width:450px;max-height:240px;font-size:10px;overflow:auto}footer{color:#646d73;justify-content:space-between;margin-top:32px;font-size:9px;display:flex}footer span{color:#555e63}.mobile-menu{display:none!important}.login-screen{grid-template-columns:1.1fr 1fr;min-height:100vh;display:grid}.login-story{background:radial-gradient(at 50% 70%,#2d3524,#181c1b 60%);flex-direction:column;justify-content:space-between;padding:50px 60px;display:flex;overflow:hidden}.login-story h1{letter-spacing:-3px;font-size:clamp(44px,5vw,70px);line-height:1.06}.login-story p{color:var(--muted)}.login-art{height:200px;color:var(--lime);justify-content:center;align-items:center;display:flex;position:relative}.orbit{border:1px solid #404933;border-radius:50%;width:280px;height:280px;position:absolute}.orbit.two{opacity:.5;width:340px;height:340px}.login-form{width:100%;max-width:410px;margin:auto;padding:35px}.login-form h2{font-size:30px}.login-form form{gap:22px;margin-top:32px;display:grid}.login-form .mobile-link{margin-top:28px;font-size:11px;display:block}.mobile-page{max-width:580px;margin:0 auto;padding:25px}.mobile-page .brand{margin-bottom:25px}.mobile-page h1{font-size:28px}.mobile-page button{width:100%;margin:8px 0}.mobile-page .gps-status{background:var(--card);border-radius:16px;margin:20px 0;padding:20px}.mobile-page input{font-size:16px}.mobile-page .alert{display:block}.mobile-page .check input{width:20px}.mobile-page .check{align-items:flex-start;line-height:1.6}@media (min-width:1550px){.hero-card{min-height:320px}.fleet-orbit{min-width:300px}.hero-card h2{font-size:39px}.readiness-card .donut{margin:30px auto}.content{padding:38px 44px}}@media (max-width:1100px){.app-shell>aside{width:192px;padding-left:12px;padding-right:12px}.app-shell>main{width:calc(100% - 192px);margin-left:192px}.content{padding:25px 22px}.topbar{padding:0 22px}.fleet-orbit{min-width:120px}.fleet-orbit svg{width:80px}.orbit-grid{width:180px;height:180px}.hero-card{padding:25px}.hero-card h2{font-size:27px}.metrics{gap:10px}.metric{padding:17px}.metric small{font-size:8px}.project-line{flex-wrap:wrap}.agent-pills{display:none}.integration-grid{grid-template-columns:1fr}.readiness-card{padding:20px 15px}.date{display:none}}@media (max-width:800px){.app-shell>aside{width:225px;transform:translate(-100%)}.app-shell>aside.open{transform:translate(0);box-shadow:0 0 80px #0009}.app-shell>main{width:100%;margin:0}.mobile-menu{display:inline-flex!important}.topbar{gap:10px;height:65px;padding:0 16px}.breadcrumb{margin-right:auto;font-size:10px}.breadcrumb span{margin:0 6px}.user-name{display:none}.top-right{gap:8px}.content{padding:24px 17px}.overview-grid{grid-template-columns:1.6fr 1fr;gap:12px}.hero-card{min-height:270px;padding:23px}.hero-card h2{font-size:29px}.fleet-orbit{display:none}.readiness-card{padding:19px 12px}.readiness-card h3{font-size:12px}.donut{width:125px;height:125px}.readiness-legend{flex-direction:column;align-items:center;gap:8px;font-size:8px}.metrics{grid-template-columns:1fr 1fr;gap:12px}.metric small{font-size:10px}.panel{padding:17px}.page-heading{align-items:flex-start}.page-heading h1{font-size:29px}.heading-actions button{padding:10px;font-size:11px}.page-heading .heading-actions{flex-shrink:0}.section-head{flex-wrap:wrap}.two-columns{grid-template-columns:1fr;gap:0}.filters{grid-template-columns:1fr 1fr;display:grid}.project-progress{width:100%;max-width:100%;margin:0}.project-line>div:nth-child(2){flex:1}.login-screen{grid-template-columns:1fr}.login-story{display:none}.login-form{max-width:440px;margin:10vh auto}.toolbar{gap:10px}.toolbar select{width:auto}.form-grid{grid-template-columns:1fr}.modal-body{padding:20px}.requirement{grid-template-columns:1fr 1fr}.fleet-map,.map-placeholder{height:310px}footer span{display:none}}@media print{aside,.topbar,.heading-actions,.toolbar,button,footer{display:none!important}.app-shell>main{width:100%;margin:0}.content{padding:0}.panel{color:#000;background:#fff;border:1px solid #ccc}.panel td,.panel th,.panel b{color:#000}body{color:#000;background:#fff}.badge{color:#000}}.bulk-item{border:1px solid var(--line);border-radius:12px;margin-bottom:14px;padding:16px}.bulk-item>b{font-size:12px}.bulk-item p{font-size:11px}.bulk-item summary{color:var(--muted);font-size:11px}.report-columns{color:var(--muted);margin-bottom:20px;font-size:11px}.column-options{grid-template-columns:repeat(4,1fr);gap:12px;padding:20px 0;display:grid}@media (max-width:800px){.column-options{grid-template-columns:1fr 1fr}.filters{flex-wrap:wrap}}@media (max-width:520px){.overview-grid{grid-template-columns:minmax(0,1fr)}.hero-card{min-height:250px}.hero-card h2{font-size:31px}.readiness-card{grid-template-columns:1fr 125px;align-items:center;gap:12px;display:grid}.readiness-card .section-head{align-self:start}.readiness-card .donut{grid-area:1/2/3;margin:0}.readiness-card .readiness-legend{grid-column:1;align-items:start}.content,.panel,.metric,.filters>*,.page-heading>*{min-width:0}.page-heading{flex-wrap:wrap;gap:14px}.toolbar{flex-wrap:wrap}.search{min-width:0;max-width:100%}.column-options{grid-template-columns:1fr}}.agent-portal{min-height:100vh}.agent-header{border-bottom:1px solid var(--line);background:var(--panel);justify-content:space-between;align-items:center;gap:20px;padding:24px 4vw;display:flex}.agent-body{max-width:1440px;margin:auto;padding:32px 4vw}.agent-tabs{flex-wrap:wrap;gap:10px;margin:24px 0;display:flex}.agent-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:24px;display:grid}.agent-metrics h2{margin:8px 0;font-size:38px}.agent-project{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;padding:18px 0;display:flex}.agent-fields{border:0;min-width:0;margin:0;padding:0}.agent-portal .panel{min-width:0;margin-bottom:24px}@media (max-width:800px){.agent-header{flex-wrap:wrap}.agent-body{padding:24px 16px}.agent-metrics{grid-template-columns:1fr;gap:8px}.agent-project{flex-direction:column;align-items:flex-start}.agent-tabs button{flex:40%}.agent-portal .page-heading{flex-wrap:wrap}}.expiry-counts{flex-wrap:wrap;gap:12px;margin:18px 0;display:flex}.expiry-counts b{background:#262b22;border-radius:8px;padding:9px 12px}.expiry-centre .toolbar input{flex:1;min-width:0}.expiry-bell{white-space:nowrap}.expiry-bell b{color:#c9f542}.expiry-centre{min-width:0}.expiry-centre .pagination{flex-wrap:wrap;gap:12px}@media (max-width:800px){.expiry-bell span{display:none}.expiry-centre .toolbar{flex-wrap:wrap}.expiry-centre .toolbar input,.expiry-centre .toolbar select{flex:auto;width:100%}.top-right{gap:6px}}.whatsapp-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.whatsapp-actions label{flex-basis:100%;align-items:center;gap:8px;display:flex}.whatsapp-actions input[type=checkbox]{flex-shrink:0;width:auto}dialog.tracker-drawer{border-radius:0;width:min(620px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;margin:0 0 0 auto;overflow-y:auto}.tracker-drawer .form-grid{grid-template-columns:1fr}.truck-combobox{position:relative}.truck-options{z-index:20;background:var(--panel,#1b1f20);border:1px solid #55605b;border-radius:8px;width:100%;max-height:240px;position:absolute;top:100%;overflow-y:auto;box-shadow:0 8px 24px #0008}.truck-options [role=option]{cursor:pointer;padding:12px}.truck-options [aria-selected=true],.truck-options [role=option]:hover{background:#38452a}.settings-tabs{gap:8px;padding:4px 0 14px;display:flex;overflow-x:auto}.settings-tabs button{color:inherit;background:0 0;border:1px solid #45504b;flex-shrink:0}.settings-tabs [aria-selected=true]{background:var(--lime);color:#101410}[role=tabpanel][hidden]{display:none!important}@media (max-width:640px){dialog.tracker-drawer{width:100vw}}
