:root{--ink:#15231d;--muted:#617069;--paper:#f7f5ef;--card:#fffefa;--line:#d8ddd8;--brand:#176b4d;--brand-dark:#0d4934;--accent:#e6f2eb;--danger:#a33b2f;--shadow:0 18px 50px #23342b17;color:var(--ink);background:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(180deg,#edf4ee 0,transparent 30rem),var(--paper);margin:0;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}.shell{width:min(1120px,100% - 32px);margin:auto}.topbar{justify-content:space-between;align-items:center;padding:24px 0;display:flex}.brand{align-items:center;gap:10px;font-weight:800;display:flex}.brand-mark{background:var(--brand);color:#fff;border-radius:11px;place-items:center;width:36px;height:36px;display:grid}.tag{color:var(--brand-dark);background:#f8fffa;border:1px solid #bad1c2;border-radius:99px;padding:5px 9px;font-size:.78rem;font-weight:700}.intro{max-width:760px;padding:48px 0 28px}.eyebrow{color:var(--brand);letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;font-weight:800}.intro h1{letter-spacing:-.045em;margin:.4rem 0 1rem;font-family:Georgia,serif;font-size:clamp(2.2rem,6vw,4.35rem);line-height:1.02}.intro p{color:var(--muted);max-width:640px;font-size:1.08rem}.planner{grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);align-items:start;gap:24px;padding-bottom:80px;display:grid}.panel{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:22px}.form-panel,.results-panel{padding:26px}.results-panel{position:sticky;top:20px}.section-label{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;font-weight:800}.mode-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0 28px;display:grid}.mode{border:1px solid var(--line);text-align:left;color:var(--ink);background:#fff;border-radius:14px;min-height:88px;padding:14px}.mode strong,.mode span{display:block}.mode span{color:var(--muted);margin-top:4px;font-size:.82rem}.mode.active{border-color:var(--brand);background:var(--accent);box-shadow:inset 0 0 0 1px var(--brand)}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.field{gap:7px;display:grid}.field.full{grid-column:1/-1}.field label,.legend{font-size:.9rem;font-weight:700}.field small{color:var(--muted)}input,select{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #c9d0cb;border-radius:10px;padding:9px 11px}input:focus,select:focus,button:focus-visible{outline-offset:2px;outline:3px solid #176b4d40}.inline{grid-template-columns:1fr 1fr;gap:8px;display:grid}.advanced{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.advanced summary{cursor:pointer;color:var(--brand-dark);font-weight:800}.advanced .form-grid{margin-top:18px}.weekdays{flex-wrap:wrap;gap:7px;display:flex}.weekday input{opacity:0;position:absolute}.weekday span{border:1px solid var(--line);border-radius:10px;place-items:center;width:38px;height:38px;font-size:.82rem;display:grid}.weekday input:checked+span{background:var(--brand);color:#fff;border-color:var(--brand)}.primary{background:var(--brand);color:#fff;border:0;border-radius:12px;width:100%;margin-top:22px;padding:13px 18px;font-weight:800}.primary:hover{background:var(--brand-dark)}.empty{text-align:center;min-height:380px;color:var(--muted);place-content:center;padding:30px;display:grid}.empty-icon{font-size:2rem}.error{color:var(--danger);background:#fff0ed;border:1px solid #efc1ba;border-radius:10px;margin-top:14px;padding:11px}.hidden{display:none!important}.result-head{justify-content:space-between;gap:12px;display:flex}.result-head h2{margin:.2rem 0;font-family:Georgia,serif;font-size:1.7rem}.copy{border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 10px;font-size:.84rem;font-weight:700}.date-answer{letter-spacing:-.04em;color:var(--brand-dark);margin:18px 0 4px;font-size:clamp(1.9rem,5vw,2.6rem);font-weight:850}.date-sub{color:var(--muted);font-size:.9rem}.timeline{margin:24px 0;padding:0;list-style:none}.timeline li{padding:0 0 22px 34px;position:relative}.timeline li:not(:last-child):before{content:"";border-left:2px solid #c7d8cd;position:absolute;top:20px;bottom:0;left:9px}.dot{background:var(--brand);border:4px solid #dcebe2;border-radius:50%;width:16px;height:16px;position:absolute;top:4px;left:2px}.timeline span,.timeline strong{display:block}.timeline span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.76rem;font-weight:800}.metrics{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.metric{background:#f1f5f1;border-radius:10px;padding:10px}.metric strong,.metric span{display:block}.metric strong{font-size:1.2rem}.metric span{color:var(--muted);font-size:.72rem}.progress{background:#dce5df;border-radius:99px;height:8px;margin:12px 0 22px;overflow:hidden}.progress>span{background:var(--brand);height:100%;display:block}.assumptions{background:#f7f7f2;border-radius:12px;padding:14px 16px}.assumptions h3{margin:0 0 8px;font-size:.88rem}.assumptions ul{color:var(--muted);margin:0;padding-left:18px;font-size:.82rem}.disclaimer{color:var(--muted);margin:16px 0 0;font-size:.75rem}.footer{border-top:1px solid var(--line);color:var(--muted);padding:24px 0 40px;font-size:.82rem}.footer .shell{justify-content:space-between;gap:24px;display:flex}@media (width<=850px){.planner{grid-template-columns:1fr}.results-panel{position:static}.mode-grid{grid-template-columns:1fr}.mode{min-height:auto}.intro{padding-top:28px}}@media (width<=560px){.shell{width:min(100% - 20px,1120px)}.form-panel,.results-panel{border-radius:16px;padding:18px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.intro h1{font-size:2.65rem}.topbar .tag{display:none}.metrics{grid-template-columns:1fr}.footer .shell{display:block}}.site-header{border-bottom:1px solid #d8ddd8b3}.brand{color:var(--ink);text-decoration:none}.topbar nav,.footer nav{align-items:center;gap:22px;display:flex}.topbar nav a,.footer nav a{font-size:.9rem;font-weight:700;text-decoration:none}.tool-page{padding-bottom:70px}.tool-intro h1,.prose-page h1,.not-found h1{letter-spacing:-.045em;margin:.4rem 0 1rem;font-family:Georgia,serif;font-size:clamp(2.25rem,5vw,3.8rem);line-height:1.02}.tool-intro p,.lede{color:var(--muted);max-width:700px;font-size:1.08rem}.tool-workspace{grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);align-items:start;gap:24px;padding-bottom:55px;display:grid}.result-list{color:var(--muted);padding-left:20px}.result-list li{margin:7px 0}.content-grid{border-top:1px solid var(--line);grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:50px;padding-top:40px;display:grid}.content-grid h2,.prose-page h2{margin:2rem 0 .6rem;font-family:Georgia,serif;font-size:1.7rem}.content-grid h2:first-child{margin-top:0}.content-grid h3{margin-bottom:.25rem}.content-grid p,.prose-page p{color:var(--muted)}.faq{border-bottom:1px solid var(--line);padding:14px 0}.faq summary{cursor:pointer;color:var(--brand-dark);font-weight:800}.faq p{font-size:.9rem}.related-links{padding:0;list-style:none}.related-links a{justify-content:space-between;padding:10px 0;font-weight:700;display:flex}.prose-page{max-width:820px;padding:70px 0 100px}.tool-directory{grid-template-columns:1fr 1fr;gap:14px;margin-top:36px;display:grid}.tool-directory a{border:1px solid var(--line);background:var(--card);border-radius:16px;padding:18px;text-decoration:none;display:block}.tool-directory a:hover{border-color:var(--brand)}.tool-directory h2{margin:0;font-family:inherit;font-size:1.05rem}.tool-directory p{font-size:.9rem}.tool-directory span{font-weight:800}.callout{background:var(--accent);border-left:4px solid var(--brand);margin-top:30px;padding:18px 20px}.not-found{min-height:65vh;padding:100px 0}.inline-button{width:auto;margin-right:18px;text-decoration:none;display:inline-block}.footer .footer-grid{justify-content:space-between;gap:24px;display:flex}.footer p{margin:.3rem 0}@media (width<=850px){.tool-workspace,.content-grid{grid-template-columns:1fr}.topbar{align-items:flex-start}.topbar nav{flex-wrap:wrap;justify-content:flex-end;gap:12px}.content-grid{gap:20px}}@media (width<=560px){.topbar{display:block}.topbar nav{white-space:nowrap;justify-content:flex-start;margin-top:14px;padding-bottom:4px;overflow-x:auto}.tool-directory{grid-template-columns:1fr}.footer .footer-grid{display:block}.footer nav{flex-wrap:wrap;margin-top:18px}}:root{--shadow:0 8px 24px #23342b12}.skip-link{z-index:1000;background:var(--ink);color:#fff;border-radius:6px;padding:10px 14px;font-weight:700;position:fixed;top:10px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:none}.eyebrow,.section-label{letter-spacing:.04em;text-transform:none;font-size:.82rem}.intro{padding:34px 0 22px}.intro h1,.tool-intro h1,.prose-page h1,.not-found h1{letter-spacing:-.03em;max-width:760px;font-family:inherit;font-size:clamp(2rem,4vw,3rem);line-height:1.12}.intro p,.tool-intro p,.lede{font-size:1rem}.tool-intro{padding:38px 0 22px}.content-grid h2,.prose-page h2,.result-head h2{font-family:inherit}.panel{border-radius:14px}.mode{border-radius:10px}.planner{padding-bottom:60px}.empty{min-height:300px}.date-answer{letter-spacing:-.025em;font-size:clamp(1.7rem,4vw,2.25rem)}.content-grid{padding-top:32px}.prose-page{padding-top:52px}.tool-directory a{border-radius:10px}@media (width<=560px){.intro{padding-top:24px}.intro h1,.tool-intro h1,.prose-page h1{font-size:2rem}.form-panel,.results-panel{border-radius:12px}.topbar nav a,.related-links a{align-items:center;min-height:44px;display:inline-flex}}
