*{box-sizing:border-box}body{margin:0;background:#f4f7fb;color:#172033;font:14px Inter,Arial,sans-serif}header{height:68px;background:#fff;border-bottom:1px solid #e4e9f0;display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:5}header b{font-size:20px}header span{margin-left:10px;color:#6d7890}nav a{margin-left:22px;color:#33415c;text-decoration:none}main{max-width:1450px;margin:28px auto;padding:0 24px}.hero{display:flex;justify-content:space-between;align-items:end;margin-bottom:22px}.hero h1{font-size:30px;margin:0}.hero p{color:#778299}.stats{display:flex;gap:10px}.stats div{background:#fff;border:1px solid #e5eaf1;border-radius:12px;padding:13px 18px;min-width:110px}.stats b{font-size:22px;display:block}.stats span{color:#7d8799;font-size:12px}.card{background:#fff;border:1px solid #e4e9f0;border-radius:16px;padding:20px;box-shadow:0 6px 22px #26324a0d}.sectiontitle{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.sectiontitle h1,.sectiontitle h2{margin:0}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:13px 12px;border-bottom:1px solid #edf0f4;text-align:left;white-space:nowrap}tbody tr{cursor:pointer}tbody tr:hover{background:#f8fafc}.pill,.status{display:inline-block;border-radius:999px;padding:5px 9px;background:#edf3ff}.status.active{background:#e9f9ef}.status.finished{background:#eef1f5}.muted,small{color:#8791a2}.btn,button{background:#135bd8;color:#fff;border:0;border-radius:9px;padding:10px 14px;text-decoration:none;font-weight:600}.btn.secondary{background:#edf3ff;color:#135bd8}.login{max-width:420px;margin:10vh auto;padding:30px}.login h1{margin-top:0}.login label{display:block;margin:17px 0;color:#5d687b}.login input{width:100%;margin-top:7px;border:1px solid #ccd5e0;border-radius:9px;padding:12px}.login button{width:100%}.grid{display:grid;grid-template-columns:360px 1fr;gap:18px}.mapcard{padding:0;overflow:hidden}#map{height:620px}dl{display:grid;grid-template-columns:110px 1fr;gap:12px}dt{color:#7a8495}dd{margin:0}.alert{padding:12px;background:#fff0f0;border-radius:9px;margin-bottom:15px}@media(max-width:850px){.hero{display:block}.stats{margin-top:15px;overflow:auto}.grid{grid-template-columns:1fr}#map{height:420px}}
form label{display:block;margin:12px 0;color:#5d687b}form input,form select{width:100%;display:block;margin-top:6px;border:1px solid #ccd5e0;border-radius:9px;padding:10px;background:white}.admin-grid{grid-template-columns:1fr 1fr}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:18px}.rowline,.alertrow{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #edf0f4}.alertrow small{display:block;margin-top:4px}.alertcard{margin-bottom:18px}.wrap{white-space:normal;max-width:520px}.inlineform{display:flex;gap:12px;align-items:end;margin-bottom:18px}.inlineform label{margin:0;min-width:220px}@media(max-width:1100px){.grid3{grid-template-columns:1fr}.inlineform{display:block}}

.report-actions{display:flex;gap:10px}.period-tabs{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.period-tabs a{padding:9px 15px;border-radius:9px;background:#eef2f7;color:#33415c;text-decoration:none;font-weight:600}.period-tabs a.active{background:#135bd8;color:#fff}.report-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin:18px 0}.report-stats div{background:#fff;border:1px solid #e4e9f0;border-radius:13px;padding:15px}.report-stats b{font-size:21px;display:block}.report-stats span{font-size:12px;color:#7d8799}.print-btn{background:#526170}@media(max-width:1000px){.report-stats{grid-template-columns:repeat(2,1fr)}.report-actions{flex-wrap:wrap}}
@media print{header,.report-filter,.report-actions,.print-btn{display:none!important}body{background:white}main{max-width:none;margin:0;padding:0}.card{box-shadow:none;border:0;padding:0}.report-stats{grid-template-columns:repeat(6,1fr);gap:5px}.report-stats div{border:1px solid #bbb;padding:7px}table{font-size:9px}th,td{padding:5px 4px;white-space:normal}.sectiontitle{margin-bottom:8px}}
