:root{--primary-color:#20104d;--primary-light:#3d2066;--primary-lighter:#f3f0ff;--brand-blue:#3b82f6;--brand-green:#10b981;--brand-red:#ef4444;--brand-orange:#f97316;--text-primary:#1e293b;--text-secondary:#64748b;--border-color:#e2e8f0;--bg-white:hsla(0,0%,100%,.95);--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}body{font-family:Muli,sans-serif;margin:0;padding:0;background:linear-gradient(to bottom right,#f8fafc,#f1f5f9)}.tooltip{position:relative;display:inline-block}.tooltip .tooltip-content{visibility:hidden;opacity:0;position:absolute;top:125%;left:50%;transform:translateX(-50%);background-color:var(--text-primary);color:#fff;text-align:center;padding:8px 12px;border-radius:6px;font-size:.75rem;font-weight:500;z-index:9999!important;white-space:nowrap;box-shadow:var(--shadow-lg);transition:opacity .3s ease,visibility .3s ease}.tooltip .tooltip-content:after{content:"";position:absolute;left:50%;margin-left:-5px;border-width:5px;border-style:solid}.tooltip:hover .tooltip-content{visibility:visible;opacity:1}.dashboard-container{height:100vh;overflow:hidden;background:linear-gradient(to bottom right,#f8fafc,#f1f5f9);padding:0;display:flex;flex-direction:column}.header{border-bottom:1px solid var(--border-color);background:var(--bg-white);backdrop-filter:blur(12px);box-shadow:var(--shadow-md);padding:.5rem 1rem;margin-bottom:.5rem;transition:all .3s ease;flex-shrink:0}.header:hover{box-shadow:var(--shadow-lg)}.header-content{justify-content:space-between;flex-wrap:wrap;width:100%}.header-content,.header-logo-section{display:flex;align-items:center;gap:.5rem}.header-logo-container{height:36px;width:auto;padding:6px 16px;background:#251351eb;border-radius:999px;display:flex;align-items:center;margin-left:.5rem}.header-logo-img{height:100%;width:auto;-o-object-fit:contain;object-fit:contain;max-width:140px}.logo-icon-wrapper{height:2.5rem;width:2.5rem}.logo-icon-wrapper:hover{transform:scale(1.05)}.logo-icon{height:1rem;width:1rem;color:#fff}@media (max-width:640px){.tracking-icons{display:none!important}}.logo-icon-wrapper{display:flex;height:2rem;width:2rem;align-items:center;justify-content:center;border-radius:.75rem;background:linear-gradient(135deg,var(--primary-color),var(--primary-light));box-shadow:var(--shadow-md);transition:transform .2s ease}.logo-title{font-size:.975rem;font-weight:700;color:var(--primary-color);margin:0}.logo-subtitle{font-size:.55rem;color:var(--text-secondary);margin:2px 0 0}.header-customer-info{display:none;align-items:center;gap:.75rem;margin-left:2rem;padding-left:2rem;border-left:1px solid var(--border-color)}@media (min-width:768px){.header-customer-info{display:flex}}@media (max-width:1200px){.header-customer-info{margin-left:.75rem;padding-left:.75rem;gap:.5rem}.customer-icon-wrapper{width:1.75rem;height:1.75rem}.customer-name{font-size:.8rem}}.customer-icon-wrapper{width:2rem;height:2rem;background:linear-gradient(135deg,var(--brand-blue),#1d4ed8);border-radius:.5rem;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}.icon-wrapper.bg-orange{background-color:#ede9fe}.icon-wrapper.bg-purple{background-color:#dad0ff}.icon-wrapper.bg-purple .icon{color:#392153}.icon-wrapper.bg-orange{background-color:#ffedd5}.icon-wrapper.bg-orange .icon{color:#ea580c}.loading-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:hsla(0,0%,100%,.9);z-index:1000;display:flex;justify-content:center;align-items:center;flex-direction:column;font-size:1.25rem;color:#333}.customer-icon{height:1rem;width:1rem;color:#fff}.customer-name{font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0}.customer-role{font-size:.75rem;color:var(--text-secondary);margin:0}.header-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:flex-end;flex:1;min-width:0}.refresh-button{background:transparent;border:1px solid var(--border-color);cursor:pointer;padding:.5rem;border-radius:.5rem;color:var(--text-secondary);transition:all .2s ease}.refresh-button:hover{background-color:var(--primary-lighter);border-color:var(--primary-color);color:var(--primary-color)}.refresh-icon{height:1rem;width:1rem}.header-eta{display:none;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary);background:var(--bg-white);padding:.5rem .75rem;border-radius:.5rem;border:1px solid var(--border-color)}@media (min-width:640px){.header-eta{display:flex}}.eta-dot{height:.5rem;width:.5rem;border-radius:50%;background-color:var(--brand-green);animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.shipment-id{border-radius:.5rem;border:1px solid var(--border-color);background:var(--bg-white);padding:.5rem .75rem;box-shadow:var(--shadow-sm);transition:all .2s ease;font-weight:600;color:var(--primary-color)}@media (max-width:640px){.shipment-id{padding:.3rem .5rem;font-size:.8rem}}.shipment-id:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.tracking-icons{display:flex;gap:.5rem}.icon-wrapper{padding:.5rem;border-radius:.5rem;transition:transform .2s ease}.icon-wrapper:hover{transform:scale(1.1)}.icon-wrapper.bg-green{background-color:#d1fae5}.icon-wrapper.bg-blue{background-color:#dbeafe}.icon{height:1rem;width:1rem}.icon-wrapper.bg-green .icon{color:var(--brand-green)}.icon-wrapper.bg-blue .icon{color:var(--brand-blue)}.status-badge{padding:.5rem .75rem;border-radius:.5rem;font-size:.75rem;color:#fff;transition:all .2s ease;cursor:pointer}.status-badge.delivered{background-color:var(--brand-green)}.status-badge.delivered:hover{background-color:#059669;transform:translateY(-1px);box-shadow:var(--shadow-md)}@media (max-width:1200px){.header-content{flex-wrap:nowrap;gap:.5rem}.header-actions{gap:.25rem;flex-wrap:wrap;justify-content:flex-end}.header-eta,.shipment-id,.status-badge{font-size:.75rem;padding:.25rem .5rem;white-space:nowrap}.refresh-button{padding:.25rem}.help-button{padding:.35rem .5rem;font-size:.75rem}.logo-icon-wrapper{height:2rem;width:2rem}.header-logo-container{padding:4px 10px;height:30px}}.help-button{padding:.5rem .75rem;font-size:.75rem;border:none;color:#fff;background-color:purple;border-radius:.5rem;display:flex;align-items:center;gap:.5rem;transition:all .2s ease;cursor:pointer}@media (max-width:768px){.header{padding:.5rem}.header-content{display:flex;flex-direction:row;flex-wrap:nowrap;gap:.5rem;align-items:center;justify-content:space-between;width:100%}.header-logo-section{flex:0 0 auto}.header-actions{flex:1 1 auto;display:flex;flex-wrap:nowrap;gap:.4rem;justify-content:flex-end;align-items:center}.header-logo-container{height:32px;padding:5px 12px;margin-left:0}.header-logo-img{max-width:110px}.refresh-button-container{display:none!important}.tracking-icons{display:flex!important;gap:.25rem;align-items:center}.icon-wrapper{padding:.35rem}.icon{height:.9rem;width:.9rem}}@media (max-width:1161px){.desktop-only-help{display:none!important}.mobile-only-help{display:block!important}}.mobile-only-help{display:none}@keyframes fabPulse{0%{box-shadow:0 0 0 0 rgba(128,0,128,.7)}70%{box-shadow:0 0 0 10px rgba(128,0,128,0)}to{box-shadow:0 0 0 0 rgba(128,0,128,0)}}.help-fab-button{position:fixed;bottom:20px;right:20px;z-index:2000;width:auto;height:auto;border-radius:50%;padding:12px 14px;justify-content:center;box-shadow:0 4px 15px rgba(128,0,128,.4);font-size:.875rem;font-weight:600;gap:8px;background-color:purple;border:none;color:#fff;display:flex;align-items:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;animation:fabPulse 2s infinite}.help-fab-button:active{transform:scale(.95)}.help-fab-icon{width:20px;height:20px}@media (max-width:640px){.header{padding:.35rem .4rem}.header-content{gap:.3rem;width:100%;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.header-content::-webkit-scrollbar{display:none}.header-logo-section{flex:0 0 auto}.header-logo-container{height:28px;padding:3px 8px}.header-logo-img{max-width:90px}.header-actions{gap:.25rem;flex:1 1 auto;justify-content:flex-end;flex-wrap:nowrap}.refresh-button{padding:.25rem}.shipment-id,.status-badge{padding:.25rem .4rem;font-size:.65rem;white-space:nowrap}.icon-wrapper{padding:.2rem}}@media (max-width:480px){.header{padding:.35rem .4rem}.header-content{gap:.25rem;width:100%;flex-wrap:nowrap}.header-logo-section{flex:0 0 auto}.header-logo-container{height:26px;padding:3px 8px}.header-logo-img{max-width:75px}.header-actions{gap:.2rem;font-size:.65rem;flex:1 1 auto;justify-content:flex-end;flex-wrap:nowrap}.refresh-button{padding:.25rem}.refresh-icon{height:.7rem;width:.7rem}.shipment-id{font-size:.58rem}.shipment-id,.status-badge{padding:.2rem .3rem;white-space:nowrap}.status-badge{font-size:.52rem}.help-button{padding:.25rem .35rem;font-size:.55rem;gap:.15rem}.help-icon{height:.7rem;width:.7rem}.tracking-icons{gap:.15rem}.icon-wrapper{padding:.2rem}.icon{height:.65rem;width:.65rem}}@media (max-width:390px){.header{padding:.3rem .35rem}.header-content{gap:.2rem;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.header-content::-webkit-scrollbar{display:none}.header-logo-container{height:24px;padding:2px 6px}.header-logo-img{max-width:70px}.header-actions{gap:.2rem}.shipment-id{padding:.2rem .3rem;font-size:.55rem}.status-badge{padding:.2rem .3rem;font-size:.5rem}.icon-wrapper{padding:.18rem}.icon{height:.6rem;width:.6rem}}.help-icon{height:1rem;width:1rem}.main-content{padding:0 .5rem .5rem;flex:1;display:flex;flex-direction:column;overflow:hidden}.kpi-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem;margin-bottom:.5rem;flex-shrink:0;width:100%}@media (max-width:1023px){.dashboard-container{height:auto;overflow-y:auto}.main-content{flex-direction:column;flex:none}.main-content,.main-grid{display:flex;overflow:visible;height:auto}.main-grid{order:1;flex-direction:column;gap:.5rem;padding:0 .5rem}.kpi-strip{order:2}.center-section{order:-1;height:auto;overflow:visible;flex-shrink:0}.sidebar-left{order:0}.sidebar-left,.sidebar-right{overflow-y:visible;height:auto}.sidebar-right{order:1}.card{width:100%;margin-bottom:1rem}.map-card{min-height:300px}.map-host{height:250px}.kpi-strip{padding-bottom:.5rem;margin:1rem 0}}.kpi-card.tooltip-open{z-index:10000!important;position:relative!important}.kpi-card.tooltip-open,.kpi-card.tooltip-open *{filter:none!important;backdrop-filter:none!important}.tooltip-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:9999!important}@media (max-width:640px){.tooltip-content,.tooltip-content:after{display:none}}.kpi-card.tooltip-open .tooltip-content{opacity:1;visibility:visible}@media (max-width:1200px) and (min-width:769px){.kpi-strip{grid-template-columns:repeat(3,1fr);gap:.5rem}.kpi-card.distance{grid-column:auto}}@media (max-width:768px) and (min-width:641px){.kpi-strip{grid-template-columns:repeat(2,1fr);gap:.5rem}.kpi-card.distance{grid-column:auto}.kpi-value{font-size:1.2rem}.kpi-label{font-size:.72rem}}@media (max-width:640px){.kpi-card{position:static;backdrop-filter:none;min-height:100px;padding:2rem .5rem .5rem}.kpi-card:hover{transform:none;box-shadow:none}.kpi-strip{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:.5rem;margin-bottom:1rem}.kpi-card.distance{grid-column:auto}.kpi-value{font-size:1.15rem}.kpi-label{font-size:.7rem}.tooltip-content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:9999!important;opacity:0;visibility:hidden;transition:all .2s ease-in-out;background:hsla(0,0%,100%,.95);backdrop-filter:blur(8px);box-shadow:var(--shadow-lg)}.kpi-card.tooltip-open .tooltip-content{opacity:1;visibility:visible;z-index:10000}}.kpi-card{position:relative;text-align:center;padding:2.5rem .75rem .75rem;border-radius:.75rem;border:1px solid var(--border-color);cursor:pointer;transition:all .3s ease;background:var(--bg-white);backdrop-filter:blur(8px);display:flex;z-index:2;flex-direction:column;align-items:center;justify-content:center;min-height:110px}.kpi-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);border-color:var(--primary-color)}.kpi-card.early{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#bbf7d0}.kpi-card.distance{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#bfdbfe;padding:2.5rem .65rem .75rem}.kpi-card.on-time{background:linear-gradient(135deg,var(--primary-lighter),#ede9fe);border-color:#c084fc}.kpi-card.stoppages{background:linear-gradient(135deg,#fff7ed,#ffedd5);border-color:#fed7aa}.kpi-card.deviations{background:linear-gradient(135deg,#fff1f2,#ffe4e6);border-color:#fecaca}.kpi-card.halt-alert{background:linear-gradient(135deg,#a3e8ec,#95effb);border-color:#47d9fd}.kpi-value{font-size:1.35rem;font-weight:700;margin-bottom:.25rem;transition:color .2s ease;line-height:1.2}.kpi-card.early .kpi-value{color:#047857}.kpi-card.on-time .kpi-value{color:var(--primary-color)}.kpi-card.stoppages .kpi-value{color:#ea580c}.kpi-card.deviations .kpi-value{color:#e11d48}.kpi-card.halt-alert .kpi-value{color:#1a6ae3}.kpi-label{font-size:.75rem;color:var(--text-secondary);font-weight:500;line-height:1.4;margin-top:.125rem}.kpi-distance-metrics{margin-bottom:.75rem}.distance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem;margin-bottom:.5rem}.distance-item{text-align:center}.distance-value{font-weight:700;font-size:.95rem;margin-bottom:.2rem;line-height:1.1}.kpi-card.distance .distance-value{color:var(--brand-blue)}.kpi-card.distance .distance-value.traveled{color:var(--brand-green)}.kpi-card.distance .distance-value.remaining{color:var(--text-secondary)}.tooltip-content{position:absolute;z-index:999}@media (max-width:640px){.tooltip-content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1000;background:hsla(0,0%,100%,.95);backdrop-filter:blur(8px);box-shadow:0 10px 20px rgba(0,0,0,.2);border:1px solid #e5e7eb;border-radius:12px;padding:24px;max-width:90%;width:300px;opacity:0;visibility:hidden;transition:all .2s ease-in-out}.tooltip:active .tooltip-content{opacity:1;visibility:visible}}.distance-label{font-size:.6rem;color:var(--text-secondary);font-weight:500;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-bar{width:100%;background-color:#e5e7eb;border-radius:9999px;height:.5rem;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg,var(--brand-green),#059669);height:100%;width:100%;transition:width .5s ease;border-radius:9999px}.main-grid{display:grid;grid-template-columns:1fr;gap:.75rem;align-items:stretch;height:100%;overflow:hidden}@media (min-width:1024px){.main-grid{grid-template-columns:repeat(12,1fr);gap:.75rem}}.sidebar-left{display:flex;flex-direction:column;gap:.75rem;height:100%;overflow-y:auto;padding-right:4px}@media (min-width:1024px){.sidebar-left{grid-column:span 3}}.center-section{display:flex;flex-direction:column;gap:.75rem;min-height:0;flex:1;overflow:hidden}@media (min-width:1024px){.center-section{grid-column:span 6}}.sidebar-right{display:flex;flex-direction:column;gap:.75rem;height:100%;overflow-y:auto;padding-right:4px}@media (min-width:1024px){.sidebar-right{grid-column:span 3;max-height:100%}}.card{background:var(--bg-white);backdrop-filter:blur(12px);box-shadow:var(--shadow-md);border:1px solid var(--border-color);border-radius:.75rem;padding:.75rem;transition:all .3s ease;position:relative}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.card-header{justify-content:space-between;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.card-header,.card-title{display:flex;align-items:center}.card-title{gap:.5rem;font-size:1rem;color:var(--primary-color);font-weight:600}.card-icon{height:1.25rem;width:1.25rem}.collapse-button{background:none;border:1px solid var(--border-color);padding:.25rem;border-radius:.375rem;cursor:pointer;transition:all .2s ease}.collapse-button:hover{background-color:var(--primary-lighter);border-color:var(--primary-color)}.collapse-icon{height:1rem;width:1rem;color:var(--text-secondary)}.collapse-button:hover .collapse-icon{color:var(--primary-color)}.card-content{padding:0}.location-item{padding:1rem;border-radius:.75rem;transition:all .2s ease;display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.location-item:hover{box-shadow:var(--shadow-md)}.location-item.origin{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #bfdbfe}.location-item.destination{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #bbf7d0}.location-icon-wrapper{position:relative;padding:.75rem;border-radius:.75rem;box-shadow:var(--shadow-sm)}.location-item.origin .location-icon-wrapper{background-color:#dbeafe}.location-item.destination .location-icon-wrapper{background-color:#d1fae5}.location-icon-wrapper1{position:relative;padding:.2rem;border-radius:.75rem;box-shadow:var(--shadow-sm)}.location-item.origin .location-icon-wrapper1{background-color:#dbeafe}.location-item.destination .location-icon-wrapper1{background-color:#d1fae5}.location-icon{border-radius:50%;display:flex;align-items:center;justify-content:center}.location-icon.origin-icon{background-color:var(--brand-blue)}.location-icon.destination-icon{background-color:var(--brand-green)}.location-dot{height:.5rem;width:.5rem;border-radius:50%;background-color:#fff}.location-icon.origin-icon1{background-color:var(--brand-blue)}.location-icon.destination-icon1{background-color:var(--brand-green)}.location-dot1{height:.5rem;width:.5rem;border-radius:50%;background-color:#fff}.check-icon{height:.75rem;width:.75rem;color:#fff}.location-details{flex:1;min-width:0}.location-type{font-size:.875rem;font-weight:600;margin-bottom:.5rem}.location-item.origin .location-type{color:#1e40af}.location-item.destination .location-type{color:#065f46}.location-name{font-size:.875rem;font-weight:500;margin-bottom:.5rem;color:var(--text-primary)}.location-time{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--text-secondary)}.time-icon{height:.875rem;width:.875rem}.vehicle-driver-details .detail-item{display:flex;gap:1.5rem;align-items:center;justify-content:space-between;padding:.8rem .5rem;transition:background-color .2s ease}.detail-item:last-child{border-bottom:none}.detail-value{font-weight:600;color:#1e293b;text-align:right;word-break:normal}.detail-label,.detail-value{font-size:.875rem;white-space:nowrap}.detail-label{color:var(--text-secondary);font-weight:500}.ad-card{background:linear-gradient(135deg,#eff6ff,#e0e7ff);border-color:#bfdbfe;z-index:1}.ad-content{padding:.6rem;text-align:center;display:flex;flex-direction:column;align-items:center}.ad-header{gap:.5rem;margin-bottom:1rem}.ad-header,.ad-icon-wrapper{display:flex;align-items:center;justify-content:center}.ad-icon-wrapper{width:2rem;height:2rem;background:linear-gradient(135deg,var(--brand-blue),#1d4ed8);border-radius:50%}.ad-icon{height:1rem;width:1rem;color:#fff}.ad-header span{font-size:.875rem;font-weight:600;color:#1e40af}.ad-title{font-size:1rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.ad-text{font-size:.875rem;color:var(--text-secondary);line-height:1.5;margin-bottom:1rem}.ad-button{background:linear-gradient(135deg,var(--brand-blue),#1d4ed8);color:#fff;font-size:.875rem;padding:.75rem 1.5rem;border:none;border-radius:.5rem;transition:all .2s ease;cursor:pointer;font-weight:600}.ad-button:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.map-card{display:flex;flex-direction:column;overflow:hidden;padding:7px}.map-card:not(.collapsed){min-height:0;flex:1}.map-card>div:last-child{flex:1;height:100%;min-height:0}.map-buttons{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}@media (min-width:640px){.map-buttons{flex-direction:row}}@media (max-width:640px){.map-buttons .map-button:first-child{display:none}}.map-button{flex:1;display:flex;align-items:center;justify-content:center;border-radius:.5rem;padding:.75rem 1rem;cursor:pointer;transition:all .2s ease;font-weight:500;border:.5px solid #e2e8f0}.map-button.active{background:linear-gradient(135deg,var(--primary-color),var(--primary-light));color:#fff}.map-button.outline{background-color:transparent;color:var(--primary-color)}.map-button.outline:hover{background-color:var(--primary-lighter)}.button-icon{height:1rem;width:1rem;margin-right:.5rem}.map-filter-buttons{display:flex;gap:.75rem;margin-bottom:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.filter-button{font-size:.75rem;padding:.5rem .75rem;border-radius:.5rem;background-color:transparent;transition:all .2s ease;cursor:pointer;font-weight:500;display:flex;align-items:center;gap:.25rem}.filter-button:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.filter-button.deviation{border:1px solid #fecaca;color:#e11d48}.filter-button.deviation:hover{background-color:#fff1f2}.filter-button.deviation:disabled{border-color:#fecaca;color:#e11d48;background-color:transparent}.filter-button.stoppage{border:1px solid #fed7aa;color:#ea580c}.filter-button.stoppage:hover{background-color:#fff7ed}.filter-button.stoppage:disabled{border-color:#fed7aa;color:#ea580c;background-color:transparent}.filter-button.fence-path{border:1px solid #bbf7d0;color:#059669}.filter-button.fence-path:hover{background-color:#f0fdf4}.filter-button.fence-path.active{background-color:#10b981;color:#fff;border-color:#10b981}.filter-icon{height:.875rem;width:.875rem}.current-location-box{background:linear-gradient(135deg,#f9fafb,#f3f4f6);border:1px solid var(--border-color);border-radius:.75rem;padding:1.5rem;transition:all .2s ease;flex:1}.current-location-box:hover{box-shadow:var(--shadow-md)}.location-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.location-status{display:flex;align-items:center;gap:.75rem}.location-dot-active{height:.75rem;width:.75rem;border-radius:50%;background-color:var(--brand-green);animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.location-status span{font-size:.875rem;font-weight:600;color:var(--text-primary)}.location-info{font-size:.875rem;display:flex;flex-direction:column;gap:.75rem}.location-address{display:flex;align-items:center;gap:.75rem;font-weight:600;color:var(--text-primary)}.location-icon{height:1.25rem;width:1.25rem;color:var(--primary-color)}.location-known,.location-signal,.location-sub-address,.location-update{font-size:.75rem;color:var(--text-secondary);margin-left:2rem}.location-signal{display:flex;align-items:center;gap:.5rem}.signal-dot{height:.5rem;width:.5rem;border-radius:50%;background-color:var(--brand-green)}.card-content-collapsed{padding:.75rem}.metadata-summary{font-size:.875rem;color:var(--text-secondary);font-weight:500}.metadata-details .detail-item{display:flex;justify-content:space-between;align-items:flex-start;padding:.75rem;border-radius:.5rem;transition:all .2s ease;margin-bottom:.5rem;gap:1rem}.metadata-details .detail-label{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.metadata-details .detail-value{font-size:.875rem;font-weight:600;color:var(--text-primary)}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.metadata-badges{display:flex;gap:.75rem;margin-top:1rem}.metadata-badge{padding:.5rem .75rem;border-radius:.5rem;font-size:.75rem;border:1px solid var(--primary-color);background-color:var(--primary-lighter);color:var(--primary-color);transition:all .2s ease;cursor:pointer;font-weight:500}.tracking-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;width:100%}@media (max-width:640px){.card.device-tracking-card{width:100%;max-width:100%!important;overflow:hidden;min-width:0;flex:1 1 auto}.tracking-status-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;width:100%}.tracking-status-item{flex:1 1 100%;min-width:0;min-height:180px;border:1px solid var(--border-color);border-radius:.75rem}}@media (max-width:480px){.tracking-status-grid{grid-template-columns:1fr;gap:.75rem}.tracking-status-item{min-height:160px}}.tracking-status-item{flex:1;flex-shrink:0;min-width:140px;min-height:200px;border:1px solid var(--border-color);border-radius:.75rem}.tracking-status-item:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.tracking-status-item.gps{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-color:#bbf7d0}.tracking-status-item.sim{background:linear-gradient(135deg,#dacffe,#dacffe);border-color:#b293d5}.tracking-status-item.app{background:linear-gradient(135deg,#ffedd5,#ffedd5);border-color:#ede9fe}.tracking-status-header{display:flex;align-items:center;margin-bottom:1rem}.tracking-status-header .icon-wrapper{padding:.4rem;border-radius:.4rem}.tracking-status-item.gps .icon-wrapper{background-color:#d1fae5}.tracking-status-item.sim .icon-wrapper{background-color:#dacffe}.tracking-status-item.app .icon-wrapper{background-color:#dbeafe;background-color:#ffedd5}.tracking-icon{height:1.25rem;width:1.25rem}.tracking-status-item.gps .tracking-icon{color:var(--brand-green)}.tracking-status-item.sim .tracking-icon{color:#b293d5}.tracking-status-item.app .tracking-icon{color:#ea580b}.tracking-status-header h3{font-size:1rem;font-weight:600;margin:0}.tracking-status-item.gps h3{color:#065f46}.tracking-status-item.sim h3{color:#392153}.tracking-status-item.app h3{color:#ea580b}.tracking-status-header p{font-size:.75rem;margin:0;color:var(--text-secondary)}.tracking-details{display:flex;flex-direction:column;gap:.75rem}.tracking-detail-row{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}.tracking-detail-row span:first-child{color:var(--text-secondary);font-weight:500}.tracking-detail-row span:last-child{font-weight:600;color:var(--text-primary)}.timeline-card{display:flex;flex-direction:column}.timeline-card:not(.collapsed){min-height:100%;flex:1 0 auto;height:auto}.timeline-content{flex:1;display:flex!important;flex-direction:column;min-height:0;padding-bottom:0!important}.timeline-content .scrollable-container{flex:1;height:auto;min-height:0;max-height:none!important;overflow-y:auto!important;padding-bottom:1rem}@media (max-width:1023px){.timeline-content .scrollable-container{max-height:400px!important;overflow-y:auto!important}}.timeline-header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10;background-color:var(--bg-white);backdrop-filter:blur(12px);margin:-.75rem -.75rem .75rem;padding:.75rem .75rem .5rem;border-bottom:1px solid var(--border-color);border-top-left-radius:.75rem;border-top-right-radius:.75rem}.tab-container{display:flex;background-color:#f1f5f9;border-radius:.75rem;padding:.25rem;gap:.25rem;flex:1;min-width:0;margin-right:.75rem;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.tab-container::-webkit-scrollbar{display:none}@media (max-width:640px){.tab-container{margin-right:.25rem;gap:.15rem}.tab-button{padding:.3rem .4rem;font-size:.7rem;gap:.3rem;justify-content:center}.timeline-header{flex-wrap:nowrap;gap:0}}@media (max-width:480px){.tab-button{flex:0 0 auto!important;padding:.35rem .75rem!important;white-space:nowrap!important}.tab-button span{display:inline-block!important;min-width:auto;white-space:nowrap!important}}.tab-button{padding:.4rem .65rem;font-size:.75rem;border:none;background:none;border-radius:.5rem;transition:all .2s ease;cursor:pointer;display:flex;align-items:center;gap:.5rem;font-weight:500;justify-content:center;flex:1 1 0;min-width:-moz-fit-content;min-width:fit-content}.tab-button,.tab-button span{white-space:nowrap}.tab-button.active{background:linear-gradient(135deg,var(--primary-color),var(--primary-light));color:#fff;flex:1}.tab-button:not(.active){color:var(--text-secondary);flex:1}.tab-button:not(.active):hover{background-color:var(--primary-lighter);color:var(--primary-color)}.tab-icon{height:1rem;width:1rem}.timeline-content{padding-top:.75rem}.timeline-title-container{margin-bottom:1rem}.timeline-title-container h3{font-size:1rem;font-weight:700;color:var(--primary-color);margin:0}.timeline-title-container p{font-size:.75rem;color:var(--text-secondary);margin:.25rem 0 0}.timeline-icon-container{position:relative;display:flex;justify-content:center;align-items:center;width:32px}.timeline-icon-container:before{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);height:calc(100% + 2rem);border-left:2px dashed #cbd5e1}.timeline-item:last-child .timeline-icon-container:before{display:none}.timeline-item{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem;border-radius:.75rem;transition:all .2s ease}.timeline-icon-wrapper{display:flex;height:2rem;width:2rem;align-items:center;justify-content:center;border-radius:50%;background-color:var(--brand-green);background-color:#5b3782;color:#fff;flex-shrink:0;z-index:2;box-shadow:var(--shadow-sm);position:relative;z-index:1}.timeline-icon-wrapper:before{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);height:calc(100% + 1.5rem);border-left:2px dashed #cbd5e1}.timeline-item:last-child .timeline-icon-wrapper:before{display:none}.timeline-icon{height:1.2rem;width:1.2rem}timeline-icon path{fill:#5b3782;stroke:#5b3782;stroke-width:2.5}.timeline-icon circle{fill:#fff;stroke:#5b3782;stroke-width:1.5}.timeline-details{flex:1;min-width:0}.timeline-time-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.timeline-time{font-size:1rem;font-weight:600;color:var(--text-primary)}.timeline-dot{height:.5rem;width:.5rem;border-radius:50%;background-color:var(--brand-green)}.timeline-date{font-size:.75rem;color:var(--text-secondary);font-weight:400}.timeline-event{font-size:.875rem;margin-top:.5rem;font-weight:500;color:var(--text-primary)}.timeline-planned{font-size:.75rem;color:var(--text-secondary);margin-bottom:0}.link-button{background:none;border:none;padding:0;font-size:.75rem;cursor:pointer;color:var(--primary-color);font-weight:500;transition:color .2s ease}.link-button:hover{color:var(--primary-light);text-decoration:underline}.toll-history-section .toll-history-item{display:flex;gap:1rem;border-radius:.75rem;transition:all .2s ease;cursor:pointer;margin-bottom:.5rem;display:grid;grid-template-columns:5rem 20px 1fr;-moz-column-gap:8px;column-gap:8px;align-items:center;overflow:visible;max-height:none}.toll-date{justify-self:end}.toll-icon-container{justify-self:center}.toll-name{margin-left:0}.toll-date{font-size:.75rem;color:var(--text-secondary);width:6rem;text-align:right;line-height:1.25}.toll-date div:first-child{font-weight:600;color:var(--text-primary)}.toll-date div:nth-child(2){font-size:.625rem;color:var(--text-secondary)}.toll-time{font-size:.875rem;font-weight:600;color:var(--text-primary)}.toll-icon-container{display:flex;flex-direction:column;align-items:center}.toll-icon-wrapper{width:1.5rem;height:1.5rem;background:linear-gradient(135deg,var(--brand-red),#dc2626);border-radius:.375rem;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}.toll-icon{width:.875rem;height:.875rem;color:#fff}.toll-line{width:0;height:1.5rem;border-left:2px dashed var(--border-color)}.toll-name{flex:1;min-width:0;font-size:.875rem;font-weight:500;color:var(--text-primary);margin-left:-12px;white-space:normal;overflow:visible;text-overflow:unset;word-break:break-word}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.4)!important;z-index:40;backdrop-filter:blur(4px)}.modal-content{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:28rem;background-color:#fff;border-radius:1rem;padding:2rem;box-shadow:var(--shadow-lg);z-index:50;display:flex;flex-direction:column;border:1px solid var(--border-color)}.modal-header{display:absolute;flex-direction:column;gap:.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.modal-close-button{position:absolute;top:1rem;right:1rem;background:none;border:none;padding:.5rem;cursor:pointer;border-radius:50%;color:var(--text-secondary);transition:all .2s ease}.modal-close-button:hover{background-color:var(--primary-lighter);color:var(--primary-color)}.modal-close-icon{width:1.25rem;height:1.25rem}.modal-title{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:700;color:var(--text-primary)}.modal-title-icon{height:1.5rem;width:1.5rem;color:var(--primary-color)}.modal-description{font-size:.875rem;color:var(--text-secondary);line-height:1.5;padding-top:1rem}.modal-buttons-container{flex-direction:row;gap:1rem;padding-top:1.5rem}@media (max-width:640px){.modal-buttons-container{flex-direction:column;align-items:stretch}.modal-buttons-container .modal-button{min-width:unset}}.modal-button{display:flex;width:20%;gap:1rem;background-color:transparent;font-size:1rem;font-weight:500;transition:all .2s ease}.modal-button:hover{background-color:var(--primary-lighter)}.modal-button-icon{height:1.25rem;width:1.25rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.card{animation:fadeIn .3s ease-out}.documents-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}@media (min-width:640px){.documents-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.no-data-message{justify-content:center;height:100%;width:100%;text-align:center;color:var(--text-secondary);font-size:1rem;padding:2rem;grid-column:1/-1}.doc-tile,.no-data-message{display:flex;align-items:center}.doc-tile{flex-direction:column;gap:.5rem;padding:.85rem;border:1px solid var(--border-color);border-radius:.75rem;background:var(--bg-white);cursor:pointer;transition:all .2s ease}.doc-tile:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);border-color:var(--primary-color);border-top-width:2px}.doc-icon{width:1.5rem;height:1.5rem;color:var(--primary-color)}.doc-thumb{width:100%;aspect-ratio:4/3;-o-object-fit:cover;object-fit:cover;border-radius:.5rem;border:1px solid var(--border-color)}.doc-name{font-size:.75rem;font-weight:600;color:var(--text-primary);text-align:center}.doc-modal{max-width:42rem}.doc-image-wrap{margin-top:1rem;border:1px solid var(--border-color);border-radius:.75rem;overflow:hidden;background:#fff}.doc-image-wrap img{display:block;width:100%;height:auto}.doc-flex{display:flex;align-items:center;gap:6px}.tooltip-lg{min-width:260px;max-width:340px;padding:12px 14px;border-radius:12px;line-height:1.25}.tooltip-title{font-size:.7rem;font-weight:600;margin-bottom:8px;color:#fff;text-align:left}.tooltip-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:6px 0}.tooltip-key{color:#e5e7eb;font-weight:600;font-size:.85rem}.tooltip-val{color:#fff;font-weight:500;font-size:.85rem;white-space:wrap;text-align:right}.tooltip-col{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.tooltip-sub-val{font-size:.75rem;color:#cbd5e1;max-width:200px;line-height:1.2}.tooltip-muted{margin-top:8px;font-size:.8rem;color:#9ca3af}.tooltip .tooltip-content:after{top:-5px;border-color:var(--text-primary) transparent transparent transparent}.tooltip .tooltip-content{z-index:10000!important}.kpi-strip .kpi-card:first-child .tooltip-content{left:0;transform:none}.kpi-strip .kpi-card:first-child .tooltip-content:after{left:20%;margin-left:0}.status-pill{padding:2px 6px;font-size:12px;font-weight:600;border-radius:12px;color:#fff;margin-left:auto;margin-right:6px}.gps-pill{background-color:#16a34a}.sim-pill{background-color:#392153}.app-pill{background-color:#ea580b}.pill-left{margin-left:12px}.tracking-details.padded{padding:12px;border-radius:10px}.modal-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.modal-close-chip{border:none;outline:none;background:#fff;color:var(--text-secondary);font-size:.75rem;line-height:1;cursor:pointer;transition:all .15s ease}.modal-separator{border:0;height:1px;background:var(--border-color);margin:.75rem 0 1rem}.doc-image-frame{height:280px;border:1px solid var(--border-color);border-radius:.75rem;overflow:hidden;background:#fff;display:flex;align-items:center;justify-content:center}.doc-image-frame img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.modal-buttons-container{display:flex;justify-content:center;padding-top:1rem}.modal-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:150px;padding:.6rem 1rem;border:1px solid var(--primary-color);color:var(--primary-color);background:#fff;border-radius:.75rem;font-size:.95rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all .15s ease}.modal-button:hover{background:var(--primary-lighter);box-shadow:var(--shadow-md);transform:translateY(-1px)}.modal-button:focus{outline:none}.modal-button:visited{color:var(--primary-color);text-decoration:none}.modal-button-icon{width:1rem;height:1rem}.map-confirm-popover.top-right{top:50%!important;right:auto!important;left:50%!important;transform:translate(-50%,-50%)!important}.map-confirm-title{font-size:14px;font-weight:600;margin:0 24px 10px 0}.map-confirm-actions{display:flex;gap:8px}@media (max-width:768px){.map-confirm-popover{width:70vw;padding:24px 20px}.map-confirm-title{font-size:16px}.map-confirm-actions{flex-direction:row;gap:12px;margin-top:24px}.map-confirm-actions .btn{width:100%}}.map-confirm-close{position:absolute;top:6px;right:6px;background:transparent;border:none;cursor:pointer;font-size:14px;line-height:1;color:#6b7280}.btn{padding:6px 10px;border-radius:8px;font-size:13px;cursor:pointer;border:1px solid transparent}.btn-primary{background:#111827}.btn-ghost{background:#fff;color:#111827;border-color:#e5e7eb}.ellipsis-1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ellipsis-2{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.toll-history-section{max-height:320px;overflow-y:auto}.tooltip-ellipsis{width:100%;display:inline-block;position:relative;display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default}.tooltip-ellipsis:hover:after{content:attr(data-title);display:block;max-width:500px;position:absolute;left:2%;top:100%;transform:translateY(-20px);min-width:auto;min-height:auto;white-space:normal;word-wrap:break-word;word-break:break-all;z-index:20;overflow-wrap:anywhere;background:#111827;color:#fff;padding:6px 8px;border-radius:6px;font-size:12px;line-height:1.25;box-shadow:0 6px 18px rgba(0,0,0,.18)}.map-confirm-backdrop{position:fixed;inset:0;background:transparent;z-index:9998;backdrop-filter:none}.map-confirm-popover{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:9999;background:#fff;border:1px solid #e5e7eb;box-shadow:0 12px 40px rgba(0,0,0,.22);border-radius:14px;padding:24px 28px;max-width:525px;width:clamp(480px,70vw,640px);max-height:40vh;overflow:auto}.map-confirm-title{font-size:18px;font-weight:700;color:#111827;line-height:1.35;text-align:center;display:flex;align-items:center;justify-content:center;margin:30px 0 16px}.map-confirm-actions .btn{padding:10px 16px;font-size:14px}@media (max-width:640px){.map-confirm-popover{min-width:90%!important;width:90%;max-height:80vh;padding:20px}}.btn-primary{background-color:#2563eb;color:#fff;border:none}.stops-scroll{max-height:240px;overflow-y:auto;padding-right:4px;border-left:2px dashed var(--border-color);margin:.25rem 0 .5rem 14px}.stops-toggle{margin:.25rem 0 .5rem 2.75rem}.location-item.pickup{background:linear-gradient(135deg,#fff7ed,#ffedd5);border:1px solid #fed7aa}.location-item.drop{background:linear-gradient(135deg,#fff1f2,#ffe4e6);border:1px solid #fecaca}.location-icon.pickup-icon{background-color:var(--brand-orange)}.dests-scroll{max-height:240px;overflow-y:auto;padding-right:4px;border-left:2px dashed var(--border-color);margin:.25rem 0 .5rem 14px}.location-item.dest-alt{background:linear-gradient(135deg,#fff1f2,#ffe4e6);border:1px solid #fecaca}.location-icon.drop-icon{background-color:var(--brand-red)}.kpi-icon-badge{position:absolute;top:.625rem;left:.625rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:9999px;box-shadow:0 2px 4px rgba(0,0,0,.1);opacity:1;transition:all .2s ease}.kpi-card:hover .kpi-icon-badge{transform:scale(1.05);box-shadow:0 3px 6px rgba(0,0,0,.15)}.kpi-icon{width:18px;height:18px}.kpi-card.early .kpi-icon-badge{background:#d1fae5;color:#047857}.kpi-card.distance .kpi-icon-badge{background:#dbeafe;color:#1d4ed8}.kpi-card.on-time .kpi-icon-badge{background:#ede9fe;color:#6b21a8}.kpi-card.stoppages .kpi-icon-badge{background:#ffedd5;color:#ea580c}.kpi-card.deviations .kpi-icon-badge{background:#ffe4e6;color:#e11d48}.kpi-card.halt-alert .kpi-icon-badge{background:#a8e0f4;color:#1d96e1}.more-badge{width:22px;height:22px;border-radius:9999px;border:none;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;line-height:1;color:#fff;cursor:pointer;box-shadow:0 2px 5px rgba(0,0,0,.1)}.origin-badge{background:var(--brand-blue)}.dest-badge{background:var(--brand-green)}.more-badge:hover{transform:scale(1.06)}.mapfs-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:9998;backdrop-filter:blur(2px)}.mapfs-shell{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:0}.mapfs-card{width:100vw;height:100vh;background:#fff;border:1px solid var(--border-color);overflow:hidden;box-shadow:var(--shadow-lg)}.map-host{position:relative;margin-top:1rem;height:clamp(320px,45vh,560px)}.map-host .leaflet-container{height:100%!important;width:100%!important}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-weight:600;font-size:.875rem;text-align:center;white-space:nowrap}.status-badge.loading,.status-badge.unknown{background-color:#e5e7eb;color:#374151}.status-badge.pending{background-color:#f3f4f6;color:#4b5563}.status-badge.allocated{background-color:#dbeafe;color:#1e40af}.status-badge.accepted{background-color:#d1fae5;color:#065f46}.status-badge.assigned{background-color:#e0e7ff;color:#3730a3}.status-badge.at-location,.status-badge.in-transit{background-color:#fef3c7;color:#92400e}.status-badge.Delivered{background-color:#dcfce7;color:#166534}.status-badge.cancelled,.status-badge.error{background-color:#fee2e2;color:#991b1b}.scrollable-container{max-height:450px;overflow-y:auto;padding-right:.3rem}.mapfs-exit-btn{position:absolute;top:13px;right:10px;z-index:10000;display:flex;align-items:center;gap:.5rem;background-color:rgba(240,84,84,.9);backdrop-filter:blur(8px);color:#111827;padding:.3rem .8rem;border-radius:9999px;border:1px solid rgba(0,0,0,.1);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 10px rgba(0,0,0,.1)}.mapfs-exit-btn:hover{transform:translateY(-2px);background-color:#f54747;box-shadow:0 6px 12px rgba(0,0,0,.15)}.doc-image-frame{position:relative}.pdf-loader{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#f9fafb;z-index:10;gap:1rem;color:var(--text-secondary)}.spinner{width:36px;height:36px;border-radius:50%;border:4px solid rgba(0,0,0,.1);border-left:4px solid var(--primary-color);animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes progressPulse{0%{opacity:.8;box-shadow:0 0 10px rgba(34,197,94,.3)}to{opacity:1;box-shadow:0 0 20px rgba(34,197,94,.6)}}@media (min-width:768px) and (max-width:1023px){.dashboard-container{padding:0}.header{padding:.75rem 1rem}.header-content{gap:1rem}.header-logo-container{height:40px;padding:8px 20px}.logo-title{font-size:1.1rem}.main-content{padding:0 1rem 1rem}.kpi-strip{grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1rem}.kpi-card{padding:2.5rem .875rem .875rem;min-height:115px}.kpi-value{font-size:1.5rem}.kpi-label{font-size:.8rem}.main-grid{grid-template-columns:1fr 2fr 1fr;gap:1rem}.card{padding:1rem}.card-title{font-size:1.05rem}.map-host{height:clamp(400px,50vh,600px)}.documents-grid,.tracking-status-grid{grid-template-columns:repeat(2,1fr)}.tracking-status-grid{gap:1rem}.tracking-status-item{min-width:unset}}@media (min-width:641px) and (max-width:767px){.header{padding:.65rem .75rem}.header-logo-container{height:38px;padding:7px 18px}.logo-title{font-size:1rem}.kpi-strip{grid-template-columns:repeat(2,1fr);gap:.75rem}.kpi-card{padding:2.5rem .75rem .75rem;min-height:105px}.main-grid{grid-template-columns:1fr;gap:1rem}.center-section,.sidebar-left,.sidebar-right{width:100%}.map-host{height:clamp(350px,45vh,500px)}.tracking-status-grid{display:flex;flex-wrap:wrap;gap:.75rem}.tracking-status-item{flex:1 1 calc(50% - 0.5rem);min-width:140px}.documents-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:1023px){.main-grid{display:flex!important;flex-direction:column!important;gap:1.5rem!important;padding:0 1rem}.center-section,.sidebar-left,.sidebar-right{width:100%!important;max-width:100%!important;margin:0!important;overflow-y:visible;height:auto}.center-section{order:-1!important;width:100%!important;display:block!important}.sidebar-left{order:1!important}.sidebar-right{order:2!important}.modal-content{width:95%!important;padding:1rem!important;max-height:90vh;overflow-y:auto}.modal-buttons-container{flex-direction:column!important;gap:.75rem}.modal-button{width:100%!important}.card{margin-bottom:.75rem;padding:.65rem}.card-header{margin-bottom:.5rem;padding-bottom:.4rem}.card-title{font-size:.9rem}.card-icon{height:1.1rem;width:1.1rem}.location-item{padding:.75rem;margin-bottom:.65rem;gap:.75rem}.location-name{font-size:.8rem}.location-time{font-size:.7rem}.timeline-item{padding:.65rem;gap:.65rem}.timeline-time{font-size:.9rem}.timeline-event{font-size:.8rem}.toll-history-section .toll-history-item{grid-template-columns:4.5rem 20px 1fr;gap:10px}.detail-item{padding:.65rem .4rem;gap:1rem}.detail-label,.detail-value{font-size:.8rem}}@media (min-width:481px) and (max-width:640px){.header{padding:.5rem .75rem}.header-logo-container{height:34px;padding:6px 14px}.logo-title{font-size:.9rem}.kpi-strip{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:.75rem!important;padding:0 .75rem .5rem!important;margin:0 -.75rem 1rem!important}.kpi-card{min-width:140px;flex:0 0 auto;padding:2.25rem .65rem .65rem;min-height:100px}.kpi-value{font-size:1.1rem}.kpi-label{font-size:.7rem}.kpi-card.distance{min-width:260px}.tracking-status-grid{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:.75rem!important;padding-bottom:.5rem}.tracking-status-item{min-width:150px;flex:0 0 auto}.documents-grid{grid-template-columns:repeat(2,1fr)!important;gap:.75rem}.map-host{height:clamp(300px,40vh,450px)}.kpi-icon-badge{width:28px;height:28px;top:.5rem;left:.5rem}.kpi-icon{width:16px;height:16px}}@media (max-width:480px){.dashboard-container{padding:0}.header{padding:.5rem;margin-bottom:.5rem}.header-content{gap:.5rem}.header-logo-container{height:32px;padding:5px 12px;margin-left:0}.header-logo-img{max-width:120px}.logo-title{font-size:.85rem}.logo-subtitle{font-size:.5rem}.main-content{padding:0 .5rem .5rem}.kpi-strip{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:.5rem!important;padding:0 .5rem .5rem!important;margin:0 -.5rem .75rem!important}.kpi-card{min-width:130px;flex:0 0 auto;padding:2rem .5rem .5rem;min-height:95px}.kpi-value{font-size:1rem}.kpi-label{font-size:.65rem}.kpi-card.distance{min-width:240px}.distance-grid{gap:.25rem}.distance-value{font-size:.9rem}.distance-label{font-size:.6rem}.main-grid{gap:1rem!important;padding:0 .5rem}.card{padding:.75rem;margin-bottom:.75rem}.card-header{margin-bottom:.5rem;padding-bottom:.5rem}.card-title{font-size:.9rem}.card-icon{height:1rem;width:1rem}.location-item{padding:.75rem;gap:.75rem;margin-bottom:.5rem}.location-icon-wrapper{padding:.5rem}.location-name,.location-type{font-size:.8rem}.location-time{font-size:.7rem}.detail-item{padding:.5rem;gap:1rem}.detail-label,.detail-value{font-size:.8rem}.map-host{height:clamp(280px,35vh,400px);margin-top:.75rem}.map-buttons{gap:.5rem;margin-bottom:.75rem}.map-button{padding:.5rem .75rem;font-size:.8rem}.button-icon{height:.875rem;width:.875rem}.tracking-status-grid{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:.5rem!important;padding-bottom:.5rem}.tracking-status-item{min-width:140px;flex:0 0 auto;min-height:180px}.tracking-status-header{margin-bottom:.75rem}.tracking-status-header h3{font-size:.9rem}.tracking-icon{height:1.1rem;width:1.1rem}.tracking-detail-row{font-size:.7rem}.timeline-item{padding:.5rem;gap:.5rem}.timeline-icon-wrapper{height:1.75rem;width:1.75rem}.timeline-icon{height:1rem;width:1rem}.timeline-time{font-size:.9rem}.timeline-event{font-size:.8rem}.timeline-date,.timeline-planned{font-size:.7rem}.toll-history-section .toll-history-item{grid-template-columns:4rem 18px 1fr;gap:6px}.toll-date{font-size:.7rem;width:4rem}.toll-icon-wrapper{width:1.25rem;height:1.25rem}.toll-icon{width:.75rem;height:.75rem}.toll-name{font-size:.8rem}.documents-grid{grid-template-columns:1fr!important;gap:.5rem}.doc-tile{padding:.75rem}.doc-icon{width:1.25rem;height:1.25rem}.doc-name{font-size:.7rem}.tab-container{padding:.075rem}.tab-button{padding:.35rem .5rem;font-size:.7rem;gap:.35rem}.tab-icon{height:.875rem;width:.875rem}.modal-content{width:96%!important;max-width:100%!important;padding:1rem!important;border-radius:.75rem}.modal-title{font-size:1.1rem}.modal-description{font-size:.8rem}.modal-button{padding:.5rem .75rem;font-size:.875rem}.scrollable-container{max-height:350px}.toll-history-section{max-height:280px}.dests-scroll,.stops-scroll{max-height:200px}.kpi-icon-badge{width:26px;height:26px;top:.45rem;left:.45rem}.kpi-icon{width:15px;height:15px}}@media (max-width:375px){.header-logo-container{height:30px;padding:4px 10px}.header-logo-img{max-width:100px}.logo-title{font-size:.8rem}.kpi-card{min-width:120px;padding:1.75rem .45rem .45rem;min-height:90px}.kpi-value{font-size:.95rem}.kpi-label{font-size:.6rem}.kpi-card.distance{min-width:220px}.card{padding:.65rem}.card-title{font-size:.85rem}.tracking-status-item{min-width:130px;min-height:170px}.map-host{height:clamp(260px,32vh,350px)}.kpi-icon-badge{width:24px;height:24px;top:.4rem;left:.4rem}.kpi-icon{width:14px;height:14px}}.map-card .card-content,.map-card:not(.collapsed){display:flex!important;flex-direction:column!important;flex:1!important}.map-card .card-content{height:100%}.map-host{flex:1!important;background:#fff;height:auto!important;min-height:400px;display:flex;flex-direction:column}.mapWrapper{flex:1;height:100%}.side-panel-overlay{position:fixed;inset:0;background:transparent;z-index:1000;display:block;pointer-events:all}.side-panel{position:fixed;width:420px;max-width:calc(100vw - 40px);height:auto;max-height:calc(100vh - 150px);background:#fff;display:flex;flex-direction:column;box-shadow:0 10px 40px rgba(0,0,0,.25);border-radius:16px;border:1px solid var(--border-color);animation:slideInFromRight .2s ease-out;pointer-events:auto;z-index:1001;left:360px;top:450px}@keyframes popIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.side-panel-header{flex-shrink:0;padding:1.25rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;background:#fff}.side-panel-title{font-size:1.1rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.side-panel-close{background:transparent;border:none;cursor:pointer;padding:.5rem;border-radius:50%;color:var(--text-secondary);transition:all .2s;display:flex;align-items:center;justify-content:center}.side-panel-close:hover{background:#f3f4f6;color:#ef4444}.side-panel-body{min-height:230px;max-height:230px;flex:1;overflow-y:auto;padding:1rem}.side-panel .location-item{background:#f9fafb;border:1px solid var(--border-color);border-radius:.75rem;margin-bottom:.75rem;padding:.75rem}@media (max-width:1023px){.side-panel{top:50%!important;left:50%!important;right:auto;bottom:auto;transform:translate(-50%,-50%)!important;max-width:90vw;max-height:70vh;animation:none}}@media (max-width:480px){.side-panel{width:calc(100vw - 32px);max-height:80vh}.side-panel-header{padding:1rem}.side-panel-body{padding:.75rem}}.detail-item-group{display:flex;flex-direction:column;gap:.25rem;width:100%}.detail-value-with-action{display:flex;align-items:flex-start;justify-content:flex-end;gap:.75rem;width:100%}.stacked-values{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.expand-action-btn-circular{background:#fff;border:1.5px solid var(--primary-color);color:var(--primary-color);width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:all .2s ease;flex-shrink:0;margin-top:2px}.expand-action-btn-circular:hover{background:var(--primary-lighter)}.expand-action-btn-circular svg{stroke-width:2.5px}