:root{--ivory:#faf6ec;--paper:#fffdf7;--ink:#1d1b17;--muted:#4d4a42;--line:#d8d0bd;--field:#8c8577;--green:#2e5a3c;--green-dark:#23462e;--green-bg:#e6ede2;--red:#8a2b1e;--red-bg:#f6e6e0;--amber:#6b4f10;--amber-bg:#f5edd8;--measure:44rem;--serif:Charter,"Iowan Old Style",Georgia,"Times New Roman",serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--ivory);color:var(--ink);font:1.0625rem/1.65 var(--sans);overflow-wrap:break-word}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.15;margin:0 0 .6em}
h1{font-size:clamp(2.5rem,7vw,4.25rem);letter-spacing:-.01em}
h2{font-size:clamp(1.5rem,3.5vw,2rem)}
h3{font-size:1.25rem}
p,ul{margin:0 0 1em;max-width:var(--measure)}
a{color:var(--green);text-underline-offset:.15em}
a:hover{color:var(--ink)}
:focus-visible{outline:3px solid var(--green);outline-offset:2px}
.skip{position:absolute;left:-999px;top:0}
.skip:focus{left:1rem;top:1rem;z-index:10;background:var(--paper);padding:.5rem 1rem}
.wrap{width:min(100% - 2.5rem,68rem);margin-inline:auto}
section.wrap{padding-block:clamp(2.5rem,6vw,4.5rem);border-top:1px solid var(--line)}
section.hero{border-top:0}
.site-header{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:baseline;padding-block:1.5rem;border-bottom:1px solid var(--line)}
.brand{font:700 1.2rem/1.3 var(--serif);color:var(--ink);text-decoration:none}
.brand span{font:400 .9rem var(--sans);color:var(--muted)}
nav{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}
.eyebrow{font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--green)}
.lede{font-family:var(--serif);font-size:clamp(1.2rem,2.4vw,1.45rem);line-height:1.5}
.snapshot,.help,.fine,.opt,.result-meta{color:var(--muted);font-size:.925rem}
.opt{font-weight:400}
.grid-2{display:grid;gap:2.5rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr))}
.plain{padding-left:1.1rem}
.plain li{margin-bottom:.35rem}
.button{display:inline-block;font:600 1rem/1.2 var(--sans);min-height:44px;padding:.8rem 1.3rem;border:1px solid var(--green);border-radius:4px;background:var(--green);color:#fff;text-decoration:none;cursor:pointer}
.button:hover:not(:disabled){background:var(--green-dark);color:#fff}
.button.secondary{background:transparent;color:var(--green)}
.button:disabled{background:#e9e4d8;border-color:var(--line);color:#5c584e;cursor:not-allowed}
.plans{display:grid;gap:1.25rem;margin:1.5rem 0;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}
.plan,.result-card,.workspace form{background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:1.5rem;min-width:0}
.plan{display:flex;flex-direction:column}
.plan .button{margin-top:auto;width:100%}
.price{font:600 2.25rem/1.1 var(--serif);margin:0 0 .4rem}
.price span{font:400 1rem var(--sans);color:var(--muted)}
.workspace form{display:grid;gap:1.25rem;max-width:48rem;margin-bottom:1.5rem}
.workspace form>p{margin:0}
.filters{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr))}
.field{display:grid;gap:.35rem;align-content:start;min-width:0}
.help{margin:0}
label{font-weight:600}
input,select{width:100%;min-height:44px;font:inherit;color:var(--ink);background:#fff;border:1px solid var(--field);border-radius:4px;padding:.6rem .75rem}
#brain-state{text-transform:uppercase}
.status{min-height:1.5em;font-weight:600;margin:0}
.results{display:grid;gap:1rem;margin-top:1rem}
.result-card h3{margin-bottom:.35rem}
.result-meta{display:flex;flex-wrap:wrap;gap:.25rem 1rem;margin:0 0 .75rem}
.evidence-badge{display:inline-block;font:600 .8rem/1.3 var(--sans);letter-spacing:.02em;padding:.2rem .6rem;margin:0 .35rem .35rem 0;border:1px solid var(--green);border-radius:999px;background:var(--green-bg);color:var(--green)}
.evidence-badge.legacy{border-color:var(--field);background:#efeadf;color:var(--muted)}
.notice{max-width:var(--measure);padding:.9rem 1.1rem;border-left:4px solid var(--green);border-radius:0 4px 4px 0;background:var(--green-bg);color:var(--ink)}
.notice.warn{border-color:var(--amber);background:var(--amber-bg);color:var(--amber)}
.notice.error{border-color:var(--red);background:var(--red-bg);color:var(--red)}
.empty-state{text-align:center;padding:2.5rem 1rem;border:1px dashed var(--field);border-radius:6px;color:var(--muted)}
.report-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem}
.table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:6px;background:var(--paper)}
table{width:100%;border-collapse:collapse;font-size:.95rem}
th,td{text-align:left;vertical-align:top;padding:.6rem .75rem;border-bottom:1px solid var(--line)}
th{font-weight:600;background:#f1ecdf}
pre,.receipt{max-width:100%;margin:0;padding:1rem;font:.875rem/1.5 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;background:var(--paper);border:1px solid var(--line);border-radius:4px}
.site-footer{padding-block:2rem 3rem;border-top:1px solid var(--line);color:var(--muted);font-size:.925rem}
.site-footer p{margin:1rem 0 0}
@media (max-width:40rem){body{font-size:1rem}.plan,.result-card,.workspace form{padding:1.1rem}.site-header{padding-block:1rem}}
