/* Karuzela komentarzy na stronie głównej (MCQP_Testimonials::section, 0.49.3). Wygląd kart zostaje z motywu. */
.testimonials .tcar { --tc-gap: 18px; --tc-per: 3; --tc-amber: var(--mcq-primary, #f0a500); --tc-line: var(--mcq-border, #45505e); --tc-card: var(--mcq-card, #2c2f34); --tc-soft: var(--mcq-soft, #b6b6c3); position: relative; }
.testimonials .testimonial-list.tcar-track { display: flex; gap: var(--tc-gap); grid-template-columns: none; margin: 0 -6px; padding: 8px 6px 14px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.testimonials .tcar-track::-webkit-scrollbar { display: none; }
.testimonials .tcar-track:focus-visible { outline: 2px solid var(--tc-amber); outline-offset: 2px; border-radius: 20px; }
.testimonials .tcar-track > .testimonial { flex: 0 0 calc((100% - (var(--tc-per) - 1) * var(--tc-gap)) / var(--tc-per)); min-width: 0; scroll-snap-align: start; transition: opacity .4s ease, transform .4s ease; }
.testimonials .tcar.is-ready .tcar-track > .testimonial:not(.is-vis) { opacity: .45; transform: scale(.97); }
.testimonials .tcar-track > .testimonial .testimonial-card { transition: border-color .25s ease, transform .25s ease; }
.testimonials .tcar-track > .testimonial.is-vis .testimonial-card:hover { border-color: var(--tc-amber); transform: translateY(-3px); }

.testimonials .tcar-nav { display: flex; align-items: center; justify-content: center; gap: 14px; margin-top: 8px; }
.testimonials .tcar.is-static .tcar-nav { display: none; }
.testimonials .tcar-btn { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid var(--tc-line); border-radius: 50%; background: var(--tc-card); color: var(--mcq-strong, #fff); cursor: pointer; transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease; }
.testimonials .tcar-btn svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
@media (hover: hover) {
	.testimonials .tcar-btn:hover { border-color: var(--tc-amber); background: var(--tc-amber); color: var(--mcq-on-primary, #1b1608); }
	.testimonials .tcar-prev:hover { transform: translateX(-2px); }
	.testimonials .tcar-next:hover { transform: translateX(2px); }
}
.testimonials .tcar-btn:active { border-color: var(--tc-amber); color: var(--tc-amber); }
.testimonials .tcar-btn:focus-visible { outline: 2px solid var(--tc-amber); outline-offset: 3px; }
.testimonials .tcar-dots { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px; }
.testimonials .tcar-dot { position: relative; width: 26px; height: 26px; padding: 0; border: 0; background: none; cursor: pointer; }
.testimonials .tcar-dot::before { content: ""; position: absolute; left: 50%; top: 50%; width: 9px; height: 9px; margin: -4.5px 0 0 -4.5px; border-radius: 999px; background: var(--tc-line); transition: width .3s ease, margin .3s ease, background .3s ease; }
.testimonials .tcar-dot:hover::before { background: var(--tc-soft); }
.testimonials .tcar-dot.is-on { width: 40px; }
.testimonials .tcar-dot.is-on::before { width: 30px; margin-left: -15px; background: color-mix(in srgb, var(--tc-amber) 35%, var(--tc-line)); overflow: hidden; }
.testimonials .tcar-dot.is-on::after { content: ""; position: absolute; left: 5px; top: 50%; width: 30px; height: 9px; margin-top: -4.5px; border-radius: 999px; background: var(--tc-amber); transform-origin: 0 50%; }
.testimonials .tcar.is-playing .tcar-dot.is-on::after { animation: tcar-fill var(--tc-dur, 7s) linear both; }
.testimonials .tcar.is-paused .tcar-dot.is-on::after { animation-play-state: paused; }
.testimonials .tcar-dot:focus-visible { outline: 2px solid var(--tc-amber); outline-offset: 1px; border-radius: 8px; }
@keyframes tcar-fill { from { transform: scaleX(.12); } to { transform: scaleX(1); } }

@media (max-width: 999px) { .testimonials .tcar { --tc-per: 2; } }
@media (max-width: 719px) {
	.testimonials .tcar { --tc-gap: 12px; }
	.testimonials .tcar-track > .testimonial { flex-basis: 86%; }
	.testimonials .tcar.is-ready .tcar-track > .testimonial:not(.is-vis) { transform: scale(.95); }
}
@media (prefers-reduced-motion: reduce) {
	.testimonials .testimonial-list.tcar-track { scroll-behavior: auto; }
	.testimonials .tcar-track > .testimonial, .testimonials .tcar-btn, .testimonials .tcar-dot::before { transition: none; }
	.testimonials .tcar-dot.is-on::after { animation: none !important; }
}
