:root{--g:#0f5132;--g2:#157347;--n:#0b1f2e;--gold:#c9a227;--bg:#f6f4ee;--card:#fff;--tx:#1b2430;--mu:#5c6672;--bad:#b00020;--ok:#0f5132}
@media (prefers-color-scheme:dark){:root{--bg:#10171e;--card:#18222c;--tx:#e8ecef;--mu:#9aa6b2}}
*{box-sizing:border-box}body{margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--tx)}
a{color:var(--g2)}header{background:var(--n);color:#fff;position:sticky;top:0;z-index:5}
.nav{max-width:1100px;margin:auto;display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;padding:10px 16px}
.nav .brand{font-weight:800;color:var(--gold);text-decoration:none;font-size:20px;margin-right:auto}.nav a,.nav button.lnk{color:#fff;text-decoration:none;font-size:15px;background:none;border:0;cursor:pointer;padding:4px 2px}
main{max-width:1100px;margin:auto;padding:20px 16px 60px}h1,h2,h3{line-height:1.2}
.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.card{background:var(--card);border-radius:12px;padding:16px;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.big{font-size:28px;font-weight:800;color:var(--g)}@media (prefers-color-scheme:dark){.big{color:#6fd0a0}}.mu{color:var(--mu);font-size:14px}
.btn,button.btn{display:inline-block;background:var(--g);color:#fff;border:0;border-radius:8px;padding:9px 16px;font-size:15px;cursor:pointer;text-decoration:none}.btn.gold{background:var(--gold);color:#111;font-weight:700}.btn.alt{background:transparent;border:1px solid var(--g);color:var(--g2)}.btn[disabled]{opacity:.5;cursor:not-allowed}
input,select,textarea{width:100%;padding:9px;border:1px solid #b9c0c7;border-radius:8px;font:inherit;background:var(--card);color:var(--tx)}label{display:block;margin:10px 0 4px;font-weight:600}
.flash{padding:10px 14px;border-radius:8px;margin-bottom:14px}.flash.ok{background:#dff3e7;color:#0f5132}.flash.err{background:#fde8e8;color:var(--bad)}
.bar{height:9px;background:#d9dde1;border-radius:6px;overflow:hidden}.bar i{display:block;height:100%;background:var(--g2)}.bar.neg i{background:#c0562b}
table{width:100%;border-collapse:collapse}td,th{padding:8px 6px;border-bottom:1px solid rgba(128,128,128,.25);text-align:left;font-size:14px}
.tag{display:inline-block;font-size:12px;padding:2px 8px;border-radius:99px;background:rgba(201,162,39,.2)}.warn{border-left:4px solid var(--gold);background:rgba(201,162,39,.12);padding:10px 12px;border-radius:6px;font-size:14px}
.hero{background:linear-gradient(135deg,var(--n),var(--g));color:#fff;border-radius:16px;padding:40px 24px;text-align:center}.hero h1{font-size:34px;margin:0 0 8px}
.mapwrap svg{width:100%;height:auto;background:#e9efe6;border-radius:12px}.mapwrap a text{font-size:2.3px;fill:#0b1f2e}.mapwrap a circle{fill:#157347;stroke:#fff;stroke-width:.5}.mapwrap a.cur circle{fill:#c9a227}.mapwrap a.sel circle{stroke:#0b1f2e;stroke-width:.9}
.opt{display:flex;flex-wrap:wrap;gap:8px}.opt label{font-weight:400;border:1px solid #b9c0c7;border-radius:8px;padding:6px 10px;margin:0;cursor:pointer}
