*{box-sizing:border-box}body{margin:0;background:#f2f6fb;color:#20334d;font:14px Arial,sans-serif}.top{height:68px;background:#102b50;color:#fff;padding:12px 25px;display:flex;justify-content:space-between;align-items:center}.top b{font-size:16px;letter-spacing:.4px}.top small{display:block;color:#c5d4e4;font-size:10px;margin-top:4px}.topuser{font-size:11px}.topuser a{color:#f3c34b;margin-left:12px}.layout{display:grid;grid-template-columns:225px 1fr;min-height:calc(100vh - 110px)}.sidebar{background:#173e6c;padding:20px 14px;color:#fff}.navtitle{font-size:10px;color:#b6c9de;letter-spacing:1px;margin:14px 9px 7px;font-weight:bold}.sidebar a{display:block;color:#e4edf6;text-decoration:none;padding:11px;border-radius:8px;margin:3px 0;font-size:12px}.sidebar a:hover,.sidebar a.active{background:#ffffff20;border-left:3px solid #e5ad2f}.sideinfo{margin:35px 8px 0;color:#b6c9de;font-size:10px;line-height:1.8}.main{padding:25px;min-width:0;max-width:1500px;width:100%;margin:0 auto}.pagehead{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.eyebrow{font-size:10px;color:#16864b;letter-spacing:1.5px;font-weight:bold}.pagehead h1{font-size:25px;color:#102b50;margin:5px 0}.pagehead p{font-size:12px;color:#718096;margin:0}.card{background:white;border:1px solid #e1e8f0;border-radius:12px;padding:17px;margin-bottom:15px;box-shadow:0 4px 15px #102b5009}.card h2,.card h3{font-size:14px;color:#102b50;margin:0 0 13px}.grid{display:grid;gap:13px}.stats{grid-template-columns:repeat(4,1fr)}.two{grid-template-columns:1fr 1fr}.stat{background:#fff;border:1px solid #e1e8f0;padding:15px;border-radius:11px}.stat small{display:block;color:#718096;font-size:10px;font-weight:bold}.stat strong{display:block;color:#102b50;font-size:28px;margin:5px 0}.btn{display:inline-block;background:#fff;border:1px solid #dce4ed;border-radius:7px;padding:9px 12px;color:#102b50;text-decoration:none;font-weight:bold;font-size:11px;cursor:pointer}.btn.primary{background:#102b50;color:#fff;border-color:#102b50}.btn.danger{color:#b33}.btnrow{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.tablewrap{overflow:auto;border:1px solid #e1e8f0;border-radius:8px}table{width:100%;border-collapse:collapse;min-width:650px}th{background:#f3f6fa;text-align:left;padding:11px;color:#61748a;font-size:9px;text-transform:uppercase}td{padding:10px;border-top:1px solid #edf1f5;font-size:11px;vertical-align:top}.pill{display:inline-block;padding:4px 8px;border-radius:20px;font-size:9px;font-weight:bold;background:#edf3ff;color:#315eaa}.pill.yellow{background:#fff4dc;color:#966900}.pill.green{background:#e8f6ee;color:#16864b}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{margin-bottom:10px}.field.full{grid-column:1/-1}.field label{display:block;font-size:10px;font-weight:bold;color:#52657b;margin-bottom:5px}input,select,textarea{width:100%;border:1px solid #dce4ed;border-radius:7px;padding:10px;font:12px Arial;color:#20334d;background:#fff}textarea{min-height:90px;resize:vertical}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.filters input,.filters select{max-width:220px}.alert{padding:11px 14px;border-radius:7px;margin:12px 0;font-size:12px;background:#e8f6ee;color:#166a3d}.alert.error{background:#fdecec;color:#a33}.notice{background:#fff9e9;border-left:3px solid #e5ad2f;padding:12px;font-size:11px;color:#725b23;margin:12px 0}.empty{text-align:center;color:#718096;padding:25px;font-size:12px}.loginmain{max-width:480px;margin:50px auto;padding:20px}.loginbox{background:#fff;padding:25px;border-radius:13px;border:1px solid #e1e8f0}.loginbox h1{color:#102b50}footer{text-align:center;color:#8190a2;font-size:10px;padding:16px}.mapgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.village{border:1px solid #e1e8f0;padding:11px;border-radius:8px;background:white}.village b{font-size:11px;color:#102b50}.village strong{display:block;color:#16864b;font-size:22px;margin:5px 0}.muted{color:#718096;font-size:10px}@media(max-width:850px){.layout{grid-template-columns:1fr}.sidebar{display:flex;overflow:auto;padding:8px;gap:5px}.navtitle,.sideinfo{display:none}.sidebar a{white-space:nowrap}.main{padding:14px}.stats{grid-template-columns:1fr 1fr}.mapgrid{grid-template-columns:1fr 1fr}.top{padding:10px 14px}.topuser{font-size:9px}}@media(max-width:600px){.two,.formgrid{grid-template-columns:1fr}.field.full{grid-column:auto}.pagehead h1{font-size:21px}}
