/* La pestaña «Mecánicos | Bujías» de Entretuercas (directorio etapa 3, 12-nov-2026). Usa las clases y las variables de la tienda. */

/* ── 1. Las etiquetas «Mecánicos | Bujías», arriba de la cabecera ── */
.dp-tabs{background:rgba(255,255,255,.82)}
.dp-tabs-in{max-width:1280px;margin:0 auto;padding:9px 18px 9px;display:flex;align-items:center;gap:8px}
.dp-tab{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 18px 0 14px;border-radius:999px;border:1.5px solid var(--border-strong,#d9d3c8);
  background:#fff;color:var(--ink-soft,#4d525b);font-family:var(--font-display);font-weight:700;font-size:.95rem;letter-spacing:-.01em;cursor:pointer;
  white-space:nowrap;text-decoration:none;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}
.dp-tab:hover{border-color:var(--orange,#e35c12);color:var(--orange,#e35c12)}
.dp-tab.on,html.dp-mec .dp-tab[data-tab=mecanicos],html.dp-buj .dp-tab[data-tab=bujias]{background:var(--orange,#e35c12);border-color:var(--orange,#e35c12);color:#fff;box-shadow:0 4px 12px -4px rgba(227,92,18,.45)}
.dp-tab.on:hover,html.dp-mec .dp-tab[data-tab=mecanicos]:hover,html.dp-buj .dp-tab[data-tab=bujias]:hover{color:#fff}
.dp-tab svg{flex:0 0 auto}
.dp-tab:focus-visible{outline:2px solid var(--orange,#e35c12);outline-offset:2px}
@media(max-width:760px){
  .dp-tabs-in{padding:7px 12px}
  .dp-tab{flex:1 1 0;justify-content:center;height:36px;font-size:.92rem}
}

/* ── 2. Qué se ve con cada pestaña ── */
html.dp-mec .sm-search-wrap > :not(.dp-solo-mec),
html.dp-mec .bjh-band-in > :not(.dp-solo-mec),
html.dp-mec #smSide > .blk:not(.dp-solo-mec),
html.dp-mec .sm-main > :not(.dp-solo-mec),
html.dp-mec .patcoach,
html.dp-mec #enviosWidget{display:none !important}
html.dp-buj .dp-solo-mec{display:none !important}

/* ── 3. Lo que la tienda no tiene ── */
.bjh-pick.dp-pick{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){
  .bjh-pick.dp-pick{grid-template-columns:1fr 1fr}
  .bjh-pick.dp-pick #dpModo{grid-column:1 / -1}
}
.dp-insc{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;text-align:center}
.prod-row.dp-card .pr-img.dp-foto{background:#f1efe9}
.prod-row.dp-card .pr-img.dp-foto a{display:block;width:100%;height:100%}
.prod-row.dp-card .pr-img.dp-foto img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover}
.prod-row.dp-card .prod-tit a{color:inherit}
.prod-row.dp-card .prod-tit a:hover{color:var(--accent-ink,#b0480c)}
.prod-row.dp-card .dp-dest{cursor:default;animation:none}
.prod-row.dp-card .dp-dest:hover{border-color:var(--border,#e5e0d8);box-shadow:none;transform:none}
.prod-row.dp-card .dp-dest .fab-logo{width:16px;height:16px}
.prod-row.dp-card .dp-mas{font-size:.72rem;color:var(--muted)}
.prod-row.dp-card .pr-side{flex-basis:176px}
.prod-row.dp-card a.btn-add{display:block;text-align:center;text-decoration:none;line-height:1.25}
.dp-perfil{display:flex;align-items:center;justify-content:center;height:40px;padding:0 14px;border:1.5px solid var(--border);border-radius:10px;background:#fff;
  color:var(--text);font-weight:700;font-size:.88rem;text-decoration:none;white-space:nowrap;transition:border-color .15s,color .15s}
.dp-perfil:hover{border-color:var(--orange);color:var(--orange)}
.prod-row.dp-card .dp-meta-mob{display:none}
@media(max-width:560px){
  .prod-row.dp-card .dp-meta-desk{display:none}
  .prod-row.dp-card .dp-meta-mob{display:flex;flex:1 1 100%;margin:0}
  .prod-row.dp-card .pr-side{flex-basis:100%}
  .pr-buyrow .dp-perfil{flex:0 0 auto;height:auto}
  .prod-row.dp-card .pr-buyrow .btn-add{padding:11px 10px}
}
.dp-orden{margin:16px 2px 0;font-size:.78rem;color:var(--muted)}
.dp-unidos{margin:0 2px 12px;font-size:.84rem;color:var(--ink-soft,#4d525b)}
.dp-orden a{color:var(--accent-ink,#b0480c);text-decoration:underline}
.dp-vacio{padding:34px 20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}
.dp-vacio-t{font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--ink);margin-bottom:6px}
.dp-vacio-acc{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:16px}
.dp-vacio-acc .emp-btn{text-decoration:none;display:inline-flex;align-items:center}
.dp-cerca-t{margin:20px 2px 4px;font-family:var(--font-display);font-weight:700;font-size:1.02rem;color:var(--ink)}
.dp-cerca-s{margin:2px 2px 8px;font-size:.84rem;color:var(--muted);font-weight:600}
.dp-sug .sug-crumb.term{text-transform:none}
.sug-opt .dp-n{margin-left:7px;font-size:.76rem;font-weight:700;color:var(--muted)}
.sug-opt:hover .dp-n{color:inherit}
.sug-opt{display:inline-flex;align-items:center}
.dp-sug-cara{width:22px;height:22px;border-radius:50%;object-fit:cover;margin:-3px 8px -3px -6px;flex:0 0 auto;background:#f1efe9}
.dp-vertodos{padding:7px 13px}
.dp-sug-nada{margin-top:8px;padding-top:9px;border-top:1px solid #f0ece4;font-size:.84rem;color:var(--muted)}
.sug-box .dp-sug-nada:first-child{margin-top:0;padding-top:0;border-top:0}
.dp-chiprow{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}
.dp-chiprow:empty,.dp-chiprow .active-filters:empty{display:none}
@media(max-width:900px){
  .sm-toolbar.dp-toolbar{flex-wrap:wrap;overflow:visible;row-gap:8px}
  .sm-toolbar.dp-toolbar > select{margin-left:auto}
  .dp-toolbar .dp-chiprow{order:9;flex:1 1 100%;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .dp-toolbar .dp-chiprow::-webkit-scrollbar{display:none}
  .dp-toolbar .dp-chiprow > *{flex:0 0 auto}
}
.dp-costado a.vt-row{text-decoration:none;box-sizing:border-box}
.dp-tucom{display:flex;align-items:center;gap:8px;width:100%;margin-top:9px;padding:9px 11px;border:1.5px solid #fbd9c8;border-radius:8px;
  background:var(--accent-soft,#fdf1ea);color:var(--accent-ink,#b0480c);font-family:inherit;font-size:.85rem;cursor:pointer;text-align:left}
.dp-tucom:hover{border-color:var(--orange,#e35c12)}
.dp-tucom svg{flex:0 0 auto}
.dp-tucom-t{flex:1;min-width:0;color:var(--ink,#1a1a1a);display:flex;flex-direction:column;line-height:1.2}
.dp-tucom-r{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--accent-ink,#b0480c)}
.dp-tucom .vt-count{background:#fff;border-color:#fbd9c8;color:var(--accent-ink,#b0480c)}
.dp-cbus{width:100%;margin-top:9px;border:1.5px solid var(--border);border-radius:8px;padding:9px 11px;font-size:.86rem;outline:none;background:#fff;
  font-family:inherit;color:var(--text);-webkit-appearance:none;appearance:none}
.dp-cbus:focus{border-color:var(--orange)}
.dp-costado .vt-tree{margin-top:9px}
.dp-costado .sf-name{margin-top:9px}
.dp-costado .sf-name svg{flex:0 0 auto}
.dp-comuna-n{margin-left:auto;font-size:.74rem;font-weight:700;color:var(--accent-ink,#b0480c);opacity:.85;white-space:nowrap}
.dp-sub{margin:14px 0 0;font-size:.72rem;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);font-weight:800}
.dp-costado .vt-label{white-space:normal;line-height:1.25}
.dp-costado .vt-row{align-items:flex-start}
.dp-costado .vt-row .vt-caret,.dp-costado .vt-row .vt-dot,.dp-costado .vt-row .vt-count{margin-top:2px}
.dp-costado .vt-row .vt-dot{margin-top:7px}

/* ── 4. Los ganchos de index.php: no son una caja (lo de adentro se acomoda como en la maqueta). La hoja NUNCA le da display a
   .dp-tabs: si lo hiciera, el atributo hidden del nivel 1 dejaría de esconderla. ── */
.dp-monta{display:contents}
.dp-tabs[hidden]{display:none}
@media(min-width:1100px){
  .bjh-band-in > .dp-monta > .bjh{flex:1 1 auto;min-width:0;padding:0;border-bottom:0}
  .bjh-band-in > .dp-monta > .sm-hero-cot{flex:0 0 auto;padding:0 0 0 22px;border-bottom:0;border-left:1px solid var(--border,#e5e7eb)}
}
/* «Conversemos» lo atiende la IA de bujías, que no sabe del directorio (diseño §15.14). */
html.dp-mec .wa-bujia{display:none !important}

/* ── 5. Las páginas del Worker: en el perfil y en las cortas no van la franja ni el costado (el contenido usa el ancho de la
   tienda); en la comuna, «Comunas cerca». Sólo junto con dp-mec: si la página cae a Bujías, se ve la tienda entera. ── */
html.dp-mec.dp-pag-perfil .bjh-band,html.dp-mec.dp-pag-corta .bjh-band,html.dp-mec.dp-pag-corregir .bjh-band,
html.dp-mec.dp-pag-perfil #smSide,html.dp-mec.dp-pag-corta #smSide,html.dp-mec.dp-pag-corregir #smSide,
html.dp-mec.dp-pag-perfil #sideOv,html.dp-mec.dp-pag-corta #sideOv,html.dp-mec.dp-pag-corregir #sideOv{display:none !important}
.dp-vecinas{margin-top:26px}
.dp-vecinas-t{margin:0 2px 8px;font-family:var(--font-display);font-weight:700;font-size:1.02rem;color:var(--ink)}
.dp-vecinas ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.dp-vecinas a{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1.5px solid var(--border);border-radius:10px;background:#fff;color:var(--text);
  font-size:.86rem;font-weight:600;text-decoration:none;transition:border-color .15s,color .15s}
.dp-vecinas a:hover{border-color:var(--orange);color:var(--orange)}
.dp-vecinas .vt-count{margin-left:2px}

/* ── 6. El perfil (los bloques blancos con borde de la tienda) ── */
.dp-pf{display:flex;flex-direction:column;gap:14px}
.dp-migas{margin:2px 2px 0;font-size:.8rem;color:var(--muted)}
.dp-migas a{color:var(--muted);text-decoration:none}
.dp-migas a:hover{color:var(--accent-ink,#b0480c);text-decoration:underline}
.dp-pf .blk{background:var(--surface,#fff);border:1px solid var(--border);border-radius:var(--radius,14px);box-shadow:var(--shadow);padding:18px 20px}
.dp-pf h2{margin:0 0 10px;font-family:var(--font-display);font-size:1.02rem;font-weight:700;color:var(--ink)}
.dp-pf-cab{display:flex;align-items:center;gap:18px}
.dp-pf-cara{flex:0 0 auto;width:120px;height:120px;border-radius:12px;object-fit:cover;background:#f1efe9}
.dp-pf-nombre{margin:0;font-family:var(--font-display);font-size:1.55rem;line-height:1.15;font-weight:700;color:var(--ink);overflow-wrap:anywhere}
.dp-pf-linea{margin:6px 0 0;font-size:.92rem;color:var(--ink-soft,#4d525b)}
/* (13-nov-2026, integración) En bloque y no inline-flex: el texto suelto era un ítem flex y a 375 px quedaba en una columna angosta. */
.dp-pf-dest{display:block;margin:8px 0 0;font-size:.8rem;line-height:1.5;color:var(--muted)}
.dp-pf-dest svg{vertical-align:-2px;margin-right:4px}
.dp-pf-dest .fab-nm{font-weight:800;color:var(--accent-ink,#b0480c)}
.dp-pf-dest a{color:var(--accent-ink,#b0480c);text-decoration:underline}
.dp-pf-acc{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}
.dp-pf-acc .btn-add{width:auto;min-width:180px;padding:12px 22px;text-align:center;text-decoration:none}
.dp-pf-acc .dp-perfil{height:44px;padding:0 18px}
.dp-pf .dp-supag{font-size:.88rem;font-weight:700;color:var(--accent-ink,#b0480c);text-decoration:underline}
.dp-pf .pr-desc{display:block;-webkit-line-clamp:none;line-clamp:none;overflow:visible;margin:0 0 6px}
.dp-pf-tags{display:flex;flex-wrap:wrap;gap:6px}
.dp-pf-tags .apps-badge{font-size:.78rem;padding:4px 11px}
.dp-pf ul.dp-pf-l{list-style:none;margin:0;padding:0}
.dp-pf ul.dp-pf-l li{padding:7px 0;border-top:1px solid var(--border);font-size:.9rem;color:var(--text)}
.dp-pf ul.dp-pf-l li:first-child{border-top:0;padding-top:0}
.dp-pf-sobre{margin:0;font-size:.92rem;line-height:1.55;color:var(--text);white-space:pre-line;overflow-wrap:anywhere}
.dp-pf-fotos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.dp-pf-foto{display:block;padding:0;border:0;background:#f1efe9;border-radius:10px;overflow:hidden;cursor:zoom-in;aspect-ratio:4/3}
.dp-pf-foto img{display:block;width:100%;height:100%;object-fit:cover}
.dp-pf-pie{font-size:.84rem;color:var(--muted)}
.dp-pf-pie p{margin:0 0 4px}
.dp-pf-pie a{color:var(--accent-ink,#b0480c);text-decoration:underline}
.dp-pf-otros .prod-grid{margin-top:4px}
.dp-pf-otros .dp-pf-todos{display:inline-block;margin-top:12px;font-size:.88rem;font-weight:700;color:var(--accent-ink,#b0480c)}
.dp-mapa{margin-top:10px;max-width:420px;aspect-ratio:4/3;background:#f6f5f1;border-radius:10px;overflow:hidden}
.dp-mapa svg{display:block;width:100%;height:100%}
.dp-mapa path{fill:#e7e3db;stroke:#fff;stroke-width:1;vector-effect:non-scaling-stroke}
.dp-mapa path.si{fill:var(--green,#2f9e44)}
@media(max-width:560px){
  .dp-pf .blk{padding:16px}
  .dp-pf-cab{align-items:flex-start;gap:14px}
  .dp-pf-cara{width:88px;height:88px}
  .dp-pf-nombre{font-size:1.3rem}
  .dp-pf-acc .btn-add{flex:1 1 100%}
}

/* ── 7. Las páginas cortas (404, 410, WhatsApp con Turnstile, «Corregir mi ficha») ── */
.dp-corta{background:var(--surface,#fff);border:1px solid var(--border);border-radius:var(--radius,14px);box-shadow:var(--shadow);padding:30px 24px;max-width:640px}
.dp-corta-t{margin:0 0 8px;font-family:var(--font-display);font-size:1.45rem;line-height:1.2;font-weight:700;color:var(--ink)}
.dp-corta .pr-desc{display:block;-webkit-line-clamp:none;line-clamp:none;overflow:visible;font-size:1rem;line-height:1.5}
.dp-corta-acc{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px}
.dp-corta-acc .btn-add{width:auto;min-width:200px;min-height:48px;padding:12px 22px;font-size:1rem;text-align:center;text-decoration:none}
.dp-corta .dp-msg{margin:12px 0 0;font-size:1rem;color:var(--muted)}
.dp-corta .dp-msg.err,.dp-corta .err{color:#b42318}
.dp-corta .dp-msg:empty{display:none}

/* ── 8. El visor de fotos del perfil ── */
.dp-vis{position:fixed;inset:0;z-index:1200;background:rgba(20,22,28,.86);display:flex;flex-direction:column}
.dp-vis-b{display:flex;justify-content:flex-end;padding:12px}
.dp-vis-b .cot-x{position:static}
.dp-vis-f{flex:1;display:flex;align-items:center;justify-content:center;padding:0 12px 20px;min-height:0}
.dp-vis-f img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}

/* ── 9. El modo mapa (14-nov-2026): el botón junto a la lupa, la capa bajo la cabecera, los pines, «Cerca de mí» y la tira ── */
.dp-search .dp-mapa-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;width:auto;min-width:38px;height:38px;padding:0 13px 0 11px;margin-right:6px;border-radius:9px;
  border:1.5px solid var(--border-strong,#d9d3c8);background:#fff;color:var(--accent-ink,#b0480c);font-family:inherit;font-weight:700;font-size:.88rem;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.dp-search .dp-mapa-btn:hover{border-color:var(--orange,#e35c12);background:#fff7f1}
.dp-search .dp-mapa-btn.on{background:var(--ink,#1d2433);border-color:var(--ink,#1d2433);color:#fff}
.dp-search .dp-mapa-btn svg{flex:0 0 auto}
.dp-search .dp-mapa-btn:focus-visible{outline:2px solid var(--orange,#e35c12);outline-offset:2px}
@media(max-width:560px){.dp-search .dp-mapa-btn{width:38px;padding:0}.dp-search .dp-mapa-tx{display:none}}
.dp-mapa-caja{display:none;position:fixed;left:0;right:0;bottom:0;top:0;z-index:55;background:#eef0ec}
html.dp-modo-mapa .dp-mapa-caja{display:block}
html.dp-modo-mapa body{overflow:hidden}
html.dp-buj .dp-mapa-caja{display:none !important}
.dp-mapa-lienzo{position:absolute;inset:0}
.dp-mapa-lienzo.leaflet-container{font-family:inherit;background:#eef0ec}
.dp-mapa-lienzo .leaflet-tile-pane{filter:saturate(.55) brightness(1.04) contrast(.95)}
.dp-mapa-lienzo .leaflet-control-attribution{font-size:11px;line-height:1.5;background:rgba(255,255,255,.85);color:#555}
.dp-mapa-ctrl{position:absolute;top:12px;right:12px;z-index:800;display:flex;flex-direction:column;gap:8px}
.dp-mapa-yo{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 17px 0 13px;border-radius:999px;border:0;background:#fff;color:var(--ink,#1d2433);
  font-family:var(--font-display,inherit);font-weight:700;font-size:.93rem;box-shadow:0 6px 18px -6px rgba(20,22,28,.4),0 0 0 1px rgba(20,22,28,.07);cursor:pointer}
.dp-mapa-yo svg{color:#1a73e8}
.dp-mapa-yo.on{background:#1a73e8;color:#fff}
.dp-mapa-yo.on svg{color:#fff}
.dp-mapa-yo.buscando svg{animation:dpGira 1s linear infinite}
@keyframes dpGira{to{transform:rotate(360deg)}}
.dp-mapa-aviso{position:absolute;left:50%;top:66px;transform:translateX(-50%);z-index:800;width:max-content;max-width:calc(100% - 32px);background:var(--ink,#1d2433);color:#fff;font-size:.9rem;
  font-weight:600;line-height:1.35;padding:10px 16px;border-radius:12px;box-shadow:0 8px 24px -8px rgba(0,0,0,.45);text-align:center}
.dp-mapa-aviso:empty{display:none}
.dp-pin-w{background:none;border:0}
.dp-pin{position:relative;width:46px;height:56px;transition:transform .18s ease;transform-origin:50% 100%;cursor:pointer}
.dp-pin-c{position:absolute;left:0;top:0;width:46px;height:46px;box-sizing:border-box;border-radius:50%;background:#fff;border:3px solid #fff;overflow:hidden;display:flex;align-items:center;justify-content:center;
  box-shadow:0 0 0 2.5px var(--orange,#e35c12),0 8px 16px -6px rgba(0,0,0,.5)}
.dp-pin-c img{display:block;width:100%;height:100%;object-fit:cover}
.dp-pin-ini{font-family:var(--font-display,inherit);font-weight:800;font-size:1.1rem;color:var(--orange,#e35c12)}
.dp-pin::after{content:"";position:absolute;left:50%;bottom:0;margin-left:-7px;width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-top:11px solid var(--orange,#e35c12)}
.dp-pin.dest{width:56px;height:66px}
.dp-pin.dest .dp-pin-c{width:56px;height:56px;box-shadow:0 0 0 3px #f5a524,0 0 0 7px rgba(245,165,36,.3),0 10px 18px -6px rgba(0,0,0,.5)}
.dp-pin.dest::after{border-top-color:#f5a524}
.dp-pin-est{position:absolute;right:-3px;top:-3px;width:21px;height:21px;box-sizing:border-box;border-radius:50%;background:#f5a524;border:2px solid #fff;display:flex;align-items:center;justify-content:center}
.dp-pin.zona .dp-pin-c{box-shadow:0 8px 16px -6px rgba(0,0,0,.5);outline:2.5px dashed var(--orange,#e35c12);outline-offset:1px}
.dp-pin.sel{transform:scale(1.2)}
.dp-pin.sel .dp-pin-c{box-shadow:0 0 0 3px var(--ink,#1d2433),0 10px 20px -6px rgba(0,0,0,.55)}
.dp-pin.sel::after{border-top-color:var(--ink,#1d2433)}
.dp-racimo{position:absolute;left:50%;top:0;transform:translateX(-50%);display:flex;align-items:center;height:46px;box-sizing:border-box;padding:4px 12px 4px 4px;border-radius:999px;background:var(--orange,#e35c12);border:2.5px solid #fff;
  box-shadow:0 0 0 5px rgba(227,92,18,.22),0 8px 18px -6px rgba(0,0,0,.5);cursor:pointer;width:max-content;transition:transform .15s}
.dp-racimo:hover{transform:translateX(-50%) scale(1.06)}
.dp-racimo.dest{background:#f5a524;box-shadow:0 0 0 5px rgba(245,165,36,.28),0 8px 18px -6px rgba(0,0,0,.5)}
.dp-rac-caras{display:flex}
.dp-rac-caras img{width:32px;height:32px;border-radius:50%;border:2px solid #fff;object-fit:cover;background:#fff;box-sizing:border-box}
.dp-rac-caras img+img{margin-left:-12px}
.dp-rac-n{margin-left:7px;font-family:var(--font-display,inherit);font-weight:800;font-size:1rem;color:#fff;line-height:1}
.dp-yo-w{background:none;border:0}
.dp-yo{position:relative;width:22px;height:22px}
.dp-yo-p{position:absolute;left:3px;top:3px;width:16px;height:16px;box-sizing:border-box;border-radius:50%;background:#1a73e8;border:3px solid #fff;box-shadow:0 1px 6px rgba(0,0,0,.4)}
.dp-yo-halo{position:absolute;left:-9px;top:-9px;width:40px;height:40px;border-radius:50%;background:rgba(26,115,232,.3);animation:dpPulso 2s ease-out infinite}
@keyframes dpPulso{0%{transform:scale(.4);opacity:.9}100%{transform:scale(1.4);opacity:0}}
@media(prefers-reduced-motion:reduce){.dp-yo-halo,.dp-mapa-yo.buscando svg{animation:none}.dp-pin{transition:none}}
.dp-mapa-tira{position:absolute;left:0;right:0;bottom:0;z-index:800;padding:0 0 calc(10px + env(safe-area-inset-bottom,0px))}
.dp-mt-cab{display:inline-block;margin:0 12px 8px;padding:6px 12px;border-radius:999px;background:#fff;font-size:.82rem;color:var(--muted,#6b7280);box-shadow:0 4px 12px -6px rgba(0,0,0,.4)}
.dp-mt-cab b{color:var(--ink,#1d2433)}
.dp-mt-fila{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 12px 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.dp-mt-fila::-webkit-scrollbar{display:none}
.dp-mt-card{flex:0 0 86%;max-width:340px;box-sizing:border-box;scroll-snap-align:center;display:flex;gap:12px;align-items:flex-start;padding:12px;background:#fff;border:1px solid var(--border,#e6e1d8);
  border-radius:14px;box-shadow:0 10px 24px -12px rgba(20,22,28,.5);cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}
.dp-mt-card.sel{border-color:var(--orange,#e35c12);box-shadow:0 0 0 1.5px var(--orange,#e35c12),0 10px 24px -12px rgba(20,22,28,.5)}
.dp-mt-foto{flex:0 0 64px;width:64px;height:64px;border-radius:12px;object-fit:cover;background:#f1efe9}
.dp-mt-tx{flex:1;min-width:0}
.dp-mt-n{display:flex;align-items:center;gap:5px;font-family:var(--font-display,inherit);font-weight:700;font-size:1rem;line-height:1.25;color:var(--ink,#1d2433)}
.dp-mt-n a{min-width:0;color:inherit;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dp-mt-est{flex:0 0 auto}
.dp-mt-d{margin-top:2px;font-size:.84rem;color:var(--muted,#6b7280);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dp-mt-km{margin-top:3px;font-size:.84rem;font-weight:700;color:#1a73e8}
.dp-mt-acc{display:flex;gap:8px;margin-top:9px}
.dp-mt-acc .dp-perfil,.dp-mt-acc .btn-add{flex:1 1 0;width:auto;min-width:0;height:38px;min-height:38px;padding:0 10px;font-size:.86rem;display:inline-flex;align-items:center;justify-content:center;
  text-decoration:none;white-space:nowrap;box-sizing:border-box}
@media(min-width:921px){
  .dp-mapa-tira{top:14px;left:14px;bottom:14px;right:auto;width:370px;padding:0;display:flex;flex-direction:column;background:#fff;border:1px solid var(--border,#e6e1d8);border-radius:16px;
    box-shadow:0 16px 40px -18px rgba(20,22,28,.5);overflow:hidden}
  .dp-mt-cab{display:block;margin:0;padding:14px 16px;border-radius:0;box-shadow:none;border-bottom:1px solid var(--border,#e6e1d8);font-size:.88rem}
  .dp-mt-fila{flex:1;flex-direction:column;gap:0;padding:0;overflow-x:hidden;overflow-y:auto;scroll-snap-type:none}
  .dp-mt-card{flex:0 0 auto;width:100%;max-width:none;border:0;border-bottom:1px solid var(--border,#e6e1d8);border-radius:0;box-shadow:none;padding:14px 16px}
  .dp-mt-card:hover{background:#fbfaf7}
  .dp-mt-card.sel{background:#fff8f2;box-shadow:inset 3px 0 0 var(--orange,#e35c12)}
}

/* «Agendar hora» con la familia de la tienda (12-nov-2026, revisión 3 §15.8, «borde»): el fondo y la caja de los modales de la tienda
   (cot-ov, cot-modal: a pantalla completa en el teléfono, caja con borde redondo desde 680 px), la equis cot-x, los subtítulos como
   cot-sub, los campos como los del cotizador, la acción principal con el naranjo de la tienda y «Anterior» blanco con borde. Usa
   las variables de la tienda. Como en /inscribete, ningún texto bajo 16 px y ningún toque bajo 44 px (lo miden las pruebas). Sólo se
   animan transform y opacity; con prefers-reduced-motion, un fundido. */
html.ag-abierto,html.ag-abierto body{overflow:hidden}
.ag[hidden]{display:none !important}
/* Lo de los modales de la tienda (index.php: .cot-ov, .cot-modal, .cot-x) repetido acá con los mismos valores, para que el asistente
   se vea igual aunque la página no traiga esas reglas. */
.ag.cot-ov{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1250;background:rgba(20,22,28,.55);display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:transparent}
.ag .ag-in.cot-modal{background:#fff;width:100%;min-height:100%;margin:0 auto;position:relative}
.ag .ag-cerrar.cot-x{position:absolute;width:38px;height:38px;border-radius:50%;border:0;background:#f1f0ec;color:#555;font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:4}
.ag .ag-cerrar.cot-x:hover{background:#e6e4df}
@media(min-width:680px){.ag .ag-in.cot-modal{min-height:0;margin:34px auto;border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.35)}}
.ag *{box-sizing:border-box}
:where(.ag) p{margin:0;overflow-wrap:anywhere}
:where(.ag) button,:where(.ag) input,:where(.ag) textarea,:where(.ag) select{font-family:inherit;color:var(--ink,#201E1E)}
.ag .ag-in.cot-modal{display:flex;flex-direction:column;max-width:560px;padding:0;font-family:var(--font-body,system-ui,sans-serif);font-size:16px;line-height:1.45;color:var(--ink,#201E1E)}
@media(min-width:680px){.ag .ag-in.cot-modal{overflow:hidden}}
/* (13-nov-2026, revisión final «producto») En escritorio la caja tiene overflow:hidden y el pie sticky no se pegaba: en un notebook
   (1366×657, con la barra del navegador) «Confirmar hora» quedaba bajo el borde de la pantalla y había que bajar 209 px; en «Qué necesitas»,
   lo mismo con «Siguiente». Ahora la caja mide a lo más el alto de la ventana menos sus márgenes (34 + 34) y lo que se desplaza es el
   cuerpo: la cabecera y el pie quedan siempre a la vista. En el teléfono no cambia nada (ahí ya estaba bien). */
@media(min-width:680px){.ag .ag-in.cot-modal{max-height:calc(100vh - 68px)}.ag .ag-cuerpo{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}}
@supports (height:100dvh){@media(min-width:680px){.ag .ag-in.cot-modal{max-height:calc(100dvh - 68px)}}}
.ag.ag-abre .ag-in{animation:agSube .25s cubic-bezier(.16,1,.3,1) both}
.ag-cab{position:sticky;top:0;z-index:3;display:flex;align-items:center;min-height:64px;padding:12px 64px 12px 20px;background:#fff;border-bottom:1px solid var(--border,#e7e3db)}
.ag-tit{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-display);font-size:1.02rem;font-weight:800;color:#201E1E}
/* En el asistente la equis mide 44 px (los toques, nunca menos de 44). */
.ag .ag-cerrar.cot-x{top:10px;right:12px;width:44px;height:44px}
.ag-av{position:absolute;left:0;right:0;bottom:-1px;height:3px;overflow:hidden}
.ag-av span{display:block;height:3px;background:var(--accent,#e35c12);transform-origin:0 0;transform:scaleX(0);transition:transform .6s cubic-bezier(.16,1,.3,1)}
.ag-cuerpo{flex:1 0 auto;padding:22px 20px 26px;transition:opacity .16s,transform .16s}
.ag-cuerpo.ag-sale{opacity:0;transform:translateY(-10px)}
.ag-h1{margin:0;font-family:var(--font-display);font-size:1.32rem;line-height:1.2;font-weight:800;color:#201E1E;letter-spacing:-.01em}
.ag-h1:focus{outline:0}
.ag-msg{margin:12px 0 0;font-size:1rem;color:var(--muted,#767c84)}
.ag-msg:empty{display:none}
.ag-msg.ag-err,.ag-err{color:#b42318;font-size:1rem}
.ag-baj{margin:10px 0 0;font-size:1rem;color:var(--ink-soft,#4d525b)}
.ag-carga{margin:18px 0 0;padding:14px;border-radius:11px;background:#f6f5f1;color:var(--muted,#767c84);font-size:1rem}
.ag-ops{margin-top:18px}
.ag-op{position:relative;display:block;width:100%;min-height:58px;margin:0 0 9px;padding:13px 15px;border:1.5px solid #e2ddd4;border-radius:12px;background:#fafafa;text-align:left;cursor:pointer;transition:transform .2s cubic-bezier(.16,1,.3,1),opacity .2s}
.ag-op::after{content:'';position:absolute;top:-1.5px;right:-1.5px;bottom:-1.5px;left:-1.5px;border:2px solid var(--accent,#e35c12);border-radius:12px;opacity:0;transform:scale(1.02);transition:opacity .2s,transform .2s;pointer-events:none}
.ag-op.si{background:#fff5f1}
.ag-op.si::after{opacity:1;transform:none}
.ag-op:active{transform:scale(.98)}
.ag-op.ag-apagada{opacity:.55;cursor:default}
.ag-nom{display:block;font-size:1rem;font-weight:700;line-height:1.3;color:#201E1E}
.ag-det{display:block;margin-top:3px;font-size:1rem;color:var(--muted,#767c84);line-height:1.4}
.ag-dias{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;margin:18px -20px 0;padding:2px 20px 6px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.ag-dias::-webkit-scrollbar{display:none}
.ag-dias .ag-dia{flex:none}
.ag-dias .ag-baj,.ag-dias .ag-carga,.ag-dias .ag-err{flex:1 0 100%;white-space:normal}
.ag-dia,.ag-hr{position:relative;min-height:46px;margin:0 8px 8px 0;padding:10px 14px;border:1.5px solid #e2ddd4;border-radius:11px;background:#fafafa;font-size:1rem;font-weight:700;line-height:1.2;color:#201E1E;cursor:pointer;font-variant-numeric:tabular-nums;animation:agSube .24s cubic-bezier(.16,1,.3,1) both;transition:transform .2s cubic-bezier(.16,1,.3,1)}
.ag-dia::after,.ag-hr::after{content:'';position:absolute;top:-1.5px;right:-1.5px;bottom:-1.5px;left:-1.5px;border:2px solid var(--accent,#e35c12);border-radius:11px;opacity:0;transform:scale(.94);transition:opacity .2s,transform .2s;pointer-events:none}
.ag-dia.si,.ag-hr.si{background:#fff5f1}
.ag-dia.si::after,.ag-hr.si::after{opacity:1;transform:none}
.ag-dia:active,.ag-hr:active{transform:scale(.97)}
.ag-horas-c{margin-top:14px;padding-top:14px;border-top:1px solid #f0ece4}
.ag-horas-c:empty{display:none}
.ag-dia-l{margin:0 0 10px;font-weight:800;font-size:1rem;color:#201E1E}
.ag-horas{display:flex;flex-wrap:wrap}
.ag-hr{min-width:76px;text-align:center}
.ag-otro{margin-top:20px;font-size:1rem;color:var(--muted,#767c84)}
.ag-enl{display:inline-block;min-height:44px;padding:10px 0;border:0;background:none;color:var(--accent-ink,#b0480c);font-size:1rem;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.ag-enl-in{display:inline-block;min-height:44px;line-height:20px;padding:12px 0;color:var(--accent-ink,#b0480c);text-decoration:underline;text-underline-offset:3px}
.ag-campo{margin-top:16px}
.ag-campo:first-of-type{margin-top:18px}
.ag-lab{display:block;margin:0 0 6px;font-weight:800;font-size:1rem;color:#201E1E}
.ag-linea{position:relative;display:flex;align-items:center;border:1.5px solid #e2ddd4;border-radius:11px;background:#fafafa;padding:0 14px}
.ag-linea:focus-within{border-color:#ed3801;background:#fff}
.ag-linea.ag-mal{border-color:#b42318;background:#fff}
.ag-linea input,.ag-linea textarea,.ag-linea select{display:block;flex:1 1 auto;min-width:0;width:100%;margin:0;border:0;border-radius:0;-webkit-appearance:none;appearance:none;background:transparent;padding:13px 0;min-height:48px;font-size:16px;font-weight:500;line-height:1.3;color:#201E1E;outline:0}
.ag-linea textarea{min-height:92px;resize:none}
.ag-linea input::placeholder,.ag-linea textarea::placeholder{color:#9aa0a6;opacity:1;font-weight:400}
.ag-sel{align-items:center}
.ag-sel-c{flex:none;width:9px;height:9px;margin:0 2px 4px 8px;border-right:2px solid #767c84;border-bottom:2px solid #767c84;transform:rotate(45deg);pointer-events:none}
.ag-pre{margin-right:8px;padding-right:10px;border-right:1.5px solid #e2ddd4;font-weight:800;color:#3c454f;white-space:nowrap}
.ag-err-c{display:block;min-height:20px;margin:5px 0 0;color:#b42318;font-size:1rem}
.ag-err-c:empty{min-height:0}
.ag-sinpat{margin-top:2px}
.ag-bloque{display:block}
.ag-nota{margin-top:14px;font-size:1rem;color:var(--muted,#767c84)}
.ag-legal{margin-top:18px;padding-top:14px;border-top:1px solid #f0ece4;font-size:1rem;color:var(--muted,#767c84)}
.ag-ts{margin-top:12px}
.ag-resumen{margin-top:16px;padding:14px 16px;border:1px solid #e7e3db;border-radius:12px;background:#f6f5f1}
.ag-resumen p{margin:0 0 4px;font-size:1rem}
.ag-resumen .ag-r1{font-family:var(--font-display);font-size:1.15rem;font-weight:800;line-height:1.25;color:#201E1E}
.ag-acc{margin-top:18px}
.ag-acc .ag-bt,.ag-acc .ag-bt2{margin-top:10px}
.ag-bt,.ag-bt2{display:block;width:100%;min-height:50px;margin:0;padding:13px 16px;border-radius:11px;font-size:1.05rem;font-weight:700;line-height:1.3;text-align:center;text-decoration:none;cursor:pointer;transition:transform .2s cubic-bezier(.16,1,.3,1),opacity .2s}
.ag-bt{border:0;background:var(--accent,#e35c12);color:#fff}
.ag-bt:hover{background:var(--accent-strong,#bd4d0e)}
.ag-bt2{border:1.5px solid var(--border,#e7e3db);background:#fff;color:#201E1E}
.ag-bt2:hover{border-color:var(--accent,#e35c12);color:var(--accent,#e35c12)}
.ag-bt:active,.ag-bt2:active{transform:scale(.98)}
.ag-bt:disabled,.ag-bt2:disabled{opacity:.6;cursor:default}
.ag-bt2.ag-corto{display:inline-block;width:auto;min-height:44px;padding:8px 16px;margin-top:8px}
.ag-giro{display:inline-block;width:18px;height:18px;margin-right:10px;vertical-align:-3px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:agGira .7s linear infinite}
.ag-pie{position:sticky;bottom:0;z-index:3;padding:10px 20px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--border,#e7e3db)}
.ag-pie.oculto{display:none}
.ag-pie-in{display:flex}
.ag-pie-in .ag-bt2{flex:0 0 auto;width:auto;margin-right:10px;padding-left:18px;padding-right:18px}
.ag-pie-in .ag-bt,.ag-pie-in a.ag-bt{flex:1 1 auto;width:auto}
.ag-entra{animation:agEntra .5s cubic-bezier(.16,1,.3,1) both}
.ag-vuelve{animation:agEntraAtras .5s cubic-bezier(.16,1,.3,1) both}
.ag-ve{animation:agFundido .2s both}
@keyframes agEntra{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes agEntraAtras{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}
@keyframes agSube{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes agFundido{from{opacity:0}to{opacity:1}}
@keyframes agGira{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){
.ag-entra,.ag-vuelve,.ag-dia,.ag-hr,.ag.ag-abre .ag-in,.ag-ve,.ag .cot-modal{animation:agFundido .12s linear both!important;animation-delay:0s!important}
.ag-cuerpo{transition:opacity .12s linear}
.ag-cuerpo.ag-sale{transform:none}
.ag-op::after,.ag-dia::after,.ag-hr::after{transform:none;transition:opacity .12s linear}
.ag-op:active,.ag-dia:active,.ag-hr:active,.ag-bt:active,.ag-bt2:active{transform:none}
.ag-av span{transition:none}
}
