@font-face{font-family:Fredoka;src:url(/assets/fredoka.woff2) format('woff2');font-display:swap}@font-face{font-family:Nunito;src:url(/assets/nunito.woff2) format('woff2');font-display:swap}
:root{--ink:#22343f;--muted:#4f5f6c;--cream:#fbfaf3;--blue:#3f7fc4;--blue-d:#2c5f99;--green:#4caf6a;--green-d:#2e7d46;--sage:#a9d8b5;--yellow:#f2c230;--line:#dde6ee;--r:28px;--shadow:0 10px 30px rgba(40,80,120,.12)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:Nunito,system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink);background:var(--cream);line-height:1.65;font-size:16.5px}
h1,h2,h3{font-family:Fredoka,Nunito,sans-serif;font-weight:600;color:var(--ink);letter-spacing:.2px;line-height:1.25}
a{color:var(--blue-d)}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #f2c230;outline-offset:2px}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:8px 14px;z-index:9}.skip:focus{left:8px}
header.nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 18px;background:#fff;border-bottom:1px solid var(--line);font-family:Fredoka,sans-serif}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--blue-d);font-size:20px;font-weight:600}.brand i{font-style:normal;color:var(--green-d)}
.tag{font-family:Nunito;color:var(--muted);font-size:14px}.navl{margin-left:auto;display:flex;gap:14px;font-family:Nunito;font-size:15px}.navl a{text-decoration:none;font-weight:700}
.preview{background:#fdf3d0;border-bottom:2px solid var(--yellow);text-align:center;font-size:13.5px;padding:6px 12px}
.hero{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='360'%3E%3Cg opacity='.8'%3E%3Cellipse cx='40' cy='60' rx='6' ry='11' fill='%237fb0e0' transform='rotate(30 40 60)'/%3E%3Cellipse cx='300' cy='40' rx='5' ry='9' fill='%234caf6a' transform='rotate(-20 300 40)'/%3E%3Cellipse cx='200' cy='210' rx='5' ry='10' fill='%23f2c230' transform='rotate(60 200 210)'/%3E%3Cellipse cx='90' cy='300' rx='4' ry='8' fill='%23a9d8b5' transform='rotate(-40 90 300)'/%3E%3Cellipse cx='330' cy='300' rx='5' ry='9' fill='%237fb0e0' transform='rotate(10 330 300)'/%3E%3C/g%3E%3C/svg%3E"),linear-gradient(135deg,#dde9f7 0%,#fdf3d0 55%,#e6f1e2 100%);padding:28px 18px 70px}
.in{max-width:1040px;margin:0 auto}.crumb{font-size:13.5px;color:var(--muted)}.crumb ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px}.crumb li+li:before{content:'›';margin-right:4px}
.hero h1{font-size:clamp(1.9rem,6vw,3.1rem);margin:.15em 0 .15em}.hero p{margin:0;color:var(--muted);font-size:17px}
main{max-width:1040px;margin:-46px auto 0;padding:0 14px;position:relative;z-index:2}
.card{background:#fff;border-radius:var(--r);padding:20px 18px;margin-bottom:22px;box-shadow:var(--shadow);border:2px solid #9cc0e6;position:relative}.card h2{margin-top:0;font-size:1.35rem}
.fi{vertical-align:-6px;margin-right:6px}
.stat{display:grid;grid-template-columns:1fr 1fr;gap:12px}.st{border-radius:24px 16px 24px 16px;padding:14px;text-align:center;background:#eaf2fb;border:2px solid #9cc0e6}.st:nth-child(3n+2){background:#e8f5ec;border-color:var(--green)}.st:nth-child(3n){background:#fdf3d0;border-color:var(--yellow)}
.st b{display:block;font:600 28px Fredoka,sans-serif;color:var(--blue-d)}.st:nth-child(3n+2) b{color:var(--green-d)}.st:nth-child(3n) b{color:#6b5200}.st span{font-size:13.5px;color:var(--muted)}
.kind{display:inline-block;font:600 12px Fredoka,sans-serif;letter-spacing:.04em;padding:4px 12px;border-radius:999px;background:#bfe3c8;color:#1f3f6b}.kind.al{background:#f2c230;color:#2a2a10}
.fac{border-bottom:1px dashed var(--line);padding:12px 0}.fac:last-of-type{border-bottom:0}.fac b{display:block;font-family:Fredoka,sans-serif;font-weight:500;font-size:17.5px}.fac small{color:var(--muted);display:block}
.stars{color:var(--blue-d);letter-spacing:2px;font-size:18px;white-space:nowrap}.stars .off{color:#c6d3df}.nr{font-size:13.5px;color:var(--muted);font-style:italic}
.note{background:#e8f5ec;border:2px solid #9cc0e6;border-radius:16px;padding:10px 14px;font-size:14px;color:#2f3f4c}.note.warn{background:#fdf3d0;border-color:var(--yellow)}
.src{font-size:13px;color:var(--muted)}.asof{font-size:13px;color:var(--muted);background:#f3f7fb;border-radius:12px;padding:8px 12px;margin:0 0 18px}
.side,.side3{display:grid;grid-template-columns:1fr;gap:0 22px}
.types{display:grid;grid-template-columns:1fr;gap:12px}.ty{border:2px solid #9cc0e6;border-radius:24px 16px 24px 16px;padding:14px 16px;background:#eaf2fb}.ty:nth-child(3n+2){background:#e8f5ec;border-color:var(--green)}.ty:nth-child(3n){background:#fdf3d0;border-color:var(--yellow)}.ty b{display:block;font:600 17px Fredoka,sans-serif}.ty small{color:#3d4f5e;font-size:14px}
.states{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.states span,.states a{display:block;padding:8px 12px;border:2px solid #dde6ee;border-radius:14px;background:#fff;font-weight:600;color:#6b7a86}.states a{border-color:var(--green);color:var(--blue-d);text-decoration:none}
.cty{display:grid;grid-template-columns:1fr;gap:12px}.co{border:2px solid var(--sage);border-radius:18px;padding:12px 16px;background:#fff}.co b{font:600 17px Fredoka,sans-serif}.co small{color:var(--muted)}
.search{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 0}.search input{flex:1 1 220px;font:500 17px Nunito,sans-serif;padding:13px 18px;border:2px solid var(--blue);border-radius:999px;background:#fff;color:var(--ink);min-width:0}
.btn{background:var(--blue-d);color:#fff;border:0;border-radius:999px;padding:13px 22px;font:600 16px Fredoka,sans-serif;box-shadow:0 5px 0 #1f4570;cursor:pointer}.btn.g{background:#fff;color:var(--green-d);border:2px solid var(--green);box-shadow:0 4px 0 var(--sage)}
#geo{font-size:14.5px;color:var(--green-d);margin-top:10px;min-height:1em}#results{margin-top:10px}#results ul{list-style:none;padding:0;margin:0;background:#fff;border-radius:18px;border:2px solid #9cc0e6}#results li{padding:10px 16px;border-bottom:1px dashed var(--line)}#results li:last-child{border:0}#results small{color:var(--muted)}
.badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.b{background:#fff;border:2px solid #9cc0e6;border-radius:30px;padding:3px 12px;font-size:13.5px;font-weight:700;color:#2f3f4c}.b.g{border-color:var(--green);background:#e8f5ec;color:#1d5a32}.b.y{border-color:var(--yellow);background:#fdf3d0;color:#5a4400}.b.r{border-color:#c0392b;background:#fdecea;color:#8a1f12}
.grid{display:grid;grid-template-columns:1fr;gap:0 22px}
.overall{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.ring{width:112px;height:112px;border-radius:50%;background:conic-gradient(var(--blue) calc(var(--v)*20%),#e3ecf5 0);display:grid;place-items:center;flex:none}.ring div{width:88px;height:88px;border-radius:50%;background:#fff;display:grid;place-items:center;font:600 32px Fredoka,sans-serif;color:var(--blue-d);text-align:center;line-height:1}.ring small{display:block;font:600 12px Nunito,sans-serif;color:var(--muted)}
.rb{display:grid;grid-template-columns:120px 1fr 44px;gap:10px;align-items:center;margin:9px 0;font-size:14.5px}.trk{height:12px;border-radius:12px;background:#e3ecf5}.trk i{display:block;height:12px;border-radius:12px;background:linear-gradient(90deg,#7fb0e0,#3f7fc4)}
.chart .row{display:grid;grid-template-columns:1fr;gap:4px;margin:10px 0;font-size:14.5px}.bars i{display:block;height:14px;border-radius:8px;margin:3px 0}.bars i.a{background:var(--blue)}.bars i.n{background:var(--sage)}.bars span{font-size:13px;color:var(--muted)}
.legend{font-size:13px;color:var(--muted)}.legend b{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-1px;margin:0 4px 0 10px}
details{background:#f5f9fd;border-radius:14px;padding:10px 14px;margin:10px 0;border:1px solid #cfe0f3}summary{font-weight:800;cursor:pointer;color:var(--blue-d)}
.def{border-left:5px solid var(--blue);background:#fff;border-radius:12px;padding:10px 14px;margin:10px 0}.def.hi{border-left-color:#c0392b}.def .t{font-size:13px;color:var(--muted)}
.pill{display:inline-block;border-radius:20px;padding:1px 10px;font-size:12.5px;font-weight:800;margin:0 6px 4px 0;background:#e3ecf5;color:#1f3f6b}.pill.g{background:#e8f5ec;color:#1d5a32}.pill.r{background:#fdecea;color:#8a1f12}
.map{border-radius:18px;overflow:hidden;border:2px solid #cfe0f3;height:220px;background:#eaf2fb}.map iframe{width:100%;height:100%;border:0}
table{width:100%;border-collapse:collapse;font-size:14.5px}th{text-align:left;font-size:12.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:8px;border-bottom:2px solid var(--line)}td{padding:9px 8px;border-bottom:1px solid var(--line);vertical-align:top}
.tblwrap{overflow-x:auto}
.prose{max-width:760px}.prose li{margin:4px 0}
footer{max-width:1040px;margin:0 auto;padding:6px 18px 40px;font-size:13px;color:var(--muted)}footer .fb{display:flex;align-items:center;gap:6px;font:600 16px Fredoka,sans-serif;color:var(--blue-d);margin:0 0 6px}footer nav{display:flex;flex-wrap:wrap;gap:6px 14px;margin:8px 0}
@media(min-width:720px){.stat{grid-template-columns:repeat(3,1fr)}.types{grid-template-columns:repeat(3,1fr)}.cty{grid-template-columns:1fr 1fr}.side{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1.1fr 1fr}.card{padding:26px 28px}.hero{padding:44px 28px 74px}main{padding:0 20px}.rb{grid-template-columns:150px 1fr 44px}.chart .row{grid-template-columns:170px 1fr}}
@media(min-width:960px){.side3{grid-template-columns:repeat(3,1fr)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
