.an-importante,.an-gestion,.an-rama{background:#fff8fb;border:1px solid #efd5e1;border-radius:18px;margin:16px 0;overflow:hidden;color:#35232e}.an-importante summary,.an-gestion summary,.an-rama summary{list-style:none;cursor:pointer;padding:20px;font-weight:750;display:flex;justify-content:space-between;gap:12px}.an-importante summary:after,.an-gestion summary:after,.an-rama summary:after{content:'⌄';font-size:22px;color:#c84c87}.an-importante[open]>summary:after,.an-gestion[open]>summary:after,.an-rama[open]>summary:after{transform:rotate(180deg)}.an-importante>p,.an-gestion>p{padding:0 20px;line-height:1.6}.an-gestion form,.an-resultados{padding:0 20px 20px}.an-buscar-turno{display:grid;gap:14px;grid-template-columns:1fr 1fr}.an-buscar-turno label,.an-importante label{display:grid;gap:8px}.an-buscar-turno input,.an-importante input{padding:13px;border:1px solid #dec6d2;border-radius:12px;width:100%;box-sizing:border-box;background:white;font:inherit}.an-gestion button,.an-importante button{border:0;border-radius:12px;padding:13px 18px;background:#a9366c;color:white;font:inherit;cursor:pointer}.an-gestion button:disabled{opacity:.55;cursor:default}.an-turno-encontrado{background:white;border:1px solid #eedce5;border-radius:16px;padding:20px;margin-bottom:12px}.an-etiqueta{display:inline-block;border-radius:99px;background:#f6e2ed;color:#96325f;padding:6px 12px;font-size:13px}.an-rama-lista{display:grid;gap:12px;padding:12px}.an-rama{grid-column:1/-1}.an-prof-fila{display:flex;overflow-x:auto;gap:12px;padding:12px 2px 18px;scroll-snap-type:x proximity}.an-prof-card{flex:0 0 140px;scroll-snap-align:start;border:1px solid #e6d6df;border-radius:16px;background:#fff;padding:18px 10px;display:grid;justify-items:center;gap:10px;color:#392534;cursor:pointer}.an-prof-card[aria-pressed=true]{border:2px solid #b13d78;background:#fff0f7}.an-prof-avatar{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#f4dbe8;color:#a73469;font-weight:800}#listaProfesionalesModal{display:flex!important;overflow-x:auto;gap:12px}#listaProfesionalesModal .profesional-modal-card{flex:0 0 180px;display:flex;flex-direction:column;padding:20px;text-align:center}#listaProfesionalesModal .flecha-profesional-modal{display:none}.confirmacion-reserva,.fc-exito{background:linear-gradient(145deg,#fff4fa,#f8f2fb)!important;border:1px solid #eed7e4!important;border-radius:24px!important;padding:24px!important;color:#392536}.confirmacion-reserva>p{margin:8px 0!important;font-size:14px;line-height:1.45}.confirmacion-reserva h2,.fc-exito h2{font-size:24px!important;line-height:1.25}.an-estado-reserva{background:#f6e4ef!important;border:0!important;border-radius:16px;padding:16px!important}.an-estado-reserva.confirmada{background:#e9f4ee!important}.an-descargas,.enlaces-cancelacion{margin-top:16px}#anEditarCategorias{padding-bottom:16px}#anEditarCategorias label{padding:14px 20px;border-top:1px solid #efd5e1}.an-rama[hidden],.fc-servicio[hidden],.an-prof-card[hidden]{display:none!important}summary::-webkit-details-marker{display:none}button:focus-visible,summary:focus-visible{outline:3px solid #a9366c;outline-offset:3px}@media(max-width:600px){.an-buscar-turno{grid-template-columns:1fr}.an-prof-card{flex-basis:120px}.an-importante summary,.an-gestion summary{padding:16px;font-size:15px}.confirmacion-reserva{padding:18px!important}}
.fc-exito h1{font-size:26px;line-height:1.2;color:#71354f}.fc-exito>p{font-size:14px;line-height:1.5}.an-gestion>p[role=status]:empty{display:none}.an-importante .extra-reserva-card{background:transparent;box-shadow:none;margin:0;border-radius:0;border-top:1px solid #efd5e1}.an-importante summary:hover,.an-gestion summary:hover,.an-rama summary:hover{background:#fbeaf3}
.an-asignacion{margin:16px;padding:18px;background:#fff;border:1px solid #ead4df;border-radius:16px}.an-asignacion label{display:flex!important;align-items:center;gap:10px;margin:10px 0}.an-asignacion input[type=checkbox]{width:18px;height:18px;accent-color:#a9366c}.an-servicios-check{max-height:340px;overflow:auto;padding:8px;border-radius:12px;background:#fff7fb}.an-comprobante-cliente.enviado{border:1px solid #c6dfd0;background:#eff8f2}.an-comprobante-cliente.enviado .an-comprobante-estado{display:block;font-weight:700;color:#28593b;padding:14px;line-height:1.5}.an-comprobante-cliente [hidden],.an-servicios-check[hidden],#listaProfesionalesModal [hidden]{display:none!important}.an-buscar-turno{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:600px){.an-buscar-turno{grid-template-columns:1fr}}

/* Recupera las tarjetas y fotos originales dentro de las categorías. */
.an-rama,.an-rama-lista{min-width:0;max-width:100%;box-sizing:border-box}
.an-rama-lista{grid-template-columns:minmax(0,1fr)}
#listaServiciosPublicos .an-rama-lista{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
#listaServiciosPublicos .servicio-publico-card{min-width:0;width:100%}
#listaServiciosModal .an-rama-lista{grid-template-columns:repeat(3,minmax(0,1fr))}
.fc-lista-servicios>.an-rama{background:#202020;color:#f3f3f3;border-color:#393939}
.fc-lista-servicios>.an-rama>summary:hover{background:#292329}
.fc-lista-servicios .fc-servicio{min-width:0;max-width:100%;background:#202020;color:#f3f3f3;border-color:#383838}
.fc-lista-servicios .fc-servicio-info{min-width:0}
.fc-lista-servicios .fc-servicio-info h3{white-space:normal;overflow-wrap:anywhere}
@media(max-width:900px){#listaServiciosPublicos .an-rama-lista,#listaServiciosModal .an-rama-lista{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#listaServiciosPublicos .an-rama-lista,#listaServiciosModal .an-rama-lista{grid-template-columns:minmax(0,1fr)}.fc-lista-servicios .fc-servicio{grid-template-columns:72px minmax(0,1fr)}.fc-lista-servicios .fc-foto{width:72px;height:80px}.fc-lista-servicios .fc-servicio-acciones{grid-column:2;flex-wrap:wrap;white-space:normal}}

/* V18: confirmación compacta, legible y adaptable sin imponer color de marca. */
.confirmacion-reserva{width:min(100%,520px);box-sizing:border-box;margin-inline:auto;display:flex;flex-direction:column;gap:8px;text-align:left}
.confirmacion-reserva>.icono-reserva-exitosa{align-self:center;flex-shrink:0}
.confirmacion-reserva>h2{text-align:center;margin:4px 0 12px!important;font-size:clamp(21px,4vw,26px)!important}
.confirmacion-reserva>p{padding:7px 0;margin:0!important;border-bottom:1px solid rgba(128,128,128,.18);overflow-wrap:anywhere}
.confirmacion-reserva>.an-estado-reserva{order:-1;margin-bottom:10px}
.confirmacion-reserva .boton-finalizar-reserva{min-height:45px;width:100%;margin-top:12px}
@media(max-width:520px){.confirmacion-reserva{gap:5px;padding:18px!important}.confirmacion-reserva>h2{font-size:21px!important}}
