/* Libreta de ruta del vendedor de AppNovaDev: arriba eliges producto y municipio; cada producto tiñe la página con su color. */
:root{
  --bg:#f4f5f7; --hoja:#ffffff; --tinta:#161c26; --tenue:#5d6675; --linea:#dde1e8;
  --prod:#0f4c5c; --prod-suave:#e3eff1; --ambar:#f2a33a;
  --si:#1f7a4d; --si-suave:#e2f3ea; --no:#a8432f; --no-suave:#f7e4df; --vis:#8a5a00; --vis-suave:#fbefd9; --cli:#5b3fa0; --cli-suave:#ece6f7;
  --f-texto:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif; --f-dato:"IBM Plex Mono",ui-monospace,Menlo,monospace;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#0f141c; --hoja:#171e29; --tinta:#e8ecf2; --tenue:#98a2b3; --linea:#283244;
  --si:#6fd39d; --si-suave:#16342a; --no:#f0927c; --no-suave:#3a201b; --vis:#f2c36b; --vis-suave:#3a2e14; --cli:#b9a3f0; --cli-suave:#2a2340; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0f141c; --hoja:#171e29; --tinta:#e8ecf2; --tenue:#98a2b3; --linea:#283244;
  --si:#6fd39d; --si-suave:#16342a; --no:#f0927c; --no-suave:#3a201b; --vis:#f2c36b; --vis-suave:#3a2e14; --cli:#b9a3f0; --cli-suave:#2a2340; color-scheme:dark}
/* Color de cada producto (claro / oscuro). */
:root[data-prod="bookly"]{--prod:#b0306a;--prod-suave:#fbe7f0} :root[data-prod="novarest"]{--prod:#b4501a;--prod-suave:#fbeadf}
:root[data-prod="novacore"]{--prod:#2f5b2a;--prod-suave:#e5f0e2} :root[data-prod="novachurch"]{--prod:#2f5bff;--prod-suave:#e6ecff}
:root[data-prod="novatime"]{--prod:#0f4c5c;--prod-suave:#e3eff1}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"])[data-prod="bookly"]{--prod:#f08ab8;--prod-suave:#3a1728} :root:not([data-theme="light"])[data-prod="novarest"]{--prod:#f3a06d;--prod-suave:#3a2214}
  :root:not([data-theme="light"])[data-prod="novacore"]{--prod:#9fd38f;--prod-suave:#1d3119} :root:not([data-theme="light"])[data-prod="novachurch"]{--prod:#9fb3ff;--prod-suave:#1a2550}
  :root:not([data-theme="light"])[data-prod="novatime"]{--prod:#7cc3d3;--prod-suave:#173338}}
:root[data-theme="dark"][data-prod="bookly"]{--prod:#f08ab8;--prod-suave:#3a1728} :root[data-theme="dark"][data-prod="novarest"]{--prod:#f3a06d;--prod-suave:#3a2214}
:root[data-theme="dark"][data-prod="novacore"]{--prod:#9fd38f;--prod-suave:#1d3119} :root[data-theme="dark"][data-prod="novachurch"]{--prod:#9fb3ff;--prod-suave:#1a2550}
:root[data-theme="dark"][data-prod="novatime"]{--prod:#7cc3d3;--prod-suave:#173338}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0}
[hidden]{display:none!important}
.oculto{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.entrar{max-width:26rem;margin:15vh auto 0;display:flex;flex-direction:column;gap:14px}
.entrar input{flex:none;width:100%;height:46px;border:1px solid var(--linea);border-radius:10px;padding:0 12px;font:15px var(--f-texto);background:var(--hoja);color:var(--tinta)}
.tenue{color:var(--tenue)}
.formEntrar{display:flex;flex-direction:column;gap:8px}
.formEntrar label{font:600 13px var(--f-texto);color:var(--tenue)}
.formEntrar .boton{margin-top:8px;justify-content:center;border:0;background:#f2a33a;color:#1c1300}
.pie{margin-top:2rem;text-align:center;color:var(--tenue);font-size:12.5px}
.enlace{background:none;border:0;color:var(--prod);font:600 13px var(--f-texto);text-decoration:underline;cursor:pointer}
.distancia{font:500 11.5px var(--f-dato);color:var(--tenue)}
#vistaRuta>*{margin-top:12px}
body{background:var(--bg);color:var(--tinta);font:15px/1.45 var(--f-texto)}
.envoltura{max-width:46rem;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:env(safe-area-inset-top,0px) calc(4rem + env(safe-area-inset-bottom,0px))}
header.barra{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;background:var(--bg);padding-block:8px;border-bottom:1px solid var(--linea);display:flex;flex-direction:column;gap:8px}
.controles{display:flex;flex-direction:column;gap:10px;padding-block:10px 0}
details.filtros>summary{list-style:none;cursor:pointer;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 12px;border:1px solid var(--linea);border-radius:10px;background:var(--hoja);font:600 14px var(--f-texto)}
details.filtros>summary::-webkit-details-marker{display:none}
details.filtros>summary::after{content:"▾";color:var(--tenue)} details.filtros[open]>summary::after{content:"▴"}
details.filtros>div{padding-top:10px}
h1{font-size:1rem;margin:0}
.fila{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.productos{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
.prod{flex:none;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--linea);background:var(--hoja);color:var(--tinta);font:700 13.5px var(--f-texto)}
.prod[aria-pressed="true"]{background:var(--prod);border-color:var(--prod);color:var(--hoja)}
.tabs{display:flex;gap:6px}
.tab{flex:1;min-height:42px;border:1px solid var(--linea);background:var(--hoja);color:var(--tinta);border-radius:10px;font:600 14px var(--f-texto)}
.tab[aria-selected="true"]{background:var(--prod-suave);color:var(--prod);border-color:var(--prod)}
select,input[type=search]{min-height:42px;border:1px solid var(--linea);background:var(--hoja);color:var(--tinta);border-radius:10px;padding:0 10px;font:14px var(--f-texto);min-width:0}
input[type=search]{flex:1 1 12rem} select{flex:1 1 8rem}
.chip{min-height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--linea);background:var(--hoja);color:var(--tinta);font:600 13px var(--f-texto)}
.chip[aria-pressed="true"]{background:var(--prod-suave);border-color:var(--prod);color:var(--prod)}
.resumen{font-size:13px;color:var(--tenue);font-variant-numeric:tabular-nums}
.pitch{font-size:13px;color:var(--tenue);border-left:3px solid var(--prod);padding-left:10px}
.lista{display:flex;flex-direction:column;gap:10px;margin-top:12px}
.tarjeta{background:var(--hoja);border:1px solid var(--linea);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:8px;min-width:0}
.tarjeta.est-interesa{border-left:4px solid var(--si)} .tarjeta.est-no{border-left:4px solid var(--no);opacity:.75}
.tarjeta.est-visitar{border-left:4px solid var(--vis)} .tarjeta.est-llamar{border-left:4px solid var(--prod)} .tarjeta.est-cliente{border-left:4px solid var(--cli)}
.nombre{font-weight:700;font-size:15.5px;overflow-wrap:anywhere}
.razon{font-size:12.5px;color:var(--tenue);overflow-wrap:anywhere}
.datos{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:13px;color:var(--tenue)}
.etq{font:500 11.5px var(--f-dato);padding:2px 7px;border-radius:6px;background:var(--prod-suave);color:var(--prod)}
.otros{font:500 11px var(--f-dato);padding:2px 6px;border-radius:6px;border:1px solid var(--linea);color:var(--tenue)}
.contacto{display:flex;flex-wrap:wrap;gap:6px}
.contacto a,.contacto button{min-height:38px;display:inline-flex;align-items:center;padding:0 10px;border-radius:8px;border:1px solid var(--linea);background:var(--bg);color:var(--tinta);text-decoration:none;font:600 13px var(--f-texto);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tel{font-family:var(--f-dato)}
.estados{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.est{min-height:40px;border-radius:8px;border:1px solid var(--linea);background:var(--hoja);color:var(--tinta);font:600 12.5px var(--f-texto);padding:0 2px}
.est[data-e="interesa"][aria-pressed="true"]{background:var(--si-suave);color:var(--si);border-color:var(--si)}
.est[data-e="no"][aria-pressed="true"]{background:var(--no-suave);color:var(--no);border-color:var(--no)}
.est[data-e="visitar"][aria-pressed="true"]{background:var(--vis-suave);color:var(--vis);border-color:var(--vis)}
.est[data-e="llamar"][aria-pressed="true"]{background:var(--prod-suave);color:var(--prod);border-color:var(--prod)}
.est[data-e="cliente"][aria-pressed="true"]{background:var(--cli-suave);color:var(--cli);border-color:var(--cli)}
textarea{width:100%;min-height:42px;border:1px solid var(--linea);border-radius:8px;background:var(--bg);color:var(--tinta);font:14px var(--f-texto);padding:8px 10px;resize:vertical}
.mas{min-height:46px;width:100%;margin-top:12px;border-radius:10px;border:1px dashed var(--prod);background:transparent;color:var(--prod);font:600 14px var(--f-texto)}
.boton{min-height:44px;border-radius:10px;background:var(--prod);color:var(--hoja);font:700 14.5px var(--f-texto);padding:0 14px;text-decoration:none;display:inline-flex;align-items:center}
.aviso{background:var(--prod-suave);color:var(--tinta);border-radius:10px;padding:10px 12px;font-size:13.5px}
.parada{display:flex;gap:10px;align-items:flex-start}
.num{flex:none;width:28px;height:28px;border-radius:50%;background:var(--vis);color:var(--hoja);font:600 13px var(--f-dato);display:grid;place-items:center}
.vacio{text-align:center;color:var(--tenue);padding:2rem 1rem}
:focus-visible{outline:3px solid var(--ambar);outline-offset:2px}
@media (max-width:380px){.estados{grid-template-columns:repeat(3,1fr)}}
.tabs .tab{padding:0 4px}
.etapas{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.etapa{flex:none;min-height:38px;padding:0 12px;border-radius:999px;border:1px solid var(--linea);background:var(--hoja);color:var(--tinta);font:600 13px var(--f-texto);font-variant-numeric:tabular-nums}
.etapa[aria-pressed="true"]{background:var(--prod);color:var(--hoja);border-color:var(--prod)}
.lead{cursor:pointer;text-align:left;font:inherit;color:inherit;width:100%}
.atrasado{color:var(--no);font-weight:700} .hoy{color:var(--vis);font-weight:700}
.dinero{font:500 12.5px var(--f-dato);color:var(--tinta)}
.hoja{position:fixed;inset:0;z-index:20;background:var(--bg);overflow-y:auto;padding:calc(12px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
.hoja>div{max-width:40rem;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.campos{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.campos label{display:flex;flex-direction:column;gap:4px;font:600 12.5px var(--f-texto);color:var(--tenue);min-width:0}
.campos label.ancho{grid-column:1/-1}
.campos input,.campos select{width:100%;min-height:42px;border:1px solid var(--linea);border-radius:8px;background:var(--hoja);color:var(--tinta);font:14px var(--f-texto);padding:0 10px}
.historial{display:flex;flex-direction:column;gap:8px}
.actividad{border-left:3px solid var(--linea);padding-left:10px;font-size:13.5px}
.actividad .cuando{font:500 11.5px var(--f-dato);color:var(--tenue)}
.actividad.ia{border-color:var(--prod)}
.respuestaIa{white-space:pre-wrap;background:var(--prod-suave);border-radius:10px;padding:12px;font-size:14px;line-height:1.5}
.boton.sec{background:var(--hoja);color:var(--prod);border:1px solid var(--prod)}
@media (max-width:420px){.campos{grid-template-columns:1fr}}
