@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--green-50: #ecfdf5;--green-100: #d1fae5;--green-200: #a7f3d0;--green-400: #34d399;--green-500: #10b981;--green-600: #059669;--green-700: #047857;--green-800: #065f46;--white: #ffffff;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--blue-50: #eff6ff;--blue-100: #dbeafe;--blue-200: #bfdbfe;--blue-500: #3b82f6;--blue-600: #2563eb;--blue-700: #1d4ed8;--red-100: #fee2e2;--red-200: #fecaca;--red-500: #ef4444;--red-600: #dc2626;--amber-100: #fef3c7;--amber-200: #fde68a;--amber-500: #f59e0b;--amber-600: #d97706;--purple-100: #f3e8ff;--purple-200: #e9d5ff;--purple-500: #a855f7;--purple-600: #9333ea;--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--transition: all .2s cubic-bezier(.4, 0, .2, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:linear-gradient(135deg,#ecfdf5,#f0f9ff,#faf5ff);color:var(--gray-800);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.app{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(135deg,#f0fdf4,#f9fafb);animation:fadeIn .5s ease-out}.app-header{background:linear-gradient(135deg,#fffffffa,#fffffff2);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(226,232,240,.8);padding:0 32px;height:72px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -2px #0000000d;position:sticky;top:0;z-index:100;animation:slideInLeft .4s ease-out}.app-logo{display:flex;align-items:center;gap:14px}.app-logo .icon{width:44px;height:44px;background:linear-gradient(135deg,#10b981,#059669);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;transition:var(--transition);animation:scaleIn .5s ease-out;box-shadow:0 4px 12px #10b98140}.app-logo .icon:hover{transform:rotate(5deg) scale(1.08);box-shadow:0 8px 20px #10b98159}.app-logo h1{font-size:20px;font-weight:800;background:linear-gradient(135deg,#059669,#047857);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px}.app-logo .tagline{font-size:12px;color:var(--gray-500);font-weight:400;letter-spacing:.2px;margin-top:1px}.header-actions{display:flex;align-items:center;gap:12px}.status-badge{display:flex;align-items:center;gap:7px;padding:5px 12px;border-radius:99px;font-size:12px;font-weight:500;background:var(--green-50);color:var(--green-700);border:1px solid var(--green-200);transition:all .3s ease;animation:slideInRight .5s ease-out}.status-badge:hover{transform:scale(1.05);box-shadow:0 2px 8px #22c55e33}.status-badge.disconnected{background:var(--red-100);color:var(--red-500);border-color:#fca5a5}.status-badge .dot{width:7px;height:7px;border-radius:50%;background:var(--green-500);animation:pulse 2s infinite}.status-badge.disconnected .dot{background:var(--red-500);animation:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.btn-optimize{display:flex;align-items:center;gap:6px;padding:8px 18px;background:linear-gradient(135deg,var(--green-600),var(--green-700));color:var(--white);border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);letter-spacing:.1px;position:relative;overflow:hidden}.btn-optimize:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.btn-optimize:hover:before{left:100%}.btn-optimize:hover{background:linear-gradient(135deg,var(--green-700),var(--green-800));transform:translateY(-2px);box-shadow:0 4px 12px #22c55e66}.btn-optimize:active{transform:translateY(0);box-shadow:0 2px 6px #22c55e4d}.nav-tabs,.nav-tab{display:none}.app-body{display:flex;flex:1;overflow:hidden}.sidebar{width:240px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-right:1px solid var(--gray-200);display:flex;flex-direction:column;box-shadow:var(--shadow-xs);animation:slideInLeft .5s ease-out}.sidebar-nav{display:flex;flex-direction:column;padding:12px 8px;gap:4px}.sidebar-nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:none;border:none;border-radius:var(--radius-md);color:var(--gray-600);font-size:14px;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:left;position:relative;overflow:hidden}.sidebar-nav-item:after{content:"";position:absolute;left:0;top:0;width:0;height:100%;background:linear-gradient(90deg,var(--green-100),transparent);transition:width .3s ease;z-index:-1}.sidebar-nav-item:hover{background:var(--green-50);color:var(--green-700);transform:translate(4px)}.sidebar-nav-item:hover:after{width:100%}.sidebar-nav-item.active{background:linear-gradient(90deg,var(--green-100),var(--green-50));color:var(--green-800);font-weight:600;transform:translate(4px)}.sidebar-nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:24px;background:linear-gradient(180deg,var(--green-500),var(--green-700));border-radius:0 99px 99px 0;box-shadow:0 0 8px #22c55e66}.sidebar-nav-item svg{width:18px;height:18px;flex-shrink:0}.sidebar-nav-item span{flex:1}.dashboard{flex:1;padding:20px 24px;overflow-y:auto;background:transparent;animation:fadeIn .6s ease-out}.stats-bar{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:24px;animation:fadeIn .7s ease-out}.stat-card{background:linear-gradient(135deg,#fffffffa,#ffffffeb);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-xl);padding:24px 26px;border:1px solid rgba(226,232,240,.6);box-shadow:0 4px 6px -1px #00000014,0 2px 4px -2px #0000000d;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;animation:scaleIn .5s ease-out backwards}.stat-card:nth-child(1){animation-delay:.1s}.stat-card:nth-child(2){animation-delay:.15s}.stat-card:nth-child(3){animation-delay:.2s}.stat-card:nth-child(4){animation-delay:.25s}.stat-card:nth-child(5){animation-delay:.3s}.stat-card:before{content:"";position:absolute;top:0;left:0;width:5px;height:100%;border-radius:0 6px 6px 0;transition:width .3s ease}.stat-card.blue:before{background:linear-gradient(180deg,#3b82f6,#2563eb);box-shadow:0 0 20px #3b82f666}.stat-card.green:before{background:linear-gradient(180deg,#10b981,#059669);box-shadow:0 0 20px #10b98166}.stat-card.orange:before{background:linear-gradient(180deg,#f59e0b,#f97316);box-shadow:0 0 20px #f59e0b66}.stat-card.red:before{background:linear-gradient(180deg,#ef4444,#dc2626);box-shadow:0 0 20px #ef444466}.stat-card.purple:before{background:linear-gradient(180deg,#a855f7,#9333ea);box-shadow:0 0 20px #a855f766}.stat-card:hover{box-shadow:0 12px 28px -4px #00000026,0 4px 8px -2px #00000014;transform:translateY(-5px) scale(1.03);border-color:#10b9814d}.stat-card:hover:before{width:100%;opacity:.08}.stat-card .label{font-size:12px;font-weight:700;color:var(--gray-500);text-transform:uppercase;letter-spacing:.8px;margin-bottom:8px}.stat-card .value{font-size:32px;font-weight:800;letter-spacing:-1px;line-height:1;margin-bottom:6px}.stat-card.blue .value{color:var(--blue-500)}.stat-card.green .value{color:var(--green-600)}.stat-card.orange .value{color:var(--amber-500)}.stat-card.red .value{color:var(--red-500)}.stat-card.purple .value{color:var(--purple-500)}.stat-card .sub{font-size:12px;color:var(--gray-500);font-weight:500}.card{background:linear-gradient(135deg,#fffffff2,#ffffffe6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-xl);border:1px solid rgba(226,232,240,.6);box-shadow:0 4px 6px -1px #00000014,0 2px 4px -2px #0000000d;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);animation:scaleIn .5s ease-out}.card:hover{box-shadow:0 12px 28px -4px #0000001f,0 4px 8px -2px #00000014;transform:translateY(-3px);border-color:#10b9814d}.card-header{padding:20px 24px;border-bottom:1px solid rgba(226,232,240,.6);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#fffffffa,#f8fafcf2)}.card-header-left{display:flex;align-items:center;gap:14px}.card-header h3{font-size:15px;font-weight:600;color:var(--gray-800);display:flex;align-items:center;gap:10px}.card-header h3 svg{color:var(--green-600);width:18px;height:18px}.card-body{padding:20px}.card-badge{background:var(--green-100);color:var(--green-700);font-size:11px;font-weight:600;padding:4px 10px;border-radius:99px;letter-spacing:.3px}.dashboard-grid{display:grid;grid-template-columns:1fr 380px;gap:16px}.map-container{height:520px}.map-container .leaflet-container{height:100%;border-radius:0 0 var(--radius-lg) var(--radius-lg)}.alerts-panel{display:flex;flex-direction:column}.alerts-list{overflow-y:auto;max-height:480px}.alert-item{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-bottom:1px solid var(--gray-100);transition:all .3s ease;cursor:default;animation:slideInRight .4s ease-out backwards}.alert-item:nth-child(1){animation-delay:.05s}.alert-item:nth-child(2){animation-delay:.1s}.alert-item:nth-child(3){animation-delay:.15s}.alert-item:nth-child(4){animation-delay:.2s}.alert-item:nth-child(5){animation-delay:.25s}.alert-item:hover{background:var(--gray-50);transform:translate(4px);border-left:3px solid var(--green-500);padding-left:13px}.alert-item:last-child{border-bottom:none}.alert-icon{width:30px;height:30px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.alert-icon svg{width:15px;height:15px}.alert-icon.deviation{background:var(--blue-100);color:var(--blue-500)}.alert-icon.overspeed{background:var(--red-100);color:var(--red-500)}.alert-icon.idling{background:var(--amber-100);color:var(--amber-500)}.alert-icon.abnormal{background:var(--purple-100);color:var(--purple-500)}.alert-content{flex:1;min-width:0}.alert-title{font-size:12px;font-weight:600;color:var(--gray-800);display:flex;align-items:center;gap:6px;margin-bottom:2px}.alert-vid{font-size:10px;font-weight:700;font-family:Courier New,monospace;color:var(--green-700);background:var(--green-50);padding:1px 6px;border-radius:4px;border:1px solid var(--green-200)}.alert-detail{font-size:11px;color:var(--gray-500)}.alert-time{font-size:10px;color:var(--gray-400);white-space:nowrap;margin-top:2px}.empty-state{padding:48px 24px;text-align:center;color:var(--gray-400)}.empty-state svg{width:40px;height:40px;margin:0 auto 12px;color:var(--gray-300)}.empty-state p{font-size:13px;font-weight:500}.vehicles-container,.vehicles-card{width:100%}.table-wrapper{overflow-x:auto}.btn-add-vehicle{display:flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,var(--green-600),var(--green-700));color:var(--white);border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.btn-add-vehicle:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-add-vehicle:hover:before{width:300px;height:300px}.btn-add-vehicle:hover{background:linear-gradient(135deg,var(--green-700),var(--green-800));transform:translateY(-2px);box-shadow:0 4px 12px #22c55e66}.btn-add-vehicle svg{width:16px;height:16px}.data-table{width:100%;border-collapse:collapse}.data-table thead tr{background:var(--green-50);border-bottom:2px solid var(--green-200)}.data-table th{padding:12px 16px;font-size:11px;font-weight:700;color:var(--green-800);text-transform:uppercase;letter-spacing:.6px;text-align:left;white-space:nowrap}.data-table td{padding:14px 16px;font-size:13px;color:var(--gray-700);border-bottom:1px solid var(--gray-100)}.data-table tbody tr{transition:all .2s ease;animation:fadeIn .4s ease-out backwards}.data-table tbody tr:nth-child(odd){animation-delay:.05s}.data-table tbody tr:nth-child(2n){animation-delay:.1s}.data-table tbody tr:hover{background:var(--green-50);transform:scale(1.01);box-shadow:0 2px 8px #0000000d}.data-table tbody tr:last-child td{border-bottom:none}.speed-cell{display:flex;align-items:baseline;gap:4px}.speed-value{font-size:15px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--gray-800)}.speed-unit{font-size:11px;color:var(--gray-500);font-weight:500}.location-cell{font-family:Courier New,monospace;font-size:12px;color:var(--gray-600);display:flex;align-items:center;gap:4px}.location-separator{color:var(--gray-400)}.action-buttons{display:flex;gap:6px}.btn-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--gray-100);border:1px solid var(--gray-200);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);color:var(--gray-600)}.btn-icon:hover{background:var(--green-100);border-color:var(--green-300);color:var(--green-700);transform:translateY(-1px)}.btn-icon svg{width:14px;height:14px}.btn-icon-danger:hover{background:var(--red-100);border-color:var(--red-300);color:var(--red-600)}.vehicle-id{font-family:Courier New,monospace;font-weight:700;font-size:12px;color:var(--green-700);background:var(--green-50);padding:3px 8px;border-radius:4px;border:1px solid var(--green-200)}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:99px;font-size:11px;font-weight:700;letter-spacing:.3px;text-transform:uppercase}.status-pill.normal{background:var(--green-100);color:var(--green-700);border:1px solid var(--green-200)}.status-pill.transit{background:var(--blue-100);color:var(--blue-600);border:1px solid var(--blue-200)}.status-pill.warehouse{background:var(--purple-100);color:var(--purple-600);border:1px solid var(--purple-200)}.status-pill.restaurant{background:var(--green-100);color:var(--green-700);border:1px solid var(--green-200)}.status-pill.idling{background:var(--amber-100);color:var(--amber-600);border:1px solid var(--amber-200)}.status-pill.overspeed{background:var(--red-100);color:var(--red-600);border:1px solid var(--red-200)}.status-pill.fast{background:var(--blue-100);color:var(--blue-600);border:1px solid var(--blue-200)}.status-dot{width:7px;height:7px;border-radius:50%;background:currentColor;animation:pulse-dot 2s infinite}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.5}}.capacity-bar-wrap{display:flex;align-items:center;gap:10px}.capacity-bar{flex:1;height:8px;background:var(--gray-200);border-radius:99px;overflow:hidden;box-shadow:inset 0 1px 2px #0000000d}.capacity-bar-fill{height:100%;border-radius:99px;background:linear-gradient(to right,var(--green-500),var(--green-600));transition:width .6s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #22c55e4d;position:relative;overflow:hidden}.capacity-bar-fill:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer 2s infinite}.capacity-bar-fill.high{background:linear-gradient(to right,var(--red-500),#dc2626);box-shadow:0 1px 3px #ef44444d}.capacity-bar-fill.med{background:linear-gradient(to right,var(--amber-500),#f97316);box-shadow:0 1px 3px #f59e0b4d}.capacity-text{font-size:12px;font-weight:700;color:var(--gray-700);min-width:38px;text-align:right}.fuel-badge{display:inline-block;padding:2px 7px;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.3px;text-transform:uppercase}.fuel-badge.diesel{background:#d1fae5;color:#065f46}.fuel-badge.cng{background:var(--blue-100);color:#1e40af}.fuel-badge.electric{background:var(--purple-100);color:#5b21b6}.routes-layout{display:grid;grid-template-columns:300px 1fr;gap:16px;align-items:start}.routes-select{padding:8px 12px;border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:13px;font-weight:500;color:var(--gray-800);background:var(--white);cursor:pointer;transition:var(--transition);font-family:Inter,sans-serif;min-width:200px}.routes-select:hover{border-color:var(--green-500)}.routes-select:focus{outline:none;border-color:var(--green-500);box-shadow:0 0 0 3px var(--green-100)}.vehicle-list{list-style:none;padding:0}.vehicle-list-item{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;border-bottom:1px solid var(--gray-100);transition:background .12s;font-size:13px;font-weight:500;color:var(--gray-700)}.vehicle-list-item:hover{background:var(--green-50)}.vehicle-list-item.active{background:var(--green-100);color:var(--green-800);font-weight:600}.vehicle-list-item .vid-badge{font-family:monospace;font-size:11px;font-weight:700;color:var(--green-700)}.route-map-container{height:460px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--gray-200)}.emissions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.emission-card{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:22px 24px;display:flex;align-items:center;gap:16px;box-shadow:var(--shadow-xs);transition:var(--transition)}.emission-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.emission-icon{width:44px;height:44px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.emission-icon svg{width:22px;height:22px}.emission-icon.co2{background:var(--green-100);color:var(--green-700)}.emission-icon.fuel{background:var(--amber-100);color:var(--amber-500)}.emission-icon.data{background:var(--blue-100);color:var(--blue-500)}.emission-info .metric{font-size:28px;font-weight:700;color:var(--gray-900);letter-spacing:-.5px;line-height:1;margin-bottom:3px}.emission-info .metric-label{font-size:12px;color:var(--gray-500);font-weight:500}.emission-table{width:100%;border-collapse:collapse;font-size:12.5px}.emission-table thead tr{background:var(--green-50);border-bottom:2px solid var(--green-200)}.emission-table th{padding:9px 12px;font-size:11px;font-weight:600;color:var(--green-800);text-transform:uppercase;letter-spacing:.4px;text-align:left}.emission-table td{padding:9px 12px;border-bottom:1px solid var(--gray-100);color:var(--gray-700)}.emission-table tbody tr:hover{background:var(--green-50)}.emission-table tbody tr:last-child td{border-bottom:none}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}@media (max-width: 1100px){.stats-bar{grid-template-columns:repeat(3,1fr)}.dashboard-grid,.routes-layout{grid-template-columns:1fr}.emissions-grid{grid-template-columns:repeat(2,1fr)}.sidebar{width:200px}.config-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.sidebar{width:70px}.sidebar-nav-item span{display:none}.sidebar-nav-item{justify-content:center;padding:12px}.config-grid{grid-template-columns:1fr}}@media (max-width: 640px){.stats-bar{grid-template-columns:repeat(2,1fr)}.dashboard{padding:14px 16px}.sidebar{display:none}}.config-section{margin-bottom:20px}.config-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px}.config-card{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:16px;transition:var(--transition)}.config-card:hover{border-color:var(--green-300);box-shadow:var(--shadow-sm)}.config-card-header{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--gray-200)}.restaurant-icon{font-size:24px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--amber-100);border-radius:var(--radius-sm)}.config-card-title{font-size:14px;font-weight:600;color:var(--gray-800)}.config-card-id{font-size:11px;color:var(--gray-500);font-family:monospace}.config-form{display:flex;flex-direction:column;gap:12px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:12px;font-weight:600;color:var(--gray-700);text-transform:uppercase;letter-spacing:.3px}.form-input{padding:8px 12px;border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:13px;color:var(--gray-800);background:var(--white);transition:var(--transition);font-family:Inter,sans-serif}.form-input:focus{outline:none;border-color:var(--green-500);box-shadow:0 0 0 3px var(--green-100)}.form-input::placeholder{color:var(--gray-400)}.btn-primary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--green-600);color:var(--white);border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-primary:hover{background:var(--green-700);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary svg{width:16px;height:16px}.btn-secondary{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--white);color:var(--gray-700);border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer;transition:var(--transition)}.btn-secondary:hover{background:var(--gray-50);border-color:var(--gray-400)}.fleet-summary{display:flex;flex-direction:column;gap:8px}.fleet-item{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-sm)}
