/* Estilos propios del módulo: solo maquetación, siempre con tokens de estilos.css */

.cc-sub{display:block;font:600 12.5px var(--fuente);margin-top:2px}
.cc-corto{display:inline-block;max-width:250px;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}
.cc-fecha{width:170px}
.cc-barra{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* Selector visual de lugares para reservar */
.lugar.elegido{background:var(--c-accion);color:var(--c-accion-tinta);box-shadow:var(--s-accion)}
.lugar.no-disp{opacity:.38;pointer-events:none}
.cc-resumen .resumen-linea span{color:var(--c-tinta-2)}

/* Eventos */
.cc-eventos{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:14px}
.cc-evento{display:flex;flex-direction:column;gap:14px;text-decoration:none;color:inherit;transition:transform var(--t-media) var(--curva),box-shadow var(--t-media)}
.cc-evento:hover{transform:translateY(-2px);box-shadow:var(--s-3)}
.cc-evento .cab{display:flex;gap:14px;align-items:center}
.cc-dia{width:62px;height:66px;border-radius:16px;flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--c-accion);color:var(--c-accion-tinta);box-shadow:var(--s-accion)}
.cc-dia b{font:700 26px/1 var(--fuente-titulo)}
.cc-dia small{font:650 12.5px var(--fuente);margin-top:3px}
.cc-evento h3{font:700 18px var(--fuente-titulo);letter-spacing:-.01em}
.cc-evento .det{font:500 13.5px var(--fuente);color:var(--c-tinta-2);margin-top:3px}
.cc-evento .datos{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.cc-evento .dato b{font-size:15.5px}
.cc-cupo{display:flex;justify-content:space-between;font:600 13.5px var(--fuente);margin-bottom:7px}

/* Calendario */
.cc-cal-cab{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:6px}
.cc-cal-cab span{font:650 13px var(--fuente);color:var(--c-tinta-2);padding:0 8px}
.cc-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.cc-cal-dia{min-height:100px;border-radius:14px;border:0;cursor:pointer;padding:8px;text-align:left;display:flex;flex-direction:column;gap:4px;background:var(--c-hundido);box-shadow:var(--s-hundido);color:var(--c-tinta);transition:box-shadow var(--t-rapida),transform var(--t-rapida)}
.cc-cal-dia:hover{transform:translateY(-1px)}
.cc-cal-dia.fuera{opacity:.42}
.cc-cal-dia.sel{box-shadow:inset 0 0 0 2px var(--c-accion),var(--s-hundido)}
.cc-cal-dia .n{font:650 14px var(--fuente);width:28px;height:28px;border-radius:50%;display:grid;place-items:center}
.cc-cal-dia.hoy .n{background:var(--c-accion);color:var(--c-accion-tinta)}
.cc-item{display:flex;align-items:center;gap:6px;font:550 12.5px var(--fuente);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.cc-item i{width:9px;height:9px;border-radius:3px;flex:none;background:var(--col,var(--c-accion))}
.cc-item span{overflow:hidden;text-overflow:ellipsis}
.cc-mas{font:600 12px var(--fuente);color:var(--c-tinta-2)}
.cc-semana{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.cc-semana .col{border-radius:14px;padding:10px;background:var(--c-hundido);box-shadow:var(--s-hundido);min-height:360px;display:flex;flex-direction:column;gap:8px;cursor:pointer;border:0;text-align:left;color:var(--c-tinta)}
.cc-semana .col.sel{box-shadow:inset 0 0 0 2px var(--c-accion),var(--s-hundido)}
.cc-semana .col h4{font:650 13.5px var(--fuente);color:var(--c-tinta-2)}
.cc-semana .col h4 b{display:block;font:700 20px var(--fuente-titulo);color:var(--c-tinta)}
.cc-bloque{border-radius:10px;padding:8px;background:var(--c-superficie);box-shadow:var(--s-1);font:600 12.5px var(--fuente);display:flex;flex-direction:column;gap:2px}
.cc-bloque small{font:500 12px var(--fuente);color:var(--c-tinta-2)}
.cc-bloque .cc-item{font-weight:650;white-space:normal;align-items:flex-start}
.cc-bloque .cc-item i{margin-top:4px}
.cc-agenda-dia{font:700 15px var(--fuente-titulo);margin:16px 0 6px}
.cc-agenda-dia:first-child{margin-top:0}

/* Notas */
.cc-notas{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px;align-items:start}
.cc-nota{display:flex;flex-direction:column;gap:10px}
.cc-nota .cab{display:flex;gap:12px;align-items:flex-start}
.cc-mos{width:36px;height:36px;border-radius:11px;flex:none;display:grid;place-items:center;color:var(--p-blanco);background:var(--col,var(--kpi-cenote));box-shadow:inset 0 1px 0 oklch(1 0 0 / .2)}
.cc-nota h3{font:700 16px var(--fuente-titulo);flex:1;min-width:0}
.cc-nota h3 small{display:block;font:500 12.5px var(--fuente);color:var(--c-tinta-2);margin-top:2px}
.cc-nota p{font:500 14.5px/1.5 var(--fuente);color:var(--c-tinta);white-space:pre-line}
.cc-nota .pie-nota{display:flex;justify-content:space-between;font:500 12.5px var(--fuente);color:var(--c-tinta-2);border-top:1px solid var(--c-divisor);padding-top:9px}
.cc-nota .acc{display:flex;gap:0;margin:-6px -8px 0 0}
.cc-seccion{font:700 16px var(--fuente-titulo);margin:4px 4px 12px}

/* Chat */
.cc-chat{display:grid;grid-template-columns:340px minmax(0,1fr);gap:14px;height:calc(100vh - 210px);min-height:540px}
.cc-chat .panel{display:flex;flex-direction:column;min-height:0;padding:16px}
.cc-chat .buscador{flex:none;max-width:none}
.cc-convs{overflow:auto;flex:1;margin:8px -8px 0;padding:0 8px}
.cc-conv{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;width:100%;border:0;background:none;cursor:pointer;text-align:left;padding:10px;border-radius:14px;color:inherit;transition:background var(--t-rapida)}
.cc-conv:hover{background:var(--c-hover)}
.cc-conv.activa{background:var(--c-accion);color:var(--c-accion-tinta);box-shadow:var(--s-accion)}
.cc-conv.activa .det,.cc-conv.activa small{color:var(--c-accion-tinta);opacity:.85}
.cc-conv strong{font:650 15px var(--fuente);display:flex;align-items:center;gap:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-conv strong svg{width:14px;height:14px;opacity:.7}
.cc-conv .det{font:500 13px var(--fuente);color:var(--c-tinta-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.cc-conv .der{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.cc-conv small{font:500 12px var(--fuente);color:var(--c-tinta-2)}
.cc-cuenta{min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--c-accion);color:var(--c-accion-tinta);font:700 11.5px/20px var(--fuente);text-align:center}
.cc-conv.activa .cc-cuenta{background:var(--c-accion-tinta);color:var(--c-accion)}
.cc-grupo-ic{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:var(--c-reservado);color:var(--p-blanco);flex:none}
.cc-hilo-cab{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--c-divisor)}
.cc-hilo-cab b{display:block;font:700 17px var(--fuente-titulo)}
.cc-hilo-cab small{display:block;font:500 13px var(--fuente);color:var(--c-tinta-2)}
.cc-hilo-cab .acc{margin-left:auto;display:flex;gap:2px}
.cc-mensajes{flex:1;overflow:auto;padding:14px 4px;display:flex;flex-direction:column;gap:6px}
.cc-sep{align-self:center;font:600 12.5px var(--fuente);color:var(--c-tinta-2);padding:6px 0}
.cc-msg{display:flex;flex-direction:column;max-width:72%;align-self:flex-start;animation:entra 240ms var(--curva) both}
.cc-msg.mio{align-self:flex-end;align-items:flex-end}
.cc-msg .quien{font:650 12.5px var(--fuente);color:var(--c-tinta-2);margin:6px 12px 3px}
.cc-burbuja{position:relative;padding:10px 14px;border-radius:18px 18px 18px 6px;background:var(--c-superficie);box-shadow:var(--s-2);font:500 15px/1.42 var(--fuente);color:var(--c-tinta);white-space:pre-wrap;word-wrap:break-word}
.cc-msg.mio .cc-burbuja{border-radius:18px 18px 6px 18px;background:var(--c-accion);color:var(--c-accion-tinta);box-shadow:var(--s-accion)}
.cc-msg.programado .cc-burbuja{background:var(--c-superficie-2);color:var(--c-tinta);box-shadow:inset 0 0 0 1px var(--c-filo)}
.cc-msg .hora{font:500 11.5px var(--fuente);color:var(--c-tinta-3);margin:3px 10px 0;display:flex;gap:6px;align-items:center}
.cc-msg .hora .btn-icono{width:26px;height:26px;opacity:0;transition:opacity var(--t-rapida)}
.cc-msg .hora .btn-icono svg{width:15px;height:15px}
.cc-msg:hover .hora .btn-icono{opacity:1}
.cc-encuesta{display:flex;flex-direction:column;gap:8px;min-width:260px}
.cc-encuesta b{font:650 15px var(--fuente)}
.cc-opcion{border:0;cursor:pointer;text-align:left;border-radius:12px;padding:8px 10px;background:oklch(1 0 0 / .14);color:inherit;display:flex;flex-direction:column;gap:6px;font:600 14px var(--fuente);transition:background var(--t-rapida)}
.cc-msg:not(.mio) .cc-opcion{background:var(--c-superficie-2)}
.cc-opcion:hover{filter:brightness(1.06)}
.cc-opcion .fila-op{display:flex;justify-content:space-between;gap:10px}
.cc-opcion .medidor{height:6px;background:oklch(1 0 0 / .22)}
.cc-msg:not(.mio) .cc-opcion .medidor{background:var(--c-filo)}
.cc-msg.mio .cc-opcion .medidor i{background:var(--c-accion-tinta)}
.cc-opcion.votada{box-shadow:inset 0 0 0 2px currentColor}
.cc-escribe{align-self:flex-start;font:600 13px var(--fuente);color:var(--c-tinta-2);display:flex;align-items:center;gap:8px;padding:6px 12px}
.cc-escribe i{width:6px;height:6px;border-radius:50%;background:var(--c-tinta-3);animation:cc-punto 1s infinite ease-in-out}
.cc-escribe i:nth-child(2){animation-delay:.15s}.cc-escribe i:nth-child(3){animation-delay:.3s}
@keyframes cc-punto{0%,80%,100%{transform:translateY(0);opacity:.5}40%{transform:translateY(-4px);opacity:1}}
.cc-compositor{display:flex;align-items:flex-end;gap:6px;padding-top:12px;border-top:1px solid var(--c-divisor)}
.cc-compositor textarea{flex:1;min-height:44px;max-height:140px;resize:none;padding:11px 13px;border-radius:14px;border:0;outline:0;background:var(--c-hundido);box-shadow:inset 0 0 0 1px var(--c-filo-suave),var(--s-hundido);color:var(--c-tinta);font:500 15px var(--fuente)}
.cc-compositor textarea:focus{box-shadow:inset 0 0 0 2px var(--c-accion)}
.cc-compositor .btn{min-height:44px;width:44px;padding:0}
.cc-miembros{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 12px;margin-top:14px}
.cc-miembros label{display:flex;align-items:center;gap:8px;font:500 13.5px var(--fuente);min-height:30px;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-miembros input{accent-color:var(--c-accion);width:17px;height:17px;flex:none}

/* Opiniones */
.estrellas{display:inline-flex;gap:1px;vertical-align:-3px}
.estrellas svg{width:16px;height:16px;color:var(--c-accion)}
.estrellas .apagada{color:var(--c-filo)}
.cc-promedio{display:flex;align-items:center;gap:18px}
.cc-promedio b{font:700 54px/1 var(--fuente-titulo);letter-spacing:-.03em}
.cc-promedio .estrellas svg{width:22px;height:22px}
.cc-dist{display:grid;grid-template-columns:92px minmax(0,1fr) 44px;white-space:nowrap;gap:10px;align-items:center;font:600 14px var(--fuente);padding:5px 0}
.cc-dist span:last-child{text-align:right;color:var(--c-tinta-2)}

/* Ajustes */
.cc-temas{display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:14px}
.cc-tema{border:0;cursor:pointer;border-radius:18px;padding:10px;text-align:left;background:var(--c-superficie-2);box-shadow:var(--s-2);display:flex;flex-direction:column;gap:10px;color:var(--c-tinta);font:650 14.5px var(--fuente);transition:box-shadow var(--t-rapida),transform var(--t-rapida)}
.cc-tema:hover{transform:translateY(-2px)}
.cc-tema.activo{box-shadow:var(--s-2),0 0 0 3px var(--c-accion)}
.cc-mini{height:112px;border-radius:12px;display:grid;grid-template-columns:34px 1fr;gap:6px;padding:7px;overflow:hidden}
.cc-mini.dia{background:var(--p-n-100)}
.cc-mini.noche{background:var(--p-d-900)}
.cc-mini .lat{border-radius:7px}
.cc-mini.dia .lat{background:oklch(0.99 0.006 210 / .8)}
.cc-mini.noche .lat{background:var(--p-d-800)}
.cc-mini .cont{display:flex;flex-direction:column;gap:5px}
.cc-mini .kp{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}
.cc-mini .kp i{height:26px;border-radius:6px;background:var(--p-cenote-700)}
.cc-mini .kp i:nth-child(2){background:var(--p-selva-700)}
.cc-mini .kp i:nth-child(3){background:var(--p-carmin-600)}
.cc-mini .pl{flex:1;border-radius:7px}
.cc-mini.dia .pl{background:var(--p-n-50)}
.cc-mini.noche .pl{background:var(--p-d-800)}
.cc-ajuste{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--c-divisor)}
.cc-ajuste:last-child{border-bottom:0}
.cc-ajuste b{display:block;font:650 15px var(--fuente)}
.cc-ajuste small{display:block;font:500 13.5px var(--fuente);color:var(--c-tinta-2);margin-top:2px}
.cc-ajuste .izq{display:flex;align-items:center;gap:12px;min-width:0}
.cc-matriz td,.cc-matriz th{white-space:nowrap}

@media (max-width:1000px){
  .cc-chat{grid-template-columns:1fr;height:auto}
  .cc-chat .panel{min-height:420px}
  .cc-cal-dia{min-height:70px}
  .cc-semana{grid-template-columns:1fr}
  .cc-semana .col{min-height:0}
  .cc-miembros{grid-template-columns:repeat(2,minmax(0,1fr))}
}
