@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-semi-condensed-latin-500-normal-G0uxJNrM.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-500-normal-CFOoVYFH.woff)format("woff")}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-semi-condensed-latin-ext-500-normal-BXdp1BvY.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-ext-500-normal-rZeYuEMb.woff)format("woff")}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-semi-condensed-latin-600-normal-BkLiAYu4.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-600-normal-DyOfdMBA.woff)format("woff")}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-semi-condensed-latin-ext-600-normal-BkQ9hN72.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-ext-600-normal-BuP8AaxH.woff)format("woff")}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-semi-condensed-latin-700-normal-BpqDG8I9.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-700-normal-BMyZXq_9.woff)format("woff")}@font-face{font-family:Barlow Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-semi-condensed-latin-ext-700-normal-BhgEo64M.woff2)format("woff2"),url(/assets/barlow-semi-condensed-latin-ext-700-normal-C0vCoZIV.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff)format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2)format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff)format("woff")}:root{--on-brand:#1a1200;--plate-bg:#fff;--plate-ink:#111;--plate-band:#1d4fb8;--plate-band-ink:#ffd400;--medal-silver:#d5dbe3;--medal-bronze:#e6b285;--scrim:#040609b8}:root,:root[data-theme=light]{--surface-100:#eef1f5;--surface-200:#fff;--surface-300:#e6eaf0;--surface-nav:#fff;--surface-odo:#12161d;--odo-ink:#e9edf3;--border:#d5dbe4;--border-field:#808b9b;--ink:#12161d;--ink-muted:#556070;--brand:#ffb020;--brand-strong:#8f5500;--sun:#ffd98a;--warning:#8f5500;--danger:#bf3026;--ok:#0b7488;--shadow-card:0 1px 2px #12161d14;--shadow-float:0 6px 20px #12161d40;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--surface-100:#12161d;--surface-200:#1b212b;--surface-300:#242b37;--surface-nav:#0b0e13;--surface-odo:#07090c;--odo-ink:#e9edf3;--border:#2b3340;--border-field:#667286;--ink:#e9edf3;--ink-muted:#8f9aab;--brand:#ffb020;--brand-strong:#ffb020;--sun:#ffd98a;--warning:#ffb020;--danger:#ff5a4e;--ok:#4cc9e0;--shadow-card:none;--shadow-float:0 6px 20px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--surface-100:#12161d;--surface-200:#1b212b;--surface-300:#242b37;--surface-nav:#0b0e13;--surface-odo:#07090c;--odo-ink:#e9edf3;--border:#2b3340;--border-field:#667286;--ink:#e9edf3;--ink-muted:#8f9aab;--brand:#ffb020;--brand-strong:#ffb020;--sun:#ffd98a;--warning:#ffb020;--danger:#ff5a4e;--ok:#4cc9e0;--shadow-card:none;--shadow-float:0 6px 20px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--font-sans:"Barlow Semi Condensed", "Arial Narrow", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--text-display:700 40px/44px var(--font-sans);--text-h1:700 28px/34px var(--font-sans);--text-h2:700 22px/28px var(--font-sans);--text-h3:600 19px/24px var(--font-sans);--text-body:500 17px/24px var(--font-sans);--text-body-sm:500 15px/20px var(--font-sans);--text-label:600 13px/16px var(--font-sans);--text-section:600 14px/18px var(--font-sans);--text-nav:600 11px/14px var(--font-sans);--text-number-lg:600 26px/32px var(--font-mono);--text-number:600 17px/24px var(--font-mono);--text-number-sm:500 14px/20px var(--font-mono);--tracking-display:.02em;--tracking-label:.08em;--tracking-section:.12em;--tracking-button:.05em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--radius-sm:4px;--radius-md:10px;--radius-lg:14px;--radius-pill:999px;--warning-bg:color-mix(in srgb, var(--warning) 12%, var(--surface-200));--danger-bg:color-mix(in srgb, var(--danger) 12%, var(--surface-200));--brand-bg:color-mix(in srgb, var(--brand) 14%, var(--surface-200));--danger-fill:#c23b2e;--on-danger-fill:#fff;--touch-target:44px;--field-height:48px;--nav-height:64px;--content-max:40rem}.display{font:var(--text-display);letter-spacing:var(--tracking-display)}.h1{font:var(--text-h1)}.h2{font:var(--text-h2)}.h3{font:var(--text-h3)}.body{font:var(--text-body)}.body-sm{font:var(--text-body-sm)}.label{font:var(--text-label);letter-spacing:var(--tracking-label)}.number-lg{font:var(--text-number-lg);font-variant-numeric:tabular-nums}*,:before,:after{box-sizing:border-box}html{scroll-padding-top:calc(var(--nav-height) + env(safe-area-inset-top));-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;touch-action:manipulation;-webkit-tap-highlight-color:transparent;font:var(--text-body);color:var(--ink);background:var(--surface-100)}body{font-variant-numeric:tabular-nums;background:0 0;min-height:100dvh;margin:0}h1{font:var(--text-h1);letter-spacing:var(--tracking-display);text-transform:uppercase;margin:0}h2{font:var(--text-h2);margin:0}h3{font:var(--text-h3);margin:0}p{margin:0}a{color:var(--brand-strong)}:focus-visible{outline:2px solid var(--brand-strong);outline-offset:2px}code{font:var(--text-body-sm);background:var(--surface-300);padding:0 var(--space-1);border-radius:var(--radius-sm)}.muted{color:var(--ink-muted)}.icon{flex:none;width:24px;height:24px}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:var(--space-4);top:var(--space-4);z-index:100;background:var(--surface-200);color:var(--ink);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);box-shadow:var(--shadow-float)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app-header{z-index:10;padding:var(--space-2) var(--space-4);padding-top:calc(var(--space-2) + env(safe-area-inset-top));background:var(--surface-100);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.app-header__brand{align-items:center;gap:var(--space-2);font:var(--text-h3);letter-spacing:var(--tracking-button);text-transform:uppercase;color:var(--ink);font-weight:700;text-decoration:none;display:inline-flex}.app-header__logo,.auth__logo{border-radius:22%;flex:none}.app-header__profile{min-width:var(--touch-target);min-height:var(--touch-target);border-radius:var(--radius-pill);color:var(--ink-muted);background:var(--surface-300);justify-content:center;align-items:center;display:inline-flex}.app-main{max-width:var(--content-max);padding:var(--space-4) var(--space-4) calc(var(--nav-height) + var(--space-8) + max(env(safe-area-inset-bottom), var(--space-2)));margin:0 auto}.app-main:focus{outline:none}.bottom-nav{z-index:10;background:var(--surface-nav);border-top:1px solid var(--border);padding-bottom:max(env(safe-area-inset-bottom), var(--space-2));grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav__item{touch-action:manipulation;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:var(--space-1);min-width:0;min-height:var(--nav-height);font:var(--text-nav);letter-spacing:var(--tracking-button);text-transform:uppercase;color:var(--ink-muted);flex-direction:column;text-decoration:none;display:flex}.bottom-nav__icon{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);display:inline-flex}.bottom-nav__item:active .bottom-nav__icon{background:var(--surface-300)}.bottom-nav__item>span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.bottom-nav__item.active{color:var(--brand-strong)}.offline-banner{justify-content:center;align-items:center;gap:var(--space-2);background:var(--warning-bg);color:var(--warning);padding:var(--space-2) var(--space-4);font:var(--text-body-sm);text-align:center;font-weight:600;display:flex}.update-banner{justify-content:center;align-items:center;gap:var(--space-2) var(--space-3);background:var(--brand-bg);color:var(--ink);padding:var(--space-2) var(--space-4);font:var(--text-body-sm);text-align:center;flex-wrap:wrap;font-weight:600;display:flex}.update-banner__actions{align-items:center;gap:var(--space-2);display:inline-flex}.auth__main{max-width:26rem;padding:var(--space-8) var(--space-4);gap:var(--space-4);flex-direction:column;margin:0 auto;display:flex}.auth__brand{align-items:center;gap:var(--space-3);font:var(--text-h2);letter-spacing:var(--tracking-button);text-transform:uppercase;color:var(--brand-strong);margin-bottom:var(--space-4);display:flex}.auth__main h1{margin-bottom:var(--space-2)}.auth__links{gap:var(--space-3);margin-top:var(--space-6);flex-direction:column;display:flex}.page-header{align-items:center;gap:var(--space-3);margin:var(--space-2) 0 var(--space-4);display:flex}.page-header h1{flex:1}.page-header__back{min-width:var(--touch-target);min-height:var(--touch-target);border-radius:var(--radius-pill);color:var(--ink);background:var(--surface-300);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.section-title{font:var(--text-section);letter-spacing:var(--tracking-section);text-transform:uppercase;color:var(--ink-muted);margin:var(--space-6) 0 var(--space-3)}h3.section-title{color:var(--ink)}.links-row{gap:var(--space-3);margin:var(--space-3) 0;flex-wrap:wrap;align-items:center;display:flex}.form,form{gap:var(--space-4);flex-direction:column;display:flex}.field{gap:var(--space-2);flex-direction:column;display:flex}.field label{font:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-muted)}.field__optional{letter-spacing:normal;text-transform:none;font-weight:500}.field input,.field select,.field textarea{appearance:none;font:var(--text-body);color:var(--ink);background:var(--surface-300);border:1px solid var(--border-field);border-radius:var(--radius-md);padding:var(--space-3);min-height:var(--field-height);width:100%}.field input[type=number],.field input[type=date],.field input[inputmode=decimal],.field input[inputmode=numeric]{font-family:var(--font-mono)}.field textarea{min-height:calc(var(--field-height) * 2);resize:vertical}.field select{padding-right:calc(var(--space-4) + var(--space-6));background-image:linear-gradient(45deg, transparent 50%, var(--ink-muted) 50%), linear-gradient(135deg, var(--ink-muted) 50%, transparent 50%);background-position:calc(100% - 20px),calc(100% - 14px);background-repeat:no-repeat;background-size:6px 6px,6px 6px}.field input[type=date]{text-align:left;display:block}.field input[type=date]::-webkit-date-and-time-value{text-align:left}.toggle input[type=checkbox],.toggle input[type=radio]{appearance:auto}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{border-color:var(--brand-strong)}.field--error input,.field--error select,.field--error textarea{border:2px solid var(--danger)}.field__hint{font:var(--text-body-sm);color:var(--ink-muted)}.field__error{font:var(--text-body-sm);color:var(--danger);font-weight:600}.toggle{align-items:center;gap:var(--space-3);min-height:var(--touch-target);margin-bottom:var(--space-2);display:flex}.toggle input{width:20px;height:20px;accent-color:var(--brand-strong)}.radio-list .toggle{margin-bottom:0}.filters{gap:var(--space-3);padding-bottom:var(--space-4);grid-template-columns:1fr;display:grid}@media (width>=30rem){.filters{grid-template-columns:1fr 1fr}}.filters-panel{background:var(--surface-200);border:1px solid var(--border);border-radius:var(--radius-lg);padding:0 var(--space-4);margin-bottom:var(--space-3);box-shadow:var(--shadow-card)}.filters-panel summary{font:var(--text-h3);min-height:var(--touch-target);cursor:pointer;align-items:center;display:flex}.btn{font:var(--text-body);letter-spacing:var(--tracking-button);text-transform:uppercase;border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);min-height:var(--field-height);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);border:1px solid #0000;font-weight:700;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn--primary{background:var(--brand);color:var(--on-brand);box-shadow:var(--shadow-card)}.btn--secondary{color:var(--ink);border-color:var(--border-field);background:0 0}.btn--danger{background:var(--surface-200);color:var(--danger);border-color:var(--danger)}.btn--link{color:var(--brand-strong);letter-spacing:normal;text-transform:none;min-height:var(--touch-target);background:0 0;border:none;justify-content:flex-start;padding:0;font-weight:600;text-decoration:underline}.btn--small{min-height:var(--touch-target);padding:var(--space-2) var(--space-4)}.btn--block{width:100%}.danger-zone{margin-top:var(--space-8);padding-top:var(--space-4);border-top:1px solid var(--border);gap:var(--space-3);flex-direction:column;display:flex}.card-list{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.card{gap:var(--space-1);background:var(--surface-200);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-4);color:var(--ink);flex-direction:column;text-decoration:none;display:flex}.card--link:hover{border-color:var(--brand-strong)}.card-list--compact{gap:var(--space-2)}.card-list--compact .card{padding:var(--space-3) var(--space-4);gap:2px}.card__row{justify-content:space-between;gap:var(--space-3);align-items:baseline;display:flex}.card__title{font:var(--text-h3);gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.card__subtitle{font:var(--text-body-sm);color:var(--ink-muted)}.card__meta{font:var(--text-number-sm);color:var(--ink-muted);overflow-wrap:anywhere}.amount{font:var(--text-number);white-space:nowrap}.tag{align-items:center;gap:var(--space-1);font:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--surface-300);color:var(--ink-muted);display:inline-flex}.tag--warning{background:var(--warning-bg);color:var(--warning)}.tag--danger{background:var(--danger-bg);color:var(--danger)}.tag--new{background:var(--sun);color:var(--on-brand)}.stats{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.stat{background:var(--surface-200);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-4);gap:var(--space-1);flex-direction:column;display:flex}.stat__label{font:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-muted)}.stat__value{font:var(--text-number-lg);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.breakdown{background:var(--surface-200);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin:0;padding:0;list-style:none}.breakdown li{justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);display:flex}.breakdown li:last-child{border-bottom:none}.breakdown li.breakdown__expandable{padding:0;display:block}.breakdown__expandable summary{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:var(--touch-target);padding:var(--space-3) var(--space-4);cursor:pointer;list-style:none;display:flex}.breakdown__expandable summary::-webkit-details-marker{display:none}.breakdown__name{align-items:center;gap:var(--space-2);display:inline-flex}.breakdown__name:before{content:"";border-right:2px solid var(--ink-muted);border-bottom:2px solid var(--ink-muted);flex:none;width:8px;height:8px;transition:transform .15s;transform:rotate(-45deg)}.breakdown__expandable details[open] .breakdown__name:before{transform:rotate(45deg)}.breakdown__latest{padding:0 var(--space-4);margin:0;list-style:none}.breakdown .breakdown__latest li{border-bottom:1px solid var(--border);padding:0}.breakdown__latest a{justify-content:space-between;gap:var(--space-3);min-height:var(--touch-target);color:var(--ink);font:var(--text-body-sm);flex:1;align-items:center;text-decoration:none;display:flex}.breakdown__date{font:var(--text-number-sm);color:var(--ink-muted)}.breakdown__all{min-height:var(--touch-target);padding:0 var(--space-4) var(--space-2);font:var(--text-body-sm);color:var(--brand-strong);align-items:center;font-weight:600;display:flex}@media (prefers-reduced-motion:reduce){.breakdown__name:before{transition:none}}.result{background:var(--surface-200);border:2px solid var(--brand);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-4);gap:var(--space-2);flex-direction:column;display:flex}.result__total{font:var(--text-number-lg);color:var(--ink)}.progress{height:var(--space-3);background:var(--surface-300);border-radius:var(--radius-pill);margin:var(--space-2) 0;border:1px solid var(--border-field);overflow:hidden}.progress__bar{background:var(--brand);border-radius:var(--radius-pill);height:100%}.badges{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));margin:0;padding:0;list-style:none;display:grid}.badge{text-align:center;align-items:center;gap:var(--space-1);background:var(--surface-200);color:var(--ink);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-3);font:var(--text-body-sm);flex-direction:column;display:flex}.badge--locked{color:var(--ink-muted);box-shadow:none;border-style:dashed;position:relative;overflow:hidden}.badge__lock{padding-top:calc(var(--space-8) + var(--space-3));padding-left:var(--space-8);background:color-mix(in srgb, var(--surface-100) 20%, transparent);pointer-events:none;justify-content:center;align-items:flex-start;display:flex;position:absolute;inset:0}.badge__lock-icon{width:var(--space-8);height:var(--space-8);border-radius:var(--radius-pill);background:var(--surface-200);color:var(--ink);border:1px solid var(--border);box-shadow:var(--shadow-card);justify-content:center;align-items:center;display:inline-flex}.badge--locked .badge__lock-icon .icon{width:16px;height:16px}.badge__name{font:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink)}.badge__status{align-items:center;gap:var(--space-1);font:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--brand-strong);display:inline-flex}.badge--locked .badge__status{color:var(--ink-muted)}.state{padding:var(--space-8) var(--space-4);text-align:center;align-items:center;gap:var(--space-3);color:var(--ink-muted);flex-direction:column;display:flex}.state__title{font:var(--text-h2);color:var(--ink)}.state--error{color:var(--danger)}.spinner{width:var(--space-6);height:var(--space-6);border:3px solid var(--surface-300);border-top-color:var(--brand-strong);border-radius:var(--radius-pill);animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation:none}}.notice{border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font:var(--text-body-sm);border:1px solid var(--border);background:var(--surface-200);color:var(--ink)}.notice--success{background:var(--brand-bg);border-color:var(--brand);color:var(--ink)}.notice--warning{background:var(--warning-bg);border-color:var(--warning);color:var(--warning)}.notice--error{background:var(--danger-bg);border-color:var(--danger);color:var(--danger)}.toast{left:var(--space-4);right:var(--space-4);bottom:calc(var(--nav-height) + var(--space-4) + env(safe-area-inset-bottom));z-index:20;background:var(--sun);max-width:28rem;color:var(--on-brand);font:var(--text-h3);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-float);margin:0 auto;position:fixed}.unit{font:var(--text-body);letter-spacing:normal;color:var(--ink-muted);font-weight:600}.app-main>p.muted{margin-bottom:var(--space-4)}.app-main>*+*,.app-main section:not(.result)>*+*{margin-top:var(--space-4)}.segmented{gap:var(--space-1);padding:var(--space-1);background:var(--surface-300);border:1px solid var(--border);border-radius:var(--radius-md);grid-template-columns:repeat(3,1fr);display:grid}.segmented__option{min-height:var(--touch-target);padding:0 var(--space-2);border-radius:var(--radius-sm);font:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-muted);cursor:pointer;text-align:center;justify-content:center;align-items:center;display:flex}.segmented__option--active{background:var(--brand);color:var(--on-brand);box-shadow:var(--shadow-card)}.segmented__option:has(input:focus-visible){outline:2px solid var(--brand-strong);outline-offset:2px}.captcha{align-items:center;gap:var(--space-2);flex-direction:column;display:flex}form>.captcha:not(.captcha--challenge){margin-top:calc(-1 * var(--space-4))}.captcha__notice{font:var(--text-body-sm);color:var(--ink-muted);text-align:center}.illustration{width:100%;max-width:220px;height:auto;margin:0 auto;display:block}.illustration--hero{max-width:180px}.ill-dial-track,.ill-dial-value,.ill-dial-tick,.ill-dial-needle{fill:none;stroke-linecap:round}.ill-dial-track{stroke:var(--border-field);stroke-width:10px}.ill-dial-value{stroke:var(--brand);stroke-width:10px}.ill-dial-tick{stroke:var(--ink-muted);stroke-width:2.5px}.ill-dial-needle{stroke:var(--brand-strong);stroke-width:4px}.ill-telltale-ok{fill:var(--ok)}.ill-telltale-on{fill:var(--danger)}.ill-brand{fill:var(--brand)}.ill-sun{fill:var(--sun)}.ill-ink{fill:var(--ink)}.ill-surface{fill:var(--surface-200)}.ill-soft{fill:var(--surface-300)}.ill-outline{stroke:var(--border);stroke-width:2px}.ill-outline-thick{stroke:var(--ink);stroke-width:8px}.ill-stroke,.ill-stroke-on,.ill-stroke-thick,.ill-road,.ill-road-line{fill:none;stroke-linecap:round;stroke-linejoin:round}.ill-stroke{stroke:var(--ink);stroke-width:3px}.ill-stroke-on{stroke:var(--on-brand);stroke-width:5px}.ill-stroke-thick{stroke:var(--ink);stroke-width:12px}.ill-road{stroke:var(--ink-muted);stroke-width:14px}.ill-road-line{stroke:var(--sun);stroke-width:2.5px;stroke-dasharray:8 10}.state__art{width:100%;max-width:220px}.auth__hero{margin-bottom:var(--space-2)}.badge-art{flex:none}.badge-art__ring{fill:var(--brand)}.badge-art__face{fill:var(--sun)}.badge-art__ribbon{fill:var(--brand-strong)}.badge-art__line{fill:none;stroke:var(--on-brand);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.badge-art--locked .badge-art__ring{fill:var(--surface-300)}.badge-art--locked .badge-art__face{fill:var(--surface-200)}.badge-art--locked .badge-art__ribbon{fill:var(--border)}.badge-art--locked .badge-art__line{stroke:var(--ink-muted)}.filters-panel .breakdown{box-shadow:none;background:0 0;border:none;border-radius:0}.filters-panel .breakdown li{padding-left:0;padding-right:0}.btn,.bottom-nav__icon,.segmented__option,.card--link{transition:background-color .15s,border-color .15s,color .15s}@media (hover:hover) and (pointer:fine){.btn--primary:hover:not(:disabled){background:color-mix(in srgb, var(--brand) 88%, var(--ink))}.btn--secondary:hover:not(:disabled){background:var(--surface-300)}.btn--danger:hover:not(:disabled){background:var(--danger-bg)}.btn--link:hover:not(:disabled){color:color-mix(in srgb, var(--brand-strong) 80%, var(--ink))}.page-header__back:hover,.app-header__profile:hover{background:color-mix(in srgb, var(--surface-300) 80%, var(--border-field))}.segmented__option:not(.segmented__option--active):hover{background:var(--surface-200);color:var(--ink)}.bottom-nav__item:not(.active):hover .bottom-nav__icon{background:var(--surface-300)}}.btn--primary:active:not(:disabled){background:color-mix(in srgb, var(--brand) 80%, var(--ink))}.btn--secondary:active:not(:disabled){background:var(--surface-300)}.btn--danger:active:not(:disabled){background:var(--danger-bg)}@media (prefers-reduced-motion:reduce){.btn,.bottom-nav__icon,.segmented__option,.card--link{transition:none}}.btn--danger-solid{background:var(--danger-fill);color:var(--on-danger-fill);border-color:var(--danger-fill)}@media (hover:hover) and (pointer:fine){.btn--danger-solid:hover:not(:disabled){background:color-mix(in srgb, var(--danger-fill) 85%, black);border-color:color-mix(in srgb, var(--danger-fill) 85%, black)}}.btn--danger-solid:active:not(:disabled){background:color-mix(in srgb, var(--danger-fill) 75%, black)}.card--with-thumb{align-items:center;gap:var(--space-3);flex-direction:row}.card__body{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.vehicle-thumb{border-radius:var(--radius-md);background:var(--brand-bg);width:64px;height:64px;color:var(--brand-strong);flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.vehicle-thumb img{object-fit:cover;width:100%;height:100%}.vehicle-photo__frame{aspect-ratio:16/10;border-radius:var(--radius-lg);background:var(--brand-bg);color:var(--brand-strong);border:1px solid var(--border);justify-content:center;align-items:center;display:flex;overflow:hidden}.vehicle-photo__frame img{object-fit:cover;width:100%;height:100%}.vehicle-photo__empty{align-items:center;gap:var(--space-2);font:var(--text-body-sm);color:var(--ink-muted);flex-direction:column;display:flex}.vehicle-photo__empty .icon{color:var(--brand-strong)}.vehicle-photo__actions{align-items:center;gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.vehicle-photo__actions label{cursor:pointer}.vehicle-photo__actions input:focus-visible+label{outline:2px solid var(--brand-strong);outline-offset:2px}.btn--disabled{opacity:.6;pointer-events:none}.overlay{z-index:50;padding:var(--space-4);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom));background:var(--scrim);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.overlay__card{gap:var(--space-3);background:var(--surface-200);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:26rem;max-height:100%;padding:var(--space-6) var(--space-4) var(--space-4);box-shadow:var(--shadow-float);flex-direction:column;display:flex;overflow-y:auto}.overlay__card h2{font:var(--text-h2);margin:0}.overlay__list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.overlay__list li{padding:var(--space-3);border-radius:var(--radius-md);background:var(--warning-bg);flex-direction:column;font-weight:600;display:flex}.overlay__date{font:var(--text-number-sm);color:var(--ink)}body.no-scroll{overflow:hidden}.photo-backdrop{z-index:-1;pointer-events:none;opacity:.15;background-position:50%;background-repeat:no-repeat;background-size:cover;position:fixed;inset:0}.app-main>.photo-backdrop+*,.app-main section>.photo-backdrop+*{margin-top:0}.app-header__profile .car-avatar{border-radius:50%;display:block}.app-header__profile:has(.car-avatar){background:0 0}.avatar-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(76px,1fr));display:grid}.avatar-option{align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-1);border-radius:var(--radius-md);color:var(--ink);font:var(--text-body-sm);cursor:pointer;min-height:var(--touch-target);background:0 0;border:2px solid #0000;flex-direction:column;display:flex}.avatar-option[aria-checked=true]{border-color:var(--brand-strong);background:var(--brand-bg);font-weight:600}.avatar-option:disabled{cursor:progress}.avatar-option__plain{background:var(--surface-300);width:56px;height:56px;color:var(--ink-muted);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.help-list{gap:var(--space-2);flex-direction:column;display:flex}.help-topic{background:var(--surface-200);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.help-topic summary{font:var(--text-h3);min-height:var(--touch-target);padding:var(--space-2) var(--space-4);cursor:pointer;justify-content:space-between;align-items:center;list-style:none;display:flex}.help-topic__body{padding:0 var(--space-4) var(--space-4)}.help-topic__body p,.help-topic__body ul,.help-topic__body ol{margin:0 0 var(--space-2)}.help-topic__body ul,.help-topic__body ol{padding-left:var(--space-6)}.help-topic__body li+li{margin-top:var(--space-1)}.help-topic summary::-webkit-details-marker{display:none}.help-topic summary:after{content:"";border-right:2px solid var(--ink-muted);border-bottom:2px solid var(--ink-muted);width:9px;height:9px;margin-right:var(--space-1);flex:none;transform:rotate(45deg)}.help-topic[open] summary:after{transform:rotate(-135deg)}.segmented--2{grid-template-columns:repeat(2,1fr)}.segmented+.leaderboard{margin-top:var(--space-3)}.leaderboard{background:var(--surface-200);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin:0;padding:0;list-style:none}.leaderboard__row{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);display:flex}.leaderboard__row:last-child{border-bottom:none}.leaderboard__row--me{background:var(--brand-bg)}.leaderboard__place{width:32px;height:32px;font-family:var(--font-mono);background:var(--surface-300);color:var(--ink);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.leaderboard__place--1{background:var(--sun);color:var(--on-brand)}.leaderboard__place--2{background:var(--medal-silver);color:var(--on-brand)}.leaderboard__place--3{background:var(--medal-bronze);color:var(--on-brand)}.leaderboard__name{align-items:center;gap:var(--space-1) var(--space-2);overflow-wrap:anywhere;flex-wrap:wrap;flex:1;min-width:0;font-weight:600;display:flex}.leaderboard__level{font:var(--text-body-sm);color:var(--ink-muted);flex-basis:100%}.dash-head{justify-content:space-between;align-items:flex-end;gap:var(--space-2) var(--space-3);margin:var(--space-1) 0 var(--space-4);flex-wrap:wrap;display:flex}.dash-head__main{min-width:0}.dash-head__title{font:var(--text-section);letter-spacing:var(--tracking-section);color:var(--ink-muted)}.dash-head__car{font:var(--text-h1);letter-spacing:var(--tracking-display);text-transform:uppercase;color:var(--ink);overflow-wrap:anywhere;text-decoration:none;display:block}.plate{border:2px solid var(--plate-ink);border-radius:var(--radius-sm);background:var(--plate-bg);color:var(--plate-ink);font:var(--text-number-sm);white-space:nowrap;flex:none;align-items:stretch;font-weight:600;display:inline-flex;overflow:hidden}.plate__band{padding:2px var(--space-1);background:var(--plate-band);color:var(--plate-band-ink);align-items:flex-end;font-size:10px;line-height:12px;display:flex}.plate__number{padding:2px var(--space-2)}.telltales{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(6.5rem,1fr));margin:0;padding:0;list-style:none;display:grid}.telltale{height:100%;padding:var(--space-2);background:var(--surface-200);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--ink);flex-direction:column;gap:2px;text-decoration:none;display:flex}.telltale__label,.telltale__car{font:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-muted);overflow-wrap:anywhere;font-weight:500}.telltale__car{letter-spacing:normal;text-transform:none}.telltale__value{font:var(--text-h3);font-size:16px;font-weight:700}.telltale--ok .telltale__value{color:var(--ok)}.telltale--soon{border-color:var(--warning)}.telltale--soon .telltale__value{color:var(--warning)}.telltale--on{border-color:var(--danger);box-shadow:inset 0 0 0 1px var(--danger)}.telltale--on .telltale__value{color:var(--danger)}.dash-card{align-items:center;gap:var(--space-3);background:var(--surface-200);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-2);grid-template-columns:110px minmax(0,1fr);display:grid}.dash-card--plain{padding:var(--space-4);grid-template-columns:minmax(0,1fr)}.dash-card__body{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.dash-card__label{font:var(--text-label);letter-spacing:var(--tracking-section);text-transform:uppercase;color:var(--ink-muted)}.dash-card__hint{font:var(--text-body-sm);color:var(--ink-muted)}.gauge svg{width:110px;height:110px;display:block}.gauge__track,.gauge__value{fill:none;stroke-width:9px;stroke-linecap:round}.gauge__track{stroke:var(--border)}.gauge__value{stroke:var(--brand)}.gauge__xp{fill:var(--ink);font:600 22px var(--font-mono)}.gauge__xp--long{font-size:16px}.gauge__label{fill:var(--ink-muted);font:600 11px var(--font-sans);letter-spacing:.06em}.odo{flex-wrap:wrap;align-items:flex-end;gap:2px;display:flex}.odo__digit{font:600 22px/1 var(--font-mono);color:var(--odo-ink);background:var(--surface-odo);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-1) 3px}.odo__sep,.odo__unit{font:var(--text-number-sm);color:var(--ink-muted)}.odo__unit{white-space:nowrap;margin-left:2px}.dash-actions{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.dash-actions .btn{padding-left:var(--space-2);padding-right:var(--space-2)}.app-main>.trip-row{margin-top:var(--space-2)}.trip-row{justify-content:space-between;align-items:center;gap:var(--space-1) var(--space-3);min-height:var(--touch-target);padding:var(--space-2) var(--space-3);background:var(--surface-200);border:1px solid var(--border);border-radius:var(--radius-md);font:var(--text-body-sm);color:var(--ink-muted);flex-wrap:wrap;text-decoration:none;display:flex}.trip-row__label{flex-direction:column;min-width:0;display:flex}.trip-row__sub{font:var(--text-body-sm);color:var(--ink);overflow-wrap:anywhere}.trip-row b{font:var(--text-number-sm);color:var(--ink);font-weight:600}@media (hover:hover) and (pointer:fine){.trip-row:hover,.telltale:hover{border-color:var(--brand-strong)}}.legal{max-width:var(--content-max);padding:var(--space-4);padding-bottom:calc(var(--space-8) + env(safe-area-inset-bottom));margin:0 auto}.legal__brand{align-items:center;gap:var(--space-2);font:var(--text-h3);margin:0 0 var(--space-4);display:flex}.legal h2{font:var(--text-h3);margin:var(--space-6) 0 var(--space-2)}.legal p,.legal ul{margin:0 0 var(--space-3)}.legal ul{padding-left:var(--space-6)}.legal li+li{margin-top:var(--space-2)}.legal__back{margin-top:var(--space-6)}.stats--total{grid-template-columns:minmax(0,7fr) minmax(0,3fr)}.money-hero{white-space:nowrap;overflow-wrap:normal}.money-hero--long{font-size:1.375rem}.overlay__card p{margin:0}.install-steps h3{font:var(--text-body);margin:0 0 var(--space-1);font-weight:600}.install-steps ol{margin:0 0 var(--space-3);padding-left:var(--space-6)}.install-steps li+li{margin-top:var(--space-1)}.install-steps__other summary{min-height:var(--touch-target);color:var(--brand-strong);cursor:pointer;align-items:center;font-weight:600;display:flex}.section-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.section-head .section-title{margin-bottom:var(--space-3)}.service-summary{margin:0 0 var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--surface-300)}.kind-picker{border:0;min-width:0;margin:0;padding:0}.kind-picker legend{margin-bottom:var(--space-2);font:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-muted);padding:0}.kind-picker__options{gap:var(--space-2);flex-wrap:wrap;display:flex}.kind-pill{min-height:var(--touch-target);padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--border-field);background:var(--surface-200);color:var(--ink);font:inherit;cursor:pointer;touch-action:manipulation}.kind-pill--on{background:var(--brand);border-color:var(--brand-strong);color:var(--on-brand);font-weight:600}.kind-pill:focus-visible{outline:2px solid var(--brand-strong);outline-offset:2px}.details{gap:var(--space-2) var(--space-3);margin:var(--space-4) 0;grid-template-columns:minmax(7rem,auto) 1fr;display:grid}.details dt{color:var(--ink-muted)}.details dd{overflow-wrap:anywhere;margin:0}.pre-line{white-space:pre-line}.button-row{gap:var(--space-2);margin:var(--space-3) 0;flex-wrap:wrap;display:flex}.tag--ok{background:color-mix(in srgb, var(--ok) 15%, transparent);color:var(--ok)}.mono{font-family:var(--font-mono)}.stat__value--sm{font:var(--text-number-sm)}.details--compact{margin:var(--space-2) 0 0}.share-card{gap:var(--space-2);flex-direction:column;display:flex}.share-card p{margin:0}.share-card__link{font:var(--text-number-sm);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-300);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.share-card__new{gap:var(--space-2);border-top:1px solid var(--border);padding-top:var(--space-3);flex-direction:column;display:flex}.share-record{flex-direction:row;align-items:center}.share-record>span{flex-direction:column;display:flex}.public-history-frame{border:1px dashed var(--border-field);border-radius:var(--radius-lg);padding:var(--space-4)}.public-history__eyebrow{font:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-muted);margin:0}.public-history__title{font:var(--text-h2);margin:var(--space-1) 0}.public-history__head,.public-history__stats{margin-bottom:var(--space-4)}.public-history__list{margin:var(--space-4) 0;gap:var(--space-3);flex-direction:column;padding:0;list-style:none;display:flex}.public-history__item{background:var(--surface-200);border:1px solid var(--border);border-left:4px solid var(--brand);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);gap:var(--space-1);break-inside:avoid;flex-direction:column;display:flex}.public-history__item p{margin:0}.public-history__meta{font:var(--text-number-sm);color:var(--ink-muted)}.public-history__recorded{font:var(--text-body-sm);color:var(--ink-muted);margin-top:var(--space-1)!important}.public-history__foot{font:var(--text-body-sm);color:var(--ink-muted);border-top:1px solid var(--border);padding-top:var(--space-3)}.public-history__link{overflow-wrap:anywhere}@media print{:root,:root[data-theme]{--ink:#111!important;--ink-muted:#444!important;--surface-100:#fff!important;--surface-200:#fff!important;--surface-300:#eee!important;--border:#999!important}.no-print,.app-header,.bottom-nav,.photo-backdrop{display:none!important}body{color:#000!important;background:#fff!important}.app-main,.legal{max-width:none!important;padding:0!important}.public-history-frame{border:0;padding:0}.public-history__item,.stat{box-shadow:none!important;background:#fff!important;border-color:#999!important}}.subsection-title{font:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-muted);margin:var(--space-4) 0 var(--space-2)}.reminder-list{margin-bottom:var(--space-4)}.card--attention{border-left:4px solid var(--warning)}.next-due{border:0;min-width:0;margin:0;padding:0}.next-due legend{margin-bottom:var(--space-2);font:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--ink-muted);padding:0}.next-due__row{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));display:grid}.next-due-card,.interval{align-items:flex-start;gap:var(--space-1);flex-direction:column;display:flex}.interval{margin-top:var(--space-1)}.interval-form{margin-top:var(--space-3)}.profile-tabs .segmented__option{background-color:#0000;border:0}.profile-tabs .segmented__option--active{background:var(--brand)}.profile-tabs .segmented__option:focus-visible{outline:2px solid var(--brand-strong);outline-offset:2px}.profile-panel>*+*{margin-top:var(--space-4)}
