@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-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@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;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}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.block{display:block}.hidden{display:none}.inline{display:inline}.table{display:table}.rounded{border-radius:.25rem}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}:root{color:#171a20;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--green-900:#07563b;--green-800:#08734b;--green-700:#0f8f58;--green-100:#e6f5ed;--green-50:#f2fbf6;--blue-700:#216ad9;--ink:#171a20;--muted:#6f7782;--line:#e4e8ec;--surface:#fff;--canvas:#f1f3f6;--danger:#b42318;--radius:20px;background:#f1f3f6;font-family:Noto Sans Thai,Leelawadee UI,Tahoma,system-ui,sans-serif}*{box-sizing:border-box}html{background:var(--canvas);min-width:320px;min-height:100%}body{background:var(--canvas);min-width:320px;min-height:100%;margin:0}button,input,select{font:inherit}button{color:inherit}button:not(:disabled){cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #216ad947}h1,h2,p{margin:0}h1{letter-spacing:-.025em;font-size:clamp(1.7rem,6vw,2.15rem);line-height:1.18}h2{font-size:1.05rem;line-height:1.3}p{color:var(--muted);line-height:1.55}svg{flex:none}.brand{color:#191c21;letter-spacing:-.04em;align-items:center;gap:9px;font-size:1.35rem;font-weight:850;display:inline-flex}.brand__mark{object-fit:contain;width:24px;height:24px}.eyebrow{color:var(--green-800);letter-spacing:.025em;font-size:.78rem;font-weight:800}.icon-button{border:1px solid var(--line);background:var(--surface);border-radius:999px;place-items:center;width:42px;height:42px;display:grid}.icon-button svg{width:21px;height:21px}.primary-button,.secondary-button,.google-button{border:0;border-radius:15px;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:0 20px;font-weight:800;transition:transform .14s,box-shadow .14s,background .14s;display:inline-flex}.primary-button{color:#fff;background:#111514;width:100%;box-shadow:0 8px 20px #1115141f}.primary-button:not(:disabled):active,.google-button:not(:disabled):active{transform:translateY(1px)}.primary-button:disabled{color:#68716e;box-shadow:none;cursor:not-allowed;background:#d9dddc}.primary-button--fit{width:auto;margin-top:6px}.secondary-button{border:1px solid var(--line);background:#fff;width:100%}.danger-button{color:var(--danger)}.inline-error{color:var(--danger);background:#fff1f0;border:1px solid #f4c7c3;border-radius:13px;align-items:flex-start;gap:9px;padding:11px 13px;font-size:.9rem;line-height:1.45;display:flex}.state-page,.login-page{min-height:100dvh;padding:max(20px,env(safe-area-inset-top)) 18px max(20px,env(safe-area-inset-bottom));place-items:center;display:grid}.state-card,.loading-card{border:1px solid var(--line);border-radius:var(--radius);text-align:center;background:#fff;justify-items:center;gap:14px;width:min(100%,430px);padding:28px 24px;display:grid;box-shadow:0 12px 40px #28323a0f}.state-card__icon{color:var(--green-800)}.spinner{border:3px solid #dce6e1;border-top-color:var(--green-800);border-radius:999px;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-page{background:radial-gradient(circle at 50% 18%,#fff 0,#f4f7f5 44%,#eef1f4)}.login-card{background:#fffffff0;border:1px solid #dce2e0e6;border-radius:28px;gap:20px;width:min(100%,440px);padding:26px 22px;display:grid;box-shadow:0 20px 70px #25342d17}.login-card__visual{background:linear-gradient(145deg,#edf9f2,#f4f6f8);border-radius:22px;place-items:center;height:168px;display:grid;overflow:hidden}.login-card__visual img{object-fit:contain;filter:drop-shadow(0 16px 14px #0000001f);width:88%;max-height:150px}.login-card__copy{gap:8px;display:grid}.login-card__copy h1{font-size:1.8rem}.google-button{background:#fff;border:1px solid #dfe3e6;width:100%;box-shadow:0 6px 18px #1e26220f}.google-button:disabled{opacity:.65}.privacy-note{align-items:flex-start;gap:7px;font-size:.76rem;display:flex}.setup-page{min-height:100dvh;padding:max(20px,env(safe-area-inset-top)) 18px max(34px,env(safe-area-inset-bottom))}.setup-header,.page-header{grid-template-columns:1fr auto;align-items:center;width:min(100%,720px);margin:0 auto 28px;display:grid}.page-header{grid-template-columns:42px 1fr 42px}.page-header .brand{justify-self:center}.step-badge,.estimate-badge{background:var(--green-100);color:var(--green-900);border-radius:999px;padding:6px 10px;font-size:.7rem;font-weight:800}.setup-form{gap:16px;width:min(100%,720px);margin:0 auto;display:grid}.vehicle-edit-fields{border:0;gap:16px;min-width:0;margin:0;padding:0;display:grid}.setup-intro{gap:8px;margin-bottom:4px;display:grid}.setup-intro .vehicle-section-copy h1,.setup-page--costs .setup-intro>h1{color:var(--ink);margin:0;font-size:clamp(1.15rem,4.5vw,1.25rem);line-height:1.2}.setup-intro>p:last-child{max-width:580px}.vehicle-carousel-controls{grid-template-columns:46px minmax(0,1fr) 46px;align-items:center;gap:8px;width:min(100%,646px);margin:2px auto 0;display:grid}.vehicle-carousel-controls>button{border:1px solid var(--line);width:46px;height:46px;color:var(--brand-strong);cursor:pointer;background:#fff;border-radius:13px;place-items:center;display:grid;box-shadow:0 4px 14px #15395a12}.vehicle-carousel-controls>button svg{width:22px;height:22px}.vehicle-carousel-controls>button:disabled{color:#8a9bab;opacity:.7;cursor:default}.vehicle-carousel-controls>button:focus-visible{outline:3px solid var(--brand-strong);outline-offset:2px}.vehicle-carousel-controls__status{text-align:center;background:#fffffff0;border:1px solid #d4e8fa;border-radius:13px;align-content:center;justify-items:center;gap:2px;min-height:46px;padding:4px 6px;display:grid}.vehicle-carousel-controls__status strong{color:var(--ink);font-size:.72rem}.vehicle-carousel-controls__status small{color:var(--muted);font-size:.66rem}.field{color:#30353a;gap:8px;font-size:.9rem;font-weight:750;display:grid}.field>small{color:var(--muted);font-size:.74rem;font-weight:500;line-height:1.45}.field>input,.field>select,.input-with-unit,.input-with-icon{background:#fff;border:1px solid #dce2e5;border-radius:13px;width:100%;min-height:51px}.field>input,.field>select{padding:0 14px}.field>select:disabled{color:#949da5;background:#f4f6f7}.input-with-unit{grid-template-columns:1fr auto;align-items:center;display:grid;overflow:hidden}.input-with-unit:focus-within{border-color:var(--blue-700);box-shadow:0 0 0 3px #216ad91f}.input-with-unit input{background:0 0;border:0;outline:0;width:100%;min-width:0;height:49px;padding:0 14px}.input-with-unit em{color:#626b74;padding:0 13px;font-size:.77rem;font-style:normal;font-weight:750}.input-with-icon{grid-template-columns:38px 1fr;align-items:center;display:grid}.input-with-icon svg{width:18px;color:var(--muted);justify-self:end}.input-with-icon input{background:0 0;border:0;outline:0;height:49px;padding:0 12px}.field-grid,.form-grid-two,.vehicle-date-fields{gap:15px;display:grid}.vehicle-received-date{gap:7px;display:grid}.vehicle-same-date{color:var(--green-900);align-items:center;gap:7px;font-size:.72rem;display:flex}.vehicle-same-date input{width:17px;height:17px;accent-color:var(--green-700)}.vehicle-identity-fields,.vehicle-master-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.vehicle-photo-hero{touch-action:pan-y;background:linear-gradient(135deg,#eff8f3,#fff);border:1px solid #d8e4de;border-radius:20px;grid-template-columns:minmax(130px,42%) 1fr;align-items:center;gap:16px;padding:14px;display:grid;overflow:hidden}.vehicle-photo-hero>img{object-fit:contain;filter:drop-shadow(0 10px 8px #0000001c);width:100%;height:130px}.vehicle-photo-hero>div{gap:7px;display:grid}.vehicle-photo-hero span,.vehicle-photo-hero small{color:var(--muted);font-size:.7rem;line-height:1.4}.photo-upload-button{background:var(--green-800);color:#fff;cursor:pointer;border:0;border-radius:999px;align-items:center;gap:6px;width:fit-content;min-height:44px;padding:0 13px;font-size:.73rem;font-weight:800;display:inline-flex}.photo-upload-button svg{width:16px}.photo-source-menu{gap:6px;width:fit-content;max-width:100%;display:grid}.photo-source-menu button{min-height:44px;color:var(--green-800);font:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #c8dcd2;border-radius:10px;padding:4px 10px;font-size:.73rem;font-weight:700}.photo-source-menu button:focus-visible,.photo-upload-button:focus-visible{outline:2px solid var(--green-800);outline-offset:2px}.photo-source-input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.vehicle-photo-hero .photo-error{color:#b42318;font-weight:750}.vehicle-editor-card{touch-action:pan-y;width:min(100%,646px);margin-inline:auto;position:relative}.vehicle-editor-card .photo-source-input{top:0;left:0}.vehicle-editor-card .vehicle-editor-photo-button{white-space:normal;width:100%;min-height:44px;padding-inline:5px}.vehicle-editor-card .vehicle-editor-cost-empty{color:var(--muted);text-align:center;margin-top:12px;font-size:.78rem}.vehicle-editor-card .vehicle-editor-photo-menu{width:100%;margin-top:12px}.vehicle-editor-card .vehicle-editor-photo-menu button{width:100%}.vehicle-editor-card .vehicle-editor-photo-note{color:var(--muted);margin-top:10px;font-size:.66rem;line-height:1.45;display:block}.vehicle-editor-card .photo-error{color:#b42318;margin-top:8px;font-size:.72rem;font-weight:750;display:block}.derived-vehicle-card{background:var(--green-50);border:1px solid #cfe4d8;border-radius:16px;grid-template-columns:42px repeat(2,1fr);align-items:center;gap:13px;padding:13px;display:grid}.derived-vehicle-card>svg{width:38px;height:38px;color:var(--green-800);background:#fff;border-radius:11px;padding:9px}.derived-vehicle-card div{gap:2px;display:grid}.derived-vehicle-card small{color:var(--muted);font-size:.66rem}.derived-vehicle-card strong{font-size:.8rem}.cost-vehicle-value-card{background:#f5faf7;gap:10px;min-width:0;padding:14px 16px;display:grid}.cost-vehicle-value-card__top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.cost-vehicle-value-card__top .form-card__heading{min-width:0;margin-bottom:0}.cost-vehicle-value-card__top h2{font-size:.95rem}.cost-vehicle-value-card__top h2 small{color:var(--muted);font-size:.7rem;font-weight:600}.cost-vehicle-value-card__top p{color:var(--green-800);font-size:.68rem;line-height:1.4}.cost-vehicle-value-card__toggle{min-height:38px;color:var(--green-800);cursor:pointer;background:#fff;border:1px solid #c9dfd3;border-radius:10px;flex:none;align-items:center;gap:3px;padding:0 9px;font-size:.72rem;font-weight:800;display:inline-flex}.cost-vehicle-value-card__toggle svg{width:15px;height:15px;transition:transform .2s}.cost-vehicle-value-card__toggle svg[data-open=true]{transform:rotate(180deg)}.cost-vehicle-value-card__toggle:focus-visible{outline:2px solid var(--green-800);outline-offset:2px}.cost-vehicle-value-card__summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.cost-vehicle-value-card__summary span{min-width:0;color:var(--muted);background:#fff;border-radius:10px;gap:2px;padding:8px 10px;font-size:.65rem;display:grid}.cost-vehicle-value-card__summary strong{color:var(--ink);overflow-wrap:anywhere;font-size:.82rem}.cost-vehicle-value-card__empty{color:var(--muted);margin:0;font-size:.75rem}.cost-vehicle-value-card__unsaved{color:#9a5d09;margin:0;font-size:.7rem;font-weight:750}.cost-vehicle-value-card__editor{border-top:1px solid #d8e7de;gap:12px;padding-top:13px;display:grid}.cost-collapsible-heading{justify-content:space-between;align-items:flex-start;gap:10px;min-width:0;display:flex}.cost-collapsible-heading .form-card__heading{min-width:0;margin-bottom:0}.cost-collapse-summary{background:var(--green-50);color:var(--green-900);border-radius:10px;margin:0;padding:10px 12px;font-size:.72rem;font-weight:700;line-height:1.5}.vehicle-value-estimate{color:var(--green-800);flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:.85rem;display:flex}.field>.field-warning{color:#b42318;align-items:center;gap:5px;font-weight:750;display:flex}.field-warning svg{width:15px;height:15px}.usage-allocation-editor{gap:16px;display:grid}.usage-allocation-editor .form-card__heading{margin-bottom:0}.usage-allocation-preview{background:#dfe5e1;border-radius:999px;height:9px;overflow:hidden}.usage-allocation-preview span{border-radius:inherit;background:var(--green-700);height:100%;display:block}.usage-percentage-grid{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:16px;display:grid}.usage-total{background:var(--green-50);color:var(--green-900);text-align:center;border-radius:12px;padding:11px 12px;font-size:.8rem;font-weight:800}.usage-help{color:var(--muted);font-size:.72rem;line-height:1.55}.field--spaced{margin-top:16px}.choice-fieldset{border:0;margin:2px 0 0;padding:0}.choice-fieldset legend{margin-bottom:10px;font-size:.9rem;font-weight:800}.vehicle-type-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.choice-card{text-align:left;background:#fff;border:1px solid #dfe4e7;border-radius:17px;align-content:center;justify-items:start;gap:7px;min-height:130px;padding:17px;display:grid}.choice-card[data-selected=true]{border-color:var(--green-700);background:var(--green-50);box-shadow:inset 0 0 0 1px var(--green-700);color:var(--green-900)}.choice-card small{color:var(--muted);font-size:.73rem}.form-card,.advanced-card{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:18px;box-shadow:0 8px 28px #232e2909}.form-card__heading{align-items:flex-start;gap:12px;margin-bottom:17px;display:flex}.form-card__heading>svg{background:var(--green-100);width:38px;height:38px;color:var(--green-800);border-radius:12px;padding:9px}.form-card__heading div{gap:2px;display:grid}.form-card__heading p{font-size:.77rem}.cost-category-card{min-width:0}.cost-category-header{background:linear-gradient(110deg,#e7f6ee,#f5faf7);border:1px solid #d5e9df;border-radius:14px;align-items:center;gap:10px;min-width:0;margin-bottom:18px;padding:12px;display:flex}.cost-category-header__number{background:var(--green-800);color:#fff;border-radius:999px;flex:0 0 35px;place-items:center;width:35px;height:35px;font-size:1rem;font-weight:900;display:grid}.cost-category-header>svg{width:22px;height:22px;color:var(--green-800);flex:0 0 22px}.cost-category-header>div{min-width:0}.cost-category-header h2{font-size:1rem}.cost-category-header p{color:#557468;font-size:.72rem}.cost-category-owned-hint{margin-top:12px}.segmented-control{background:#f0f2f4;border-radius:13px;grid-template-columns:repeat(3,1fr);gap:5px;padding:4px;display:grid}.segmented-control button{color:#656d76;background:0 0;border:0;border-radius:10px;min-height:42px;font-size:.78rem;font-weight:750}.segmented-control button[data-selected=true]{color:var(--green-900);background:#fff;box-shadow:0 2px 8px #19251f14}.recurrence-control{grid-template-columns:repeat(2,1fr)}.preset-actions{flex-wrap:wrap;gap:8px;display:flex}.preset-actions button{color:#4a535b;background:#f9fafb;border:1px solid #dfe4e7;border-radius:999px;align-items:center;gap:6px;min-height:38px;padding:0 12px;font-size:.75rem;font-weight:750;display:inline-flex}.preset-actions svg{width:15px;height:15px}.cost-item-list{gap:10px;margin-top:14px;display:grid}.cost-item-editor{border:1px solid var(--line);background:#fafbfb;border-radius:15px;gap:13px;padding:14px;display:grid}.cost-item-editor__title{justify-content:space-between;align-items:center;display:flex}.cost-item-editor__title>div{gap:3px;display:grid}.cost-item-editor__title small{color:var(--muted);font-size:.68rem;font-weight:500}.cost-item-editor__title button{color:#8a4a44;background:#fff;border:0;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.cost-item-editor__title svg{width:17px;height:17px}.repair-estimate-card{border-top:1px solid var(--line);gap:14px;margin-top:18px;padding-top:18px;display:grid}.repair-estimate-card .form-card__heading{margin-bottom:0}.repair-estimate-card h3{margin:0;font-size:.95rem;line-height:1.3}.repair-table{border:1px solid var(--line);background:#fff;border-radius:14px;overflow:hidden}.repair-table__header,.repair-table__row{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) 40px;display:grid}.repair-table__header{color:var(--muted);background:#f4f8f5;align-items:center;font-size:.68rem;font-weight:750}.repair-table__header>span{padding:9px 8px}.repair-table__header>span:last-child{text-align:center}.repair-table__row{border-top:1px solid #edf0f2;align-items:start}.repair-table__cell{gap:4px;min-width:0;padding:8px 6px;display:grid}.repair-table__cell input{width:100%;min-width:0;height:42px;font:inherit;background:#fff;border:1px solid #dfe4e7;border-radius:10px;padding:0 9px;font-size:.78rem}.repair-table__cell input:focus{border-color:var(--green-700);outline:2px solid #0089512b}.repair-table__amount>span{display:block;position:relative}.repair-table__amount input{text-align:right;padding-right:36px}.repair-table__amount em{color:var(--muted);font-size:.65rem;font-style:normal;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.repair-table__delete{place-items:center;min-height:58px;display:grid}.repair-table__delete button{color:#9a4a43;background:#fff5f3;border:0;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.repair-table__delete svg{width:16px;height:16px}.repair-row-error{color:#a33129;font-size:.64rem;line-height:1.25}.repair-table__footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.repair-table__footer strong{color:var(--green-900);text-align:right;font-size:.78rem}.empty-hint{text-align:center;border:1px dashed #d8dee1;border-radius:13px;padding:14px;font-size:.78rem}.advanced-card{padding:0;overflow:hidden}.advanced-toggle{text-align:left;background:#fff;border:0;justify-content:space-between;align-items:center;width:100%;min-height:70px;padding:14px 18px;display:flex}.advanced-toggle span{gap:2px;display:grid}.advanced-toggle small{color:var(--muted);font-size:.73rem;font-weight:500}.advanced-toggle>svg{transition:transform .15s}.advanced-toggle>svg[data-open=true]{transform:rotate(180deg)}.advanced-content{border-top:1px solid var(--line);padding:16px 18px 18px}.app-shell{min-height:100dvh;padding-bottom:calc(76px + env(safe-area-inset-bottom))}.home-page{width:min(100%,680px);padding:max(20px,env(safe-area-inset-top)) 17px 24px;gap:12px;margin:0 auto;display:grid}.home-header{justify-content:space-between;align-items:center;margin-bottom:5px;display:flex}.vehicle-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:18px;grid-template-columns:76px 1fr 22px;align-items:center;gap:10px;min-height:76px;padding:8px 13px 8px 7px;display:grid;box-shadow:0 7px 22px #28302d09}.vehicle-image-wrap{background:#f3f6f5;border-radius:14px;place-items:center;height:58px;display:grid;overflow:hidden}.vehicle-image-wrap img{object-fit:contain;filter:drop-shadow(0 7px 5px #0000001c);width:94%;height:54px}.vehicle-copy{gap:3px;display:grid}.vehicle-copy strong{font-size:.88rem}.vehicle-copy span{color:var(--muted);font-size:.71rem}.vehicle-card>svg{color:#8a9299;width:18px}.usage-allocation-card{border:1px solid var(--line);background:#fff;border-radius:18px;gap:10px;padding:14px;display:grid;box-shadow:0 7px 22px #28302d09}.usage-allocation-card__heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.usage-allocation-card__heading h2{font-size:.86rem}.usage-allocation-card__heading p,.usage-allocation-card>p{color:var(--muted);font-size:.68rem}.usage-allocation-card__heading button{background:var(--green-100);min-height:34px;color:var(--green-900);border:0;border-radius:999px;padding:0 12px;font-size:.7rem;font-weight:800}.usage-allocation-card__values{justify-content:space-between;gap:10px;font-size:.78rem;display:flex}.usage-allocation-card__values div{gap:2px;display:grid}.usage-allocation-card__values div:last-child{text-align:right}.usage-allocation-card__values div:first-child strong{color:var(--green-800)}.usage-allocation-card__values div:last-child strong{color:#68737d}.usage-allocation-card__values span{color:var(--muted);font-size:.66rem;font-weight:650}.usage-allocation-bar{background:#dfe4e7;border-radius:999px;height:8px;overflow:hidden}.usage-allocation-bar span{border-radius:inherit;background:var(--green-700);height:100%;display:block}.usage-allocation-missing{text-align:left;background:#f9fcfa;border:1px dashed #c6d4cd;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;min-height:68px;padding:12px 14px;display:flex}.usage-allocation-missing span{gap:3px;display:grid}.usage-allocation-missing strong{color:var(--green-900);font-size:.82rem}.usage-allocation-missing small{color:var(--muted);font-size:.68rem}.usage-allocation-missing>svg{width:18px;color:var(--green-800)}.cost-hero{background:linear-gradient(145deg,#fff,#edf9f2);border:1px solid #cde6d8;border-radius:22px;gap:5px;padding:17px 15px 0;display:grid;overflow:hidden;box-shadow:0 10px 28px #0f684412}.cost-hero__top{color:var(--green-900);justify-content:space-between;align-items:center;font-size:.85rem;font-weight:800;display:flex}.cost-number-row{color:var(--green-800);align-items:baseline;gap:8px;display:flex}.cost-number-row strong{letter-spacing:-.065em;font-variant-numeric:tabular-nums;font-size:clamp(3.35rem,15vw,4.6rem);line-height:1}.cost-number-row span{font-size:1.04rem;font-weight:850}.cost-hero>p{color:var(--green-900);font-size:.78rem;font-weight:650}.analytics-strip{color:#6d7771;background:#ffffff94;border-top:1px solid #d8ece1;justify-content:space-between;align-items:center;gap:8px;margin:10px -15px 0;padding:10px 14px;font-size:.62rem;display:flex}.analytics-strip span{align-items:center;gap:5px;display:flex}.analytics-strip svg{width:14px;height:14px;color:var(--blue-700)}.next-slice-button{gap:0;min-height:58px;display:grid}.next-slice-button small{font-size:.64rem;font-weight:550}.breakdown-card{border:1px solid var(--line);background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 8px 28px #232e2909}.section-heading{justify-content:space-between;align-items:flex-end;gap:10px;padding:15px 14px 10px;display:flex}.section-heading div{gap:2px;display:grid}.section-heading h2{font-size:.9rem}.section-heading p,.section-heading>span{color:var(--muted);font-size:.62rem}.cost-list{border-top:1px solid var(--line)}.cost-row{border-bottom:1px solid #edf0f2;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;min-height:52px;padding:7px 13px;display:grid}.cost-row:last-child{border-bottom:0}.cost-row>span:nth-child(2){font-size:.78rem}.cost-row strong{font-variant-numeric:tabular-nums;font-size:.78rem}.cost-icon{color:#55605a;background:#f0f4f2;border-radius:10px;place-items:center;width:32px;height:32px;display:grid}.cost-icon svg{width:17px;height:17px}.text-button{border:0;border-top:1px solid var(--line);width:100%;min-height:45px;color:var(--green-800);background:#fbfcfc;justify-content:center;align-items:center;gap:6px;font-size:.74rem;font-weight:800;display:flex}.text-button svg{width:15px}.scope-note{color:var(--muted);align-items:flex-start;gap:7px;padding:1px 4px;font-size:.68rem;line-height:1.45;display:flex}.scope-note svg{width:15px;height:15px}.home-brand-lockup{gap:2px;display:grid}.home-brand-lockup>span{color:var(--green-800);font-size:.66rem;font-weight:750}.vehicle-section-heading{justify-content:space-between;align-items:center;margin-top:2px;display:flex}.vehicle-section-heading>div,.vehicle-section-heading>button{align-items:center;gap:6px;display:inline-flex}.vehicle-section-heading>div{color:#3f4f47;font-size:.88rem;font-weight:850}.vehicle-section-heading svg{width:18px;height:18px}.vehicle-section-heading>button{min-height:38px;color:var(--green-800);background:#fff;border:1px solid #d8e2dd;border-radius:999px;padding:0 12px;font-size:.72rem;font-weight:800}.vehicle-card-rail{overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-width:none;grid-auto-columns:calc(100% - 9px);grid-auto-flow:column;gap:12px;margin-inline:-17px;padding:1px 17px 8px;display:grid;overflow-x:auto}.vehicle-card-rail::-webkit-scrollbar{display:none}.setup-page .vehicle-editor-rail{width:calc(100% + 36px);margin-inline:-18px;padding-inline:17px}.vehicle-editor-rail .vehicle-editor-card{touch-action:pan-x pan-y;width:100%;min-width:0;margin-inline:0}.vehicle-editor-rail[data-locked=true]{touch-action:pan-y;overflow-x:hidden}.vehicle-editor-rail[data-locked=true] .vehicle-editor-card{touch-action:pan-y}@media(max-width:390px){.setup-page .vehicle-editor-rail{padding-inline:12px}}.vehicle-cost-card{scroll-snap-align:center;background:#fff;border:1px solid #d7e2dc;border-radius:23px;min-width:0;padding:14px;overflow:hidden;box-shadow:0 9px 24px #1f362a0e}.vehicle-cost-card[data-selected=true]{border-color:#9fd4ba;box-shadow:0 10px 28px #08734b1a}.vehicle-hero{grid-template-columns:minmax(0,1fr) 46%;align-items:stretch;gap:10px;min-height:150px;display:grid}.vehicle-hero__cost{flex-direction:column;min-width:0;padding:2px 0 1px;display:flex}.vehicle-card-title-row{gap:4px;display:grid}.vehicle-card-title-row>strong{text-overflow:ellipsis;white-space:nowrap;font-size:1.03rem;overflow:hidden}.selected-vehicle-badge{background:var(--green-100);width:fit-content;color:var(--green-900);border-radius:999px;padding:3px 7px;font-size:.57rem;font-weight:800}.vehicle-badges{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.vehicle-badges span{background:var(--green-100);color:var(--green-900);border-radius:999px;padding:3px 8px;font-size:.61rem;font-weight:850}.vehicle-badges span+span{color:#65706a;background:#edf1ef}.vehicle-hero__cost>p{color:var(--green-800);white-space:nowrap;margin-top:auto;font-size:.68rem;font-weight:850}.vehicle-cost-number{color:#047649;letter-spacing:-.055em;font-variant-numeric:tabular-nums;margin-top:4px;font-size:clamp(3.05rem,15vw,4.2rem);font-weight:900;line-height:.95}.vehicle-cost-missing{background:var(--green-100);width:fit-content;min-height:38px;color:var(--green-900);border:0;border-radius:10px;margin-top:7px;padding:0 11px;font-size:.72rem;font-weight:850}.vehicle-hero__identity{background:#eef7f2;border-radius:17px;flex-direction:column;min-width:0;display:flex;overflow:hidden}.vehicle-photo{flex:1;place-items:center;min-height:96px;padding:2px 5px 0;display:grid}.vehicle-photo img{object-fit:contain;filter:drop-shadow(0 8px 6px #0000001a);width:100%;height:90px}.vehicle-identity-footer{text-align:center;background:#ffffffe6;border-top:1px solid #dce9e2;padding:7px 8px}.vehicle-identity-footer strong,.vehicle-identity-footer span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.vehicle-identity-footer strong{font-size:.62rem}.vehicle-identity-footer span{color:#526159;margin-top:2px;font-size:.56rem;font-weight:750}.vehicle-milestones{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:13px;display:grid}.vehicle-milestones>div{background:#f9fbfa;border:1px solid #e2e8e4;border-radius:13px;justify-items:start;gap:3px;min-width:0;padding:8px 7px;display:grid}.milestone-icon{width:28px;height:28px;color:var(--green-800);background:#e6f6ed;border-radius:9px;place-items:center;margin-bottom:3px;display:grid}.milestone-icon svg{width:15px;height:15px}.vehicle-milestones small{color:#6a746e;font-size:.55rem}.vehicle-milestones strong{overflow-wrap:anywhere;font-size:.59rem;line-height:1.3}.vehicle-summary-grid{border-top:1px solid #e6ebe8;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;padding-top:10px;display:grid}.vehicle-summary-grid>div{background:#f4f7f5;border-radius:11px;gap:2px;padding:9px;display:grid}.vehicle-summary-grid span{color:#66716b;font-size:.6rem}.vehicle-summary-grid strong{overflow-wrap:anywhere;font-size:.7rem}.vehicle-summary-grid .vehicle-distance-cell{gap:6px}.vehicle-summary-grid .vehicle-age-cell{align-content:start}.vehicle-age-meter{background:#dfe5e1;border-radius:999px;height:7px;margin-top:6px;overflow:hidden}.vehicle-age-meter span{border-radius:inherit;background:var(--green-700);height:100%;display:block}.vehicle-age-meter[data-tone=orange] span{background:#df942f}.vehicle-age-meter[data-tone=red] span{background:#cb4943}.vehicle-usage{gap:6px;margin-top:4px;display:grid}.vehicle-usage__bar{background:#dfe5e1;border-radius:999px;height:7px;overflow:hidden}.vehicle-usage__bar span{border-radius:inherit;background:var(--green-700);height:100%;display:block}.vehicle-usage__values{color:#68737d;justify-content:space-between;gap:4px;font-size:.52rem;display:flex}.vehicle-usage__values>span{gap:1px;display:grid}.vehicle-usage__values>span:last-child{text-align:right;justify-items:end}.vehicle-usage__values b{color:var(--green-800);font-size:.52rem}.vehicle-usage__values>span:last-child b{color:#68737d}.vehicle-usage-missing{width:100%;min-height:39px;color:var(--green-800);background:#f9fcfa;border:1px dashed #c6d4cd;border-radius:11px;margin-top:10px;font-size:.68rem;font-weight:800}.vehicle-cost-list{border:1px solid var(--line);border-radius:13px;overflow:hidden}.vehicle-cost-list>p{color:var(--muted);background:#f8faf9;padding:8px 10px;font-size:.6rem}.vehicle-cost-group-summary{text-align:left;background:#f5faf7;border:0;border-top:1px solid #e6ece8;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:8px;width:100%;min-height:48px;padding:8px 10px;display:grid}.vehicle-cost-group-summary>span{gap:1px;display:grid}.vehicle-cost-group-summary strong{color:var(--green-900);font-size:.7rem}.vehicle-cost-group-summary small{color:var(--muted);font-size:.58rem}.vehicle-cost-group-summary b{color:var(--green-900);font-size:.72rem}.vehicle-cost-group-summary svg{width:16px;height:16px;color:var(--green-800)}.vehicle-cost-row{border-top:1px solid #edf0f2;grid-template-columns:32px 1fr auto;align-items:center;gap:8px;min-height:46px;padding:6px 9px;display:grid}.vehicle-cost-row>span:nth-child(2),.vehicle-cost-row strong{font-size:.68rem}.vehicle-repair-summary{text-align:left;background:#f5faf7;border:0;border-top:1px solid #e6ece8;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:8px;width:100%;min-height:48px;padding:8px 10px;display:grid}.vehicle-repair-summary>span{gap:1px;display:grid}.vehicle-repair-summary strong{color:var(--green-900);font-size:.7rem}.vehicle-repair-summary small{color:var(--muted);font-size:.58rem}.vehicle-repair-summary b{color:var(--green-900);font-size:.72rem}.vehicle-repair-summary svg{width:16px;height:16px;color:var(--green-800)}.vehicle-repair-label{gap:1px;display:grid}.vehicle-repair-label small{color:var(--muted);font-size:.58rem}.vehicle-repair-empty{color:var(--muted);text-align:center;border-top:1px solid #edf0f2;margin:0;padding:10px;font-size:.65rem}.vehicle-rounding-note{color:var(--muted);border-top:1px solid #edf0f2;align-items:center;gap:5px;margin:0;padding:8px 10px;font-size:.6rem;display:flex}.vehicle-rounding-note svg{color:#55756a;flex:none;width:14px;height:14px}.vehicle-card-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:11px;display:grid}.vehicle-card-actions button{min-height:42px;color:var(--green-800);background:#fff;border:1px solid #cddbd3;border-radius:11px;justify-content:center;align-items:center;gap:5px;font-size:.65rem;font-weight:800;display:inline-flex}.vehicle-card-actions svg{width:15px;height:15px}.vehicle-card-tools{justify-content:space-between;align-items:center;gap:8px;min-height:44px;margin-top:8px;display:flex}.vehicle-card-tools>span{color:var(--muted);font-size:.7rem;font-weight:700}.vehicle-card-tools>div{gap:6px;display:flex}.vehicle-card-tools button{border:1px solid var(--line);min-height:44px;color:var(--brand-strong);background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:3px;padding:0 8px;font-size:.7rem;font-weight:750;display:inline-flex}.vehicle-card-tools svg{width:14px;height:14px}.vehicle-card-tools button:disabled{opacity:.35;cursor:default}.vehicle-level-save-state{color:var(--brand-strong);padding:0 12px 8px 54px;font-size:.72rem;font-weight:700;display:block}.vehicle-level-save-state[role=alert]{color:var(--danger)}.vehicle-select-button{min-height:49px;margin-top:3px}.vehicle-cost-card{padding:16px}.home-page{isolation:isolate;padding-top:max(9px,env(safe-area-inset-top));gap:5px;position:relative}.home-page:before{z-index:-1;content:"";background:linear-gradient(115deg,#007d58,#00876a);width:100vw;height:130px;position:absolute;top:0;left:50%;transform:translate(-50%)}.home-header{margin-bottom:0}.home-brand-lockup .brand{color:#fff}.home-brand-lockup .brand__mark{filter:brightness(0)invert()}.vehicle-card-heading{min-width:0;margin-bottom:5px}.vehicle-hero{grid-template-columns:minmax(0,1fr) 48%;gap:8px;min-height:0}.vehicle-card-title-row>strong{color:#101c31;font-size:clamp(.95rem,3.8vw,1.35rem)}.vehicle-registration{color:#64748b;margin-top:6px;font-size:.68rem}.vehicle-card-meta{flex-wrap:nowrap;align-items:center;gap:5px;min-width:0;margin-top:5px;display:flex}.vehicle-nickname{color:#66776c;text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;max-width:42%;font-size:.6rem;overflow:hidden}.vehicle-meta-badge{background:var(--green-100);color:var(--green-900);white-space:nowrap;border-radius:999px;flex:none;padding:2px 6px;font-size:.54rem;font-weight:850}.vehicle-meta-badge--ownership{color:#65706a;background:#edf1ef}.vehicle-hero__cost>.vehicle-cost-caption{color:#172238;margin-top:6px;font-size:.72rem}.vehicle-cost-number{align-items:baseline;font-size:clamp(2.8rem,13vw,4.2rem);display:flex}.vehicle-hero__identity{background:0 0;border-radius:0;justify-content:flex-start;align-items:center;gap:3px}.vehicle-photo{flex:none;width:100%;min-height:80px;padding:0}.vehicle-photo img{width:116%;max-width:none;height:80px;margin-right:0}.vehicle-hero-edit,.vehicle-cost-details-heading button{color:#0864d8;white-space:nowrap;background:#eaf4ff;border:0;border-radius:10px;justify-content:center;align-items:center;gap:5px;min-height:35px;padding:0 9px;font-size:.62rem;font-weight:850;display:inline-flex}.vehicle-hero-edit svg,.vehicle-cost-details-heading button svg{width:13px;height:13px}.vehicle-hero-edit{flex:none;width:min(124px,100%);min-height:32px}.vehicle-license-plate{text-align:center;background:linear-gradient(#fff,#f5f8f6);border:1px solid #293a3f;border-radius:3px;flex:0 auto;align-content:center;justify-items:center;width:max-content;max-width:100%;min-height:19px;padding:1px 4px;display:grid;box-shadow:inset 0 0 0 1px #fff,inset 0 0 0 2px #d8dfdb,0 2px 4px #1b32221a}.vehicle-license-plate strong{color:#18292a;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.59rem;line-height:1.15;overflow:hidden}.vehicle-summary-grid{border-top:0;margin-top:9px;padding-top:0}.vehicle-summary-grid>div{background:#f8fbfd;border:1px solid #deebed;padding:6px}.vehicle-summary-heading{align-items:center;gap:4px;min-width:0;display:flex}.vehicle-summary-heading>span:nth-child(2){color:#5d6b80;white-space:nowrap;font-size:.59rem}.vehicle-summary-heading>strong{color:#102035;white-space:nowrap;margin-left:auto;font-size:.68rem}.vehicle-summary-icon{color:#0d875a;background:#e7f3ef;border-radius:999px;flex:none;place-items:center;width:22px;height:22px;display:inline-grid}.vehicle-summary-icon svg{width:14px;height:14px}.vehicle-age-cell>strong{margin-left:26px;font-size:.9rem}.vehicle-age-cell small{border-top:1px solid #e4eaed;margin-top:5px;padding-top:5px;font-size:.55rem}.vehicle-age-meter{display:none}.vehicle-usage{gap:5px;margin-top:5px}.vehicle-usage__bar{background:#a9e8d0;height:8px}.vehicle-usage__values{font-size:.52rem}.vehicle-cost-details{margin-top:12px}.vehicle-cost-details-heading{justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px;display:flex}.vehicle-cost-details-heading>div{display:grid}.vehicle-cost-details-heading strong{color:#132037;font-size:1rem}.vehicle-cost-details-heading span{color:#68778b;font-size:.61rem}.vehicle-cost-list{border-color:#e4ebee;border-radius:14px}.vehicle-cost-level+.vehicle-cost-level{border-top:1px solid #e8edf0}.vehicle-cost-level-main{grid-template-columns:39px 22px minmax(0,1fr) auto 20px;align-items:center;gap:7px;min-height:48px;padding:4px 8px;display:grid}.vehicle-level-indicator{color:#04784b;background:#eaf6f0;border-radius:999px;place-items:center;width:25px;height:25px;font-size:.68rem;font-weight:900;display:grid}.vehicle-level-switch{background:#cbd5d1;border:0;border-radius:999px;align-items:center;width:39px;height:25px;padding:2px;transition:background .15s;display:flex}.vehicle-level-switch[data-on=true]{background:#07845c;justify-content:flex-end}.vehicle-level-switch span{color:#45564f;background:#fff;border-radius:50%;place-items:center;width:21px;height:21px;font-size:.62rem;font-weight:900;display:grid;box-shadow:0 1px 3px #16332833}.vehicle-level-switch[data-on=true] span{color:#087452}.vehicle-level-switch:focus-visible{outline-offset:2px;outline:2px solid #1769d5}.vehicle-level-switch:disabled{opacity:.55;cursor:wait}.vehicle-level-icon{color:#142038;width:20px;height:20px}.vehicle-level-title{gap:1px;min-width:0;display:grid}.vehicle-level-title strong{color:#152239;text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;overflow:hidden}.vehicle-level-title small{color:#718096;text-overflow:ellipsis;white-space:nowrap;font-size:.55rem;overflow:hidden}.vehicle-level-rate{color:#152239;white-space:nowrap;font-size:.66rem}.vehicle-level-rate--missing{color:#0864d8}.vehicle-level-disclosure{color:#697f9e;background:0 0;border:0;place-items:center;width:24px;height:32px;display:grid}.vehicle-level-disclosure svg{width:16px;height:16px}.vehicle-level-rows{background:#f5f8fa;border-top:1px solid #e9eff1;padding:5px 12px 7px 70px}.vehicle-level-row{color:#53647b;justify-content:space-between;align-items:start;gap:8px;padding:4px 0;font-size:.62rem;display:flex}.vehicle-level-row span{display:grid}.vehicle-level-row small{color:#7b8996;font-size:.52rem}.vehicle-level-row strong{color:#27364a;white-space:nowrap;font-size:.61rem}.vehicle-cost-total{color:#086e49;background:#e9f7f0;align-items:center;gap:5px;margin:0;padding:9px;font-size:.59rem;display:flex}.vehicle-cost-total svg{flex:none;width:15px;height:15px}.vehicle-all-costs-off{color:#825508;background:#fff8ea;border:1px solid #e7c481;border-radius:10px;margin:8px 0 0;padding:9px;font-size:.64rem;line-height:1.45}.vehicle-value-link{color:#086e49;background:#f4fbf7;border:1px solid #c9e1d4;border-radius:11px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:42px;margin-top:7px;font-size:.67rem;font-weight:850;display:flex}.vehicle-value-link svg{width:15px;height:15px}.vehicle-value-page{width:min(100%,760px);min-height:100vh;padding:max(14px,env(safe-area-inset-top)) 16px 32px;margin:0 auto}.vehicle-value-header{align-items:center;gap:12px;display:flex}.vehicle-value-header>button{color:#126448;background:#fff;border:1px solid #d8e4de;border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.vehicle-value-header>button svg{width:18px;height:18px}.vehicle-value-intro{padding:18px 2px 10px}.vehicle-value-intro h1{color:#142238;margin:5px 0;font-size:clamp(1.35rem,5vw,1.8rem)}.vehicle-value-intro p{color:#68778b;margin:0;font-size:.78rem;line-height:1.55}.vehicle-value-panel{background:#fff;border:1px solid #e1eae4;border-radius:18px;gap:12px;margin-top:14px;padding:16px;display:grid;box-shadow:0 8px 25px #102e1a0b}.vehicle-value-panel__heading{align-items:flex-start;gap:10px;display:flex}.vehicle-value-panel__heading>svg{color:#087a52;flex:none;width:22px;height:22px}.vehicle-value-panel h2{color:#142238;margin:0;font-size:1rem}.vehicle-value-panel__heading p{color:#68778b;margin:4px 0 0;font-size:.68rem}.vehicle-value-stored{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.vehicle-value-stored span{color:#64748b;background:#f4f8f6;border-radius:10px;gap:4px;padding:10px;font-size:.64rem;display:grid}.vehicle-value-stored strong{color:#142238;font-size:.8rem}.vehicle-value-edit{color:#086e49;background:#fff;border:1px solid #cde0d5;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:38px;font-size:.7rem;font-weight:800;display:flex}.vehicle-value-edit svg{width:14px;height:14px}.vehicle-value-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.vehicle-value-fields label{color:#27364a;gap:5px;font-size:.7rem;font-weight:750;display:grid}.vehicle-value-fields input{color:#142238;background:#fff;border:1px solid #d8e3dd;border-radius:10px;width:100%;min-height:42px;padding:0 10px;font-size:.82rem}.vehicle-value-fields input:focus{outline-offset:1px;outline:2px solid #8fcdb0}.vehicle-value-hint,.vehicle-value-caveat,.vehicle-value-draft-note{color:#64748b;margin:0;font-size:.67rem;line-height:1.5}.vehicle-value-caveat{align-items:flex-start;gap:6px;display:flex}.vehicle-value-caveat svg{color:#087a52;flex:none;width:15px;height:15px}.vehicle-value-result{color:#086e49;background:#e9f7f0;border-radius:12px;gap:3px;padding:12px;display:grid}.vehicle-value-result span{font-size:.67rem}.vehicle-value-result strong{font-size:1.2rem}.vehicle-value-result b{font-size:.9rem}.vehicle-value-result small{color:#4c7662;font-size:.62rem;line-height:1.4}.vehicle-value-result--manual strong{font-size:.95rem}.vehicle-value-manual-actions{flex-wrap:wrap;gap:8px;display:flex}.vehicle-value-manual-actions .vehicle-value-edit{padding:0 12px}.vehicle-value-manual-editor{border-top:1px solid #e1eae4;gap:10px;padding-top:12px;display:grid}.vehicle-value-manual-editor label{color:#27364a;gap:6px;font-size:.72rem;font-weight:750;display:grid}.vehicle-value-manual-editor input{width:100%;min-height:44px;font:inherit;border:1px solid #d8e3dd;border-radius:10px;padding:0 10px}.vehicle-value-manual-editor .vehicle-value-edit{padding:0 12px}.vehicle-value-manual-error{color:#b42318;margin:0;font-size:.72rem}.vehicle-value-empty{color:#64748b;background:#f4f7f5;border-radius:10px;margin:0;padding:12px;font-size:.7rem}.vehicle-value-draft-note{text-align:center;padding:14px 4px}@media(max-width:420px){.vehicle-value-fields{grid-template-columns:1fr}}.vehicle-select-button{background:#007c55;border-radius:999px;min-height:46px;margin-top:9px}@media(max-width:390px){.vehicle-cost-card{padding:11px}.vehicle-level-title strong,.vehicle-level-rate{font-size:.59rem}.vehicle-level-title small{font-size:.5rem}.vehicle-cost-level-main{gap:5px;padding-inline:6px}.vehicle-summary-grid{gap:5px}.vehicle-summary-grid>div{padding:6px}.vehicle-summary-heading>span:nth-child(2){font-size:.53rem}.vehicle-summary-heading>strong{font-size:.59rem}}.carousel-hint{color:#7a847e;text-align:center;font-size:.62rem}.bottom-nav{z-index:20;padding:8px max(8px,calc((100vw - 680px)/2)) max(8px,env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;border-top:1px solid #dae0e3e6;grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav__item{color:#8a9299;background:0 0;border:0;align-content:center;place-items:center;gap:3px;min-height:52px;font-size:.63rem;font-weight:650;display:grid}.bottom-nav__item svg{width:20px;height:20px}.bottom-nav__item.is-active{color:var(--green-800)}.bottom-nav__item--record{color:var(--green-800);font-size:.59rem}.bottom-nav__item--record svg{width:25px;height:25px}.income-date-picker{border:1px solid var(--line);background:#fff;border-radius:14px;gap:12px;margin:12px 0 20px;padding:12px;font-weight:700;display:grid}.income-date-picker__heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.income-date-picker input{border:1px solid var(--line);min-width:0;max-width:190px;color:inherit;font:inherit;border-radius:9px;padding:7px}.income-week-nav{grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:3px;display:grid}.income-week-nav>button{width:32px;height:42px;color:var(--green-800);background:0 0;border:0;place-items:center;display:grid}.income-week-nav button:disabled{opacity:.35}.income-week-days{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.income-week-days button{min-width:0;color:inherit;background:0 0;border:0;border-radius:12px;justify-items:center;gap:5px;padding:4px 0;display:grid}.income-week-days button small{font-size:.56rem}.income-week-days button span{border-radius:50%;place-items:center;width:28px;height:28px;font-size:.68rem;display:grid}.income-week-days button[aria-current=date] span{background:var(--green-800);color:#fff}.income-view-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.income-view-tabs button{min-width:0;color:var(--green-900);font:inherit;background:#eef6f1;border:1px solid #d8e8df;border-radius:999px;padding:11px 7px;font-size:.79rem;font-weight:700}.income-view-tabs button[aria-selected=true]{border-color:var(--green-800);background:var(--green-800);color:#fff}.income-view-body{gap:14px;min-width:0;display:grid}.income-analysis-card{border:1px solid var(--line);background:#fff;border-radius:20px;gap:10px;min-width:0;padding:17px;display:grid;box-shadow:0 10px 28px #0f68440d}.income-analysis-card h2{margin:0;font-size:1.03rem}.income-analysis-row{border-bottom:1px solid #e9efeb;justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:8px;font-size:.78rem;display:flex}.income-analysis-row span{color:#52645a;min-width:0}.income-analysis-row strong{text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0}.income-analysis-row--result{color:var(--green-800);border-bottom:0;font-weight:700}.income-analysis-row--result span{color:inherit}.income-analysis-row--result strong{font-size:.96rem}.income-data-warning{color:#7a3c1c;background:#fff4eb;border-radius:12px;margin:0;padding:11px;font-size:.78rem}.income-revision-note{color:#5b6f64;text-align:right;margin:-4px 0 0;font-size:.76rem}.income-rate-source{color:#304c3e;margin:0;font-size:.8rem}.income-rate-source small{color:#7a3c1c;margin-top:3px;font-size:.74rem;display:block}.income-rate-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.income-rate-grid>div{background:#f4f9f6;border-radius:13px;gap:4px;min-width:0;padding:10px;display:grid}.income-rate-grid small{color:#5c7065;font-size:.67rem}.income-rate-grid strong{font-variant-numeric:tabular-nums;font-size:.76rem}.income-view-intro,.income-note,.income-unsaved-note{color:#5b6f64;margin:0;font-size:.78rem}.income-note{align-items:flex-start;gap:7px;display:flex}.income-note svg{flex-shrink:0;width:16px}.income-unsaved-note{color:#965016}.income-form-field{gap:6px;min-width:0;font-size:.78rem;font-weight:700;display:grid}.income-form-field input,.income-form-field select{width:100%;min-width:0;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #cbded2;border-radius:11px;padding:11px}.income-add-vehicle{align-items:end;gap:10px;display:flex}.income-add-vehicle .income-form-field{flex:1}.income-refresh-button{color:var(--green-800);font:inherit;background:0 0;border:0;justify-self:start;font-size:.76rem;font-weight:700;text-decoration:underline}.income-simple-result{background:#edf8f1;border-radius:13px;gap:3px;padding:13px;display:grid}.income-simple-result strong{color:var(--green-800);font-size:1.2rem}.income-simple-result small{color:#5b6f64}.income-time-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.income-return-field{min-width:0}.income-return-day{color:var(--muted);justify-content:space-between;align-items:center;gap:4px;margin-top:5px;font-size:.68rem;display:flex}.income-return-day button{color:var(--green-800);font:inherit;cursor:pointer;background:0 0;border:0;font-weight:700;text-decoration:underline}.income-odometer-row{border-top:1px solid #e9efeb;gap:8px;padding-top:10px;display:grid}.income-odometer-row>div:first-child{justify-content:space-between;display:flex}.income-odometer-row button{color:#a04436;font:inherit;background:0 0;border:0;font-size:.75rem}.income-car-card{background:#fff;border:1px solid #cfe5d8;border-radius:18px;box-shadow:0 8px 22px #0f68440b}.income-distance-link{color:var(--green-800);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:0 15px 12px;padding:7px 0;font-size:.82rem;font-weight:700;text-decoration:underline}.income-vehicle-picker{grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:9px;display:grid}.income-vehicle-picker button{min-height:82px;color:var(--green-900);text-align:left;font:inherit;cursor:pointer;background:#f1faf5;border:1px solid #b9ddc9;border-radius:15px;gap:7px;padding:13px 15px;display:grid}.income-vehicle-picker button:hover,.income-vehicle-picker button:focus-visible{border-color:var(--green-800);background:#e2f3e9}.income-vehicle-picker button strong{font-size:.96rem}.income-vehicle-picker button span{font-size:.72rem}.income-more-vehicles{gap:9px;padding-top:4px;display:grid}.income-more-vehicles h3{margin:0;font-size:.84rem}.income-vehicle-card{gap:12px;padding:14px;display:grid}.income-vehicle-card__head{border-bottom:1px solid #e1eee6;justify-content:space-between;align-items:center;gap:10px;padding-bottom:10px;display:flex}.income-vehicle-card__head>div{gap:2px;display:grid}.income-vehicle-card__head strong{color:var(--green-900);font-size:1rem}.income-vehicle-card__head small{color:var(--muted);font-size:.7rem}.income-vehicle-card__head button{min-height:36px;color:var(--green-800);font:inherit;background:#fff;border:1px solid #cbded2;border-radius:9px;align-items:center;gap:4px;padding:5px 10px;font-size:.75rem;display:inline-flex}.income-vehicle-card__head button svg{width:15px;height:15px;transform:rotate(90deg)}.income-vehicle-card__head button svg[data-open=true]{transform:rotate(180deg)}.income-vehicle-card__remove{color:#a04436;font:inherit;background:0 0;border:0;justify-self:end;font-size:.75rem;text-decoration:underline}.income-legacy-card{background:#fffdf8;border-color:#ebdfcb}.trip-list>.section-title{margin-top:4px}.trip-list .today-vehicle-summary{background:#f9fdfb}@media(max-width:390px){.income-time-grid:has(input[type=datetime-local]){grid-template-columns:1fr}.income-analysis-card{padding:13px}.income-analysis-row{font-size:.73rem}}.history-card-row{align-items:stretch;gap:5px;display:flex}.history-card-row>.history-card{flex:1;min-width:0}.history-delete-button{color:#9b403a;background:#fff5f4;border:1px solid #f3ceca;border-radius:12px;flex:0 0 42px;align-self:center;place-items:center;width:42px;height:42px;display:grid}.history-delete-button svg{width:18px;height:18px}.result-delete-button{color:#9b403a}.vehicle-age-cell small{color:var(--muted);margin-top:7px;font-size:.68rem;display:block}.cost-vehicle-hero{margin-bottom:16px}.cost-vehicle-hero__rate{border-top:1px solid #d8e4de;gap:2px;padding-top:7px;display:grid}.cost-vehicle-hero__rate strong{color:var(--green-800);font-size:1.1rem;line-height:1.1}.account-page{min-height:100dvh;padding:max(20px,env(safe-area-inset-top)) 18px max(28px,env(safe-area-inset-bottom))}.account-card{border:1px solid var(--line);background:#fff;border-radius:24px;justify-items:center;gap:9px;width:min(100%,560px);margin:0 auto 15px;padding:28px 20px;display:grid}.account-avatar{object-fit:cover;border-radius:999px;place-items:center;width:82px;height:82px;display:grid}.account-avatar--empty{background:var(--green-100);color:var(--green-800)}.account-avatar--empty svg{width:40px;height:40px}.account-card p{align-items:center;gap:7px;font-size:.82rem;display:flex}.account-card p svg{width:16px}.account-page>.secondary-button{width:min(100%,560px);margin:0 auto}.configuration-error{text-align:center;place-content:center;gap:10px;min-height:100dvh;padding:24px;display:grid}.flow-page{width:min(100%,680px);min-height:100dvh;padding:max(16px,env(safe-area-inset-top)) 17px max(30px,env(safe-area-inset-bottom));align-content:start;gap:14px;margin:0 auto;display:grid}.flow-header{grid-template-columns:42px 1fr minmax(42px,auto);align-items:center;gap:10px;min-height:46px;font-size:.92rem;font-weight:850;display:grid}.flow-header>span:nth-child(2){text-align:center;justify-self:center}.flow-intro{gap:5px;margin:4px 0;display:grid}.flow-intro h1{font-size:1.8rem}.flow-intro>p:last-child{font-size:.8rem}.session-chip{background:var(--green-100);color:var(--green-900);white-space:nowrap;border-radius:999px;justify-self:end;padding:5px 9px;font-size:.65rem}.session-chip.is-finished{color:#596168;background:#e8ebed}.today-empty{margin:min(15vh,110px) auto 0}.today-summary{background:linear-gradient(145deg,#fff,#edf9f2);border:1px solid #cde6d8;border-radius:22px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden;box-shadow:0 10px 28px #0f684412}.today-summary>div{gap:4px;padding:18px 15px 15px;display:grid}.today-summary--single>div{grid-column:1/-1}.today-summary>div+div{border-left:1px solid #d8ece1}.today-summary span{color:var(--green-900);font-size:.69rem;font-weight:700}.today-summary strong{color:var(--green-800);letter-spacing:-.045em;font-variant-numeric:tabular-nums;font-size:clamp(1.4rem,7vw,2rem)}.today-summary p{background:#ffffff8c;border-top:1px solid #d8ece1;grid-column:1/-1;justify-content:center;align-items:center;gap:6px;padding:9px;font-size:.7rem;display:flex}.today-summary p svg{width:15px}.today-summary .is-loss strong,.loss-text{color:var(--danger)}.positive-text{color:var(--green-800)}.session-finished,.snapshot-note{background:var(--green-50);color:var(--green-900);border:1px solid #cde6d8;border-radius:15px;align-items:flex-start;gap:11px;padding:13px 14px;display:flex}.session-finished svg,.snapshot-note svg{width:20px;height:20px}.session-finished div{gap:2px;display:grid}.session-finished p,.snapshot-note p{color:inherit;font-size:.73rem}.trip-list{gap:9px;display:grid}.today-choose-vehicle{text-align:left;gap:11px;width:100%;display:grid}.today-choose-vehicle .secondary-button{width:100%}.today-vehicle-group{border:1px solid var(--line);background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 7px 22px #28302d09}.today-vehicle-summary{text-align:left;background:#fff;border:0;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:68px;padding:12px 14px;display:flex}.today-vehicle-summary>span{gap:3px;min-width:0;display:grid}.today-vehicle-summary>span:last-child{text-align:right;grid-template-columns:1fr 18px;place-items:center end}.today-vehicle-summary strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-size:.85rem}.today-vehicle-summary small{color:var(--muted);font-size:.68rem}.today-vehicle-summary svg{width:17px;height:17px;color:var(--green-800);transition:transform .2s}.today-vehicle-summary svg[data-open=true]{transform:rotate(180deg)}.today-vehicle-trips{border-top:1px solid var(--line);background:#f8fbf9;gap:8px;padding:9px;display:grid}.today-vehicle-trips .trip-card{width:100%;min-width:0}.section-title{justify-content:space-between;align-items:center;padding:4px 2px 0;display:flex}.section-title span{color:var(--muted);font-size:.7rem}.trip-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;min-height:68px;padding:12px 14px;display:flex;box-shadow:0 7px 22px #28302d09}.trip-card>span{gap:3px;display:grid}.trip-card>span:last-child{text-align:right;justify-items:end}.trip-card small{color:var(--muted);font-size:.68rem}.trip-card .positive-text{color:var(--green-800)}.trip-card .loss-text{color:var(--danger)}.trip-form{gap:14px;display:grid}.platform-field{border:0;grid-column:1/-1;min-width:0;margin:0;padding:0}.platform-field legend{margin-bottom:8px;font-size:.76rem;font-weight:700}.platform-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.platform-choice{cursor:pointer;min-width:0;position:relative}.platform-choice input{opacity:0;width:1px;height:1px;position:absolute}.platform-choice span{border:1px solid var(--line);min-height:48px;color:var(--ink);text-align:center;overflow-wrap:anywhere;background:#fff;border-radius:12px;justify-content:center;align-items:center;padding:8px;font-size:.76rem;font-weight:750;display:flex}.platform-choice input:checked+span{border-color:var(--green-800);background:var(--green-100);color:var(--green-900);box-shadow:inset 0 0 0 1px var(--green-800)}.platform-choice input:focus-visible+span{outline:3px solid var(--green-800);outline-offset:2px}.platform-choice--other{grid-column:1/-1}.field>select{appearance:none;background-color:#fff;background-image:linear-gradient(45deg,#0000 50%,#69727b 50%),linear-gradient(135deg,#69727b 50%,#0000 50%);background-position:calc(100% - 18px) 22px,calc(100% - 13px) 22px;background-repeat:no-repeat;background-size:5px 5px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;border:1px solid #dce2e5;border-radius:13px;width:100%;min-height:51px;padding:0 38px 0 14px}.trip-advanced{gap:14px;display:grid}.check-field{color:#4e565e;align-items:center;gap:9px;font-size:.76rem;display:flex}.check-field input{width:18px;height:18px;accent-color:var(--green-800)}.field-hint{color:var(--muted);font-size:.7rem;line-height:1.45}.trip-form .scope-note{padding:5px 3px}.result-hero{text-align:center;background:linear-gradient(145deg,#fff,#edf9f2);border:1px solid #cde6d8;border-radius:23px;justify-items:center;gap:4px;padding:22px 18px;display:grid;box-shadow:0 10px 28px #0f684412}.result-hero>span{color:var(--green-900);font-size:.78rem;font-weight:750}.result-hero>strong{color:var(--green-800);letter-spacing:-.06em;font-variant-numeric:tabular-nums;font-size:clamp(2.8rem,14vw,4.2rem);line-height:1.1}.result-hero>p{font-size:.75rem}.result-hero.is-loss{background:linear-gradient(145deg,#fff,#fff1f0);border-color:#f1c7c3}.result-hero.is-loss>span,.result-hero.is-loss>strong{color:var(--danger)}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.metric-grid>div{border:1px solid var(--line);background:#fff;border-radius:15px;gap:5px;min-width:0;padding:13px;display:grid}.metric-grid span{color:var(--muted);font-size:.65rem}.metric-grid strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-size:.93rem}.confirm-breakdown{box-shadow:none}.result-page{padding-top:max(28px,env(safe-area-inset-top))}.result-status{color:var(--green-800);text-align:center;justify-content:center;align-items:center;gap:8px;font-size:.8rem;font-weight:800;display:flex}.result-status svg{width:20px}.result-status.is-loss{color:var(--danger)}.result-metrics>div{min-height:80px}.time-metrics{border:1px solid var(--line);background:#fff;border-radius:15px;gap:5px;padding:14px;display:grid}.time-metrics p{font-size:.75rem}.history-page{min-height:auto}.history-header,.result-heading{justify-content:space-between;align-items:center;gap:16px;padding:4px 2px;display:flex}.history-header>div,.result-heading>div{gap:3px;display:grid}.history-header>svg{width:32px;height:32px;color:var(--green-800)}.history-empty{margin:min(12vh,90px) auto 0}.history-group{gap:8px;display:grid}.history-group>h2{padding:5px 2px 0;font-size:.88rem}.history-list{gap:9px;display:grid}.history-card{border:1px solid var(--line);text-align:left;background:#fff;border-radius:17px;gap:9px;padding:14px;display:grid;box-shadow:0 7px 22px #28302d09}.history-card__top,.history-card__metrics,.history-card__result{justify-content:space-between;align-items:center;gap:10px;display:flex}.history-card__top time,.history-card__metrics{color:var(--muted);font-size:.68rem}.history-card__metrics{flex-wrap:wrap;justify-content:flex-start}.history-card__metrics strong{color:var(--ink);font-size:.88rem}.history-card__result{border-top:1px solid var(--line);color:var(--green-800);padding-top:9px;font-size:.72rem;font-weight:750}.history-card__result>span:last-child{align-items:center;gap:4px;display:inline-flex}.history-card__result svg{width:15px;height:15px}.history-card__result.is-loss{color:var(--danger)}.result-heading time{max-width:150px;color:var(--muted);text-align:right;font-size:.7rem}.detail-card{border:1px solid var(--line);background:#fff;border-radius:17px;gap:10px;padding:15px;display:grid}.detail-card>.section-title{padding:0}.detail-list{gap:8px;display:grid}.detail-list p{border-top:1px solid #eef1f2;justify-content:space-between;align-items:flex-start;gap:12px;padding-top:8px;font-size:.74rem;display:flex}.detail-list strong{color:var(--ink);text-align:right;overflow-wrap:anywhere}.revenue-split-card{background:#f8fdf9;border-color:#cde6d8}.revenue-split-card__note{color:var(--muted);font-size:.72rem;line-height:1.45}.revenue-split-card .detail-list p:nth-child(3) strong{color:var(--green-800)}@media(min-width:620px){.setup-page{padding-inline:28px}.field-grid,.form-grid-two,.vehicle-date-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.vehicle-type-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.choice-card{min-height:145px}.home-page{padding-top:28px}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@font-face{font-family:Noto Sans Thai;src:url(/assets/fonts/v1/noto-sans-thai-variable.ttf) format("truetype");font-weight:100 900;font-style:normal;font-display:swap}:root{--brand: #1265c4;--brand-strong: #074da1;--brand-soft: #e4f3ff;--brand-wash: #f3faff;--ink: #101b43;--muted: #61718e;--line: #d7e6f3;--surface: #fff;--canvas: #f0f8ff;--success: #087e76;--success-soft: #eaf8f4;--danger: #ba302b;--radius: 24px;--shadow-card: 0 8px 28px #214e7b06;--city-art: url(/assets/design/v1/city-mobility-desktop.769d2e33.webp);--city-hero-wash: linear-gradient(180deg, rgba(240, 248, 255, .78), rgba(240, 248, 255, .34) 55%, rgba(240, 248, 255, 0));--green-900: #104a8b;--green-800: var(--brand-strong);--green-700: var(--brand);--green-100: var(--brand-soft);--green-50: var(--brand-wash);--blue-700: var(--brand);color:var(--ink);background:var(--canvas)}body{color:var(--ink)}h1,h2,h3,strong{letter-spacing:-.015em}h1,h2,h3{color:var(--ink);font-weight:750}button,a,input,select{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #1673d8;outline-offset:3px}input,select{font-size:16px;accent-color:var(--brand)}.home-account-button{display:flex;align-items:center;min-height:44px;padding:0;border:0;border-radius:999px;background:transparent;color:var(--ink)}.user-avatar-lockup{display:flex;align-items:center;gap:6px;min-width:0}.user-avatar-name{max-width:85px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:750}.user-avatar-photo{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border:1px solid var(--line);border-radius:50%;background:#fff;overflow:hidden;color:var(--brand-strong)}.user-avatar-photo img{width:100%;height:100%;object-fit:cover}.user-avatar-photo svg{width:25px;height:25px}.account-card>.user-avatar-lockup{justify-content:center}.account-card .user-avatar-photo{width:80px;height:80px}.account-card .user-avatar-photo svg{width:42px;height:42px}.account-card h1,.account-card p{overflow-wrap:anywhere}.profile-form-card,.profile-fields{display:grid;gap:16px;min-width:0}.profile-fields{border:0;padding:0;margin:0}.profile-document{padding:14px;border:1px solid var(--line);border-radius:18px;display:grid;gap:12px}.profile-document h3{font-size:1rem}.profile-document small,.profile-form-card h2 small{color:var(--muted);font-size:.75rem}.profile-document-actions{display:flex;flex-wrap:wrap;gap:8px}.profile-document-actions button{min-height:44px;font-size:.8rem}.licence-preview{display:block;width:100%;max-height:240px;object-fit:contain;border-radius:10px;background:#f3f8fc}.profile-form-card [role=alert]{color:#a12d2d}.profile-form-card [role=status]{color:#086f58}.brand,.home-brand-lockup .brand{color:var(--ink);font-size:1.6rem}.brand__mark,.home-brand-lockup .brand__mark{filter:hue-rotate(73deg) saturate(1.6)}.home-brand-lockup .brand,.setup-page--vehicles .setup-header .brand,.setup-page--costs .setup-header .brand{font-size:1.6rem}.home-brand-lockup .brand__mark,.setup-page--vehicles .setup-header .brand__mark,.setup-page--costs .setup-header .brand__mark{width:32px;height:32px}.icon-button{width:44px;height:44px;color:var(--brand-strong);box-shadow:0 3px 10px #1559a00a}.primary-button,.vehicle-select-button{border-radius:999px;background:var(--brand);color:#fff;box-shadow:0 5px 14px #1265c41a}.primary-button:not(:disabled):hover{background:var(--brand-strong)}.primary-button:disabled{background:#dce5ed;color:#637286;box-shadow:none}.secondary-button{border-color:#c4d9ef;border-radius:16px;color:var(--brand-strong)}.danger-button,.result-delete-button{color:var(--danger)}.step-badge,.session-chip{padding:8px 12px;font-size:.75rem}.field{color:var(--ink);font-size:.9rem}.field>input,.field>select,.input-with-unit,.input-with-icon,.income-form-field input,.income-form-field select,.vehicle-value-fields input,.vehicle-value-manual-editor input{border-color:#cbdcec;border-radius:12px;color:var(--ink);font-size:16px;min-height:50px}.input-with-unit em{align-self:stretch;display:flex;align-items:center;background:#f0f6fc;color:var(--muted)}.form-card,.advanced-card,.state-card,.income-analysis-card,.income-date-picker,.vehicle-value-panel,.detail-card,.metric-grid>div,.today-vehicle-group{border-color:var(--line);border-radius:var(--radius);box-shadow:var(--shadow-card)}.form-card,.income-analysis-card{padding:20px}.form-card__heading>svg{width:44px;height:44px;border-radius:50%;background:var(--brand-soft);color:var(--brand);padding:10px}.form-card__heading h2{font-weight:750}.form-card__heading p{color:var(--muted)}.setup-page,.flow-page,.login-page{position:relative;isolation:isolate;background:none}.setup-page:before,.flow-page:before,.login-page:before{content:"";position:absolute;z-index:-1;top:0;left:50%;width:100vw;height:240px;transform:translate(-50%);background-color:#e5f4ff;background-image:var(--city-hero-wash),var(--city-art);background-position:center,center 64%;background-size:cover;background-repeat:no-repeat;pointer-events:none}.setup-header{margin-bottom:24px}.setup-page--vehicles .setup-header,.setup-page--costs .setup-header{margin-bottom:12px}.setup-page--vehicles .setup-intro,.setup-page--costs .setup-intro{padding-block:0 8px}.setup-page--costs .setup-intro{grid-template-rows:minmax(50px,auto);align-items:center;padding-top:2px}.setup-page--vehicles .vehicle-odometer-cell{align-content:start}.setup-page--vehicles .vehicle-odometer-cell>strong{margin-top:7px;font-size:1.15rem;color:var(--ink)}.setup-form{gap:18px}.vehicle-edit-fields>.form-grid-two{border:1px solid var(--line);border-radius:22px;background:#fff;padding:16px}.setup-intro{padding-block:8px 12px}.setup-intro h1{font-weight:800}.vehicle-photo-hero{border-color:#cde4f8;border-radius:24px;background:#eef8ff;padding:20px 16px}.vehicle-photo-hero>img{height:155px;filter:none}.vehicle-photo-hero>div>strong{color:var(--ink);font-size:1.1rem}.vehicle-photo-hero span,.vehicle-photo-hero small{font-size:.78rem}.vehicle-artwork-fallback{display:grid;width:100%;min-height:120px;place-items:center;border-radius:20px;background:var(--brand-soft)}.vehicle-artwork-fallback svg{width:64px;height:64px;color:var(--brand);stroke-width:1.25}.photo-upload-button,.cost-vehicle-value-card__toggle{border-color:#bfd9f0;color:var(--brand-strong);background:#fff}.cost-vehicle-hero{align-items:start}.cost-vehicle-hero>img{height:auto;aspect-ratio:16 / 9;object-position:center top}.cost-vehicle-hero>.vehicle-artwork-fallback{min-height:0;aspect-ratio:16 / 9}.cost-vehicle-hero__identity{min-width:0;overflow-wrap:anywhere}.cost-vehicle-hero>.cost-vehicle-hero__rates{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;border-top:1px solid #cfdfed;padding-top:14px}.cost-vehicle-hero__rate{display:grid;gap:4px;border:0;padding:0}.cost-vehicle-hero__rate strong{color:var(--brand-strong);font-size:1.65rem;line-height:1.2;overflow-wrap:anywhere}.usage-allocation-slider{appearance:none;display:block;width:100%;height:44px;margin:-8px 0;border:0;border-radius:999px;background-color:transparent;background-size:calc(100% - 24px) 9px;background-position:center;background-repeat:no-repeat;cursor:ew-resize;touch-action:pan-y}.usage-allocation-slider::-webkit-slider-runnable-track{height:9px;border-radius:999px;background:transparent}.usage-allocation-slider::-moz-range-track{height:9px;border-radius:999px;background:transparent}.usage-allocation-slider::-webkit-slider-thumb{appearance:none;width:24px;height:24px;margin-top:-7.5px;border:3px solid white;border-radius:50%;background:var(--brand);box-shadow:0 0 0 1px #a8c9e8,0 2px 5px #174d7826}.usage-allocation-slider::-moz-range-thumb{width:18px;height:18px;border:3px solid white;border-radius:50%;background:var(--brand);box-shadow:0 0 0 1px #a8c9e8,0 2px 5px #174d7826}.usage-allocation-slider:disabled{opacity:.45;cursor:default}.usage-slider-hint{font-size:.74rem}.cost-category-header{border-color:#cfe4f6;background:var(--brand-wash)}.cost-category-header__number{background:var(--brand);color:#fff}.cost-category-header p{color:var(--muted)}.cost-item-editor{border-color:var(--line);background:#fbfdff;border-radius:18px}.segmented-control{background:#f0f5fb}.segmented-control button[data-selected=true]{background:var(--brand-soft);color:var(--brand-strong);box-shadow:none}.preset-actions button{min-height:44px;border-color:var(--line);background:#fff;color:var(--brand-strong)}.repair-table__header{background:#f1f7fc}.repair-table__cell input{font-size:16px}.cost-item-editor__title button,.repair-table__delete button{min-width:40px;min-height:40px}.usage-allocation-summary,.usage-summary{background:var(--brand-wash);border-color:var(--line)}.home-page{--page-gutter: 17px;gap:10px;padding-top:max(22px,env(safe-area-inset-top))}.vehicle-card-rail{min-width:0;margin-inline:calc(-1 * var(--page-gutter));padding-inline:var(--page-gutter)}.home-page:before{height:240px;background-color:#e5f4ff;background-image:var(--city-hero-wash),var(--city-art);background-position:center,center 64%;background-size:cover;background-repeat:no-repeat}.home-header{min-height:58px;align-items:flex-start;margin-bottom:0}.home-brand-lockup{gap:2px}.home-brand-lockup>span{color:var(--ink);font-size:.72rem;font-weight:700;line-height:1.35}.vehicle-section-heading{min-height:50px;margin-bottom:0}.vehicle-section-heading .vehicle-section-copy{gap:3px;color:var(--ink)}.vehicle-section-copy strong{font-size:1.25rem}.vehicle-section-copy small{color:#4c6687;font-size:.72rem}.vehicle-section-heading>button{min-height:44px;border-color:#9bc7ee;background:#fffd;color:var(--brand-strong)}.vehicle-cost-card{padding:18px;border:1px solid #d4e8fa;border-radius:26px;box-shadow:var(--shadow-card)}.vehicle-cost-card[data-selected=true]{border-color:#abd3f4;box-shadow:var(--shadow-card)}.vehicle-card-heading{margin-bottom:14px}.vehicle-card-title-row>strong{color:var(--ink);font-size:clamp(1.12rem,4.5vw,1.55rem);line-height:1.35}.vehicle-card-meta{gap:5px;margin-top:9px}.vehicle-nickname{color:var(--muted);font-size:.75rem}.vehicle-meta-badge{display:inline-flex;min-height:26px;align-items:center;font-size:.65rem;padding:2px 6px}.vehicle-meta-badge--ownership{background:#f0f3f7;color:#5d6c81}.vehicle-meta-badge--energy{gap:4px;border:1px solid #9bc7ee;border-radius:5px;background:#fff;color:var(--brand-strong)}.vehicle-meta-badge--energy svg{width:13px;height:13px;flex:0 0 auto}.vehicle-license-plate{min-height:26px;border-color:#536480;background:#fff;padding:2px 5px;box-shadow:0 2px 5px #18395a12}.vehicle-license-plate strong{color:var(--ink);font-size:.64rem}.vehicle-hero{grid-template-columns:minmax(0,1fr) 48%;gap:8px;align-items:start}.vehicle-hero__cost{gap:3px;text-align:center}.vehicle-hero__cost>.vehicle-cost-caption{margin-top:6px;font-size:.85rem;color:var(--ink)}.vehicle-cost-number{justify-content:center;color:var(--brand-strong);font-size:clamp(3.2rem,14vw,5rem);line-height:1.15;letter-spacing:-.045em}.vehicle-cost-unit{color:var(--ink);font-size:.86rem;font-weight:750}.vehicle-hero__cost>p{color:var(--muted);font-size:.7rem;white-space:normal}.vehicle-photo{min-height:100px}.vehicle-photo img{width:100%;height:110px;object-fit:contain;filter:none}.vehicle-hero__identity{gap:5px}.vehicle-hero-edit{width:100%;min-height:44px;font-size:.7rem;border-radius:12px;background:var(--brand-soft);color:var(--brand-strong)}.vehicle-hero-edit svg{width:17px;height:17px}.vehicle-summary-grid{gap:8px;margin-top:12px}.vehicle-summary-grid>div{padding:10px;border-color:var(--line);background:#f7fbff;border-radius:16px}.vehicle-summary-heading{flex-wrap:wrap;gap:5px}.vehicle-summary-heading>span:nth-child(2){font-size:.69rem}.vehicle-summary-heading>strong{font-size:.92rem}.vehicle-summary-icon{width:28px;height:28px;background:var(--brand-soft);color:var(--brand)}.vehicle-summary-icon svg{width:18px;height:18px}.vehicle-age-cell>strong{margin-left:0;margin-top:7px;font-size:1.15rem;color:var(--ink)}.vehicle-age-cell small{font-size:.68rem;line-height:1.5;border-color:var(--line)}.vehicle-usage{margin-top:10px}.vehicle-usage__bar{height:9px;background:#a5e2d6}.vehicle-usage__values{font-size:.61rem}.vehicle-cost-details{margin-top:22px}.vehicle-cost-details-heading{gap:8px;margin-bottom:12px}.vehicle-cost-details-heading strong{color:var(--ink);font-size:1.1rem}.vehicle-cost-details-heading span{font-size:.73rem}.vehicle-cost-details-heading button{min-height:42px;font-size:.7rem;background:var(--brand-soft)}.vehicle-cost-list{border-color:var(--line);border-radius:18px}.vehicle-cost-level-main{grid-template-columns:40px 24px minmax(0,1fr) auto 24px;min-height:65px;gap:6px;padding:8px}.vehicle-level-switch{width:40px;height:28px;background:#c2ccd9;position:relative}.vehicle-level-switch:after{content:"";position:absolute;inset:-8px 0}.vehicle-level-switch[data-on=true]{background:var(--brand)}.vehicle-level-switch[data-on=true] span{color:var(--brand-strong)}.vehicle-level-icon{width:23px;height:23px;color:var(--brand-strong)}.vehicle-level-title strong{font-size:.74rem;white-space:normal;line-height:1.45}.vehicle-level-title small{font-size:.61rem;white-space:normal}.vehicle-level-rate{color:var(--ink);font-size:.72rem}.vehicle-level-disclosure{width:24px;min-height:44px}.vehicle-level-row{font-size:.75rem}.vehicle-level-row strong{font-size:.73rem}.vehicle-level-row small{font-size:.65rem}.vehicle-level-rows{padding-left:18px;background:#f7fbff}.vehicle-cost-total{background:var(--brand-wash);color:#536d8e;font-size:.71rem;padding:12px}.vehicle-value-link{background:var(--brand-wash);border-color:var(--line);color:var(--brand-strong);min-height:50px;font-size:.8rem;border-radius:15px}.vehicle-select-button{min-height:52px;margin-top:16px}.carousel-hint{font-size:.73rem;color:var(--muted)}.flow-page{gap:18px}.flow-header{min-height:68px;font-size:1.15rem}.flow-intro{padding-block:10px}.income-date-picker{padding:18px 14px}.income-date-picker__heading{font-size:1rem}.income-week-days button small{font-size:.7rem}.income-week-days button span{width:36px;height:36px;font-size:.9rem;font-weight:700}.income-week-days button{padding-block:8px}.income-view-tabs button{min-height:48px;border-color:#c7def2;background:#e7f3fd;color:var(--brand-strong);font-size:.8rem}.income-view-tabs button[aria-selected=true]{background:var(--brand);border-color:var(--brand);color:#fff}.income-analysis-row{border-color:var(--line);font-size:.84rem;padding-block:3px 10px}.income-analysis-row span,.income-note,.income-view-intro,.income-revision-note,.income-rate-source{color:var(--muted)}.income-analysis-row--result,.income-analysis-row--result span{color:var(--success)}.income-simple-result{background:var(--success-soft);padding:16px}.income-simple-result strong{color:var(--success);font-size:1.45rem}.income-simple-result small{color:#4f6f71}.income-rate-grid>div{background:var(--brand-wash);padding:14px}.income-rate-grid small{color:var(--muted)}.income-rate-grid strong{font-size:.84rem}.income-car-card{border-color:var(--line);border-radius:22px;box-shadow:var(--shadow-card)}.income-vehicle-card{padding:18px;gap:16px}.income-vehicle-card__head{border-color:var(--line)}.income-vehicle-card__head strong{color:var(--ink);font-size:1.15rem}.income-vehicle-picker button{min-height:104px;border-color:#bddbf3;background:#f8fcff;color:var(--ink);border-radius:20px;padding:18px}.income-vehicle-picker button:hover{background:var(--brand-soft);border-color:var(--brand)}.income-page .income-vehicle-picker{grid-template-columns:minmax(0,1fr)}.income-vehicle-identity{display:grid;grid-template-columns:minmax(0,1fr) minmax(70px,32%);align-items:center;gap:10px;width:100%;min-width:0}.income-vehicle-identity__copy{display:grid;gap:6px;min-width:0}.income-vehicle-identity__copy strong,.income-vehicle-model{overflow-wrap:anywhere}.income-vehicle-identity .income-vehicle-model{color:var(--muted);font-size:.76rem;line-height:1.4}.income-vehicle-identity .income-vehicle-plate{border:1px solid #61758c;border-radius:4px;background:#fff;padding:3px 5px;color:var(--ink);font-size:.72rem;line-height:1.3}.income-vehicle-photo{display:grid;place-items:center;gap:6px;width:100%;min-width:0}.income-vehicle-photo .income-vehicle-plate{max-width:100%;box-sizing:border-box;overflow-wrap:anywhere;text-align:center}.income-vehicle-photo img{width:100%;height:auto;aspect-ratio:16 / 9;object-fit:contain}.income-vehicle-photo .vehicle-artwork-fallback{width:100%;max-width:100%;min-width:0;height:auto;min-height:0;aspect-ratio:16 / 9}.income-vehicle-photo .vehicle-artwork-fallback svg{width:48px;height:32px}.income-vehicle-card__head>.income-vehicle-identity{flex:1}.income-vehicle-card__head>button{flex-shrink:0;align-self:start}@media(min-width:620px){.income-page .income-vehicle-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}.income-vehicle-picker button span{color:var(--brand-strong)}.today-summary{background:#fbfdff;border-color:#c8e3fa;border-radius:24px;box-shadow:none}.today-summary>div{padding:22px 18px}.today-summary>div+div,.today-summary p{border-color:var(--line)}.today-summary span{color:var(--muted);font-size:.8rem}.today-summary strong{color:var(--ink);font-size:clamp(1.5rem,6.5vw,2.2rem)}.today-summary>div+div strong{color:var(--success)}.today-summary p{padding:14px;font-size:.85rem}.today-empty{margin:0;width:100%;padding:28px 22px}.today-empty h1{font-size:1.4rem}.today-choose-vehicle{padding:0 22px 24px;overflow:hidden;border-color:#cce6fb}.today-choose-vehicle:before{content:"";display:block;height:160px;margin:0 -22px 12px;background:var(--city-art) center 64% / cover}.today-choose-vehicle p{color:var(--ink);font-size:1.1rem;font-weight:700}.today-choose-vehicle .secondary-button{color:#fff;background:var(--brand);border-color:var(--brand);border-radius:999px}.today-vehicle-summary{padding:18px}.today-vehicle-summary strong{font-size:1rem}.today-vehicle-trips,.trip-list .today-vehicle-summary{background:#f8fcff}.trip-card{padding:16px}.history-flow-header h1{margin:0;font:inherit;justify-self:center;text-align:center}.history-list{gap:16px}.history-group>h2{color:var(--muted);font-size:.95rem;padding-bottom:4px}.history-card-row{position:relative;border:1px solid #cbe3f7;border-radius:24px;background:#fff}.history-card{gap:20px;padding:20px 16px 16px;border:0;border-radius:24px;box-shadow:none}.history-card__top{padding-right:46px;min-height:38px}.history-card__top>strong{color:var(--ink);font-size:1.25rem}.history-card__top time{font-size:.78rem}.history-card__metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;font-size:.8rem}.history-card__metrics>span{display:grid;gap:5px}.history-card__metrics>span+span{border-left:1px solid var(--line);padding-left:10px}.history-card__metrics strong{color:var(--ink);font-size:.98rem}.history-card__result{border:0;border-radius:14px;padding:13px 10px;background:var(--success-soft);color:var(--success);font-size:.78rem;flex-wrap:wrap}.history-card__result.is-loss{background:#fff0f0;color:var(--danger)}.history-delete-button{position:absolute;top:17px;right:12px;width:40px;height:40px;border-radius:50%}.positive-text,.result-status:not(.is-loss){color:var(--success)}.result-hero{background:var(--success-soft);border-color:#c8e9e2}.result-hero strong{color:var(--success)}.result-hero.is-loss{background:#fff0f0}.result-hero.is-loss strong,.loss-text,.today-summary .is-loss strong{color:var(--danger)}.vehicle-value-panel__heading>svg,.vehicle-value-caveat svg,.vehicle-value-header>button,.vehicle-value-edit{color:var(--brand-strong)}.vehicle-value-result,.vehicle-value-stored span,.vehicle-value-empty{background:var(--brand-wash);color:var(--brand-strong)}.vehicle-value-panel,.vehicle-value-edit{border-color:var(--line)}.login-card{border-color:var(--line);box-shadow:0 16px 60px #1c548015}.login-card__visual{background:var(--brand-soft)}.welcome-page{display:grid;place-items:center;min-height:100svh;padding:max(16px,env(safe-area-inset-top)) 16px max(20px,env(safe-area-inset-bottom));background:radial-gradient(ellipse at 50% 10%,#fff 0,#edf8ff 55%,#e3f1ff)}.welcome-page:before{display:none}.welcome-layout{display:grid;width:min(100%,1120px);gap:8px}.welcome-stage{position:relative;isolation:isolate;display:grid;justify-items:center;align-content:start;gap:8px;padding:0;text-align:center;overflow:hidden;border-radius:28px}.welcome-brand{position:relative;isolation:isolate;padding:14px 10px 4px}.welcome-brand:before{content:"";position:absolute;z-index:-1;inset:-16px -20px;border-radius:50%;background:radial-gradient(ellipse,#8eceff75,#bfe7ff20 60%,transparent 72%);animation:welcome-glow 2.4s ease-in-out 2;pointer-events:none}.welcome-brand .brand{gap:12px;font-size:clamp(3rem,12.5vw,4.5rem);line-height:1;animation:welcome-arrive .8s cubic-bezier(.2,.7,.25,1) both}.welcome-brand .brand__mark{width:clamp(56px,15vw,82px);height:clamp(56px,15vw,82px)}.welcome-stage h1{margin:0;font-size:clamp(1.4rem,6.2vw,2.4rem);line-height:1.4;letter-spacing:-.025em;color:var(--ink);animation:welcome-copy-in .9s .35s both}.welcome-stage h1 span{color:var(--brand)}.welcome-traffic{position:relative;width:100%;height:clamp(190px,55vw,250px);overflow:hidden;border-radius:22px;pointer-events:none}.welcome-traffic__city{position:absolute;inset:0 0 20px;background-image:linear-gradient(#edf8ff,#edf8ff25 38%,#edf8ff60),var(--city-art);background-size:cover;background-position:center,57% 65%;opacity:.78;animation:welcome-city-drift 18s ease-in-out infinite alternate}.welcome-traffic__road{position:absolute;inset:58% -20% 0;transform:skewY(-3deg);border-top:3px solid #fff;background:linear-gradient(#d2e3ed,#e2eef5);box-shadow:0 -5px #b3cfdd}.welcome-traffic__road span{position:absolute;width:200%;height:2px;top:35%;background:repeating-linear-gradient(90deg,#ffffffc9 0 24px,transparent 24px 56px);animation:welcome-road-flow 2s linear infinite}.welcome-traffic__road span+span{top:78%;animation-duration:1.6s}.welcome-vehicle{position:absolute;width:60%;left:0;bottom:-3%;animation:welcome-car-arrive 2s .55s cubic-bezier(.16,.8,.2,1) both}.welcome-vehicle__body{position:relative;animation:welcome-suspension 2.6s 3.4s ease-in-out infinite}.welcome-vehicle__body:after{content:"";position:absolute;z-index:-1;left:9%;right:6%;top:77%;height:5%;border-radius:50%;background:#375b7540;filter:blur(3px)}.welcome-vehicle img{display:block;width:100%;height:auto}.welcome-vehicle--suv{z-index:1;width:59%;left:39%;bottom:18%;animation-name:welcome-suv-arrive;animation-delay:.8s}.welcome-vehicle--suv .welcome-vehicle__body{scale:-1 1}.welcome-vehicle--sedan{z-index:2}.welcome-vehicle--motorcycle{z-index:3;width:40%;left:56%;bottom:0;animation-delay:1.1s}.welcome-vehicle--motorcycle .welcome-vehicle__body:after{top:94%}.welcome-wheel{position:absolute;width:11.2%;aspect-ratio:1;transform:translate(-50%,-50%);opacity:.65}.welcome-wheel svg{display:block;width:100%;height:100%;overflow:visible;fill:#9ba8b5;stroke:#eef4f8;stroke-width:4;animation:welcome-wheel-spin .85s linear infinite}.welcome-wheel svg>circle:first-child{fill:#243140;stroke:#b6c5d3;stroke-width:3}.welcome-wheel svg>circle:last-child{fill:#9ba8b5;stroke-width:2}.welcome-vehicle--motorcycle .welcome-wheel{width:13%;opacity:.2}.welcome-vehicle--motorcycle .welcome-wheel:first-of-type{opacity:.08}.welcome-entry{display:grid;align-content:center;gap:12px;min-width:0;padding:22px 20px;border:1px solid #cfe3f5;border-radius:28px;background:#fffffff5;box-shadow:0 16px 50px #14558b0c}.welcome-entry__copy{display:grid;gap:6px}.welcome-entry__copy .eyebrow{font-size:.72rem}.welcome-entry h2{margin:0;font-size:1.25rem;line-height:1.4;color:var(--ink)}.welcome-entry__copy>p:last-child{color:var(--muted);font-size:.8rem;line-height:1.55}.welcome-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;list-style:none;padding:0;margin:0}.welcome-steps li{display:flex;align-items:center;justify-content:center;gap:5px;color:#385a7b;font-size:.64rem}.welcome-steps li>span{display:grid;place-items:center;width:20px;height:20px;flex:none;border-radius:50%;color:var(--brand-strong);background:var(--brand-soft);font-size:.65rem;font-weight:800}.welcome-google-button{width:100%;min-height:52px;border:1px solid #dadce0;border-radius:10px;padding:12px;background:#fff;color:#1f1f1f;box-shadow:none;font-size:.95rem;font-weight:500}.welcome-google-button:not(:disabled):hover{background:#f8faff}.welcome-google-button:focus-visible{outline:3px solid var(--brand-strong);outline-offset:4px}.welcome-google-button:disabled{background:#f4f5f6;color:#68717c;box-shadow:none}.welcome-google-button>img{flex:0 0 20px}.welcome-google-button strong{color:inherit;font-weight:700;letter-spacing:normal}.welcome-account-note{text-align:center;font-size:.68rem;line-height:1.6;color:var(--muted)}.welcome-entry .privacy-note{display:flex;align-items:flex-start;gap:8px;text-align:left;margin:0;border-top:1px solid #e4eef7;padding-top:14px;font-size:.7rem;line-height:1.7;color:#526d87}.welcome-entry .privacy-note svg{margin-top:2px}@keyframes welcome-arrive{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}@keyframes welcome-glow{0%,to{opacity:.55;transform:scale(.94)}50%{opacity:.95;transform:scale(1.04)}}@keyframes welcome-copy-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes welcome-car-arrive{0%{opacity:0;transform:translate(-125%)}65%{opacity:1}to{opacity:1;transform:none}}@keyframes welcome-suv-arrive{0%{opacity:0;transform:translate(125%)}65%{opacity:1}to{opacity:1;transform:none}}@keyframes welcome-wheel-spin{to{transform:rotate(360deg)}}@keyframes welcome-suspension{0%,to{transform:translateY(0)}50%{transform:translateY(-1.5px)}}@keyframes welcome-road-flow{to{transform:translate(-56px)}}@keyframes welcome-city-drift{to{transform:translate(-2%) scale(1.04)}}@media(min-width:800px){.welcome-page{padding:40px 32px}.welcome-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:36px}.welcome-stage{min-height:620px;align-content:center;gap:16px;padding:16px 0}.welcome-traffic{height:290px}.welcome-entry{padding:38px 32px;gap:22px}.welcome-entry h2{font-size:1.65rem}.welcome-entry__copy>p:last-child{font-size:.9rem}.welcome-steps li{font-size:.72rem}}@media(prefers-reduced-motion:reduce){.welcome-page *,.welcome-page *:before{animation:none!important}.welcome-google-button{transition:none}}.system-notices{position:sticky;top:0;z-index:100;width:min(100%,760px);margin:auto;padding:8px;box-sizing:border-box}.system-update,.system-offline{border:1px solid #aacceb;background:#f3faff;border-radius:16px;padding:14px;box-shadow:0 4px 18px #16457115;color:#153655;font-size:.85rem;line-height:1.5}.system-update>p{margin-block:6px}.system-update>[role=alert]{color:#9f2525}.system-update>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.system-update button{min-height:44px;border:1px solid #a6c9e8;border-radius:10px;padding:8px 16px;color:var(--brand-strong);background:#fff;font-weight:700}.system-update button:first-child{color:#fff;background:var(--brand)}.system-update button:disabled{opacity:.6}.system-update button:focus-visible,.help-link:focus-visible,.help-page a:focus-visible{outline:3px solid var(--brand-strong);outline-offset:3px}.system-offline{margin-bottom:8px;border-color:#dab770;background:#fff8e9;color:#6f4b17}.help-page{display:grid;gap:20px;max-width:800px;margin:auto;padding:24px 18px 48px;color:var(--ink);line-height:1.7}.help-page>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.help-page h1{font-size:1.6rem}.help-page h2{font-size:1.15rem;margin-bottom:8px}.help-page ol,.help-page ul{padding-left:24px}.help-page li+li{margin-top:8px}.help-page .form-card{min-width:0;padding:20px}.help-page a,.help-link{color:var(--brand-strong);text-underline-offset:3px}.help-link{display:block;font-size:.8rem;text-align:center}.bottom-nav{border-color:var(--line);background:#ffffffed;box-shadow:0 -4px 18px #20568d05;padding-top:8px}.bottom-nav__item{min-height:56px;gap:5px;color:#6b7890;font-size:.69rem}.bottom-nav__item svg{width:24px;height:24px}.bottom-nav__item.is-active{color:var(--brand)}.bottom-nav__item--record{color:var(--brand-strong);font-size:.65rem}.bottom-nav__item--record svg{width:36px;height:36px;padding:6px;border-radius:50%;background:var(--brand-soft)}@media(max-width:390px){.home-page{--page-gutter: 12px;padding-inline:var(--page-gutter)}.vehicle-cost-card{padding:13px}.vehicle-card-meta{gap:5px}.vehicle-nickname{font-size:.68rem}.vehicle-meta-badge{padding-inline:6px;font-size:.61rem}.vehicle-hero-edit{font-size:.72rem}.vehicle-summary-grid>div{padding:8px}.vehicle-summary-heading>strong{margin-left:0}.vehicle-cost-level-main{grid-template-columns:36px 20px minmax(0,1fr) auto 20px;gap:5px;padding-inline:6px}.vehicle-level-switch{width:36px}.vehicle-level-icon{width:20px}.vehicle-level-title strong{font-size:.7rem}.vehicle-level-rate{font-size:.67rem}.vehicle-cost-details-heading strong{font-size:1rem}.vehicle-cost-details-heading button{font-size:.65rem;padding-inline:8px}.form-card,.income-analysis-card{padding:16px}.income-analysis-row{font-size:.8rem}}@media(min-width:700px){.home-page{padding-top:30px}.vehicle-cost-card{padding:26px}.vehicle-photo img{height:170px}.vehicle-summary-grid>div{padding:16px}.vehicle-level-title strong,.vehicle-level-rate{font-size:.88rem}.vehicle-level-title small{font-size:.75rem}.vehicle-cost-level-main{min-height:76px;gap:12px;padding-inline:14px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.energy-rate-highlight{border:1px solid #86b8ed;border-radius:18px;background:linear-gradient(135deg,#e8f4ff,#f5faff);padding:15px;box-shadow:0 5px 18px #1265c412}.energy-rate-highlight>strong{display:block;margin-bottom:9px;color:var(--ink);font-size:1rem;font-weight:850}.energy-rate-highlight .field{display:block;min-width:0}.energy-rate-highlight__row{display:grid;grid-template-columns:minmax(0,1fr) 116px;gap:8px;align-items:stretch}.energy-rate-highlight__row .input-with-unit{min-width:0;min-height:54px;border:2px solid #2f81d5;background:#fff;box-shadow:0 2px 8px #1265c40d}.energy-rate-highlight__row .input-with-unit input{min-width:0;padding-inline:10px 5px;color:#074da1;font-size:1.45rem;font-weight:850;font-variant-numeric:tabular-nums}.energy-rate-highlight__row .input-with-unit em{padding-inline:8px;color:#074da1;background:#e9f3ff;font-size:.72rem;white-space:nowrap}.energy-rate-highlight__helper{display:flex;min-width:0;min-height:54px;align-items:center;justify-content:center;gap:5px;border:1px solid #8bbbe9;border-radius:12px;background:#fff;color:#074da1;font-size:.78rem;font-weight:850;white-space:nowrap}.energy-rate-highlight__helper svg{width:16px;height:16px;flex:0 0 auto}.energy-rate-highlight>small{display:block;margin-top:8px;color:#425e82;font-size:.72rem;line-height:1.45}.energy-sheet-backdrop{position:fixed;z-index:1100;inset:0;display:flex;align-items:flex-end;justify-content:center;background:#13284999}.energy-sheet{width:min(100%,680px);max-height:min(92dvh,900px);overflow-y:auto;overscroll-behavior:contain;border-radius:24px 24px 0 0;background:#fff;padding:10px 18px calc(22px + env(safe-area-inset-bottom));box-shadow:0 -12px 50px #10294b30;outline:none;animation:energy-sheet-up .22s ease-out}.energy-sheet__handle{width:42px;height:5px;margin:0 auto 14px;border-radius:99px;background:#c9d8e8}.energy-sheet__heading,.energy-sheet__heading>div{display:flex;align-items:center;gap:10px}.energy-sheet__heading{justify-content:space-between}.energy-sheet__heading>div>svg{color:var(--brand)}.energy-sheet__heading h2{margin:0;font-size:1.22rem}.energy-sheet__heading>button{display:grid;width:44px;height:44px;flex:0 0 auto;place-items:center;border:0;border-radius:50%;background:#f2f7fc;color:var(--ink)}.energy-sheet__tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:16px;border:1px solid #c9e0f7;border-radius:14px;background:#eff7ff;padding:4px}.energy-sheet__tabs button,.energy-sheet__modes button{min-height:44px;border:0;border-radius:10px;background:transparent;color:#425e82;font-weight:750}.energy-sheet__tabs button[aria-pressed=true],.energy-sheet__modes button[aria-pressed=true]{background:var(--brand);color:#fff}.energy-sheet__saved{display:grid;gap:3px;margin-top:16px;border:1px solid #bfdef7;border-radius:14px;background:#f0f8ff;padding:12px}.energy-sheet__saved span{color:var(--muted);font-size:.77rem}.energy-sheet__saved button{width:fit-content;min-height:38px;margin-top:4px;border:0;background:transparent;color:#9f3333;font-size:.76rem;font-weight:750}.energy-sheet__modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:14px;border:1px solid #c9e0f7;border-radius:13px;padding:4px}.energy-sheet__instruction{margin:15px 0;color:#425e82;font-size:.84rem;line-height:1.5}.energy-sheet__fields{display:grid;gap:13px}.finance-fields{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:10px;align-items:end}.finance-fields .field{min-width:0}.finance-fields .input-with-unit{grid-template-columns:minmax(0,1fr) auto}.finance-fields .input-with-unit input{padding-inline:9px}.finance-fields .input-with-unit em{padding-inline:6px;white-space:nowrap;font-size:.7rem}.energy-sheet__fields label{display:grid;gap:6px;min-width:0;font-size:.86rem;font-weight:750}.energy-sheet__fields label>span{display:flex;min-height:50px;align-items:center;gap:6px;border:1px solid #cbdcec;border-radius:12px;padding-right:12px;color:#5b6f8b;font-size:.76rem}.energy-sheet__fields label>span:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px #1265c422}.energy-sheet__fields input:not([type=checkbox]){width:100%;min-width:0;height:48px;border:0;outline:0;padding-inline:12px;color:var(--ink);font-size:1rem}.energy-sheet__two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.energy-sheet__next{display:grid;gap:2px;margin-top:5px;border-top:1px solid #d7e6f3;padding-top:15px}.energy-sheet__next small{color:var(--muted);font-size:.74rem;line-height:1.4}.energy-sheet__fields .energy-sheet__check{display:flex;min-height:44px;align-items:center;gap:9px;font-weight:650;line-height:1.4}.energy-sheet__check input{width:20px;height:20px;flex:0 0 auto}.energy-sheet__error{margin-top:14px;border-radius:12px;background:#fff0f0;padding:10px 12px;color:#9f3333;font-size:.82rem}.energy-sheet__result{display:grid;gap:3px;margin-top:16px;border:1px solid #9bc7ee;border-radius:16px;background:#eaf5ff;padding:14px;text-align:center}.energy-sheet__result strong{color:var(--brand-strong);font-size:2rem;font-variant-numeric:tabular-nums}.energy-sheet__result small{color:#425e82}.energy-sheet__actions{display:grid;gap:9px;margin-top:18px}.energy-sheet__actions button{min-height:48px;font-weight:800}@keyframes energy-sheet-up{0%{transform:translateY(30px);opacity:.8}to{transform:translateY(0);opacity:1}}@media(max-width:390px){.energy-rate-highlight{padding:12px}.energy-rate-highlight__row{grid-template-columns:minmax(0,1fr) 108px;gap:6px}.energy-rate-highlight__helper{font-size:.75rem}.energy-sheet{padding-inline:14px}}@media(prefers-reduced-motion:reduce){.energy-sheet{animation:none}}:root{--touch-control: 44px;--compact-control-text: .82rem}.cost-vehicle-value-card__toggle,.income-vehicle-card__head button,.income-return-day button,.income-vehicle-card__remove,.income-distance-link,.income-refresh-button,.vehicle-cost-details-heading button,.vehicle-usage-missing,.vehicle-cost-missing,.energy-sheet__saved button,.vehicle-value-edit,.segmented-control button{min-height:var(--touch-control);font-size:var(--compact-control-text)}.income-return-day{flex-wrap:wrap;font-size:var(--compact-control-text)}.income-return-day button{padding-inline:8px;white-space:nowrap;border:1px solid var(--line);border-radius:12px}.income-vehicle-card__remove{padding:8px 12px;color:var(--danger);border:1px solid #f3ceca;border-radius:12px;text-decoration:none}.cost-item-editor__title button,.repair-table__delete button,.history-delete-button{min-width:var(--touch-control);min-height:var(--touch-control)}.income-week-nav{grid-template-columns:44px minmax(0,1fr) 44px;gap:0}.income-week-nav>button{width:44px;height:44px}.income-week-days button span{width:min(36px,100%)}.income-week-days button small{font-size:.68rem}.vehicle-value-header>.back-button,.back-button{width:44px;height:44px;min-width:44px;min-height:44px;flex:0 0 44px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--brand-strong);padding:0}.vehicle-value-header>.back-button svg{width:21px;height:21px}.save-notice{margin:0;display:flex;align-items:center;gap:8px;border:1px solid #b7ddd5;border-radius:13px;background:var(--success-soft);color:var(--success);padding:11px 13px;font-size:.9rem;line-height:1.45}.calculation-details summary{cursor:pointer;min-height:44px;display:list-item;padding-block:8px;font-size:1rem;font-weight:750;color:var(--brand-strong)}.calculation-details .detail-list{padding-top:12px}@media(max-width:600px){.income-time-grid:has(input[type=datetime-local]){grid-template-columns:minmax(0,1fr)}.income-time-grid input[type=datetime-local]{min-height:50px}}
