/* Los colores y la letra del panel de Recepción IA (panel/index.html), en claro y oscuro. */
:root{--fondo:#fff;--fondo-suave:#f8fafc;--fondo-hover:#f1f5f9;--borde:#e2e8f0;--borde-fuerte:#cbd5e1;--texto:#1e293b;--texto-suave:#475569;--texto-tenue:#5b6678;--acento:#1f93ff;--acento-lleno:#0b6bcb;--acento-fondo:#e8f4ff;--acento-texto:#0b6bcb;--verde:#16a34a;--verde-fondo:#dcfce7;--rojo:#dc2626;--rojo-fondo:#fee2e2;--ambar:#b45309;--ambar-fondo:#fef3c7;--gris-fondo:#f1f5f9;--bot:#15803d;--bot-fondo:#dcfce7;--humano:#6d28d9;--sal:#ede9fe;--sombra:0 1px 2px rgba(15,23,42,.06),0 4px 16px rgba(15,23,42,.08)}
:root{color-scheme:light}
:root[data-tema="oscuro"]{color-scheme:dark;--fondo:#151718;--fondo-suave:#1b1d1f;--fondo-hover:#232629;--borde:#2b2f33;--borde-fuerte:#3a3f44;--texto:#e8eaed;--texto-suave:#a1a7ae;--texto-tenue:#959ca4;--acento:#3ba1ff;--acento-lleno:#1d6fd1;--acento-fondo:#13283d;--acento-texto:#7cc0ff;--verde:#4ade80;--verde-fondo:#12301f;--rojo:#f87171;--rojo-fondo:#3a1a1a;--ambar:#fbbf24;--ambar-fondo:#3a2c10;--gris-fondo:#232629;--bot:#4ade80;--bot-fondo:#14301f;--humano:#c4b5fd;--sal:#2e2547;--sombra:0 1px 2px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.45)}
*{box-sizing:border-box}html,body{height:100%}
body{margin:0;font:14px/1.45 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:var(--texto);background:var(--fondo-suave);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:inherit}
[hidden]{display:none!important}
.app{height:100%;display:flex;background:var(--fondo)}
.app > .seccion{flex:1;display:flex;min-width:0;min-height:0}.seccion-agenda{position:relative}
.lateral{width:56px;background:var(--fondo);border-right:1px solid var(--borde);display:flex;flex-direction:column;align-items:center;padding:10px 0;gap:6px}
.logo{width:34px;height:34px;border-radius:8px;background:var(--acento-lleno);color:#fff;display:grid;place-items:center;font-weight:700;margin-bottom:10px}
.logo.grande{width:48px;height:48px;font-size:20px;margin:0 auto 8px}
.nav{width:40px;height:40px;border-radius:8px;border:0;background:transparent;font-size:18px;cursor:pointer;position:relative;display:grid;place-items:center;text-decoration:none;color:var(--texto-suave)}
.nav:hover{background:var(--fondo-hover)}.nav.activa{background:var(--acento-fondo)}.nav.abajo{margin-top:auto}
/* línea discreta entre Tema e Historial y la cuenta */
.separa-cuenta{width:24px;align-self:center;border:0;border-top:1px solid var(--borde);margin:2px 0}
.app[data-nav="ampliada"] .separa-cuenta{width:auto;align-self:stretch;margin:2px 6px}
.nav .n{position:absolute;top:2px;right:0;background:var(--rojo);color:#fff;font-size:11px;border-radius:9px;padding:0 5px;font-weight:700}.nav .n.del-bot{background:var(--acento-lleno);top:auto;bottom:2px}
.col-lista{width:330px;border-right:1px solid var(--borde);display:flex;flex-direction:column;min-width:0}
.cab{padding:12px 14px;border-bottom:1px solid var(--borde)}.cab h2{margin:0 0 8px;font-size:16px}
.filtros{display:flex;gap:4px}.filtro{border:1px solid var(--borde);background:var(--fondo);border-radius:999px;padding:3px 10px;font-size:12.5px;cursor:pointer}
.filtro.on{background:var(--acento-fondo);border-color:var(--acento);color:var(--acento-texto);font-weight:600}
.buscar{width:100%;margin-top:8px;border:1px solid var(--borde);border-radius:7px;padding:6px 9px;background:var(--fondo-suave)}
.lista{overflow:auto;flex:1}
.item{display:flex;gap:10px;padding:10px 14px;border-bottom:1px solid var(--borde);cursor:pointer}
.item:hover{background:var(--fondo-hover)}.item.sel{background:var(--acento-fondo)}
.av{width:36px;height:36px;border-radius:50%;background:var(--gris-fondo);display:grid;place-items:center;font-weight:600;font-size:13px;color:var(--texto-suave);flex:none}
.item .cuerpo{min-width:0;flex:1}.col-lista .fila{display:flex;justify-content:space-between;gap:6px;align-items:baseline}
.nom{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item .hora{font-size:12px;color:var(--texto-tenue);white-space:nowrap}
.prev{color:var(--texto-suave);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chips{display:flex;gap:4px;margin-top:3px;flex-wrap:wrap}
.chip{font-size:12px;border-radius:4px;padding:1px 6px;font-weight:600;background:var(--gris-fondo);color:var(--texto-suave)}
.chip.bot{background:var(--bot-fondo);color:var(--bot)}.chip.per{background:var(--acento-fondo);color:var(--acento-texto)}.chip.ad{background:var(--ambar-fondo);color:var(--ambar)}.chip.ok{background:var(--verde-fondo);color:var(--verde)}.chip.espera-chat{font-variant-numeric:tabular-nums}.chip.espera-chat.tarde{background:var(--rojo-fondo);color:var(--rojo)}
.cartel-avisos{display:block;width:100%;margin-top:8px;border:1px solid var(--ambar);background:var(--ambar-fondo);color:var(--ambar);border-radius:7px;padding:6px 9px;font-size:12.5px;cursor:pointer;text-align:left}
.nl{background:var(--acento-lleno);color:#fff;border-radius:9px;font-size:12px;font-weight:700;padding:0 6px;margin-left:4px}.nl.equipo{background:var(--rojo)}
.col-chat{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--fondo-suave);position:relative}
.chat-cab{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--fondo);border-bottom:1px solid var(--borde)}
.chat-cab .nom{font-size:15px}.seccion-conversaciones .sub{font-size:12px;color:var(--texto-suave)}
.acciones{margin-left:auto;display:flex;gap:6px;position:relative;flex-wrap:wrap;justify-content:flex-end}
.btn{border:1px solid var(--borde-fuerte);background:var(--fondo);border-radius:7px;padding:5px 10px;cursor:pointer;font-size:13px;white-space:nowrap}
.btn:hover{background:var(--fondo-hover)}.btn.pri{background:var(--acento-lleno);border-color:var(--acento-lleno);color:#fff}.btn.ancho{width:100%;padding:9px}
.btn:disabled{opacity:.5;cursor:default}
.menu{position:absolute;top:36px;right:0;background:var(--fondo);border:1px solid var(--borde);border-radius:8px;box-shadow:var(--sombra);width:230px;padding:6px;z-index:5}
.menu .op{display:block;width:100%;text-align:left;border:0;background:transparent;font:inherit;color:inherit;padding:7px 8px;border-radius:6px;cursor:pointer}.menu .op:hover{background:var(--fondo-hover)}
.mensajes{flex:1;overflow:auto;padding:16px 18px;display:flex;flex-direction:column;gap:6px}
.mensajes .dia.actividad{font-size:12px;color:var(--texto-tenue);max-width:90%;text-align:center}
.m code{font-family:ui-monospace,Menlo,monospace;font-size:12.5px}
.mensajes .dia{align-self:center;font-size:12px;color:var(--texto-suave);background:var(--fondo);border:1px solid var(--borde);border-radius:999px;padding:1px 10px;margin:8px 0}
.m{max-width:72%;padding:7px 10px;border-radius:10px;white-space:pre-wrap;word-wrap:break-word;box-shadow:0 1px 1px rgba(15,23,42,.05)}
.m.ent{align-self:flex-start;background:var(--fondo);border:1px solid var(--borde)}
.ad-tarjeta{align-self:flex-start;max-width:85%;border:1px solid var(--borde);border-left:3px solid var(--acento);background:var(--fondo);border-radius:10px;padding:8px;display:flex;gap:10px;margin-top:4px}
.ad-tarjeta .ad-img{flex:none;display:block;position:relative}.ad-img.cargando{width:72px;height:72px;border-radius:6px;background:var(--fondo-hover)}.ad-img.cargando img{visibility:hidden}.ad-img.cargando::after{content:"";position:absolute;inset:0;margin:auto;width:22px;height:22px;border:2px solid var(--borde-fuerte);border-top-color:var(--acento);border-radius:50%;animation:ad-gira .8s linear infinite}@keyframes ad-gira{to{transform:rotate(360deg)}}
.ad-tarjeta img{width:72px;height:72px;border-radius:6px;object-fit:cover;flex:none;cursor:zoom-in}
.ad-rot{font-size:12px;font-weight:600;color:var(--acento-texto);text-transform:uppercase;letter-spacing:.03em}
.ad-tit{font-weight:600;margin:2px 0}
.ad-txt{font-size:12.5px;color:var(--texto-suave);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line}
.ad-txt.abierto{-webkit-line-clamp:unset}
.ad-acc{display:flex;gap:12px;margin-top:4px;font-size:12.5px}.ad-acc a{color:var(--acento-texto);text-decoration:none;cursor:pointer}
.m.sal{align-self:flex-end;background:var(--sal)}.m.sal.bot{background:var(--bot-fondo)}
.m.nota{align-self:stretch;max-width:none;background:var(--ambar-fondo);border:1px dashed #f59e0b;font-size:13px}
.borrador-acc{display:flex;justify-content:flex-end;margin-top:8px}
.m.fallo{border:1px solid var(--rojo)}
.m .pie{font-size:12px;color:var(--texto-tenue);text-align:right;margin-top:2px}.m .quien{font-size:12px;font-weight:700;color:var(--texto-suave);margin-bottom:2px}
.m img{max-width:260px;max-height:320px;border-radius:7px;display:block;margin-bottom:4px}.m audio{max-width:260px;display:block;margin-bottom:4px}
.adj{display:inline-flex;gap:6px;align-items:center;background:rgba(255,255,255,.6);border:1px solid var(--borde);border-radius:7px;padding:6px 9px;margin-bottom:4px;color:inherit}
.tick.leido{color:var(--acento)}.tick.fallido,.error{color:var(--rojo)}
.componer{background:var(--fondo);border-top:1px solid var(--borde);padding:10px 14px}
.componer .caja{display:flex;gap:6px;align-items:stretch}.caja-herramientas{flex:none;display:grid;grid-template-rows:1fr 1fr;gap:4px}.componer textarea{flex:1;border:1px solid var(--borde-fuerte);border-radius:8px;padding:8px 10px;resize:none;height:72px;min-width:0;background:var(--fondo)}
.ventana{display:flex;gap:8px;align-items:center;background:var(--ambar-fondo);color:var(--ambar);border-radius:7px;padding:7px 10px;font-size:12.5px;margin-bottom:8px}
.pestanas{display:flex;gap:4px}.componer .adjuntar{width:40px;padding:0;display:grid;place-items:center;height:100%}.componer .caja > .btn.pri{flex:none}.acciones-caja{display:flex;flex-direction:column;gap:6px;align-items:stretch}.acciones-caja .btn{text-align:center}.acciones-caja #plantilla{font-size:12px;padding:4px 8px}.pestana{font-size:12px;padding:3px 9px;border-radius:6px;cursor:pointer;color:var(--texto-suave);border:0;background:transparent}.pestana.on{background:var(--gris-fondo);color:var(--texto);font-weight:600}
.col-ficha{width:300px;border-left:1px solid var(--borde);overflow:auto;background:var(--fondo)}
.ficha-cab{padding:14px;border-bottom:1px solid var(--borde);text-align:center}.ficha-cab .av{width:56px;height:56px;margin:0 auto 6px;font-size:18px}
.bloque{padding:12px 14px;border-bottom:1px solid var(--borde)}.bloque h4{margin:0 0 8px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--texto-tenue)}
.col-ficha .dato,.modal .dato{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:3px 0;font-size:13px}.modal .dato{padding:6px 0}.col-ficha .dato>span:first-child,.modal .dato>span:first-child{color:var(--texto-suave)}
.col-ficha .dato input{border:0;border-bottom:1px dashed var(--borde-fuerte);text-align:right;width:160px;background:transparent;padding:1px 2px}
.col-ficha .dato .guardado{color:var(--verde);font-size:12px}
.col-ficha .turno{border:1px solid var(--borde);border-radius:8px;padding:8px 10px;margin-bottom:6px;width:100%;text-align:left;background:var(--fondo);color:inherit;cursor:pointer;font:inherit}.col-ficha .turno .t1{font-weight:600}.col-ficha .turno .t2{font-size:12px;color:var(--texto-suave)}
.vacio,.suave{color:var(--texto-tenue);font-size:12.5px}
.atras{border:0;background:transparent;font-size:22px;cursor:pointer;padding:0 4px;display:none}
#capa .velo{position:fixed;inset:0;background:rgba(15,23,42,.45);display:grid;place-items:center;z-index:20;padding:16px}
.modal{background:var(--fondo);border-radius:12px;box-shadow:var(--sombra);width:min(440px,100%);max-height:90vh;overflow:auto;padding:18px}
.modal h3{margin:0 0 10px}.modal label{display:block;margin:8px 0;font-size:13px;color:var(--texto-suave)}
.modal input,.modal select{width:100%;border:1px solid var(--borde-fuerte);border-radius:7px;padding:7px 9px;margin-top:3px;background:var(--fondo)}
.modal .previa{background:var(--fondo-suave);border-radius:8px;padding:10px;white-space:pre-wrap;font-size:13px;margin:8px 0}
.modal .pie-modal{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}
input::placeholder,textarea::placeholder{color:var(--texto-tenue);opacity:1}
.modal-descartar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end;margin-top:12px;padding:10px 12px;border-radius:10px;background:var(--ambar-fondo);color:var(--texto);font-size:13px}.modal-descartar span{flex:1 1 100%;font-weight:600}
.qr{display:grid;place-items:center;margin:10px 0}.qr svg{width:200px;height:200px;background:#fff;padding:8px;border-radius:8px}
.respaldo{font-family:ui-monospace,Menlo,monospace;display:grid;grid-template-columns:1fr 1fr;gap:6px;background:var(--fondo-suave);padding:10px;border-radius:8px}
body > .aviso{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);background:#0f172a;color:#fff;padding:8px 14px;border-radius:8px;font-size:13px;z-index:30}
body > .aviso button{all:unset;cursor:pointer;font-weight:600;text-decoration:underline;text-underline-offset:2px}
body > .aviso button:focus-visible{outline:2px solid #fff;outline-offset:2px;border-radius:2px}
/* Celular: una columna por vez; los botones debajo del nombre, a todo el ancho (aprobado en el boceto). */
@media (max-width:760px){
  /* el menú de toda la app va abajo, solo en la lista: dentro de un chat no tapa donde se escribe */
  .app{flex-direction:column}.lateral{order:2;flex:none}.app[data-seccion="conversaciones"]:not([data-pantalla="lista"]) .lateral{display:none}
  .app > .seccion{flex:1;min-height:0}
  .lateral{width:100%;flex-direction:row;justify-content:space-around;border-right:0;border-top:1px solid var(--borde);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
  .lateral .cabeza-lateral,.lateral .solo-compu,.lateral .separa-cuenta{display:none!important}.nav.abajo{margin-top:0}
  .col-lista,.col-chat,.col-ficha{width:100%;border:0;flex:1;min-height:0}
  /* data-pantalla es de Conversaciones: Pacientes reusa .col-lista y no debe esconderse con el chat abierto */
  .app[data-pantalla="lista"] .seccion-conversaciones .col-chat,.app[data-pantalla="lista"] .seccion-conversaciones .col-ficha,
  .app[data-pantalla="chat"] .seccion-conversaciones .col-lista,.app[data-pantalla="chat"] .seccion-conversaciones .col-ficha,
  .app[data-pantalla="ficha"] .seccion-conversaciones .col-lista,.app[data-pantalla="ficha"] .seccion-conversaciones .col-chat{display:none}
  .atras{display:block}.de-compu{display:none}
  .m{max-width:88%}
}
@media (min-width:761px){.solo-cel{display:none!important}}
/* Pacientes (boceto A): la lista como la de Conversaciones y la ficha al lado; en el celular, una por vez. */
.seccion-pacientes .pac-busqueda{display:flex;gap:8px;margin-top:8px}.seccion-pacientes .pac-busqueda .buscar{margin-top:0;flex:1;min-width:0}
.seccion-pacientes .cab h2 .chip{font-size:11px;vertical-align:middle}
.pac-item{justify-content:space-between}.pac-item .cuando{font-size:12px;color:var(--texto-tenue);text-align:right;white-space:nowrap;flex:none}
.pac-mas{display:block;margin:12px auto}
.pac-ficha{flex:1;min-width:0;overflow:auto;background:var(--fondo);display:flex;flex-direction:column}
.pac-cuerpo{padding:18px 22px;display:flex;flex-direction:column;gap:16px;max-width:760px;width:100%}
.pac-volver{align-self:flex-start}
.pac-tit{display:flex;justify-content:space-between;align-items:center;gap:10px}.pac-tit b{font-size:18px;min-width:0;overflow-wrap:anywhere}
.pac-nom{min-width:0}.pac-num{font-size:12px;color:var(--texto-suave);margin-top:2px}
.pac-campos{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}
.pac-campos label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--texto-suave)}.pac-campos .ancho{grid-column:1/-1}
.pac-campos input,.pac-campos textarea,.modal textarea{border:1px solid var(--borde-fuerte);border-radius:7px;padding:7px 9px;background:var(--fondo);color:var(--texto);font-size:14px}
.pac-campos input:disabled{background:var(--fondo-suave);color:var(--texto-suave)}
.pac-campos textarea,.modal textarea{min-height:72px;resize:vertical;width:100%;margin-top:3px}
.pac-pie{display:flex;gap:8px;justify-content:flex-end}
.pac-bloque{padding:0;border:0;font-size:13.5px}.pac-turnos{margin-top:12px;padding-top:20px;border-top:1px solid var(--borde)}
.pac-turno{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:7px 0;border:0;border-bottom:1px solid var(--borde);background:none;color:inherit;cursor:pointer;text-align:left;font:inherit;font-size:13.5px}
.pac-turno:hover{background:var(--fondo-hover)}
.chip.no{background:var(--rojo-fondo);color:var(--rojo)}
.notas-ficha{width:100%;min-height:64px;resize:vertical;border:1px solid var(--borde);border-radius:7px;padding:6px 8px;background:var(--fondo);font-size:13px}
.bloque h4 .guardado{color:var(--verde);text-transform:none;letter-spacing:0}
.bloque h4.con-accion{display:flex;justify-content:space-between;align-items:center}.bloque h4.con-accion .btn{text-transform:none;letter-spacing:0;font-size:12.5px}
@media (max-width:760px){
  .app[data-seccion="pacientes"][data-paciente="ficha"] .lateral{display:none}
  .app:not([data-paciente="ficha"]) .seccion-pacientes .pac-ficha,.app[data-paciente="ficha"] .seccion-pacientes .pac-lista{display:none}
  .pac-cuerpo{padding:14px 16px}.pac-campos{grid-template-columns:1fr}
}

body.entrar{display:grid;place-items:center;padding:16px}
.tarjeta-entrar{background:var(--fondo);border-radius:12px;box-shadow:var(--sombra);padding:28px;width:min(360px,100%);text-align:center}
.tarjeta-entrar h1{font-size:18px;margin:0 0 16px}.tarjeta-entrar label{display:block;text-align:left;font-size:13px;color:var(--texto-suave);margin-bottom:10px}
.tarjeta-entrar input{width:100%;border:1px solid var(--borde-fuerte);border-radius:7px;padding:8px 10px;margin-top:3px;background:var(--fondo)}
a.btn{display:inline-block;box-sizing:border-box;text-decoration:none;color:inherit;text-align:center}
.tarjeta-entrar .btn.ancho+.btn.ancho{margin-top:8px}
.btn.peligro{color:var(--rojo);border-color:var(--rojo)}.btn.peligro:hover{background:var(--rojo-fondo)}
.switch{position:relative;display:inline-block;width:40px;height:22px;flex:none}.switch input{opacity:0;width:0;height:0}.switch span{position:absolute;inset:0;background:var(--borde-fuerte);border-radius:22px;cursor:pointer;transition:.2s}.switch span::before{content:"";position:absolute;width:18px;height:18px;left:2px;top:2px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 2px rgba(0,0,0,.3)}.switch input:checked+span{background:var(--acento)}.switch input:checked+span::before{transform:translateX(18px)}.switch input:disabled+span{opacity:.5;cursor:default}
/* Barras de desplazamiento finas y del color de la interfaz (en vez de las anchas y claras del sistema). */
*{scrollbar-width:thin;scrollbar-color:var(--borde-fuerte) transparent}
*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:transparent}
*::-webkit-scrollbar-thumb{background:var(--borde-fuerte);border-radius:6px}*::-webkit-scrollbar-thumb:hover{background:var(--texto-tenue)}
/* Escribiendo una nota interna: el cuadro se ve como las notas del chat (borde ámbar, continuo). */
.componer textarea.nota{border-color:#f59e0b}.componer textarea.nota:focus{outline-color:#f59e0b}
.btn.pri.nota{background:#f59e0b;border-color:#f59e0b;color:#1e293b}
/* Etiquetas editables en la ficha */
.quitar-etiqueta { border: 0; background: none; color: inherit; cursor: pointer; padding: 0 0 0 2px; font-size: 13px; line-height: 1; opacity: .6; }
.quitar-etiqueta:hover { opacity: 1; }
.nueva-etiqueta { margin-top: 6px; width: 100%; font: inherit; font-size: 13px; padding: 4px 8px; border: 1px solid var(--borde, #ddd); border-radius: 8px; background: transparent; color: inherit; }

/* El ítem Agenda del menú, hasta el sub-proyecto 2 */
.nav.deshabilitada{opacity:.35;cursor:not-allowed;pointer-events:none}
/* Barra lateral desplegada (con el nombre de cada sección) o replegada (solo íconos); solo en la compu */
.nav .rotulo,.lateral .marca{display:none}
.cabeza-lateral{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:10px}.cabeza-lateral .logo{margin-bottom:0;flex:none}
.con-logo .logo{width:34px;height:30px;border-radius:0;background:var(--texto);-webkit-mask:var(--logo-corto) center/contain no-repeat;mask:var(--logo-corto) center/contain no-repeat}
.plegar{border:0;background:none;padding:4px;border-radius:6px;color:var(--texto-tenue);cursor:pointer;display:grid;place-items:center}
.plegar:hover{color:var(--texto);background:var(--fondo-hover)}.app[data-nav="replegada"] .plegar svg{transform:rotate(180deg)}
@media (min-width:761px){
  .app[data-nav="ampliada"] .lateral{width:184px;align-items:stretch;padding:10px 8px}
  .app[data-nav="ampliada"] .cabeza-lateral{flex-direction:row;gap:10px;padding:0 2px 0 3px}
  .app[data-nav="ampliada"] .lateral .marca{display:block;flex:1;min-width:0;font-weight:600;font-size:14px;line-height:1.15;overflow-wrap:anywhere;white-space:normal;overflow:hidden;text-overflow:ellipsis}
  .app[data-nav="ampliada"] .con-logo .logo{display:none}
  .app[data-nav="ampliada"] .con-logo .marca{height:24px;margin:7px 0 7px 7px;background:var(--texto);-webkit-mask:var(--logo) left center/contain no-repeat;mask:var(--logo) left center/contain no-repeat}
  .app[data-nav="ampliada"] .nav{width:auto;display:flex;align-items:center;gap:12px;padding:0 10px;font-size:14px}
  .app[data-nav="ampliada"] .nav .rotulo{display:inline;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--texto)}
  .app[data-nav="ampliada"] .nav .n{position:static;margin-left:auto}
  .app[data-nav="ampliada"] .salir-rapido{display:grid}.app[data-nav="ampliada"] .nav .n:not([hidden]) + .n{margin-left:-6px}
}
}
.solo-agenda{margin:auto;padding:24px;text-align:center;color:var(--gris,#6b7178);max-width:280px;line-height:1.4}

#btn-tema .ic-claro,#btn-tema .ic-oscuro{display:none}:root[data-tema-elegido="claro"] #btn-tema .ic-auto,:root[data-tema-elegido="oscuro"] #btn-tema .ic-auto{display:none}:root[data-tema-elegido="claro"] #btn-tema .ic-claro,:root[data-tema-elegido="oscuro"] #btn-tema .ic-oscuro{display:inline}
/* Chat en modo claro: fondo gris azulado y globos, fechas y movimientos con borde y sombra para que no se pierdan */
:root:not([data-tema="oscuro"]) .col-chat{background:#e9edf2}
:root:not([data-tema="oscuro"]) .mensajes{--sal:#ede9fe;--bot-fondo:#dcfce7}
:root:not([data-tema="oscuro"]) .mensajes .m{box-shadow:0 1px 2px rgba(15,23,42,.12)}
:root:not([data-tema="oscuro"]) .mensajes .m.ent{border-color:#d5dce5}
:root:not([data-tema="oscuro"]) .mensajes .m.sal:not(.nota){border:1px solid #d3c6fb}
:root:not([data-tema="oscuro"]) .mensajes .m.sal.bot:not(.nota){border-color:#a7e3bd}
:root:not([data-tema="oscuro"]) .mensajes .m.fallo{border-color:var(--rojo)}
:root:not([data-tema="oscuro"]) .mensajes .dia{background:#fff;border-color:#d5dce5;box-shadow:0 1px 2px rgba(15,23,42,.08);color:#475569}
:root:not([data-tema="oscuro"]) .mensajes .dia.actividad{background:#f8fafc;color:#64748b}
:root:not([data-tema="oscuro"]) .mensajes .ad-tarjeta{border-color:#d5dce5;border-left-color:var(--acento);box-shadow:0 1px 2px rgba(15,23,42,.12)}

/* El nombre y las iniciales del chat llevan a la ficha de la paciente */
.a-ficha{border:0;background:none;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:left}.a-ficha.nom{font-weight:600;max-width:100%;display:block}
.a-ficha.nom:hover{text-decoration:underline}.a-ficha.av{background:var(--gris-fondo)}.a-ficha.av:hover{filter:brightness(1.1)}
.ficha-cab [data-ir-ficha]{margin-top:8px}

/* Seguimientos o planes sin enviar: un puntito rojo en el ícono (y al final del rótulo, con la barra desplegada) */
.nav .punto-rojo{position:absolute;top:7px;right:7px;width:8px;height:8px;border-radius:50%;background:var(--rojo);box-shadow:0 0 0 2px var(--fondo)}
@media (min-width:761px){.app[data-nav="ampliada"] .nav .punto-rojo{position:static;order:3;margin-left:auto;box-shadow:none}}
.bloque h4.con-accion .btn.chico{padding:4px 10px}
.pac-mostrar{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:12.5px;color:var(--texto-suave)}
.pac-mostrar .sp{flex:1}
.titulo-busqueda{font-size:12px;font-weight:600;color:var(--texto-tenue);text-transform:uppercase;letter-spacing:.04em;padding:12px 14px 4px}
.prev.en-mensaje{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.prev mark{background:#fde68a;color:#1f2937;border-radius:3px;padding:0 1px}

/* El ícono de salida a la derecha del usuario: solo dibujo, el toque abre el menú de la cuenta (barra desplegada) */
.salir-rapido{display:none;place-items:center;margin-left:auto;color:var(--rojo)}
/* Rojo y verde de texto en modo claro: con los de siempre, sobre su fondo suave, no llegaban a 4,5:1 */
:root:not([data-tema="oscuro"]) .chip.ok,:root:not([data-tema="oscuro"]) .col-ficha .dato .guardado{color:#15803d}
/* Foco visible con el teclado en todo el panel (la Agenda ya lo tenía en agenda.css) */
:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--acento);outline-offset:1px}
.item:focus-visible{outline-offset:-2px}
/* En el celular, lo que se toca con el dedo: volver y las pestañas de responder */
@media (max-width:760px){.atras{min-width:44px;min-height:44px}.pestana{padding:9px 12px}}
/* Chat con el aspecto de cccvOS: filtros de una pieza, sin leer en negrita, estado con punto, qué pasa si respondés y «Deshacer» */
.filtros.filtros-seg{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:3px;background:var(--fondo-suave);border:1px solid var(--borde);border-radius:10px;padding:3px}
.filtros-seg .filtro{border:0;background:none;border-radius:8px;padding:6px;font-size:13px;white-space:nowrap;font-weight:600;color:var(--texto-suave)}
.filtros-seg .filtro.on{background:var(--fondo);color:var(--texto);box-shadow:var(--sombra);border:0}
.filtros-seg .filtro-icono{padding:6px 12px}.filtros-seg .filtro-icono svg{display:block}
.filtros-seg #c-humano{color:var(--rojo)}
:root:not([data-tema="oscuro"]) .filtros-seg #c-humano{color:#b91c1c}
.item.nueva .nom,.item.nueva .prev{color:var(--texto);font-weight:700}
.pestana.on{background:var(--acento-fondo);color:var(--acento-texto)}
:root:not([data-tema="oscuro"]) @media (min-width:761px){.app[data-nav="ampliada"] .nav .n{font-size:12px;line-height:18px;padding:0 6px}.app[data-nav="ampliada"] .nav .n.del-bot{background:var(--borde-fuerte);color:var(--texto)}}
@media (max-width:760px){}
.cab-texto{flex:1 1 0;min-width:0}


.menu-chat{width:190px;top:calc(100% + 6px)}.menu .op.con-icono{display:flex;align-items:center;gap:8px}.menu .op.peligro{color:var(--rojo)}.menu .op:disabled{opacity:.5;cursor:default;background:none}
.tick:not(.fallido){letter-spacing:-.38em;padding-right:.38em}
/* El turno abierto desde una ficha: de la Agenda se ve solo el cajón */
.app > .seccion.solo-cajon{position:fixed;width:0;height:0;flex:none}.solo-cajon > :not(.velo):not(.cajon){display:none}
/* Chats: quién atiende (Humano / Bot), espera, caja de respuesta y guardado de las notas */
.icono-humano{color:var(--humano);display:block;flex:none}.icono-bot{color:var(--bot);display:block;flex:none}
.av-chat{display:flex;flex-direction:column;align-items:center;gap:3px;flex:none}
.espera-chat{color:var(--rojo);font-weight:600;white-space:nowrap}:root:not([data-tema="oscuro"]) .espera-chat{color:#b91c1c}
.chat-cab .cab-texto{min-width:0;flex:1}.chat-cab .acciones{align-items:center;flex-wrap:nowrap}
.selector-atiende{display:flex;gap:2px;background:var(--fondo-suave);border:1px solid var(--borde);border-radius:9px;padding:2px;flex:none}
.selector-atiende button{display:flex;align-items:center;gap:5px;border:0;background:none;border-radius:7px;padding:4px 9px;font-size:12.5px;font-weight:600;color:var(--texto-suave);cursor:pointer}
.selector-atiende button:not(.on):hover{background:var(--fondo-hover)}.selector-atiende svg{color:inherit}
.selector-atiende button.on[data-atiende="humano"]{background:var(--humano);color:var(--fondo)}
.selector-atiende button.on[data-atiende="bot"]{background:var(--bot);color:var(--fondo)}
.fila-componer{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:8px;min-height:30px}
.btn.borde-azul{border-color:var(--acento-lleno);color:var(--acento-texto)}
.borrador-acc{gap:6px;flex-wrap:wrap}
.ficha-cab .btn{margin-top:8px}.dato-chico{font-size:12px;color:var(--texto-suave)}.motivo{font-size:13px}
.con-marca{display:flex;align-items:center;gap:6px}
.marca-guardado{display:flex;align-items:center;gap:4px;height:14px;color:var(--acento-texto);font-size:12px;font-weight:600;letter-spacing:0;text-transform:none}
.girando{color:var(--texto-suave);animation:girando .8s linear infinite}@keyframes girando{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.girando{animation:none}}
@media (max-width:760px){.chat-cab{padding:8px 10px 8px 4px;gap:6px}.selector-atiende button{padding:7px 9px}.fila-componer .pestana{padding:6px 8px}.componer{padding:8px 10px}}

/* Desplegables: todos iguales, con la forma del de Profesional en la Agenda (app.js, selectPropio) */
select.sp-nativo{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;border:0!important;opacity:0;pointer-events:none}
.sp{position:relative;display:block;min-width:0}
.sp-boton{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:8px 10px;text-align:left;background:var(--fondo);border:1px solid var(--borde);border-radius:8px;color:var(--texto);font-size:14px;cursor:pointer}
.sp-boton span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sp-boton svg{flex:none;color:var(--texto-tenue)}
.sp-boton:hover:not(:disabled){background:var(--fondo-hover)}
.sp-boton:disabled{color:var(--texto-tenue);background:var(--fondo-suave);cursor:default}
.sp-boton[aria-expanded="true"]{border-color:var(--acento)}
.sp-menu{position:fixed;z-index:200;display:flex;flex-direction:column;gap:2px;max-height:320px;overflow:auto;padding:4px;background:var(--fondo);border:1px solid var(--borde);border-radius:10px;box-shadow:0 8px 24px rgb(0 0 0/.14)}
.sp-op{padding:7px 10px;text-align:left;background:transparent;border:0;border-radius:6px;color:var(--texto);font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap}
.sp-op:hover:not(:disabled),.sp-op:focus-visible{background:var(--fondo-hover);outline:0}
.sp-op.activa{background:var(--acento-fondo);color:var(--acento-texto)}
.sp-op:disabled{color:var(--texto-tenue);cursor:default}
/* Casillas: iguales en toda la pantalla (las llaves de Configuración tienen su propio dibujo) */
input[type=checkbox]:not(.switch input){appearance:none;-webkit-appearance:none;flex:none;width:20px;height:20px;margin:0;display:inline-grid;place-items:center;background:var(--fondo);border:1.5px solid var(--borde-fuerte);border-radius:5px;cursor:pointer;transition:background .12s,border-color .12s}
input[type=checkbox]:not(.switch input):hover:not(:disabled){border-color:var(--acento)}
input[type=checkbox]:not(.switch input):checked{background:var(--acento-lleno) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E") center/14px no-repeat;border-color:var(--acento-lleno)}
input[type=checkbox]:not(.switch input):disabled{background-color:var(--fondo-suave);opacity:.6;cursor:default}
/* Turno o sobreturno: el mismo selector que Humano / Bot */
.selector-turno{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--fondo-suave);border:1px solid var(--borde);border-radius:9px;padding:2px}
.selector-turno button{border:0;background:none;border-radius:7px;padding:7px 9px;font-size:13.5px;font-weight:600;color:var(--texto-suave);cursor:pointer}
.selector-turno button:not(.on):hover{background:var(--fondo-hover)}
.selector-turno button.on{background:var(--acento-lleno);color:#fff}
/* Ubicación enviada por el bot */
.ubicacion{display:block;width:280px;max-width:100%;color:inherit;text-decoration:none}
.ubicacion svg{display:block;width:100%;height:auto;border-radius:6px;margin-bottom:6px}
.ubicacion b{display:block;font-weight:600}
.ubicacion span{display:block;font-size:12.5px;color:var(--texto-suave)}
/* Celular de un paciente que ya existe: se ve, pero se cambia en la ficha */
input[readonly]{background:var(--fondo-suave)!important;color:var(--texto-suave);cursor:default}
input[readonly]:focus-visible{outline:0}
/* Ficha del paciente */
.pac-acciones{display:flex;gap:8px;flex:none}
.pac-ok{margin-left:8px;color:var(--verde);font-weight:600}
.pac-grupo{margin:14px 0 4px;font-size:12px;font-weight:600;color:var(--texto-suave)}
.pac-turno small{display:block;font-size:12px;color:var(--texto-suave);margin-top:1px}
