:root{--bg:#071018;--panel:#0c1721;--panel2:#101e29;--panel3:#142532;--line:#203442;--text:#f4f7f9;--muted:#91a6b5;--accent:#5ee0b0;--accent2:#6ac4ff;--danger:#ff9292;--warning:#ffd37a;--shadow:0 20px 55px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 50% -10%,#183747 0,transparent 38rem),var(--bg);min-height:100vh}.hidden{display:none!important}button,input{font:inherit}.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;max-width:1240px;margin:auto;padding:0 24px;border-bottom:1px solid rgba(255,255,255,.06)}.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:850;font-size:20px;letter-spacing:-.5px}.brand>span:last-child>span{color:var(--accent)}.mark{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,var(--accent),#3aa985);color:#062318;font-weight:950}.top-actions{display:flex;align-items:center;gap:10px}.version{font-size:11px;color:var(--muted);border:1px solid var(--line);padding:6px 8px;border-radius:999px}.top-search{background:transparent;border:1px solid var(--line);color:#dbe8ef;border-radius:9px;padding:8px 11px;cursor:pointer}
main{max-width:1240px;margin:auto;padding:0 24px 70px}.hero{padding:76px 0 42px;max-width:1020px}.hero-copy{max-width:850px}.eyebrow{font-size:11px;letter-spacing:1.8px;color:var(--accent);font-weight:800;margin-bottom:12px}.hero h1{font-size:clamp(44px,7vw,78px);line-height:.98;margin:0;letter-spacing:-4px;max-width:920px}.hero h1 span{color:#9eb0bd}.hero p{max-width:790px;color:var(--muted);font-size:18px;line-height:1.65;margin:24px 0 28px}.searchbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;max-width:900px}.address-field{position:relative}.address-field input,.permit-form input{width:100%;height:58px;background:#fff;color:#12212b;border:0;border-radius:13px;padding:0 18px;font-size:17px;outline:none;box-shadow:0 7px 22px rgba(0,0,0,.18)}.address-field input:focus,.permit-form input:focus{box-shadow:0 0 0 4px rgba(94,224,176,.15),0 7px 22px rgba(0,0,0,.18)}.searchbar>button,.permit-form>button{height:58px;border:0;border-radius:13px;padding:0 22px;background:var(--accent);color:#062318;font-weight:850;cursor:pointer}.searchbar>button:hover,.permit-form>button:hover{filter:brightness(1.04)}.suggestions{position:absolute;z-index:1000;left:0;right:0;top:64px;background:#fff;color:#14222b;border-radius:13px;overflow:hidden;box-shadow:0 20px 55px rgba(0,0,0,.38);border:1px solid #dbe4e9}.suggestion{display:flex;align-items:flex-start;gap:12px;width:100%;text-align:left;padding:13px 16px;border:0;border-bottom:1px solid #edf1f3;background:#fff;cursor:pointer;color:#15242d}.suggestion:hover,.suggestion.active{background:#f1fbf7}.pin{font-size:20px;color:#289b75;line-height:1.2}.suggestion-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.suggestion-copy b{font-size:14px}.suggestion-copy small{font-size:12px;color:#71818b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.suggestion-credit{font-size:10px;color:#84939c;padding:8px 16px;background:#fafcfd;text-align:right}.hero-meta{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:13px}.search-mode,.trustline{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted)}.search-mode span,.trustline span{width:7px;height:7px;border-radius:50%;background:#667a87}.search-mode.ready span,.trustline span{background:var(--accent)}.search-mode.setup span{background:var(--warning)}.recent-wrap{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:18px;color:var(--muted);font-size:11px}.recent-searches{display:flex;gap:7px;flex-wrap:wrap}.recent-searches button{background:#101d27;border:1px solid var(--line);color:#b8c7d0;border-radius:999px;padding:6px 9px;font-size:10px;cursor:pointer}.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:34px;max-width:1000px}.feature-strip>div{border:1px solid var(--line);background:rgba(13,25,34,.75);border-radius:13px;padding:14px 15px}.feature-strip b{display:block;font-size:13px}.feature-strip span{display:block;color:var(--muted);font-size:11px;margin-top:4px;line-height:1.4}
.loading{display:flex;align-items:center;gap:14px;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:17px 19px;margin:8px 0 28px;box-shadow:var(--shadow)}.loading b{display:block}.loading span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.spinner{width:28px;height:28px;border:3px solid #27404f;border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error{background:#30171a;border:1px solid #673238;color:#ffc7c7;border-radius:12px;padding:14px 16px;margin:8px 0 28px}
.results{padding-top:26px}.result-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:18px}.result-title h2{font-size:clamp(28px,4vw,42px);line-height:1.05;margin:0 0 8px;letter-spacing:-1.4px}.muted{color:var(--muted)}.result-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.ghost,.mini{background:#0c1821;color:#dce8ee;border:1px solid var(--line);border-radius:9px;padding:9px 11px;font-size:11px;cursor:pointer}.ghost:hover,.mini:hover{border-color:#416174}.quality-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.quality-chips span{font-size:9px;text-transform:uppercase;letter-spacing:.6px;border:1px solid #294839;background:#0f261f;color:#98e9c9;border-radius:999px;padding:5px 7px}.snapshot{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}.snapshot-item{border:1px solid var(--line);background:linear-gradient(180deg,var(--panel2),var(--panel));border-radius:13px;padding:15px 16px;min-width:0}.snapshot-item label,.card-title,.metric label,.fact label,.jurisdiction label,.risk-head label,.link-group>label{display:block;color:#7f97a6;text-transform:uppercase;letter-spacing:.7px;font-size:9px;font-weight:800}.snapshot-item strong{display:block;font-size:18px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:5px}.snapshot-item span{display:block;font-size:10px;color:var(--muted);margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card{background:linear-gradient(180deg,var(--panel2),var(--panel));border:1px solid var(--line);border-radius:15px;padding:18px;box-shadow:var(--shadow)}.card-title{display:flex;align-items:center;gap:8px;color:#c6d4dc;font-size:11px;margin-bottom:16px}.card-title span{display:grid;place-items:center;width:23px;height:23px;background:#162934;border:1px solid #2b4350;border-radius:7px;color:var(--accent);font-size:9px}.grid{display:grid;gap:12px;margin-top:12px}.grid.two{grid-template-columns:1fr 1fr}.grid.three{grid-template-columns:repeat(3,1fr)}
.map-card{padding:0;overflow:hidden}.map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;border-bottom:1px solid var(--line)}.map-toolbar b{font-size:13px}.map-toolbar span{display:block;color:var(--muted);font-size:10px;margin-top:2px}.map-tools{display:flex;gap:6px}.mini{padding:7px 9px}.mini.active{background:#16372c;border-color:#2d6d55;color:#a7f1d4}.mini:disabled{opacity:.35;cursor:not-allowed}.mini:disabled:hover{border-color:var(--line)}#map{height:520px;background:#0a1218}.map-placeholder{height:100%;display:grid;place-content:center;text-align:center;padding:30px;color:#c9d5dc;background:radial-gradient(circle,#142935,#09131a)}.map-placeholder b{font-size:18px}.map-placeholder span{display:block;color:var(--muted);font-size:12px;margin-top:7px;max-width:420px}.map-note{display:flex;justify-content:space-between;gap:18px;padding:9px 13px;background:#09131a;color:#768b99;font-size:9px;border-top:1px solid var(--line)}
.facts{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.fact{border-top:1px solid rgba(255,255,255,.06);padding:10px 0;min-width:0}.fact:nth-child(-n+2){border-top:0}.fact b{display:block;font-size:12px;color:#e4edf2;margin-top:3px;overflow-wrap:anywhere}.risk-block{padding:11px 0;border-top:1px solid rgba(255,255,255,.06)}.risk-block:first-child{padding-top:0;border-top:0}.risk-head{display:flex;align-items:center;gap:10px}.risk-head strong{display:block;margin-top:2px}.risk-dot{width:9px;height:9px;border-radius:50%;background:var(--accent2);flex:0 0 auto}.risk-dot.elev{background:var(--accent)}.muted-dot{background:#617684}.risk-block p{font-size:11px;color:var(--muted);line-height:1.55;margin:7px 0 0}.risk-block small{display:block;color:#9cafba;margin-top:5px}.notice{font-size:9px;color:#718795;background:#0b151d;border:1px solid #1c2f3b;border-radius:9px;padding:9px 10px;line-height:1.5;margin-top:9px}.jurisdiction strong{display:block;font-size:18px;margin-top:5px}.jurisdiction a{display:inline-block;color:var(--accent);font-size:12px;margin-top:7px;text-decoration:none}.jurisdiction p{color:var(--muted);font-size:11px;line-height:1.6;margin:12px 0 0}
.parcel-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.metric{background:#0c1821;border:1px solid #1f3441;border-radius:10px;padding:10px;min-width:0}.metric strong{display:block;font-size:12px;margin-top:5px;overflow-wrap:anywhere}.raw-toggle{margin-top:12px;font-size:10px;color:#9cb0bd}.raw-toggle summary{cursor:pointer}.raw{max-height:260px;overflow:auto;background:#071018;border-radius:9px;padding:10px;font-size:9px;color:#a9bdc8;white-space:pre-wrap}.empty{border:1px dashed #29414f;border-radius:11px;padding:14px;color:var(--muted);font-size:11px;line-height:1.6}.empty b,.empty span{display:block}.empty b{color:#d8e3e9;margin-bottom:4px}.link-list{display:grid;gap:12px}.link-group{display:grid;gap:6px}.link-group>label{margin-bottom:1px}.source-link{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#0c1922;border:1px solid #213744;color:#dce7ed;text-decoration:none;border-radius:10px;padding:10px 11px;font-size:11px}.source-link:hover{border-color:#3d6577;background:#10232e}.source-link b{color:var(--accent);font-size:12px}
.permit-card{margin-top:12px}.permit-card>p{font-size:12px;margin:0 0 12px}.permit-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;max-width:760px}.permit-form input{height:48px;font-size:14px;border-radius:10px}.permit-form>button{height:48px;border-radius:10px}.chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}.chip{background:#0b1720;border:1px solid #243c49;color:#aebfca;border-radius:999px;padding:7px 10px;font-size:10px;cursor:pointer}.chip:hover,.chip.active{background:#16372c;border-color:#36775f;color:#b8f5db}.permit-answer{margin-top:14px;background:#0b171f;border:1px solid #233c49;border-radius:12px;padding:15px}.permit-result-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.permit-result-head label{display:block;color:var(--accent);font-size:9px;font-weight:800;letter-spacing:.8px}.permit-result-head h3{margin:4px 0 0}.coverage-pill{font-size:9px;background:#17382d;color:#a9edcf;border:1px solid #2e6b55;border-radius:999px;padding:5px 8px;white-space:nowrap}.coverage-pill.limited{background:#322b18;border-color:#6f5c24;color:#f0d889}.permit-answer p,.permit-answer li{font-size:11px;line-height:1.6;color:#b3c2cb}.permit-answer ul{padding-left:19px}.permit-answer .source-link{margin-top:6px}.permit-disclaimer{font-size:9px!important;margin-bottom:0}.checking{font-size:11px;color:var(--muted)}
.status{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 0;border-top:1px solid rgba(255,255,255,.06);font-size:11px}.status:first-child{border-top:0;padding-top:0}.status a{color:#dce7ed;text-decoration:none}.badge{font-size:9px;color:#9be5c9;border:1px solid #285440;background:#0f261f;border-radius:999px;padding:4px 7px;text-align:right}.coverage-list{display:grid;gap:9px}.coverage-row{display:flex;gap:10px;align-items:flex-start}.coverage-check{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;font-size:10px;flex:0 0 auto}.coverage-check.yes{background:#17382d;color:#a9edcf}.coverage-check.no{background:#222e35;color:#8ea2ae}.coverage-row b{display:block;font-size:11px}.coverage-row div span{display:block;color:var(--muted);font-size:9px;margin-top:2px}.updated{font-size:9px;color:#6f8592;border-top:1px solid rgba(255,255,255,.06);margin-top:12px;padding-top:10px}footer{max-width:1240px;margin:0 auto 34px;padding:20px 24px 0;border-top:1px solid rgba(255,255,255,.06);display:flex;justify-content:space-between;gap:20px;color:#6f8491;font-size:9px}
@media(max-width:980px){.feature-strip,.snapshot,.grid.three{grid-template-columns:1fr 1fr}.result-head{align-items:flex-start;flex-direction:column}.result-actions{justify-content:flex-start}.top-cards{grid-template-columns:1fr!important}.map-note{flex-direction:column;gap:4px}}
@media(max-width:720px){main{padding:0 14px 50px}.topbar{padding:0 14px}.hero{padding:50px 0 32px}.hero h1{letter-spacing:-2.5px}.hero p{font-size:15px}.searchbar,.permit-form{grid-template-columns:1fr}.searchbar>button,.address-field input{height:54px}.feature-strip,.snapshot,.grid.two{grid-template-columns:1fr}.feature-strip{gap:7px}.feature-strip>div{padding:11px 12px}.result-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}#map{height:420px}.map-toolbar{align-items:flex-start;flex-direction:column}.map-note{font-size:8px}.parcel-grid{grid-template-columns:1fr}.facts{grid-template-columns:1fr}.fact:nth-child(2){border-top:1px solid rgba(255,255,255,.06)}footer{flex-direction:column}.top-search{display:none!important}}
@media print{body{background:#fff;color:#111}.topbar,.hero,.result-actions,.map-tools,.permit-form,.chips,footer{display:none!important}main{max-width:none;padding:0}.results{display:block!important;padding:0}.card,.snapshot-item{box-shadow:none;background:#fff;color:#111;border-color:#bbb;break-inside:avoid}.muted,.map-note,.risk-block p,.jurisdiction p,.notice,.updated{color:#555}.source-link,.status a{color:#111}.quality-chips span{color:#111;background:#fff}.map-card{break-inside:avoid}#map{height:420px}.grid{break-inside:avoid}}
