@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";:root{font-family:Manrope,sans-serif;color:#edf3f7;background:#07131b;--jl-blue: #00446f;--jl-blue-bright: #45a9dc;--jl-red: #ff2025;--jl-black: #05080b;--jl-slate: #0b1c27;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;background:#07131b}.topbar{height:72px;padding:0 4vw;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff12;background:#081923}.brand{display:flex;gap:12px;align-items:center;font-size:12px;letter-spacing:.16em;font-weight:700}.brand b{color:#789095;font-weight:500}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--jl-blue-bright);color:var(--jl-blue-bright);font-family:DM Mono}.live{display:flex;gap:16px;align-items:center;font:11px DM Mono;color:#8aa1a4;text-transform:uppercase;letter-spacing:.08em}.live i,.tag i,.status i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#55d6a1;box-shadow:0 0 0 4px #55d6a122}.live button{border:0;background:none;color:#8aa1a4}.dashboard{max-width:1500px;margin:auto;padding:54px 4vw 70px}.welcome{display:flex;justify-content:space-between;align-items:end;margin-bottom:36px}.eyebrow{display:block;color:#638286;font:10px DM Mono;letter-spacing:.16em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:10px;font-size:clamp(2rem,4vw,3.8rem);line-height:1.05;letter-spacing:-.06em}h1 em{color:var(--jl-blue-bright);font-style:normal}.configuration-welcome h1,.operation-welcome h1{font-size:clamp(1.4rem,2.8vw,2.66rem)}h2{margin:5px 0 0;font-size:1.05rem;letter-spacing:-.02em}.muted,.date{color:#779095;font-size:13px}.date{font:11px DM Mono;text-transform:uppercase}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.metric{position:relative;min-height:142px;padding:23px;border:1px solid #ffffff12;background:#0d2024;overflow:hidden}.metric:after{content:"";position:absolute;width:90px;height:90px;right:-30px;bottom:-45px;border-radius:50%;border:1px solid currentColor;opacity:.25}.metric.orange{color:var(--jl-blue-bright)}.metric.teal{color:#55d6a1}.metric.blue{color:#69b9e8}.metric.violet{color:#bf9cf4}.metric strong{display:block;margin:12px 0 2px;color:#eef8f7;font-size:2.2rem;letter-spacing:-.06em}.metric small{color:#779095;font-size:11px}.workspace{display:grid;grid-template-columns:1fr;gap:18px}.map-panel,.side-panel,.table-card,.detail-card{border:1px solid #ffffff12;background:var(--jl-slate)}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:22px 24px}.tag,.count{color:#55d6a1;font:10px DM Mono;text-transform:uppercase}.tag i{margin-right:8px}.map{position:relative;height:560px;overflow:hidden;background:#0c2636}.leaflet-map{width:100%;height:100%}.unit-map-marker{display:grid;place-items:center;width:16px!important;height:16px!important;margin:0!important;border:2px solid #fff;border-radius:50% 50% 50% 0;background:transparent;color:#07131b;box-shadow:0 4px 12px #0008;font:700 7px DM Mono;transform:rotate(-45deg)}.unit-map-marker span{display:grid;width:100%;height:100%;place-items:center;border-radius:inherit;background:var(--unit-marker-color, var(--jl-blue-bright));transform:rotate(45deg)}.map-empty{position:absolute;inset:0;display:grid;place-items:center;padding:24px;color:#789095;font-size:12px;pointer-events:none;text-align:center}.map-sector-summary{display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px;border:1px solid #ffffff12;border-top:0;color:#9bb0b3;font:10px DM Mono}.map-sector-summary span{padding:4px 6px;border:1px solid #ffffff12}.map-sector-summary .gps-live{color:#55d6a1}.map-unit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;padding:10px 12px;border:1px solid #ffffff12;border-top:0}.map-unit-grid article{display:grid;gap:3px;min-width:0;padding:9px 10px;border:1px solid #ffffff12;font:10px DM Mono}.map-unit-grid strong{color:#eaf3f3}.map-unit-grid small{color:#9bb0b3}.map-unit-grid .map-unit-live small:last-child{color:#55d6a1}.map-unit-grid .map-unit-pending small:last-child{color:#ffb56b}.map-grid{position:absolute;inset:0;opacity:.5;background:linear-gradient(35deg,transparent 47%,#476d6b44 48%,transparent 49%) 0 0/100px 80px,linear-gradient(130deg,transparent 47%,#476d6b44 48%,transparent 49%) 0 0/140px 90px,linear-gradient(#ffffff08 1px,transparent 1px) 0 0/45px 45px}.route{position:absolute;height:2px;background:var(--jl-blue-bright);transform-origin:left;box-shadow:0 0 12px #45a9dc88}.route-a{width:310px;left:22%;top:58%;transform:rotate(-24deg)}.route-b{width:240px;left:52%;top:38%;transform:rotate(58deg);background:#55d6a1}.map-pin{position:absolute;display:grid;place-items:center;width:28px;height:28px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--jl-blue-bright);color:#102126;font:11px DM Mono;box-shadow:0 5px 15px #0008}.map-pin:first-letter{transform:rotate(45deg)}.pin-a{left:21%;top:54%}.pin-b{left:70%;top:31%;background:#55d6a1}.pin-c{left:51%;top:72%;background:#69b9e8}.map-label{position:absolute;color:#789095;font:10px DM Mono}.label-a{left:13%;top:70%}.label-b{left:75%;top:25%}.map-compass{position:absolute;right:22px;bottom:18px;color:#8aa1a4;font:10px DM Mono;text-align:center}.map-compass span{font-size:20px;color:var(--jl-blue-bright)}.service-list{border-top:1px solid #ffffff12}.service-row{width:100%;display:grid;grid-template-columns:12px 1fr auto;gap:11px;align-items:center;padding:18px 22px;border:0;border-bottom:1px solid #ffffff0c;color:#eaf3f3;background:none;text-align:left}.service-row:hover,.service-row.selected{background:#142d31}.service-route-button{width:calc(100% - 44px);margin:-4px 22px 14px;padding:8px 10px;border:1px solid #45a9dc88;border-radius:4px;background:#45a9dc14;color:#8fc9e8;font-size:11px}.message-catalog{display:grid;gap:8px;max-height:360px;overflow-y:auto}.message-catalog article{display:grid;gap:4px;padding:10px;border:1px solid #ffffff12;background:#07151d66}.message-catalog strong{color:#8fc9e8;font:11px DM Mono}.message-catalog small{color:#789095;line-height:1.35}.service-dot{width:8px;height:8px;border-radius:50%;background:var(--jl-red)}.service-row strong,.service-row small{display:block}.service-row strong{font-size:12px}.service-row small{margin-top:5px;color:#789095;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.service-row b{color:var(--jl-blue-bright);font:9px DM Mono}.service-history{margin-top:22px}.service-history-list{border-top:1px solid #ffffff12}.service-history-filters{display:flex;gap:10px;padding:14px 22px}.service-history-filters input,.service-history-filters select{background:#0b1c27;border:1px solid #ffffff1d;color:#eaf3f3;min-height:34px;padding:0 10px}.service-history-filters input{flex:1}.service-history-row{align-items:center;border-bottom:1px solid #ffffff0c;display:grid;gap:16px;grid-template-columns:minmax(220px,1fr) auto auto auto;padding:14px 22px}.service-history-row strong,.service-history-row small{display:block}.service-history-row strong{font-size:12px}.service-history-row small,.service-history-row time{color:#789095;font-size:10px}.service-history-row small{margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.service-history-row>span{color:#55d6a1;font:10px DM Mono}.service-history-row b{color:var(--jl-blue-bright);font:9px DM Mono}.empty{padding:60px 20px;color:#789095;text-align:center;font-size:12px}.lower{display:grid;grid-template-columns:1.6fr 1fr;gap:18px;margin-top:18px}.config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.config-card .panel-head{padding-bottom:14px}.config-list{border-top:1px solid #ffffff12}.config-list p{margin:0;padding:13px 20px;border-bottom:1px solid #ffffff0c;font-size:12px}.config-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;border-bottom:1px solid #ffffff0c}.config-row-copy{flex:1;min-width:0;padding:13px 20px}.config-row-copy strong,.config-row-copy small{display:block}.config-row-copy strong{color:#eaf3f3;font-size:12px}.config-row-copy small{margin-top:4px;color:#789095;font:10px DM Mono;overflow-wrap:anywhere}.config-row-side{display:flex;align-items:center;gap:10px;padding:13px 20px 13px 0;flex-shrink:0}.config-row-side .status-badge{padding:4px 8px;border:1px solid #55d6a144;border-radius:99px;color:#75e0b3;background:#55d6a10d;font:9px DM Mono;letter-spacing:.04em}.config-row-side .status-badge.is-off{border-color:#ff9d8d44;color:#ff9d8d;background:#ff9d8d0d}.config-row-side .status-badge.is-pending,.platform-actions b.is-pending{border-color:#e8c46a44;color:#e8c46a;background:#e8c46a0d}.config-row-side button{padding:5px 10px;border:1px solid #ffffff25;border-radius:2px;color:#9bb0b3;background:transparent;font:10px DM Mono;text-transform:uppercase;letter-spacing:.06em;transition:border-color .15s ease,color .15s ease,background .15s ease}.config-row-side button:hover:not(:disabled){border-color:#45a9dc;color:#8fc9e8;background:#45a9dc0d}.config-row-side button:disabled{cursor:wait;color:#5f7d83}.config-row-side button.danger-button{border-color:#ff9d8d44;color:#ff9d8d}.config-row-side button.danger-button:hover:not(:disabled){border-color:#ff9d8d;color:#ffb8ab;background:#ff9d8d0d}.inline-form{display:flex;gap:8px;margin:14px 20px}.inline-form input{margin:0;padding:10px;border:1px solid #ffffff25}.inline-form button{width:auto;margin:0;padding:10px 14px;white-space:nowrap}.fleet-settings-form{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin:14px 20px}.fleet-settings-form label{color:#9bb0b3;display:grid;font:10px DM Mono;gap:6px;letter-spacing:.05em;text-transform:uppercase}.fleet-settings-form input{margin:0;min-width:0;padding:10px}.fleet-settings-heading{border-bottom:1px solid #ffffff14;color:#55d6a1;font:10px DM Mono;grid-column:1 / -1;letter-spacing:.08em;padding:8px 0 4px;text-transform:uppercase}.fleet-settings-form button{justify-self:start;padding:10px 14px}@media(max-width:680px){.fleet-settings-form{grid-template-columns:1fr}}.service-area-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 20px}.service-area-form label{display:grid;gap:6px;color:#9bb0b3;font:10px DM Mono;text-transform:uppercase;letter-spacing:.05em}.service-area-form input{width:100%;margin:0;padding:10px;border:1px solid #ffffff25}.service-area-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:8px}.service-area-actions button{width:auto;margin:0;padding:10px 14px}.unit-create-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.unit-create-form input,.unit-create-form button,.unit-create-form .lookup-message{min-width:0}.unit-create-form button,.unit-create-form .lookup-message{grid-column:1 / -1}.owner-create-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.owner-create-form input,.owner-create-form button,.owner-create-form select{min-width:0}.owner-create-form button{grid-column:1 / -1}.provider-create-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.provider-create-form input,.provider-create-form select,.provider-create-form button{min-width:0}.provider-create-form button{grid-column:1 / -1}.checkbox-field{display:flex;align-items:center;gap:8px;color:#9bb0b3;font:10px DM Mono}.checkbox-field input{width:auto;margin:0}.owner-driver-fields{display:grid;grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px;border:1px solid #ffffff12}.owner-driver-fields .eyebrow{grid-column:1 / -1}.text-button{border:0;color:var(--jl-blue-bright);background:none;font:10px DM Mono}.document-control{display:flex;align-items:center;gap:12px}.document-control .text-button{width:auto;margin:0;padding:0;cursor:pointer}.danger-text-button{color:#ff9d8d}.danger-text-button:hover{color:#ff6f62}.lookup-message{display:block;flex-basis:100%;color:#e8c46a;font:10px DM Mono}.assignment-panel{margin:18px 20px 20px;padding-top:16px;border-top:1px solid #ffffff12}.assignment-form{margin:10px 0}.assignment-form select{min-width:0;flex:1}.assignment-form button{flex:0 0 auto}.assignment-list{display:grid;gap:6px;color:#9bb0b3;font:10px DM Mono}.assignment-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;border:1px solid #ffffff12}.assignment-row button{width:auto;margin:0;padding:4px 8px;border:1px solid #ff9d8d44;color:#ff9d8d;background:transparent;font:10px DM Mono}.assignment-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:6px}.unit-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #ffffff12}.unit{background:transparent;color:inherit;display:flex;align-items:center;gap:12px;padding:17px 22px;border-right:1px solid #ffffff0c;border-bottom:1px solid #ffffff0c;text-align:left;width:100%}.unit.selected{background:#12313f}.unit-icon{color:#69b9e8;font-size:13px}.unit strong,.unit small{display:block}.unit strong{font-size:12px}.unit small{color:#789095;font:10px DM Mono;margin-top:4px}.unit .unit-driver{margin-top:8px;line-height:1.5}.status{margin-left:auto;color:#55d6a1;font:9px DM Mono}.status i{width:5px;height:5px;margin-right:5px;box-shadow:none}.status.off{color:#789095}.status.off i{background:#789095}.detail-card{min-height:180px;padding:24px}.detail-card h2{margin:12px 0 18px;font-size:1.3rem}.detail-card p{margin:7px 0;color:#91a5a7;font-size:12px}.detail-card.quiet{opacity:.8}.primary{margin-top:15px;padding:11px 15px;border:0;background:var(--jl-blue-bright);color:#07131b;font-weight:800;font-size:11px}.dispatch-candidates{display:grid;gap:.5rem;margin-top:.9rem}.dispatch-candidate-error{color:#ef7f8f!important;margin-top:.8rem!important}.dispatch-notice{color:#55d6a1!important;margin-top:.8rem!important}.dispatch-candidate{align-items:center;background:#f4f7fb;border:1px solid transparent;color:#102631;cursor:pointer;border-radius:.65rem;display:grid;gap:.15rem;grid-template-columns:1fr auto;padding:.7rem .8rem;text-align:left;width:100%}.dispatch-candidate:hover:not(:disabled){border-color:#45a9dc}.dispatch-candidate:disabled{cursor:wait;opacity:.7}.dispatch-candidate strong{color:#102631}.dispatch-candidate span{color:#526c75;font-size:.8rem;grid-column:1}.dispatch-candidate b{color:#006b59;grid-column:2;grid-row:1 / span 2}.no-units-notice textarea{display:block;margin-top:.6rem;min-height:4.5rem;resize:vertical;width:100%}.no-units-notice .primary{margin-top:.6rem}.operational-messages{border-top:1px solid #dce5e8;margin-top:1rem;padding-top:1rem}.request-messages,.fleet-messages{margin:1rem}.fleet-message-head{align-items:baseline;display:flex;gap:.55rem;justify-content:space-between}.fleet-message-head strong{font-size:.78rem}.fleet-messages .message-thread{background:#f4f7f8;border:1px solid #dce5e8;border-radius:.6rem;gap:.3rem;margin:.55rem 0;max-height:9rem;padding:.45rem}.fleet-messages .message-row{max-width:82%;padding:.35rem .5rem;width:fit-content}.fleet-messages .message-row.operator{justify-self:end}.fleet-messages .message-row.driver{justify-self:start}.fleet-messages .message-row b{font-size:.6rem;margin-bottom:.1rem}.fleet-messages .message-composer{align-items:center;display:flex;gap:.45rem}.fleet-messages .message-composer textarea{margin:0;min-height:2.3rem;padding:.45rem;resize:none}.fleet-messages .message-composer .primary{margin:0;white-space:nowrap}.message-thread{display:grid;gap:.45rem;margin-top:.6rem;max-height:13rem;overflow-y:auto}.message-row{background:#edf4f6;border-radius:.5rem;color:#213841!important;padding:.55rem .65rem}.message-row.operator{background:#dbeeff}.message-row b{display:block;font-size:.68rem;margin-bottom:.2rem}.message-composer textarea{display:block;margin-top:.7rem;min-height:3.8rem;resize:vertical;width:100%}.message-composer .primary{margin-top:.5rem}.login-shell{display:grid;place-items:center;min-height:100vh;padding:20px;background:radial-gradient(circle at 78% 12%,#0a4a7033,transparent 34rem),radial-gradient(circle at 8% 88%,#123c4d40,transparent 30rem),linear-gradient(160deg,#050d13,#07131b 55%,#0a1a24)}.login-shell:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(35deg,transparent 47%,#1c5a7022 48%,transparent 49%) 0 0/220px 180px,linear-gradient(130deg,transparent 47%,#1c5a7022 48%,transparent 49%) 0 0/300px 200px,linear-gradient(#ffffff05 1px,transparent 1px) 0 0/64px 64px,linear-gradient(90deg,#ffffff05 1px,transparent 1px) 0 0/64px 64px}.login-shell:after{content:"";position:fixed;left:12%;bottom:14%;width:240px;height:2px;pointer-events:none;background:linear-gradient(90deg,transparent,#45a9dc66,transparent);transform:rotate(-18deg);box-shadow:0 0 24px #45a9dc33}.login-split{place-items:stretch center;padding:0;grid-template-columns:1.15fr 1fr;grid-template-rows:minmax(0,1fr) auto}.login-hero{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(36px,5vw,72px);overflow:hidden;background:radial-gradient(circle at 82% 6%,#0d557855,transparent 26rem),linear-gradient(200deg,#0b2230,#071721 48%,#050f16)}.login-hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(35deg,transparent 47%,#45a9dc1f 48%,transparent 49%) 0 0/180px 150px,linear-gradient(130deg,transparent 47%,#45a9dc1f 48%,transparent 49%) 0 0/260px 170px,linear-gradient(#ffffff06 1px,transparent 1px) 0 0/52px 52px,linear-gradient(90deg,#ffffff06 1px,transparent 1px) 0 0/52px 52px}.login-hero:after{content:"";position:absolute;right:-60px;top:34%;width:340px;height:2px;pointer-events:none;background:linear-gradient(90deg,transparent,#55d6a188,transparent);transform:rotate(28deg);box-shadow:0 0 28px #55d6a144}.login-hero>*{position:relative;z-index:1}.login-brand{display:flex;gap:12px;align-items:center;font-size:12px;letter-spacing:.16em;font-weight:700}.login-brand b{color:#789095;font-weight:500}.login-hero-copy{margin:auto 0;max-width:520px}.login-hero-copy h1{margin:18px 0 14px;font-size:clamp(1.7rem,2.9vw,2.8rem);letter-spacing:-.05em}.login-hero-copy p{color:#8aa1a4;font-size:14px;line-height:1.7;max-width:440px}.login-features{margin:0 0 clamp(28px,7vh,72px);padding:0;list-style:none;display:grid;gap:12px}.login-features li{display:flex;align-items:center;gap:12px;color:#b4d9e7;font-size:12px;letter-spacing:.02em}.login-features i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#55d6a1;box-shadow:0 0 0 4px #55d6a122}.login-brand-group{display:grid;gap:10px;justify-items:start}.login-brand-company{color:#8aa1a4;font:500 10px DM Mono;text-transform:uppercase;letter-spacing:.32em}.login-brand-group .login-brand{position:relative;padding-left:14px}.login-brand-group .login-brand:before{content:"";position:absolute;left:0;top:50%;width:3px;height:26px;transform:translateY(-50%);background:linear-gradient(180deg,#45a9dc,#55d6a1);border-radius:2px}.login-card{position:relative;z-index:1;display:grid;place-content:center;width:min(100%,520px);margin:auto;padding:clamp(30px,5vw,56px);border:1px solid #ffffff18;border-left:1px solid #45a9dc33;background:#0b1c27e6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:-30px 0 80px #0006}.login-card h2{margin:26px 0 6px;font-size:1.7rem;letter-spacing:-.02em}.login-card .muted{font-size:12px;line-height:1.6}.login-card select{width:100%;margin-top:8px;padding:13px 0;border:0;border-bottom:1px solid #ffffff25;outline:none;background:transparent;color:#eef8f7;font:inherit}.login-card select:focus{border-color:var(--jl-blue-bright)}.login-card select option{background:#0b1c27;color:#eef8f7}.login-card .text-button{display:inline-block;margin-top:18px;font-size:11px}form{margin-top:36px}label{display:block;margin-top:16px;color:#789095;font:10px DM Mono;text-transform:uppercase;letter-spacing:.1em}input{width:100%;margin-top:8px;padding:14px 0;border:0;border-bottom:1px solid #ffffff25;outline:none;background:transparent;color:#eef8f7}input:focus{border-color:var(--jl-blue-bright)}form button{width:100%;margin-top:30px;padding:15px;border:0;background:var(--jl-blue-bright);color:#07131b;font-weight:800;text-align:left}form button span{float:right;font-size:18px}.error,.error-banner{color:#ff9d8d;font-size:12px}.notice-banner{margin:0 20px 14px;padding:12px 16px;border:1px solid #55d6a144;color:#75e0b3;background:#55d6a10d;font-size:12px;line-height:1.55}.reset-success{margin-top:30px;color:#55d6a1;font-size:14px;line-height:1.6}.app-footer{display:flex;flex-wrap:nowrap;justify-content:center;align-items:center;gap:8px;padding:16px 20px;border-top:1px solid #ffffff10;color:#638286;font-size:10px;letter-spacing:.03em;text-align:center}.app-footer>*{white-space:nowrap}.app-footer b{color:#8aa1a4;font-weight:600}.app-footer a{color:#8fc9e8;text-decoration:none}.app-footer a:hover{color:#45a9dc}.footer-sep{color:#fff2}.login-shell .app-footer{position:relative;z-index:1;grid-column:1 / -1;width:100%;align-self:end}.error-banner{margin-bottom:18px;padding:12px 16px;border:1px solid #ff9d8d44;background:#ff9d8d0c}.platform-dashboard{background:radial-gradient(circle at 92% 0%,#15415a55,transparent 28rem),linear-gradient(135deg,#07131b,#091923 52%,#0d1d27)}.platform-dashboard .topbar{background:#081720cc;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.platform-dashboard .dashboard{max-width:1380px}.platform-hero{position:relative;min-height:176px;align-items:center;margin:-10px 0 22px;padding:36px 40px;border:1px solid #ffffff14;background:linear-gradient(110deg,#102b38cc,#0d2029aa 62%,#14394a88);box-shadow:0 22px 55px #0002;overflow:hidden}.platform-hero:after{content:"N";position:absolute;right:5%;top:-40px;color:#45a9dc16;font:800 260px Manrope;line-height:1}.platform-hero>div{position:relative;z-index:1}.platform-hero h1{margin:12px 0 9px;font-size:clamp(1.55rem,3.5vw,3.15rem)}.platform-hero .muted{max-width:560px;margin-bottom:0}.platform-dashboard .metrics{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:24px}.platform-dashboard .metric{min-height:132px;border-color:#ffffff16;border-radius:3px;background:linear-gradient(145deg,#102631,#0b1e28)}.platform-dashboard .metric strong{font-size:2.5rem}.platform-dashboard .metric-icon{float:right;color:currentColor;opacity:.7;font-size:20px}.platform-section{margin-bottom:18px;border-color:#ffffff16;border-radius:3px;box-shadow:0 12px 35px #00014}.platform-section .panel-head{padding:24px 26px 20px}.platform-section .panel-head h2{font-size:1.2rem}.platform-form{display:grid;grid-template-columns:repeat(5,minmax(100px,1fr));gap:10px;margin:0;padding:18px 26px 24px;border-top:1px solid #ffffff0e}.platform-form input,.platform-form select,.platform-filters input,.platform-filters select{min-width:0;margin:0;padding:12px 13px;border:1px solid #ffffff1c;border-radius:2px;background:#07151d99;color:#e9f5f4;font-size:12px}.platform-form button,.platform-filters button,.modal-actions button{width:auto;margin:0;padding:11px 16px;border:1px solid #45a9dc;border-radius:2px;background:#45a9dc;color:#07131b;font-size:11px;font-weight:800;letter-spacing:.02em;text-align:center;transition:background .15s ease,border-color .15s ease,color .15s ease}.platform-form button:hover:not(:disabled),.platform-filters button:hover:not(:disabled),.modal-actions button[type=submit]:hover:not(:disabled){background:#5cbbe8;border-color:#5cbbe8}.platform-form button:disabled,.platform-filters button:disabled,.modal-actions button:disabled{cursor:wait;opacity:.65}.platform-form button[type=button],.modal-actions button[type=button]{border-color:#ffffff25;background:transparent;color:#9bb0b3}.modal-field-wide{grid-column:span 2}.modal-info{display:grid;gap:10px;margin:18px 0 4px;padding:14px 16px;border:1px solid #ffffff12;background:#07151d66}.modal-info-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.modal-info-label{color:#638286;font:9px DM Mono;text-transform:uppercase;letter-spacing:.12em}.modal-info-row b{color:#d9eeef;font-size:12px;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.platform-form button[type=button]:hover,.modal-actions button[type=button]:hover{border-color:#fff4;color:#d9eeef}.platform-filters{display:flex;gap:8px;align-items:center;margin:0}.platform-filters input{width:190px}.platform-filters select{width:145px}.platform-filters button{padding:11px 16px}.validation-filters{max-width:620px}.validation-filters input{min-width:260px}.validation-tabs{display:flex;gap:6px;margin:18px 0 8px;overflow-x:auto;border-bottom:1px solid #ffffff12}.validation-tabs button{display:inline-flex;align-items:center;gap:8px;width:auto;margin:0;padding:10px 12px;border:0;border-bottom:2px solid transparent;border-radius:0;color:#789095;background:transparent;white-space:nowrap;font:10px DM Mono}.validation-tabs button:hover,.validation-tabs button.is-active{border-bottom-color:var(--jl-blue-bright);color:#eef8f7;background:#45a9dc0d}.validation-tabs button b{min-width:18px;padding:2px 5px;border-radius:10px;color:#07131b;background:#8fc9e8;font-size:9px}.validation-group{margin-top:16px}.validation-group h3{margin:0 0 8px;color:#eef8f7;font-size:.95rem}.validation-row{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(150px,.8fr) minmax(170px,1fr) auto;align-items:center;gap:16px}.validation-primary,.validation-company,.validation-documents{min-width:0}.validation-primary strong,.validation-primary small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.validation-primary small,.validation-company,.validation-documents{color:#789095;font:10px DM Mono}.validation-documents{color:#9bb0b3}.validation-actions{justify-content:flex-end;white-space:nowrap}.platform-actions{display:flex;align-items:center;gap:10px}.platform-actions b{padding:5px 8px;border:1px solid #55d6a144;border-radius:99px;color:#75e0b3;background:#55d6a10d;font:9px DM Mono;letter-spacing:.04em}.platform-actions b.is-off{border-color:#ff9d8d44;color:#ff9d8d;background:#ff9d8d0d}.platform-actions button{padding:6px 12px;border:1px solid #ffffff25;border-radius:2px;color:#9bb0b3;background:transparent;font:10px DM Mono;text-transform:uppercase;letter-spacing:.06em;transition:border-color .15s ease,color .15s ease,background .15s ease}.platform-actions button:hover:not(:disabled){border-color:#45a9dc;color:#8fc9e8;background:#45a9dc0d}.platform-actions button:disabled{cursor:wait;color:#5f7d83}.session-user{display:flex;align-items:center;gap:10px;padding:6px 12px 6px 6px;border:1px solid #ffffff14;border-radius:99px;background:#0d202988}.session-avatar{display:grid;place-items:center;width:28px;height:28px;border:1px solid #45a9dc55;border-radius:50%;background:linear-gradient(145deg,#10344a,#0a2230);color:#7ec8ef;font:700 10px DM Mono}.session-identity{display:grid;line-height:1.25}.session-identity b{color:#d9eeef;font-size:11px;font-weight:600}.session-identity small{color:#638286;font-size:9px;letter-spacing:.02em}.company-action-error{margin:0 26px 14px}.platform-modal-backdrop{position:fixed;z-index:20;inset:0;display:grid;place-items:center;padding:24px;background:#02080dcc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.platform-modal{position:relative;width:min(100%,620px);padding:34px;border:1px solid #45a9dc44;background:linear-gradient(145deg,#132c38,#091a23);box-shadow:0 30px 100px #0009}.pricing-modal{width:min(100%,760px);max-height:calc(100dvh - 48px);border:2px solid #45a9dc;background:var(--jl-black);color:#edf3f7;box-shadow:inset 0 4px 0 var(--jl-red),0 30px 100px #000c;overflow-y:auto}.pricing-modal .eyebrow{display:block;padding-bottom:14px;border-bottom:1px solid #45a9dc55;color:var(--jl-blue-bright)}.pricing-modal .modal-close{color:var(--jl-blue-bright)}.pricing-modal label{color:#bdd8e4}.pricing-modal .platform-form input,.pricing-modal .platform-form select{border-color:#45a9dc77;background:#05080bcc;color:#edf3f7}.pricing-rules,.pricing-simulation{grid-column:span 2;margin:8px 0 0;padding:16px;border:1px solid #45a9dc66;background:#05080b99}.pricing-rules legend{padding:0 8px;color:var(--jl-blue-bright);font:10px DM Mono;letter-spacing:.1em}.pricing-rules label{display:grid;grid-template-columns:1fr 130px;align-items:end;gap:14px;margin-top:10px}.pricing-rules input{margin-top:0}.pricing-simulation{display:grid;grid-template-columns:1fr 1fr auto auto;align-items:end;gap:12px}.pricing-simulation b{grid-column:span 4;color:var(--jl-red);font:10px DM Mono;letter-spacing:.1em}.pricing-simulation button{width:auto;margin:0}.platform-modal h2{margin:12px 0 8px;font-size:clamp(1.25rem,3vw,1.7rem)}.platform-modal .muted{margin-bottom:0;line-height:1.6}.platform-modal .modal-error{margin:18px 0 0}.modal-close{position:absolute;top:18px;right:20px;width:auto;margin:0;padding:0;border:0;background:none;color:#a5c0c4;font-size:27px;line-height:1}.modal-form{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px;padding:22px 0 0}.modal-form label{margin-top:0}.modal-form label input{display:block;margin-top:8px}.modal-actions{display:flex;grid-column:span 2;justify-content:flex-end;gap:10px;margin-top:8px}.platform-companies .panel-head{align-items:flex-end}.platform-companies .service-row{grid-template-columns:12px 1fr auto;padding:20px 26px}.platform-companies .service-row strong{font-size:13px}.platform-companies .service-row small{margin-top:7px}.platform-create-inline{border-top:1px solid #ffffff12;background:#07151d33}.platform-create-heading{padding:22px 26px 0}.platform-create-heading h3{margin:7px 0 0;color:#d9eeef;font-size:1rem;font-weight:600}.platform-create-inline .platform-form{border-top:0}.platform-audit .service-row{grid-template-columns:1fr;padding:14px 26px}.platform-audit .service-row strong{color:#b4d9e7;font:11px DM Mono;text-transform:uppercase}.platform-audit .service-row small{margin-top:6px}.platform-admins .panel-head{align-items:center}.admin-list{border-top:1px solid #ffffff12}.admin-row{display:grid;grid-template-columns:44px 1fr auto;gap:14px;align-items:center;padding:16px 26px;border-bottom:1px solid #ffffff0c}.admin-row:hover{background:#142d3122}.admin-avatar{display:grid;place-items:center;width:44px;height:44px;border:1px solid #45a9dc55;border-radius:50%;background:linear-gradient(145deg,#10344a,#0a2230);color:#7ec8ef;font:700 13px DM Mono;letter-spacing:.04em}.admin-avatar.is-off{border-color:#fff2;color:#789095;background:linear-gradient(145deg,#12222b,#0b171e)}.admin-identity strong{display:flex;align-items:center;gap:8px;font-size:13px;letter-spacing:-.01em}.admin-self-tag{padding:2px 7px;border:1px solid #45a9dc44;border-radius:99px;color:#8fc9e8;background:#45a9dc0f;font:9px DM Mono;font-style:normal;text-transform:uppercase;letter-spacing:.08em}.admin-identity small{display:block;margin-top:4px;color:#789095;font-size:11px}.admin-invite{border-top:1px solid #ffffff12;background:linear-gradient(150deg,#0a1e2acc,#07151dcc)}.admin-invite-head{padding:22px 26px 0}.admin-invite-head h3{margin:7px 0 6px;color:#d9eeef;font-size:1rem;font-weight:600}.admin-invite-head .muted{max-width:520px;margin-bottom:0;font-size:12px;line-height:1.55}.admin-invite .error-banner{margin:14px 26px 0}.invite-form{grid-template-columns:1fr 1.4fr auto;align-items:end;border-top:0}.invite-form label{margin-top:0}.invite-form label input{display:block;margin-top:8px}.invite-form button{padding:11px 16px}@media(max-width:900px){.platform-form{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-form button{grid-column:span 2}.invite-form{grid-template-columns:1fr}.invite-form button{grid-column:auto}.admin-row{grid-template-columns:38px 1fr}.admin-avatar{width:38px;height:38px;font-size:11px}.admin-row .platform-actions{grid-column:2;justify-content:flex-start}.platform-companies .panel-head{display:block}.platform-filters{margin-top:18px;flex-wrap:wrap}.platform-filters input{flex:1 1 180px}.validation-row{grid-template-columns:1fr auto;gap:8px}.validation-company,.validation-documents{grid-column:1 / -1}.validation-actions{grid-column:2;grid-row:1}}@media(max-width:850px){.app-footer{flex-wrap:wrap;row-gap:4px;margin-top:18px}.login-split{grid-template-columns:1fr;grid-template-rows:auto auto auto;place-items:center;padding:20px}.login-hero{width:min(100%,520px);gap:22px;padding:28px 26px;border:1px solid #ffffff14}.login-hero-copy h1{margin:12px 0 8px;font-size:2rem}.login-hero-copy p{font-size:12px}.login-features{gap:8px}.login-brand-group .login-brand:before{height:22px}.login-card{box-shadow:0 30px 80px #0005}.metrics{grid-template-columns:repeat(2,1fr)}.workspace,.lower,.config-grid{grid-template-columns:1fr}.service-history-row{grid-template-columns:1fr auto}.service-history-row time,.service-history-row>span{grid-column:1}.service-history-filters{flex-direction:column}.welcome{display:block}.date{margin-top:20px}.unit-create-form,.owner-create-form,.provider-create-form,.service-area-form,.owner-driver-fields{grid-template-columns:1fr}.unit-create-form button,.unit-create-form .lookup-message{grid-column:auto}}@media(max-width:520px){.topbar{padding:0 20px}.live{font-size:0;gap:8px}.config-row{flex-direction:column;gap:0}.config-row-copy{width:100%}.config-row-side{width:100%;flex-wrap:wrap;padding:0 20px 13px}.session-identity small{display:none}.dashboard{padding:35px 20px}.metrics{gap:8px}.metric{min-height:120px;padding:16px}.metric strong{font-size:1.8rem}.map{height:290px}.unit-grid{grid-template-columns:1fr}.service-row{padding:16px}.platform-modal{padding:28px 20px 22px}.modal-form{grid-template-columns:1fr}.modal-actions,.pricing-rules,.pricing-simulation{grid-column:auto}.pricing-simulation{grid-template-columns:1fr}.pricing-simulation b{grid-column:auto}}
