:root{font-family:Inter,system-ui,-apple-system,sans-serif;color:#19362e;background:#f4f7f5;font-size:14px}*{box-sizing:border-box}body{margin:0}header{height:78px;background:#fff;border-bottom:1px solid #dce6df;display:flex;align-items:center;justify-content:space-between;padding:0 3vw;gap:20px}.brand{display:flex;gap:10px;align-items:center;font-size:21px;font-weight:750;text-decoration:none;color:inherit;white-space:nowrap}.brand img{width:34px}.brand small{font-size:10px;letter-spacing:2px;color:#74887d}nav{display:flex;gap:8px;flex-wrap:wrap}button,.button,select,input,textarea{font:inherit}button,.button{border:0;border-radius:9px;background:#126947;color:white;padding:10px 16px;cursor:pointer;text-decoration:none;display:inline-block}button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:wait}.secondary{background:#eaf0ec;color:#294e3d}main{max-width:1800px;margin:auto;padding:32px 3vw}h1{font-size:30px;letter-spacing:-1px;margin:0 0 8px}h2{font-size:21px}p{line-height:1.6}.muted,small{color:#74857b}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:26px 0}.stat{padding:22px;background:white;border:1px solid #dde7e0;border-radius:16px;text-align:left;color:inherit}.stat strong{display:block;font-size:34px;margin:9px 0}.bar{height:5px;border-radius:4px;background:#e7eee9;overflow:hidden}.bar span{display:block;height:100%;background:#1b9464}.filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:18px}.filters input{min-width:220px;flex:1}input,select,textarea{border:1px solid #d2dfd6;border-radius:8px;background:white;padding:10px;color:#244e3a}input:focus,select:focus,textarea:focus{outline:2px solid #9fceb4;outline-offset:2px}label{display:block;margin:14px 0 6px}label input,label select,label textarea{display:block;width:100%;margin-top:6px}textarea{min-height:120px;resize:vertical}.tablewrap{overflow:auto;border:1px solid #dce6df;border-radius:13px;background:white;max-height:70vh}table{border-collapse:collapse;width:100%;text-align:left}th{background:#edf3ef;font-size:11px;text-transform:uppercase;letter-spacing:.6px;position:sticky;top:0;z-index:1}th,td{padding:15px 13px;border-bottom:1px solid #edf2ee;vertical-align:top}td:first-child{min-width:235px}td .address{display:block;font-size:13px;max-width:300px;margin-top:6px}td .coords{display:block;font-size:11px;color:#7a8d80;margin-top:7px}td select{width:145px;font-size:12px}td.done select{color:#118144;background:#eef9f1;border-color:#bbdec8}td.done small{color:#118144}td small{display:block;font-size:10px;margin-top:6px}.na{color:#a8b5ad}.badge{display:inline-block;border-radius:5px;background:#eff3f0;padding:3px 6px;font-size:10px;margin-left:6px}.searchhint{font-size:12px;color:#74857b}.searchhint button{background:none;color:#126947;padding:0;text-decoration:underline}.login{max-width:400px;margin:9vh auto;padding:30px;background:white;border:1px solid #dce6df;border-radius:18px}.login button{width:100%;margin-top:18px}dialog{border:1px solid #d4e0d8;border-radius:18px;width:min(540px,94vw);padding:25px;max-height:90vh}dialog::backdrop{background:#142d2377;backdrop-filter:blur(4px)}dialog footer{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}#dialogerror,.error{color:#b42938}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#193f2e;color:white;border-radius:10px;padding:12px 22px;display:none;z-index:10}.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.cards{display:grid;gap:14px}.card{background:white;border:1px solid #dce6df;border-radius:12px;padding:20px;white-space:pre-wrap;overflow-wrap:anywhere}.card button{margin-top:10px}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}a{color:#126947}@media(max-width:700px){header{height:auto;min-height:78px;padding:16px;align-items:flex-start;flex-wrap:wrap}.brand small{display:none}nav button{padding:8px;font-size:12px}main{padding:24px 16px}.stats{gap:8px}.stat{padding:13px 10px}.stat strong{font-size:25px}.stat small{font-size:10px}h1{font-size:25px}th,td{padding:12px 9px}.tablewrap{max-height:65vh}}
