:root{--ink:#172a32;--muted:#62747a;--green:#126f63;--lime:#d9f383;--line:#dce5e2;--paper:#f3f6f3}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}header,main,footer{max-width:1240px;margin:auto;padding:24px 40px}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:25px;font-weight:850;letter-spacing:-1px;color:var(--ink)}.brand span{font-weight:400}nav,.actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}nav form{margin:0}h1{font-size:clamp(32px,4vw,52px);line-height:1.1;letter-spacing:-2px;margin:16px 0 24px}h2{font-size:23px;line-height:1.3;letter-spacing:-.5px}h3{font-size:16px}p{margin:12px 0 20px}.hero{padding:70px 0 60px;max-width:880px}.hero h1{font-size:clamp(56px,7vw,88px);letter-spacing:-4px}.hero em{font-style:normal;color:var(--green)}.lead{font-size:21px;max-width:620px;color:var(--muted)}.eyebrow,.num{font-size:12px;font-weight:750;letter-spacing:2px;color:var(--green)}.pills{display:flex;gap:24px;flex-wrap:wrap;margin-top:32px;font-size:13px;color:var(--muted)}button,.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--green);border-radius:9px;background:var(--green);color:white;padding:12px 20px;font:600 14px/1.5 system-ui;cursor:pointer;text-decoration:none}button:hover,.button:hover{background:#0b564b;text-decoration:none}.quiet{background:transparent;color:var(--green);border-color:var(--line)}.quiet:hover{background:#e4ede6}.small{padding:8px 14px}.grid{display:grid;gap:20px}.three{grid-template-columns:repeat(3,1fr)}.two{grid-template-columns:repeat(2,1fr)}.card{background:white;border:1px solid var(--line);border-radius:18px;padding:28px;margin:20px 0}.grid .card{margin:0}.card p,.muted{color:var(--muted)}.narrow{max-width:710px;margin:50px auto}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:20px 0}.metric{min-height:195px}.metric strong{display:block;font-size:56px;line-height:1.6;font-weight:650;letter-spacing:-2px}.metric span,small{display:block;color:var(--muted);font-size:13px}.accent{background:var(--lime)}.accent h2{font-size:25px}.dot{color:var(--green)}label{display:block;font-size:14px;font-weight:650;margin:18px 0}input{display:block;width:100%;padding:13px;border:1px solid #b6c8c1;border-radius:8px;background:#fbfcfb;color:var(--ink);font:inherit;margin-top:7px}input:focus{outline:3px solid #cbe9dd}button:focus-visible,a:focus-visible{outline:3px solid #76b39a;outline-offset:3px}.alert{border:1px solid #cd8f5b;padding:15px;background:#fff4db;border-radius:8px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}td,th{padding:18px 14px;border-bottom:1px solid var(--line)}.truncate{max-width:340px;overflow:hidden;text-overflow:ellipsis}.badge{display:inline-block;font-size:11px;padding:3px 9px;background:#e5f2e9;color:var(--green);border-radius:20px;margin-left:6px}.search{display:flex;gap:10px}.search input{margin:0;min-width:0}.chart{display:flex;gap:20px;align-items:end;height:170px;margin-top:20px}.chart>div{flex:1;text-align:center;min-width:0}.bar-track{height:105px;display:flex;align-items:end;justify-content:center}progress{width:100%;height:18px;accent-color:var(--green)}.chart small{font-size:11px}.visit{border-top:1px solid var(--line);padding:20px 0}.visit summary{cursor:pointer;font-size:14px}.visit dd{margin:0 0 12px;overflow-wrap:anywhere;font-size:14px}.visit dt{font-size:12px;color:var(--muted)}.break{overflow-wrap:anywhere}.danger{border-color:#e9c3b9}.inline{display:flex;align-items:center;gap:10px}.inline input{width:auto;margin:0}footer{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:12px;border-top:1px solid var(--line);margin-top:50px}.transition main{max-width:850px}.transition .card{margin:20px auto}button:disabled{opacity:.65;cursor:default}@media(max-width:800px){header,main,footer{padding:20px}.three,.two{grid-template-columns:1fr}.heading{align-items:start;flex-direction:column}.hero{padding-top:35px}.hero h1{letter-spacing:-2px}.search{width:100%}.card{padding:22px}footer{flex-direction:column}.chart{gap:7px}nav{gap:12px}.narrow{margin:25px auto}}

select{display:block;width:100%;padding:12px;border:1px solid #b6c8c1;border-radius:8px;background:#fbfcfb;color:var(--ink);font:inherit;margin-top:7px}
