/* Number 7 geo-location UI. Feature-scoped: no shared dashboard selectors. */
.ccs-geo-picker{--geo-ink:#14332d;--geo-muted:#667b76;--geo-line:#dbe7e3;--geo-soft:#f5faf8;--geo-brand:#087f6c;--geo-brand-dark:#056656;display:grid;gap:16px;margin-top:12px}
.ccs-geo-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(180px,.65fr);gap:14px}
.ccs-geo-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}
.ccs-geo-input-row input{min-width:0}
.ccs-geo-find{white-space:nowrap;padding-inline:16px}
.ccs-geo-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.ccs-geo-current,.ccs-geo-privacy{min-height:72px;border:1px solid var(--geo-line);border-radius:14px;background:#fff;display:flex;align-items:center;gap:12px;padding:12px 14px;text-align:left;color:var(--geo-ink)}
button.ccs-geo-current{cursor:pointer;font:inherit;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
button.ccs-geo-current:hover{border-color:#8dc8ba;box-shadow:0 8px 24px rgba(8,127,108,.08);transform:translateY(-1px)}
button.ccs-geo-current:disabled{opacity:.64;cursor:wait;transform:none}
.ccs-geo-current-icon{width:38px;height:38px;border-radius:50%;background:#e8f7f2;color:var(--geo-brand);display:grid;place-items:center;font-size:22px;flex:0 0 auto}
.ccs-geo-current strong,.ccs-geo-privacy strong{display:block;font-size:13px;line-height:1.25}
.ccs-geo-current small,.ccs-geo-privacy small{display:block;margin-top:3px;color:var(--geo-muted);font-size:11px;line-height:1.4}
.ccs-geo-privacy>span{width:34px;height:34px;border-radius:10px;background:var(--geo-soft);display:grid;place-items:center;color:var(--geo-brand);font-size:17px;flex:0 0 auto}
.ccs-geo-privacy p{margin:0}
.ccs-geo-map-wrap{position:relative;border:1px solid var(--geo-line);border-radius:18px;overflow:hidden;background:#edf4f1;box-shadow:0 10px 30px rgba(23,67,57,.06)}
.ccs-geo-map{height:300px;width:100%;z-index:1}
.ccs-geo-picker-compact .ccs-geo-map{height:250px}
.ccs-geo-map-hint{position:absolute;z-index:500;left:12px;bottom:12px;max-width:calc(100% - 24px);display:flex;align-items:center;gap:7px;padding:8px 11px;border-radius:10px;background:rgba(255,255,255,.94);box-shadow:0 5px 18px rgba(15,48,40,.14);font-size:11px;font-weight:700;color:#365c53;pointer-events:none}
.ccs-geo-status{display:flex;align-items:center;gap:8px;min-height:22px;color:var(--geo-muted);font-size:12px;font-weight:600}
.ccs-geo-status-dot{width:8px;height:8px;border-radius:50%;background:#a8bbb6;flex:0 0 auto}
.ccs-geo-status.is-loading .ccs-geo-status-dot{background:#d7a31b;animation:ccsGeoPulse .9s infinite alternate}
.ccs-geo-status.is-success .ccs-geo-status-dot{background:#15946f}
.ccs-geo-status.is-error{color:#a03f36}
.ccs-geo-status.is-error .ccs-geo-status-dot{background:#c65349}
.ccs-geo-radius{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--geo-line);border-radius:14px;background:var(--geo-soft);padding:14px 16px}
.ccs-geo-radius label{display:block;font-size:13px;font-weight:800;color:var(--geo-ink)}
.ccs-geo-radius small{display:block;margin-top:3px;color:var(--geo-muted);font-size:11px;line-height:1.4}
.ccs-geo-radius select{width:auto;min-width:125px;background:#fff}
.ccs-geo-marker{width:28px;height:28px;border:4px solid #fff;border-radius:50% 50% 50% 0;background:var(--geo-brand);box-shadow:0 4px 13px rgba(3,73,62,.34);transform:rotate(-45deg);position:relative}
.ccs-geo-marker:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#fff;left:6.5px;top:6.5px}
.ccs-geo-public-map{margin-top:18px}
.ccs-geo-public-map .ccs-geo-map{height:260px}
.ccs-geo-public-caption{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:9px;font-size:11px;color:var(--geo-muted)}
.ccs-geo-public-caption strong{color:var(--geo-ink)}
.ccs-distance-badge{display:inline-flex;align-items:center;gap:5px;font-weight:800;color:#087f6c}
.leaflet-control-attribution{font-size:9px!important}
@keyframes ccsGeoPulse{from{opacity:.45;transform:scale(.8)}to{opacity:1;transform:scale(1.15)}}
@media(max-width:720px){.ccs-geo-grid,.ccs-geo-actions{grid-template-columns:1fr}.ccs-geo-input-row{grid-template-columns:1fr}.ccs-geo-find{width:100%}.ccs-geo-map{height:260px}.ccs-geo-radius{align-items:flex-start;flex-direction:column}.ccs-geo-radius select{width:100%}.ccs-geo-public-caption{align-items:flex-start;flex-direction:column}}
.ccs-geo-legacy-areas{border-top:1px solid var(--geo-line,#dbe7e3);padding-top:12px;margin-top:2px}
.ccs-geo-legacy-areas summary{cursor:pointer;color:#47655e;font-size:11px;font-weight:800;list-style:none}
.ccs-geo-legacy-areas summary::-webkit-details-marker{display:none}
.ccs-geo-legacy-areas summary:before{content:"+";display:inline-grid;place-items:center;width:20px;height:20px;margin-right:7px;border-radius:6px;background:#eef7f4;color:#087f6c}
.ccs-geo-legacy-areas[open] summary:before{content:"−"}
.ccs-geo-legacy-areas .field{margin-top:12px}
.ccs-geo-job-privacy{margin:8px 2px 0!important}
