.ji-report-map{grid-column:1/-1;margin:8px 0 24px;border:1px solid #d9dde5;border-radius:18px;padding:18px;background:#fff}.ji-report-map__head h2{margin:.25rem 0 .35rem;font-size:1.35rem}.ji-report-map__head p{margin:0 0 14px;color:#4b5563}.ji-report-map__canvas{height:390px;border-radius:14px;overflow:hidden;background:#eef1f5;border:1px solid #d9dde5}.ji-report-map__result,.ji-report-map__duplicate{display:flex;gap:7px;flex-direction:column;margin-top:12px;padding:12px 14px;border-radius:12px;background:#f5f7fa}.ji-report-map__result span,.ji-report-map__duplicate span,.ji-report-map__privacy{font-size:.9rem;color:#596273}.ji-report-map__duplicate{background:#fff7df;border:1px solid #ead48b}.ji-report-map__privacy{margin:12px 2px 0}.ji-report-map.is-map-error .ji-report-map__canvas{display:none}@media(max-width:700px){.ji-report-map{padding:12px}.ji-report-map__canvas{height:320px}}
.ji-report-map.is-map-ready .ji-report-map__result{background:#eef8f2;border:1px solid #b9dfc8}

.ji-jjvv-form__field--map{grid-column:1/-1}
.ji-jjvv-form__field--map .ji-report-map{margin:10px 0 0;border:0;padding:0;background:transparent}
.ji-jjvv-form__field--map .ji-report-map__head{margin-bottom:12px}

.ji-report-location-method{margin-bottom:16px}.ji-report-location-method h2{margin:.25rem 0 .25rem;font-size:1.25rem}.ji-report-location-method>p{margin:0 0 10px;color:#596273}.ji-report-location-method__choices{display:flex;gap:10px;flex-wrap:wrap}.ji-report-location-method__choices label{cursor:pointer}.ji-report-location-method__choices input{position:absolute;opacity:0;pointer-events:none}.ji-report-location-method__choices span{display:block;padding:10px 15px;border:1px solid #cbd8f7;border-radius:999px;background:#f5f8ff;font-weight:700}.ji-report-location-method__choices input:checked+span{background:#2457e6;color:#fff;border-color:#2457e6}.ji-report-map__head h3{margin:.2rem 0 .35rem;font-size:1.18rem}.ji-report-map__address{display:flex;flex-direction:column;gap:5px;margin-top:12px;padding:12px 14px;border-radius:12px;background:#eef8f2;border:1px solid #b9dfc8}.ji-report-map__address span{font-size:1rem;font-weight:650;color:#17345e}.ji-report-map__address small{color:#596273}.ji-report-map__duplicate[hidden],.ji-report-map__address[hidden],[data-ji-location-map-panel][hidden],[data-ji-location-text-panel][hidden]{display:none!important}@media(max-width:700px){.ji-report-location-method__choices{display:grid;grid-template-columns:1fr 1fr}.ji-report-location-method__choices span{text-align:center;padding:10px 8px}}

/* v19.51.0 — asociación asistida de reportes cercanos */
.ji-report-map__duplicate-question{font-weight:750;color:#3d4654}.ji-report-map__duplicate-actions{display:flex;gap:8px;flex-wrap:wrap}.ji-report-map__duplicate-actions button{border:1px solid #c5a84d;background:#fff;color:#263238;border-radius:999px;padding:8px 12px;font:inherit;font-weight:700;cursor:pointer}.ji-report-map__duplicate-actions button:hover,.ji-report-map__duplicate-actions button.is-selected{background:#17345e;border-color:#17345e;color:#fff}.ji-report-map__duplicate small{color:#6b7280}@media(max-width:600px){.ji-report-map__duplicate-actions{display:grid;grid-template-columns:1fr}.ji-report-map__duplicate-actions button{width:100%}}

/* v19.63.0 — experiencia territorial inspirada en Open311/FixMyStreet */
.ji-report-map__geo{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 10px}.ji-report-map__geo-button{appearance:none;border:1px solid #2457e6;border-radius:999px;background:#fff;color:#17345e;padding:9px 14px;font:inherit;font-weight:750;cursor:pointer}.ji-report-map__geo-button:hover{background:#eef3ff}.ji-report-map__geo-button:disabled{opacity:.55;cursor:wait}.ji-report-map__geo span{font-size:.86rem;color:#596273}.ji-report-map__legend{display:flex;gap:16px;flex-wrap:wrap;margin:0 0 10px;font-size:.84rem;color:#596273}.ji-report-map__legend span{display:inline-flex;align-items:center;gap:6px}.ji-report-map__legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block;border:2px solid #fff;box-shadow:0 0 0 1px rgba(17,24,39,.18)}.ji-report-map__legend-dot--existing{background:#f59e0b}.ji-report-map__legend-dot--selected{background:#2457e6}.ji-report-map__territory{display:block;margin-top:3px;font-size:.85rem;font-weight:700}.ji-report-map__territory--ok{color:#166534}.ji-report-map__territory--warn{color:#92400e}.ji-report-map__duplicate-actions button:first-child{background:#17345e;border-color:#17345e;color:#fff}.ji-report-map__duplicate-actions button:first-child:hover,.ji-report-map__duplicate-actions button:first-child.is-selected{background:#0f2b4d;border-color:#0f2b4d}@media(max-width:600px){.ji-report-map__geo{align-items:stretch}.ji-report-map__geo-button{width:100%}.ji-report-map__legend{display:grid;gap:6px}}

/* v19.64.0 — mapa de reporte como interfaz principal */
.ji-report-map__canvas{min-height:430px;box-shadow:inset 0 0 0 1px rgba(15,43,99,.02)}
.ji-report-map__result,.ji-report-map__duplicate,.ji-report-map__address{box-shadow:0 8px 24px rgba(15,23,42,.06)}
.ji-report-map__result strong,.ji-report-map__duplicate>strong,.ji-report-map__address>strong{color:#17345e}
@media(max-width:700px){
 .ji-jjvv-form__field--map .ji-report-map{margin-left:-12px;margin-right:-12px}
 .ji-report-map__head,.ji-report-location-method,.ji-report-map__geo,.ji-report-map__legend,.ji-report-map__privacy{margin-left:12px;margin-right:12px}
 .ji-report-map__canvas{height:min(64svh,620px);min-height:430px;border-radius:16px}
 .ji-report-map__result,.ji-report-map__address,.ji-report-map__duplicate{position:relative;z-index:3;margin:0 8px 10px;transform:translateY(-8px);border-radius:16px;padding:14px 15px;background:#fff}
 .ji-report-map__duplicate{border-color:#e5cf83}
 .ji-report-map__geo-button{min-height:46px}
}

/* v19.67.7 — permisos de geolocalización con diagnóstico y modal */
.ji-geo-modal{position:fixed;inset:0;z-index:100000;background:rgba(8,23,48,.64);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px}.ji-geo-modal__box{position:relative;width:min(520px,100%);background:#fff;border-radius:22px;box-shadow:0 22px 70px rgba(0,0,0,.24);padding:28px;color:#17345e}.ji-geo-modal__box h3{margin:6px 42px 10px 0;font-size:1.35rem;line-height:1.2}.ji-geo-modal__box p{margin:0 0 20px;color:#596273;line-height:1.55}.ji-geo-modal__close{position:absolute;top:16px;right:16px;width:40px;height:40px;border:1px solid #d8e0ef;border-radius:999px;background:#fff;color:#17345e;font-size:1.5rem;line-height:1;cursor:pointer}.ji-geo-modal__ok{width:100%;min-height:46px;border:0;border-radius:999px;background:#2457e6;color:#fff;font:inherit;font-weight:800;cursor:pointer}.ji-geo-modal__ok:hover{background:#173fc2}

/* v19.67.8 — precisión GPS y confirmación visual */
.ji-report-map__precision{font-weight:700;color:#7a5200!important;background:#fff7df;border:1px solid #ead48b;border-radius:9px;padding:8px 10px}.ji-membership-benefits-after-form{margin-top:28px}.ji-membership-benefits-after-form .ji-membership-benefits{margin-top:0}
