:root{--color-bg:#f4f5f7;--color-surface:#fff;--color-surface-muted:#f8f9fb;--color-border:#d9dee7;--color-border-strong:#c3cad6;--color-text:#1a2332;--color-text-muted:#5b6678;--color-text-subtle:#7a8698;--color-accent:#1f6feb;--color-accent-hover:#1758c2;--color-accent-soft:#e8f1ff;--color-success:#157a4b;--color-success-soft:#e8f6ef;--color-warning:#9a6700;--color-warning-soft:#fff6df;--color-danger:#b42318;--color-danger-soft:#fdecec;--color-info:#175cd3;--color-info-soft:#edf4ff;--floteno-bg:var(--color-bg);--floteno-surface:var(--color-surface);--floteno-surface-muted:var(--color-surface-muted);--floteno-border:var(--color-border);--floteno-text:var(--color-text);--floteno-text-muted:var(--color-text-muted);--floteno-muted:var(--color-text-muted);--floteno-accent:var(--color-accent);--floteno-danger:var(--color-danger);--floteno-danger-bg:var(--color-danger-soft);--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--font-page-title:clamp(1.5rem, 2.5vw, 1.875rem);--font-section-title:1.0625rem;--font-body:.9375rem;--font-small:.8125rem;--font-label:.875rem;--font-metric:1.75rem;--shadow-sm:0 1px 2px #1018280f;--shadow-md:0 4px 12px #10182814;--layout-narrow:43.75rem;--layout-standard:65.625rem;--layout-wide:78.125rem;--sidebar-width:15.5rem}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--color-bg);min-height:100dvh;color:var(--color-text);font-family:Segoe UI,system-ui,-apple-system,Roboto,Helvetica Neue,Arial,sans-serif;font-size:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.5}body.mobile-nav-open{overflow:hidden}a{color:var(--color-accent)}a:hover{color:var(--color-accent-hover)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page{min-height:100dvh;padding:var(--space-8) var(--space-5);place-items:center;display:grid}.card{width:min(var(--layout-narrow), 100%);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:clamp(var(--space-6), 4vw, var(--space-8));box-shadow:var(--shadow-sm)}.auth-shell{width:min(var(--layout-narrow), 100%);gap:var(--space-5);justify-items:center;display:grid}.auth-brand{justify-items:center;gap:var(--space-1);display:grid}.auth-brand-name{letter-spacing:-.02em;font-size:1.75rem;font-weight:700}.auth-brand-tagline{color:var(--color-text-muted);font-size:var(--font-body)}.auth-environment{color:var(--color-text-muted);font-size:var(--font-small);margin:0}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.app-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) clamp(var(--space-4), 4vw, var(--space-8));border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-wrap:wrap;display:flex}.app-brand{letter-spacing:-.01em;color:var(--color-text);font-size:1.125rem;font-weight:700;text-decoration:none}.app-header-actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.app-user{color:var(--color-text-muted);font-size:var(--font-label)}.app-main{padding:clamp(var(--space-6), 5vw, var(--space-8)) var(--space-5);flex:1;place-items:start center;display:grid}.app-main:has(>.company-shell){padding:0;display:block}.app-shell:has(.company-shell) .app-header{display:none}.app-shell:has(.company-shell){min-height:100dvh}.company-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);width:100%;min-height:100dvh;display:grid}.company-sidebar{gap:var(--space-6);border-right:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;align-self:start;height:100dvh;min-height:100dvh;padding:1.75rem 1.125rem 0;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand-block{padding:0 var(--space-2) var(--space-5);border-bottom:1px solid var(--color-border);gap:.1875rem;display:grid}.sidebar-brand{align-items:center;gap:var(--space-2);margin:0 0 var(--space-4);letter-spacing:-.035em;font-size:1.25rem;font-weight:750;display:flex}.sidebar-brand:before{content:"";background:var(--color-accent);border-radius:.1875rem;width:.625rem;height:1.125rem}.sidebar-company{margin:0;font-weight:600;line-height:1.35}.sidebar-role{color:var(--color-text-muted);font-size:var(--font-small);margin:0}.sidebar-nav{gap:1.375rem;display:grid}.sidebar-nav-section-label{margin:0 0 var(--space-1);padding-inline:var(--space-2);color:var(--color-text-subtle);font-size:var(--font-small);letter-spacing:.09em;text-transform:uppercase;font-weight:600}.sidebar-nav-list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.sidebar-nav-link{min-height:2.375rem;color:var(--color-text-muted);border-left:2px solid #0000;border-radius:0;align-items:center;gap:.6875rem;padding:.4375rem .625rem .4375rem calc(.625rem - 2px);font-weight:500;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s;display:flex}.sidebar-nav-icon{width:1.0625rem;height:1.0625rem;color:var(--color-text-subtle);flex:none}.sidebar-nav-link:hover{background:var(--color-surface-muted);color:var(--color-text)}.sidebar-nav-link:focus-visible{outline:2px solid color-mix(in srgb, var(--color-accent) 45%, transparent);outline-offset:1px}.sidebar-nav-link-active{background:color-mix(in srgb, var(--color-accent) 5%, var(--color-surface));border-left-color:var(--color-accent);color:var(--color-text);box-shadow:none;font-weight:600}.sidebar-nav-link-active:hover{background:color-mix(in srgb, var(--color-accent) 7%, var(--color-surface));color:var(--color-text)}.sidebar-nav-link-active .sidebar-nav-icon{color:var(--color-accent)}.sidebar-account-footer{gap:var(--space-2);margin-top:auto;margin-inline:calc(var(--space-2) * -1);padding:var(--space-4) var(--space-4) var(--space-5);border-top:1px solid var(--color-border);background:color-mix(in srgb, var(--color-surface-muted) 55%, var(--color-surface));display:grid}.sidebar-account-label{color:var(--color-text-subtle);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.6875rem;font-weight:600}.sidebar-account-email{color:var(--color-text);font-size:var(--font-small);overflow-wrap:anywhere;margin:0;font-weight:500;line-height:1.4}.sidebar-account-footer .button{margin-top:var(--space-1);min-height:2.25rem;font-size:var(--font-small);background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text);justify-self:start;padding:.4375rem .875rem;font-weight:500}.sidebar-account-footer .button:hover:not(:disabled){background:var(--color-surface-muted);color:var(--color-text)}.mobile-drawer-account{margin-top:auto;margin-inline:calc(var(--space-4) * -1);margin-bottom:calc(var(--space-4) * -1)}.company-workspace{background:var(--color-bg);flex-direction:column;min-width:0;display:flex}.company-topbar{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface);display:none}.company-topbar-context{flex:1;min-width:0}.company-topbar-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.company-topbar-user{text-overflow:ellipsis;white-space:nowrap;max-width:10rem;color:var(--color-text-muted);font-size:var(--font-small);display:none;overflow:hidden}.company-topbar-actions .button{min-height:2.25rem;font-size:var(--font-small);padding:.4375rem .75rem;font-weight:500}.company-topbar-eyebrow{color:var(--color-text-subtle);font-size:var(--font-small);text-transform:uppercase;letter-spacing:.06em;margin:0}.company-topbar-title{white-space:nowrap;text-overflow:ellipsis;margin:0;font-weight:600;overflow:hidden}.company-main{flex:1;min-width:0;padding:clamp(1.5rem,3vw,2.5rem)}.workspace-page{gap:var(--space-6);width:min(var(--layout-wide), 100%);margin-inline:auto;display:grid}.workspace-page-standard{width:min(var(--layout-standard), 100%)}.workspace-page-narrow{width:min(var(--layout-narrow), 100%)}.workspace-page>.page-header{margin-bottom:0}.workspace-section{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-width:0;padding:var(--space-4) var(--space-5)}.workspace-section.dashboard-section{padding:var(--space-5)}.workspace-section-note{color:var(--color-text-muted);font-size:var(--font-small);margin:0}.dashboard-workspace,.vehicles-workspace{gap:var(--space-5)}.vehicles-workspace,.vehicle-workspace{overflow-x:clip}.dashboard-workspace{--dashboard-chart-1:var(--color-accent);--dashboard-chart-2:var(--color-success);--dashboard-chart-3:#5b4aa8;--dashboard-chart-4:#c2410c;gap:var(--space-4)}.dashboard-workspace>.page-header{align-items:center}.dashboard-add-vehicle{align-items:center;gap:.4rem;display:inline-flex}.dashboard-add-vehicle svg{width:1rem;height:1rem}.dashboard-ops-grid,.dashboard-lower-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;display:grid}.dashboard-lower-grid:not(:has(.dashboard-panel+.dashboard-panel)){grid-template-columns:minmax(0,1fr)}.dashboard-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;min-width:0;padding:0;display:flex;overflow:hidden}.dashboard-panel-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:.875rem 1.1rem .65rem;display:flex}.dashboard-panel-title{color:var(--color-text-subtle);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.6875rem;font-weight:700}.dashboard-count-badge{background:var(--color-danger);color:#fff;font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;min-width:1.25rem;height:1.25rem;padding:0 .3rem;font-size:.6875rem;font-weight:700;line-height:1;display:inline-grid}.dashboard-panel-header-icon{color:var(--color-text-subtle)}.dashboard-panel-header-icon svg{width:1rem;height:1rem;display:block}.dashboard-row-list{margin:0;padding:0;list-style:none}.dashboard-attention-row,.dashboard-upcoming-row,.dashboard-activity-row{border-top:1px solid var(--color-border);min-height:3.35rem;color:inherit;align-items:center;gap:.75rem;padding:.55rem 1.1rem;text-decoration:none;display:grid}.dashboard-attention-row{grid-template-columns:auto auto minmax(7.5rem,.9fr) minmax(0,1.4fr) auto auto}.dashboard-upcoming-row{grid-template-columns:minmax(7.25rem,auto) minmax(4.5rem,.7fr) minmax(0,1fr) auto}.dashboard-activity-row{grid-template-columns:auto minmax(0,1.2fr) auto auto}.dashboard-attention-row:hover,.dashboard-upcoming-row:hover,.dashboard-activity-row:hover{background:var(--color-surface-muted)}.dashboard-severity-dot{background:var(--color-text-subtle);border-radius:999px;width:.5rem;height:.5rem}.dashboard-severity-due{background:var(--color-danger)}.dashboard-severity-due_soon{background:var(--color-warning)}.dashboard-vehicle-mark{border-radius:var(--radius-sm);background:var(--color-surface-muted);width:2rem;height:2rem;color:var(--color-text-muted);place-items:center;display:grid}.dashboard-vehicle-mark svg,.dashboard-row-chevron svg,.dashboard-activity-icon svg{width:1rem;height:1rem;display:block}.dashboard-attention-identity,.dashboard-activity-copy{gap:.05rem;min-width:0;display:grid}.dashboard-attention-name,.dashboard-activity-title,.dashboard-upcoming-vehicle{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.dashboard-attention-plate,.dashboard-activity-vehicle,.dashboard-upcoming-type{color:var(--color-text-muted);font-size:var(--font-small);font-variant-numeric:tabular-nums;letter-spacing:.02em}.dashboard-attention-issue{color:var(--color-text-muted);font-size:var(--font-small);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-row-chevron{color:var(--color-text-subtle)}.dashboard-pill .status-badge{letter-spacing:.05em;text-transform:uppercase;padding:.1rem .45rem;font-size:.625rem}.dashboard-upcoming-date{color:var(--color-text-muted);font-size:var(--font-small);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:.4rem;display:inline-flex}.dashboard-upcoming-date svg{width:.875rem;height:.875rem}.dashboard-upcoming-type{color:var(--color-text);font-weight:600}.dashboard-panel-empty{border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-small);margin:0;padding:.85rem 1.1rem 1rem}.dashboard-panel-footer{border-top:1px solid var(--color-border);margin-top:auto;padding:.65rem 1.1rem .8rem}.dashboard-panel-footer a{color:var(--color-accent);font-size:var(--font-small);align-items:center;gap:.2rem;font-weight:600;text-decoration:none;display:inline-flex}.dashboard-panel-footer svg{width:.875rem;height:.875rem}.dashboard-kpi-strip{gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.dashboard-kpi-strip:not(:has(.dashboard-kpi:nth-child(4))){grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-kpi{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.85rem;min-height:5.5rem;padding:.9rem 1rem;display:grid}.dashboard-kpi-icon{border-radius:999px;place-items:center;width:2.35rem;height:2.35rem;display:grid}.dashboard-kpi-icon svg{width:1.15rem;height:1.15rem}.dashboard-kpi-accent .dashboard-kpi-icon{background:var(--color-accent-soft);color:var(--color-accent)}.dashboard-kpi-warning .dashboard-kpi-icon{background:var(--color-warning-soft);color:var(--color-warning)}.dashboard-kpi-success .dashboard-kpi-icon{background:var(--color-success-soft);color:var(--color-success)}.dashboard-kpi-purple .dashboard-kpi-icon{background:color-mix(in srgb, var(--dashboard-chart-3) 14%, white);color:var(--dashboard-chart-3)}.dashboard-kpi-copy{min-width:0}.dashboard-kpi-value,.dashboard-activity-amount,.dashboard-activity-when,.dashboard-cost-amount,.dashboard-cost-share{font-variant-numeric:tabular-nums}.dashboard-kpi-value{letter-spacing:-.03em;margin:0;font-size:1.375rem;font-weight:700;line-height:1.15}.dashboard-kpi-label,.dashboard-kpi-detail{color:var(--color-text-muted);font-size:var(--font-small);margin:.15rem 0 0}.dashboard-activity-icon{border-radius:var(--radius-sm);place-items:center;width:2rem;height:2rem;display:grid}.dashboard-activity-icon-expense{background:var(--color-accent-soft);color:var(--color-accent)}.dashboard-activity-icon-mileage{background:color-mix(in srgb, var(--dashboard-chart-3) 14%, white);color:var(--dashboard-chart-3)}.dashboard-activity-when{color:var(--color-text-muted);font-size:var(--font-small);white-space:nowrap}.dashboard-activity-amount{font-size:var(--font-small);white-space:nowrap;font-weight:600}.dashboard-costs-body{border-top:1px solid var(--color-border);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1.25rem;padding:.35rem 1.1rem 1rem;display:grid}.dashboard-donut{width:7.25rem;height:7.25rem}.dashboard-donut-track,.dashboard-donut-slice{fill:none;stroke-width:12px;transform-origin:48px 48px;transform:rotate(-90deg)}.dashboard-donut-track{stroke:var(--color-border)}.dashboard-donut-slice-0{stroke:var(--dashboard-chart-1);background:var(--dashboard-chart-1)}.dashboard-donut-slice-1{stroke:var(--dashboard-chart-2);background:var(--dashboard-chart-2)}.dashboard-donut-slice-2{stroke:var(--dashboard-chart-3);background:var(--dashboard-chart-3)}.dashboard-donut-slice-3{stroke:var(--dashboard-chart-4);background:var(--dashboard-chart-4)}.dashboard-cost-legend{border-collapse:collapse;width:100%}.dashboard-cost-legend th,.dashboard-cost-legend td{font-size:var(--font-small);text-align:left;padding:.35rem 0}.dashboard-cost-legend th{align-items:center;gap:.5rem;font-weight:500;display:flex}.dashboard-cost-swatch{border-radius:999px;width:.5rem;height:.5rem}.dashboard-cost-amount,.dashboard-cost-share{text-align:right;white-space:nowrap}.dashboard-cost-share{color:var(--color-text-muted);padding-inline-start:.75rem}.filter-nav{gap:var(--space-1);border-bottom:1px solid var(--color-border);flex-wrap:wrap;margin-bottom:0;display:flex}.filter-nav-link{min-height:2.5rem;color:var(--color-text-muted);font-size:var(--font-label);border-bottom:2px solid #0000;align-items:center;margin-bottom:-1px;padding:.5rem .875rem;font-weight:500;text-decoration:none;display:inline-flex}.filter-nav-link:hover{color:var(--color-text)}.filter-nav-link-active{border-bottom-color:var(--color-accent);color:var(--color-text);font-weight:600}.empty-state-onboarding{gap:var(--space-4);width:100%;max-width:40rem;min-height:11.875rem;max-height:13.75rem;padding:var(--space-4) var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);text-align:left;grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.empty-state-onboarding:before{display:none}.empty-state-icon{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);width:2.5rem;height:2.5rem;color:var(--color-accent);flex-shrink:0;place-items:center;display:grid}.empty-state-icon svg{width:1.25rem;height:1.25rem}.empty-state-copy{gap:var(--space-2);align-content:center;min-width:0;display:grid}.empty-state-onboarding .empty-state-title{letter-spacing:-.015em;margin:0;font-size:1.0625rem;font-weight:600;line-height:1.3}.empty-state-onboarding .empty-state-description{max-width:32rem;color:var(--color-text-muted);font-size:var(--font-small);margin:0;line-height:1.45}.empty-state-onboarding .empty-state-actions{margin-top:var(--space-1);justify-content:flex-start}.vehicles-workspace .vehicle-table.workspace-section{padding:0;overflow:hidden}.vehicles-workspace .vehicle-table .vehicle-list-item{background:0 0;border:0;border-radius:0}.mobile-nav-toggle,.mobile-nav-backdrop,.mobile-nav-drawer{display:none}.mobile-nav-toggle{justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:2.5rem;color:var(--color-text);font:inherit;padding:.5rem .75rem;font-weight:600}.mobile-nav-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:1.125rem;height:1.125rem}.surface{background:var(--color-surface);border:1px solid var(--color-border);padding:clamp(var(--space-5), 2.5vw, var(--space-8));box-shadow:var(--shadow-sm);border-radius:.625rem}.surface-standard{width:min(var(--layout-standard), 100%);margin-inline:auto}.surface-wide{width:min(var(--layout-wide), 100%);margin-inline:auto}.surface-narrow{width:min(var(--layout-narrow), 100%);margin-inline:auto}.page-header,.dashboard-header,.vehicle-details-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.page-header-main{min-width:0}.page-eyebrow,.home-eyebrow{color:var(--color-text-subtle);font-size:var(--font-small);letter-spacing:.08em;text-transform:uppercase;margin:0}.page-title,.form-title,.home-company{font-size:var(--font-page-title);letter-spacing:-.035em;margin:0;line-height:1.2}.page-description,.form-intro,.home-lead{margin:var(--space-2) 0 0;color:var(--color-text-muted)}.page-header-actions,.dashboard-actions,.section-header-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.section-header{justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.section-title{font-size:var(--font-section-title);margin:0;font-weight:600}.section-description{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--font-small)}.form{gap:var(--space-4);display:grid}.field,.field-inline{gap:var(--space-2);display:grid}.field-label{font-size:var(--font-label);color:var(--color-text);font-weight:500}.field-input,.switcher-select,textarea.field-input{background:var(--color-surface);width:100%;color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);font:inherit;padding:.625rem .75rem}.field-input:focus-visible,.switcher-select:focus-visible{border-color:var(--color-accent)}.field-input:disabled,.switcher-select:disabled{background:var(--color-surface-muted);color:var(--color-text-muted);cursor:not-allowed}.field-hint{color:var(--color-text-muted);font-size:var(--font-small)}.field-error,.form-error{color:var(--color-danger);font-size:var(--font-label);margin:0}.form-error{padding:var(--space-3);border:1px solid color-mix(in srgb, var(--color-danger) 35%, white);border-radius:var(--radius-md);background:var(--color-danger-soft)}.form-success{padding:var(--space-3);border:1px solid color-mix(in srgb, var(--color-success) 35%, white);border-radius:var(--radius-md);background:var(--color-success-soft);color:var(--color-success);font-size:var(--font-label);margin:0}.form-footer,.home-note{margin:var(--space-4) 0 0;color:var(--color-text-muted);font-size:var(--font-label)}.auth-form-divider{align-items:center;gap:var(--space-3);margin:var(--space-4) 0;color:var(--color-text-muted);font-size:var(--font-label);display:flex}.auth-form-divider:before,.auth-form-divider:after{content:"";background:var(--color-border);flex:1;height:1px}.form-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));display:grid}.form-actions,.action-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.field-readonly{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);margin:0;padding:.625rem .75rem}.button{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);font:inherit;font-weight:600;font-size:var(--font-label);background:var(--color-accent);color:#fff;cursor:pointer;border:1px solid #0000;min-height:2.5rem;padding:.625rem 1rem;line-height:1.2;text-decoration:none;display:inline-flex}.button:hover:not(:disabled){background:var(--color-accent-hover);color:#fff}.button:disabled{opacity:.55;cursor:not-allowed}.button-secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.button-secondary:hover:not(:disabled){background:var(--color-surface-muted);color:var(--color-text)}.button-ghost{border-color:var(--color-border);color:var(--color-text);background:0 0;padding:.5rem .75rem;font-weight:500}.button-ghost:hover:not(:disabled){background:var(--color-surface-muted);color:var(--color-text)}.button-danger{background:var(--color-danger);color:#fff}.button-danger:hover:not(:disabled){filter:brightness(.95);color:#fff}.status-badge{font-size:var(--font-small);border:1px solid #0000;border-radius:999px;align-items:center;padding:.125rem .5rem;font-weight:600;line-height:1.4;display:inline-flex}.status-badge-neutral{background:var(--color-surface-muted);color:var(--color-text-muted);border-color:var(--color-border)}.status-badge-success{background:var(--color-success-soft);color:var(--color-success)}.status-badge-warning{background:var(--color-warning-soft);color:var(--color-warning)}.status-badge-danger{background:var(--color-danger-soft);color:var(--color-danger)}.status-badge-info{background:var(--color-info-soft);color:var(--color-info)}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:var(--font-label)}.data-table caption{text-align:left;margin-bottom:var(--space-2);color:var(--color-text-muted)}.data-table th,.data-table td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:.75rem .875rem}.data-table th{color:var(--color-text-muted);font-size:var(--font-small);background:var(--color-surface-muted);font-weight:600}.data-table tbody tr:hover{background:color-mix(in srgb, var(--color-accent-soft) 35%, white)}.data-table .numeric{text-align:right;font-variant-numeric:tabular-nums}.empty-state,.error-state,.loading-state{padding:var(--space-6);border-radius:var(--radius-md);background:var(--color-surface-muted);text-align:center;border:0}.empty-state-compact{padding-block:clamp(var(--space-6), 5vw, 2.5rem)}.empty-state-full{min-height:20rem;padding:clamp(2.5rem, 7vw, 5rem) clamp(var(--space-5), 6vw, 4rem);background:var(--color-surface-muted);align-content:center;justify-items:center;display:grid;position:relative}.empty-state-full:before{content:"";background:var(--color-accent);border-radius:999px;width:3rem;height:.1875rem;position:absolute;top:0}.empty-state-full .empty-state-title{letter-spacing:-.02em;font-size:clamp(1.25rem,3vw,1.5rem)}.empty-state-full .empty-state-description{max-width:35rem}.empty-state-title,.error-state-title{font-size:var(--font-section-title);margin:0}.empty-state-description,.error-state-description,.loading-state p{margin:var(--space-2) 0 0;color:var(--color-text-muted)}.empty-state-actions,.error-state-actions{margin-top:var(--space-4);justify-content:center;display:flex}.loading-state-spinner{width:1.25rem;height:1.25rem;margin:0 auto var(--space-2);border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.inline-notice{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);font-size:var(--font-label)}.inline-notice-info{background:var(--color-info-soft);border-color:color-mix(in srgb, var(--color-info) 25%, white)}.inline-notice-success{background:var(--color-success-soft)}.inline-notice-warning{background:var(--color-warning-soft)}.inline-notice-danger{background:var(--color-danger-soft)}.metric-card,.dashboard-summary-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);background:var(--color-surface)}.metric-card-label,.dashboard-summary-card h2{color:var(--color-text-muted);font-size:var(--font-small);margin:0;font-weight:600}.metric-card-value,.dashboard-summary-value{margin:var(--space-2) 0 0;font-size:var(--font-metric);font-weight:700;line-height:1.1}.metric-card-detail,.dashboard-summary-detail{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--font-small)}.filter-bar{gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.filter-chip,.filter-tab{border:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-label);background:var(--color-surface);border-radius:999px;padding:.375rem .75rem;text-decoration:none}.filter-chip-active,.filter-chip:hover,.filter-tab-active,.filter-tab:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-soft)}.company-list,.vehicle-list,.dashboard-attention-list,.dashboard-fleet-list,.mileage-history-list,.service-schedule-list,.deadline-list,.service-event-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.company-list-item,.vehicle-list-item,.dashboard-attention-item,.dashboard-fleet-item,.mileage-history-item,.service-schedule-item,.deadline-item,.service-event-item{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.company-list-item,.vehicle-list-item{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--color-text);padding:.875rem 1rem;text-decoration:none;display:flex}.company-list-item:hover,.vehicle-list-item:hover{border-color:var(--color-accent)}.company-list-name,.vehicle-registration,.dashboard-attention-vehicle,.dashboard-fleet-registration{font-weight:700}.company-list-role,.vehicle-make-model,.vehicle-list-meta,.dashboard-attention-meta,.dashboard-attention-detail,.dashboard-fleet-meta,.service-schedule-meta,.deadline-meta,.service-event-meta{color:var(--color-text-muted);font-size:var(--font-label)}.vehicle-status{display:inline-flex}.vehicle-list-primary{gap:var(--space-1);display:grid}.vehicle-list-meta{gap:var(--space-3);flex-wrap:wrap;display:flex}.vehicle-registration-large{margin:var(--space-2) 0;letter-spacing:.04em;font-size:clamp(1.75rem,4vw,2.25rem)}.vehicle-make-model-large{color:var(--color-text-muted);margin:0}.detail-list{gap:var(--space-3);margin:0 0 var(--space-6);display:grid}.detail-list div{gap:var(--space-1);display:grid}.detail-list dt{color:var(--color-text-muted);font-size:var(--font-small)}.detail-list dd{margin:0}.dashboard{gap:1.75rem;display:grid}.dashboard-summary-grid{border-block:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid}.dashboard-summary-grid .metric-card{background:0 0;border:0;border-radius:0;min-width:0;padding:1rem 1.25rem}.dashboard-summary-grid .metric-card+.metric-card{border-inline-start:1px solid var(--color-border)}.dashboard-summary-grid .metric-card:first-child{padding-inline-start:0}.dashboard-summary-grid .metric-card:last-child{padding-inline-end:0}.dashboard-section{gap:var(--space-3);display:grid}.dashboard-section .section-header{margin-bottom:0}.dashboard-section:first-of-type .section-title{letter-spacing:-.02em;font-size:1.25rem}.dashboard-attention-item,.dashboard-fleet-item{gap:var(--space-4);border:0;border-bottom:1px solid var(--color-border);border-radius:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;padding:.875rem 0;display:grid}.dashboard-attention-list,.dashboard-fleet-list{border-top:1px solid var(--color-border);gap:0}.dashboard-attention-main{align-items:center;gap:var(--space-4);grid-template-columns:minmax(6.5rem,.32fr) minmax(0,1fr);min-width:0;display:grid}.dashboard-attention-copy{min-width:0}.dashboard-attention-title{margin:0;font-weight:600}.dashboard-attention-vehicle{font-variant-numeric:tabular-nums;letter-spacing:.02em;margin:0}.dashboard-attention-detail{margin:var(--space-1) 0 0}.dashboard-attention-urgency{white-space:nowrap}.admin-form{gap:var(--space-4);max-width:38rem;display:grid}.admin-add-member-form{gap:var(--space-4);max-width:42rem;display:grid}.admin-add-member-fields{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(9rem,.55fr);display:grid}.members-table{border-top:1px solid var(--color-border);min-width:0}.members-table-header,.member-row{gap:var(--space-3) var(--space-4);align-items:center;display:grid}.members-table-header{color:var(--color-text-subtle);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border);font-size:var(--font-small);padding:.625rem 1rem;font-weight:600}.members-table-header,.member-row{grid-template-columns:minmax(10rem,1.15fr) minmax(10rem,1.15fr) minmax(6rem,.55fr) minmax(6.5rem,.6fr) minmax(5.5rem,.5fr)}.members-table-manageable .members-table-header,.member-row-manageable{grid-template-columns:minmax(10rem,1.05fr) minmax(10rem,1.05fr) minmax(6rem,.5fr) minmax(6.5rem,.55fr) minmax(5.5rem,.45fr) minmax(11rem,.9fr)}.members-list{margin:0;padding:0;list-style:none}.member-row{border-bottom:1px solid var(--color-border);padding:.875rem 1rem}.member-primary{gap:var(--space-1);min-width:0;display:grid}.member-name{font-weight:600}.member-email{color:var(--color-text-muted);font-size:var(--font-small);overflow-wrap:anywhere}.member-role,.member-joined{font-size:var(--font-small)}.member-mobile-label,.member-mobile-only{display:none}.member-actions-cell{min-width:0}.member-role-control{width:100%;max-width:11rem}.member-role-control .field-input{width:100%}.member-actions-empty,.member-actions-note{color:var(--color-text-subtle);font-size:var(--font-small)}.member-action-danger{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 28%, var(--color-border))}.member-action-danger:hover:not(:disabled){background:color-mix(in srgb, var(--color-danger) 8%, transparent);color:var(--color-danger)}.mileage-history-item{padding:var(--space-4)}.mileage-history-item-superseded{opacity:.72;background:var(--color-surface-muted)}.mileage-history-row{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(5rem,1fr));align-items:center;display:grid}.mileage-history-km{font-weight:600}.mileage-correction-form{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px dashed var(--color-border);gap:var(--space-2);display:grid}.mileage-correction-form .button{justify-self:start}.service-schedule-item,.deadline-item,.service-event-item{padding:var(--space-4)}.service-schedule-due,.deadline-due{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));display:grid}.deadline-row,.service-schedule-row{justify-content:space-between;gap:var(--space-4);align-items:flex-start;display:flex}.deadline-actions,.service-actions{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.service-complete-section,.service-history-section,.vehicle-status-actions,.vehicle-placeholder-section,.vehicle-module-links{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-border)}.switcher{align-items:center;gap:var(--space-2);display:flex}.switcher-label{color:var(--color-text-muted);font-size:var(--font-small)}.monthly-mileage-list{min-width:0}.operational-form{max-width:38rem}.operational-form .form-actions{margin-top:var(--space-2)}.financial-workspace,.ocr-workspace,.report-workspace,.form-workspace{gap:var(--space-4);overflow-x:clip}.financial-workspace-add{align-items:center;gap:.4rem;display:inline-flex}.financial-workspace-add svg{width:1rem;height:1rem}.ledger-summary,.report-metric-strip{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;display:grid;overflow:hidden}.report-metric-strip{grid-template-columns:repeat(4,minmax(0,1fr))}.ledger-summary>div,.report-metric-strip>div{min-width:0;padding:.85rem 1.1rem}.ledger-summary>div+div,.report-metric-strip>div+div{border-left:1px solid var(--color-border)}.ledger-summary-label,.report-metric-label{color:var(--color-text-subtle);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.6875rem;font-weight:700}.ledger-summary-value,.report-metric-value{letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:.25rem 0 0;font-size:1.25rem;font-weight:700;line-height:1.15}.ledger-summary-value-text{letter-spacing:-.02em;font-size:1.0625rem}.ledger-summary-detail{color:var(--color-text-muted);font-size:var(--font-small);margin:.15rem 0 0}.ledger-table-header,.ledger-table-row{align-items:center;gap:.75rem;display:grid}.ledger-table-expenses .ledger-table-header,.ledger-table-expenses .ledger-table-row{grid-template-columns:minmax(6.25rem,.55fr) minmax(6.5rem,.65fr) minmax(6.25rem,.55fr) minmax(0,1.45fr) minmax(7.25rem,.7fr) 1.25rem 1.15rem}.ledger-table-documents .ledger-table-header,.ledger-table-documents .ledger-table-row{grid-template-columns:minmax(8rem,.85fr) minmax(0,1.5fr) minmax(6.5rem,.65fr) minmax(7rem,.7fr) minmax(8rem,.75fr) 1.15rem}.ledger-table-header{color:var(--color-text-subtle);background:var(--color-surface-muted);font-size:var(--font-small);padding:.55rem 1.1rem;font-weight:600}.ledger-table-list{margin:0;padding:0;list-style:none}.ledger-table-list li+li .ledger-table-row{border-top:1px solid var(--color-border)}.ledger-table-row{min-height:3.35rem;color:inherit;padding:.55rem 1.1rem;text-decoration:none}.ledger-table-row:hover,.ledger-table-row:focus-visible,.ledger-linked-row:hover,.ledger-linked-row:focus-visible{background:var(--color-surface-muted)}.ledger-date,.ledger-vehicle,.ledger-category{min-width:0;color:var(--color-text-muted);font-size:var(--font-small);font-variant-numeric:tabular-nums}.ledger-vehicle{letter-spacing:.04em;color:var(--color-text);font-weight:600}.ledger-copy{gap:.05rem;min-width:0;display:grid}.ledger-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.ledger-secondary{color:var(--color-text-muted);font-size:var(--font-small);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ledger-amount{color:var(--color-text);font-variant-numeric:tabular-nums;letter-spacing:-.02em;text-align:right;white-space:nowrap;font-weight:700}.ledger-table-header span:nth-child(5){text-align:right}.ledger-type{min-width:0;color:var(--color-text-muted);font-size:var(--font-small);align-items:center;gap:.45rem;font-weight:600;display:inline-flex}.ledger-file-mark,.ledger-doc-mark,.ledger-chevron{color:var(--color-text-subtle);place-items:center;display:grid}.ledger-file-mark svg,.ledger-doc-mark svg,.ledger-chevron svg{width:1rem;height:1rem;display:block}.ledger-linked-row{border-top:1px solid var(--color-border);min-height:3.35rem;color:inherit;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.55rem 1.1rem;text-decoration:none;display:grid}.record-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.record-header-kicker{color:var(--color-text-subtle);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.6875rem;font-weight:700}.record-header-title{font-size:var(--font-page-title);letter-spacing:-.035em;overflow-wrap:anywhere;margin:.2rem 0 0;line-height:1.15}.record-header-amount{letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:.45rem 0 0;font-size:1.5rem;font-weight:700}.record-header-meta{color:var(--color-text-muted);font-size:var(--font-small);font-variant-numeric:tabular-nums;margin:.35rem 0 0}.record-header-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.record-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.record-facts{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0 1.1rem 1rem;display:grid}.record-facts dt{color:var(--color-text-subtle);letter-spacing:.06em;text-transform:uppercase;font-size:.6875rem;font-weight:700}.record-facts dd{font-variant-numeric:tabular-nums;margin:.2rem 0 0;font-weight:600}.record-facts-wide{grid-column:1/-1}.workspace-back{margin:0}.workspace-back a{color:var(--color-accent);font-size:var(--font-small);font-weight:600;text-decoration:none}.ocr-workflow{flex-wrap:wrap;gap:.5rem 1rem;margin:0;padding:0;list-style:none;display:flex}.ocr-workflow-step{color:var(--color-text-subtle);font-size:var(--font-small);align-items:center;gap:.4rem;font-weight:600;display:inline-flex}.ocr-workflow-index{border:1px solid var(--color-border);font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;width:1.25rem;height:1.25rem;font-size:.6875rem;display:grid}.ocr-workflow-step-done,.ocr-workflow-step-current{color:var(--color-text)}.ocr-workflow-step-current .ocr-workflow-index{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent)}.ocr-workflow-step-failed .ocr-workflow-index{border-color:var(--color-warning);background:var(--color-warning-soft);color:var(--color-warning)}.ocr-extracted-lede{color:var(--color-text-muted);font-size:var(--font-small);margin:0;padding:0 1.1rem .85rem}.ocr-extracted-groups{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:0 1.1rem 1rem;display:grid}.ocr-extracted-group-title{color:var(--color-text-subtle);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .5rem;font-size:.6875rem;font-weight:700}.ocr-extracted-list{gap:.65rem;margin:0;display:grid}.ocr-extracted-field dt{color:var(--color-text-muted);font-size:var(--font-small)}.ocr-extracted-field dd{margin:.15rem 0 0;font-weight:600}.ocr-extracted-field-attention{border-radius:var(--radius-sm);background:var(--color-warning-soft);padding:.45rem .55rem}.ocr-extracted-hint{color:var(--color-text-muted);margin-top:.1rem;font-size:.6875rem;font-weight:500;display:block}.ocr-confirm-attention{border-radius:var(--radius-sm);background:var(--color-warning-soft);padding:.35rem .5rem .1rem}.ocr-table-attention td{background:color-mix(in srgb, var(--color-warning-soft) 70%, white)}.ocr-line-items{padding:0 1.1rem 1rem}.ocr-actions{gap:var(--space-2);flex-wrap:wrap;padding:.85rem 1.1rem 1rem;display:flex}.ocr-confirm-form{max-width:none;padding-bottom:1rem}.ocr-confirm-fields{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.ocr-confirm-fields .field:nth-of-type(4),.ocr-confirm-fields .field:nth-of-type(6),.ocr-optional-block,.ocr-confirm-actions{grid-column:1/-1}.ocr-workspace .ocr-optional-block{margin:.5rem 0 0}.ocr-confirm-actions{margin:.75rem 0 0}.report-filters{gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;padding:.85rem 1.1rem;display:grid}.report-filters-apply{padding-bottom:.1rem}.report-workspace .report-period-note{margin:0}.report-workspace .workspace-panel .table-scroll{border-top:1px solid var(--color-border)}.report-workspace .data-table{margin:0}.report-workspace .data-table caption{color:var(--color-text-subtle);letter-spacing:.06em;text-transform:uppercase;padding:.65rem 1.1rem 0;font-size:.6875rem}.report-trend{padding:.85rem 1.1rem .25rem}.report-trend-bars{gap:var(--space-2);background:0 0;border:0;grid-template-columns:repeat(auto-fit,minmax(3.5rem,1fr));align-items:end;min-height:0;padding:0;display:grid}.report-trend-bar{grid-template-rows:auto 5.5rem auto;justify-items:center;gap:.35rem;min-width:0;display:grid}.report-trend-track{align-items:flex-end;width:100%;max-width:2.25rem;height:5.5rem;display:flex}.report-trend-amount{max-width:100%;color:var(--color-text-muted);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:.625rem;overflow:hidden}.report-category-bars{gap:.65rem;margin:0;padding:.25rem 1.1rem 1rem;list-style:none;display:grid}.report-category-bars li{grid-template-columns:minmax(0,1fr) 3.5rem;align-items:center;gap:.35rem .75rem;display:grid}.report-category-copy{justify-content:space-between;gap:var(--space-3);font-size:var(--font-small);grid-column:1;display:flex}.report-category-amount,.report-category-share{font-variant-numeric:tabular-nums;white-space:nowrap}.report-category-share{color:var(--color-text-muted);text-align:right}.report-category-track{background:var(--color-surface-muted);border-radius:999px;grid-column:1;height:.4rem;overflow:hidden}.report-category-fill{background:var(--color-accent);border-radius:999px;height:100%;display:block}.report-vehicle-model{color:var(--color-text-muted);font-weight:400}.financial-table{border-top:1px solid var(--color-border)}.financial-table-header,.financial-table-row{gap:var(--space-3) var(--space-4);align-items:center;display:grid}.financial-table-expenses .financial-table-header,.financial-table-expenses .financial-table-row{grid-template-columns:minmax(6.5rem,.65fr) minmax(11rem,1.35fr) minmax(7rem,.7fr) minmax(6.5rem,.6fr) minmax(6rem,.55fr) 1.5rem}.financial-table-documents .financial-table-header,.financial-table-documents .financial-table-row{grid-template-columns:minmax(12rem,1.45fr) minmax(7rem,.7fr) minmax(6.5rem,.6fr) minmax(5rem,.45fr) minmax(8rem,.75fr) 1.5rem}.financial-table-header{color:var(--color-text-subtle);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border);font-size:var(--font-small);padding:.625rem 1rem;font-weight:600}.financial-table-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.financial-table-list li{border-bottom:1px solid var(--color-border)}.financial-table-row{min-height:4.25rem;color:var(--color-text);padding:.75rem 1rem;text-decoration:none}.financial-table-row:hover{background:color-mix(in srgb, var(--color-accent-soft) 36%, white)}.financial-amount{font-variant-numeric:tabular-nums;color:var(--color-text);font-weight:700}.financial-primary{min-width:0}.financial-title{font-weight:600;line-height:1.35;display:block}.financial-secondary{color:var(--color-text-muted);font-size:var(--font-small);margin-top:.125rem;line-height:1.35;display:block}.financial-meta,.financial-date{color:var(--color-text-muted);font-size:var(--font-label);min-width:0}.financial-date{font-variant-numeric:tabular-nums}.financial-category-tag{background:var(--color-surface-muted);color:var(--color-text-muted);font-size:var(--font-small);white-space:nowrap;border-radius:999px;align-items:center;padding:.125rem .5rem;font-weight:600;display:inline-flex}.financial-table-entry{color:var(--color-text-subtle);font-size:1.125rem}.financial-mobile-label{display:none}.financial-linked-list{border-top:1px solid var(--color-border);margin:0;padding:0;list-style:none}.financial-linked-item{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);display:flex}.financial-linked-item:last-child{border-bottom:0}.financial-detail-actions{gap:var(--space-3);margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--color-border);flex-wrap:wrap;display:flex}.upload-file-field{gap:var(--space-2);display:grid}.upload-file-input{padding:var(--space-4);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-muted)}.upload-file-input:focus-visible{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-soft);outline:none}.ocr-review-panel{gap:var(--space-6);display:grid}.ocr-review-panel>.page-header{margin-bottom:0}.ocr-section{gap:var(--space-4);padding-top:var(--space-5);border-top:1px solid var(--color-border);display:grid}.ocr-section:first-of-type{border-top:0;padding-top:0}.ocr-draft-panel{padding:var(--space-4) var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted)}.ocr-draft-panel .detail-list,.ocr-draft-notice,.ocr-line-items{margin:0}.ocr-optional-block{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);margin:0}.ocr-optional-block>legend{padding:0 var(--space-1);color:var(--color-text-muted);font-size:var(--font-small);letter-spacing:.04em;text-transform:uppercase;font-weight:600}.ocr-confirm-form{max-width:38rem}.report-summary-grid .metric-card{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.report-summary-grid .metric-card:first-child{border-color:color-mix(in srgb, var(--color-accent) 28%, var(--color-border));background:color-mix(in srgb, var(--color-accent-soft) 42%, white)}.report-trend{margin-top:calc(var(--space-2) * -1)}.report-trend-bars{gap:var(--space-2);min-height:5rem;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);grid-template-columns:repeat(auto-fit,minmax(2rem,1fr));align-items:end;display:grid}.report-trend-bar{gap:var(--space-1);justify-items:center;min-width:0;display:grid}.report-trend-bar-fill{border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--color-accent);opacity:.82;width:100%;max-width:2.5rem}.report-trend-bar-label{color:var(--color-text-subtle);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.6875rem}.report-section{gap:var(--space-3);display:grid}.report-section .section-header{margin-bottom:0}.report-period-note{color:var(--color-text-muted);font-size:var(--font-small);margin:0}.vehicle-workspace{gap:var(--space-4)}.vehicle-workspace-add{align-items:center;gap:.4rem;display:inline-flex}.vehicle-workspace-add svg{width:1rem;height:1rem}.fleet-workspace-body{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:0;overflow:hidden}.fleet-workspace-body>.filter-nav{margin:0;padding:0 1.1rem}.fleet-workspace-body>.empty-state,.fleet-workspace-body>.empty-state-onboarding{background:0 0;border:0;border-radius:0;max-width:none}.fleet-inventory{min-width:0}.fleet-inventory-header,.fleet-inventory-row{grid-template-columns:2rem minmax(0,1.7fr) minmax(7.5rem,.7fr) minmax(6.25rem,.55fr) 1.25rem;align-items:center;gap:.75rem;display:grid}.fleet-inventory-header{color:var(--color-text-subtle);background:var(--color-surface-muted);border-top:1px solid var(--color-border);font-size:var(--font-small);padding:.55rem 1.1rem;font-weight:600}.fleet-inventory-list{margin:0;padding:0;list-style:none}.fleet-inventory-list li+li .fleet-inventory-row{border-top:1px solid var(--color-border)}.fleet-inventory-row{min-height:3.35rem;color:inherit;padding:.55rem 1.1rem;text-decoration:none}.fleet-inventory-row:hover,.fleet-inventory-row:focus-visible{background:var(--color-surface-muted)}.fleet-inventory-mark{border-radius:var(--radius-sm);background:var(--color-surface-muted);width:2rem;height:2rem;color:var(--color-text-muted);place-items:center;display:grid}.fleet-inventory-mark svg,.fleet-inventory-chevron svg{width:1rem;height:1rem;display:block}.fleet-inventory-identity{gap:.05rem;min-width:0;display:grid}.fleet-inventory-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.fleet-inventory-registration{color:var(--color-text-muted);font-size:var(--font-small);letter-spacing:.06em;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.fleet-inventory-mileage{color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.fleet-inventory-status{justify-self:start}.fleet-inventory-status .status-badge,.workspace-pill .status-badge,.vehicle-overview-row .status-badge,.service-schedule-row .status-badge{letter-spacing:.05em;text-transform:uppercase;padding:.1rem .45rem;font-size:.625rem}.fleet-inventory-chevron{color:var(--color-text-subtle);justify-self:end}.vehicle-workspace-hero,.vehicle-workspace-bar{min-width:0}.vehicle-workspace-hero-top,.vehicle-workspace-bar-main{justify-content:space-between;align-items:flex-start;gap:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.vehicle-workspace-hero-identity,.vehicle-workspace-bar-identity{min-width:0}.vehicle-workspace-hero-title{font-size:var(--font-page-title);letter-spacing:-.035em;margin:0;line-height:1.15}.vehicle-workspace-bar-title{letter-spacing:-.025em;margin:0;font-size:1.0625rem;font-weight:700;line-height:1.2}.vehicle-workspace-hero-registration,.vehicle-workspace-bar-registration{color:var(--color-text-muted);letter-spacing:.08em;font-variant-numeric:tabular-nums;margin:.2rem 0 0;font-weight:700}.vehicle-workspace-hero-registration{font-size:1rem}.vehicle-workspace-bar-registration{font-size:var(--font-small)}.vehicle-workspace-hero-actions,.vehicle-workspace-bar-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.vehicle-workspace-bar-meta{flex-wrap:wrap;align-items:center;gap:.65rem .85rem;display:flex}.vehicle-workspace-bar-mileage{font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-weight:700}.vehicle-workspace-hero-metrics{flex-wrap:wrap;gap:0;margin:.85rem 0 0;display:flex}.vehicle-workspace-hero-metrics>div{min-width:8.5rem;padding-right:var(--space-6);align-content:start;gap:.2rem;display:grid}.vehicle-workspace-hero-metrics>div+div{padding-left:var(--space-6);border-left:1px solid var(--color-border)}.vehicle-workspace-hero-metrics dt{color:var(--color-text-subtle);letter-spacing:.08em;text-transform:uppercase;font-size:.6875rem;font-weight:700}.vehicle-workspace-metric-value{letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:0;font-size:1.375rem;font-weight:700;line-height:1.15}.vehicle-workspace-metric-detail{color:var(--color-text-muted);font-size:var(--font-small);font-variant-numeric:tabular-nums;margin:0}.vehicle-workspace .vehicle-subnav{margin:.85rem 0 0}.workspace-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;min-width:0;display:flex;overflow:hidden}.workspace-panel-muted{background:color-mix(in srgb, var(--color-surface-muted) 72%, white)}.workspace-panel-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:.875rem 1.1rem .65rem;display:flex}.workspace-panel-title{color:var(--color-text-subtle);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.6875rem;font-weight:700}.workspace-panel-metric{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:0;font-size:1.125rem;font-weight:700}.workspace-panel-empty{border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-small);margin:0;padding:.85rem 1.1rem 1rem}.workspace-panel-footer{border-top:1px solid var(--color-border);margin-top:auto;padding:.65rem 1.1rem .8rem}.workspace-panel-footer a{color:var(--color-accent);font-size:var(--font-small);font-weight:600;text-decoration:none}.workspace-panel>.empty-state{background:0 0;border:0;border-radius:0}.workspace-panel .form,.workspace-panel .operational-form,.workspace-panel .admin-form,.workspace-panel .admin-add-member-form{max-width:none;padding:0 1.1rem 1.1rem}.workspace-panel>.admin-form,.form-workspace .workspace-panel>.form,.form-workspace .workspace-panel>.operational-form{padding-top:1.1rem}.workspace-panel .members-table,.workspace-panel .monthly-mileage-list{border-top:0}.workspace-row-list{margin:0;padding:0;list-style:none}.vehicle-overview-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;display:grid}.vehicle-overview-metric{padding:.15rem 1.1rem .85rem}.vehicle-overview-metric-value{letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:0;font-size:1.5rem;font-weight:700;line-height:1.15}.vehicle-overview-metric-detail{color:var(--color-text-muted);font-size:var(--font-small);font-variant-numeric:tabular-nums;margin:.2rem 0 0}.vehicle-overview-row{border-top:1px solid var(--color-border);min-height:3.35rem;color:inherit;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.55rem 1.1rem;text-decoration:none;display:grid}.vehicle-overview-row-deadline{grid-template-columns:minmax(7.25rem,auto) minmax(0,1fr) auto}.vehicle-overview-row:hover,.vehicle-overview-row:focus-visible{background:var(--color-surface-muted)}.vehicle-overview-row-main,.service-schedule-copy,.deadline-copy{gap:.05rem;min-width:0;display:grid}.vehicle-overview-row-title,.service-schedule-name,.deadline-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.vehicle-overview-row-detail,.service-schedule-scan,.deadline-date{color:var(--color-text-muted);font-size:var(--font-small);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.vehicle-overview-row-type{color:var(--color-text-muted);font-size:var(--font-small);letter-spacing:.04em;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.vehicle-workspace .vehicle-identity-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0 1.1rem 1rem}.vehicle-workspace .vehicle-identity-grid dt{color:var(--color-text-subtle);letter-spacing:.06em;text-transform:uppercase;font-size:.6875rem;font-weight:700}.vehicle-workspace .vehicle-identity-grid dd{font-variant-numeric:tabular-nums;margin:.2rem 0 0;font-weight:600}.vehicle-workspace .vehicle-secondary-links{gap:var(--space-4);border:0;margin:0;padding:.15rem 0 0}.vehicle-workspace .vehicle-secondary-links a{color:var(--color-accent);font-size:var(--font-small);font-weight:600;text-decoration:none}.vehicle-status-copy{color:var(--color-text-muted);font-size:var(--font-small);margin:0;padding:0 1.1rem .75rem}.vehicle-status-actions-row{padding:0 1.1rem 1rem}.vehicle-workspace .service-actions{margin:0;padding:0}.workspace-panel .mileage-history-table,.workspace-panel .service-schedule-list,.workspace-panel .deadline-list,.workspace-panel .service-event-list{border-top:1px solid var(--color-border)}.workspace-panel .mileage-history-item,.workspace-panel .deadline-item,.workspace-panel .service-event-item{background:0 0;border:0;border-radius:0;padding:0}.workspace-panel .mileage-history-item{border-bottom:1px solid var(--color-border);padding:.7rem 1.1rem}.workspace-panel .mileage-history-item:last-child{border-bottom:0}.workspace-panel .mileage-history-header{padding-inline:1.1rem}.workspace-panel .mileage-history-km,.workspace-panel .mileage-history-delta,.workspace-panel .mileage-history-date{font-variant-numeric:tabular-nums}.service-schedule-row{border-top:1px solid var(--color-border);min-height:3.5rem;color:inherit;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.65rem 1.1rem;text-decoration:none;display:grid}.service-schedule-list li:first-child .service-schedule-row{border-top:0}.service-schedule-row:hover,.service-schedule-row:focus-visible{background:var(--color-surface-muted)}.service-schedule-scan{white-space:normal;gap:.05rem;display:grid}.service-schedule-scan-primary{color:var(--color-text);font-weight:600}.service-schedule-scan-secondary{color:var(--color-text-muted)}.service-detail-scan{padding:0 1.1rem 1rem}.service-detail-primary{letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:0;font-size:1.375rem;font-weight:700;line-height:1.15}.service-detail-secondary,.service-detail-status-copy{color:var(--color-text-muted);font-size:var(--font-small);font-variant-numeric:tabular-nums;margin:.25rem 0 0}.workspace-panel .service-due-grid{padding-top:0}.deadline-row{border-top:1px solid var(--color-border);grid-template-columns:minmax(7.25rem,auto) minmax(0,1fr) auto;align-items:center;gap:.75rem;min-height:3.35rem;padding:.65rem 1.1rem;display:grid}.deadline-list li:first-child .deadline-row{border-top:0}.workspace-panel .deadline-type{margin:0}.workspace-panel .deadline-actions{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0 1.1rem .85rem;display:flex}.workspace-panel .service-event-item{border-top:1px solid var(--color-border);padding:.7rem 1.1rem}.workspace-panel .service-event-list li:first-child .service-event-item{border-top:0}.vehicle-table{border-top:1px solid var(--color-border)}.vehicle-table-header,.vehicle-list-item{gap:var(--space-4);grid-template-columns:minmax(15rem,1.5fr) minmax(7rem,.55fr) minmax(9rem,.65fr) 1.5rem;align-items:center;display:grid}.vehicle-table-header{color:var(--color-text-subtle);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border);font-size:var(--font-small);padding:.625rem 1rem;font-weight:600}.vehicle-list{gap:0}.vehicle-list li{border-bottom:1px solid var(--color-border)}.vehicle-list-item{border:0;border-radius:0;min-height:4.5rem;padding:.75rem 1rem}.vehicle-list-item:hover{background:color-mix(in srgb, var(--color-accent-soft) 36%, white);border-color:#0000}.vehicle-list-status,.vehicle-list-mileage{min-width:0}.vehicle-list-mileage{color:var(--color-text);font-variant-numeric:tabular-nums;font-weight:600}.vehicle-list-entry{color:var(--color-text-subtle);font-size:1.125rem}.vehicle-mobile-label{display:none}.vehicle-hero{gap:var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) auto;display:grid}.vehicle-hero-main{min-width:0}.vehicle-hero-title{margin:var(--space-1) 0 0;letter-spacing:-.04em;font-size:clamp(1.75rem,3vw,2.375rem);line-height:1.1}.vehicle-hero-registration{margin:var(--space-2) 0 0;color:var(--color-text-muted);letter-spacing:.07em;font-size:1.0625rem;font-weight:600}.vehicle-hero-actions{justify-content:flex-end;align-items:flex-start;gap:var(--space-2);flex-wrap:wrap;display:flex}.vehicle-hero-metrics{padding-top:var(--space-2);grid-column:1/-1;align-items:stretch;gap:0;display:flex}.vehicle-hero-metrics>div{align-content:start;gap:var(--space-1);min-width:12rem;padding-right:var(--space-6);display:grid}.vehicle-hero-metrics>div+div{min-width:8rem;padding-left:var(--space-6);border-left:1px solid var(--color-border)}.vehicle-hero-metric-label,.vehicle-hero-metric-detail{color:var(--color-text-muted);font-size:var(--font-small)}.vehicle-hero-mileage{font-variant-numeric:tabular-nums;font-size:1.625rem;line-height:1.2}.vehicle-subnav{gap:var(--space-5);margin:var(--space-5) 0 var(--space-6);border-bottom:1px solid var(--color-border);scrollbar-width:thin;display:flex;overflow:auto hidden}.vehicle-subnav-link{color:var(--color-text-muted);font-size:var(--font-label);flex:none;padding:.75rem .125rem;font-weight:550;text-decoration:none;position:relative}.vehicle-subnav-link:hover,.vehicle-subnav-link-active{color:var(--color-accent)}.vehicle-subnav-link-active:after{content:"";background:var(--color-accent);height:2px;position:absolute;bottom:-1px;left:0;right:0}.vehicle-overview-section,.vehicle-status-actions{margin-top:var(--space-6)}.vehicle-overview-section+.vehicle-overview-section,.vehicle-status-actions{padding-top:var(--space-6);border-top:1px solid var(--color-border)}.vehicle-identity-grid,.service-due-grid{gap:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:0}.vehicle-identity-grid dd,.service-due-grid dd{font-weight:600}.vehicle-operation-links{border-block:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.vehicle-operation-links a{gap:.125rem var(--space-3);padding:var(--space-4);color:var(--color-text);grid-template-columns:minmax(0,1fr) auto;text-decoration:none;display:grid}.vehicle-operation-links a+a{border-left:1px solid var(--color-border)}.vehicle-operation-links a:hover{background:var(--color-surface-muted)}.vehicle-operation-links strong,.vehicle-operation-links span:nth-child(2){min-width:0}.vehicle-operation-links span:nth-child(2){color:var(--color-text-muted);font-size:var(--font-small)}.vehicle-operation-links span:last-child{color:var(--color-text-subtle);grid-area:1/2/3;align-self:center}.vehicle-secondary-links{gap:var(--space-5);margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--color-border);flex-wrap:wrap;display:flex}.operational-current-metric{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-surface-muted);border-radius:var(--radius-md);display:flex}.operational-current-metric span{color:var(--color-text-muted);font-size:var(--font-label)}.operational-current-metric strong{font-variant-numeric:tabular-nums;font-size:1.25rem}.mileage-history-table,.monthly-mileage-list{border-top:1px solid var(--color-border)}.mileage-history-header,.mileage-history-row{gap:var(--space-3);grid-template-columns:minmax(9rem,1.1fr) minmax(7rem,.8fr) minmax(5rem,.55fr) minmax(7rem,.8fr) minmax(6rem,.6fr);align-items:center;display:grid}.mileage-history-header,.monthly-mileage-header{color:var(--color-text-subtle);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border);font-size:var(--font-small);padding:.625rem .875rem;font-weight:600}.mileage-history-list{gap:0}.mileage-history-item{border:0;border-bottom:1px solid var(--color-border);border-radius:0;padding:.875rem}.mileage-correction-form{background:var(--color-surface-muted);margin-inline:calc(var(--space-3) * -1);margin-bottom:calc(var(--space-3) * -1);padding:var(--space-4) var(--space-3);border-top-style:solid}.service-schedule-list,.deadline-list,.service-event-list{border-top:1px solid var(--color-border);gap:0}.operational-list-item,.service-event-item{padding:var(--space-4) 0;border:0;border-bottom:1px solid var(--color-border);border-radius:0}.service-schedule-name,.deadline-name,.service-event-name{color:var(--color-text);margin:0;font-weight:600;text-decoration:none}.service-schedule-name:hover{color:var(--color-accent)}.service-schedule-due,.deadline-due{margin-bottom:0}.service-schedule-due dt,.deadline-due dt{color:var(--color-text-subtle);font-size:var(--font-small)}.service-schedule-due dd,.deadline-due dd{margin:var(--space-1) 0 0;font-weight:600}.service-detail-status{align-items:center;gap:var(--space-3);color:var(--color-text-muted);font-size:var(--font-label);display:flex}.service-complete-section,.service-history-section{padding-top:var(--space-6);margin-top:0}.service-completion-form{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.service-completion-form .field:nth-of-type(3),.service-completion-form .form-error,.service-completion-form .form-actions{grid-column:1/-1}.deadline-groups{gap:var(--space-8);display:grid}.deadline-groups .section-header{margin-bottom:var(--space-3)}.deadline-history{padding-top:var(--space-6);border-top:1px solid var(--color-border)}.deadline-type{margin:0 0 var(--space-1);color:var(--color-text-subtle);font-size:var(--font-small);letter-spacing:.05em;text-transform:uppercase;font-weight:600}.deadline-badges{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.deadline-actions{margin-top:var(--space-3)}.monthly-mileage-header,.monthly-mileage-row{gap:var(--space-4);grid-template-columns:minmax(12rem,1.3fr) minmax(9rem,.75fr) minmax(11rem,1fr) auto;align-items:center;display:grid}.monthly-mileage-rows{margin:0;padding:0;list-style:none}.monthly-mileage-row{border-bottom:1px solid var(--color-border);min-height:4.75rem;padding:.75rem .875rem}.monthly-mileage-vehicle p,.monthly-mileage-status span,.monthly-mileage-reading span{margin:0}.monthly-mileage-reading,.monthly-mileage-status{justify-items:start;gap:var(--space-1);display:grid}.monthly-mileage-reading strong{font-variant-numeric:tabular-nums}.monthly-mileage-reading span,.monthly-mileage-status>span:last-child{color:var(--color-text-muted);font-size:var(--font-small)}.monthly-form-context{gap:var(--space-3);padding:var(--space-4);background:var(--color-surface-muted);border-radius:var(--radius-md);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.monthly-form-context>div{gap:var(--space-1);display:grid}.monthly-form-context>div span{color:var(--color-text-muted);font-size:var(--font-small)}.monthly-form-context>.status-badge{grid-column:1/-1;justify-self:start}.report-panel{gap:var(--space-6);display:grid}.report-panel>.page-header{margin-bottom:0}.report-filters{padding-bottom:var(--space-6);border-bottom:1px solid var(--color-border)}.report-summary-grid{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.report-summary-grid .metric-card-value{font-size:clamp(1.25rem, 2vw, var(--font-metric))}.report-section-title{margin:var(--space-2) 0 calc(var(--space-3) * -1);letter-spacing:-.02em;font-size:1.25rem;line-height:1.25}.tenant-bar{display:none}@media (max-width:1024px){.dashboard-kpi-strip,.report-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.members-table{overflow-x:auto}.members-table-header,.member-row,.member-row-manageable{min-width:52rem}.monthly-mileage-header{display:none}.monthly-mileage-row{grid-template-columns:minmax(0,1fr) auto}.monthly-mileage-reading,.monthly-mileage-status{justify-self:start}.monthly-mileage-action{grid-area:1/2/3}.vehicle-overview-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.report-filters{grid-template-columns:repeat(2,minmax(0,1fr)) auto}.report-filters-apply{grid-column:1/-1;justify-self:start}}@media (max-width:860px){.dashboard-ops-grid,.dashboard-lower-grid,.vehicle-overview-grid,.record-grid,.ocr-extracted-groups,.ocr-confirm-fields{grid-template-columns:1fr}.ledger-summary,.report-metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.ledger-summary>div+div,.report-metric-strip>div+div{border-left:0}.ledger-summary>div:nth-child(odd),.report-metric-strip>div:nth-child(odd){border-right:1px solid var(--color-border)}.ledger-summary>div:nth-child(n+3),.report-metric-strip>div:nth-child(n+3){border-top:1px solid var(--color-border)}.dashboard-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.company-shell{grid-template-columns:1fr}.company-sidebar{display:none}.company-topbar{display:flex}.mobile-nav-toggle{display:inline-flex}.mobile-nav-backdrop{z-index:40;background:#10182873;border:0;display:block;position:fixed;inset:0}.mobile-nav-drawer{gap:var(--space-4);width:min(18rem,88vw);padding:var(--space-4);background:var(--color-surface);border-right:1px solid var(--color-border);box-shadow:var(--shadow-md);z-index:50;flex-direction:column;transition:transform .2s;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-105%)}.mobile-nav-drawer-open{transform:translate(0)}.mobile-nav-drawer-header{justify-content:space-between;gap:var(--space-3);align-items:flex-start;display:flex}.mobile-nav-close{flex-shrink:0}.company-main{padding:var(--space-4)}}@media (max-width:640px){.app-header{flex-wrap:nowrap;min-height:4rem}.app-user{display:none}.company-topbar{padding:var(--space-2) var(--space-3)}.company-main{padding:var(--space-3)}.surface{padding:var(--space-5) var(--space-4);border-radius:var(--radius-md)}.page-header,.dashboard-header,.vehicle-details-header{gap:var(--space-3);margin-bottom:var(--space-5)}.page-header-actions,.dashboard-actions{width:100%}.page-header-actions>*,.dashboard-actions>*{flex:auto}.dashboard-kpi-strip{grid-template-columns:1fr}.dashboard-attention-row,.dashboard-upcoming-row,.dashboard-activity-row{grid-template-columns:auto minmax(0,1fr) auto;gap:.5rem .75rem}.dashboard-attention-row .dashboard-attention-issue,.dashboard-upcoming-row .dashboard-upcoming-type,.dashboard-activity-row .dashboard-activity-when,.dashboard-activity-row .dashboard-activity-amount{grid-column:2}.dashboard-attention-row .dashboard-pill,.dashboard-upcoming-row .dashboard-pill{grid-column:2;justify-self:start}.dashboard-attention-row .dashboard-row-chevron{grid-area:1/3}.dashboard-costs-body{grid-template-columns:1fr;justify-items:center}.dashboard-cost-legend{width:100%}.button{min-height:2.75rem}.dashboard{gap:var(--space-6)}.dashboard-summary-grid .metric-card{align-items:center;column-gap:var(--space-3);padding:var(--space-3) 0;grid-template-columns:minmax(0,1fr) auto;display:grid}.dashboard-summary-grid .metric-card-value{grid-area:1/2;margin:0}.dashboard-summary-grid .metric-card-detail{grid-column:1/-1}.dashboard-attention-item{gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto}.dashboard-attention-main{gap:var(--space-1);grid-column:1/-1;grid-template-columns:1fr}.dashboard-attention-item>.button{grid-column:2}.dashboard-attention-urgency{grid-column:1;justify-self:start}.dashboard-fleet-item,.vehicle-list-item{align-items:flex-start}.vehicle-list-item{flex-direction:column}.empty-state-onboarding{max-width:none;min-height:auto;max-height:none;padding:var(--space-4);grid-template-columns:1fr;align-items:start}.empty-state-onboarding .empty-state-copy{width:100%}.empty-state-icon{width:2.375rem;height:2.375rem}.dashboard-summary-grid{grid-template-columns:1fr}.dashboard-summary-grid .metric-card+.metric-card{border-inline-start:0;border-top:1px solid var(--color-border)}.dashboard-summary-grid .metric-card:first-child{padding-inline-start:1rem}.company-topbar-actions .button{padding-inline:.625rem}.report-summary-grid{grid-template-columns:1fr}.report-panel{gap:var(--space-5)}.data-table th,.data-table td{padding:.6875rem .75rem}.vehicle-table-header,.mileage-history-header{display:none}.vehicle-list-item{gap:var(--space-3);min-height:0;padding:var(--space-4) 0;grid-template-columns:minmax(0,1fr) auto;display:grid}.vehicle-list-primary{grid-column:1/-1}.vehicle-list-status{grid-column:1}.vehicle-list-mileage{gap:var(--space-2);grid-column:1;align-items:baseline;display:flex}.vehicle-mobile-label{color:var(--color-text-subtle);font-size:var(--font-small);font-weight:400;display:inline}.vehicle-list-entry{grid-area:2/2/4;align-self:center}.financial-table-header,.ledger-table-header{display:none}.ledger-table-expenses .ledger-table-row{grid-template-columns:minmax(0,1fr) auto auto;grid-template-areas:"vehicle amount chevron""copy copy copy""date category doc";align-items:start;gap:.35rem .75rem;min-height:0;padding:.75rem 1rem}.ledger-table-expenses .ledger-date{grid-area:date}.ledger-table-expenses .ledger-vehicle{grid-area:vehicle}.ledger-table-expenses .ledger-category{grid-area:category}.ledger-table-expenses .ledger-copy{grid-area:copy}.ledger-table-expenses .ledger-amount{grid-area:amount;font-size:1rem}.ledger-table-expenses .ledger-doc-mark{grid-area:doc;justify-self:start}.ledger-table-expenses .ledger-chevron{grid-area:chevron}.ledger-table-documents .ledger-table-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"type chevron""copy copy""vehicle date""expense expense";align-items:start;gap:.3rem .75rem;min-height:0;padding:.75rem 1rem}.ledger-table-documents .ledger-type{grid-area:type}.ledger-table-documents .ledger-copy{grid-area:copy}.ledger-table-documents .ledger-vehicle{grid-area:vehicle}.ledger-table-documents .ledger-secondary{grid-area:expense}.ledger-table-documents .ledger-date{grid-area:date}.ledger-table-documents .ledger-chevron{grid-area:chevron}.record-header,.record-header-actions{flex-direction:column;align-items:stretch}.record-header-actions .button,.ocr-actions .button,.ocr-confirm-actions .button{min-height:2.75rem}.record-facts,.report-filters{grid-template-columns:1fr}.report-filters-apply{grid-column:1}.report-metric-strip,.ledger-summary{grid-template-columns:1fr}.ledger-summary>div:nth-child(odd),.report-metric-strip>div:nth-child(odd){border-right:0}.ledger-summary>div+div,.report-metric-strip>div+div{border-top:1px solid var(--color-border)}.ocr-workspace .ocr-optional-block,.ocr-confirm-actions{margin-inline:.85rem}.financial-table-row{gap:var(--space-2) var(--space-3);min-height:0;padding:var(--space-4) 0;grid-template-columns:minmax(0,1fr) auto;display:grid}.financial-table-expenses .financial-table-row{grid-template-areas:"amount entry""primary primary""category category""vehicle date"}.financial-table-expenses .financial-amount{grid-area:amount}.financial-table-expenses .financial-primary{grid-area:primary}.financial-table-expenses .financial-category-tag{grid-area:category;justify-self:start}.financial-table-expenses .financial-meta{grid-area:vehicle}.financial-table-expenses .financial-date{grid-area:date}.financial-table-documents .financial-table-row{grid-template-areas:"primary entry""meta meta""date date"}.financial-table-documents .financial-primary{grid-area:primary}.financial-table-documents .financial-meta{grid-area:meta}.financial-table-documents .financial-date{grid-area:date}.financial-table-entry{grid-area:entry;align-self:start}.financial-mobile-label{margin-right:var(--space-2);color:var(--color-text-subtle);font-size:var(--font-small);font-weight:400;display:inline}.financial-detail-actions{flex-direction:column;align-items:stretch}.financial-detail-actions .button,.financial-detail-actions .button-secondary{justify-content:center;width:100%}.report-filters{grid-template-columns:1fr}.report-filters .form-actions{grid-column:1}.ocr-confirm-form{max-width:none}.vehicle-hero{gap:var(--space-5);grid-template-columns:1fr}.vehicle-hero-actions,.vehicle-hero-metrics{grid-column:1}.vehicle-hero-actions{justify-content:stretch}.vehicle-hero-actions>*{flex:auto}.vehicle-hero-metrics{grid-template-columns:minmax(0,1fr) auto;display:grid}.vehicle-hero-metrics>div{min-width:0;padding-right:var(--space-4)}.vehicle-hero-metrics>div+div{min-width:0;padding-left:var(--space-4)}.vehicle-subnav{gap:var(--space-4);margin-inline:calc(var(--space-4) * -1);padding-inline:var(--space-4)}.vehicle-workspace .vehicle-subnav{margin-inline:0;padding-inline:0}.fleet-inventory-header{display:none}.fleet-inventory-row{grid-template-columns:2rem minmax(0,1fr) auto auto;grid-template-areas:"mark identity identity chevron""mark mileage status chevron";align-items:center;min-height:0;padding:.75rem 1rem}.fleet-inventory-mark{grid-area:mark;align-self:start}.fleet-inventory-identity{grid-area:identity}.fleet-inventory-mileage{font-size:var(--font-small);grid-area:mileage}.fleet-inventory-status{grid-area:status}.fleet-inventory-chevron{grid-area:chevron;align-self:start}.vehicle-workspace-hero-top,.vehicle-workspace-bar-main{flex-direction:column;align-items:stretch}.vehicle-workspace-hero-actions,.vehicle-workspace-bar-actions{justify-content:flex-start}.vehicle-workspace-hero-actions .button,.vehicle-workspace-bar-actions .button,.vehicle-workspace .page-header-actions .button,.deadline-actions .button,.deadline-actions a,.vehicle-status-actions-row .button{min-height:2.75rem}.vehicle-workspace-hero-metrics{gap:var(--space-3);grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin-top:.75rem;display:grid}.vehicle-workspace-hero-metrics>div,.vehicle-workspace-hero-metrics>div+div{border:0;min-width:0;padding:0}.vehicle-workspace-metric-value{font-size:1.25rem}.vehicle-overview-row,.vehicle-overview-row-deadline,.service-schedule-row,.deadline-row{grid-template-columns:minmax(0,1fr) auto;gap:.4rem .75rem}.vehicle-overview-row-type,.deadline-type{grid-column:1/-1}.vehicle-workspace .vehicle-identity-grid,.vehicle-identity-grid,.service-due-grid,.vehicle-operation-links,.monthly-form-context,.service-completion-form{grid-template-columns:1fr}.vehicle-operation-links a+a{border-left:0;border-top:1px solid var(--color-border)}.operational-current-metric{align-items:flex-start;gap:var(--space-1);flex-direction:column}.mileage-history-row{gap:var(--space-2) var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.mileage-history-row>span{gap:.125rem;display:grid}.mileage-history-row>span:before{content:attr(data-label);color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.04em;font-size:.6875rem;font-weight:500}.mileage-history-date,.mileage-history-status{grid-column:1/-1}.mileage-correction-form .button{justify-self:stretch}.service-schedule-row,.deadline-row{grid-template-columns:minmax(0,1fr) auto;display:grid}.service-schedule-due,.deadline-due{grid-template-columns:1fr 1fr}.deadline-actions>form,.deadline-actions>a{flex:100%}.deadline-actions button{width:100%}.service-completion-form .field:nth-of-type(3),.service-completion-form .form-error,.service-completion-form .form-actions{grid-column:1}.monthly-mileage-row{gap:var(--space-3);padding:var(--space-4) .875rem;grid-template-columns:1fr}.monthly-mileage-action{grid-area:auto/1;width:100%}.admin-add-member-fields{grid-template-columns:1fr}.form-workspace .form-actions .button,.workspace-panel .admin-form .form-actions .button,.workspace-panel .admin-add-member-form .form-actions .button{width:100%}.members-table-header{display:none}.member-row,.member-row-manageable{gap:var(--space-3);padding:var(--space-4) 1rem;grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.member-mobile-only{display:block}.member-desktop-only{display:none}.member-mobile-label{margin-right:var(--space-2);color:var(--color-text-subtle);font-size:var(--font-small);font-weight:400;display:inline}.member-actions-cell{width:100%}.member-role-control{max-width:none}.member-actions .inline-notice{width:100%}}
