:root{--petrol-light:#0b7480;--petrol-deep:#073b43;--petrol-tint:#dcf0f2;--petrol-dark:#56c6cf;--petrol-dark-deep:#0f5560;--petrol-dark-tint:#0d3236;--overdue-light:#bf3226;--overdue-dark:#ff6e61;--overdue-tint-light:#fbe8e5;--overdue-tint-dark:#3a1714;--due-soon-light:#9e5c00;--due-soon-dark:#ffb547;--due-soon-tint-light:#fbf0dc;--due-soon-tint-dark:#382910;--cat-home-light:#c95a00;--cat-home-dark:#ff9f45;--cat-home-text:#b34f00;--cat-vehicle-light:#1f6fe0;--cat-vehicle-dark:#5e9eff;--cat-garden-light:#2f8a3e;--cat-garden-dark:#5fd475;--cat-garden-text:#287a36;--cat-pets-light:#8b5e3c;--cat-pets-dark:#c99b74;--cat-bike-light:#4b4fd1;--cat-bike-dark:#8a8eff;--cat-health-light:#d1336f;--cat-health-dark:#ff7aa8;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display:var(--font-body);--step--2:.8125rem;--step--1:clamp(.875rem, .85rem + .11vw, .9375rem);--step-0:clamp(1rem, .96rem + .22vw, 1.125rem);--step-1:clamp(1.125rem, 1.05rem + .33vw, 1.3125rem);--step-2:clamp(1.3125rem, 1.17rem + .65vw, 1.6875rem);--step-3:clamp(1.625rem, 1.36rem + 1.2vw, 2.375rem);--step-4:clamp(2.25rem, 1.55rem + 2vw, 3.25rem);--step-5:clamp(2.5rem, 1.7rem + 3.6vw, 4.5rem);--ring-number:clamp(2.25rem, 1.7rem + 2.4vw, 3.5rem);--leading-tight:1.1;--leading-snug:1.28;--leading-body:1.62;--tracking-tight:-.022em;--tracking-snug:-.012em;--tracking-wide:.06em;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-heavy:750;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--section:clamp(3rem, 2.2rem + 3.2vw, 5.5rem);--radius-xs:6px;--radius-s:10px;--radius-m:14px;--radius-l:20px;--radius-xl:28px;--radius-pill:999px;--radius-icon:22.37%;--border-width:1px;--focus-width:3px;--container:1120px;--container-wide:1240px;--prose:42rem;--gutter:clamp(1rem, .6rem + 1.8vw, 2rem);--header-height:4rem;--ease-out:cubic-bezier(.22, 1, .36, 1);--dur-1:.12s;--dur-2:.2s;--dur-3:.32s;color-scheme:light;--bg:#f2f2f7;--bg-sunken:#e9e9ef;--surface:#fff;--surface-raised:#fff;--surface-2:#eeeef3;--border:#d7d7de;--border-strong:#c6c6c8;--control-border:#7c7c82;--text:#000;--text-muted:#5c5c61;--text-subtle:#636366;--heading:#000;--primary:#0b7480;--primary-hover:#05525b;--primary-contrast:#fff;--primary-soft:#dcf0f2;--link:#0b7480;--link-hover:#05525b;--focus:#0b7480;--overdue:#bf3226;--overdue-contrast:#fff;--overdue-tint:#fbe8e5;--due-soon:#9e5c00;--due-soon-contrast:#fff;--due-soon-tint:#fbf0dc;--upcoming:#0b7480;--upcoming-tint:#dcf0f2;--ring-track:#8e8e93;--shadow-1:0 1px 2px #0000000f, 0 1px 1px #0000000a;--shadow-2:0 2px 4px #0000000a, 0 10px 24px -8px #00000024;--shadow-3:0 4px 8px #0000000d, 0 28px 56px -18px #00000040;--cat-home:var(--cat-home-light);--cat-vehicle:var(--cat-vehicle-light);--cat-garden:var(--cat-garden-light);--cat-pets:var(--cat-pets-light);--cat-bike:var(--cat-bike-light);--cat-health:var(--cat-health-light)}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--bg:#000;--bg-sunken:#0b0b0d;--surface:#1c1c1e;--surface-raised:#242426;--surface-2:#2c2c2e;--border:#38383a;--border-strong:#48484a;--control-border:#8e8e93;--text:#fff;--text-muted:#a1a1a6;--text-subtle:#a1a1a6;--heading:#fff;--primary:#56c6cf;--primary-hover:#8be3ea;--primary-contrast:#00262b;--primary-soft:#0d3236;--link:#56c6cf;--link-hover:#8be3ea;--focus:#56c6cf;--overdue:#ff6e61;--overdue-contrast:#1c1c1e;--overdue-tint:#3a1714;--due-soon:#ffb547;--due-soon-contrast:#1c1c1e;--due-soon-tint:#382910;--upcoming:#56c6cf;--upcoming-tint:#0d3236;--ring-track:#7c7c82;--shadow-1:0 1px 2px #00000080;--shadow-2:0 2px 4px #00000059, 0 12px 28px -8px #0009;--shadow-3:0 4px 8px #0006, 0 32px 64px -16px #000c;--cat-home:var(--cat-home-dark);--cat-vehicle:var(--cat-vehicle-dark);--cat-garden:var(--cat-garden-dark);--cat-pets:var(--cat-pets-dark);--cat-bike:var(--cat-bike-dark);--cat-health:var(--cat-health-dark)}}@media (prefers-reduced-motion:reduce){:root{--dur-1:0s;--dur-2:0s;--dur-3:0s}}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-height) + var(--space-4))}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font-body);font-size:var(--step-0);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;overflow-x:clip}img,picture,svg,video,canvas{max-width:100%;display:block}img{height:auto}[hidden]{display:none!important}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer}:where(button,[role=button],a,input,select,summary,[tabindex]):focus-visible{outline:var(--focus-width) solid var(--focus);outline-offset:2px;border-radius:var(--radius-xs)}::selection{background:color-mix(in srgb, var(--primary) 28%, transparent)}h1,h2,h3,h4,.h1,.h2,.h3,.h4,.display{font-family:var(--font-display);color:var(--heading);font-weight:var(--weight-bold);text-wrap:balance}.display{font-size:var(--step-5);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);font-weight:var(--weight-heavy)}h1,.h1{font-size:var(--step-4);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);font-weight:var(--weight-heavy)}h2,.h2{font-size:var(--step-3);letter-spacing:var(--tracking-tight);line-height:1.15}h3,.h3{font-size:var(--step-2);line-height:var(--leading-snug);letter-spacing:var(--tracking-snug)}h4,.h4{font-size:var(--step-1);line-height:var(--leading-snug);letter-spacing:var(--tracking-snug);font-weight:var(--weight-semibold)}.hl{color:var(--primary)}p,li{text-wrap:pretty}.lede{font-size:var(--step-1);color:var(--text-muted);max-width:40rem;line-height:1.55}.small{font-size:var(--step--1)}.caption{font-size:var(--step--2);color:var(--text-subtle);line-height:1.45}.eyebrow{font-family:var(--font-display);font-size:var(--step--2);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-subtle)}.tnum{font-variant-numeric:tabular-nums}a{color:var(--link);text-underline-offset:.18em;transition:color var(--dur-1) var(--ease-out);text-decoration-thickness:1px}a:hover{color:var(--link-hover);text-decoration-thickness:2px}hr{border:0;border-top:var(--border-width) solid var(--border)}.container{width:100%;max-width:calc(var(--container) + 2 * var(--gutter));padding-inline:var(--gutter);margin-inline:auto}.container--wide{max-width:calc(var(--container-wide) + 2 * var(--gutter))}.container--prose>*{max-width:var(--prose)}.section{padding-block:var(--section)}.section--sunken{background:var(--bg-sunken)}.section-head{gap:var(--space-3);margin-bottom:var(--space-6);max-width:46rem;display:grid}.section-head p{color:var(--text-muted);font-size:var(--step-1);line-height:1.55}.stack{gap:var(--stack-gap,var(--space-4));flex-direction:column;display:flex}.cluster{align-items:center;gap:var(--cluster-gap,var(--space-3));flex-wrap:wrap;display:flex}.grid-cards{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));display:grid}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.stack--0{--stack-gap:0}.stack--3{--stack-gap:var(--space-3)}.stack--5{--stack-gap:var(--space-5)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mt-7{margin-top:var(--space-7)}.pt-0{padding-top:0}.prose-center{max-width:var(--prose);margin-inline:auto}h1,h2,h3,h4{overflow-wrap:anywhere}p,li,a,code{overflow-wrap:break-word}.article-head>*,.prose>*,.tool-card>*{min-width:0}.skip-link{left:var(--space-3);top:var(--space-3);z-index:100;padding:var(--space-2) var(--space-4);background:var(--primary);color:var(--primary-contrast);border-radius:var(--radius-pill);font-weight:var(--weight-semibold);transition:transform var(--dur-2) var(--ease-out);text-decoration:none;position:absolute;transform:translateY(-160%)}.skip-link:focus-visible{color:var(--primary-contrast);transform:none}.btn{--btn-h:2.75rem;--btn-px:1.15rem;justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--btn-h);padding:0 var(--btn-px);border:var(--border-width) solid transparent;border-radius:var(--radius-pill);font-family:var(--font-display);font-size:var(--step--1);font-weight:var(--weight-bold);text-align:center;white-space:normal;user-select:none;transition:background-color var(--dur-1) var(--ease-out), color var(--dur-1) var(--ease-out), border-color var(--dur-1) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), transform var(--dur-1) var(--ease-out);line-height:1.15;text-decoration:none;display:inline-flex}.btn:hover{text-decoration:none}.btn:active{transform:scale(.97)}.btn[disabled],.btn[aria-disabled=true]{opacity:.45;pointer-events:none}.btn svg{flex:none;width:1.15em;height:1.15em}.btn--s{--btn-h:2.75rem;--btn-px:.9rem}.btn .label-short{display:none}.btn--l{--btn-h:3.25rem;--btn-px:1.6rem;font-size:var(--step-0)}.btn--primary{background:var(--primary);color:var(--primary-contrast);box-shadow:var(--shadow-1)}.btn--primary:hover{background:var(--primary-hover);color:var(--primary-contrast);box-shadow:var(--shadow-2)}.btn--secondary{background:var(--surface);color:var(--text);border-color:var(--control-border)}.btn--secondary:hover{background:var(--primary-soft);color:var(--text)}.btn--soft{background:var(--primary-soft);color:var(--primary)}.btn--soft:hover{color:var(--primary-hover);background:color-mix(in srgb, var(--primary-soft) 80%, var(--primary) 12%)}.btn--ghost{color:var(--text);background:0 0}.btn--ghost:hover{background:var(--bg-sunken);color:var(--text)}.btn--icon{--btn-px:0;width:var(--btn-h)}.site-header{z-index:50;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:saturate(1.6)blur(14px);border-bottom:var(--border-width) solid color-mix(in srgb, var(--border) 70%, transparent);position:sticky;top:0}.site-header__inner{align-items:center;gap:var(--space-2) var(--space-3);min-height:var(--header-height);padding-block:var(--space-2);flex-wrap:wrap;display:flex}.brand{align-items:center;gap:var(--space-2);min-width:0;color:var(--heading);font-family:var(--font-display);font-weight:var(--weight-heavy);letter-spacing:-.02em;margin-right:auto;font-size:1.0625rem;text-decoration:none;display:inline-flex}.brand:hover{color:var(--heading)}.brand__mark{border-radius:var(--radius-icon);flex:none;width:1.75rem;height:1.75rem}.site-nav{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.site-nav a,.site-nav summary{align-items:center;gap:var(--space-1);min-height:2.75rem;padding:0 var(--space-3);border-radius:var(--radius-pill);color:var(--text-muted);font-size:var(--step--1);font-weight:var(--weight-semibold);cursor:pointer;text-decoration:none;list-style:none;display:inline-flex}.site-nav summary::-webkit-details-marker{display:none}.site-nav a:hover,.site-nav summary:hover,.site-nav a[aria-current=page],.site-nav details[open]>summary{color:var(--text);background:var(--bg-sunken)}.site-nav summary svg{width:1rem;height:1rem;transition:transform var(--dur-2) var(--ease-out)}.site-nav details[open]>summary svg{transform:rotate(180deg)}.menu{position:relative}.menu__panel{top:calc(100% + var(--space-2));width:min(38rem, calc(100vw - 2 * var(--gutter)));padding:var(--space-3);background:var(--surface-raised);border:var(--border-width) solid var(--border);border-radius:var(--radius-l);box-shadow:var(--shadow-3);gap:var(--space-1);grid-template-columns:1fr 1fr;display:grid;position:absolute;left:auto;right:0}.menu__item{gap:0 var(--space-3);grid-template-rows:auto auto;grid-template-columns:2.25rem minmax(0,1fr);align-items:center;line-height:1.3;padding:var(--space-3)!important;border-radius:var(--radius-m)!important;min-height:0!important;color:var(--text)!important;display:grid!important}.menu__icon{border-radius:var(--radius-s);background:var(--primary-soft);width:2.25rem;height:2.25rem;color:var(--primary);grid-row:span 2;place-items:center;display:grid}.menu__icon svg{width:1.2rem;height:1.2rem}.menu__item>span:nth-child(2){grid-area:1/2;align-self:end}.menu__item span:last-child{color:var(--text-subtle);font-weight:var(--weight-regular);font-size:var(--step--2);grid-area:2/2;align-self:start}.header-cta{align-items:center;gap:var(--space-2);display:flex}@media (width<=720px){.site-header__inner{gap:var(--space-1)}.brand{font-size:1rem}.site-nav a,.site-nav summary{padding-inline:var(--space-2)}.header-cta .label-long{display:none}.header-cta .label-short{display:inline}.menu{flex:100%}.menu__panel{width:100%;box-shadow:none;padding:var(--space-1) 0 var(--space-2);background:0 0;border:0;grid-template-columns:1fr;position:static}}@media (width<=520px){.site-nav{border-top:var(--border-width) solid var(--border);width:100%;padding-top:var(--space-1);order:3;justify-content:space-between}.header-cta{margin-left:auto}}.site-footer{background:var(--bg-sunken);border-top:var(--border-width) solid var(--border);padding-block:var(--space-8) var(--space-6);font-size:var(--step--1);color:var(--text-muted)}.site-footer__grid{gap:var(--space-6);grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));display:grid}.site-footer__grid>*,.site-footer__about{min-width:0}.site-footer a{overflow-wrap:break-word}@media (width<=860px){.site-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer__about{grid-column:1/-1}}@media (width<=560px){.site-footer__grid{grid-template-columns:1fr}.site-footer__about{grid-column:auto}}.site-footer h2{font-size:var(--step--2);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--text-subtle);margin-bottom:var(--space-3)}.site-footer ul{gap:var(--space-2);padding:0;list-style:none;display:grid}.site-footer a{color:var(--text-muted);text-decoration:none}.site-footer a:hover{color:var(--text);text-decoration:underline}.site-footer__base{margin-top:var(--space-7);padding-top:var(--space-5);border-top:var(--border-width) solid var(--border);justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;display:flex}.breadcrumbs{padding-top:var(--space-4)}.breadcrumbs ol{gap:var(--space-1);font-size:var(--step--2);color:var(--text-subtle);flex-wrap:wrap;padding:0;list-style:none;display:flex}.breadcrumbs li+li:before{content:"/";margin-right:var(--space-1);color:var(--border-strong)}.breadcrumbs a{color:var(--text-subtle);text-decoration:none}.breadcrumbs a:hover{color:var(--text);text-decoration:underline}.page-head{gap:var(--space-3);padding-block:var(--space-5) var(--space-6);max-width:52rem;display:grid}.page-head p{color:var(--text-muted);font-size:var(--step-1);line-height:1.55}.page-head--tool{padding-bottom:var(--space-4)}.chips{min-inline-size:0;gap:var(--space-2);border:0;flex-wrap:wrap;max-width:100%;padding:0;display:flex}.chips--equal .chip{flex:12rem;justify-content:center}.chips legend{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.chip{align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);border:var(--border-width) solid var(--control-border);background:var(--surface);min-height:2.75rem;color:var(--text);font-size:var(--step--1);font-weight:var(--weight-semibold);cursor:pointer;transition:border-color var(--dur-1) var(--ease-out), background-color var(--dur-1) var(--ease-out);padding:.45rem .9rem;display:inline-flex;position:relative}.chip input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.chip:hover{border-color:var(--control-border)}.chip:has(input:checked){border-color:var(--primary);background:var(--primary-soft);color:var(--heading);box-shadow:inset 0 0 0 1px var(--primary)}.chip:has(input:focus-visible){outline:var(--focus-width) solid var(--focus);outline-offset:2px}.chip svg{flex:none;width:1.15rem;height:1.15rem}.chip--area{padding-inline:.95rem 1.1rem}.chip--area .chip__text{text-align:left;line-height:1.2;display:grid}.chip--area .chip__text small{color:var(--text-subtle);font-size:.6875rem;font-weight:var(--weight-regular)}.chip--area:has(input:checked) .chip__text small{color:var(--text-muted)}.field{gap:var(--space-1);min-width:0;display:grid}.field>label,.field__label{font-size:var(--step--1);font-weight:var(--weight-semibold);color:var(--text)}.field__hint{font-size:var(--step--2);color:var(--text-subtle);line-height:1.4}.input,.select{border:var(--border-width) solid var(--control-border);border-radius:var(--radius-s);background:var(--surface);width:100%;min-height:2.75rem;color:var(--text);font-size:var(--step-0);padding:.5rem .75rem}.input:hover,.select:hover{border-color:var(--text-muted)}.input:focus-visible,.select:focus-visible{border-color:var(--focus)}.input--date{min-width:0}.field-row{gap:var(--space-3);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}@media (width<=520px){.field-row{grid-template-columns:1fr}}.segmented{border-radius:var(--radius-pill);background:var(--bg-sunken);border:var(--border-width) solid var(--border);flex-wrap:wrap;gap:2px;min-width:0;max-width:100%;padding:3px;display:inline-flex}.segmented legend{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.segmented label{justify-content:center;align-items:center;gap:var(--space-1);min-width:2.75rem;min-height:2.25rem;padding:0 var(--space-3);border-radius:var(--radius-pill);font-size:var(--step--1);font-weight:var(--weight-semibold);color:var(--text-muted);cursor:pointer;transition:background-color var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);flex:none;display:inline-flex;position:relative}.segmented input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.segmented label:hover{color:var(--text)}.segmented label:has(input:checked){background:var(--surface);color:var(--heading);box-shadow:inset 0 0 0 1px var(--control-border), var(--shadow-1)}.segmented label:has(input:focus-visible){outline:var(--focus-width) solid var(--focus);outline-offset:1px}.interval-control{gap:var(--space-2);align-items:stretch;min-width:0;display:flex}.interval-control .stepper__control{flex:auto}.interval-control .select{flex:0 0 7.5rem;width:auto}@media (width<=520px){.interval-control{flex-wrap:wrap}.interval-control .select{flex:100%;width:100%}}.stepper{gap:var(--space-2);min-width:0;display:grid}.stepper__label{align-items:center;gap:var(--space-2);font-size:var(--step--1);font-weight:var(--weight-semibold);color:var(--text);display:flex}.stepper__control{border:var(--border-width) solid var(--control-border);border-radius:var(--radius-pill);background:var(--surface);grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;min-width:0;display:grid;overflow:hidden}.stepper__control button{height:2.75rem;color:var(--text);background:0 0;border:0;border-radius:0;place-items:center;display:grid}.stepper__control button:hover{background:var(--bg-sunken)}.stepper__control button:disabled{color:var(--border-strong);cursor:not-allowed}.stepper__control button svg{width:1.1rem;height:1.1rem}.stepper__control input{text-align:center;font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--step-1);font-variant-numeric:tabular-nums;background:0 0;border:0;width:100%;min-width:0}.stepper__control input:focus-visible{outline-offset:-3px}.tool{padding-block:var(--space-4) var(--space-8)}.tool__grid{gap:var(--space-5);grid-template-columns:minmax(0,1fr) 320px;align-items:start;min-width:0;display:grid}.tool__main,.tool__side{gap:var(--space-4);min-width:0;display:grid}.tool__main>*,.tool__side>*{min-width:0}.tool__panel--narrow{display:none}@media (width<=1023px){.tool__grid{grid-template-columns:minmax(0,1fr)}.tool__side{display:none}.tool__panel--narrow{display:grid}}.panel{min-width:0;padding:var(--space-5);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-l);box-shadow:var(--shadow-1)}.panel--flush{padding:0;overflow:hidden}.panel__head{justify-content:space-between;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.panel__head h2,.panel__head h3{font-size:var(--step-2);line-height:var(--leading-snug)}.panel__head p{color:var(--text-subtle);font-size:var(--step--2)}.tool-card{gap:var(--space-3);padding:var(--space-5);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-l);box-shadow:var(--shadow-1);align-content:start;display:grid}.tool-card h3{font-size:var(--step-1)}.tool-card h3 a{color:var(--heading);text-decoration:none}.tool-card h3 a:hover{color:var(--link);text-decoration:underline}.tool-card p{color:var(--text-muted);font-size:var(--step--1);line-height:1.5}.tool-card__icon{border-radius:var(--radius-m);background:var(--primary-soft);width:2.75rem;height:2.75rem;color:var(--area-text,var(--primary));place-items:center;display:grid}.tool-card__icon.area--home,.tool-card__icon.area--vehicle,.tool-card__icon.area--garden,.tool-card__icon.area--pets,.tool-card__icon.area--bike,.tool-card__icon.area--health{background:color-mix(in srgb, var(--area-colour) 14%, var(--surface))}.tool-card__icon svg{width:1.5rem;height:1.5rem}.tool-card__link{font-weight:var(--weight-semibold);font-size:var(--step--1)}.tool-card__link:after{content:" →"}.result-summary{gap:var(--space-2);display:grid}.result-summary__line{font-size:var(--step-1);font-weight:var(--weight-semibold);color:var(--heading)}.result-summary__meta{color:var(--text-muted);font-size:var(--step--1)}.result-groups{gap:var(--space-5);display:grid}.result-group h3{align-items:center;gap:var(--space-2);font-size:var(--step--1);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--text-subtle);margin-bottom:var(--space-2);display:flex}.result-group h3 .count{font-variant-numeric:tabular-nums;color:var(--text)}.result-list{gap:var(--space-2);padding:0;list-style:none;display:grid}.job-result{gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-m);grid-template-columns:3rem minmax(0,1fr) auto;align-items:center;display:grid}.job-result__name{font-weight:var(--weight-semibold);color:var(--heading);line-height:1.3}.job-result__meta{font-size:var(--step--2);color:var(--text-subtle);line-height:1.4}.job-result__due{text-align:right;font-size:var(--step--1);font-weight:var(--weight-semibold);color:var(--text);line-height:1.3}.job-result__due small{font-size:var(--step--2);font-weight:var(--weight-regular);color:var(--text-subtle);display:block}.status--overdue .job-result__due,.status--overdue .job-result__name{color:var(--overdue)}.status--dueSoon .job-result__due{color:var(--due-soon)}.status--upcoming .job-result__due{color:var(--primary)}.empty{padding:var(--space-5);border:var(--border-width) dashed var(--border-strong);border-radius:var(--radius-m);color:var(--text-muted);font-size:var(--step--1);text-align:center}.calendar-details>summary{justify-content:space-between;align-items:baseline;gap:var(--space-3);cursor:pointer;list-style:none;display:flex}.calendar-details>summary::-webkit-details-marker{display:none}.calendar-details>summary .caption{color:var(--link);font-weight:var(--weight-semibold)}.calendar-details[open]>summary{margin-bottom:var(--space-4)}.calendar-details[open]>summary .caption{color:var(--text-subtle)}.ring{--ring-size:3rem;width:var(--ring-size);height:var(--ring-size);flex:none;overflow:visible}.ring--l{--ring-size:clamp(9rem, 8rem + 5vw, 13rem)}.ring--m{--ring-size:5rem}.ring__track{fill:none;stroke:var(--ring-track);stroke-width:7px}.ring__value{fill:none;stroke:var(--primary);stroke-width:7px;stroke-linecap:round;transform-origin:50%;transform:rotate(-90deg)}.ring__value--overdue{stroke:var(--overdue)}.ring__value--dueSoon{stroke:var(--due-soon)}.ring__value--upcoming{stroke:var(--primary)}.ring__label{font-family:var(--font-display);font-weight:var(--weight-heavy);fill:var(--heading);text-anchor:middle;dominant-baseline:central;letter-spacing:-.02em;font-size:15px}.ring--l .ring__label{font-size:30px}.ring__sub{font-family:var(--font-body);fill:var(--text-subtle);text-anchor:middle;dominant-baseline:central;letter-spacing:.02em;font-size:7px}.ring--l .ring__sub{font-size:10px}.ring-wrap{justify-items:center;gap:var(--space-2);text-align:center;display:grid}.ring-wrap__caption{font-size:var(--step--2);color:var(--text-subtle);max-width:16rem}.date-list{gap:var(--space-2);margin-top:var(--space-4);padding:0;list-style:none;display:grid}.date-list li{justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:var(--border-width) solid var(--border);font-size:var(--step--1);display:flex}.date-list li:last-child{border-bottom:0}.date-list span{color:var(--text-subtle)}.badge{border-radius:var(--radius-pill);min-height:1.75rem;font-size:var(--step--2);font-weight:var(--weight-bold);letter-spacing:.01em;align-items:center;padding:.1rem .65rem;display:inline-flex}.badge--active{background:var(--upcoming-tint);color:var(--upcoming)}.badge--endingSoon{background:var(--due-soon-tint);color:var(--due-soon)}.badge--expired{background:var(--overdue-tint);color:var(--overdue)}.areas{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr));display:grid}.jobs{gap:var(--space-2);display:grid}.job-row{gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-4);border:var(--border-width) solid var(--border);border-radius:var(--radius-m);background:var(--surface);grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.job-row:has(input[type=checkbox]:checked){border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.job-row__check{align-items:flex-start;gap:var(--space-3);min-width:0;display:flex}.job-row__check input{width:1.25rem;height:1.25rem;accent-color:var(--primary);flex:none;margin-top:.15rem}.job-row__name{gap:2px;line-height:1.3;display:grid}.job-row__name strong{font-size:var(--step--1);color:var(--heading)}.job-row__name span{font-size:var(--step--2);color:var(--text-subtle)}.job-row__controls{gap:var(--space-3);padding-top:var(--space-2);border-top:var(--border-width) solid var(--border);grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:none}.job-row:has(input[type=checkbox]:checked) .job-row__controls{display:grid}.job-row__controls .field>label{font-size:var(--step--2)}@media (width<=640px){.job-row__controls{grid-template-columns:1fr}}.job-row--custom .job-row__controls{display:grid}.job-row--custom .job-row__name input{width:100%}.jobs-empty{padding:var(--space-4);border:var(--border-width) dashed var(--border-strong);border-radius:var(--radius-m);color:var(--text-subtle);font-size:var(--step--1)}.outputs{gap:var(--space-2);flex-wrap:wrap;display:flex}.custom-add{gap:var(--space-2);flex-wrap:wrap;align-items:end;display:flex}.custom-add .field{flex:12rem}.calendar{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));display:grid}.month{min-width:0}.month__table{border-collapse:collapse;width:100%}.month__table caption{text-align:left;font-family:var(--font-display);font-size:var(--step--1);font-weight:var(--weight-bold);color:var(--heading);padding-bottom:var(--space-2)}.month__table th{text-align:center;font-size:.625rem;font-weight:var(--weight-semibold);color:var(--text-subtle);text-transform:uppercase;letter-spacing:.04em;padding-bottom:2px}.month__table td{aspect-ratio:1;text-align:center;vertical-align:middle;color:var(--text-muted);border-radius:var(--radius-xs);font-variant-numeric:tabular-nums;font-size:.6875rem}.month__table .is-outside{color:var(--text-subtle)}.month__table .is-today{outline:2px solid var(--primary);outline-offset:1px}.month__table .is-due{background:var(--primary);color:var(--primary-contrast);font-weight:var(--weight-bold)}.month__table .is-due-overdue{background:var(--overdue);color:var(--overdue-contrast)}.month__table .is-due-soon{background:var(--due-soon);color:var(--due-soon-contrast)}.calendar-legend{gap:var(--space-2) var(--space-4);margin-top:var(--space-4);font-size:var(--step--2);color:var(--text-muted);flex-wrap:wrap;display:flex}.legend-item{align-items:center;gap:var(--space-1);display:inline-flex}.legend-swatch{background:var(--primary);border-radius:4px;width:.85rem;height:.85rem}.legend-swatch--overdue{background:var(--overdue)}.legend-swatch--due-soon{background:var(--due-soon)}.legend-swatch--later{background:var(--primary)}.legend-swatch--today{outline:2px solid var(--primary);outline-offset:-1px;background:0 0}.app-panel{gap:var(--space-4);padding:var(--space-5);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-l);box-shadow:var(--shadow-2);display:grid}.app-panel--sticky{top:calc(var(--header-height) + var(--space-4));position:sticky}@media (width<=1023px){.app-panel--sticky{position:static}}.app-panel__head{align-items:center;gap:var(--space-3);display:flex}.app-panel__head img{border-radius:var(--radius-icon);width:3.5rem;height:3.5rem}.app-panel__name{min-width:0;font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--step-0);color:var(--heading);line-height:1.25}.app-panel__by{font-size:var(--step--2);color:var(--text-subtle)}.app-panel__line{font-size:var(--step-0);color:var(--text);line-height:1.5;font-weight:var(--weight-medium)}.app-panel__facts{gap:var(--space-3);font-size:var(--step--1);color:var(--text-muted);padding:0;padding-top:var(--space-4);border-top:var(--border-width) solid var(--border);list-style:none;display:grid}.app-panel__facts li{gap:var(--space-2);grid-template-columns:1.75rem 1fr;align-items:start;line-height:1.45;display:grid}.app-panel__facts svg{border-radius:var(--radius-s);background:var(--primary-soft);width:1.75rem;height:1.75rem;color:var(--primary);padding:.3rem}.app-panel__get{justify-content:space-between;align-items:center;gap:var(--space-4);padding-top:var(--space-4);border-top:var(--border-width) solid var(--border);display:flex}.app-panel--compact{align-items:center;gap:var(--space-3) var(--space-4);padding:var(--space-4);box-shadow:var(--shadow-1);grid-template-columns:auto minmax(0,1fr) auto}.app-panel--compact .app-panel__head img{width:3rem;height:3rem}.app-panel--compact .app-panel__line{font-size:var(--step--1)}.app-panel--compact .app-panel__get .small{display:none}@media (width<=1023px){.app-panel--compact{grid-template-columns:auto minmax(0,1fr)}.app-panel--compact .app-panel__facts,.app-panel--compact .app-panel__get{grid-column:1/-1}}@media (width<=560px){.app-panel--compact{grid-template-columns:1fr}.app-panel--compact .app-badge{grid-column:auto;justify-self:start}}.app-badge{border-radius:9px;line-height:0;display:inline-block}.app-badge img{width:auto;height:2.75rem}.app-badge--l img{height:3.25rem}.app-badge:focus-visible{outline-offset:3px}.faq{border-top:var(--border-width) solid var(--border)}.faq details{border-bottom:var(--border-width) solid var(--border)}.faq summary{overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;min-height:3.5rem;font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--step-1);color:var(--heading);cursor:pointer;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"";background:linear-gradient(var(--text-muted), var(--text-muted)) center / .75rem 2px no-repeat, linear-gradient(var(--text-muted), var(--text-muted)) center / 2px .75rem no-repeat, var(--bg-sunken);width:1.75rem;height:1.75rem;transition:transform var(--dur-2) var(--ease-out);border-radius:50%;flex:none}.faq details[open] summary:after{transform:rotate(45deg)}.faq summary:hover{color:var(--link)}.faq__answer{padding-bottom:var(--space-5);color:var(--text-muted);max-width:var(--prose)}.faq__answer>*+*{margin-top:var(--space-3)}.note{gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--primary-soft);border:var(--border-width) solid color-mix(in srgb, var(--primary) 30%, var(--border));border-radius:var(--radius-m);font-size:var(--step--1);grid-template-columns:2.25rem 1fr;line-height:1.55;display:grid}.note svg{width:2.25rem;height:2.25rem;color:var(--primary);background:var(--surface);border-radius:50%;padding:.45rem}.note strong{font-family:var(--font-display);color:var(--heading);margin-bottom:2px;display:block}.callout{padding:var(--space-5);background:var(--surface-2);border-radius:var(--radius-m)}.callout>*+*{margin-top:var(--space-2)}.sources ol{gap:var(--space-3);font-size:var(--step--1);color:var(--text-muted);padding-left:1.25rem;display:grid}.sources li::marker{color:var(--text-subtle);font-variant-numeric:tabular-nums}.sources cite{color:var(--text);font-style:normal}.sources .supports{color:var(--text-subtle);font-size:var(--step--2);display:block}.prose{max-width:var(--prose);font-size:var(--step-0)}.prose>*+*{margin-top:1.1em}.prose>:first-child{margin-top:0}.prose h2{margin-top:2.2em}.prose h3{margin-top:1.8em}.prose h2+*,.prose h3+*{margin-top:.6em}.prose ul,.prose ol{padding-left:1.3em}.prose li+li{margin-top:.4em}.prose li::marker{color:var(--text-subtle)}.prose ol.steps{counter-reset:step;gap:var(--space-3);padding:0;list-style:none;display:grid}.prose ol.steps li{counter-increment:step;gap:var(--space-3);grid-template-columns:2.25rem 1fr;align-items:baseline;margin:0;display:grid}.prose ol.steps li:before{content:counter(step);width:2.25rem;height:2.25rem;font-family:var(--font-display);font-weight:var(--weight-bold);background:var(--primary-soft);color:var(--primary);border-radius:50%;place-items:center;display:grid;translate:0 -.15em}.prose blockquote{padding-left:var(--space-4);border-left:3px solid var(--border-strong);color:var(--text-muted)}.prose sup a{font-size:.75em;font-weight:var(--weight-semibold);text-decoration:none}.table-wrap{border:var(--border-width) solid var(--border);border-radius:var(--radius-m);background:var(--surface);overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:var(--step--1)}.table th,.table td{padding:var(--space-3) var(--space-4);text-align:left;vertical-align:middle;border-bottom:var(--border-width) solid var(--border)}.table thead th{font-size:var(--step--2);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--text-subtle);background:var(--bg-sunken);font-weight:var(--weight-bold)}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover{background:var(--bg-sunken)}.table tbody tr[data-selected=true]{background:var(--primary-soft);box-shadow:inset 3px 0 0 var(--primary)}.table .num{font-variant-numeric:tabular-nums;white-space:nowrap}.hero{gap:var(--space-7);padding-block:var(--space-7) var(--space-8);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;display:grid}.hero__copy{gap:var(--space-4);justify-items:start;display:grid}.hero__copy h1{max-width:14ch}.hero__copy p{max-width:34rem}.hero__actions{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.hero__shots{gap:var(--space-3);grid-template-columns:1fr 1fr;align-items:end;display:grid}.hero__shots img{border-radius:var(--radius-l);border:var(--border-width) solid var(--border);width:100%;box-shadow:var(--shadow-3)}.hero__shots img:nth-child(2){margin-bottom:var(--space-6)}@media (width<=860px){.hero{gap:var(--space-5);padding-block:var(--space-5) var(--space-6);grid-template-columns:1fr}.hero__shots{max-width:28rem}}.app-band{border-radius:var(--radius-xl);color:#fff;align-items:end;gap:var(--space-6);padding:var(--space-8) var(--space-8) 0;background:radial-gradient(60% 90% at 85% 100%,#56c6cf47,#0000 70%),linear-gradient(155deg,#073b43 0%,#0b7480 65%,#0a5e68 100%);grid-template-columns:1.1fr .9fr;display:grid;position:relative;overflow:hidden}.app-band__copy{padding-bottom:var(--space-8);align-self:center;gap:var(--space-4);justify-items:start;display:grid}.app-band h2{color:#fff;font-size:var(--step-4);letter-spacing:var(--tracking-tight);font-weight:var(--weight-heavy)}.app-band h2 .hl{color:#ffb547}.app-band p{color:#dff5f7;font-size:var(--step-1);max-width:30rem;line-height:1.5}.app-band__shots{justify-content:center;align-items:flex-end;gap:var(--space-4);min-height:20rem;display:flex;overflow:hidden}.app-band__shots img{border:5px solid #073b43;border-bottom:0;border-radius:1.75rem 1.75rem 0 0;width:min(14rem,46%);box-shadow:0 30px 60px -20px #0000008c}.app-band__shots img:nth-child(2){margin-bottom:var(--space-6)}.app-band a:focus-visible{outline-color:#fff}@media (width<=860px){.app-band{padding:var(--space-6) var(--space-5) 0;border-radius:var(--radius-l);grid-template-columns:1fr}.app-band__copy{padding-bottom:0}.app-band__shots{min-height:15rem}}@media (width<=640px){.app-band__shots img:nth-child(2){display:none}.app-band__shots img{width:min(16rem,80%)}}.answer{gap:var(--space-5);padding:var(--space-5);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-l);box-shadow:var(--shadow-1);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.answer__text{gap:var(--space-2);display:grid}.answer__text p{font-size:var(--step-1);color:var(--text);line-height:1.5}.answer__range{font-size:var(--step--1);color:var(--text-subtle)}@media (width<=640px){.answer{grid-template-columns:1fr}}.factor-list{gap:var(--space-3);padding:0;list-style:none;display:grid}.factor-list li{gap:var(--space-2);color:var(--text-muted);grid-template-columns:1.5rem 1fr;align-items:start;line-height:1.55;display:grid}.factor-list li:before{content:"";background:var(--primary);border-radius:50%;width:.5rem;height:.5rem;margin-top:.55rem}.how-often-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));display:grid}.record-card{gap:var(--space-2);padding:var(--space-5);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-l);box-shadow:var(--shadow-1);display:grid}.area-label{color:var(--area-text,var(--primary))}.record-card__area{font-size:var(--step--2);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--area-text,var(--primary))}.record-card h3{font-size:var(--step-1)}.record-card p{font-size:var(--step--1);color:var(--text-muted);line-height:1.5}.swatch{border-radius:12px;height:5rem}.swatch--petrol{background:#0b7480}.swatch--petrol-deep{background:#073b43}.swatch--petrol-tint{background:#dcf0f2}.swatch--overdue{background:#bf3226}.swatch--due-soon{background:#9e5c00}.swatch--home{background:#c95a00}.swatch--vehicle{background:#1f6fe0}.swatch--garden{background:#2f8a3e}.swatch--pets{background:#8b5e3c}.swatch--bike{background:#4b4fd1}.swatch--health{background:#d1336f}.app-icon{border-radius:var(--radius-icon);box-shadow:0 0 0 1px #00000014, var(--shadow-2);flex:none}.tyre-illustration{width:min(100%,17rem);margin-inline:auto}.tyre-illustration text{font-family:var(--font-body);fill:var(--text-subtle);letter-spacing:.04em;font-size:8px}.tyre-illustration .tyre-code{font-family:var(--font-display);fill:var(--heading);letter-spacing:.08em;font-size:14px;font-weight:700}.tool__main .faq-section>.container,.tool__main .sources-section>.container{max-width:none;padding-inline:0}.more-tools ul,.index-list{border-top:var(--border-width) solid var(--border);gap:0;padding:0;list-style:none;display:grid}.more-tools li,.index-list li{gap:var(--space-2) var(--space-4);padding:var(--space-3) 0;border-bottom:var(--border-width) solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;display:grid}.more-tools li a,.index-list li a{font-weight:var(--weight-semibold);color:var(--heading);text-decoration:none}.more-tools li a:hover,.index-list li a:hover{color:var(--link);text-decoration:underline}.more-tools li span,.index-list li span{color:var(--text-subtle);font-size:var(--step--2);text-align:right}@media (width<=640px){.more-tools li,.index-list li{grid-template-columns:1fr;gap:2px}.more-tools li span,.index-list li span{text-align:left}}.area-tiles{gap:var(--space-2);grid-template-columns:repeat(6,minmax(0,1fr));display:grid}@media (width<=860px){.area-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=480px){.area-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.area-tile{gap:var(--space-1);padding:var(--space-4) var(--space-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-m);background:var(--surface);color:var(--text);text-align:center;justify-items:center;text-decoration:none;display:grid}.area-tile:hover{border-color:var(--area-colour,var(--primary));color:var(--text)}.area-tile__icon{width:2rem;height:2rem;color:var(--area-text,var(--primary));place-items:center;display:grid}.area-tile__icon svg{width:1.6rem;height:1.6rem}.area-tile__name{font-weight:var(--weight-semibold);font-size:var(--step--1)}.area-tile__count{font-size:var(--step--2);color:var(--text-subtle)}.area--home{--area-colour:var(--cat-home);--area-text:var(--cat-home-text)}.area--vehicle{--area-colour:var(--cat-vehicle);--area-text:var(--cat-vehicle)}.area--garden{--area-colour:var(--cat-garden);--area-text:var(--cat-garden-text)}.area--pets{--area-colour:var(--cat-pets);--area-text:var(--cat-pets)}.area--bike{--area-colour:var(--cat-bike);--area-text:var(--cat-bike)}.area--health{--area-colour:var(--cat-health);--area-text:var(--cat-health)}@media (prefers-color-scheme:dark){.area--home{--area-text:var(--cat-home-dark)}.area--garden{--area-text:var(--cat-garden-dark)}}.press-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));display:grid}.press-asset{gap:var(--space-2);padding:var(--space-4);background:var(--surface);border:var(--border-width) solid var(--border);border-radius:var(--radius-m);display:grid}.press-asset img{border-radius:var(--radius-s);border:var(--border-width) solid var(--border);width:100%}.press-asset a{font-size:var(--step--1);font-weight:var(--weight-semibold)}.print-only{display:none}@media print{:root{--bg:#fff;--surface:#fff;--text:#000;--heading:#000;--text-muted:#333;--text-subtle:#444;--border:#999;--border-strong:#666}body{background:#fff;font-size:10pt}.site-header,.site-footer,.skip-link,.breadcrumbs,.page-head,.tool__side,#schedule-maker,#results-panel,#calendar-panel,#outputs,.tool-stage__inputs,.outputs,.prose,.faq,.sources,section[aria-labelledby=faq-heading],section[aria-labelledby=sources-heading],.app-panel,.note,.no-print{display:none!important}.print-only{display:block!important}.tool,.section{padding-block:0}.tool__grid,.tool__main{display:block}.container{max-width:none;padding:0}.print-checklist{gap:8pt;display:grid}.print-checklist h1{font-size:16pt}.print-checklist h2{border-bottom:1px solid #999;margin-top:8pt;font-size:11pt}.print-checklist ul{gap:3pt;padding:0;list-style:none;display:grid}.print-checklist li{grid-template-columns:12pt 1fr auto;align-items:baseline;gap:6pt;display:grid}.print-checklist li:before{content:"";border:1px solid #000;width:10pt;height:10pt;display:block}.print-checklist .due{color:#333;font-size:8pt}.print-checklist .foot{color:#444;margin-top:10pt;font-size:8pt}@page{margin:14mm}}
