:root{--ground:#faf9f6;--surface:#fff;--ink:#20241f;--ink-soft:#5c635b;--line:#e4e1d8;--accent:#19486a;--accent-ink:#fff;--ok:#177245;--ok-bg:#e8f3ec;--no:#a03123;--no-bg:#f7ebe8;--chip:#b97430;--chip-bg:#f6efe5;--focus:#19486a}@media (prefers-color-scheme:dark){:root{--ground:#181b18;--surface:#20241f;--ink:#e9e7df;--ink-soft:#a3a89e;--line:#353a33;--accent:#7fb2d9;--accent-ink:#0e2233;--ok:#6fc290;--ok-bg:#1c3226;--no:#e0937f;--no-bg:#3a231d;--chip:#d9a05b;--chip-bg:#332a1c;--focus:#7fb2d9}}*{box-sizing:border-box}html{background:var(--ground)}body{color:var(--ink);background:var(--ground);margin:0;font-family:Avenir Next,Avenir,Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.55}.wrap{flex-direction:column;gap:2rem;max-width:720px;margin:0 auto;padding:2.5rem 1.25rem 4rem;display:flex}header h1{text-wrap:balance;letter-spacing:-.01em;margin:0 0 .35rem;font-size:1.65rem;font-weight:600}header .byline{color:var(--ink-soft);border-bottom:1px solid var(--line);margin:0 0 1.25rem;padding-bottom:.75rem;font-size:.8rem}header .byline a{color:var(--accent);font-weight:600;text-decoration:none}header .byline a:hover{text-decoration:underline}header .kicker{text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin:0 0 .75rem;font-size:.72rem;font-weight:600}header .lede{color:var(--ink-soft);max-width:60ch;margin:0}.search{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.search label{font-size:.9rem;font-weight:600}.search .row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.postcode-input{font-variant-numeric:tabular-nums;letter-spacing:.15em;border:1.5px solid var(--line);background:var(--ground);width:9.5rem;color:var(--ink);border-radius:8px;padding:.5rem .75rem;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,monospace;font-size:1.6rem}.postcode-input:focus-visible{outline:2px solid var(--focus);outline-offset:1px;border-color:#0000}.statechip{color:var(--accent);align-items:center;gap:.4rem;font-size:.85rem;font-weight:600;display:inline-flex}.hint{color:var(--ink-soft);margin:0;font-size:.8rem}.invalid{color:var(--no);margin:0;font-size:.85rem;font-weight:500}.results{flex-direction:column;gap:.6rem;display:flex}.results h2{text-transform:uppercase;letter-spacing:.12em;color:var(--ink-soft);margin:0 0 .25rem;font-size:.78rem;font-weight:600}.card{background:var(--surface);border:1px solid var(--line);border-radius:10px;align-items:flex-start;gap:.9rem;padding:.85rem 1rem;display:flex}.card .badge{letter-spacing:.06em;text-transform:uppercase;text-align:center;border-radius:99px;flex:none;min-width:6.2rem;margin-top:.1rem;padding:.22rem .55rem;font-size:.72rem;font-weight:700}.card.ok .badge{background:var(--ok-bg);color:var(--ok)}.card.no .badge{background:var(--no-bg);color:var(--no)}.card .body{flex-direction:column;gap:.15rem;min-width:0;display:flex}.card .name{font-size:.98rem;font-weight:600}.card .why{color:var(--ink-soft);font-size:.83rem}.card .areas{flex-wrap:wrap;gap:.35rem;margin-top:.3rem;display:flex}.card .areas span{color:var(--chip);background:var(--chip-bg);border-radius:99px;padding:.15rem .55rem;font-size:.72rem;font-weight:600}.card.no{opacity:.78}.notes{border-top:1px solid var(--line);padding-top:1.5rem}.notes h2{margin:0 0 .5rem;font-size:1.05rem}.notes ul{color:var(--ink-soft);margin:.25rem 0 0;padding-left:1.2rem;font-size:.9rem}.notes li{margin-bottom:.4rem}.notes strong{color:var(--ink)}footer{border-top:1px solid var(--line);color:var(--ink-soft);padding-top:1.25rem;font-size:.8rem}footer a{color:var(--accent)}footer p{margin:.35rem 0}
