:root{font-family:Inter,Segoe UI,Arial,sans-serif;background:#f4f7f4;color:#234237;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{height:86px;background:#fff;border-bottom:1px solid #dfe7de;display:flex;align-items:center;padding:0 5%;gap:22px}.brand{font-size:26px;font-weight:750;letter-spacing:-1px;text-decoration:none;color:#185c4c}.brand span{font-weight:400}.badge{background:#e8efdf;color:#637a49;padding:6px 9px;border-radius:6px;font-size:12px;font-weight:700;letter-spacing:1px}.site-link{margin-left:auto;font-size:14px}a{color:#246a52;text-underline-offset:4px}main{max-width:1240px;margin:auto;padding:40px 28px}h1{font-size:36px;letter-spacing:-1.3px;margin:0 0 12px;line-height:1.15}h2{font-size:21px;margin:0}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.7px;color:#778972;margin-bottom:15px}.muted{font-size:15px;color:#7b8a80;line-height:1.6}.card{background:#fff;border:1px solid #e0e7dd;border-radius:18px;padding:26px}.page-heading,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:26px}.page-heading{margin-bottom:32px}.section-heading .muted{margin-bottom:0}.login{max-width:480px;margin:25px auto;padding:38px}.login-icon{background:#185d4e;color:#e5e697;width:54px;height:54px;display:grid;place-items:center;font-size:32px;border-radius:15px;margin-bottom:32px}.login h1{font-size:33px}.login form{margin-top:28px}label{display:flex;flex-direction:column;gap:9px;font-size:14px;font-weight:600;margin-bottom:20px}input{font:inherit;font-weight:400;font-size:16px;width:100%;border:1px solid #d6e0d5;border-radius:9px;background:#fbfcfa;padding:12px;color:#234237;min-width:0}button{font:inherit;cursor:pointer}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:12px 17px;text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap}.primary{background:#185f4e;border:1px solid #185f4e;color:white}.primary:hover{background:#114c3d}.secondary{background:white;border:1px solid #d6e2d4;color:#365f47}.secondary:hover{background:#edf4e9}.full{width:100%}.hint{color:#7e8c7e;font-size:13px;line-height:1.65;margin-top:20px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:25px}.stats article span{color:#708574;font-size:14px}.stats strong{display:block;font-size:42px;font-weight:600;margin-top:16px;letter-spacing:-1.5px}.stats small{font-size:20px;font-weight:400;letter-spacing:0;color:#90a083}.city-list{margin-top:24px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px;white-space:nowrap}th{font-size:12px;letter-spacing:.6px;text-transform:uppercase;color:#8a9687;font-weight:600;padding:16px 12px;background:#f6f8f3}td{padding:20px 12px;border-bottom:1px solid #e9eee4}td small{display:block;margin-top:6px;color:#8b9687;font-size:12px}.status{font-size:12px;padding:6px 9px;background:#f0f1ed;color:#8c9286;border-radius:6px}.status.on{background:#eaf2df;color:#577332}.actions{display:flex;align-items:center;gap:16px}.actions a{font-size:14px}.actions button{font-size:12px;padding:9px 11px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.check{display:flex;flex-direction:row;align-items:center;font-weight:400}.check input{width:18px;height:18px;accent-color:#185f4e}.editor{margin-bottom:24px}.account{margin-top:24px}.account summary{cursor:pointer;font-size:15px;font-weight:600}.account form{margin-top:24px}.message{padding:16px 20px;margin-bottom:24px;border-radius:10px;font-size:14px;line-height:1.5}.error{background:#fff0ec;color:#9b3b28;border:1px solid #f2d7ce}.success{background:#eaf3df;border:1px solid #d7e5c7;color:#40672b}footer{text-align:center;font-size:12px;color:#95a18f;padding:28px 0 5px}:focus-visible{outline:3px solid #afab44;outline-offset:3px}@media(max-width:700px){header{padding:0 20px;gap:12px}.brand{font-size:23px}.site-link{font-size:12px}.badge{display:none}main{padding:24px 16px}.page-heading,.section-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:30px}.stats{gap:8px}.stats .card{padding:18px 12px}.stats article span{font-size:12px}.stats strong{font-size:30px}.stats small{font-size:15px}.fields{grid-template-columns:1fr}.card{padding:21px}.login{padding:27px}.actions{gap:12px}.table-scroll{margin:0 -6px}.account summary{line-height:1.5}}

.admin-nav{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}.admin-nav a{padding:11px 16px;text-decoration:none;border-radius:9px;font-size:14px}.admin-nav .selected{background:#e3eddd;color:#315a3f;font-weight:600}.settings-card{margin-bottom:24px}.settings-card .eyebrow{display:block;margin:0 0 12px}.settings-card input[type=file]{padding:10px;background:white;font-size:14px}.upload-box{padding:20px;border:1px dashed #cbd9c7;border-radius:12px;min-width:0}.image-preview{padding:20px;background:#edf2e9;border-radius:8px;margin-bottom:18px}.image-preview img{max-width:100%;max-height:90px;object-fit:contain}.settings-save{display:flex;align-items:center;justify-content:space-between;gap:20px}.site-logo{max-width:220px;max-height:52px;object-fit:contain}.brand{display:flex;align-items:center;gap:8px}textarea{font:inherit;padding:12px;border:1px solid #d6e0d5;border-radius:9px;resize:vertical;width:100%;background:#fbfcfa;color:#234237}button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:700px){.settings-save{align-items:stretch;flex-direction:column}.site-logo{max-width:170px}.upload-box{margin-bottom:18px}}
.status.warn{background:#fbf1d6;color:#8a6417}code{font-family:Consolas,Menlo,monospace;font-size:.95em}.sql{background:#1f2a24;color:#e8f0e6;padding:20px;border-radius:12px;font-size:13px;line-height:1.55;overflow:auto;max-height:420px;margin:0;font-family:Consolas,Menlo,monospace;white-space:pre;tab-size:4}.actions form{margin:0}.page-heading form{margin:0}

.period-filter{display:flex;align-items:end;gap:12px}.period-filter label{margin:0}.period-filter select{padding:12px;border:1px solid #d6e0d5;border-radius:9px;background:white;font:inherit}.search-chart{width:100%;height:auto;min-height:160px}.search-report-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:20px}@media(max-width:800px){.search-report-grid{grid-template-columns:1fr}}