:root{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#18342f;background:#f5f8f6}*{box-sizing:border-box}body{margin:0}header{background:#142e2a;color:#fff;padding:17px max(22px,calc((100vw - 1320px)/2));display:flex;align-items:center;justify-content:space-between;gap:15px}header strong{font-size:25px;letter-spacing:-1px}header small{display:block;color:#b6d8c9}a{color:#187a59}header a{color:#c9f0de;text-decoration:none}main{max-width:1320px;margin:auto;padding:24px}h1{font-size:32px;letter-spacing:-1px;margin:0}h2{font-size:21px;margin:0 0 12px}h3{font-size:16px;margin:20px 0 10px}.muted{color:#6b7e76;font-size:13px}.top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.layout{display:grid;grid-template-columns:minmax(0,7fr) minmax(260px,3fr);gap:16px}.panel{background:#fff;border:1px solid #dce8e1;border-radius:14px;overflow:hidden}.panel-head{padding:13px 16px;border-bottom:1px solid #e1e9e5;display:flex;justify-content:space-between;align-items:center}.map{height:535px;background:#e6f0eb}.list{height:535px;overflow:auto;padding:9px}.place{display:flex;flex-direction:column;gap:6px;text-align:left;width:100%;background:white;border:1px solid #e1e9e5;border-radius:10px;margin-bottom:9px;padding:13px;color:inherit}.place strong{font-size:16px}.place small{color:#71847b}.place:hover,.place.active,.place.highlight{background:#edf7f0;border-color:#67b69a}.badge{display:inline-block;align-self:start;font-size:11px;padding:3px 8px;border-radius:999px;background:#e9f0ed;color:#2c6855}.badge.closed{background:#fae9e8;color:#a74343}.badge.opened{background:#e6eefb;color:#3b66b5}.badge.renovating{background:#fff1d8;color:#986519}.details{margin-top:16px;padding:20px}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.details p{line-height:1.55}.side{border-left:1px solid #e4eae6;padding-left:25px}.stat{margin:12px 0}.stat>div:first-child{display:flex;justify-content:space-between;gap:8px;font-size:13px}.track{background:#e8efeb;height:9px;border-radius:10px;overflow:hidden;margin-top:5px}.track>div{background:#238d68;height:100%;border-radius:10px}.report{border-bottom:1px solid #e5ebe7;padding:10px 0;font-size:13px}.report p{margin:4px 0}form{display:grid;gap:12px}label{display:grid;gap:5px;font-size:13px;font-weight:600}input,select,textarea{width:100%;border:1px solid #cfded5;border-radius:8px;padding:10px;background:#fff;color:#18342f;font:inherit}button{cursor:pointer;font:inherit}button.primary{background:#197957;border:0;color:#fff;border-radius:9px;padding:11px 15px;font-weight:700}button.secondary,.actions button:not(.primary){border:1px solid #cedbd3;background:#fff;color:#174737;border-radius:9px;padding:10px 14px}.new{padding:20px;margin-top:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid .wide{grid-column:1/-1}.notice{padding:12px 15px;border:1px solid #a5d5b8;background:#e8f7ec;border-radius:10px;margin-bottom:15px}.notice.error{background:#fff0ee;border-color:#e9b4ae}.map-pin{appearance:none;border:0;background:transparent;padding:0;display:flex;align-items:center;gap:6px;white-space:nowrap;color:#18342f;filter:drop-shadow(0 1px 2px #0002)}.map-pin-dot{width:14px;height:14px;flex:0 0 14px;border-radius:50%;background:#2a8f70;border:2px solid #fff;box-shadow:0 0 0 1px #2a8f7040,0 1px 4px #0003;transition:transform .15s ease,background .15s ease,box-shadow .15s ease}.map-pin-label{display:block;background:#fff;border:1px solid #d6e0db;border-radius:4px;padding:3px 7px;font-size:12px;font-weight:600;line-height:1.2;color:#18342f;box-shadow:0 1px 3px #0002}.map-pin:hover .map-pin-label,.map-pin.highlight .map-pin-label{border-color:#d9a24e}.map-pin.highlight{z-index:3}.map-pin.highlight .map-pin-dot{background:#fff;border-color:#fff;box-shadow:0 0 0 5px #d99a2b,0 2px 7px #0004;transform:scale(1.08)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px}.filter-tabs{display:flex;align-items:center;gap:8px;min-width:0;overflow-x:auto;padding:2px 1px 5px;scrollbar-width:thin}.chip{flex:0 0 auto;border:1px solid #cfded5;background:#fff;color:#315b4d;border-radius:999px;padding:9px 14px;font-weight:700;font-size:13px;line-height:1;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.chip:hover{background:#edf7f0;border-color:#7ab59f}.chip.active{background:#197957;border-color:#197957;color:#fff;box-shadow:0 2px 6px #1979572b}.toolbar-search{width:min(330px,32vw);min-width:230px;background:#fff}.toolbar-search:focus{outline:2px solid #77bba3;outline-offset:1px;border-color:#77bba3}
.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-card{padding:20px}.review{padding:15px;border:1px solid #e2ebe6;border-radius:12px;margin-bottom:12px;overflow-wrap:anywhere}.review p{font-size:13px}.actions{display:flex;gap:8px;margin-top:12px}.coords{display:grid;grid-template-columns:1fr 1fr;gap:8px}.auth{max-width:430px;margin:35px auto;padding:25px}.import-text{min-height:270px;font:12px/1.6 ui-monospace,monospace}.helper{font-size:13px;color:#63786e;line-height:1.6}@media(max-width:850px){.layout,.details-grid,.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px}.filter-tabs{display:flex;align-items:center;gap:8px;min-width:0;overflow-x:auto;padding:2px 1px 5px;scrollbar-width:thin}.chip{flex:0 0 auto;border:1px solid #cfded5;background:#fff;color:#315b4d;border-radius:999px;padding:9px 14px;font-weight:700;font-size:13px;line-height:1;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.chip:hover{background:#edf7f0;border-color:#7ab59f}.chip.active{background:#197957;border-color:#197957;color:#fff;box-shadow:0 2px 6px #1979572b}.toolbar-search{width:min(330px,32vw);min-width:230px;background:#fff}.toolbar-search:focus{outline:2px solid #77bba3;outline-offset:1px;border-color:#77bba3}
.admin-grid{grid-template-columns:1fr}.map{height:410px}.list{height:320px}.side{border-left:0;border-top:1px solid #e4eae6;padding:20px 0 0}.form-grid{grid-template-columns:1fr}.top{align-items:start;flex-direction:column}main{padding:14px}}
