:root{--ease-salida:cubic-bezier(.22, 1, .36, 1);--ease-resorte:cubic-bezier(.34, 1.56, .64, 1);--ease-suave:cubic-bezier(.4, 0, .2, 1);--dur-rapida:.14s;--dur-media:.22s;--dur-lenta:.42s;--dur-entrada:.56s;--halo-marca:0 0 0 4px color-mix(in srgb, var(--brand) 26%, transparent);--halo-peligro:0 0 0 4px color-mix(in srgb, var(--danger) 22%, transparent);--shadow-hover:var(--shadow-md), 0 12px 28px -12px color-mix(in srgb, var(--brand) 45%, transparent)}@keyframes efecto-subir{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes efecto-aparecer{0%{opacity:0}to{opacity:1}}@keyframes efecto-escalar{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:none}}.portal-body>:not(main),.portal-body>main>*,.pagina-directorio>*,.renta-publica>*,.pagina-ingresar>*,.pagina-legal>*{animation:efecto-subir var(--dur-entrada) var(--ease-salida) backwards}.portal-body>main>:nth-child(2),.pagina-directorio>:nth-child(2),.renta-publica>:nth-child(2),.pagina-ingresar>:nth-child(2){animation-delay:60ms}.portal-body>main>:nth-child(3),.pagina-directorio>:nth-child(3),.renta-publica>:nth-child(3),.pagina-ingresar>:nth-child(3){animation-delay:.12s}.portal-body>main>:nth-child(4),.pagina-directorio>:nth-child(4),.renta-publica>:nth-child(4){animation-delay:.18s}.portal-body>main>:nth-child(n+5),.pagina-directorio>:nth-child(n+5),.renta-publica>:nth-child(n+5){animation-delay:.24s}.agenda-kpis>*,.metricas-grid>*,.lista-paquetes>*,.agendar-servicios>*{animation:efecto-escalar var(--dur-lenta) var(--ease-salida) backwards}.agenda-kpis>:nth-child(2),.metricas-grid>:nth-child(2),.lista-paquetes>:nth-child(2),.agendar-servicios>:nth-child(2){animation-delay:70ms}.agenda-kpis>:nth-child(3),.metricas-grid>:nth-child(3),.lista-paquetes>:nth-child(3),.agendar-servicios>:nth-child(3){animation-delay:.14s}.agenda-kpis>:nth-child(n+4),.metricas-grid>:nth-child(n+4),.lista-paquetes>:nth-child(n+4),.agendar-servicios>:nth-child(n+4){animation-delay:.21s}.pagina-ingresar button[type=submit],.formulario-reservar button[type=submit],.formulario-agendar button[type=submit],.formulario-datos-paciente button[type=submit],.boton-primario{isolation:isolate;transition:transform var(--dur-media) var(--ease-salida), box-shadow var(--dur-media) var(--ease-salida), filter var(--dur-media) var(--ease-salida), background-position var(--dur-lenta) var(--ease-salida);position:relative;overflow:hidden}.pagina-ingresar button[type=submit]:after,.formulario-reservar button[type=submit]:after,.formulario-agendar button[type=submit]:after,.formulario-datos-paciente button[type=submit]:after,.boton-primario:after{content:"";z-index:-1;background:linear-gradient(115deg, transparent 30%, color-mix(in srgb, var(--surface) 55%, transparent) 50%, transparent 70%);pointer-events:none;position:absolute;inset:0;transform:translate(-120%)}.pagina-ingresar button[type=submit]:hover:not(:disabled):after,.formulario-reservar button[type=submit]:hover:not(:disabled):after,.formulario-agendar button[type=submit]:hover:not(:disabled):after,.formulario-datos-paciente button[type=submit]:hover:not(:disabled):after,.boton-primario:hover:after{transition:transform .7s var(--ease-suave);transform:translate(120%)}.pagina-ingresar button[type=submit]:hover:not(:disabled),.formulario-reservar button[type=submit]:hover:not(:disabled),.formulario-agendar button[type=submit]:hover:not(:disabled),.formulario-datos-paciente button[type=submit]:hover:not(:disabled),.boton-primario:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.pagina-ingresar button[type=submit]:active:not(:disabled),.formulario-reservar button[type=submit]:active:not(:disabled),.formulario-agendar button[type=submit]:active:not(:disabled),.formulario-datos-paciente button[type=submit]:active:not(:disabled),.boton-primario:active{transition-duration:var(--dur-rapida);transform:translateY(0)scale(.97)}.boton-primario svg,.pagina-ingresar button[type=submit] svg,button.secundario svg{transition:transform var(--dur-media) var(--ease-resorte)}.boton-primario:hover svg,.pagina-ingresar button[type=submit]:hover:not(:disabled) svg{transform:translate(3px)}.boton-header:hover svg{transform:rotate(90deg)}button.secundario,.boton-accion-ligero,.boton-peligro-ligero,.boton-guardar-vista,.theme-toggle{transition:background-color var(--dur-media) var(--ease-salida), border-color var(--dur-media) var(--ease-salida), color var(--dur-media) var(--ease-salida), box-shadow var(--dur-media) var(--ease-salida), transform var(--dur-media) var(--ease-salida)}button.secundario:hover:not(:disabled),.boton-accion-ligero:hover:not(:disabled),.boton-guardar-vista:hover:not(:disabled),.theme-toggle:hover{border-color:color-mix(in srgb, var(--brand) 55%, var(--border));box-shadow:var(--shadow-sm), var(--halo-marca);transform:translateY(-1px)}.boton-peligro-ligero:hover:not(:disabled){box-shadow:var(--shadow-sm), var(--halo-peligro);transform:translateY(-1px)}button.secundario:active:not(:disabled),.boton-accion-ligero:active:not(:disabled),.boton-peligro-ligero:active:not(:disabled),.boton-guardar-vista:active:not(:disabled),.theme-toggle:active{transition-duration:var(--dur-rapida);transform:scale(.96)}.theme-toggle svg{transition:transform var(--dur-lenta) var(--ease-resorte)}.theme-toggle:hover svg{transform:rotate(-20deg)scale(1.1)}.boton-cancelar-envoltura>*{animation:efecto-escalar var(--dur-media) var(--ease-resorte) backwards}:is(button[aria-busy=true],button:disabled:has(.spinner-icono)){animation:efecto-latir 1.4s var(--ease-suave) infinite}@keyframes efecto-latir{0%,to{opacity:1}50%{opacity:.72}}.agenda-kpi,.tarjeta-metrica,.tarjeta-paquete,.tarjeta-servicio,.tarjeta-seccion,.tarjeta-reserva,.dia-agenda{transition:transform var(--dur-lenta) var(--ease-salida), box-shadow var(--dur-lenta) var(--ease-salida), border-color var(--dur-lenta) var(--ease-salida), background-color var(--dur-lenta) var(--ease-salida)}.tarjeta-paquete:hover,.tarjeta-servicio:hover,.tarjeta-reserva:hover{box-shadow:var(--shadow-hover);border-color:color-mix(in srgb, var(--brand) 45%, var(--border));transform:translateY(-3px)}.agenda-kpi:hover,.tarjeta-metrica:hover{border-color:color-mix(in srgb, var(--brand) 32%, var(--border))}.tarjeta-servicio:active,.tarjeta-paquete:active{transition-duration:var(--dur-rapida);transform:translateY(-1px)scale(.99)}.tarjeta-servicio[aria-pressed=true] .tarjeta-servicio-marca svg{animation:efecto-palomita var(--dur-lenta) var(--ease-resorte) backwards}@keyframes efecto-palomita{0%{opacity:0;transform:scale(.4)rotate(-25deg)}to{opacity:1;transform:none}}.portal-sidebar .portal-nav a svg,.recepcion-sidebar .portal-nav a svg{transition:transform var(--dur-media) var(--ease-resorte)}.portal-sidebar .portal-nav a:hover svg,.recepcion-sidebar .portal-nav a:hover svg{transform:translate(2px)scale(1.08)}.portal-sidebar .portal-nav a,.recepcion-sidebar .portal-nav a{transition:background var(--dur-media) var(--ease-salida), border-color var(--dur-media) var(--ease-salida), color var(--dur-media) var(--ease-salida), box-shadow var(--dur-media) var(--ease-salida), padding-left var(--dur-media) var(--ease-salida)}.portal-sidebar .portal-nav a:hover:not(.activo),.recepcion-sidebar .portal-nav a:hover:not(.activo){padding-left:.95rem}.portal-sidebar .portal-nav a.activo,.recepcion-sidebar .portal-nav a.activo{animation:efecto-activo var(--dur-lenta) var(--ease-salida) backwards}@keyframes efecto-activo{0%{opacity:.6;background-position:-100% 0}to{opacity:1}}.selector-filtro,.selector-vista button,.atajos-fecha button,.filtros-recursos button{transition:background-color var(--dur-media) var(--ease-salida), color var(--dur-media) var(--ease-salida), box-shadow var(--dur-media) var(--ease-salida), transform var(--dur-media) var(--ease-salida)}.selector-filtro:active,.selector-vista button:active,.atajos-fecha button:active,.filtros-recursos button:active{transform:scale(.95)}.portal-header{transition:box-shadow var(--dur-lenta) var(--ease-salida), background-color var(--dur-lenta) var(--ease-salida)}html.con-desplazamiento .portal-header{box-shadow:var(--shadow-md)}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{transition:border-color var(--dur-media) var(--ease-salida), box-shadow var(--dur-media) var(--ease-salida), background-color var(--dur-media) var(--ease-salida)}input:not([type=checkbox]):not([type=radio]):not([type=range]):hover:not(:focus):not(:disabled),select:hover:not(:focus):not(:disabled),textarea:hover:not(:focus):not(:disabled){border-color:color-mix(in srgb, var(--brand) 40%, var(--border))}input:not([type=checkbox]):not([type=radio]):not([type=range]):focus,select:focus,textarea:focus{box-shadow:var(--halo-marca)}:is(input:user-invalid,select:user-invalid,textarea:user-invalid){animation:efecto-temblar .36s var(--ease-suave);box-shadow:var(--halo-peligro)}@keyframes efecto-temblar{0%,to{transform:none}20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}input[type=checkbox],input[type=radio]{transition:transform var(--dur-media) var(--ease-resorte)}input[type=checkbox]:active,input[type=radio]:active{transform:scale(.85)}.exito,.error,.aviso-sesion,.error-inline{animation:efecto-escalar var(--dur-lenta) var(--ease-resorte) backwards}.exito svg,.error svg{animation:efecto-palomita var(--dur-lenta) var(--ease-resorte) .12s backwards}.modal-reservar[open]{animation:efecto-escalar var(--dur-lenta) var(--ease-salida)}.modal-reservar[open]::backdrop{animation:efecto-aparecer var(--dur-lenta) var(--ease-salida);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.menu-movil-fondo{transition:opacity var(--dur-lenta) var(--ease-salida)}.estado-vacio svg{animation:efecto-flotar 4s var(--ease-suave) infinite}@keyframes efecto-flotar{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.punto-vivo{vertical-align:.05em;background:currentColor;border-radius:50%;width:.5rem;height:.5rem;margin-right:.35rem;display:inline-block}.punto-vivo.apagado{background:0 0;border:1.5px solid;animation:none}.punto-vivo,.sidebar-dot{animation:efecto-radar 2.4s var(--ease-suave) infinite}@keyframes efecto-radar{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--success) 55%, transparent)}70%{box-shadow:0 0 0 7px color-mix(in srgb, var(--success) 0%, transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--success) 0%, transparent)}}.tabla-lista tbody tr{transition:background-color var(--dur-media) var(--ease-salida)}.tabla-lista tbody tr:hover{background-color:color-mix(in srgb, var(--brand-tint) 45%, transparent)}.slot-disponible,.agendar-hora,.renta-slot,.calendario-plus{transition:transform var(--dur-media) var(--ease-resorte), background-color var(--dur-media) var(--ease-salida), border-color var(--dur-media) var(--ease-salida), box-shadow var(--dur-media) var(--ease-salida), color var(--dur-media) var(--ease-salida)}.agendar-hora:hover:not(:disabled),.renta-slot:hover:not(:disabled){box-shadow:var(--shadow-sm), var(--halo-marca);transform:translateY(-2px)}.agendar-hora:active:not(:disabled),.renta-slot:active:not(:disabled),.slot-disponible:active,.calendario-plus:active{transition-duration:var(--dur-rapida);transform:scale(.94)}.agendar-hora[aria-pressed=true],.renta-slot[aria-pressed=true]{animation:efecto-elegido var(--dur-lenta) var(--ease-resorte)}@keyframes efecto-elegido{0%{transform:scale(.92)}60%{transform:scale(1.05)}to{transform:none}}.celda-ocupada-recepcion,.calendario-reserva,.tarjeta-reserva{animation:efecto-escalar var(--dur-lenta) var(--ease-salida) backwards}.etiqueta-ahora{animation:efecto-respirar 3s var(--ease-suave) infinite}@keyframes efecto-respirar{0%,to{opacity:1}50%{opacity:.7}}[aria-current=step] .agendar-paso-numero{animation:efecto-elegido var(--dur-lenta) var(--ease-resorte);box-shadow:var(--halo-marca)}.esqueleto-pagina{animation:efecto-aparecer var(--dur-media) var(--ease-salida) .12s backwards;gap:1.1rem;padding:.5rem 0 2rem;display:grid}.esqueleto-fila{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.9rem;display:grid}.esqueleto{border-radius:var(--radius);background:color-mix(in srgb, var(--ink) 9%, var(--surface));position:relative;overflow:hidden}.esqueleto:after{content:"";background:linear-gradient(100deg, transparent 20%, color-mix(in srgb, var(--surface) 70%, transparent) 50%, transparent 80%);animation:efecto-brillo 1.5s var(--ease-suave) infinite;position:absolute;inset:0;transform:translate(-100%)}@keyframes efecto-brillo{to{transform:translate(100%)}}.esqueleto-ceja{width:9rem;height:.7rem}.esqueleto-titulo{width:min(24rem,70%);height:2.3rem}.esqueleto-texto{width:min(34rem,90%);height:.9rem}.esqueleto-tarjeta{border-radius:var(--radius-lg,14px);height:5.6rem}.esqueleto-bloque{border-radius:var(--radius-lg,14px);height:22rem}@supports (animation-timeline:view()){.pagina-directorio .tarjeta-servicio,.pagina-directorio .agendar-dia,.renta-publica .renta-recurso,.pagina-legal section{animation:linear both efecto-subir;animation-timeline:view();animation-range:entry entry 60%}}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){animation:efecto-revelar-tema .52s var(--ease-salida)}@keyframes efecto-revelar-tema{0%{clip-path:circle(0 at var(--tema-x,50%) var(--tema-y,0))}to{clip-path:circle(150vmax at var(--tema-x,50%) var(--tema-y,0))}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.boton-primario:hover,.pagina-ingresar button[type=submit]:hover,.formulario-reservar button[type=submit]:hover,.formulario-agendar button[type=submit]:hover,.formulario-datos-paciente button[type=submit]:hover,.tarjeta-paquete:hover,.tarjeta-servicio:hover,.tarjeta-reserva:hover,button.secundario:hover,.boton-accion-ligero:hover,.boton-peligro-ligero:hover,.boton-guardar-vista:hover,.theme-toggle:hover,.agendar-hora:hover,.renta-slot:hover,.slot-disponible:hover{transform:none!important}.boton-primario:after,.pagina-ingresar button[type=submit]:after,.esqueleto:after{display:none}::view-transition-new(root){animation:none}}strong>.numero-animado{color:inherit;font:inherit;letter-spacing:inherit;font-variant-numeric:tabular-nums;margin:0;display:inline}
.portal-sidebar .portal-nav a.activo,.recepcion-sidebar .portal-nav a.activo{border-color:color-mix(in srgb, var(--accent) 40%, transparent);background:var(--accent-tint);color:var(--accent-ink);box-shadow:none}.portal-sidebar .portal-nav a.activo:after{background:var(--accent)}.eyebrow,.recepcion-shell .eyebrow{color:var(--accent-ink)}.recepcion-shell .slot-disponible{border-color:color-mix(in srgb, var(--accent) 38%, transparent);background:color-mix(in srgb, var(--accent-tint) 30%, transparent);color:var(--accent-ink)}.recepcion-shell .celda-libre:hover .slot-disponible,.recepcion-shell .celda-libre:focus-within .slot-disponible{border-color:var(--accent);background:var(--accent-tint)}.exito{border-color:color-mix(in srgb, var(--accent) 30%, transparent);background:color-mix(in srgb, var(--accent-tint) 55%, var(--surface));color:var(--accent-ink)}.celda-ocupada{background:color-mix(in srgb, var(--brand-tint) 70%, var(--surface));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--brand) 22%, transparent)}.recepcion-shell .tarjeta-metrica.info .metrica-icono{background:var(--accent);color:var(--surface)}.recepcion-shell .tarjeta-metrica.positivo .metrica-icono{background:var(--accent-tint);color:var(--accent-ink)}.recepcion-shell .tarjeta-metrica.atencion .metrica-icono{background:var(--brand);color:var(--brand-ink)}.recepcion-shell .tarjeta-metrica.normal .metrica-icono{background:var(--brand-tint);color:var(--brand-deep)}
