:root{--blue:#155eef;--navy:#102a56;--bg:#f4f7fb;--card:#fff;--line:#dbe4f0;--text:#172033;--muted:#687386;--green:#087a4b;--red:#c83232}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--text)}a{color:inherit}.container{width:min(1180px,calc(100% - 28px));margin:auto}.topbar{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.nav{height:68px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800}.logo{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--blue);color:#fff}.nav nav{display:flex;gap:18px}.nav nav a{text-decoration:none;font-weight:650;color:#3d4b63}main{padding:28px 0 50px}.hero{padding:28px;border-radius:22px;background:linear-gradient(135deg,#123e8c,#155eef);color:#fff;display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px}.hero h1{margin:0 0 6px;font-size:clamp(25px,4vw,39px)}.hero p{margin:0;opacity:.85}.badge{display:inline-block;padding:8px 12px;border-radius:999px;background:#ffffff1c;border:1px solid #ffffff33;font-weight:700}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.stat,.card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:18px;box-shadow:0 7px 24px #17386d0a}.stat small{display:block;color:var(--muted);margin-bottom:7px}.stat strong{font-size:24px}.section-title{display:flex;align-items:center;justify-content:space-between;margin:28px 0 12px}.section-title h2{margin:0}.village{margin:18px 0}.village h3{margin:0 0 10px;color:var(--navy)}.table-wrap{overflow:auto;border-radius:16px;border:1px solid var(--line);background:#fff}table{width:100%;border-collapse:collapse;min-width:720px}th,td{padding:13px 14px;border-bottom:1px solid #edf1f6;text-align:left}th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:#f9fbfd}tr:last-child td{border-bottom:0}.number-main{font-size:17px;font-weight:800}.trend{font-size:11px;font-weight:800;margin-left:5px;padding:3px 6px;border-radius:999px;vertical-align:2px}.trend.up{color:var(--green);background:#e6f7ef}.trend.down{color:var(--red);background:#fdecec}.trend.neutral{color:#697586;background:#eef2f7}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.field label{display:block;font-weight:700;margin-bottom:7px}.field input,.field select{width:100%;padding:12px 13px;border:1px solid #cfd8e6;border-radius:11px;background:#fff;font-size:15px}.btn{display:inline-block;border:0;border-radius:11px;padding:11px 16px;background:var(--blue);color:#fff;font-weight:750;text-decoration:none;cursor:pointer}.btn.secondary{background:#e9effa;color:#24436f}.btn.danger{background:#c83232}.actions{display:flex;gap:10px;flex-wrap:wrap}.alert{padding:13px 15px;border-radius:11px;margin-bottom:15px}.alert.success{background:#e8f7ef;color:#14603f}.alert.error{background:#fdeaea;color:#922}.login-card{max-width:430px;margin:60px auto}.muted{color:var(--muted)}footer{padding:25px 0;color:var(--muted);text-align:center}.input-table input{width:82px;padding:9px;border:1px solid #ccd6e4;border-radius:8px}.input-table input.infaq{width:125px}.toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:15px}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tabs a{padding:9px 12px;border-radius:9px;background:#e9eff8;text-decoration:none;font-weight:700}.tabs a.active{background:var(--blue);color:#fff}@media(max-width:760px){.stats{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.hero{align-items:flex-start;flex-direction:column}.nav nav{gap:10px;font-size:14px}.brand span:last-child{display:none}.toolbar{align-items:flex-start;flex-direction:column}.stat strong{font-size:20px}}

.btn.small{padding:7px 10px;font-size:12px}.btn.danger{background:#b91c1c;color:#fff}.actions-cell{display:flex;gap:6px;flex-wrap:wrap}.actions-cell form{display:inline} table select,table input{max-width:100%;box-sizing:border-box}
