/* Mapa Interactivo Paraguay — estilos de los shortcodes */

/* Blindaje contra estilos de botones del tema (muchos temas pintan todo botón
   de un color, en mayúsculas y a ancho completo): forzamos los nuestros. */
.mpy-wrap button,.mpy-wrap select,#mpy-tour-modal button,.mpy-dir button{
  width:auto !important;text-transform:none !important;letter-spacing:normal !important;font-family:inherit !important;
  line-height:1.35 !important;min-height:0 !important;margin:0 !important}
.mpy-wrap .mpy-btn{display:inline-flex !important;align-items:center;gap:4px;background:#f0f0f0 !important;color:#2c2c2c !important;
  border:2px solid #b9b9b9 !important;border-radius:20px !important;padding:6px 14px !important;font-size:.85rem !important;
  cursor:pointer;text-decoration:none !important;box-shadow:none !important}
.mpy-wrap .mpy-btn b{font-weight:700}
.mpy-wrap .mpy-btn span{color:#555 !important;font-size:.75rem !important}
.mpy-wrap .mpy-btn.on{background:#fff !important;box-shadow:0 1px 4px rgba(0,0,0,.2) !important}
/* circuito encendido: se pinta con el color de su recorrido (el JS pone las variables) */
.mpy-wrap .mpy-btn.mpy-circ.on{background:var(--circ) !important;border-color:var(--circ) !important;color:var(--circ-txt) !important;box-shadow:0 2px 8px rgba(0,0,0,.28) !important}
.mpy-wrap .mpy-btn.mpy-circ.on b{color:var(--circ-txt) !important}
.mpy-wrap .mpy-btn.mpy-circ.on span{color:var(--circ-txt) !important;opacity:.85}
.mpy-wrap .mpy-chip{display:inline-flex !important;align-items:center;gap:5px;background:rgba(255,255,255,.9) !important;color:#2c2c2c !important;
  border:1.5px solid rgba(0,0,0,.15) !important;border-radius:20px !important;padding:4px 11px !important;font-size:.78rem !important;
  box-shadow:0 1px 4px rgba(0,0,0,.2) !important;cursor:pointer;pointer-events:auto;opacity:.55;transition:.15s}
.mpy-wrap .mpy-chip.on{opacity:1;font-weight:600;border-color:#1b7a43 !important;background:#eef8f1 !important}
.mpy-wrap .mpy-chip.mpy-chip-todos{opacity:1;background:#1b7a43 !important;color:#fff !important;border-color:#1b7a43 !important;font-weight:700}
.mpy-wrap .mpy-chip.mpy-chip-todos.on{background:#fff !important;color:#1b7a43 !important}
.mpy-contador{background:rgba(27,122,67,.92);color:#fff;border-radius:14px;padding:3px 11px;font-size:.75rem;font-weight:700;box-shadow:0 1px 4px rgba(0,0,0,.25);pointer-events:none}
.mpy-wrap .mpy-chip small{color:#777;font-weight:400}
.mpy-wrap .mpy-chip .dot{width:10px;height:10px;border-radius:50%;border:1px solid rgba(0,0,0,.25)}
.mpy-wrap select.mpy-sel{opacity:1;appearance:auto;padding-right:6px !important}
.mpy-wrap #mpy-btn-geo,.mpy-wrap #mpy-btn-fs{position:absolute;right:10px;z-index:1001;width:36px !important;height:36px !important;padding:0 !important;
  background:#fff !important;color:#2c2c2c !important;border:1.5px solid rgba(0,0,0,.2) !important;border-radius:8px !important;
  font-size:1.05rem !important;display:block !important;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.25) !important}
.mpy-wrap #mpy-btn-geo{bottom:66px}
.mpy-wrap #mpy-btn-fs{bottom:24px}
.mpy-wrap #mpy-btn-fs.mpy-fs-salir{background:#c0392b !important;color:#fff !important;font-weight:700;border-color:#fff !important}
.mpy-wrap #mpy-bb-toggle{position:sticky;top:0;order:9;align-self:flex-start;background:#1b7a43 !important;color:#fff !important;border:none !important;
  border-radius:8px !important;padding:2px 10px !important;font-size:.72rem !important;cursor:pointer}
.mpy-wrap .mpy-tab{background:#f7f7f7 !important;color:#333 !important;border:1.5px solid #ddd !important;border-radius:14px !important;
  padding:2px 10px !important;font-size:.74rem !important;cursor:pointer}
.mpy-wrap .mpy-tab.on{background:#2166ac !important;border-color:#2166ac !important;color:#fff !important;font-weight:600}
.mpy-wrap #mpy-monedabar .mpy-tab.on{background:#b8860b !important;border-color:#b8860b !important}
.mpy-wrap .mpy-tab[disabled]{opacity:.45;cursor:default}

/* contenedor: ancho completo rompiendo la columna del tema */
.mpy-wrap{--verde:#1b7a43;--verde-osc:#0f5c30;font-family:'Segoe UI',system-ui,sans-serif;color:#2c2c2c;
  width:var(--mpy-vw,100vw) !important;max-width:var(--mpy-vw,100vw) !important;margin-left:calc(50% - var(--mpy-vw,100vw) / 2) !important;margin-right:calc(50% - var(--mpy-vw,100vw) / 2) !important;
  padding:0 24px;box-sizing:border-box}
.mpy-wrap *{box-sizing:border-box}
.mpy-wrap.mpy-wrap--fit{width:100% !important;max-width:100% !important;margin-left:0 !important;margin-right:0 !important;padding:0}
.mpy-controles{display:flex;flex-wrap:nowrap;gap:8px;margin-bottom:10px;align-items:center;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.mpy-controles::-webkit-scrollbar{display:none}
/* en escritorio la fila se arrastra con el mouse: mano para agarrar */
.mpy-arrastrable{cursor:grab}
.mpy-arrastrando{cursor:grabbing;scroll-behavior:auto;user-select:none}
.mpy-arrastrando *{pointer-events:none}
.mpy-controles>*,#mpy-circs>*{flex-shrink:0}
#mpy-circs{display:contents}
.mpy-wrap #mpy-volver{background:#0f5c30 !important;color:#fff !important;font-weight:700}
.mpy-wrap #mpy-volver.mpy-oculto{display:none !important}
.mpy-wrap #mpy-btn-clima{background:linear-gradient(135deg,#2166ac,#4aa3e0) !important;color:#fff !important}
.mpy-wrap #mpy-btn-moneda{background:linear-gradient(135deg,#b8860b,#e0b43c) !important;color:#fff !important}
.mpy-wrap #mpy-btn-clima.on,.mpy-wrap #mpy-btn-moneda.on{box-shadow:inset 0 2px 5px rgba(0,0,0,.3) !important;border-color:rgba(0,0,0,.25) !important}
.mpy-idiomas{margin-left:auto;display:inline-flex;gap:2px;background:#f0f0f0;border-radius:20px;padding:3px}
.mpy-idiomas a{font-size:.75rem;font-weight:700;color:#555 !important;text-decoration:none !important;padding:3px 9px;border-radius:14px}
.mpy-idiomas a.on{background:#1b7a43;color:#fff !important}

.mpy-mapa-cont{position:relative;height:72vh;min-height:420px;border-radius:12px;overflow:hidden}
#mpy-map{width:100%;height:100%}
#mpy-capas{position:absolute;top:84px;left:10px;bottom:10px;z-index:1001;pointer-events:none;display:flex;flex-direction:column}
/* el panel nunca pasa el borde del mapa: si no entra, se desliza */
.mpy-chips{display:flex;flex-direction:column;align-items:flex-start;gap:5px;max-height:100%;overflow-y:auto;overflow-x:hidden;padding:0 4px 4px 0;scrollbar-width:thin}
.mpy-chips > *{flex-shrink:0}
.mpy-chips{pointer-events:auto}
.mpy-fila-todos{display:flex;gap:4px;align-items:center}
.mpy-wrap .mpy-chip.mpy-chip-aloj,.mpy-wrap .mpy-chip.mpy-chip-aloj.on{opacity:1 !important;font-weight:700;background:#1b7a43 !important;color:#fff !important;border-color:#1b7a43 !important;font-size:.82rem}
.mpy-wrap .mpy-chip-aloj small{color:#e8f5ec !important}
.mpy-tipos-cerrado .mpy-chip-tipo{display:none !important}
.mpy-wrap .mpy-chip-vacio{opacity:.35 !important}
.mpy-tip-depto{font-size:.78rem;line-height:1.3;border-radius:8px}

#mpy-busca-caja{position:absolute;top:10px;right:10px;width:295px;z-index:1002}
#mpy-buscador{width:100%;border:1.5px solid rgba(0,0,0,.15);background:rgba(255,255,255,.95);border-radius:20px;padding:6px 14px;font-size:.82rem;box-shadow:0 1px 4px rgba(0,0,0,.2);outline:none;margin:0}
#mpy-buscador:focus{border-color:var(--verde)}
#mpy-resultados{position:absolute;top:100%;left:0;right:0;background:#fff;border-radius:10px;box-shadow:0 3px 10px rgba(0,0,0,.25);margin-top:4px;display:none;max-height:300px;overflow-y:auto}
#mpy-resultados.abierto{display:block}
.mpy-res{padding:7px 12px;font-size:.8rem;cursor:pointer;display:flex;align-items:center;gap:7px;border-bottom:1px solid #f0f0f0}
.mpy-res:hover{background:#e8f5ec}
.mpy-res .dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}
.mpy-res small{color:#888;margin-left:auto;white-space:nowrap}

/* pines */
.mpy-pin{background:none;border:none}
.mpy-pin div{width:28px;height:28px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);display:flex;align-items:center;justify-content:center;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.45)}
.mpy-pin-abierto div{box-shadow:0 0 0 2px rgba(0,0,0,.25),0 1px 4px rgba(0,0,0,.45)}
.mpy-pin div span{transform:rotate(45deg);font-size:.8rem;line-height:1}
.mpy-atr{background:none;border:none}
.mpy-atr div{width:30px;height:30px;border-radius:50%;background:#fff;border:2.5px solid #d4a017;border-width:3px;display:flex;align-items:center;justify-content:center;font-size:1rem;box-shadow:0 1px 5px rgba(0,0,0,.45)}

/* fichas */
.mpy-wrap .leaflet-popup-content{font-size:.78rem;line-height:1.38;min-width:280px;margin:10px 12px}
.mpy-wrap .leaflet-popup-content h3{font-size:.92rem;margin:0 18px 3px 0;line-height:1.25;color:var(--verde-osc)}
.mpy-tipo{display:inline-block;border-radius:8px;padding:1px 8px;font-size:.7rem;font-weight:600;margin-bottom:3px}
.mpy-meta{font-size:.72rem;color:#777}
.mpy-datos{margin-top:3px}
.mpy-fila{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:5px}
.mpy-fila:empty{display:none}
.mpy-fila .mpy-resenas,.mpy-fila .mpy-sociales{margin-top:0}
.mpy-wrap .leaflet-popup-content-wrapper{overflow:visible}
.mpy-wrap .leaflet-popup-content a{color:#2166ac;text-decoration:none}
.mpy-popup-foto{width:100%;height:105px;object-fit:cover;background:#eee;border-radius:8px;margin:4px 0;display:block}
.mpy-horarios summary{cursor:pointer;color:#2166ac}
.mpy-horarios{font-size:.76rem}
.mpy-credito-foto{font-size:.62rem;color:#999;margin:-2px 0 4px;text-align:right}
.mpy-serv{display:flex;flex-wrap:wrap;gap:3px;margin:2px 0}
.mpy-serv span{background:#eef6f0;border-radius:10px;padding:0 7px;font-size:.68rem;white-space:nowrap}
.mpy-serv small{width:100%;font-size:.62rem;color:#999;font-style:italic}
.mpy-form-serv{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:4px}
.mpy-form .mpy-form-serv label{font-weight:400;margin:2px 0}
.mpy-form .mpy-form-serv input{width:auto;margin:0 4px 0 0}
.mpy-notas{font-size:.7rem;color:#666}
.mpy-sin-web{color:#c0392b;font-weight:700}
.mpy-aprox{display:block;color:#999;font-size:.7rem;font-style:italic;margin-top:4px}
.mpy-resenas{margin-top:6px}
.mpy-resenas-caja{display:inline-flex;align-items:center;gap:5px;background:linear-gradient(135deg,#0f5c30,#1b7a43);border-radius:20px;padding:3px 10px;box-shadow:0 1px 4px rgba(0,0,0,.25)}
.mpy-resenas .estrellas{color:#ffc531;letter-spacing:1px;font-size:.95rem}
.mpy-resenas .numero{color:#fff;font-weight:700;font-size:.82rem}
.mpy-resenas .cant{color:#d9ecdf;font-size:.72rem}
.mpy-sociales{margin-top:6px;display:flex;gap:10px;align-items:center}
.mpy-red{display:inline-flex;line-height:0;transition:transform .12s}
.mpy-red:hover{transform:scale(1.15)}
.mpy-acciones{margin-top:5px;display:flex;flex-wrap:wrap;gap:6px}
.mpy-wrap .mpy-acciones a{display:inline-block;color:#fff !important;border-radius:8px;padding:4px 10px;font-size:.75rem;font-weight:600;text-decoration:none !important;white-space:nowrap}
.mpy-b-llegar{background:#1b7a43}
.mpy-b-comp{background:#25D366}
.mpy-b-tour{background:#7b3fa0}

/* circuitos */
#mpy-bottombar{display:none;background:#fff;border-top:3px solid var(--verde);max-height:340px;overflow-y:auto;padding:10px 14px;gap:18px;margin-top:8px;border-radius:0 0 12px 12px}
#mpy-bottombar.visible{display:flex;flex-wrap:wrap}
#mpy-bottombar.colapsado p,#mpy-bottombar.colapsado ol,#mpy-bottombar.colapsado .mpy-cerca{display:none}
.mpy-circ-det{flex:1;min-width:250px;font-size:.8rem;line-height:1.45;color:#444;border-left:4px solid;padding-left:10px}
.mpy-circ-det b{font-size:.85rem}
.mpy-circ-det p{margin:4px 0 6px}
.mpy-circ-det ol{padding-left:0;list-style:none;margin:0}
.mpy-circ-det li{margin:0 0 4px;display:flex;align-items:center;gap:7px}
.mpy-circ-det li .nro{width:20px;height:20px;border-radius:50%;color:#fff;font-size:.68rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.mpy-tramo{color:#999;margin-left:auto;white-space:nowrap}
.mpy-nota{color:#888}
.mpy-cerca{margin-top:6px;font-size:.74rem;color:#666}
.mpy-cerca b{font-size:.74rem}
.mpy-cerca a{color:#2166ac;cursor:pointer}

/* paneles clima y monedas */
.mpy-panel{display:none;background:#fff;padding:10px 14px;margin-top:8px;border-radius:0 0 12px 12px}
.mpy-panel.visible{display:block}
#mpy-climabar{border-top:3px solid #2166ac}
#mpy-monedabar{border-top:3px solid #d4a017}
.mpy-panel-tit{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px;font-size:.8rem}
.mpy-panel-tit b{font-size:.85rem}
.mpy-panel-tit small{color:#888}
.mpy-dias{display:flex;gap:8px;overflow-x:auto}
.mpy-dia{flex:1;min-width:86px;text-align:center;background:#f5f8fb;border-radius:10px;padding:8px 6px;font-size:.75rem}
.mpy-dia b{display:block;text-transform:capitalize}
.mpy-dia .emoji{font-size:1.5rem;display:block;margin:3px 0}
.mpy-dia .tmax{color:#c0392b;font-weight:700}
.mpy-dia .tmin{color:#2166ac}
.mpy-dia .lluvia{color:#5d6d7e;font-size:.68rem}
.mpy-cargando{padding:6px;font-size:.8rem;color:#888}
.mpy-rojo{color:#c0392b}
.mpy-conv{display:flex;gap:10px;flex-wrap:wrap;align-items:stretch}
.mpy-conv-in{display:flex;gap:6px;align-items:center;background:#fdf8ec;border:1.5px solid #e8d49a;border-radius:10px;padding:6px 10px;margin:0}
.mpy-conv-in input{width:130px;border:none !important;background:transparent !important;font-size:1.05rem;font-weight:700;outline:none;padding:0 !important;box-shadow:none !important;margin:0}
.mpy-conv-in select{border:1px solid #ddd;border-radius:6px;padding:3px;font-size:.8rem;background:#fff;margin:0}
.mpy-conv-res{display:flex;gap:10px;flex-wrap:wrap;flex:1}
.mpy-conv-out{flex:1;min-width:120px;background:#f7f7f7;border-radius:10px;padding:6px 10px;font-size:.72rem;color:#666}
.mpy-conv-out b{display:block;font-size:1.02rem;color:#2c2c2c}
.mpy-conv-nota{font-size:.68rem;color:#999;margin-top:6px}

/* crédito */
.mpy-credito{font-size:.7rem;color:#888;text-align:center;padding:8px 0 4px}
.mpy-credito a{color:#555 !important;font-weight:700;text-decoration:none !important}
.mpy-credito img{height:18px;width:auto;vertical-align:middle;background:#fff;border-radius:4px;padding:1px 4px;margin:0 4px;display:inline}

/* pantalla completa (real y simulada) */
.mpy-wrap:fullscreen,.mpy-wrap.mpy-fs-sim{display:flex;flex-direction:column;background:#f4f1e9;padding:10px 14px;overflow:auto}
.mpy-wrap.mpy-fs-sim{position:fixed !important;inset:0 !important;z-index:99990;width:100vw !important;max-width:100vw !important;margin:0 !important}
.mpy-wrap:fullscreen .mpy-controles,.mpy-wrap.mpy-fs-sim .mpy-controles{flex-shrink:0}
.mpy-wrap:fullscreen .mpy-mapa-cont,.mpy-wrap.mpy-fs-sim .mpy-mapa-cont{flex:1 1 auto;height:auto !important;min-height:300px;border-radius:8px}
.mpy-wrap:fullscreen #mpy-bottombar,.mpy-wrap:fullscreen .mpy-panel,.mpy-wrap.mpy-fs-sim #mpy-bottombar,.mpy-wrap.mpy-fs-sim .mpy-panel{flex-shrink:0;max-height:32vh;overflow:auto}
html.mpy-sin-scroll,html.mpy-sin-scroll body{overflow:hidden !important}

/* visor 360 */
#mpy-tour-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:99999;align-items:center;justify-content:center;padding:20px}
#mpy-tour-caja{position:relative;width:70vw;height:70vh;background:#000;border-radius:12px;overflow:hidden;box-shadow:0 8px 30px rgba(0,0,0,.5)}
#mpy-tour-caja.max{width:98vw;height:96vh;border-radius:8px}
#mpy-tour-iframe{width:100%;height:100%;border:none}
#mpy-tour-modal .mpy-tour-btn{position:absolute;top:8px;z-index:2;background:#fff !important;color:#2c2c2c !important;border:none !important;border-radius:8px !important;padding:6px 12px !important;font-size:.85rem !important;font-weight:700;cursor:pointer}
#mpy-tour-cerrar{right:8px}
#mpy-tour-max{right:56px}
.mpy-visor-msj{color:#fff;display:flex;align-items:center;justify-content:center;height:100%;font-family:sans-serif}

/* directorio [mpy_lugares] */
.mpy-dir{font-family:'Segoe UI',system-ui,sans-serif}
.mpy-dir-filtros{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px}
.mpy-dir-buscar{flex:1;min-width:200px;max-width:320px;border:1.5px solid #ccc;border-radius:20px;padding:6px 14px;font-size:.85rem}
.mpy-dir-chips{display:flex;flex-wrap:wrap;gap:6px}
.mpy-dir .mpy-dir-chip{display:inline-flex !important;align-items:center;gap:5px;background:#fff !important;color:#333 !important;border:1.5px solid #ddd !important;border-radius:20px !important;padding:4px 11px !important;font-size:.78rem !important;cursor:pointer}
.mpy-dir .mpy-dir-chip.on{border-color:#1b7a43 !important;background:#eef8f1 !important;font-weight:600}
.mpy-dir-chip .dot{width:10px;height:10px;border-radius:50%;border:1px solid rgba(0,0,0,.25)}
.mpy-dir-region{border:1.5px solid #ddd;border-radius:20px;padding:4px 10px;font-size:.8rem}
.mpy-dir-cuenta{font-size:.8rem;color:#888}
.mpy-integrantes{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.mpy-card{background:#fff;border:1px solid #e5e5e5;border-radius:12px;overflow:hidden;box-shadow:0 1px 5px rgba(0,0,0,.07);padding-bottom:10px;text-align:center}
.mpy-card img{width:100%;height:150px;object-fit:cover;margin:0 0 8px;display:block}
.mpy-card-sinfoto{height:90px;display:flex;align-items:center;justify-content:center;font-size:2.4rem;margin-bottom:8px;opacity:.85}
.mpy-card h3{font-size:.98rem;margin:6px 10px 4px;color:#0f5c30}
.mpy-card-tipo{display:inline-block;border-radius:8px;padding:1px 9px;font-size:.72rem;font-weight:600;margin-bottom:4px}
.mpy-card p{margin:3px 8px;font-size:.8rem}
.mpy-card-muni{color:#666}
.mpy-card-acc a{color:#2166ac;font-weight:600;text-decoration:none;margin:0 4px}
.mpy-card-acc a.mpy-card-wa{color:#1b7a43}

/* formularios */
.mpy-form{max-width:660px;font-family:'Segoe UI',system-ui,sans-serif}
.mpy-form label{display:block;margin:12px 0 0;font-weight:600;font-size:.88rem;color:#333}
.mpy-form input,.mpy-form select,.mpy-form textarea{width:100%;border:1.5px solid #ccc;border-radius:8px;padding:8px 12px;font-size:.9rem;margin-top:3px;box-sizing:border-box}
.mpy-form input:focus,.mpy-form select:focus,.mpy-form textarea:focus{border-color:#1b7a43;outline:none}
.mpy-form-2col{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mpy-form .mpy-form-enviar{margin-top:18px;width:auto !important;background:#1b7a43 !important;color:#fff !important;border:none !important;border-radius:10px !important;padding:12px 26px !important;font-size:1rem !important;font-weight:700;cursor:pointer;text-transform:none !important}
.mpy-planes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:6px}
.mpy-form label.mpy-plan{display:flex;flex-direction:column;gap:3px;margin:0;border:2px solid #ddd;border-radius:12px;padding:12px;cursor:pointer;font-weight:400;background:#fff}
.mpy-form label.mpy-plan input{width:auto;margin:0 0 4px}
.mpy-form label.mpy-plan b{font-size:1rem;color:#14532d}
.mpy-plan-precio{font-weight:700;color:#1b7a43;font-size:.9rem}
.mpy-plan small{color:#555;line-height:1.35}
.mpy-form label.mpy-plan-pago{background:#fffbea}
.mpy-form label.mpy-plan:has(input:checked){border-color:#1b7a43;box-shadow:0 0 0 2px #1b7a4333}
.mpy-form-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.mpy-form-pago{margin-top:12px;background:#fff;border:1.5px dashed #1b7a43;border-radius:10px;padding:10px 14px;color:#222}
.mpy-form-pie{font-size:.75rem;color:#888;margin-top:8px}
.mpy-form-ok{background:#e8f5ec;border:1.5px solid #1b7a43;border-radius:10px;padding:12px 16px;margin-bottom:14px;color:#0f5c30}
.mpy-form-err{background:#fdeaea;border:1.5px solid #c0392b;border-radius:10px;padding:12px 16px;margin-bottom:14px;color:#c0392b}
.mpy-form-wa{display:inline-block;background:#25D366;color:#fff !important;border-radius:10px;padding:10px 18px;font-weight:700;text-decoration:none !important}

@media(max-width:760px){
  .mpy-wrap{padding:0 8px}
  .mpy-form-2col,.mpy-form-3col,.mpy-planes{grid-template-columns:1fr}
  #mpy-busca-caja{left:10px;right:10px;width:auto;top:8px}
  #mpy-capas{top:48px;left:10px;right:10px;bottom:auto;max-height:calc(100% - 58px)}
  .mpy-wrap .leaflet-control-zoom{display:none}
  .mpy-controles{gap:6px}
  .mpy-wrap .mpy-btn{font-size:.76rem !important;padding:5px 10px !important}
  .mpy-wrap .mpy-btn span{display:none}
  .mpy-idiomas{margin-left:0}
  .mpy-chips{flex-direction:row !important;flex-wrap:wrap !important;gap:5px}
  .mpy-wrap .mpy-chip{font-size:.7rem !important;padding:3px 8px !important}
  .mpy-mapa-cont{height:62vh}
  #mpy-bottombar{flex-direction:column;flex-wrap:nowrap}
  #mpy-bottombar #mpy-bb-toggle{align-self:flex-end;order:-1}
  .mpy-circ-det{min-width:0}
  .mpy-conv-in input{width:100px}
  #mpy-tour-caja{width:94vw;height:70vh}
}
/* lugares útiles (salud, policía, nafta, cajeros...) */
.mpy-util{background:none;border:none}
.mpy-util div{width:24px;height:24px;border-radius:50%;background:#fff;border:2.5px solid #d32f2f;display:flex;align-items:center;justify-content:center;font-size:.8rem;box-shadow:0 1px 4px rgba(0,0,0,.45)}
.mpy-util-grupo{background:none;border:none}
.mpy-util-grupo div{width:34px;height:34px;border-radius:50%;color:#fff;font-weight:700;font-size:.8rem;display:flex;align-items:center;justify-content:center;border:3px solid rgba(255,255,255,.8);box-shadow:0 1px 5px rgba(0,0,0,.4)}
.mpy-cerca-util summary b{font-weight:600;color:#333}
.mpy-cerca-util a[data-u]{cursor:pointer;color:#2166ac}
.mpy-cerca-util small{color:#888}
.mpy-emerg{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center;justify-content:center;font-size:.78rem;padding:6px 10px;background:#fdecea;border-radius:8px;margin:6px 0 0}
.mpy-emerg b{color:#b71c1c}
.mpy-emerg a{color:#b71c1c;text-decoration:none;white-space:nowrap;font-weight:600}
/* v1.6: destacados, opiniones, avisos, fiestas, mi viaje, sin señal */
.mpy-pin-dest div{border:3px solid #f5c518;box-shadow:0 0 0 2px rgba(245,197,24,.45),0 2px 6px rgba(0,0,0,.5)}
.mpy-pin-dest i{position:absolute;top:-9px;right:-9px;font-style:normal;font-size:.85rem;filter:drop-shadow(0 1px 1px rgba(0,0,0,.5))}
.mpy-pin-dest div span{font-size:.95rem}
.mpy-dest{display:inline-block;background:#f5c518;color:#5a4500;border-radius:10px;padding:1px 8px;font-size:.68rem;font-weight:700}
.mpy-barro{display:inline-block;background:#fff3e0;color:#8d4a00;border-radius:6px;padding:2px 6px;font-size:.72rem;font-weight:600}
.mpy-est{color:#e8a200;letter-spacing:-1px}
.mpy-op-item{border-top:1px solid #eee;padding:4px 0;font-size:.74rem}
.mpy-op-links{margin-top:6px;font-size:.72rem;text-align:right}
.mpy-op-links a{color:#666 !important;text-decoration:none !important}
.mpy-op-links a:hover{color:#2166ac !important}
.mpy-wrap .mpy-acciones a.mpy-b-viaje{background:#6a1b9a}
.mpy-wrap .mpy-acciones a.mpy-b-viaje.on{background:#fff;color:#6a1b9a !important;border:1.5px solid #6a1b9a}
.mpy-rio{background:#e3f2fd;border-radius:8px;padding:6px 8px;font-size:.74rem;margin:4px 0;line-height:1.35}
.mpy-rio:empty{display:none}
#mpy-op-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:99998;align-items:center;justify-content:center;padding:16px}
#mpy-op-form{background:#fff;border-radius:12px;padding:16px;width:100%;max-width:420px;font-family:inherit;box-shadow:0 6px 30px rgba(0,0,0,.35)}
#mpy-op-form h3{margin:0 0 8px;font-size:1rem}
#mpy-op-form input[type=text],#mpy-op-form textarea{width:100%;box-sizing:border-box;margin:4px 0;padding:8px;border:1px solid #ccc;border-radius:8px;font:inherit;font-size:.9rem}
#mpy-op-estrellas button{background:none;border:none;font-size:1.7rem;color:#e8a200;cursor:pointer;padding:0 2px;line-height:1}
#mpy-op-form .mpy-trampa{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.mpy-op-acc{display:flex;gap:8px;justify-content:flex-end;margin-top:6px}
.mpy-op-acc button{border-radius:8px;padding:7px 14px;border:1px solid #ccc;background:#f5f5f5;cursor:pointer;font:inherit}
.mpy-op-acc .mpy-op-enviar{background:#1b7a43;border-color:#1b7a43;color:#fff;font-weight:600}
#mpy-op-msj{margin:8px 0 0;font-size:.85rem}
#mpy-op-msj.mpy-ok{color:#1b7a43;font-weight:600}
#mpy-aviso{position:absolute;right:58px;bottom:10px;z-index:1003;width:min(460px,calc(100% - 300px));display:flex;flex-direction:column;gap:6px;pointer-events:none}
#mpy-aviso>div{pointer-events:auto;position:relative;background:#fff;border-radius:10px;padding:8px 30px 8px 10px;font-size:.76rem;line-height:1.4;box-shadow:0 2px 10px rgba(0,0,0,.3)}
#mpy-aviso .mpy-aviso-alertas{border-left:5px solid #e65100}
#mpy-aviso .mpy-aviso-offline{background:#37474f;color:#fff;padding-right:10px;font-weight:600}
#mpy-aviso .mpy-aviso-guardar{border-left:5px solid #1b7a43}
#mpy-aviso .mpy-aviso-x{position:absolute;top:4px;right:6px;background:none;border:none;font-size:.9rem;cursor:pointer;color:#666}
.mpy-guardar-msj{margin-top:6px;font-size:.74rem}
.mpy-wrap #mpy-btn-offline{position:absolute;right:10px;bottom:108px;z-index:1001;width:36px !important;height:36px !important;padding:0 !important;background:#fff !important;border:2px solid rgba(0,0,0,.2) !important;border-radius:8px !important;cursor:pointer;font-size:1rem;line-height:1}
.mpy-tabs-mes{display:flex;gap:4px;overflow-x:auto;max-width:100%;padding-bottom:2px}
.mpy-tabs-mes .mpy-tab{white-space:nowrap;text-transform:capitalize}
.mpy-wrap #mpy-fiestasbar .mpy-tab.on{background:#c2185b !important;border-color:#c2185b !important}
.mpy-lista-fiestas{margin:0;padding-left:18px;columns:2 300px;font-size:.8rem}
.mpy-lista-fiestas li{margin:2px 0;break-inside:avoid}
.mpy-lista-fiestas a,.mpy-lista-viaje a{cursor:pointer;color:#2166ac}
.mpy-lista-viaje{list-style:none;margin:0;padding:0;font-size:.82rem}
.mpy-lista-viaje li{display:flex;align-items:center;gap:6px;padding:3px 0;border-bottom:1px solid #f0f0f0}
.mpy-lista-viaje .nro{width:20px;height:20px;border-radius:50%;color:#fff;font-size:.68rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.mpy-viaje-acc{margin-left:auto;display:flex;gap:3px}
.mpy-viaje-acc button{border:1px solid #ddd;background:#fafafa;border-radius:6px;width:26px;height:24px;cursor:pointer;padding:0}
.mpy-viaje-acc button[disabled]{opacity:.3;cursor:default}
.mpy-viaje-botones{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.mpy-viaje-botones a.mpy-tab{text-decoration:none !important}
@media (max-width:600px){ #mpy-aviso{width:calc(100% - 70px);left:10px;transform:none;bottom:8px} }
#mpy-aviso.mpy-oculto{display:none}
/* v1.7: info (viajes armados, entradas, consejos) */
.mpy-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.mpy-info-card{border:1px solid #e5e5e5;border-radius:10px;padding:8px 10px;font-size:.8rem;line-height:1.4;background:#fcfcfc}
.mpy-info-card ul{margin:4px 0 6px;padding-left:18px}
.mpy-info-card li{margin:2px 0}
.mpy-tarifas{border-collapse:collapse;margin:4px 0;font-size:.78rem;width:100%}
.mpy-tarifas td{padding:2px 4px;border-bottom:1px solid #eee}
.mpy-tarifas td:last-child{text-align:right;font-weight:600;white-space:nowrap}
.mpy-ent-acc{margin-top:6px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.mpy-ent-acc a.mpy-tab{text-decoration:none !important;background:#1b7a43 !important;color:#fff !important;border-color:#1b7a43 !important}
.mpy-wrap #mpy-infobar .mpy-tab.on{background:#f9a825 !important;border-color:#f9a825 !important;color:#333 !important}
.leaflet-popup-content .mpy-ent-acc a.mpy-tab{display:inline-block;border-radius:8px;padding:3px 9px;font-size:.74rem;font-weight:600}
/* v1.8: "también ofrece" (un lugar en más de un botón) */
.mpy-tambien{margin:3px 0 1px;font-size:.72rem;color:#555}
.mpy-tambien span{display:inline-block;border-radius:10px;padding:1px 7px;font-size:.68rem;font-weight:600;margin:1px 2px}

/* ficha: precio, socio y reservar por WhatsApp */
.mpy-precio{background:#14532d;color:#fff;border-radius:10px;padding:8px 12px;margin:8px 0 4px;font-size:1.15rem;font-weight:800;text-align:center;line-height:1.25}
.mpy-precio small{font-size:.72rem;font-weight:600;opacity:.9}
.mpy-socio{display:inline-block;background:#fff3cd;color:#7a5600;border:1px solid #f0d58a;border-radius:10px;padding:1px 8px;font-size:.7rem;font-weight:700;vertical-align:middle}
a.mpy-b-wa{display:block;background:#25d366;color:#fff !important;text-align:center;font-weight:800;border-radius:10px;padding:9px 10px;margin:8px 0 6px;text-decoration:none !important;font-size:.92rem;box-shadow:0 2px 6px rgba(0,0,0,.18)}
a.mpy-b-wa:hover{background:#1ebe5b}

.mpy-res-depto{padding:7px 12px;font-size:.78rem;color:#555;background:#f3f7f4;border-bottom:1px solid #e3e3e3}
.mpy-res-depto a{color:#1b7a43;font-weight:700}

/* ===== Destacado: pin con foto y precio ===== */
.mpy-pin-foto{background:none;border:none;width:auto!important;height:auto!important}
.mpy-fp{display:flex;align-items:center;gap:6px;background:#fff;border-radius:24px;padding:3px 11px 3px 3px;border:2px solid #d9b45a;box-shadow:0 4px 14px rgba(0,0,0,.35);white-space:nowrap;cursor:pointer;transition:transform .15s}
.mpy-pin-foto:hover .mpy-fp{transform:scale(1.06)}
.mpy-fp-mini{width:36px;height:36px;border-radius:50%;background:#ccc center/cover;border:2px solid #fff;box-shadow:0 0 0 1px #d9b45a;display:flex;align-items:center;justify-content:center;font-size:1rem;flex:none}
.mpy-fp-txt{display:flex;flex-direction:column;line-height:1.1}
.mpy-fp-txt b{font-size:.82rem;color:#10231a;font-weight:800}
.mpy-fp-txt small{font-size:.62rem;color:#6b6b6b;font-weight:600;max-width:150px;overflow:hidden;text-overflow:ellipsis}
.mpy-fp-cola{position:absolute;left:16px;bottom:-7px;width:13px;height:13px;background:#fff;border-right:2px solid #d9b45a;border-bottom:2px solid #d9b45a;transform:rotate(45deg)}
.mpy-wrap .mpy-chip.mpy-chip-dest{opacity:1 !important;background:#10231a !important;color:#e6c77c !important;border:1.5px solid #d9b45a !important;font-weight:700;font-size:.82rem}
.mpy-wrap .mpy-chip.mpy-chip-dest.on{background:#d9b45a !important;color:#10231a !important}
.mpy-wrap .mpy-chip.mpy-chip-dest small{color:inherit !important;opacity:.8}

/* ===== Destacado: ficha oscura elegante ===== */
.mpy-wrap .mpy-pop-dest .leaflet-popup-content-wrapper{background:#10231a;color:#e9efe9;padding:0;border-radius:16px;overflow:hidden;box-shadow:0 12px 34px rgba(0,0,0,.45)}
.mpy-wrap .mpy-pop-dest .leaflet-popup-content{margin:0;width:320px!important;min-width:0;max-height:min(440px,62vh);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#d9b45a #10231a}
@media (max-width:420px){.mpy-wrap .mpy-pop-dest .leaflet-popup-content{width:280px!important;max-height:min(380px,55vh)}.mpy-d-foto{height:160px}}
.mpy-wrap .mpy-pop-dest .leaflet-popup-tip{background:#10231a}
.mpy-wrap .mpy-pop-dest a.leaflet-popup-close-button{color:#fff;z-index:3;top:6px;right:6px;width:26px;height:26px;background:rgba(0,0,0,.45);border-radius:50%;font-size:18px;line-height:24px}
.mpy-d-foto{position:relative;height:190px;background:#1b3328}
.mpy-d-slides{display:flex;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.mpy-d-slides::-webkit-scrollbar{display:none}
.mpy-d-slides img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;scroll-snap-align:start}
.mpy-d-foto::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,35,26,0) 38%,rgba(16,35,26,.96));pointer-events:none}
.mpy-d-sobre{position:absolute;left:14px;right:14px;bottom:12px;z-index:1;pointer-events:none}
.mpy-d-eti{color:#d9b45a;font-size:.62rem;font-weight:800;letter-spacing:.14em}
.mpy-wrap .mpy-d-sobre h3{margin:2px 0 0;font-size:1.22rem;color:#fff;line-height:1.15}
.mpy-d-sub{color:#c4d1c8;font-size:.72rem;margin-top:2px}
.mpy-d-puntos{position:absolute;top:10px;left:0;right:0;display:flex;justify-content:center;gap:4px;z-index:2;pointer-events:none}
.mpy-d-puntos i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.55)}
.mpy-d-puntos i.on{background:#fff;width:16px;border-radius:4px}
.mpy-d-cont{position:absolute;top:8px;left:10px;background:rgba(0,0,0,.5);color:#fff;border-radius:10px;padding:2px 8px;font-size:.66rem;z-index:2}
.mpy-d-cuerpo{padding:12px 14px 12px}
.mpy-d-fila{display:flex;justify-content:space-between;align-items:baseline;gap:8px;border-bottom:1px solid rgba(217,180,90,.3);padding-bottom:9px}
.mpy-d-precio{color:#c4d1c8;font-size:.76rem}
.mpy-d-precio b{font-size:1.25rem;color:#d9b45a}
.mpy-d-precio small{display:block;color:#93a69a;font-size:.66rem}
.mpy-wrap a.mpy-d-nota{color:#fff;font-weight:800;font-size:.85rem;white-space:nowrap}
.mpy-d-nota small{color:#a9b8ae;font-weight:400}
.mpy-d-desc{margin:9px 0 0;color:#dbe4dd;font-size:.76rem;line-height:1.4}
.mpy-d-serv{display:flex;flex-wrap:wrap;gap:4px;margin-top:9px}
.mpy-d-serv span{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#dfe8e1;border-radius:11px;padding:2px 8px;font-size:.68rem}
.mpy-d-media{display:flex;gap:6px;margin-top:10px}
.mpy-wrap .mpy-d-media a{flex:1;text-align:center;background:rgba(217,180,90,.12);border:1px solid rgba(217,180,90,.4);color:#e6c77c;border-radius:9px;padding:7px 4px;font-size:.72rem;font-weight:700}
.mpy-wrap a.mpy-d-wa{display:block;margin-top:10px;background:#25d366;color:#08351b;text-align:center;border-radius:10px;padding:11px;font-weight:800;font-size:.9rem}
.mpy-d-botones{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
.mpy-wrap .mpy-d-botones a{flex:1 1 auto;text-align:center;background:rgba(255,255,255,.1);color:#fff;border-radius:9px;padding:7px 8px;font-size:.72rem;font-weight:700}
.mpy-wrap .mpy-d-botones a.mpy-d-reserva{flex-basis:100%;background:#d9b45a;color:#10231a;font-size:.8rem;padding:9px}
.mpy-d-mas,.mpy-d-cerca{margin-top:8px;font-size:.72rem;color:#c4d1c8}
.mpy-d-mas summary,.mpy-d-cerca summary{cursor:pointer;color:#e6c77c}
.mpy-wrap .mpy-d-mas a,.mpy-wrap .mpy-d-cerca a{color:#9fd8b4}
.mpy-wrap .mpy-d-pie a{color:#e6c77c}
.mpy-wrap .mpy-d-cerca b,.mpy-wrap .mpy-d-cerca summary b{color:#e9efe9 !important}
.mpy-wrap .mpy-d-cerca small{color:#93a69a}
.mpy-d-cerca .mpy-cerca-util{margin:0}
.mpy-d-pie{display:flex;justify-content:space-between;align-items:center;margin-top:9px;font-size:.72rem}
.mpy-d .mpy-sociales{display:flex;gap:6px}
.mpy-d .mpy-red svg{background:#fff;border-radius:6px;padding:2px}
.mpy-d .mpy-op-links{margin-top:6px;text-align:right;font-size:.66rem}
.mpy-wrap .mpy-d .mpy-op-links a{color:#93a69a}
#mpy-galeria-grande{width:100%;height:100%;overflow-y:auto;background:#000;display:flex;flex-direction:column;gap:6px;padding:6px;box-sizing:border-box}
#mpy-galeria-grande img{width:100%;height:auto;border-radius:6px}
.mpy-mapa-cont.mpy-con-ficha #mpy-capas{display:none}

/* precio de motorhome, aparte del de las habitaciones */
.mpy-precio-mh{display:flex;align-items:baseline;gap:6px;margin-top:5px;background:#e8f1fb;border:1.5px dashed #2166ac;border-radius:10px;padding:6px 12px;color:#123c66}
.mpy-precio-mh span{font-weight:700;font-size:.8rem}.mpy-precio-mh b{font-size:1.05rem;margin-left:auto}.mpy-precio-mh small{color:#4b6a8a}
.mpy-d-mh{display:flex;align-items:baseline;gap:6px;margin-top:8px;border:1px dashed rgba(217,180,90,.55);border-radius:10px;padding:7px 11px;color:#c4d1c8;font-size:.76rem}
.mpy-d-mh span{font-weight:700;color:#e9efe9}.mpy-d-mh b{margin-left:auto;font-size:1.05rem;color:#d9b45a}.mpy-d-mh small{color:#93a69a}
.mpy-fp-mh{position:absolute;top:-11px;right:-8px;background:#fff;border:1.5px solid #d9b45a;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:.72rem;box-shadow:0 1px 4px rgba(0,0,0,.3)}
.mpy-wrap .mpy-chip.mpy-chip-dest.mpy-chip-vacio{opacity:.45 !important}

/* ===== Publicidad: franja de banners debajo del mapa ===== */
.mpy-pub{position:relative;margin:8px 0 0;background:#141a24;border-radius:12px;padding:7px 10px 10px}
.mpy-pub[hidden]{display:none}
.mpy-pub-tit{display:flex;justify-content:space-between;align-items:center;margin:0 2px 6px;font-size:.6rem;letter-spacing:.16em;color:#8a93a3;font-weight:600;font-family:'Segoe UI',system-ui,sans-serif}
.mpy-wrap .mpy-pub-tit a{color:#e6c77c;text-decoration:none;letter-spacing:.08em}
.mpy-pub-pista{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.mpy-pub-pista::-webkit-scrollbar{display:none}
.mpy-wrap a.mpy-bn{flex:0 0 168px;height:140px;border-radius:10px;overflow:hidden;scroll-snap-align:start;text-decoration:none;position:relative;display:flex;flex-direction:column;transition:transform .15s}
.mpy-wrap a.mpy-bn:hover{transform:translateY(-2px)}
.mpy-bn-img img{width:100%;height:100%;object-fit:cover;display:block}
.mpy-bn-t{padding:9px 10px;font-family:'Segoe UI',system-ui,sans-serif}
.mpy-bn-eye{font-size:.5rem;letter-spacing:.13em;font-weight:700;text-transform:uppercase}
.mpy-bn-tit{font-size:.84rem;line-height:1.12;margin-top:3px;font-weight:800;letter-spacing:-.01em}
.mpy-bn-fr{font-size:.6rem;line-height:1.3;margin-top:3px;opacity:.85;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.mpy-bn-numf{display:flex;align-items:baseline;gap:5px;margin-top:2px}.mpy-bn-num{font-size:1.45rem;font-weight:800;line-height:1}.mpy-bn-numf small{font-size:.56rem;line-height:1.15}
.mpy-bn-pie{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:6px;font-size:.52rem;opacity:.95}
.mpy-bn-pie>span:first-child{opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mpy-bn-btn{font-size:.58rem;font-weight:800;border-radius:6px;padding:4px 8px;white-space:nowrap}
.mpy-bn-oro{background:linear-gradient(135deg,#10231a,#1b3a2b);color:#e9efe9}.mpy-bn-oro .mpy-bn-eye{color:#d9b45a}.mpy-bn-oro .mpy-bn-btn{background:#d9b45a;color:#10231a}
.mpy-bn-wsr{background:linear-gradient(135deg,#0f1b33,#1c3360);color:#fff}.mpy-bn-wsr .mpy-bn-eye{color:#f5a623}.mpy-bn-wsr .mpy-bn-btn{background:#f5a623;color:#1a1300}
.mpy-bn-tierra{background:radial-gradient(circle at 85% 0,#6b3f1d,#2a1a0f 65%);color:#f3e7da}.mpy-bn-tierra .mpy-bn-eye{color:#e0a15b}.mpy-bn-tierra .mpy-bn-btn{background:#e0a15b;color:#2a1a0f}
.mpy-bn-claro{background:#fff;color:#1d2a3a}.mpy-bn-claro .mpy-bn-eye{color:#2166ac}.mpy-bn-claro .mpy-bn-btn{background:#2166ac;color:#fff}
.mpy-bn-oferta{background:#fffaf3;color:#2b1d14;border-top:4px solid #c62828}.mpy-bn-oferta .mpy-bn-eye,.mpy-bn-oferta .mpy-bn-num{color:#c62828}.mpy-bn-oferta .mpy-bn-btn{background:#c62828;color:#fff}
.mpy-bn-agua{background:radial-gradient(circle at 80% 0,#0f5c5c,#06262a 70%);color:#e3f6f4}.mpy-bn-agua .mpy-bn-eye{color:#4fd1c5}.mpy-bn-agua .mpy-bn-btn{background:#4fd1c5;color:#06262a}
.mpy-bn-noche{background:linear-gradient(135deg,#121a33,#1e2d55);color:#e6ecff}.mpy-bn-noche .mpy-bn-eye,.mpy-bn-noche .mpy-bn-num{color:#7fb0ff}.mpy-bn-noche .mpy-bn-btn{background:#7fb0ff;color:#0d1530}
.mpy-bn-verde{background:#f6faf6;color:#16301f}.mpy-bn-verde .mpy-bn-eye{color:#2e7d4f}.mpy-bn-verde .mpy-bn-btn{background:#1f5f99;color:#fff}
.mpy-bn-libre{background:repeating-linear-gradient(135deg,#1b2230 0 10px,#202838 10px 20px);color:#c9d1de;border:1.5px dashed #4a5568}.mpy-bn-libre .mpy-bn-eye{color:#e6c77c}.mpy-bn-libre .mpy-bn-btn{border:1.5px solid #e6c77c;color:#e6c77c}
.mpy-pub-fl{position:absolute;top:calc(50% + 6px);transform:translateY(-50%);width:28px;height:28px;border-radius:50%;border:none;background:rgba(255,255,255,.92);color:#10231a;font-size:1.1rem;line-height:1;cursor:pointer;box-shadow:0 2px 6px rgba(0,0,0,.35);z-index:2;padding:0}
.mpy-pub-izq{left:2px}.mpy-pub-der{right:2px}
@media (max-width:600px){.mpy-pub-fl{display:none}.mpy-wrap a.mpy-bn{flex-basis:150px;height:125px}}

/* ===== modo compacto (?embed=1): el mapa dentro de la portada ===== */
.mpy-wrap.mpy-embed{padding:0 !important}
.mpy-wrap.mpy-embed .mpy-controles,.mpy-wrap.mpy-embed #mpy-aviso,.mpy-wrap.mpy-embed .mpy-emerg,.mpy-wrap.mpy-embed #mpy-pub,.mpy-wrap.mpy-embed .mpy-credito,.mpy-wrap.mpy-embed #mpy-bottombar{display:none !important}
.mpy-wrap.mpy-embed .mpy-mapa-cont{height:100vh !important;min-height:0 !important;border-radius:0 !important;margin:0 !important}
body:has(.mpy-embed) .mpy-credito{display:none !important}

/* estado de rutas (parte del MOPC) */
.mpy-wrap .mpy-chip.mpy-chip-rutas.on{border-color:#c0392b !important;background:#fdecea !important}
.mpy-ruta-pin div{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.45)}
.mpy-popup-ruta h3{margin:6px 0 4px;font-size:1rem}
.mpy-popup-ruta p{margin:4px 0}
.mpy-ruta-eti{display:inline-block;color:#fff;font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}
.mpy-guia-links{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;padding:10px 12px 0;font-size:.9rem}
.mpy-guia-links a{color:#1b7a43;text-decoration:none;font-weight:600}
.mpy-rutas-nv{display:flex;flex-wrap:wrap;gap:4px;margin:2px 0 4px 10px;padding-left:8px;border-left:2px solid #c0392b}
.mpy-wrap .mpy-rutas-nv .mpy-chip{font-size:.78rem}
.mpy-wrap .mpy-rutas-nv .mpy-chip:not(.on){opacity:.45;text-decoration:line-through}
.mpy-wrap .mpy-chip.mpy-chip-limpiar{opacity:1;font-weight:600;border-color:#999 !important}
.mpy-circ-foto{float:right;width:min(42%,260px);margin:0 0 8px 12px}
.mpy-circ-foto img{width:100%;height:140px;object-fit:cover;border-radius:8px;display:block}
.mpy-circ-foto figcaption{font-size:.68rem;color:#777;line-height:1.3;margin-top:3px}
.mpy-circ-foto figcaption a{color:#777}
@media (max-width:600px){.mpy-circ-foto{float:none;width:100%;margin:0 0 8px}}
.mpy-circ-det::after{content:"";display:block;clear:both}
