:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:#152a3a;background:#f4f7fa;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}input{outline:none}input:not([type=checkbox]):not([type=color]){background:#fff;border:1px solid #d7e2e9;border-radius:9px;padding:11px 12px;min-width:0;width:100%;color:#153044;font-size:13px;transition:border-color .15s,box-shadow .15s}input:focus-visible{border-color:#148d83!important;box-shadow:0 0 0 3px #c9eee7}h1,h2,h3,p{margin-top:0}h1{font-size:24px;letter-spacing:-.8px;line-height:1.17;margin-bottom:10px}h2{font-size:16px;letter-spacing:-.25px;margin-bottom:0}h3{font-size:15px;letter-spacing:-.2px;margin:0}p{line-height:1.55}.app-shell{min-height:100vh}.topbar{height:78px;background:#0b263c;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 28px;gap:15px;border-bottom:1px solid #1f455a}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.brand-symbol{width:43px;height:43px;border-radius:12px;background:#116d78;display:grid;place-items:center;color:#b4fff2;font-size:34px;line-height:1}.brand strong{display:block;font-size:20px;letter-spacing:-.5px}.brand small{display:block;color:#a8c0cd;font-size:11px;margin-top:2px}.top-actions,.toolbar-actions{display:flex;align-items:center;gap:8px}.save-status{font-size:12px;color:#bed2de;white-space:nowrap}.status-dot{display:inline-block;width:7px;height:7px;background:#41d7a7;border-radius:50%;margin-right:6px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:6px;border:1px solid transparent;border-radius:9px;padding:11px 14px;background:#fff;color:#153245;font-size:13px;font-weight:650;white-space:nowrap;transition:background .15s,transform .1s}.btn:active{transform:translateY(1px)}.btn-primary{background:#087968;color:#fff;border-color:#087968}.btn-primary:hover{background:#075e51}.btn-outline{background:#fff;color:#264153;border-color:#d8e4e9}.btn-outline:hover,.btn-muted:hover{background:#edf5f6}.topbar .btn-outline{background:#163b52;color:#fff;border-color:#477185}.topbar .btn-outline:hover{background:#24516a}.btn-muted{background:#edf2f6;border-color:#e5edf2;color:#4e6574}.btn-danger{background:#fff6f6;border-color:#f6c9ca;color:#be4547}.btn-small{padding:8px 12px;font-size:12px}.grow{flex:1}.button-row{display:flex;gap:8px;align-items:center}.workspace{display:grid;grid-template-columns:minmax(310px,370px) minmax(0,1fr);max-width:1850px;margin:auto;min-height:calc(100vh - 78px)}.sidebar{padding:25px 20px 30px 24px;background:#f9fbfc;border-right:1px solid #e0e9ee;overflow-y:auto}.side-heading p:not(.eyebrow){color:#6a7d8a;font-size:13px;margin-bottom:19px}.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:800;color:#118978;margin-bottom:6px}.panel{background:white;padding:18px;border:1px solid #e3ebef;border-radius:13px;box-shadow:0 3px 17px #13304405;margin-bottom:15px}.section-title{display:flex;align-items:center;gap:9px;margin-bottom:17px}.section-title-spread{justify-content:space-between}.title-inline{display:flex;align-items:center;gap:9px}.step{width:27px;height:27px;background:#e4f5ef;border:1px solid #d4f0e6;border-radius:8px;color:#09816b;font-weight:800;font-size:13px;display:grid;place-items:center}.panel label,.modal-card label{display:block;font-size:12px;color:#425b6a;font-weight:700;margin:0 0 7px}.panel input,.modal-card input{margin-bottom:12px}.optional{font-weight:400;color:#95a5ae}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field-hint{font-size:11px;color:#8295a0;margin:0 0 14px}.panel-desc{font-size:12px;color:#778e9b;margin-bottom:14px}.count-pill{color:#087968;background:#e3f5f0;border-radius:50px;padding:5px 9px;font-weight:700;font-size:10px;white-space:nowrap}.search-row{margin-top:-5px}.zone-list{max-height:240px;overflow:auto}.zone-item{display:flex;gap:10px;padding:11px 2px;border-bottom:1px solid #edf2f5;align-items:center}.zone-item:last-child{border-bottom:0}.zone-swatch{height:11px;width:11px;border-radius:50%;flex:none}.zone-info{flex:1;min-width:0}.zone-info strong{font-size:12px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zone-info small{color:#8396a1;font-size:11px;display:block;margin-top:3px}.zone-item input{width:16px;height:16px;accent-color:#168a75;cursor:pointer;margin:0}.zone-item.off{opacity:.6}.empty-note{font-size:12px;color:#91a0aa;padding:12px 0}.main-content{padding:23px 28px 34px;min-width:0}.map-toolbar,.results-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.map-toolbar h2{font-size:20px}.map-container{position:relative;height:min(57vh,570px);min-height:340px;border-radius:15px;overflow:hidden;border:1px solid #dce6e9;box-shadow:0 8px 35px #153b4d12;background:#dceadf}#map{height:100%;width:100%;z-index:0}.map-hint{position:absolute;z-index:400;bottom:24px;left:50%;transform:translateX(-50%);background:#fff;padding:10px 15px;border-radius:50px;box-shadow:0 5px 18px #0015;font-size:11px;color:#5b737e;white-space:nowrap;pointer-events:none}.map-error{position:absolute;inset:0;background:#f1f5f7;display:grid;place-items:center;padding:30px;text-align:center;color:#526b78;z-index:600}.map-legend{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:13px 0 29px;font-size:11px;color:#607786}.map-legend span{display:flex;align-items:center;gap:7px}.legend-dot{height:10px;width:10px;border-radius:100%}.legend-dot.blue{background:#236dd3}.legend-dot.green{background:#16ab7b}.legend-dot.red{background:#e25150}.legend-circle{width:14px;height:14px;border-radius:50%;border:2px dashed #159a8a;background:#159a8a22}.results-heading h2{font-size:18px}.table-wrapper{background:#fff;border:1px solid #e1e9ef;border-radius:12px;overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:12px;min-width:680px}thead{background:#f1f5f8}th{color:#667d8c;font-size:11px;font-weight:700;padding:13px 14px}td{padding:13px 14px;border-top:1px solid #ecf0f3;color:#375162;vertical-align:middle}td strong{color:#253e4e}td small{display:block;color:#8296a1;margin-top:3px}.empty-table td{text-align:center;color:#8c9da9;padding:27px}.pill{display:inline-block;border-radius:50px;padding:5px 8px;font-size:10px;font-weight:750}.pill-in{color:#078265;background:#e0f7ee}.pill-out{color:#c04f4f;background:#ffeded}.pill-muted{color:#6e7f8e;background:#edf1f3}.result-box{margin-top:16px;border-radius:10px;padding:14px;background:#e6f8f1;border:1px solid #bce8d6;color:#0c644e}.result-box.outside{background:#fff1ef;border-color:#f6ceca;color:#aa3f3c}.result-box.nozone{background:#f4f6f8;border-color:#dfe6e9;color:#61727f}.result-box .result-head{font-weight:800;font-size:14px;margin-bottom:5px}.result-box p{font-size:12px;margin-bottom:5px}.result-box small{font-size:11px;opacity:.8}.hidden{display:none!important}.modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px}.modal-backdrop{position:absolute;inset:0;background:#092035aa;backdrop-filter:blur(3px)}.modal-card{position:relative;background:#fff;border-radius:17px;width:min(100%,960px);max-height:calc(100vh - 36px);overflow-y:auto;box-shadow:0 20px 80px #031c2f55}.modal-header{padding:23px 25px 17px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf1f4}.modal-header h2{font-size:23px}.icon-btn{width:33px;height:33px;background:#eef3f6;border:0;border-radius:9px;font-size:25px;line-height:1;color:#49616f}.admin-alert{margin:18px 25px 0;background:#fff6e7;border:1px solid #f5dfab;color:#83602b;border-radius:9px;font-size:12px;line-height:1.55;padding:11px 13px}.admin-content{display:grid;grid-template-columns:1fr 1.14fr;gap:24px;padding:24px 25px 28px}.admin-form-col{border-right:1px solid #e7eef2;padding-right:25px}.admin-card input[type=color]{width:100%;height:44px;padding:4px;border:1px solid #d7e2e9;border-radius:9px;cursor:pointer}.active-toggle{padding-top:2px}.admin-card .toggle-row{font-size:11px;font-weight:500;display:flex;align-items:center;gap:7px;margin:0}.admin-card .toggle-row input{margin:0;width:15px;height:15px;accent-color:#0a8d72}.admin-zone-list{max-height:290px;overflow:auto;margin-bottom:18px}.admin-zone{display:flex;align-items:center;gap:9px;border-bottom:1px solid #ebf0f3;padding:11px 0}.admin-zone .zone-info strong{font-size:13px}.admin-zone-actions{display:flex;gap:5px}.admin-zone-actions button{background:#eff5f6;border:0;border-radius:6px;padding:7px 9px;color:#3d6673;font-size:11px}.admin-zone-actions button.delete{background:#fff0ef;color:#c45050}.admin-tools{background:#f8fafb;border-radius:12px;border:1px solid #e6edf1;padding:16px}.admin-tools h3{margin-bottom:13px}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.tool-grid .btn{font-size:11px;padding:10px 8px}.admin-tools .btn-danger{width:100%;margin-bottom:12px}.admin-tools .field-hint{margin:0}.toast{position:fixed;bottom:24px;right:24px;z-index:2000;background:#173e50;color:#fff;padding:13px 18px;border-radius:11px;box-shadow:0 12px 30px #173e5030;font-size:13px;max-width:min(440px,90vw)}.leaflet-container{font-family:inherit}.leaflet-popup-content{font-family:inherit;font-size:12px;line-height:1.5}.leaflet-popup-content strong{font-size:13px}.zone-popup-meta{color:#5f7380}.dot-marker{border:3px solid #fff;border-radius:50%;box-shadow:0 2px 9px #122e4970;background:#2073dc;width:16px;height:16px}.test-dot{background:#19a778}.test-dot.out{background:#de5650}.test-dot.na{background:#7f8a93}@media(max-width:1000px){.workspace{grid-template-columns:320px minmax(0,1fr)}.main-content{padding:20px}.sidebar{padding:20px 14px}.map-container{min-height:330px}.map-legend{gap:10px}}@media(max-width:760px){.topbar{height:68px;padding:0 15px}.brand strong{font-size:18px}.brand small{font-size:10px}.save-status{display:none}.workspace{display:flex;flex-direction:column}.sidebar{border-right:0;padding:20px 15px 0}.side-heading{margin-bottom:15px}.side-heading h1{font-size:23px}.panel{margin-bottom:12px}.zone-list{max-height:185px}.main-content{padding:17px 15px 30px}.map-container{height:410px;min-height:320px}.map-legend{margin-bottom:22px}.admin-content{grid-template-columns:1fr}.admin-form-col{padding-right:0;border-right:0;border-bottom:1px solid #e7eef2;padding-bottom:22px}.modal{padding:8px}.modal-card{max-height:calc(100vh - 16px)}.admin-content{padding:18px}.admin-alert{margin:16px 18px 0}.modal-header{padding:18px}.map-toolbar,.results-heading{align-items:flex-start;flex-direction:column}.map-hint{bottom:12px}}@media(max-width:390px){.topbar .btn-small{font-size:11px;padding:8px}.button-row .btn{font-size:12px}.tool-grid{grid-template-columns:1fr}}

/* Penyesuaian regional Indonesia dan kontrol yang tersedia bagi seluruh pengguna. */
.full-width{width:100%;margin-top:12px}
.map-filters{display:grid;grid-template-columns:minmax(190px,270px) minmax(240px,1fr);gap:12px;margin-bottom:12px}
.map-filters label{display:block;font-size:11px;font-weight:750;color:#5c7480;margin-bottom:5px}
.map-filters select,.map-filters input{border:1px solid #d7e2e9;background:#fff;border-radius:9px;color:#153044;padding:10px 11px;font-size:13px;height:40px;width:100%;min-width:0}
.map-filters select:focus,.map-filters input:focus{border-color:#148d83;outline:2px solid #c9eee7}
.search-controls{display:flex;gap:7px}.search-controls .btn{padding:9px 14px;height:40px}
.map-export-hint{font-size:11px;color:#607786;margin:10px 0 0;line-height:1.5}
.map-export-hint strong{color:#087968}.top-actions .btn{flex-shrink:0}
@media(max-width:980px){.toolbar-actions{flex-wrap:wrap}.map-filters{grid-template-columns:1fr}}
@media(max-width:760px){.map-toolbar .toolbar-actions{width:100%}.map-toolbar .btn{flex:1}.map-filters{grid-template-columns:1fr}.save-status{display:none}.top-actions{margin-left:auto}}

/* RadiusCheck v3: akun, ruang kerja dan galeri online */
.cloud-panel{background:linear-gradient(145deg,#f7fbff 0%,#fff 70%)}
.cloud-panel .cloud-auth{display:flex;flex-direction:column;gap:5px}
.cloud-auth label{margin-top:6px}
.cloud-panel .button-row{margin-top:8px}
.account-email{font-size:12px;overflow-wrap:anywhere;font-weight:700;color:#19455c}
.scope-switch{display:flex;gap:4px;background:#e8f1f5;border-radius:10px;padding:4px;margin-top:12px}
.scope-switch button{flex:1;background:transparent;border:0;border-radius:7px;padding:9px 4px;color:#44657b;cursor:pointer;font-weight:700;font-size:12px}
.scope-switch button.scope-active{background:#fff;color:#084a6b;box-shadow:0 1px 4px #11304424}
.gallery-panel{margin:14px 0}
.gallery-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}
.gallery-item{border:1px solid #dce7ec;border-radius:10px;padding:12px;min-width:0;background:#fff}
.gallery-item strong{display:block;overflow-wrap:anywhere;font-size:13px}
.gallery-item small{display:block;color:#67808c;margin:5px 0 9px}
.gallery-actions{display:flex;gap:6px;flex-wrap:wrap}
.gallery-actions button{padding:6px 9px;border-radius:7px;border:1px solid #c5d6df;background:#fff;cursor:pointer;font-weight:600}
.gallery-actions .gallery-delete{color:#b53c42}
.cloud-tag{color:#0b7284;font-size:11px}
.cloud-tag.private{color:#6b7280}
#zoneVisibilityRow{margin-bottom:12px}
.cloud-busy{opacity:.65;pointer-events:none}
@media(max-width:640px){.gallery-list{grid-template-columns:1fr}.scope-switch button{font-size:11px}.toolbar-actions{flex-wrap:wrap}}

/* v4.3 Google Maps / DMS paste option */
.gmaps-input{background:#f4faf9;border:1px solid #cfebe4;border-radius:11px;padding:12px 12px 8px;margin:0 0 13px}
.gmaps-input label{color:#116d65}
.gmaps-input textarea{display:block;width:100%;resize:vertical;min-height:68px;max-height:180px;background:white;border:1px solid #cfe0df;border-radius:9px;padding:10px 11px;font:inherit;font-size:12px;line-height:1.55;color:#193a45;margin-bottom:9px;overflow-wrap:anywhere}
.gmaps-input textarea:focus-visible{outline:2px solid #168c82;outline-offset:1px}
.gmaps-input .btn{width:100%;font-size:12px;margin-bottom:10px}
.gmaps-input .field-hint{line-height:1.45;margin-bottom:3px}
.gmaps-input .coordinate-feedback{color:#087968;background:#e7f8f0;padding:9px 10px;border-radius:7px;margin:0 0 9px;font-size:11px}
.gmaps-input .coordinate-feedback.warning{color:#92471d;background:#fff2de}
.gmaps-input .coordinate-feedback.error{color:#a73939;background:#ffecea}

/* RadiusCheck v4.4 — garis penghubung dan jarak ke pusat terdekat */
.distance-detail-grid{display:grid;grid-template-columns:1fr;gap:5px;margin:12px 0 10px;padding:11px;background:#ffffffcf;border:1px solid #dce9ed;border-radius:9px;color:#254252}
.distance-detail{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:12px}
.distance-detail span{color:#587082;line-height:1.3}
.distance-detail strong{font-size:12px;font-weight:750;color:#143c5a;text-align:right;overflow-wrap:anywhere}
.result-box .distance-method{display:block;margin-top:8px}
.focus-distance{width:100%;margin-top:3px;font-size:12px!important}
.test-popup{min-width:230px;max-width:315px}
.test-popup strong{display:block;font-size:14px;margin-bottom:3px}
.test-popup .test-popup-status{display:inline-block;font-size:11px;font-weight:800;color:#c14e4e;background:#fff0ed;border-radius:5px;padding:3px 7px;margin:2px 0 5px}
.test-popup .test-popup-status.in{color:#087c65;background:#e5f9f0}
.test-popup .popup-coord{color:#62778a;font-size:11px;margin:2px 0 6px}
.test-popup .distance-detail-grid{margin:7px 0 6px;padding:9px}
.test-popup small{color:#607786;font-size:10px}
.leaflet-tooltip.distance-line-label{background:#fff;border:1px solid #b6cee1;border-radius:20px;padding:5px 9px;color:#175e96;font-size:12px;font-weight:800;box-shadow:0 2px 9px #15344d26;white-space:nowrap}
.leaflet-tooltip.distance-line-label:before{display:none}
.legend-line{width:24px;height:0;border-top:3px dashed #175e96}
@media(max-width:760px){.test-popup{min-width:195px}.distance-detail{font-size:11px}}

/* RadiusCheck v4.5 — popup ringkas dan panel pengaturan radius cepat */
.leaflet-popup.radiuscheck-compact-popup .leaflet-popup-content-wrapper{border-radius:11px;box-shadow:0 6px 22px #193c4d33}
.leaflet-popup.radiuscheck-compact-popup .leaflet-popup-content{width:202px!important;margin:10px 12px!important;line-height:1.34}
.radiuscheck-compact-popup .test-popup{min-width:0;max-width:202px;width:202px}
.radiuscheck-compact-popup .popup-title{font-size:12px;font-weight:800;color:#183649;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;padding-right:8px}
.radiuscheck-compact-popup .test-popup-status{display:inline-block;font-size:10px;line-height:1.15;margin:5px 0;background:#fff0ed;color:#bd4f4b;padding:3px 6px;border-radius:5px;font-weight:800}
.radiuscheck-compact-popup .test-popup-status.in{background:#e5f9f0;color:#087c65}
.radiuscheck-compact-popup .popup-distance{display:flex;align-items:baseline;gap:6px;margin:2px 0 1px}
.radiuscheck-compact-popup .popup-distance strong{font-size:17px;color:#153f5e;letter-spacing:-.3px;white-space:nowrap}
.radiuscheck-compact-popup .popup-distance span{font-size:10px;color:#688090;white-space:nowrap}
.radiuscheck-compact-popup .popup-site{color:#26495c;font-size:10px;font-weight:700;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;margin:2px 0 3px}
.radiuscheck-compact-popup .popup-radius{color:#647d8a;font-size:10px;border-top:1px solid #edf1f3;padding-top:5px;white-space:nowrap}
.btn-radius{background:#e9f6f1;border-color:#9fd2c2;color:#086b58}
.btn-radius:hover,.btn-radius.is-open{background:#d4eee4;border-color:#72bda7}
.quick-radius-panel{background:#fff;border:1px solid #c8e3d8;box-shadow:0 5px 20px #134b3d0c;border-radius:13px;padding:13px 16px;margin:0 0 13px}
.quick-radius-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:11px}
.quick-radius-head strong{font-size:14px;color:#143f37;display:block}
.quick-radius-head span{font-size:11px;color:#6e8390;display:block;margin-top:2px}
.quick-radius-head .icon-btn{width:28px;height:28px;font-size:20px;flex-shrink:0}
.quick-radius-main{display:grid;grid-template-columns:minmax(175px,1.3fr) minmax(160px,1fr) 115px;gap:14px;align-items:start}
.quick-radius-panel label{display:block;font-size:11px;font-weight:750;color:#506b75;margin:0 0 6px}
.quick-radius-panel select,.quick-radius-panel input[type=number]{width:100%;border:1px solid #d2e1e5;border-radius:8px;background:#fff;padding:9px;font-size:12px;color:#17394a;min-height:37px;min-width:0}
.quick-radius-panel .quick-radius-label{display:flex;align-items:center;justify-content:space-between;gap:10px}
.quick-radius-label output,.zone-radius-head output{font-weight:800;color:#097b69;font-size:12px;white-space:nowrap}
.quick-radius-panel input[type=range],.zone-radius-editor input[type=range]{display:block;width:100%;height:19px;padding:0;margin:4px 0 0;border:0;background:transparent;accent-color:#0b8875;cursor:pointer}
.quick-radius-panel .range-endpoints{display:flex;justify-content:space-between;color:#91a2ac;font-size:10px;margin-top:-1px}
.radius-presets{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}
.radius-presets button{border:1px solid #cfdee3;background:#f5f9fa;color:#365768;font-size:11px;font-weight:700;padding:6px 10px;border-radius:7px;cursor:pointer}
.radius-presets button.is-selected{background:#dff3eb;border-color:#0a9076;color:#08735d}
.radius-presets button:hover{background:#e7f2ee}
.quick-radius-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #edf2f4;margin-top:10px;padding-top:10px}
.quick-radius-footer p{font-size:11px;color:#6c8290;margin:0;line-height:1.35}
.quick-radius-footer .btn{flex-shrink:0}
.zone-radius-editor{padding:12px;border-radius:10px;background:#f4faf8;border:1px solid #d2eae1;margin-bottom:13px}
.zone-radius-head{display:flex;justify-content:space-between;gap:12px;align-items:center}
.zone-radius-editor .zone-radius-head label{margin-bottom:7px}
.zone-radius-editor #zoneRadius{margin-bottom:3px}
.zone-radius-editor .radius-presets{margin:8px 0}
.zone-radius-editor .field-hint{margin:5px 0 0;line-height:1.45}
@media(max-width:1020px){.quick-radius-main{grid-template-columns:minmax(175px,1fr) minmax(160px,1fr)}.quick-radius-number{grid-column:span 2;max-width:160px}}
@media(max-width:640px){.quick-radius-panel{padding:12px}.quick-radius-main{grid-template-columns:1fr}.quick-radius-number{grid-column:auto;max-width:none}.quick-radius-footer{align-items:stretch;flex-direction:column}.quick-radius-footer .btn{width:100%}.quick-radius-panel .radius-presets button{flex:1}}

/* v4.6 — label titik uji 1 baris: tidak membuka popup otomatis */
.leaflet-tooltip.radiuscheck-mini-label{
  background:rgba(255,255,255,.94);border:1px solid #d7e4ea;
  border-radius:7px;box-shadow:0 2px 7px rgba(16,43,58,.16);
  padding:4px 7px;color:#173b4e;font-size:10px;font-weight:800;
  max-width:155px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;
  pointer-events:none;line-height:1.2;
}
.leaflet-tooltip-right.radiuscheck-mini-label:before{border-right-color:#d7e4ea}
.leaflet-popup.radiuscheck-tiny-popup .leaflet-popup-content-wrapper{border-radius:9px;box-shadow:0 5px 18px rgba(12,41,55,.18)}
.leaflet-popup.radiuscheck-tiny-popup .leaflet-popup-content{width:160px!important;margin:9px 11px!important;line-height:1.3}
.radiuscheck-tiny-popup .minimal-test-popup{width:160px;max-width:160px;min-width:0;font-size:10px}
.radiuscheck-tiny-popup .minimal-test-popup strong{display:block;color:#193a4d;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:8px}
.radiuscheck-tiny-popup .minimal-test-distance{color:#17476a;font-size:16px;font-weight:800;margin:3px 0}
.radiuscheck-tiny-popup .minimal-test-distance span{display:block;color:#667c89;font-size:10px;font-weight:600}
.radiuscheck-tiny-popup .minimal-test-site{color:#385c6c;font-size:10px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
.radiuscheck-tiny-popup .minimal-test-popup small{display:block;margin-top:4px;color:#82929b;font-size:9px}
@media(max-width:500px){.leaflet-tooltip.radiuscheck-mini-label{max-width:114px;font-size:9px;padding:3px 5px}}

/* v4.7 - manual confirmation for location-name Google Maps URLs */
.coordinate-candidates{border:1px solid #e7c77c;background:#fff8e9;border-radius:10px;padding:11px;margin:9px 0 12px;max-height:265px;overflow-y:auto}
.coordinate-candidates .candidate-title{font-size:12px;font-weight:800;color:#7b511c;margin:0 0 5px}
.coordinate-candidates .candidate-explain{font-size:11px;line-height:1.55;color:#80663f;margin:0 0 9px}
.coordinate-candidate{background:#fff;border:1px solid #eadac0;border-radius:8px;padding:9px 10px;margin:7px 0}
.coordinate-candidate strong{display:block;font-size:11px;color:#29495a;margin-bottom:4px}
.coordinate-candidate small{display:block;color:#6e7d85;font-size:10px;line-height:1.35;overflow-wrap:anywhere}
.coordinate-candidate .btn{margin:7px 0 0!important;white-space:normal;text-align:center;font-size:11px}
.coordinate-candidates .maps-original{font-size:11px;color:#0a6a89;word-break:break-word;display:inline-block;margin:4px 0}

/* v4.8: keep preview and confirmation controls readable in narrow sidebar */
.coordinate-candidate .candidate-buttons{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.coordinate-candidate .candidate-buttons .btn{flex:1 1 100px;min-width:0;margin:0!important;padding:8px 7px!important;font-size:10px}

/* v4.9 — Pengaturan radius yang memberi umpan balik jelas. */
.quick-radius-state{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px;padding:9px 11px;background:#f4f8fb;border-radius:9px;border:1px solid #dce8ec}
.quick-radius-state span{font-size:11px;font-weight:800;padding:4px 7px;border-radius:6px;white-space:nowrap}
.quick-radius-state .saved-radius{background:#e6edf2;color:#3e5b6e}
.quick-radius-state .draft-radius{background:#e9f0f4;color:#476a79}
.quick-radius-state .draft-radius.is-dirty{background:#ffedd6;color:#a14d04}
.quick-radius-state button:first-of-type{margin-left:auto}
.quick-radius-footer p[data-status=error]{color:#af3031;font-weight:700}
.quick-radius-footer p[data-status=success]{color:#0a795c;font-weight:700}
.quick-radius-footer p[data-status=warning]{color:#975710;font-weight:700}
.quick-radius-footer p[data-status=info]{color:#416b87}
.quick-radius-footer .btn:disabled{opacity:.52;cursor:not-allowed}
@media(max-width:680px){.quick-radius-state button:first-of-type{margin-left:0}.quick-radius-state button{flex:1 1 125px}}

/* RadiusCheck v5.1 — pemilihan banyak site, aksi hapus aman, fokus otomatis radius terbaru */
.admin-bulk-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:11px;border:1px solid #dae7ec;border-radius:11px;background:#f6fafb;margin:10px 0 8px}
.admin-bulk-buttons{display:flex;flex:1 1 210px;gap:6px;flex-wrap:wrap}
.admin-bulk-toolbar .btn{font-size:11px;padding:8px 9px}
.admin-bulk-count{font-size:11px;font-weight:800;color:#36576c}
.admin-bulk-hint{flex:1 1 100%;font-size:10px;line-height:1.5;color:#607888}
.admin-bulk-toolbar #bulkDeleteSelected{background:#fff0ef;color:#b62e34;border:1px solid #f6c5c4;font-weight:800}
.admin-bulk-toolbar #bulkDeleteSelected:not(:disabled):hover{background:#ffe1df}
.admin-bulk-toolbar .btn:disabled{opacity:.48;cursor:not-allowed}
.admin-zone .admin-select{flex:0 0 auto;width:17px;height:17px;margin:0 2px 0 0;accent-color:#0e9777;cursor:pointer}
.admin-zone .admin-select-locked{width:19px;font-size:13px;color:#80909b;opacity:.7;flex:0 0 auto}
.admin-zone.selected-for-delete{background:#f2faf7;border-radius:7px}
.admin-zone .zone-info{min-width:0;flex:1 1 auto}
.admin-zone .zone-info strong{overflow-wrap:anywhere}
.admin-zone .zone-info small b{color:#087d65}
.admin-zone .admin-zone-actions{flex:0 0 auto}
.admin-zone-actions button[data-show-area]{color:#12617d;background:#e5f3fc}
.last-radius-banner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:0 0 13px;padding:12px 14px;border-radius:12px;background:#eaf8f2;border:1px solid #b4decb;color:#0b6650}
.last-radius-banner span{font-size:12px;font-weight:800;min-width:0;overflow-wrap:anywhere}
.last-radius-banner .btn{border-color:#81bea8;color:#0b6650;background:#fff;flex:0 0 auto}
@media(max-width:760px){.admin-bulk-toolbar{align-items:stretch}.admin-bulk-buttons{flex:1 1 100%}.admin-bulk-toolbar #bulkDeleteSelected{flex:1}.admin-zone{gap:6px}.admin-zone-actions button{padding:7px 6px}.last-radius-banner .btn{width:100%}}

/* v5.3: titik pusat tanpa pengaturan radius pada formulir Kelola Area */
.center-only-note{display:flex;flex-direction:column;gap:5px;background:#ecf8f5;border:1px solid #c4e8dd;border-radius:10px;padding:11px 12px;margin:12px 0;font-size:12px;line-height:1.5;color:#275d51}
.center-only-note strong{font-size:12px;color:#126b5c}
.center-only-note b{color:#08755d}
