/* Oficina: solicitudes, mensajes, fotos, firma y directo (las mismas piezas que el portal y la app). */
.fotos { display: flex; gap: 8px; margin-top: 10px; }
.foto { width: 74px; height: 74px; border-radius: 12px; display: grid; place-items: center; color: var(--tenue); background: repeating-linear-gradient(135deg, #e9eff2 0 8px, #f3f7f9 8px 16px); border: 1px solid var(--linea); font-size: 11px; text-align: center; }
.foto.mas { background: #fff; border-style: dashed; color: var(--marca); }
.guardado { display: flex; align-items: center; gap: 8px; justify-content: center; font-size: 12.5px; color: var(--verde); }
.guardado::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--verde); box-shadow: 0 0 0 4px var(--verde-f); }
.directo { list-style: none; margin: 0; padding: 0; }
.directo li { display: grid; grid-template-columns: 44px 1fr; gap: 10px; padding: 9px 0; border-top: 1px solid var(--linea-2); font-size: 13.5px; }
.directo li:first-child { border-top: 0; }
.directo .h { color: var(--tenue); font-size: 12px; font-variant-numeric: tabular-nums; }
.directo b { font-weight: 600; }
.directo .nuevo-p { color: var(--marca); }
.solicitud { display: grid; grid-template-columns: 1fr auto; gap: 10px 16px; padding: 12px; border-radius: 14px; border: 1px solid #c6e1ea; background: linear-gradient(120deg, #fff, var(--marca-claro)); }
.solicitud + .solicitud { margin-top: 8px; }
.solicitud b { font-family: Poppins, sans-serif; font-weight: 600; }
.solicitud p { margin: 2px 0 0; color: var(--suave); font-size: 13px; }
.solicitud .fotos { margin-top: 8px; }
.solicitud .foto { width: 54px; height: 54px; }
.solicitud .sig-botones { align-self: center; }
.origen { display: inline-flex; gap: 4px; align-items: center; font-size: 11.5px; font-weight: 600; color: var(--marca-2); background: #fff; border: 1px solid #c6e1ea; padding: 1px 8px; border-radius: 999px; margin-left: 6px; }
.chat { display: flex; flex-direction: column; gap: 8px; }
.burbuja { max-width: 88%; padding: 9px 12px; border-radius: 14px 14px 14px 4px; background: #f1f5f7; font-size: 13.5px; }
.burbuja small { display: block; margin-bottom: 2px; }
.burbuja.mia { align-self: flex-end; border-radius: 14px 14px 4px 14px; background: var(--marca); color: #fff; }
.burbuja.mia small { color: rgba(255, 255, 255, .75); }
.escribir { display: flex; gap: 8px; margin-top: 4px; }
.escribir > span:first-child { flex: 1; height: 38px; border-radius: 999px; border: 1px solid var(--linea); display: flex; align-items: center; padding: 0 14px; color: var(--tenue); font-size: 13px; }
.fotos { flex-wrap: wrap; }
.fotos img, .galeria img { width: 74px; height: 74px; object-fit: cover; border-radius: 12px; border: 1px solid var(--linea); display: block; }
.galeria { display: flex; flex-wrap: wrap; gap: 8px; }
.galeria button { padding: 0; border: 0; background: none; cursor: zoom-in; }
.galeria img { width: 96px; height: 96px; }
.foto-grande { width: 100%; border-radius: 12px; display: block; }
.firma-img { max-width: 260px; max-height: 120px; display: block; border: 1px solid var(--linea); border-radius: 10px; background: #fff; margin-top: 6px; }
.chat .vacio { margin: 0; }
.escribir input { flex: 1; height: 40px; border-radius: 999px; border: 1px solid var(--linea); padding: 0 14px; font: inherit; min-width: 0; }
.escribir .btn { flex: none; }
.burbuja.cliente { background: var(--ambar-f); }
.oficina-enlaces { display: flex; flex-direction: column; gap: 4px; margin: auto 0 0; position: relative; z-index: 1; }
.oficina-enlaces a { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 10px; color: #cfe7ef; font-size: 12.5px; background: rgba(255, 255, 255, .06); }
.oficina-enlaces a:hover { background: rgba(255, 255, 255, .12); text-decoration: none; }
.oficina-enlaces .ic { width: 16px; height: 16px; }
.lateral-pie { margin-top: 8px; }
.directo a { color: var(--tinta); }
.directo a:hover { color: var(--marca); }
.panel .solicitud .sig-botones { flex-wrap: wrap; justify-content: flex-end; }
@media (max-width: 820px) { .solicitud { grid-template-columns: 1fr; } .panel .solicitud .sig-botones { justify-content: flex-start; } }
