:root{--paper:#f7f8f7;--surface:#fff;--ink:#14181a;--ink-soft:#5a6468;--rule:#dfe4e3;--accent:#0f6b5c;--accent-tint:#e6f2ef;--font-ui:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Inter, Helvetica, Arial, sans-serif;--font-num:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--wrap:62rem;--radius:6px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-ui);margin:0;font-size:1.0625rem;line-height:1.65}.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:1.25rem}a{color:var(--accent);text-underline-offset:2px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.site-head{border-bottom:1px solid var(--rule);background:var(--surface)}.site-head .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;min-height:3.75rem;display:flex}.brand{letter-spacing:-.02em;color:var(--ink);font-size:1.125rem;font-weight:650;text-decoration:none}.brand span{color:var(--accent)}.site-nav{flex-wrap:wrap;gap:1.1rem;font-size:.9375rem;display:flex}.site-nav a{color:var(--ink-soft);text-decoration:none}.site-nav a:hover{color:var(--accent)}.site-foot{border-top:1px solid var(--rule);background:var(--surface);color:var(--ink-soft);margin-top:4rem;padding-block:2rem;font-size:.9375rem}.site-foot h3{text-transform:uppercase;letter-spacing:.08em;color:var(--ink);margin:0 0 .5rem;font-size:.75rem}.foot-cols{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:1.75rem;display:grid}.foot-cols ul{margin:0;padding:0;list-style:none}.foot-cols a{color:var(--ink-soft);text-decoration:none}.foot-cols a:hover{color:var(--accent)}h1{letter-spacing:-.025em;margin:0 0 .4rem;font-size:clamp(1.75rem,4.5vw,2.375rem);line-height:1.15}h2{letter-spacing:-.015em;margin:2.5rem 0 .75rem;font-size:1.3125rem}h3{margin:1.5rem 0 .4rem;font-size:1.0625rem}.standfirst{color:var(--ink-soft);max-width:44rem;margin:0 0 1.5rem;font-size:1.0625rem}.crumbs{color:var(--ink-soft);padding-top:1.5rem;font-size:.8125rem}.crumbs a{color:var(--ink-soft);text-decoration:none}.crumbs a:hover{color:var(--accent)}.tool-panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);margin-bottom:2rem;padding:1.5rem}.field-grid{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:1rem 1.25rem;display:grid}.field{flex-direction:column;gap:.3rem;display:flex}.field label{color:var(--ink-soft);font-size:.8125rem;font-weight:600}.field input,.field select{font:inherit;font-family:var(--font-num);border:1px solid var(--rule);background:var(--paper);color:var(--ink);border-radius:4px;width:100%;padding:.55rem .7rem}.results{border-top:1px solid var(--rule);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:1rem;margin-top:1.5rem;padding-top:1.25rem;display:grid}.result .label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);font-size:.75rem}.result .value{font-family:var(--font-num);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.5rem}.result.primary .value{color:var(--accent)}.saving-note{background:var(--accent-tint);border-radius:4px;margin-top:1rem;padding:.75rem .9rem;font-size:.9375rem}.prose{max-width:44rem}.prose p{margin:.75rem 0}.prose ul{padding-left:1.15rem}.prose code{font-family:var(--font-num);background:var(--surface);border:1px solid var(--rule);border-radius:3px;padding:.1em .35em;font-size:.9em}.faq-item{border-top:1px solid var(--rule);padding:1rem 0}.faq-item:last-child{border-bottom:1px solid var(--rule)}.faq-item h3{margin:0 0 .25rem}.faq-item p{color:var(--ink-soft);margin:0}.card-grid{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.875rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);color:var(--ink);padding:.9rem 1rem;text-decoration:none;transition:border-color .15s,transform .15s;display:block}.card:hover{border-color:var(--accent);transform:translateY(-1px)}.card .name{font-weight:600;display:block}.card .desc{color:var(--ink-soft);margin-top:.15rem;font-size:.875rem;display:block}.card.soon{opacity:.55;pointer-events:none}.cat-block{margin-top:2.5rem}.cat-block>a.cat-link{text-decoration:none}.cat-block h2{margin-bottom:.15rem}.cat-block .blurb{color:var(--ink-soft);margin:0;font-size:.9375rem}.category-grid{grid-template-columns:repeat(auto-fill,minmax(15.5rem,1fr));gap:1rem;margin:2rem 0 0;padding:0;list-style:none;display:grid}.category-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);height:100%;color:var(--ink);flex-direction:column;gap:.4rem;padding:1.25rem 1.25rem 1.1rem;text-decoration:none;transition:border-color .15s,transform .15s;display:flex}.category-card:hover{border-color:var(--accent);transform:translateY(-1px)}.category-card .cat-name{letter-spacing:-.01em;font-size:1.0625rem;font-weight:650}.category-card .cat-blurb{color:var(--ink-soft);font-size:.9375rem;line-height:1.5}.category-card .cat-count{font-size:.8125rem;font-family:var(--font-num);color:var(--accent);margin-top:auto;padding-top:.5rem}.ad-slot{border:1px dashed var(--rule);border-radius:var(--radius);min-height:90px;color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;justify-content:center;align-items:center;margin:2rem 0;font-size:.75rem;display:flex}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
