/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.hidden{display:none}.inline{display:inline}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.overline{text-decoration-line:overline}}:root{--font-sans:-apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", sans-serif;font-family:var(--font-sans);color:var(--ink);background:var(--bg);font-synthesis:none;--card-bg:#fff;--ink:#0f1c19;--bg:#f4f7f6;--primary:#004b87;--primary-ink:#003360;--primary-soft:#eaf2fa;--primary-line:#a8caec;--accent:#f37021;--fuel:#ea580c;--fuel-ink:#9a3412;--fuel-soft:#fff3e8;--fuel-line:#fec89a;--muted:#3e4e48;--soft:#edf2f0;--control-border:#6d7f79;--border:#dce4e1;--service:#7c3aed;--service-ink:#5b21b6;--service-soft:#f1eafe;--warning:#a8510a;--warning-soft:#fff3e0;--danger-ink:#b91c1c;--danger-soft:#fdecec;--radius:20px;--r-sm:10px;--r-md:12px;--r-lg:20px;--section-gap:16px;--card-padding:20px;--page-gutter:24px;--nav-clearance:calc(112px + env(safe-area-inset-bottom));--shadow:0 1px 2px #10201d0a, 0 8px 24px -12px #10201d1a;--shadow-float:0 12px 32px -8px #10201d2e;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button,a{transition:background-color .15s,color .15s,box-shadow .15s}a{color:inherit;text-decoration:none}p{margin:0 0 8px;line-height:1.5}h1,h2,h3{letter-spacing:-.025em;margin:0;line-height:1.3}h1{font-size:24px;font-weight:750}h2{font-size:20px;font-weight:700}h3{font-size:16px;font-weight:700}label{margin:16px 0;font-size:14px;font-weight:600;display:block}input,select,textarea{border:1px solid var(--control-border);border-radius:var(--r-md);width:100%;min-height:48px;color:var(--ink);background:#fff;margin-top:8px;padding:12px;font-size:16px;display:block}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:var(--muted)}input[aria-invalid=true]{border-color:#dc2626}input[type=month]{max-width:190px}fieldset{border:0;min-width:0;margin:0;padding:0}:focus-visible{outline:3px solid var(--primary);outline-offset:3px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:1px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.numeric{font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-family:inherit}.muted{color:var(--muted)}.small{font-size:13px}.eyebrow{letter-spacing:.07em;color:var(--muted);align-items:center;gap:8px;margin-bottom:12px;font-size:12px;font-weight:700;display:flex}.green-text{color:var(--primary-ink)}.grow{flex:1;min-width:0}.button{border-radius:var(--r-md);border:0;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:12px 18px;font-size:14px;font-weight:700;line-height:1.3;display:inline-flex}.primary{background:var(--primary);color:#fff}.primary:hover{background:var(--primary-ink)}.secondary{background:var(--soft);color:var(--ink)}.secondary:hover{background:var(--border)}.text-button{min-height:48px;color:var(--primary-ink);background:0 0;border:0;justify-content:center;align-items:center;gap:8px;padding:8px;font-weight:700;display:inline-flex}.icon-button{border-radius:var(--r-md);background:var(--soft);width:48px;min-width:48px;min-height:48px;color:inherit;border:0;justify-content:center;align-items:center;display:inline-flex}.full{width:100%}.actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-heading p{margin-bottom:0}.card{border:1px solid var(--border);border-radius:var(--radius);padding:var(--card-padding);margin-bottom:var(--section-gap);box-shadow:var(--shadow);background:#fff;min-width:0}.page-title{justify-content:space-between;margin-bottom:16px}.page-title p{margin-bottom:4px}.badge{white-space:nowrap;background:var(--soft);border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.badge.green{border:1px solid #d1fae599}.icon-tile{background:var(--primary-soft);color:var(--primary-ink);border-radius:var(--r-lg);justify-content:center;align-items:center;width:48px;min-width:48px;height:48px;display:inline-flex}.dot{background:var(--accent);border-radius:50%;width:9px;height:9px;margin-right:8px;display:inline-block}.brand{letter-spacing:-.04em;align-items:center;gap:12px;font-size:20px;font-weight:800;display:flex}.brand-icon{background:var(--primary);color:#fff;border-radius:var(--r-md);place-items:center;width:48px;height:48px;display:grid}.brand-mark{width:100%;height:100%;display:block}.brand-word{letter-spacing:.1em;text-transform:uppercase;font-size:.84em;font-weight:700}.brand-word-accent{color:var(--brand-accent,#1e40af)}.auth-branding .brand-word-accent{color:inherit}.sidebar{display:none}.topbar{width:100%;max-width:1200px;padding:20px var(--page-gutter) 0;background:var(--bg);grid-template-columns:minmax(0,1fr) auto auto;justify-content:space-between;align-items:center;gap:12px;margin-inline:auto;display:grid}.vehicle-heading{border:1px solid var(--border);border-radius:var(--r-lg);background:#fff;align-items:center;gap:12px;min-width:0;padding:12px;display:flex;position:relative;box-shadow:0 1px 2px #10201d0d}.vehicle-emblem{border-radius:var(--r-md);width:40px;height:40px;color:var(--primary-ink);border:1px solid var(--primary-soft);background:linear-gradient(135deg, var(--primary-soft), var(--soft));flex-shrink:0;place-items:center;display:grid}.vehicle-identity{flex:1;min-width:0}.vehicle-name-row{align-items:center;gap:7px;display:flex}.vehicle-selection-dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 4px var(--primary-soft);border-radius:50%;flex-shrink:0}.vehicle-name{color:var(--ink);letter-spacing:-.02em;overflow-wrap:anywhere;font-size:16px;font-weight:750;line-height:1.35;display:block}.vehicle-registration{color:var(--muted);letter-spacing:.06em;overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;font-size:12px;font-weight:600;line-height:1.4;display:flex}.vehicle-archived{color:#765a29;letter-spacing:0}.vehicle-chevron{width:32px;height:32px;color:var(--muted);background:var(--bg);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.vehicle-heading select{z-index:1;opacity:0;cursor:pointer;width:100%;max-width:none;height:100%;margin:0;padding:0;position:absolute;inset:0}.vehicle-heading:focus-within{outline:3px solid var(--primary);outline-offset:3px}.vehicle-heading:has(select:disabled) .vehicle-chevron{opacity:.55}.vehicle-heading:has(select:disabled) select{cursor:default}@media (hover:hover){.vehicle-heading:has(select:enabled):hover{border-color:#9cbcb1}}.month-picker{width:190px;min-width:0;min-height:48px;color:var(--muted);border:1px solid var(--border);border-radius:var(--r-md);background:#fff;place-items:center;margin:0;padding:8px 12px;display:grid;position:relative}.month-display{white-space:nowrap;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:600;line-height:1.4;display:inline-flex}.month-picker:focus-within{outline:3px solid var(--primary);outline-offset:3px}.month-picker input{opacity:0;cursor:pointer;background:0 0;border:0;width:100%;min-width:0;max-width:none;height:100%;margin:0;padding:0;font-size:16px;position:absolute;inset:0}.month-picker input::-webkit-calendar-picker-indicator{cursor:pointer;width:auto;height:auto;margin:0;padding:0;position:absolute;inset:0}.main-content{max-width:1200px;padding:20px var(--page-gutter) var(--nav-clearance);margin:auto}.cost-hero{background:#fff}.hero-balance{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:12px 0 16px;display:flex}.hero-summary{flex:1 1 max-content;min-width:0;max-width:100%}.hero-comparison{color:var(--muted);align-items:flex-start;gap:5px;margin:6px 0 0;font-size:12px;font-weight:500;line-height:1.5;display:flex}.hero-comparison>svg{flex-shrink:0;margin-top:1px}.hero-number{min-width:0;color:var(--primary-ink);overflow-wrap:anywhere;margin:20px 0;font-size:34px;font-weight:800;line-height:1.2}.hero-balance .hero-number{margin:0}.hero-currency{white-space:nowrap;font-size:.62em;font-weight:700}.budget-ring{flex:0 0 64px;place-items:center;width:64px;height:64px;margin:0 0 0 auto;display:grid;position:relative}.budget-ring>svg{width:100%;height:100%;transform:rotate(-90deg)}.budget-ring-track{fill:none;stroke:var(--soft);stroke-width:5px}.budget-ring-fill{fill:none;stroke:var(--accent);stroke-width:5px;stroke-linecap:round}.budget-ring-value{color:var(--muted);overflow-wrap:anywhere;justify-content:center;align-items:center;gap:1px;padding:10px;font-size:12px;font-weight:750;line-height:1.2;display:flex;position:absolute;inset:0}.budget-progress{border-top:1px solid var(--border);margin-top:16px;padding-top:12px}.budget-caption{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;font-size:12px;font-weight:600;display:flex}.budget-caption strong{color:var(--ink);font-weight:700}.budget-remaining{color:var(--muted);font-size:12px;line-height:1.5}.budget-remaining strong{color:var(--primary);font-weight:600}.budget-progress progress{background:var(--soft);height:10px;accent-color:var(--accent);margin-top:8px;padding:2px}.budget-progress progress::-webkit-progress-bar{background:var(--soft);border-radius:999px}.budget-progress progress::-webkit-progress-value{background:linear-gradient(90deg, var(--primary), var(--accent))}.budget-progress progress::-moz-progress-bar{background:linear-gradient(90deg, var(--primary), var(--accent));border-radius:999px}.metric-help{max-width:100%;min-height:48px;color:var(--primary-ink);text-align:left;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:6px;padding:0;font-size:12px;font-weight:550;line-height:1.5;text-decoration:none;display:inline-flex}.metric-help:hover{color:var(--primary-ink);text-underline-offset:3px;text-decoration:underline}.metric-help:active{opacity:.75}.metrics-grid{gap:var(--section-gap);margin-bottom:var(--section-gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.metric{padding:var(--card-padding);margin-bottom:0}.metric-value{overflow-wrap:anywhere;margin:6px 0 0;font-size:24px;font-weight:700;line-height:1.25}.metric .small{margin:6px 0 0}.chart{width:100%;min-width:0;height:224px;margin-top:16px}.chart-caption{margin-top:8px;font-size:12px}.section-gap{margin:20px 0 12px}.recent-grid,.history-grid{gap:var(--section-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.log-card{border:1px solid var(--border);border-left:1px solid var(--border);border-radius:var(--radius);padding:var(--card-padding);min-width:0;box-shadow:var(--shadow);background:#fff}.log-details{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-lg);justify-content:space-between;gap:12px;margin:12px 0;padding:12px;display:flex}.log-details strong{font-size:20px}.log-details p{align-items:center;gap:4px;margin:0;display:flex}.log-details .small{font-size:12px}.log-note{overflow-wrap:anywhere;margin-top:16px}.compact{border-left-width:1px}.bottom-nav{z-index:20;border-top:1px solid var(--border);padding:10px 12px calc(10px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff2;grid-template-columns:1fr 1fr 72px 1fr 1fr;align-items:center;display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{min-height:54px;color:var(--muted);border-radius:var(--r-lg);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;min-width:0;font-size:12px;display:flex}.bottom-nav a:not(.nav-fab):hover{background:var(--soft)}.bottom-nav a:active{opacity:.8}.bottom-nav a.active{color:var(--primary-ink);font-weight:700}.refill-action{white-space:nowrap;border-radius:999px;margin-left:auto;padding:12px 16px;font-size:14px}.summary{background:var(--ink);color:#fff;margin-top:24px}.summary p{margin-top:8px}.report-grid{gap:var(--section-gap);margin-bottom:var(--section-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.report-grid>.card{margin-bottom:0}.report-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.unit{font-family:var(--font-sans);color:var(--muted);font-size:16px;font-weight:500}.insight{background:var(--soft);border-radius:var(--r-lg);margin-top:16px;padding:16px;font-size:14px}.brand-bars{gap:16px;margin:16px 0;display:grid}.brand-bars .section-heading{font-size:13px}progress{width:100%;height:8px;accent-color:var(--primary);background:var(--soft);border:none;border-radius:999px;margin-top:8px;overflow:hidden}progress::-webkit-progress-bar{background:var(--soft)}progress::-webkit-progress-value{background:var(--primary);border-radius:999px}.method-note{align-items:flex-start;gap:16px;display:flex}.method-note svg{color:var(--primary-ink);flex-shrink:0}.method-note p{margin-top:8px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.form-grid .card{margin:0}.amount-input{color:var(--primary-ink);background:#fff;font-size:34px;font-weight:700}.odo-input{font-size:24px;font-weight:700}.quick-chips .button{flex:1}.toggle-label{margin:0;font-size:20px}.switch{background:0 0;border:0;border-radius:999px;align-items:center;width:52px;min-width:52px;height:48px;padding:0 4px;display:flex;position:relative}.switch:before{content:"";background:var(--muted);border-radius:999px;position:absolute;inset:8px 0}.switch[data-state=checked]:before{background:var(--primary)}.switch-thumb{background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .15s;display:block;position:relative;transform:translate(0)}.switch[data-state=checked] .switch-thumb{transform:translate(20px)}.save-bar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10;background:#fffffff5;gap:12px;margin-top:20px;padding:16px 0;display:flex;position:sticky;bottom:0}.save-bar .primary{flex:1}.two-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.vehicle-list{gap:16px;margin-top:16px;display:grid}.vehicle-item{border-bottom:1px solid var(--border);gap:12px;padding-bottom:16px;display:flex}.vehicle-item:last-child{border:0}.dialog-overlay{z-index:50;background:#11182775;position:fixed;inset:0}.dialog-content{border-radius:var(--r-lg);z-index:51;background:#fff;width:calc(100% - 32px);max-width:520px;max-height:calc(100dvh - 48px);padding:24px;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 24px 80px -16px #11182747}.dialog-content .section-heading{margin-bottom:16px}.dialog-content h2{font-size:20px}.error,.warning,.success{border-radius:var(--r-md);overflow-wrap:anywhere;margin-bottom:16px;padding:16px;font-size:14px}.error{color:#b91c1c;background:#fef2f2}.warning{color:var(--fuel-ink);background:#fffbeb;align-items:flex-start;gap:8px;display:flex}.success{background:var(--soft);color:var(--primary-ink)}.field-error{color:#b91c1c;font-size:13px}.error a{text-decoration:underline}.error ul{padding-left:20px}.empty{text-align:center;border:1px dashed var(--control-border);border-radius:var(--r-lg);background:#fff;padding:32px 20px}.empty h2{margin:16px 0 8px}.empty p{color:var(--muted);max-width:440px;margin:0 auto 20px}.toast{bottom:calc(104px + env(safe-area-inset-bottom));color:var(--primary-ink);border:1px solid var(--primary-line);border-radius:var(--r-lg);z-index:40;background:#fff;align-items:center;gap:10px;width:min(360px,100% - 32px);max-width:calc(100% - 32px);padding:8px 8px 8px 14px;font-size:14px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #064e3b1a,0 2px 6px #064e3b0a}.toast button{color:var(--muted);background:0 0}.toast button:hover{background:var(--soft)}.toast-symbol{background:var(--primary-soft);border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.toast-message{flex:1;min-width:0;font-weight:600;line-height:1.45}.loading-state{text-align:center;place-content:center;justify-items:center;gap:12px;min-height:50vh;display:grid}.loading-state.compact{gap:8px;min-height:0;padding-block:12px}.loading-state.screen{min-height:100dvh;animation:.2s .2s both ft-fade}.loading-label{color:var(--muted);margin:0;font-size:14px;position:absolute;top:calc(50% + 36px);left:16px;right:16px}.loader{--color-1:#fff;--color-2:#ff3d00;--size:1px;width:calc(48 * var(--size));height:calc(48 * var(--size));border:calc(3 * var(--size)) solid;border-color:var(--color-1) var(--color-1) transparent;box-sizing:border-box;border-radius:50%;flex-shrink:0;animation:1s linear infinite rotation;display:inline-block;position:relative}.button .loader{--size:.5px}.loading-state .loader{--color-1:var(--primary-line)}.loading-state.compact .loader{--size:.666667px}button:disabled:has(.loader){opacity:1;cursor:wait}.loader:after{content:"";box-sizing:border-box;border:calc(3 * var(--size)) solid;border-color:transparent var(--color-2) var(--color-2);width:calc(24 * var(--size));height:calc(24 * var(--size));transform-origin:50%;border-radius:50%;margin:auto;animation:.5s linear infinite rotationBack;position:absolute;inset:0}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotationBack{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.page-skeleton{animation:.2s .2s both ft-fade}.page-skeleton .card{gap:12px;display:grid}.sk-line,.sk-dot{background:var(--ink);border-radius:999px;display:block}@supports (color:color-mix(in lab, red, red)){.sk-line,.sk-dot{background:color-mix(in srgb, var(--ink) 9%, transparent)}}.sk-line,.sk-dot{animation:1.6s ease-in-out infinite sk-pulse}.sk-line{height:12px}.sk-title{width:min(45%,260px);height:24px;margin-bottom:var(--section-gap)}.sk-amount{width:55%;height:32px}.sk-value{width:70%;height:20px}.sk-w-30{width:30%}.sk-w-40{width:40%}.sk-w-50{width:50%}.sk-w-70{width:70%}.sk-hero{align-content:center;min-height:168px}.sk-grid{gap:var(--section-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.sk-row{align-items:center;gap:12px;min-height:40px;display:flex}.sk-dot{border-radius:50%;flex-shrink:0;width:36px;height:36px}.sk-row-text{background:0 0;flex:1;min-width:0;animation:none}.sk-row-text>.sk-line{height:12px}@keyframes sk-pulse{50%{opacity:.5}}.refresh-bar{z-index:40;pointer-events:none;height:2px;animation:.2s .3s both ft-fade;position:fixed;top:0;left:0;right:0;overflow:hidden}.refresh-bar>span{background:var(--accent);width:33%;height:100%;animation:1.2s ease-in-out infinite refresh-slide;display:block}@keyframes refresh-slide{0%{transform:translate(-100%)}to{transform:translate(300%)}}.skip-link{z-index:100;border:2px solid var(--primary);background:#fff;padding:16px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:16px}.auth-shell{place-items:center;min-height:100dvh;padding:40px 24px}.auth-panel{border:1px solid var(--border);background:#ffffffd9;border-radius:28px;width:100%;max-width:420px;padding:28px;box-shadow:0 16px 48px #0f172a08}.auth-logo{border-radius:var(--r-lg);color:#fff;background:linear-gradient(135deg, var(--accent), var(--primary));place-items:center;width:60px;height:60px;margin:0 auto 16px;display:grid;box-shadow:0 10px 22px #1d4ed830,inset 0 0 0 1px #ffffff40}.auth-segments{grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.auth-segments button{background:0 0;border:1px solid #0000;font-size:14px;font-weight:650}.auth-segments button[aria-pressed=true]{color:var(--ink);background:#fff}.auth-field{margin-bottom:16px}.auth-field label{margin:0 0 8px}.auth-input{border:1px solid var(--control-border);color:var(--muted);background:#fff;align-items:center;padding-left:14px;display:flex}.auth-input>svg{flex-shrink:0}.auth-input:focus-within{border-color:var(--primary);color:var(--primary-ink)}.auth-input input{background:0 0;border:0;flex:1;width:0;min-width:0;min-height:52px;margin:0;padding:12px}.auth-input input:focus-visible{outline:none}.auth-password-toggle{border-radius:var(--r-sm);min-width:48px;min-height:48px;color:var(--muted);background:0 0;border:0;place-items:center;padding:0;display:grid}.auth-utility{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:-8px 0 14px;display:flex}.auth-remember{min-height:48px;color:var(--muted);cursor:pointer;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:500;display:flex}.auth-remember input{appearance:auto;width:18px;height:18px;min-height:18px;accent-color:var(--primary-ink);margin:0;padding:0}.auth-utility .text-button{padding:0 4px;font-size:13px}.auth-panel .auth-submit{background:var(--primary)}.auth-panel .auth-submit:hover:not(:disabled){background:var(--primary-ink)}.auth-links{text-align:center;margin-top:16px}.auth-trust{color:var(--muted);align-items:center;gap:10px;font-size:12px;display:flex}.auth-trust svg{color:var(--primary-ink);flex-shrink:0}.auth-mode-title{margin:0 0 8px;font-size:20px}.auth-help{margin-bottom:24px;font-size:14px}@media (width<=600px){.auth-shell{padding:max(44px, env(safe-area-inset-top)) 24px calc(32px + env(safe-area-inset-bottom));align-items:start}.auth-panel{max-width:390px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.auth-branding h1{font-size:24px}}.setup-page{max-width:600px;margin:10vh auto;padding:32px}.setup-page h1{margin:20px 0}.setup-page .eyebrow{margin-top:20px}@media (width>=1024px){:root{--page-gutter:32px;--nav-clearance:32px}.sidebar{border-right:1px solid var(--border);background:#fff;flex-direction:column;width:224px;padding:24px 16px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar>.small{letter-spacing:.08em;margin-top:12px;font-size:10px}.sidebar nav{gap:8px;margin-top:32px;display:grid}.sidebar nav a{border-radius:var(--r-md);min-height:52px;color:var(--muted);align-items:center;gap:12px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.sidebar nav a.active{background:var(--primary-soft);color:var(--primary-ink)}.sidebar-bottom{border-top:1px solid var(--border);color:var(--primary-ink);align-items:center;gap:10px;margin-top:auto;padding-top:16px;display:flex}.sidebar-bottom p{margin-top:12px;font-size:13px}.sidebar-bottom span{overflow-wrap:anywhere;min-width:0}.workspace{margin-left:224px}.topbar{grid-template-columns:minmax(0,1fr) auto auto auto auto}.main-content{padding:24px var(--page-gutter) var(--nav-clearance)}.bottom-nav{display:none}.toast{bottom:32px}.save-bar{bottom:0}}@media (width<=767px){:root{--page-gutter:16px;--card-padding:16px}h1{font-size:24px}.topbar{flex-wrap:wrap}.month-picker{margin-left:0}.main-content{padding:20px 16px calc(124px + env(safe-area-inset-bottom))}.hero-number{font-size:34px}.cost-hero .section-heading{font-size:13px}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.metric{padding:16px}.metric-value{font-size:20px}.report-grid,.recent-grid,.history-grid,.form-grid{grid-template-columns:minmax(0,1fr)}.report-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.report-metrics .metric:nth-child(2){order:-1;grid-column:1/-1}.page-title{align-items:flex-start}.page-title .button{padding:12px;font-size:12px}.page-title>.badge{display:none}.log-card{padding:16px}.save-bar{bottom:0}.vehicle-item{flex-wrap:wrap}.vehicle-item .actions{margin-left:auto}.two-cols{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}html{scroll-padding-block:24px 180px}input,select,textarea,button,a{scroll-margin-block:24px 180px}.save-bar{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.numeric-field{border:1px solid var(--control-border);border-radius:var(--r-md);background:#fff;align-items:center;gap:8px;width:100%;display:flex}.numeric-field:focus-within{outline:3px solid var(--primary);outline-offset:2px}.numeric-field>input:not([type=hidden]){background:0 0;border:0;flex:1;width:0;min-width:0}.numeric-field>input:focus-visible{outline:none}.numeric-unit{white-space:nowrap;color:var(--muted);padding-right:12px;font-size:14px;font-weight:600}.numeric-field{margin-top:8px}.numeric-field>input{margin-top:0}.numeric-field:has(input[aria-invalid=true]){border-color:#dc2626}.bottom-nav .nav-fab{background:linear-gradient(45deg, var(--primary), var(--primary));color:#fff;border:4px solid var(--bg);border-radius:50%;justify-self:center;width:60px;height:60px;min-height:60px;position:relative;top:-20px;box-shadow:0 12px 30px -4px #004b8759}.bottom-nav .nav-fab:hover{background:var(--primary-ink)}.nav-fab-placeholder{width:60px;height:60px}.hero-period{color:var(--muted);letter-spacing:.08em;font-size:12px;font-weight:700}.hero-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.purchase-controls{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:8px;display:flex}.purchase-switch{border-radius:var(--r-md);background:var(--soft);padding:3px;display:inline-flex}.purchase-switch button{border-radius:var(--r-sm);min-width:64px;min-height:48px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:8px 12px;font-weight:600}.purchase-switch button[aria-pressed=true]{color:var(--primary-ink);background:#fff;box-shadow:0 1px 3px #10201d14}.purchase-period{font-size:12px;font-weight:600}.hero-metric{border-radius:var(--r-md);text-align:center;border:1px solid;flex-direction:column;justify-content:space-between;gap:12px;min-width:0;padding:14px;display:flex}.hero-metric.amber{background:var(--fuel-soft);color:var(--fuel-ink);border-color:#fde68a99}.hero-metric.emerald{background:var(--soft);color:var(--primary-ink);border-color:#bbf7d0b3}.hero-metric-main{min-width:0;display:block}.hero-metric .metric-label{color:inherit;margin:0 0 8px;font-size:12px;font-weight:600;line-height:1.5;display:block}.hero-metric .metric-value{margin:0;font-size:clamp(22px,6vw,26px);font-weight:750;line-height:1.2}.hero-metric .metric-unit{margin:0;font-size:12px;font-weight:500;line-height:1.5}.hero-metric-main>.small{color:inherit;margin:8px 0 0;font-size:12px;line-height:1.5;display:block}.hero-metric-caption{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 8px;margin:0;font-size:12px;font-weight:500;line-height:1.5;display:flex}.purchase-distance{width:100%;min-height:48px;font:inherit;cursor:pointer}.purchase-distance:hover{background:var(--primary-soft)}.purchase-distance .metric-label{position:relative}.purchase-distance .metric-label svg{position:absolute;top:50%;right:0;transform:translateY(-50%)}.dashboard-metric .metric-value{margin:0;font-weight:800}.dashboard-metric .metric-unit{color:var(--muted);margin:4px 0 0;font-size:12px}.dashboard-metric{margin-bottom:0}.dashboard-metrics{margin-bottom:var(--section-gap);grid-template-columns:repeat(2,minmax(0,1fr))}.metric-label{font-weight:500}.log-card.compact{padding:16px}.data-table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.data-table th{color:var(--muted);background:var(--bg);font-size:12px;font-weight:600}.data-table th,.data-table td{border-bottom:1px solid var(--border);vertical-align:top;padding:12px 8px}.data-table th:first-child,.data-table td:first-child{padding-left:0}.data-table tbody tr:last-child td{border-bottom:0}.price-table-wrap{margin-top:16px;overflow-x:auto}.price-table-wrap .data-table th:not(:first-child),.price-table-wrap .data-table td:not(:first-child){white-space:nowrap;text-align:right}.formula-table{border-collapse:collapse;width:100%;margin-top:16px;font-size:14px}.formula-table td,.formula-table th{text-align:left;vertical-align:top;border-bottom:1px solid var(--border);padding:12px 0}.formula-table th{padding-right:16px;font-weight:600}.refill-sheet{flex-direction:column;width:min(640px,100% - 48px);max-width:640px;max-height:calc(100dvh - 48px);padding:0;display:flex;overflow:hidden}.refill-sheet>.dialog-heading{flex-shrink:0;margin:0}.refill-sheet .refill-form{min-height:0;padding:0 24px;scroll-padding-block:24px 100px;overflow-y:auto}.refill-sheet .refill-form>.error{margin-top:16px}.refill-sheet .form-grid{grid-template-columns:minmax(0,1fr)}.refill-sheet .form-grid .card{border-bottom:1px solid var(--border)}.refill-sheet .save-bar{padding:12px 0 calc(12px + env(safe-area-inset-bottom));margin:0}.brand-pills{flex-wrap:wrap;gap:8px;margin:12px 0 0;display:flex}.pill{border:1px solid var(--control-border);min-height:48px;color:var(--muted);background:#fff;border-radius:999px;padding:10px 14px;font-size:13px;font-weight:600}.pill[aria-pressed=true]{border-color:var(--primary);background:var(--primary-soft);color:var(--primary-ink)}.price-banner{border-radius:var(--r-md);background:var(--primary-soft);margin-top:16px;padding:16px}.price-banner-heading{color:var(--primary-ink);justify-content:space-between;align-items:center;gap:8px;display:flex}.price-banner-heading strong{font-size:20px}.price-banner .numeric-field{background:#fff}.smart-inputs{grid-template-columns:minmax(0,1fr);gap:8px;display:grid}.smart-inputs label{margin:4px 0}.smart-inputs .amount-input{font-size:28px}.quick-chips{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0;display:grid}.quick-chips .button{background:var(--soft);padding:10px 4px;font-size:12px}.odo-delta{background:var(--primary-soft);color:var(--primary);border-radius:999px;align-items:center;margin-top:8px;padding:6px 10px;font-size:12px;display:inline-flex}input:disabled{color:var(--muted);opacity:1}@media (width<=1023px){.topbar .refill-action{display:none}}@media (width<=767px){.vehicle-heading{flex-basis:100%;width:100%;min-width:0}.vehicle-name{font-size:16px}.topbar{padding:16px var(--page-gutter) 0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.vehicle-heading{grid-column:1/-1}.month-picker{width:100%}.hero-balance{gap:12px;margin:12px 0 16px}.dashboard-page h1{font-size:24px;font-weight:800}.cost-hero .hero-number{font-size:34px}.dashboard-metrics{gap:12px;margin-top:0}.dashboard-metric{padding:16px}.dialog-content{border-radius:var(--r-lg)}.metric-guidance{width:100%;max-width:none;padding-bottom:calc(24px + env(safe-area-inset-bottom));border-radius:28px 28px 0 0;inset:auto 0 0;transform:none}.refill-sheet{width:100%;max-width:none;max-height:94dvh;inset:auto 0 0;transform:none}.refill-sheet:before{content:"";background:var(--border);border-radius:4px;flex-shrink:0;width:36px;height:4px;margin:10px auto 0}.refill-sheet>.dialog-heading{padding:10px 20px 12px}.refill-sheet h2{font-size:20px}}.price-details summary{cursor:pointer;min-height:48px;color:var(--muted);align-items:center;font-size:12px;display:flex}.price-details summary:before{content:"+";padding-right:8px}.price-details[open] summary:before{content:"−"}.smart-inputs .liters-input{color:var(--primary-ink);font-size:24px;font-weight:700}.quick-chips .pill{border-radius:var(--r-md);padding:8px 4px;font-size:13px}.price-banner .section-heading{margin-bottom:0}@media (width<=767px){.price-banner{padding:12px}}.hero-metric .metric-value .metric-unit{white-space:nowrap}.app-icon{vertical-align:middle;flex-shrink:0;display:inline-block}.bottom-nav a:not(.nav-fab)>.app-icon{width:20px;height:20px}.bottom-nav a.active>.app-icon{background:var(--primary-soft);box-shadow:0 0 0 5px var(--primary-soft), 8px 0 0 5px var(--primary-soft), -8px 0 0 5px var(--primary-soft);border-radius:5px}.card>:last-child,.main-content>:last-child{margin-bottom:0}.page-title>div>p:last-child{margin-bottom:0;line-height:1.5}.metric>.eyebrow{margin-bottom:6px}.metric>.muted{margin:4px 0 0;font-size:14px;line-height:1.45}.report-hero .section-heading{margin-bottom:8px}.report-hero .hero-number{margin:10px 0;line-height:1.2}.report-hero .insight{margin-top:12px;padding:12px}.report-hero>.small{margin-bottom:0}.chart-empty{border-radius:var(--r-md);border:1.5px dashed var(--border);background:var(--bg);color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;margin-top:16px;padding:32px 16px;font-size:14px;font-weight:500;line-height:1.6;display:flex}.chart-empty:before{content:"";background-color:var(--primary-soft);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 256 256' fill='%23004b87'%3E%3Cpath d='M224,200h-8V40a16,16,0,0,0-16-16H56A16,16,0,0,0,40,40V200H32a8,8,0,0,0,0,16H224a8,8,0,0,0,0-16ZM56,40H184V200H152V136a8,8,0,0,0-8-8H112a8,8,0,0,0-8,8v64H56ZM136,200H120V144h16Zm8-96H112a8,8,0,0,1,0-16h32a8,8,0,0,1,0,16Z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;border-radius:50%;width:42px;height:42px;margin-bottom:10px;display:block}.vehicle-item:last-child{padding-bottom:0}.fuel-prices-card>.button+p{margin-top:12px}.auth-branding{margin-bottom:24px}.auth-trust{margin-top:24px;padding-top:20px}@media (width<=767px){.page-title{margin-bottom:16px}.page-title .button{white-space:nowrap;flex-shrink:0}.main-content{padding:20px var(--page-gutter) var(--nav-clearance)}.report-metrics .metric{padding:16px}.chart{height:184px;margin-top:12px}.auth-shell{padding-top:max(32px, env(safe-area-inset-top))}}@media (width>=1024px){.cost-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:16px 24px;display:grid}.cost-hero>.section-heading,.cost-hero>.budget-progress{grid-column:1/-1}.cost-hero>.hero-balance,.cost-hero>.hero-metrics{margin:0}.cost-hero>.budget-progress{margin-top:0}}@media (width>=1440px){.recent-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=374px){.cost-hero .hero-balance{gap:8px}}.refill-sheet>.dialog-heading{background:#fff;padding:12px 20px}.refill-sheet .refill-form{padding-inline:20px}.refill-sheet .draft-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding-top:8px;display:flex}.refill-sheet .draft-toolbar p{margin:0}.refill-sheet .draft-toolbar .small{font-size:12px;line-height:1.5}.refill-sheet .draft-toolbar .text-button{white-space:nowrap;padding-inline:0;font-size:12px}.refill-sheet .eyebrow{letter-spacing:.06em;margin-bottom:12px;font-size:12px;line-height:1.5}.refill-sheet label{margin:0 0 12px;font-size:13px;font-weight:600;line-height:1.5}.refill-sheet label:last-child{margin-bottom:0}.refill-sheet .small{font-size:12px;line-height:1.5}.refill-sheet .price-banner{justify-content:space-between;align-items:center;gap:8px;margin-top:12px;padding:6px 12px;display:flex}.refill-sheet .price-banner-heading{flex:1;justify-content:flex-start;gap:8px;min-width:0}.refill-sheet .price-banner-heading>span{display:none}.refill-sheet .price-banner-heading strong{font-variant-numeric:tabular-nums;font-size:20px}.refill-sheet .price-banner .section-heading{flex-shrink:0;margin:0}.refill-sheet .price-banner .text-button{padding:8px 0 8px 8px;font-size:12px}.refill-sheet .price-banner+label{margin-top:12px}.refill-sheet .price-details summary{font-size:12px}.refill-sheet .warning{margin:0;padding:12px;font-size:12px;line-height:1.5}.refill-sheet .smart-inputs{grid-template-columns:minmax(0,1fr)}.refill-sheet .numeric-field{background:var(--bg);border-radius:var(--r-md);margin-top:6px}.refill-sheet .smart-inputs input{padding:14px 16px;font-size:24px;line-height:1.25}.refill-sheet .smart-inputs .numeric-unit{padding-right:16px;font-size:13px}.refill-sheet .quick-chips .pill{background:var(--soft);border-color:#0000;font-size:12px}.refill-sheet .quick-chips .pill[aria-pressed=true]{background:var(--primary-soft);border-color:var(--primary)}.refill-sheet .brand-pills .pill{padding-inline:10px}.refill-sheet .form-section-label{margin-bottom:12px;font-size:13px;font-weight:600}.refill-sheet .tank-control{margin-top:12px}.refill-sheet .section-heading{gap:12px;margin-bottom:0}.refill-sheet .toggle-label{margin:0 0 4px;font-size:14px}.refill-sheet .section-heading .small{margin:0}.refill-sheet .save-bar{margin-top:12px;padding-top:12px}@media (width>=600px){.refill-sheet .smart-inputs{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.refill-sheet .form-grid .card{padding:20px}}.dashboard-metric{flex-direction:column;align-items:flex-start;display:flex}.dashboard-metric .metric-label{font-size:12px;line-height:1.4}.dashboard-metric .metric-value{font-size:24px;line-height:1.2}.dashboard-metric:last-child .metric-value{font-size:24px}.dashboard-metric .small{font-size:12px;line-height:1.5}.dashboard-metric .metric-help{margin-top:0}.hero-metric-main .metric-value{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:6px;display:flex}.hero-metric .metric-value .metric-unit{margin-left:0}.report-metrics .metric{flex-direction:column;gap:4px;display:flex}.report-metrics .metric>p,.report-metrics .metric-value{margin:0}.card h2{font-size:20px;line-height:1.4}.card>h2+p{margin-top:6px}.refill-sheet .fuel-select-label{margin:0;font-size:13px}.refill-sheet #fuel-type{border-radius:var(--r-md);background-color:var(--bg);min-height:48px;margin-top:8px;font-size:14px;font-weight:600}.history-summary-values{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:12px;margin:0 0 12px;display:grid}.history-summary-values dt{color:var(--muted);margin-bottom:4px;font-size:12px}.history-summary-values dd{color:var(--primary-ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0;font-size:20px;font-weight:750}.history-summary-values>div:nth-child(2){text-align:right}.history-summary-values .history-distance{flex-wrap:wrap;grid-column:1/-1;align-items:baseline;gap:4px;display:flex}.history-distance dt{margin:0}.history-distance dd{color:var(--muted);font-size:13px;font-weight:500}.history-summary>p{margin-bottom:4px;font-size:12px}.report-insight{color:var(--muted);margin:8px 0 0;font-size:13px}.report-insight.green-text{color:var(--primary-ink)}.report-calculations{padding-block:4px}.report-calculations summary,.settings-price-details summary{cursor:pointer;align-items:center;gap:8px;min-height:48px;font-weight:600;list-style:none;display:flex}.report-calculations summary::-webkit-details-marker{display:none}.settings-price-details summary::-webkit-details-marker{display:none}.report-calculations summary:after,.settings-price-details summary:after{content:"+";color:var(--muted);margin-left:auto;font-size:20px}.report-calculations details[open] summary:after,.settings-price-details[open] summary:after{content:"−"}.calculation-content{padding-bottom:12px}.calculation-content .formula-table{margin-top:4px}.calculation-content .method-note{margin-top:12px;display:block}.settings-grid{gap:var(--section-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.settings-grid>.card{margin:0}.settings-vehicles,.settings-account{grid-column:1/-1}.settings-price-details{color:var(--muted);margin-top:8px}.settings-price-details p{font-size:12px}.fuel-prices-card .warning{margin-top:12px}.vehicle-item{flex-wrap:nowrap;align-items:flex-start}.vehicle-item .icon-tile{border-radius:var(--r-md);width:40px;min-width:40px;height:40px}.vehicle-item .vehicle-name{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.vehicle-item .vehicle-name h3{overflow-wrap:anywhere;min-width:0;max-width:100%}.vehicle-item .grow>p{overflow-wrap:anywhere}.vehicle-item p{margin:4px 0 0;font-size:12px}.vehicle-meta{overflow-wrap:anywhere}.vehicle-item .actions{flex-wrap:nowrap;flex-shrink:0;margin-left:0}.settings-account .section-heading{flex-wrap:wrap}.settings-account .section-heading>div{min-width:0}.settings-account p{overflow-wrap:anywhere;font-size:13px}.settings-vehicle-form{gap:12px;display:grid}.settings-vehicle-form label,.settings-vehicle-form p{min-width:0;margin:0}.settings-vehicle-form .two-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (width<=767px){.settings-grid{grid-template-columns:minmax(0,1fr)}.refill-sheet .refill-form,.refill-sheet>.dialog-heading{padding-inline:16px}}@media (width<=374px){.history-summary-values>div:not(.history-distance) dd{font-size:20px}}@media (width>=1024px){.history-summary-values{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:0}.history-summary-values>div:nth-child(2){text-align:left}.history-summary-values .history-distance{grid-column:auto;display:block}.history-distance dt{margin-bottom:4px}.history-distance dd{color:var(--primary-ink);font-size:20px;font-weight:750}.history-summary>p{margin-top:8px}.toast{left:calc(50% + 112px)}}.chart.chart-sparse{height:144px}.chart-data-note{margin:8px 0 0;font-size:12px;line-height:1.5}.refill-sheet .form-grid .card.refill-price-details{padding-block:8px}.refill-sheet .refill-price-details summary{margin:0}.refill-sheet .form-grid .card>.warning{margin-top:12px}.nav-fab-wrap{justify-content:center;display:flex;position:relative}.bottom-nav .nav-fab{cursor:pointer;z-index:20;place-items:center;display:grid}.bottom-nav .nav-fab svg{transition:transform .2s cubic-bezier(.4,0,.2,1)}.bottom-nav .nav-fab[aria-expanded=true] svg{transform:rotate(45deg)}.bottom-nav .nav-fab[aria-expanded=true]{background:var(--primary-ink)}.add-menu-backdrop{z-index:15;-webkit-backdrop-filter:blur(1.5px);background:#0f1c1947;animation:.15s ease-out ft-fade;position:fixed;inset:0}.add-menu{z-index:20;background:var(--card-bg,#fff);border:1px solid var(--border);border-radius:var(--r-lg);transform-origin:bottom;gap:4px;min-width:190px;padding:6px;animation:.18s cubic-bezier(.2,.8,.2,1) ft-pop;display:grid;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 12px 32px -8px #10201d2e}.bottom-nav .add-menu a{min-height:48px;color:var(--primary-ink);flex-direction:row;justify-content:flex-start;gap:10px;padding:0 14px;font-size:16px;font-weight:600}.bottom-nav .add-menu a.add-menu-service{color:var(--service)}.bottom-nav .add-menu a:hover{background:var(--soft)}.service-action{white-space:nowrap;color:var(--service);border-radius:999px;padding:12px 16px;font-size:14px}@media (width<=1023px){.topbar .service-action{display:none}}.segmented-tabs{background:var(--soft);margin-bottom:var(--section-gap);border-radius:999px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;max-width:420px;padding:4px;display:grid}.segmented-tabs button{min-height:48px;color:var(--muted);background:0 0;border:0;border-radius:999px;font-size:14px;font-weight:600}.segmented-tabs button[aria-selected=true]{color:var(--primary-ink);background:#fff;box-shadow:0 2px 6px #10201d14}.segmented-tabs button.tab-service[aria-selected=true]{color:var(--service)}.overline{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 4px 8px;font-size:12px;font-weight:700;line-height:14px}.due-section{margin-bottom:var(--section-gap)}.due-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.due-item a{border-radius:var(--r-lg);background:var(--soft);justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:10px 14px;display:flex}.due-name{font-size:16px;font-weight:600}.due-badge{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right;background:#fff;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.due-overdue a{background:var(--danger-soft)}.due-overdue .due-badge{color:var(--danger-ink)}.due-soon a{background:var(--warning-soft)}.due-soon .due-badge{color:var(--warning)}.due-card .section-heading{margin-bottom:12px}.service-list-card{padding:0;overflow:hidden}.service-list{margin:0;padding:0;list-style:none}.service-list li+li{border-top:1px solid var(--border)}.service-row{grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:64px;padding:14px 16px;display:grid}.service-row:hover{background:var(--soft)}.service-icon{border-radius:var(--r-md);background:var(--service-soft);width:40px;height:40px;color:var(--service);place-items:center;display:grid}.service-main{gap:2px;min-width:0;display:grid}.service-title{text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:600;overflow:hidden}.service-cost{font-variant-numeric:tabular-nums;font-size:16px;font-weight:700}.service-pills{flex-wrap:wrap;gap:8px;display:flex}.service-pills .pill[aria-pressed=true]{border-color:var(--service);background:var(--service-soft);color:var(--service)}.service-next{background:var(--service-soft)}.service-next .form-section-label{color:var(--service-ink);margin:0;font-size:16px}.service-next .small.muted{color:var(--service-ink)}.danger-text{color:var(--danger-ink)}.table-scroll{overflow-x:auto}.cost-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.cost-table th,.cost-table td{text-align:right;border-bottom:1px solid var(--border)}.cost-table th:first-child{text-align:left}.cost-table thead th{text-transform:uppercase;color:var(--muted)}.cost-table .service-amount{color:var(--service-ink)}.cost-table tfoot th,.cost-table tfoot td{background:var(--soft);border-bottom:0;font-weight:700}.vehicle-cost-card h2{margin-bottom:8px}.history-grid{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;display:block;overflow:hidden}.history-grid .log-card{box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:14px 16px}.history-grid .log-card+.log-card{border-top:1px solid var(--border)}.log-row{justify-content:space-between;gap:12px;display:flex}.log-main{gap:2px;display:grid}.log-main h3{margin:0;font-size:16px;font-weight:600;line-height:20px}.log-main p{flex-wrap:wrap;align-items:center;gap:4px;margin:0;display:flex}.log-amount{flex-shrink:0;justify-items:end;gap:2px;display:grid}.log-amount strong{font-size:16px;font-weight:700;line-height:20px}.log-card .log-details{background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;margin:8px 0 0;padding:0;display:flex}.log-card .log-details p{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0;display:flex}.log-card .log-details .badge{flex-shrink:0}.badge.green{background:var(--primary-soft);color:var(--primary-ink)}.history-summary{border-radius:var(--radius)}.refill-sheet{background:#fff}.refill-sheet>.dialog-heading{border-bottom:0}.refill-sheet .form-grid{gap:0}.refill-sheet .form-grid .card{box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:14px 0}.refill-sheet .form-grid .card+.card{border-top:1px solid var(--border)}.refill-sheet .smart-inputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.refill-sheet .smart-inputs label{margin:0}.refill-sheet .smart-inputs .amount-input{color:var(--primary-ink);font-size:20px;font-weight:700}.refill-sheet .smart-inputs .liters-input{font-size:20px}.refill-sheet .price-banner{background:var(--primary-soft);border-radius:var(--r-md)}.refill-sheet .quick-chips{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.refill-sheet .quick-chips .pill{border-radius:var(--r-md);min-height:48px;padding:0 6px}.refill-sheet .refill-odo-section{border-top:1px solid var(--border);margin-top:14px}.refill-sheet .warning{border-radius:var(--r-md);background:var(--warning-soft);color:var(--warning)}.refill-sheet .save-bar{border-top:1px solid var(--border);background:#fff;gap:12px;display:flex}.refill-sheet .save-bar .button{border-radius:var(--r-md);min-height:48px}.refill-sheet .save-bar .secondary{flex:1}.refill-sheet .save-bar .primary{background:var(--primary);flex:2}.refill-sheet .service-next{background:var(--service-soft);border-radius:var(--r-lg);border:0;margin:8px 0;padding:14px}.refill-sheet .service-next+.card{border-top:0}@media (width<=767px){.refill-sheet{border-radius:var(--r-lg) 24px 0 0}}@media (width<=1023px){.bottom-nav{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));border:1px solid var(--border);box-shadow:var(--shadow-float);background:#fffffff5;border-radius:999px;padding:6px 8px}.bottom-nav .nav-fab{top:-18px}}.topbar .vehicle-heading{box-shadow:none;background:0 0;border:0;padding-inline:0}.topbar .month-picker{border:1px solid var(--border);min-height:48px;box-shadow:none;background:#fff;border-radius:999px}.dashboard-page .page-title h1{font-size:24px}.cost-hero{padding:20px}.cost-hero .hero-period{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:12px}.cost-hero .hero-number{letter-spacing:-.03em;color:var(--primary-ink);font-size:34px;font-weight:760}.hero-service{color:var(--service-ink);font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:13px}.cost-hero .hero-metrics{border-top:1px solid var(--border);gap:0;margin:16px 0 12px;padding-top:12px}.cost-hero .purchase-controls{grid-column:1/-1;margin-bottom:12px}.cost-hero .hero-metric{text-align:left;color:var(--ink,var(--ink));background:0 0;border:0;border-radius:0;align-items:flex-start;gap:4px;padding:4px 12px 4px 0}.cost-hero .hero-metric+.hero-metric{border-left:1px solid var(--border);padding-left:12px}.cost-hero .hero-metric .metric-label{color:var(--muted);justify-content:flex-start;font-size:12px;font-weight:600}.cost-hero .hero-metric .metric-value{color:var(--ink);justify-content:flex-start;font-size:20px;font-weight:700}.cost-hero .hero-metric.emerald .metric-value{color:var(--primary-ink)}.cost-hero .hero-metric-caption,.cost-hero .hero-metric .small{color:var(--muted);text-align:left;font-size:12px}.cost-hero .hero-metric.purchase-distance:hover{background:var(--soft)}.cost-hero .budget-progress progress{border-radius:999px;height:8px}.dashboard-metrics .dashboard-metric{padding:16px}.dashboard-metrics .metric-value{font-size:20px}.recent-grid{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;display:block;overflow:hidden}.recent-grid .log-card{box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:14px 16px}.recent-grid .log-card+.log-card{border-top:1px solid var(--border)}.auth-shell{padding:0 0 calc(24px + env(safe-area-inset-bottom));background:var(--bg,var(--bg));flex-direction:column;align-items:center;min-height:100dvh;display:flex}.auth-branding{box-sizing:border-box;text-align:left;background:var(--primary);color:#fff;width:100%;min-height:248px;padding:max(64px, calc(env(safe-area-inset-top) + 40px)) max(24px, calc((100% - 420px) / 2 + 4px)) 80px;margin:0;position:relative;overflow:hidden}.auth-banner-art{width:100%;height:100%;position:absolute;inset:0}.auth-brand-row{align-items:center;gap:12px;display:flex;position:relative}.auth-branding .auth-logo{background:0 0;border-radius:11px;place-items:center;width:48px;height:48px;margin:0;display:grid;box-shadow:0 6px 16px -6px #00000040}.auth-branding h1{letter-spacing:-.02em;color:#fff;margin:0;font-size:20px;font-weight:760;line-height:24px}.auth-branding p{max-width:280px;color:var(--primary-soft);margin:20px 0 0;font-size:16px;line-height:22px;position:relative}.auth-panel,.auth-shell .auth-panel{box-sizing:border-box;border-radius:var(--r-lg);width:calc(100% - 32px);max-width:420px;box-shadow:var(--shadow-float);background:#fff;border:0;flex-direction:column;gap:4px;margin:-56px 16px 0;padding:20px;display:flex;position:relative}.auth-segments{background:var(--soft);border-radius:999px;margin-bottom:16px}.auth-segments button{min-height:48px;color:var(--muted);border-radius:999px}.auth-segments button[aria-pressed=true]{border-color:#0000;box-shadow:0 2px 6px #10201d1a}.auth-intro{margin-bottom:16px}.auth-intro .auth-mode-title{letter-spacing:-.02em;margin:0 0 4px;font-size:24px;font-weight:750;line-height:30px}.auth-intro .auth-help{margin:0;font-size:14px;line-height:20px}.auth-field label{color:var(--ink,var(--ink));font-size:14px}.auth-input{border-radius:var(--r-md)}.auth-input:focus-within{box-shadow:0 0 0 3px var(--primary-soft)}.auth-panel .auth-submit{border-radius:var(--r-md);justify-content:center;align-items:center;gap:8px;min-height:52px;font-size:16px;display:flex;box-shadow:0 6px 16px -6px #004b878c}.auth-registered{text-align:center;flex-direction:column;align-items:center;gap:12px;padding-block:8px;display:flex}.auth-registered-icon{width:56px;height:56px;color:var(--primary-ink);background:var(--primary-soft);border-radius:50%;place-items:center;display:grid}.auth-registered .auth-mode-title{letter-spacing:-.02em;outline:none;margin:4px 0 0;font-size:24px;font-weight:750;line-height:30px}.auth-registered .auth-help{margin:0;font-size:14px;line-height:22px}.auth-registered strong{color:var(--ink);overflow-wrap:anywhere}.auth-registered .small{margin:0 0 8px;line-height:20px}.auth-registered>.error,.auth-registered>.success{box-sizing:border-box;width:100%;margin:0}.auth-trust{text-align:center;border-top:0;justify-content:center;max-width:360px;margin:24px 32px 0;padding:0}.history-grid .log-card,.log-card{position:relative}.log-link{z-index:1;border-radius:inherit;position:absolute;inset:0}.log-link:hover{background:#004b870a}.log-link:focus-visible{outline-offset:-3px}.history-hint{text-align:center;margin-top:12px}.page-title .csv-button{border-radius:var(--r-md);min-height:48px;padding:0 14px;font-size:14px}.mode-switch{background:var(--soft);border-radius:999px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-bottom:12px;padding:4px;display:grid}.mode-switch button{min-height:48px;color:var(--muted);background:0 0;border:0;border-radius:999px;font-size:14px;font-weight:600}.mode-switch button[aria-pressed=true]{color:var(--ink,var(--ink));background:#fff;box-shadow:0 2px 6px #10201d14}.refill-sheet .smart-inputs.single{grid-template-columns:minmax(0,1fr)}.refill-sheet .smart-inputs.single .amount-input{font-size:24px}.refill-sheet .smart-inputs.single .numeric-field input{border-width:2px;border-color:var(--primary);color:var(--primary-ink);font-weight:700}.amount-conversion{border-radius:var(--r-md);background:var(--primary-soft);color:var(--primary-ink);justify-content:space-between;gap:8px;margin:10px 0 0;padding:10px 14px;font-size:14px;display:flex}.chart-legend{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.legend-swatch{border-radius:3px;width:10px;height:10px;margin-left:6px;display:inline-block}.legend-swatch.fuel{background:var(--primary)}.legend-swatch.service{background:var(--service)}.vehicle-cost-card .cost-chart{height:160px;margin:8px 0 12px}.cost-table{table-layout:auto;font-size:13px}.cost-table th,.cost-table td{white-space:nowrap;padding:10px 4px}.cost-table th:first-child,.cost-table td:first-child{padding-left:0}.cost-table th:last-child,.cost-table td:last-child{padding-right:0}.cost-table thead th{letter-spacing:.04em;font-size:10px}.cost-table tr[aria-current]{background:var(--primary-soft)}.vehicle-cost-card .table-scroll{margin-inline:-4px;padding-inline:4px}.price-table{font-variant-numeric:tabular-nums}.price-table thead th{letter-spacing:.06em;text-transform:uppercase;background:0 0;padding-top:0;font-size:12px;font-weight:700}.price-table tbody th{color:var(--ink,var(--ink));vertical-align:middle;background:0 0;font-size:14px;font-weight:700}.price-table td{vertical-align:middle;font-size:16px}.price-table tr.is-current th,.price-table tr.is-current td{background:var(--primary-soft)}.price-table tr.is-current td:nth-child(2){color:var(--primary-ink);font-weight:700}.price-table tr.is-current th:first-child{border-radius:var(--r-md) 0 0 12px;padding-left:8px}.price-table tr.is-current td:last-child{border-radius:0 12px 12px 0}.price-own-tag{letter-spacing:.06em;text-transform:uppercase;color:var(--primary-ink);margin-top:2px;font-size:10px;display:block}.fuel-prices-card h2{align-items:center;gap:8px;display:flex}.vehicle-list .icon-button,.vehicle-list .button{border-radius:var(--r-md)}.refill-sheet .refill-main{gap:12px;display:grid}.refill-sheet .refill-main>label,.refill-sheet .refill-main>p{margin:0}.fuel-price-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.fuel-price-row .fuel-select-label{margin:0}.refill-sheet .fuel-price-row .price-banner{border-radius:var(--r-md);background:var(--primary-soft);min-height:48px;color:var(--primary-ink);align-items:center;gap:4px;margin:0;padding:0 4px 0 12px;display:flex}.refill-sheet .fuel-price-row .price-banner-heading{flex:none;gap:6px}.refill-sheet .fuel-price-row .price-banner-heading strong{white-space:nowrap;font-size:16px}.refill-sheet .fuel-price-row .text-button{min-height:48px;padding:0 8px;font-size:13px}.info-note{border-radius:var(--r-md);background:var(--primary-soft);color:var(--primary-ink);margin:0;padding:10px 12px;line-height:1.45}.refill-sheet .mode-switch{margin:4px 0 0}.refill-sheet .amount-conversion,.refill-sheet .quick-chips{margin:0}.refill-sheet .refill-odo-section{gap:8px;margin:4px 0 0;padding-top:14px;display:grid}.field-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field-pair label{min-width:0;margin:0}.field-pair input[type=datetime-local]{min-width:0;padding-inline:10px;font-size:16px}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}input[type=date],input[type=datetime-local]{appearance:none;min-width:0;padding-block:12px;line-height:24px}input[type=date]::-webkit-date-and-time-value{text-align:left;min-height:24px;margin:0;line-height:24px}input[type=datetime-local]::-webkit-date-and-time-value{text-align:left;min-height:24px;margin:0;line-height:24px}.refill-sheet .refill-odo-section>p{margin:0}.refill-sheet .tank-control{border-top:1px solid var(--border);margin:4px 0 0;padding-top:10px}.refill-sheet .price-details summary{cursor:pointer;align-items:center;min-height:48px;font-weight:600;display:flex}.refill-sheet .price-details label{margin-top:4px}@media (width<=359px){.fuel-price-row,.field-pair{grid-template-columns:minmax(0,1fr)}}.auth-remember input[type=checkbox]{appearance:none;border:1.5px solid var(--control-border);cursor:pointer;background:#fff;border-radius:6px;flex-shrink:0;place-items:center;width:20px;height:20px;min-height:20px;margin:0;transition:background-color .15s,border-color .15s;display:grid}.auth-remember input[type=checkbox]:after{content:"";opacity:0;border-top:0;border-bottom:2px solid #fff;border-left:2px solid #fff;border-right:0;width:10px;height:6px;transform:translateY(-1px)rotate(-45deg)}.auth-remember input[type=checkbox]:checked{background:var(--primary);border-color:var(--primary)}.auth-remember input[type=checkbox]:checked:after{opacity:1}.cost-hero .hero-balance{flex-wrap:nowrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.cost-hero .hero-summary{min-width:0}.cost-hero .hero-number{overflow-wrap:anywhere;font-size:clamp(24px,7.6vw,34px);line-height:1.15}.cost-hero .budget-ring{flex-shrink:0;margin:0}.refill-sheet .field-pair .numeric-field input{height:52px;min-height:52px;color:var(--ink,var(--ink));font-size:16px;font-weight:600}.refill-sheet .field-pair input[type=datetime-local]{height:54px;min-height:54px;color:var(--ink,var(--ink));margin-top:6px;font-size:16px;font-weight:600}.refill-sheet .field-pair .odo-input{font-size:16px}.refill-sheet .field-pair{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:10px}.refill-sheet .field-pair input[type=datetime-local]{padding-inline:8px;font-size:16px}@media (width<=399px){.fuel-price-row{grid-template-columns:minmax(0,1fr)}.refill-sheet .fuel-price-row .price-banner{justify-content:space-between}}.refill-sheet .smart-inputs.single{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}.refill-sheet .smart-inputs.single .amount-conversion{border-radius:var(--r-md);white-space:nowrap;flex-direction:column;justify-content:center;align-items:flex-end;gap:2px;min-height:56px;margin:0;padding:6px 12px;font-size:13px;display:flex}.refill-sheet .smart-inputs.single .amount-conversion[hidden]{display:none}.refill-sheet .smart-inputs.single:has(.amount-conversion[hidden]){grid-template-columns:minmax(0,1fr)}.refill-sheet .smart-inputs.single .amount-conversion strong{font-size:16px}.refill-sheet .smart-inputs.single .amount-conversion span{color:var(--muted);font-size:12px}.refill-sheet .service-form .form-grid .card{gap:14px;display:grid}.refill-sheet .service-form .card>label,.refill-sheet .service-form .smart-inputs label{margin:0}.refill-sheet .service-form .smart-inputs{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.refill-sheet .service-form input:not([type=checkbox]),.refill-sheet .service-form .numeric-field input{height:52px;min-height:52px;color:var(--ink,var(--ink));margin-top:6px;padding-inline:12px;font-size:16px;font-weight:500;line-height:1.2}.refill-sheet .service-form input::placeholder,.refill-sheet .service-form textarea::placeholder{color:var(--control-border);font-size:16px;font-weight:400}.refill-sheet .service-form input[type=date]{padding-inline:10px}.refill-sheet .service-form textarea{margin-top:6px;font-size:16px}.refill-sheet .service-form .service-pills{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0 16px;display:grid}.refill-sheet .service-form .service-pills .pill{white-space:nowrap;text-overflow:ellipsis;border-radius:var(--r-md);background:var(--soft);min-height:44px;color:var(--ink);border:1px solid #0000;padding:0 8px;font-size:14px;font-weight:600;overflow:hidden}.refill-sheet .service-form .service-pills .pill[aria-pressed=true]{background:var(--service-soft);border-color:var(--service-ink);color:var(--service-ink)}.refill-sheet .service-form #service-category-label{margin-bottom:0}.refill-sheet .service-form .service-next{gap:10px;padding:16px}.refill-sheet .service-form .service-next .section-heading{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0}.refill-sheet .service-form .service-next>p{margin:0;line-height:1.45}.refill-sheet .service-form .numeric-field{background:#fff;height:52px;margin-top:6px}.refill-sheet .service-form .numeric-field>input:not([type=hidden]){background:0 0;height:50px;min-height:0;margin:0}.dialog-content:focus{outline:none}.refill-sheet .brand-pills{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0 16px;display:grid}.refill-sheet .brand-pills .pill{border-radius:var(--r-md);background:var(--soft);border-color:#0000;min-height:48px;padding:0 6px;font-size:13px}.refill-sheet .brand-pills .pill[aria-pressed=true]{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-ink)}.log-row{align-items:center}.log-icon{border-radius:var(--r-md);background:var(--fuel-soft);width:40px;height:40px;color:var(--fuel);flex:none;place-items:center;display:grid}.log-main{flex:1;min-width:0}.log-main h3{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.log-amount .green-text{color:var(--ink)}.dashboard-metric .metric-label{color:var(--muted);margin:0 0 8px;font-weight:600}.page-title{align-items:center;gap:8px;display:flex}.page-title>:first-child{margin-right:auto}.page-title .month-picker{border:1px solid var(--border);box-shadow:none;background:#fff;border-radius:999px;align-items:center;padding:0 12px;display:inline-flex;position:relative}.page-title .month-display{color:var(--ink);white-space:nowrap;align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}@keyframes ft-rise{0%{opacity:0;translate:0 10px}}@keyframes ft-fade{0%{opacity:0}}@keyframes ft-sheet{0%{opacity:0;translate:0 32px}}@keyframes ft-pop{0%{opacity:0;scale:.96}}.page-enter>*{animation:.32s cubic-bezier(.2,.8,.2,1) both ft-rise}.page-enter>*>:nth-child(2){animation:.36s cubic-bezier(.2,.8,.2,1) 40ms both ft-rise}.page-enter>*>:nth-child(3){animation:.36s cubic-bezier(.2,.8,.2,1) 80ms both ft-rise}.page-enter>*>:nth-child(4){animation:.36s cubic-bezier(.2,.8,.2,1) .12s both ft-rise}.page-enter>*>:nth-child(n+5){animation:.36s cubic-bezier(.2,.8,.2,1) .16s both ft-rise}.dialog-overlay[data-state=open]{animation:.2s ease-out ft-fade}.dialog-content[data-state=open]{animation:.22s cubic-bezier(.2,.8,.2,1) ft-pop}.refill-sheet[data-state=open]{animation:.3s cubic-bezier(.2,.9,.25,1) ft-sheet}.button,.pill,.icon-button{transition:background-color .15s,color .15s,border-color .15s,scale .12s}.button:active:not(:disabled),.pill:active,.icon-button:active{scale:.97}.page-title h1{white-space:nowrap}.page-title .month-picker{flex:none;gap:0;width:auto;max-width:none;height:44px;min-height:44px}.page-title .month-picker input{opacity:0;width:100%;height:100%;position:absolute;inset:0}.page-title{flex-wrap:wrap;row-gap:8px}.page-title>*{min-width:0}@media (width<=374px){.cost-hero{padding:16px 12px}.cost-hero .hero-metrics{gap:0}.cost-hero .hero-metric{padding:4px 6px 4px 0}.cost-hero .hero-metric+.hero-metric{padding-left:6px}}@media (width<=1023px){:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only}}.dialog-title-group{align-items:center;gap:12px;min-width:0;display:flex}.dialog-title-group h2{overflow-wrap:anywhere;margin:0}.dialog-icon{border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;display:inline-grid}.dialog-icon.primary{background:var(--primary-soft);color:var(--primary-ink)}.dialog-icon.danger{background:var(--danger-soft);color:var(--danger-ink)}.confirm-description{margin:0;line-height:1.6}.confirm-email{overflow-wrap:anywhere;font-weight:650}.confirm-note{margin:8px 0 0}.confirm-error{margin:16px 0 0}.dialog-actions{gap:12px;margin-top:24px;display:flex}.dialog-actions>.button{flex:1 1 0;min-width:0}.settings-vehicle-form .dialog-actions{margin-top:8px}.button.danger{color:#fff;background:#b91c1c}.button.danger:hover:not(:disabled){background:#991b1b}@media (width<=767px){.confirm-dialog,.vehicle-dialog{width:100%;max-width:none;padding-bottom:calc(24px + env(safe-area-inset-bottom));border-radius:28px 28px 0 0;inset:auto 0 0;transform:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@media (width>=1024px){:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--flank-pattern:linear-gradient(180deg, #003865 0%, #002646 100%);--bg:#f7f9fc;--card-bg:#fff;--ink:#142235;--muted:#506174;--soft:#eaf0f6;--border:#d9e2ec;--control-border:#7c8da2;--primary:#004b87;--primary-ink:#003d70;--primary-soft:#eaf2fa;--primary-line:#a8caec;--primary-hover:#003d70;--primary-foreground:#fff;--surface-hover:#edf2f8;--hero-control-bg:#ffffffa6;--hero-control-hover:#ffffff8c;--fuel-line:#c16b38;--success-ink:#166534;--success-soft:#edf8f0;--dialog-scrim:#0f172a7a;--desktop-modal-shadow:0 24px 80px #1020312e;--radius:22px;--card-padding:28px;--section-gap:24px;--page-gutter:32px;--shadow:none;background:var(--flank-pattern,#003666)}body{min-height:100vh}.app-shell{flex-direction:column;max-width:1240px;min-height:100vh;margin:0 auto;display:flex;position:relative;box-shadow:0 0 60px #00122659,0 0 0 1px #ffffff14}.sidebar{width:100%;max-width:100%;padding:20px var(--page-gutter);border:0;border-bottom:1px solid var(--border);background:#fff;flex-direction:row;justify-content:space-between;align-items:center;gap:24px;margin-inline:0;position:static;inset:auto}.brand{gap:10px;font-size:25px;font-weight:750}.brand-icon{background:0 0;width:40px;height:40px}.sidebar nav{flex-wrap:wrap;gap:8px;margin:0;display:flex}.sidebar nav a{border-radius:999px;min-height:46px;padding:10px 18px;font-weight:550}.sidebar nav a>svg{display:none}.sidebar nav a.active{font-weight:700}.sidebar-bottom{display:none}.workspace{margin-left:0}.topbar{padding:24px var(--page-gutter) 0;grid-template-columns:minmax(220px,1fr) auto auto;gap:12px}.topbar .vehicle-heading{max-width:400px;min-height:60px}.vehicle-emblem{background:var(--primary-soft);border:0;border-radius:50%;width:44px;height:44px}.vehicle-name{font-weight:650}.vehicle-registration{letter-spacing:.02em}.vehicle-chevron{background:var(--soft)}.main-content{width:100%;padding:32px var(--page-gutter) 64px}.page-title{gap:16px;margin-bottom:28px}.page-title h1,.dashboard-page .page-title h1{letter-spacing:-.04em;white-space:normal;font-size:34px;font-weight:650}.page-title .month-picker{border-color:var(--control-border);height:46px;min-height:46px;padding-inline:16px}.card{box-shadow:none;border-radius:22px}.card h2{letter-spacing:-.025em;font-size:20px;font-weight:650}.button{min-height:48px;box-shadow:none;border-radius:999px;padding:12px 22px;font-weight:650}.button.primary{background:var(--primary);color:var(--primary-foreground)}.button.primary:hover:not(:disabled){background:var(--primary-hover);color:var(--primary-foreground)}.button.secondary{border-color:var(--control-border)}.icon-button{border-radius:50%}input,select,textarea,.numeric-field{border-radius:12px}.section-heading{gap:16px}.section-heading h2{font-size:21px;font-weight:650}.dashboard-page{grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);align-items:start;gap:24px;display:grid}.dashboard-page>*{grid-column:1/-1;min-width:0;margin:0}.dashboard-page>.page-title{align-items:flex-end;margin-bottom:8px}.dashboard-page .desktop-intro{letter-spacing:.12em;color:var(--muted);margin-bottom:12px;font-size:12px;display:block}.dashboard-page .desktop-description{max-width:540px;color:var(--muted);margin:10px 0 0;font-size:15px;display:block}.dashboard-page>.cost-hero{background:var(--primary-soft);border-color:#0000;grid-column:1;align-self:stretch;padding:32px;display:block}.cost-hero .hero-period{text-transform:none;letter-spacing:0;color:var(--primary-ink);font-size:14px;font-weight:600}.cost-hero .hero-balance{flex-wrap:wrap;align-items:center;gap:20px;margin:24px 0}.cost-hero .hero-number{letter-spacing:-.045em;color:var(--ink);font-size:clamp(34px,3.8vw,56px);font-weight:650;line-height:1.15}.cost-hero .hero-currency{letter-spacing:0;font-size:16px;font-weight:500}.cost-hero .hero-metrics{border-color:var(--primary-line);gap:16px;margin:0;padding-top:20px}.cost-hero .purchase-controls{margin-bottom:0}.cost-hero .purchase-switch{background:var(--hero-control-bg)}.cost-hero .hero-metric{padding-block:8px}.cost-hero .hero-metric+.hero-metric{border-color:var(--primary-line);padding-left:20px}.cost-hero .hero-metric .metric-value{color:var(--ink);font-size:28px;font-weight:650}.cost-hero .hero-metric.purchase-distance:hover{background:var(--hero-control-hover)}.cost-hero .budget-progress{margin:22px 0 0}.cost-hero .budget-caption{flex-wrap:wrap;row-gap:6px}.cost-hero .budget-ring{flex-basis:70px;width:70px;height:70px}.dashboard-page>.dashboard-metrics{grid-area:2/2;grid-template-columns:repeat(2,minmax(0,1fr));align-self:stretch;gap:16px}.dashboard-metrics .dashboard-metric{background:var(--card-bg);padding:22px 18px}.dashboard-metrics .metric-value{font-size:25px;font-weight:650}.desktop-dashboard-actions{border:1px solid var(--border);background:var(--card-bg);border-radius:22px;flex-direction:column;order:-1;grid-column:1/-1;gap:16px;padding:28px;display:flex}.desktop-dashboard-actions h2{font-size:23px;font-weight:650}.desktop-dashboard-actions p{color:var(--muted);margin:0;font-size:14px;line-height:1.7}.desktop-dashboard-actions .button{width:100%}.dashboard-page>.section-gap{margin-top:8px}.recent-grid{box-shadow:none;border-radius:20px}.recent-grid .log-card{padding:22px 24px}.chart{margin-top:24px}.history-summary{background:var(--primary-soft);border-color:#0000;padding:28px 32px}.history-summary-values dd{font-weight:650}.segmented-tabs{max-width:400px;margin-bottom:24px}.segmented-tabs button{min-height:48px}.history-grid{gap:20px}.history-grid .log-card{box-shadow:none;border-radius:20px;padding:24px}.history-hint{margin-top:20px}.reports-page>.vehicle-cost-card{padding:32px}.vehicle-cost-card .cost-chart{height:220px;margin-block:20px}.cost-table th,.cost-table td{padding:16px 12px}.cost-table thead{background:var(--soft)}.cost-table tbody tr[aria-current]{background:var(--primary-soft)}.report-hero{background:var(--primary-soft);border-color:#0000}.report-grid{gap:24px}.settings-grid{align-items:start;gap:24px}.settings-grid>.card{padding:28px}.settings-grid .section-heading{margin-bottom:20px}.vehicle-item{padding-block:20px}.price-table th,.price-table td{padding-block:16px}.settings-account{grid-column:1/-1}.dialog-content{box-shadow:var(--desktop-modal-shadow);border-radius:22px}.dialog-content:not(.refill-sheet){padding:28px}.dialog-content h2{letter-spacing:-.025em;font-size:21px;font-weight:650}.confirm-dialog{max-width:480px}.refill-sheet .save-bar .button{border-radius:999px}.refill-sheet{background:var(--card-bg);width:min(840px,100% - 80px);max-width:840px}.refill-sheet>.dialog-heading{padding:24px 32px}.refill-sheet .refill-form{padding-inline:32px}.refill-sheet .draft-toolbar{margin-bottom:12px;padding-top:20px}.refill-sheet .form-grid{gap:24px}.refill-sheet .form-grid .card{border-radius:0;padding:24px 0}.refill-sheet .smart-inputs{gap:20px}.refill-sheet .numeric-field{background:var(--card-bg)}.refill-sheet .save-bar{padding-block:20px}.refill-sheet .save-bar .primary{background:var(--primary);border-radius:999px}.refill-sheet .brand-pills .pill{border-radius:999px}.toast{left:50%}:root:has(.auth-shell){background:var(--bg)}body:has(.auth-shell){background:var(--bg)}.auth-shell{background:var(--bg);justify-content:center;gap:24px;width:100%;padding:48px 24px}.auth-branding{width:auto;min-height:0;color:var(--ink);background:0 0;margin:0;padding:0;overflow:visible}.auth-banner-art,.auth-branding p{display:none}.auth-brand-row{justify-content:center}.auth-branding .auth-logo{width:44px;height:44px;box-shadow:none}.auth-branding .brand-word-accent{color:var(--brand-accent,#1e40af)}.auth-branding h1{color:var(--ink);letter-spacing:-.03em;font-size:24px;font-weight:700;line-height:30px}.auth-shell .auth-panel{border:1px solid var(--border);width:100%;max-width:440px;box-shadow:var(--desktop-modal-shadow);border-radius:24px;gap:8px;margin:0;padding:32px}.auth-intro{text-align:center;margin-block:8px 12px}.auth-intro .auth-mode-title{letter-spacing:-.03em;font-size:26px;font-weight:650;line-height:32px}.auth-intro .auth-help{margin-top:6px;line-height:1.6}.auth-panel .auth-submit{box-shadow:none;border-radius:999px;font-size:15px}.auth-trust{max-width:none;margin:0}body{background:var(--flank-pattern,#003666);color:var(--ink)}.app-shell{background:var(--card-bg,#fff)}.workspace,.topbar,.main-content{background:var(--card-bg,#fff);color:var(--ink)}.sidebar,.card,.history-grid,.recent-grid,.empty,.toast,.skip-link,.dialog-content,.refill-sheet>.dialog-heading,.refill-sheet .save-bar,.refill-sheet .form-grid .card,.auth-shell .auth-panel,.auth-input,.numeric-field,.price-banner .numeric-field,.refill-sheet .service-form .numeric-field,.page-title .month-picker,.pill,input,select,textarea{background-color:var(--card-bg);color:var(--ink)}.topbar .vehicle-heading{background:0 0}.sidebar nav a{color:var(--muted)}.sidebar nav a.active{background:var(--primary-soft);color:var(--primary-ink)}.sidebar nav a:hover:not(.active),.button.secondary:hover,.icon-button:hover,.pill:hover:not([aria-pressed=true]){background:var(--surface-hover)}.button.secondary,.icon-button{background:var(--soft);color:var(--ink)}.topbar .service-action{color:var(--service-ink)}.purchase-switch button,.segmented-tabs button,.auth-segments button,.mode-switch button{color:var(--muted)}.purchase-switch button[aria-pressed=true],.segmented-tabs button[aria-selected=true],.auth-segments button[aria-pressed=true],.mode-switch button[aria-pressed=true]{background:var(--card-bg);color:var(--primary-ink)}.refill-sheet #fuel-type{background-color:#0000}.refill-sheet .smart-inputs input,.refill-sheet .service-form .smart-inputs input,.refill-sheet .smart-inputs.single .numeric-field input,.auth-input input{background:0 0}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}.vehicle-name,.metric-value,.log-amount,.due-name{color:var(--ink)}.budget-remaining strong,.odo-delta{color:var(--primary-ink)}.vehicle-registration,.metric-help,.small.muted,.muted{color:var(--muted)}.vehicle-archived{color:var(--warning)}.pill[aria-pressed=true]{background:var(--primary-soft);color:var(--primary-ink)}.service-pills .pill[aria-pressed=true]{background:var(--service-soft);color:var(--service-ink)}.refill-sheet .service-next{background:var(--service-soft)}.warning,.refill-sheet .warning{background:var(--warning-soft);color:var(--warning)}.error{background:var(--danger-soft);color:var(--danger-ink)}.field-error,.error a{color:var(--danger-ink)}.success{background:var(--success-soft);color:var(--success-ink)}.toast{box-shadow:var(--desktop-modal-shadow)}.due-badge{background:var(--card-bg)}.dialog-overlay{background:var(--dialog-scrim)}.legend-swatch.fuel{background:var(--fuel)}.recharts-cartesian-axis-tick-value{fill:var(--muted)}.recharts-line-dot{fill:var(--card-bg)}.recharts-tooltip-item{color:var(--ink)!important}.theme-toggle{z-index:40;border:1px solid var(--control-border);background:var(--card-bg);width:48px;min-height:48px;color:var(--primary-ink);box-shadow:none;border-radius:50%;place-items:center;padding:0;display:grid;position:fixed;top:19px;right:max(24px,50vw - 592px)}.theme-toggle:hover{background:var(--surface-hover)}.theme-toggle:focus-visible{outline:3px solid var(--primary-ink);outline-offset:3px}#root:has(.header-actions)>.theme-toggle{display:none}.header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.header-actions .theme-toggle{border-color:var(--border);position:static}.account-menu{position:relative}.account-trigger{border:1px solid var(--border);background:var(--card-bg);min-height:48px;color:var(--ink);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:5px 12px 5px 5px;font-size:14px;font-weight:650;transition:background-color .16s ease-out,border-color .16s ease-out;display:flex}.account-trigger:hover,.account-trigger[aria-expanded=true]{background:var(--surface-hover);border-color:var(--control-border)}.account-trigger:focus-visible{outline:3px solid var(--primary-ink);outline-offset:3px}.account-trigger-chevron{color:var(--muted);transition:rotate .18s cubic-bezier(.2,.8,.2,1)}.account-trigger[aria-expanded=true] .account-trigger-chevron{rotate:180deg}.account-avatar{background:var(--primary);color:var(--primary-foreground);border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;line-height:1;display:inline-grid}.account-avatar.small{width:36px;height:36px;font-size:15px}.account-avatar.large{width:44px;height:44px;font-size:18px}.account-panel{z-index:45;border:1px solid var(--border);background:var(--card-bg);width:320px;box-shadow:var(--desktop-modal-shadow);transform-origin:100% 0;border-radius:20px;padding:8px;animation:.18s cubic-bezier(.2,.8,.2,1) ft-pop;position:absolute;top:calc(100% + 8px);right:0}.account-identity{align-items:center;gap:12px;padding:12px;display:flex}.account-identity p{margin:0}.account-email{color:var(--ink);overflow-wrap:anywhere;margin-top:2px;font-size:14px;font-weight:650}.account-sign-out{width:100%;min-height:48px;color:var(--danger-ink);text-align:left;background:0 0;border:0;border-radius:14px;align-items:center;gap:10px;margin-top:4px;padding:10px 12px;font-size:14px;font-weight:650;transition:background-color .16s ease-out;display:flex}.account-sign-out:hover{background:var(--danger-soft)}.account-sign-out:focus-visible{outline:3px solid var(--danger-ink);outline-offset:-3px}:root.desktop-theme-changing *,:root.desktop-theme-changing :before,:root.desktop-theme-changing :after{transition:none!important}:root[data-desktop-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand-accent:#7ea6ff;--flank-pattern:linear-gradient(180deg, #07101b 0%, #03070d 100%);--bg:#0c1522;--card-bg:#152235;--ink:#edf3fa;--muted:#b3c1d3;--soft:#23354c;--border:#34465e;--control-border:#7588a2;--primary:#286fb4;--primary-ink:#b1d5ff;--primary-soft:#172f4b;--primary-line:#3d638c;--primary-hover:#205b94;--primary-foreground:#fff;--accent:#f97316;--surface-hover:#2c415c;--hero-control-bg:#ffffff0f;--hero-control-hover:#ffffff17;--fuel:#ea580c;--fuel-ink:#fdba74;--fuel-soft:#38261c;--fuel-line:#c16b38;--service:#9061f9;--service-ink:#c4b5fd;--service-soft:#2c2445;--warning:#fdba74;--warning-soft:#382b1b;--danger-ink:#fda4af;--danger-soft:#3a212c;--success-ink:#86efac;--success-soft:#18382f;--dialog-scrim:#02070fb8;--desktop-modal-shadow:0 24px 80px #00000080;--shadow-float:0 12px 32px -8px #000000b3}}@media (width<=1023px){.desktop-intro,.desktop-description,.desktop-dashboard-actions,.theme-toggle{display:none}}
