/* RC Avisos de Talleres — barra superior + píldora flotante */
:root {
	--rcat-salvia: #b1c1ae;
	--rcat-bosque: #0d3b38;
	--rcat-arena: #f4f5f0;
	--rcat-acento: #d97706;
}

/* ---------- Barra superior (marquesina) ---------- */
.rcat-barra {
	position: relative;
	z-index: 60;
	width: 100%;
	overflow: hidden;
	background: var(--rcat-bosque);
	color: var(--rcat-salvia);
	padding: 10px 0;
	border-bottom: 1px solid rgba(177, 193, 174, 0.2);
	font-family: "Playfair Display", serif;
	font-style: italic;
	letter-spacing: 0.025em;
	font-size: 14px;
	line-height: 1.4;
}
@media (min-width: 768px) {
	.rcat-barra { font-size: 16px; }
}
.rcat-barra__pista {
	display: flex;
	width: max-content;
	animation: rcat-marquesina 25s linear infinite;
}
.rcat-barra:hover .rcat-barra__pista { animation-play-state: paused; }
.rcat-barra__grupo {
	display: flex;
	align-items: center;
	white-space: nowrap;
}
.rcat-barra__grupo > span { margin: 0 16px; }
.rcat-barra a {
	color: inherit;
	text-decoration: underline;
	transition: color 0.2s;
}
.rcat-barra a:hover { color: var(--rcat-arena); }

@keyframes rcat-marquesina {
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
}

/* ---------- Píldora flotante ---------- */
.rcat-pildora {
	position: fixed;
	right: 24px;
	bottom: 24px;
	z-index: 9990;
	display: flex;
	align-items: center;
	padding: 16px;
	border-radius: 9999px;
	background: var(--rcat-arena);
	color: var(--rcat-bosque) !important;
	border: 1px solid rgba(13, 59, 56, 0.1);
	box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
	font-family: Montserrat, sans-serif;
	text-decoration: none !important;
	transition: transform 0.3s;
}
@media (min-width: 1024px) {
	.rcat-pildora { right: 32px; bottom: 32px; }
}
.rcat-pildora:hover { transform: translateY(-4px); }

.rcat-pildora__indicador {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	flex-shrink: 0;
}

/* Flecha que señala el número cuando la píldora está cerrada */
.rcat-pildora__flecha {
	position: absolute;
	top: -40px;
	left: 50%;
	transform: translateX(-50%);
	pointer-events: none;
	color: var(--rcat-bosque);
	opacity: 1;
	transition: opacity 0.4s ease 0.6s;
}
.rcat-pildora__flecha svg {
	display: block;
	width: 20px;
	height: 20px;
	animation: rcat-bote 1s infinite;
}

/* Círculo con el número: grande cerrado, puntito al abrirse */
.rcat-pildora__punto {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 9999px;
	background: var(--rcat-bosque);
	color: var(--rcat-arena);
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	transition: width 0.4s ease 0.4s, height 0.4s ease 0.4s;
}
.rcat-pildora__punto--latido {
	position: absolute;
	opacity: 0.6;
	animation: rcat-latido 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
.rcat-pildora__num {
	opacity: 1;
	transition: opacity 0.4s ease 0.6s;
}

/* Textos que se colapsan */
.rcat-pildora__contenido {
	display: flex;
	align-items: center;
	max-width: 0;
	opacity: 0;
	overflow: hidden;
	transition: max-width 0.8s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s ease;
}
.rcat-pildora__textos {
	display: flex;
	flex-direction: column;
	white-space: nowrap;
	padding: 0 8px 0 12px;
}
.rcat-pildora__antetitulo {
	font-size: 9px;
	text-transform: uppercase;
	letter-spacing: 0.2em;
	font-weight: 700;
	opacity: 0.6;
}
.rcat-pildora__titulo {
	font-family: "Playfair Display", serif;
	font-style: italic;
	font-weight: 500;
	font-size: 12px;
	transition: color 0.2s;
}
@media (min-width: 1024px) {
	.rcat-pildora__titulo { font-size: 14px; }
}
.rcat-pildora__ir {
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	opacity: 0.6;
	transition: all 0.2s;
}

/* Estado abierto (al cargar y al pasar el ratón) */
.rcat-pildora--abierta .rcat-pildora__contenido,
.rcat-pildora:hover .rcat-pildora__contenido { max-width: 300px; opacity: 1; }
.rcat-pildora--abierta .rcat-pildora__flecha,
.rcat-pildora:hover .rcat-pildora__flecha { opacity: 0; transition: opacity 0.2s ease 0s; }
.rcat-pildora--abierta .rcat-pildora__punto,
.rcat-pildora:hover .rcat-pildora__punto { width: 8px; height: 8px; transition: width 0.2s ease 0s, height 0.2s ease 0s; }
.rcat-pildora--abierta .rcat-pildora__num,
.rcat-pildora:hover .rcat-pildora__num { opacity: 0; transition: opacity 0.1s ease 0s; }
.rcat-pildora:hover .rcat-pildora__titulo { color: var(--rcat-acento); }
.rcat-pildora:hover .rcat-pildora__ir { opacity: 1; transform: translateX(4px); }

@keyframes rcat-latido {
	0%, 100% { transform: scale(1); opacity: 1; }
	50% { transform: scale(1.8); opacity: 0; }
}
@keyframes rcat-bote {
	0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(0.8, 0, 1, 1); }
	50% { transform: none; animation-timing-function: cubic-bezier(0, 0, 0.2, 1); }
}

@media (prefers-reduced-motion: reduce) {
	.rcat-barra__pista,
	.rcat-pildora__flecha svg,
	.rcat-pildora__punto--latido { animation: none; }
}
