@font-face{font-family:Open Sans;font-weight:300;src:url(/fonts/OpenSans-Light.ttf)format("truetype")}@font-face{font-family:Open Sans;font-weight:400;src:url(/fonts/OpenSans-Regular.ttf)format("truetype")}@font-face{font-family:Open Sans;font-weight:500;src:url(/fonts/OpenSans-Medium.ttf)format("truetype")}@font-face{font-family:Open Sans;font-weight:600;src:url(/fonts/OpenSans-SemiBold.ttf)format("truetype")}@font-face{font-family:Open Sans;font-weight:700;src:url(/fonts/OpenSans-Bold.ttf)format("truetype")}@font-face{font-family:Open Sans;font-weight:800;src:url(/fonts/OpenSans-ExtraBold.ttf)format("truetype")}:root{--c-orange:#ff5a36;--c-lime:#bce825;--c-teal:#10b5cc;--c-lime-600:#a6d015;--accent:var(--c-lime);--accent-strong:var(--c-lime-600);--on-accent:#161412;--ink-950:#0e0d0b;--ink-900:#161412;--ink-850:#1d1a17;--ink-800:#24201c;--ink-700:#322c26;--ink-600:#4a423a;--ink-400:#8a7f73;--ink-300:#b4a99b;--paper:#f4f1ec;--paper-2:#eae5dc;--paper-raised:#fbf9f5;--bg:var(--ink-900);--bg-sunken:var(--ink-950);--bg-raised:var(--ink-850);--bg-hover:var(--ink-800);--border:var(--ink-700);--border-strong:var(--ink-600);--fg:var(--paper);--fg-2:var(--ink-300);--fg-3:var(--ink-400);--success:var(--c-lime);--danger:var(--c-orange);--warning:#f2b705;--font-sans:"Open Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.125rem;--text-lg:1.5rem;--text-xl:1.953rem;--text-2xl:2.441rem;--leading-tight:1.08;--leading-body:1.62;--tracking-tight:-.015em;--tracking-wide:.22em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-pill:999px;--control-height:2.625rem;--control-radius:var(--radius-md);--control-padding-x:13px;--shadow-sm:0 1px 2px #0006;--shadow-md:0 6px 20px #0000006b;--shadow-lg:0 20px 48px #00000080;--ring:0 0 0 3px color-mix(in srgb, var(--accent) 45%, transparent);--transition-fast:.14s cubic-bezier(.2,.7,.3,1);--sidebar-width:260px}[data-theme=light]{--bg:var(--paper);--bg-sunken:var(--paper-2);--bg-raised:var(--paper-raised);--bg-hover:var(--paper-2);--border:#d8d1c5;--border-strong:#c3baab;--fg:var(--ink-900);--fg-2:#5a5249;--fg-3:#877d70;--shadow-sm:0 1px 2px #1a17141a;--shadow-md:0 8px 24px #1a17141a;--shadow-lg:0 24px 56px #1a171424}*,:before,:after{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-body);color:var(--fg);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4,p{margin:0}a{color:var(--accent);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--accent-strong)}button,input,select,textarea{font:inherit}:focus-visible{box-shadow:var(--ring);outline:none}.app-shell{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background:var(--bg);border-right:1px solid var(--border);padding:var(--space-5) var(--space-4);gap:var(--space-4);flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.brand{align-items:center;gap:var(--space-3);color:inherit;padding-bottom:var(--space-4);border-bottom:1px solid var(--border);text-decoration:none;display:flex}.brand-mark{background:var(--accent);border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.brand-mark svg{color:var(--on-accent);stroke-width:2px;width:18px;height:18px}.brand-text{flex-direction:column;line-height:1.2;display:flex}.brand-name{font-size:var(--text-sm);letter-spacing:var(--tracking-tight);color:var(--fg);font-weight:700}.brand-sub{font-size:10px;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3)}.nav-list{flex-direction:column;flex:1;gap:2px;display:flex}.nav-section-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);padding:var(--space-4) var(--space-3) var(--space-2);font-size:10px}.nav-item{align-items:center;gap:var(--space-3);color:var(--fg-2);padding:10px var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);transition:background var(--transition-fast), color var(--transition-fast);cursor:pointer;text-align:left;background:0 0;border:none;width:100%;font-weight:500;text-decoration:none;display:inline-flex}.nav-item:hover{background:var(--bg-hover);color:var(--fg)}.nav-item.active{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--fg)}.nav-item.active .nav-icon{color:var(--accent)}.nav-icon{stroke-width:1.75px;flex-shrink:0;width:1.125rem;height:1.125rem}.nav-item-badge{font-family:var(--font-mono);letter-spacing:.06em;border-radius:var(--radius-pill);background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--accent);margin-left:auto;padding:2px 7px;font-size:10px;font-weight:600}.sidebar-footer{padding-top:var(--space-3);border-top:1px solid var(--border);gap:var(--space-2);display:flex}.content-area{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{z-index:10;background:color-mix(in srgb, var(--bg) 88%, transparent);border-bottom:1px solid var(--border);padding:var(--space-3) var(--space-6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);justify-content:space-between;align-items:center;gap:var(--space-4);min-height:56px;display:flex;position:sticky;top:0}.topbar-title{font-size:var(--text-sm);color:var(--fg-2);font-weight:600}.topbar-actions{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.page-content{padding:var(--space-6);max-width:1100px}.page-content>*+*{margin-top:var(--space-5)}.page-heading{gap:var(--space-2);flex-direction:column;display:flex}.page-heading-eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--accent);align-items:center;gap:10px;font-weight:500;display:inline-flex}.page-heading-tick{gap:3px;display:inline-flex}.page-heading-tick span{background:var(--accent);width:12px;height:3px}.page-heading-title{font-size:var(--text-2xl);letter-spacing:var(--tracking-tight);font-weight:700;line-height:var(--leading-tight)}.subtitle{color:var(--fg-2);font-size:var(--text-md);max-width:52ch}.card{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);position:relative}.card--accent{padding-top:calc(var(--space-5) + var(--space-2))}.card--accent:before{content:"";top:var(--space-5);left:var(--space-5);background:var(--accent);width:26px;height:2px;position:absolute}.card h2{font-size:var(--text-lg);letter-spacing:var(--tracking-tight);font-weight:700}.card h3{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);margin-bottom:var(--space-2);font-weight:500}.card strong{font-size:var(--text-xl);letter-spacing:var(--tracking-tight);font-weight:700;line-height:var(--leading-tight);display:block}.kpi-grid{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.kpi-card{padding-top:calc(var(--space-5) + 6px)}.kpi-card:before{content:"";top:var(--space-5);left:var(--space-5);background:var(--accent);width:26px;height:2px;position:absolute}.kpi-label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);margin-bottom:var(--space-2);font-weight:500}.kpi-value{font-size:var(--text-xl);letter-spacing:var(--tracking-tight);font-weight:700;line-height:var(--leading-tight);color:var(--fg)}.kpi-value--accent{color:var(--accent)}.kpi-unit{font-size:var(--text-sm);color:var(--fg-3);margin-left:4px;font-weight:400}.kpi-sub{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--fg-3);font-family:var(--font-mono);display:block}.vehicle-list{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.vehicle-card{cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}.vehicle-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.vehicle-card-name{font-size:var(--text-lg);letter-spacing:var(--tracking-tight);color:var(--fg);font-weight:700}.vehicle-card-meta{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--fg-3);margin-top:4px}.vehicle-kpi-row{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border);margin-top:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.vehicle-kpi-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);margin-bottom:4px;font-size:10px}.vehicle-kpi-value{font-size:var(--text-md);letter-spacing:var(--tracking-tight);color:var(--fg);font-weight:700}.vehicle-kpi-value--accent{color:var(--accent)}.badge{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-pill);border:1px solid;align-items:center;padding:5px 10px;font-size:10px;font-weight:500;display:inline-flex}.badge--active{color:var(--c-lime);border-color:color-mix(in srgb, var(--c-lime) 45%, transparent)}.badge--ended{color:var(--fg-3);border-color:var(--border-strong)}.me-btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-height);font-family:var(--font-sans);font-size:var(--text-sm);border-radius:var(--control-radius);cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), transform var(--transition-fast);border:1px solid #0000;padding:0 20px;font-weight:600;display:inline-flex}.me-btn:active:not(:disabled){transform:scale(.98)}.me-btn:disabled{opacity:.45;cursor:not-allowed}.me-btn--primary{background:var(--accent);color:var(--on-accent)}.me-btn--primary:hover:not(:disabled){background:var(--accent-strong)}.me-btn--secondary{color:var(--fg);border-color:var(--border-strong);background:0 0}.me-btn--secondary:hover:not(:disabled){background:var(--bg-hover)}.me-btn--ghost{color:var(--fg-2);background:0 0;border-color:#0000}.me-btn--ghost:hover:not(:disabled){color:var(--fg);background:var(--bg-hover)}.me-btn--danger{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 50%, transparent);background:0 0}.me-btn--danger:hover:not(:disabled){background:color-mix(in srgb, var(--danger) 12%, transparent)}.me-btn--sm{min-height:2.125rem;font-size:var(--text-xs);padding:0 14px}.me-btn--icon{width:var(--control-height);height:var(--control-height);min-height:var(--control-height);border-radius:var(--radius-pill);padding:0}.me-btn--icon-sm{border-radius:var(--radius-pill);width:2.125rem;height:2.125rem;min-height:2.125rem;padding:0}.me-control{width:100%;min-height:var(--control-height);border:1px solid var(--border);border-radius:var(--control-radius);padding:0 var(--control-padding-x);font-size:var(--text-sm);background:var(--bg-sunken);color:var(--fg);transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}.me-control::placeholder{color:var(--fg-3)}.me-control:hover:not(:disabled):not(:focus-visible){border-color:var(--border-strong)}.me-control:focus-visible{border-color:var(--accent);box-shadow:var(--ring);outline:none}.me-control:disabled{opacity:.45;cursor:not-allowed}.form-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid label{gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--fg-3);font-weight:500;display:grid}.col-span-2{grid-column:span 2}.col-span-full{grid-column:1/-1}.form-actions{margin-top:var(--space-4);justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.form-actions--between{justify-content:space-between}.form-section{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border)}.form-section-label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);margin-bottom:var(--space-3);font-weight:500}.table-card{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-md);overflow:auto}.table-card-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);display:flex}.table-card-title{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);font-weight:500}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);font-size:var(--text-sm)}th{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);background:var(--bg-sunken);font-weight:500}tr:last-child td{border-bottom:none}.num{text-align:right;font-family:var(--font-mono)}.table-row-clickable{cursor:pointer}.table-row-clickable:hover{background:var(--bg-hover)}.row-actions{align-items:center;gap:var(--space-1);display:inline-flex}.modal-overlay{z-index:50;padding:var(--space-4);background:#0000008c;place-items:center;display:grid;position:fixed;inset:0}.modal{width:min(620px,100%);max-height:calc(100vh - var(--space-8));background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-lg);overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border);display:flex}.modal-header h2{font-size:var(--text-lg);letter-spacing:var(--tracking-tight);font-weight:700}.section-header{justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.section-header h2{font-size:var(--text-lg);letter-spacing:var(--tracking-tight);font-weight:700}.back-link{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--fg-2);margin-bottom:var(--space-5);transition:color var(--transition-fast);cursor:pointer;background:0 0;border:none;padding:0;font-weight:500;display:inline-flex}.back-link:hover{color:var(--fg)}.back-link svg{stroke-width:2px;width:1rem;height:1rem}.cost-breakdown{gap:var(--space-2);margin-top:var(--space-3);flex-direction:column;display:flex}.cost-breakdown-row{justify-content:space-between;align-items:baseline;gap:var(--space-3);font-size:var(--text-sm);color:var(--fg-2);display:flex}.cost-breakdown-row--total{color:var(--fg);padding-top:var(--space-2);border-top:1px solid var(--border);margin-top:var(--space-1);font-weight:600}.cost-breakdown-row--accent{color:var(--accent);font-weight:700}.detail-layout{gap:var(--space-5);grid-template-columns:minmax(0,1fr) 300px;align-items:start;display:grid}.detail-sidebar{gap:var(--space-4);flex-direction:column;display:flex;position:sticky;top:72px}.empty-state{padding:var(--space-7) var(--space-5);text-align:center;color:var(--fg-3)}.empty-state p{font-size:var(--text-sm);margin-top:var(--space-2)}.divider{border:none;border-top:1px solid var(--border);margin:0}.text-muted{color:var(--fg-3);font-size:var(--text-sm)}.text-danger{color:var(--danger)}.card-summary{justify-content:space-between;align-items:baseline;gap:var(--space-3);font-size:var(--text-sm);color:var(--fg-2);padding:var(--space-2) 0;display:flex}.card-summary+.card-summary{border-top:1px solid var(--border)}@media (max-width:1024px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-layout{grid-template-columns:1fr}.detail-sidebar{position:static}}@media (max-width:768px){.app-shell{flex-direction:column}.sidebar{border-right:none;border-bottom:1px solid var(--border);width:100%;height:auto;position:static}.form-grid,.form-grid--3{grid-template-columns:1fr}.col-span-2,.col-span-full{grid-column:span 1}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-content{padding:var(--space-4)}.topbar{padding:var(--space-3) var(--space-4)}.vehicle-list{grid-template-columns:1fr}}
