:root{--paper:#faf9f6;--paper-2:#f3f1ec;--ink:#201f1c;--ink-soft:#55524b;--sage:#2f5d50;--sage-deep:#24473d;--sage-soft:#e7efe9;--warn:#9a3412;--warn-soft:#fdeee6;--line:#e3dfd5;--radius:10px;--font-serif:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--maxw:1080px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.6}h1,h2,h3,.serif{font-family:var(--font-serif);letter-spacing:-.01em;margin:0 0 .6em;font-weight:600;line-height:1.15}h1{font-size:clamp(2rem,5vw,3rem)}h2{font-size:clamp(1.4rem,3vw,1.9rem)}h3{font-size:1.15rem}p{margin:0 0 1em}a{color:var(--sage-deep);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--sage)}.container{max-width:var(--maxw);margin:0 auto;padding:0 20px}.site-header{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--paper) 92%, transparent)}.site-header .container{justify-content:space-between;align-items:center;padding-top:14px;padding-bottom:14px;display:flex}.brand{font-family:var(--font-serif);color:var(--ink);letter-spacing:-.02em;font-size:1.35rem;font-weight:700;text-decoration:none}.brand em{color:var(--sage);font-style:normal}.nav{gap:22px;display:flex}.nav a{color:var(--ink-soft);font-size:.95rem;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--sage-deep);text-underline-offset:4px;text-decoration:underline}.hero{padding:64px 0 40px}.hero .kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--sage-deep);background:var(--sage-soft);border-radius:999px;margin-bottom:18px;padding:5px 12px;font-size:.85rem;display:inline-block}.hero .lede{color:var(--ink-soft);max-width:34em;font-size:clamp(1.1rem,2.2vw,1.3rem)}main{padding-bottom:72px}.site-footer{border-top:1px solid var(--line);color:var(--ink-soft);padding:36px 0 56px;font-size:.9rem}.site-footer .container{flex-wrap:wrap;justify-content:space-between;gap:12px 32px;display:flex}.panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:26px;box-shadow:0 1px 2px #201f1c0a,0 8px 24px -18px #201f1c40}.field-row{flex-wrap:wrap;gap:16px;margin-bottom:18px;display:flex}.field{flex:220px}.field label{margin-bottom:6px;font-size:.95rem;font-weight:600;display:block}.field input{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);border-radius:8px;padding:12px 14px;font-size:1.05rem}.field input:focus-visible{outline:3px solid var(--sage-soft);border-color:var(--sage)}.field .error{color:var(--warn);min-height:1.2em;margin-top:5px;font-size:.85rem}.btn{appearance:none;cursor:pointer;background:var(--sage);color:#fff;font:inherit;border:0;border-radius:8px;padding:13px 26px;font-size:1.02rem;font-weight:600;transition:background .15s,transform .1s}.btn:hover{background:var(--sage-deep)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.65;cursor:progress}.btn.secondary{color:var(--sage-deep);border:1px solid var(--sage);background:0 0}.btn.secondary:hover{background:var(--sage-soft)}.result{margin-top:28px}.result[hidden]{display:none}.result-head{flex-wrap:wrap;align-items:baseline;gap:10px 24px;margin-bottom:20px;display:flex}.result-head .sum{font-family:var(--font-serif);font-size:1.7rem;font-weight:700}.result-head .delta{font-weight:600}.delta.ok{color:var(--sage-deep)}.delta.over{color:var(--warn)}.plan-table{border-collapse:collapse;width:100%}.plan-table th,.plan-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:12px 10px}.plan-table th{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);font-size:.8rem}.plan-table .cat-label{font-weight:600}.plan-table .cat-hint{color:var(--ink-soft);max-width:30em;margin-top:2px;font-size:.82rem}.plan-table .amt{font-variant-numeric:tabular-nums;white-space:nowrap}.plan-table .flag{white-space:nowrap;font-size:.8rem;font-weight:600}.flag.above{color:var(--warn)}.flag.below{color:var(--sage-deep)}input[type=range]{width:100%;accent-color:var(--sage)}.share-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:22px;display:flex}.share-row input[type=text]{border:1px solid var(--line);background:var(--paper);border-radius:8px;flex:320px;padding:10px 12px}.note{color:var(--ink-soft);border-left:3px solid var(--line);padding-left:12px;font-size:.85rem}.prose{max-width:46em}.prose h2{margin-top:1.6em}.prose table{border-collapse:collapse;width:100%;margin:1.2em 0;font-size:.95rem}.prose th,.prose td{border:1px solid var(--line);text-align:left;padding:9px 12px}.prose th{background:var(--paper-2)}.faq-item{border:1px solid var(--line);border-radius:var(--radius);background:#fff;margin-bottom:14px;padding:18px 20px}.faq-item h2{margin:0 0 8px;font-size:1.05rem}.error-page{text-align:center;padding:90px 20px}.error-page .code{font-family:var(--font-serif);color:var(--sage);margin:0;font-size:5rem}@media (width<=640px){.nav{gap:14px}.hero{padding:44px 0 28px}.plan-table thead{display:none}.plan-table tr{border-bottom:1px solid var(--line);padding:14px 0;display:block}.plan-table td{border:0;padding:2px 0;display:block}.plan-table td:nth-child(3){display:none}.plan-table td:nth-child(2),.plan-table td:nth-child(4),.plan-table td:nth-child(5){width:auto;margin-right:16px;display:inline-block}.plan-table td:nth-child(6){padding-top:8px}.plan-table .cat-hint{max-width:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
