:root{--paper:#f7f4ec;--card:#fffdf8;--ink:#17261d;--muted:#5d6a60;--green:#1d5c3a;--green2:#2f7a52;--gold:#b7862b;--line:#e0dace;--red:#a5372b;--soon:#9a5b00;
--t-conf:#1d5c3a;--t-rep:#7a5a12;--t-unv:#6b6b6b;--t-re:#a5372b}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--paper:#121a15;--card:#18231c;--ink:#ecebe3;--muted:#a7b1a8;--green:#7fcc9e;--green2:#9bd9b3;--gold:#e0b45a;--line:#2b3a30;--red:#f08a7d;--soon:#f0b45a;--t-conf:#7fcc9e;--t-rep:#e0b45a;--t-unv:#a7a7a7;--t-re:#f08a7d}}
:root[data-theme="dark"]{--paper:#121a15;--card:#18231c;--ink:#ecebe3;--muted:#a7b1a8;--green:#7fcc9e;--green2:#9bd9b3;--gold:#e0b45a;--line:#2b3a30;--red:#f08a7d;--soon:#f0b45a;--t-conf:#7fcc9e;--t-rep:#e0b45a;--t-unv:#a7a7a7;--t-re:#f08a7d}
*{box-sizing:border-box}
html{background:var(--paper)}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:var(--green)}a:hover{color:var(--green2)}
h1,h2,h3{font-family:Fraunces,Georgia,serif;letter-spacing:-.01em;line-height:1.1;margin:0 0 .4em}
h1{font-weight:800;font-size:clamp(34px,6vw,64px);max-width:16ch}
h2{font-weight:700;font-size:clamp(24px,3vw,32px);margin-top:1.6em}
h3{font-weight:700;font-size:20px;margin:0}
.top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px clamp(16px,4vw,48px);border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:5}
.mark{display:flex;align-items:center;gap:10px;font:700 15px/1.2 Inter;color:var(--ink);text-decoration:none}
.dot{width:14px;height:14px;border-radius:50%;background:var(--green);box-shadow:5px 0 0 var(--gold);margin-right:6px;flex:none}
nav{display:flex;gap:4px 18px;flex-wrap:wrap}
nav a{color:var(--muted);text-decoration:none;font:600 14px/1 Inter;padding:8px 0;border-bottom:2px solid transparent}
nav a:hover{color:var(--ink)}nav a[aria-current]{color:var(--ink);border-color:var(--gold)}
main{max-width:1120px;margin:0 auto;padding:clamp(28px,5vw,64px) clamp(16px,4vw,48px) 40px}
.kicker{font:700 12px/1 Inter;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin:0 0 14px}
.lede{font-size:clamp(17px,1.6vw,20px);color:var(--muted);max-width:62ch}
.muted{color:var(--muted)}.small{font-size:14px}
.btn{display:inline-block;background:var(--green);color:var(--paper);font:700 16px/1 Inter;padding:15px 22px;border-radius:999px;text-decoration:none;border:2px solid var(--green);cursor:pointer}
.btn:hover{background:var(--green2);border-color:var(--green2);color:var(--paper)}
.btn.ghost{background:transparent;color:var(--green)}
.ctas{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}
.stat{color:var(--muted);font-size:15px}
.fresh{display:inline-block;font:600 13px/1 Inter;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--green) 14%,transparent);color:var(--green);white-space:nowrap}
.fresh.warn{background:color-mix(in srgb,var(--gold) 20%,transparent);color:var(--soon)}
.fresh.bad{background:color-mix(in srgb,var(--red) 16%,transparent);color:var(--red)}
.threes{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin:36px 0}
.three{display:flex;flex-direction:column;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px;text-decoration:none;color:var(--ink);transition:transform .15s,border-color .15s}
.three:hover{transform:translateY(-2px);border-color:var(--gold)}
.three p{color:var(--muted);margin:0;flex:1}
.num{font:800 30px/1 Fraunces,serif;color:var(--gold)}
.go{font-weight:700;color:var(--green)}
.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px}
.soon{padding-left:18px}.soon li{margin:8px 0}
.honest{background:var(--card);border:1px solid var(--line);border-left:5px solid var(--gold);border-radius:12px;padding:6px 24px 14px;margin:40px 0}
.tags dl{display:grid;gap:10px;margin:0}.tags dl div{display:flex;gap:12px;align-items:baseline}
.tag{display:inline-block;font:700 11px/1 Inter;letter-spacing:.08em;padding:5px 7px;border-radius:5px;border:1.5px solid currentColor;flex:none}
.t-confirmed{color:var(--t-conf)}.t-reported{color:var(--t-rep)}.t-unverified{color:var(--t-unv)}.t-recheck{color:var(--t-re)}
.pill{display:inline-block;font:600 12px/1 Inter;padding:4px 8px;border-radius:999px;margin-left:6px;white-space:nowrap}
.pill.open{background:color-mix(in srgb,var(--green) 14%,transparent);color:var(--green)}
.pill.soon{background:color-mix(in srgb,var(--gold) 22%,transparent);color:var(--soon)}
.pill.closed{background:color-mix(in srgb,var(--muted) 18%,transparent);color:var(--muted)}
.pill.nc{background:var(--green);color:var(--paper)}
.list{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin:18px 0}
.prog h3,.prog .who,.fnote{overflow-wrap:anywhere}
.prog{min-width:0;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px 20px}
.prog[hidden]{display:none}
.ph{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.who{color:var(--muted);margin:4px 0 10px;font-size:15px}
.prog dl{display:grid;grid-template-columns:110px 1fr;gap:6px 14px;margin:0}
.prog dl div{display:contents}
.prog dt{font:700 13px/1.6 Inter;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.prog dd{margin:0;overflow-wrap:anywhere}
q{quotes:"\201C" "\201D"}
.links{font-size:14px;margin:10px 0 0}
.fnote{display:block;font-size:13.5px;color:var(--muted);margin-top:6px;line-height:1.5}
.closedlist .prog{opacity:.75}
.filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:20px 0}
.chip{font:600 14px/1 Inter;padding:9px 13px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer}
.chip.on{background:var(--green);border-color:var(--green);color:var(--paper)}
.note{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:6px 22px;margin:20px 0}
blockquote{margin:8px 0;padding:8px 14px;border-left:3px solid var(--gold);color:var(--muted);font-size:15px;background:color-mix(in srgb,var(--gold) 6%,transparent)}
.steps{padding-left:22px}.steps li{margin:0 0 18px}.steps p{margin:0 0 4px}
.form{display:grid;gap:16px;max-width:720px;margin-top:24px}
.form label{display:grid;gap:6px;font-weight:600;font-size:15px}
.form .row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.form input,.form select,.form textarea{font:16px/1.4 Inter;padding:12px 13px;border-radius:9px;border:1px solid var(--line);background:var(--card);color:var(--ink);width:100%}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--gold);outline-offset:1px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.msg{min-height:1.4em;margin:0;color:var(--red);font-weight:600}
footer{border-top:1px solid var(--line);margin-top:40px}
.fwrap{max-width:1120px;margin:0 auto;padding:22px clamp(16px,4vw,48px);color:var(--muted);font-size:14px}
@media (max-width:560px){.prog dl{grid-template-columns:1fr}.prog dt{margin-top:6px}nav{gap:2px 14px}nav a{font-size:13px}}
@media print{.top,footer,.filters,.ctas{display:none}body{background:#fff}}
