:root{--pine:#153c30;--pine2:#215d46;--accent:#bd945b;--ink:#20342b;--sub:#617269;--bg:#f5f7f2;--white:#fff;--stroke:#dce5dc;--soft:#ecf1ea;--shadow:0 12px 42px rgba(30,52,39,.075)}:root[data-theme=dark]{--pine:#0d271d;--pine2:#7cb999;--accent:#d7b47c;--ink:#e7ede7;--sub:#acbbb1;--bg:#111914;--white:#1c2821;--stroke:#3c4e40;--soft:#263629;--shadow:0 12px 42px #0005}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;background:var(--bg);line-height:1.5}button,input,select{font:inherit}button,a,select{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #c69e58;outline-offset:3px}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em;line-height:1.12}.skip{position:absolute;left:-9999px;z-index:999}.skip:focus{left:20px;top:20px;background:#fff;padding:15px}
.topbar{background:var(--white);border-bottom:1px solid var(--stroke);position:sticky;z-index:1300;top:0}.top-inner{max-width:1580px;padding:0 30px;min-height:75px;margin:auto;display:flex;align-items:center;gap:35px}.identity{display:flex;align-items:center;gap:12px;min-width:215px}.logo{background:var(--pine);color:#e1c58b;border-radius:13px;width:42px;height:42px;display:grid;place-items:center;font-size:17px;font-weight:900;letter-spacing:-.045em}.identity strong{display:block;letter-spacing:.05em;font-size:14px}.identity small{display:block;color:var(--sub);font-size:10px;letter-spacing:.03em;margin-top:3px}.desktop-nav{margin:auto;display:flex;align-items:center;gap:26px}.desktop-nav a{font-size:13px;color:var(--sub);font-weight:650;white-space:nowrap}.desktop-nav a.active{color:var(--pine2);border-bottom:2px solid var(--accent);padding-bottom:25px;margin-bottom:-25px}.header-tools{margin-left:auto;display:flex;gap:8px;align-items:center}.head-btn,.admin-link{background:var(--soft);border:1px solid var(--stroke);border-radius:10px;padding:9px 13px;font-size:12px;color:var(--ink)}
.intro{background:#153b2f;color:#fff;position:relative;isolation:isolate;overflow:hidden}.intro:before{content:'';pointer-events:none;position:absolute;z-index:-1;width:820px;height:820px;right:-280px;top:-390px;border:1px solid #ffffff19;border-radius:50%;box-shadow:0 0 0 100px #ffffff09,0 0 0 210px #ffffff06}.intro-inner{max-width:1580px;padding:69px 30px 64px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 315px;align-items:end;gap:80px}.eyebrow{font-weight:760;font-size:10px;letter-spacing:.14em;color:#c9dccb}.point,.pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:#9dcb96;margin-right:6px}.intro h1{font-size:clamp(35px,4vw,61px);max-width:930px;margin:18px 0 19px;font-weight:780}.intro h1 em{font-style:normal;color:#d9c396}.intro h1 .standard{display:block;color:#bdd2c1;font-size:.30em;letter-spacing:.08em;text-transform:uppercase;margin-top:15px;font-weight:750}.intro-desc{font-size:15.5px;line-height:1.72;color:#cfddd5;max-width:760px}.intro-links{display:flex;flex-wrap:wrap;gap:11px;margin-top:30px}.primary-button,.outline-button{display:inline-flex;align-items:center;gap:28px;border-radius:10px;padding:12px 18px;font-size:13px;font-weight:750}.primary-button{background:#d3b77e;color:#1d3227}.outline-button{border:1px solid #708b7d;color:#fff}.intro-side{border:1px solid #69827488;background:#ffffff0c;padding:24px;border-radius:16px}.intro-side strong{display:block;font-size:17px;line-height:1.53;margin:11px 0 17px}.source-kicker,.intro-side span{font-size:10px;color:#becdc2;letter-spacing:.065em}.intro-side span{display:block;line-height:1.6;margin:8px 0}.source-line{height:1px;background:#ffffff27;margin:22px 0 18px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);max-width:1580px;margin:0 auto;padding:0 30px;border-bottom:1px solid var(--stroke)}.stat{padding:25px 18px 24px;border-right:1px solid var(--stroke)}.stat:first-child{padding-left:0}.stat:last-child{border-right:0}.stat span,.stat small{display:block;color:var(--sub);font-size:12px}.stat strong{font-size:29px;font-weight:780;display:block;margin:5px 0;letter-spacing:-.06em;line-height:1.3}.stat .stat-status{font-size:18px;letter-spacing:0;padding-top:6px}
.map-head{max-width:1580px;padding:52px 30px 24px;margin:auto;display:flex;justify-content:space-between;gap:15px;align-items:end}.section-no{display:block;color:var(--pine2);font-weight:800;font-size:10px;letter-spacing:.13em;margin-bottom:13px}.map-head h2,.guide h2{font-size:clamp(23px,2.5vw,34px);margin:0 0 10px}.map-head p{font-size:13px;color:var(--sub);margin:0}.text-link{font-size:12px;color:var(--pine2);font-weight:800}
.gis-layout{display:grid;grid-template-columns:270px minmax(280px,1fr) 310px;gap:12px;max-width:1580px;padding:0 30px;margin:auto;align-items:start}.sidebar,.details{background:var(--white);border:1px solid var(--stroke);border-radius:15px;overflow:hidden;min-height:640px;box-shadow:var(--shadow)}.panel-block{padding:20px;border-bottom:1px solid var(--stroke)}.panel-block:last-child{border:0}.panel-title{display:flex;gap:11px;align-items:center;margin-bottom:18px}.ordinal{color:var(--accent);font-size:11px;letter-spacing:.1em;font-weight:900}.panel-title h3{font-size:15px;letter-spacing:-.015em;margin:0}.field-label{display:block;font-size:11px;color:var(--sub);font-weight:760;margin-bottom:9px}.autocomplete{position:relative}.autocomplete input,.coord-form input{width:100%;padding:11px 12px;background:var(--bg);color:var(--ink);border:1px solid var(--stroke);border-radius:9px;font-size:13px;outline:none}.autocomplete input:focus,.coord-form input:focus{border-color:#729f82}.suggestions{position:absolute;top:calc(100% + 5px);left:0;right:0;z-index:1000;max-height:290px;overflow:auto;border:1px solid var(--stroke);background:var(--white);box-shadow:0 13px 35px #0002;border-radius:10px}.suggestion{padding:11px 13px;border:0;border-bottom:1px solid var(--stroke);background:transparent;display:block;width:100%;text-align:left;color:var(--ink);font-size:12px}.suggestion:hover,.suggestion:focus{background:var(--soft)}.suggestion strong{display:block}.suggestion small{color:var(--sub);display:block;margin-top:2px}.suggestion-empty{padding:12px;font-size:12px;color:var(--sub)}.hint{font-size:11px;color:var(--sub);line-height:1.6;margin:9px 0 0}.search-choice{display:flex;justify-content:space-between;align-items:center;border:1px solid #a2c2ae;background:var(--soft);font-size:12px;border-radius:8px;padding:8px 10px;margin-top:11px}.search-choice button{background:transparent;border:0;color:var(--ink);font-size:22px;line-height:1}.coord-form{display:flex;gap:7px}.coord-form input{min-width:0;flex:1}.coord-form button{border:0;border-radius:9px;background:var(--pine);color:#fff;white-space:nowrap;padding:0 11px;font-size:11px;font-weight:750}.coords-message{font-size:12px;margin-top:10px}.coords-message.error{color:#ad4436}.legend{display:grid;grid-template-columns:1fr;gap:6px}.legend-item{display:flex;align-items:center;gap:10px;font-size:12px;padding:5px 2px;cursor:pointer}.legend-item input{accent-color:#307554}.legend-swatch{width:15px;height:15px;border-radius:4px;display:inline-block;border:1px solid #0001;flex-shrink:0}.legend-actions{display:flex;gap:13px;margin-top:14px}.legend-actions button{background:transparent;border:0;color:var(--pine2);font-size:11px;font-weight:750;padding:3px 0}.reference-link{display:block}.reference-link span{display:block;font-size:10px;color:var(--sub);margin-bottom:5px}.reference-link strong{font-size:12px;line-height:1.5}.reference-link strong span{display:inline;color:var(--accent);font-size:14px}
.map-shell{background:var(--white);border:1px solid var(--stroke);border-radius:15px;overflow:hidden;min-width:0;box-shadow:var(--shadow)}.map-tools,.map-footer{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:13px 16px;min-height:54px}.map-tools{border-bottom:1px solid var(--stroke)}.map-tools-title{font-size:11px;font-weight:770}.map-tools-right{display:flex;align-items:center;gap:9px}.map-tools-right label{font-size:11px;color:var(--sub)}.map-tools-right select,.map-tools-right button{border:1px solid var(--stroke);border-radius:8px;color:var(--ink);font-size:11px;background:var(--white);padding:7px 8px}.map-tools-right button{font-weight:700}.map-footer{border-top:1px solid var(--stroke);min-height:40px;padding:8px 15px;color:var(--sub);font-size:10px;flex-wrap:wrap}#map{height:686px;width:100%;background:#d9e6de}.leaflet-container{font-family:inherit}.leaflet-popup-content-wrapper{border-radius:10px}.leaflet-popup-content{font-size:12px}
.detail-top{padding:16px 19px;border-bottom:1px solid var(--stroke);display:flex;justify-content:space-between;align-items:center;gap:6px}.detail-top span{font-size:10px;color:var(--sub);font-weight:900;letter-spacing:.12em}.detail-top button{border:0;background:transparent;color:var(--pine2);font-size:11px;font-weight:750}.detail-body{padding:20px;max-height:738px;overflow-y:auto}.empty-detail{padding:48px 3px 25px;text-align:center}.empty-symbol{width:62px;height:62px;border:1px solid var(--stroke);border-radius:18px;display:grid;place-items:center;color:var(--pine2);font-size:38px;margin:0 auto 23px}.empty-detail h3{font-size:19px;margin-bottom:13px}.empty-detail p{font-size:13px;color:var(--sub);line-height:1.73}.empty-help{padding:13px;text-align:left;background:var(--soft);font-size:12px;border-left:3px solid var(--accent);border-radius:8px;margin-top:25px}.detail-label{font-size:10px;letter-spacing:.12em;font-weight:850;color:var(--sub)}.detail-kind{display:inline-flex;gap:7px;align-items:center;margin:12px 0;color:var(--ink);font-weight:850;font-size:12px}.detail-body h3{font-size:22px;margin:6px 0}.detail-sub{color:var(--sub);font-size:12px}.detail-kpis{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}.detail-kpis div{padding:13px;background:var(--soft);border-radius:9px;min-width:0}.detail-kpis span{display:block;font-size:10px;color:var(--sub);margin-bottom:5px}.detail-kpis strong{font-size:16px;overflow-wrap:anywhere}.detail-body h4{font-size:12px;letter-spacing:.02em;margin:21px 0 10px}.detail-body ul{padding-left:18px;font-size:12px;line-height:1.7;color:var(--sub)}.detail-body li{margin:7px 0}.attribute-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:11px}.attribute-table tr{border-bottom:1px solid var(--stroke)}.attribute-table th{text-align:left;color:var(--sub);font-weight:650;width:41%;padding:8px 8px 8px 0;overflow-wrap:anywhere}.attribute-table td{text-align:left;padding:8px 0;overflow-wrap:anywhere}.detail-warning{padding:12px;background:var(--soft);border-left:3px solid var(--accent);font-size:11px;color:var(--sub);border-radius:8px;margin-top:15px;line-height:1.6}.detail-link{display:inline-block;margin-top:16px;font-size:12px;font-weight:800;color:var(--pine2)}
.guide{max-width:1580px;padding:82px 30px 75px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 1.7fr;gap:65px;border-bottom:1px solid var(--stroke)}.guide-copy p{max-width:420px;font-size:14px;line-height:1.75;color:var(--sub)}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.guide-grid article{border-top:2px solid var(--accent);padding-top:22px}.guide-grid article span{font-size:11px;color:var(--pine2);font-weight:900;letter-spacing:.1em}.guide-grid h3{font-size:18px;margin:17px 0 10px}.guide-grid p{font-size:12px;color:var(--sub);line-height:1.65}.notice{background:var(--white);max-width:1520px;margin:0 auto 56px;padding:28px 30px;border:1px solid var(--stroke);border-left:4px solid var(--accent);border-radius:12px;display:flex;justify-content:space-between;gap:35px;align-items:center}.notice h3{font-size:17px}.notice p{font-size:12px;color:var(--sub);line-height:1.7;max-width:960px;margin:0}.notice a{font-size:12px;font-weight:800;color:var(--pine2);white-space:nowrap}
footer{background:#16372c;color:#fff}.footer-inner{max-width:1580px;margin:auto;padding:45px 30px;display:flex;justify-content:space-between;gap:30px}.footer-inner strong{font-size:15px}.footer-inner p{font-size:12px;max-width:670px;color:#bcd0c4;margin:8px 0}.footer-inner>div:last-child{display:flex;flex-direction:column;gap:9px;font-size:12px;color:#d3ddcf}#toast{position:fixed;z-index:3000;bottom:22px;left:50%;transform:translateX(-50%);background:#163b2e;color:white;border-radius:12px;padding:12px 20px;font-size:12px;box-shadow:0 15px 36px #0002;display:none;max-width:min(500px,95%)}
@media(max-width:1320px){.gis-layout{grid-template-columns:255px minmax(350px,1fr)}.details{grid-column:1/-1;min-height:unset}.detail-body{max-height:450px}.desktop-nav{gap:15px}.map-shell #map{height:630px}}
@media(max-width:900px){.desktop-nav{display:none}.intro-inner{grid-template-columns:1fr;gap:30px;padding:55px 24px}.intro-side{max-width:560px}.stats{padding:0 24px;grid-template-columns:1fr 1fr}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--stroke)}.stat:nth-child(3){padding-left:0}.map-head{padding:40px 24px 22px}.gis-layout{padding:0 24px;grid-template-columns:1fr}.sidebar{min-height:unset;display:grid;grid-template-columns:repeat(2,1fr)}.legend-block{grid-column:1/-1}.legend{grid-template-columns:repeat(4,1fr)}.map-shell #map{height:550px}.guide{padding:60px 24px;grid-template-columns:1fr;gap:30px}.notice{margin:0 24px 45px}.footer-inner{padding:40px 24px}}
@media(max-width:600px){.top-inner{padding:0 16px;min-height:66px}.identity{min-width:0}.identity small{font-size:9px}.identity strong{font-size:12px}.admin-link{padding:8px}.intro-inner{padding:45px 18px}.intro h1{font-size:34px}.intro-side{padding:17px}.stats{padding:0 18px}.stat{padding:17px 9px}.stat strong{font-size:24px}.map-head{display:block;padding:38px 18px 18px}.map-head-actions{margin-top:18px}.gis-layout{padding:0 10px;gap:9px}.sidebar{display:block}.sidebar .panel-block{padding:17px}.legend{grid-template-columns:1fr 1fr;gap:5px}.map-shell #map{height:58vh;min-height:420px}.map-tools{padding:11px;flex-wrap:wrap}.map-tools-right{width:100%;justify-content:space-between}.map-footer{padding:9px}.details{border-radius:12px}.detail-body{max-height:none}.guide{padding:55px 18px}.guide-grid{grid-template-columns:1fr}.guide-grid article{padding-top:17px}.notice{margin:0 12px 40px;padding:22px;display:block}.notice a{display:block;margin-top:15px}.footer-inner{padding:33px 20px;display:block}.footer-inner>div:last-child{margin-top:25px}}
@media print{.topbar,.sidebar,.map-tools-right,.header-tools,.detail-top button,.map-footer,footer,.intro-links{display:none!important}body{background:white}.intro{background:#fff;color:#222}.intro-desc{color:#333}.intro h1 em{color:#333}.gis-layout{display:block}.map-shell{width:100%}#map{height:480px}.details{page-break-before:always}.notice{margin:25px 0}}

/* Informasi lapangan dari field database SHP */
.field-facts{display:grid;grid-template-columns:1fr;gap:8px;margin:16px 0}.fact{display:flex;justify-content:space-between;gap:15px;padding:9px 12px;border:1px solid var(--line,#dce5dd);border-radius:9px;font-size:12px}.fact b{color:inherit}.fact span{text-align:right;overflow-wrap:anywhere}
