/* Carousel styles are copied from src/pages/QuizPage.css for the static landing pages. */
.quiz-carousel {
  position: relative;
  width: min(100%, 512px);
  aspect-ratio: 512 / 269;
  margin-top: 36px;
  flex: none;
}

.quiz-carousel-stage { position: absolute; top: 50%; left: 50%; width: 512px; height: 269px; transform-origin: center; }

.quiz-carousel-cards {
  position: absolute;
  inset: 0;
}

.quiz-carousel-card {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 145px;
  height: 150px;
  transition: transform 820ms cubic-bezier(.22,.75,.25,1), opacity 820ms ease;
  will-change: transform;
}

.quiz-carousel-card-glass {
  position: absolute;
  z-index: 0;
  inset: -10px;
  border: 1.5px solid rgb(255 255 255 / 85%);
  border-radius: 40px;
  background: linear-gradient(140deg, rgb(255 255 255 / 65%), rgb(255 255 255 / 11%) 48%, rgb(255 255 255 / 30%));
  box-shadow: 0 2px 10px rgb(35 35 35 / 6%), inset 0 2px 2px rgb(255 255 255 / 65%);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
}

.quiz-carousel-card-face {
  position: relative;
  z-index: 1;
  display: flex;
  width: 100%;
  height: 100%;
  overflow: hidden;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
  padding: 0 5px 12px;
  border: 1px solid rgb(255 255 255 / 50%);
  border-radius: 34px;
  box-shadow: 0 7px 10px rgb(0 0 0 / 15%), inset 0 2px 2px rgb(255 255 255 / 27%);
}

.quiz-carousel-card-face::before {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(124deg, transparent 0 23px, rgb(255 255 255 / 5%) 24px 26px, transparent 27px 54px);
  content: "";
  pointer-events: none;
}

.quiz-carousel-card-logo {
  position: relative;
  display: block;
  width: 76px;
  height: 76px;
  flex: none;
  pointer-events: none;
  user-select: none;
}

.quiz-carousel-card-label {
  position: relative;
  display: block;
  flex: none;
  font-size: 23px;
  font-weight: 700;
  letter-spacing: -0.8px;
  line-height: 30px;
  white-space: nowrap;
}

.quiz-carousel-card-openai .quiz-carousel-card-face {
  background: linear-gradient(128deg, #fff 0 17%, #edf0f2 18%, #fff 27% 62%, #e9ecef 70%, #fff 81%);
  color: #0a0a0a;
}

.quiz-carousel-card-openai .quiz-carousel-card-label { font-size: 28px; }
.quiz-carousel-card-openai .quiz-carousel-card-logo { width: 79px; height: 79px; }

.quiz-carousel-card-claude .quiz-carousel-card-face { background: linear-gradient(125deg, #ea8b66, #e17859 60%, #d96c51); color: #fff; }
.quiz-carousel-card-gemini .quiz-carousel-card-face { background: linear-gradient(132deg, #087afa 0%, #298df4 27%, #ab81c2 64%, #e16f74 100%); color: #fff; }
.quiz-carousel-card-grok .quiz-carousel-card-face,
.quiz-carousel-card-perplexity .quiz-carousel-card-face { background: linear-gradient(125deg, #171313, #292322 62%, #1b1717); color: #fff; }
.quiz-carousel-card-claude .quiz-carousel-card-logo,
.quiz-carousel-card-gemini .quiz-carousel-card-logo,
.quiz-carousel-card-grok .quiz-carousel-card-logo,
.quiz-carousel-card-perplexity .quiz-carousel-card-logo { filter: brightness(0) invert(1); }

.quiz-carousel-card-perplexity .quiz-carousel-card-label { font-size: 19px; }

.quiz-carousel-card-entering { animation: quiz-card-appear 820ms ease; transition: none; }

@keyframes quiz-card-appear {
  from { opacity: 0; }
  to { opacity: .92; }
}


/* The archived hero video stays in the document for hydration but is never shown. */
.kloel-hero-visual > :not(.kloel-hero-carousel) { display: none !important; }
.kloel-hero-visual { min-width: 0; align-items: center; }
.kloel-hero-carousel {
  position: relative;
  display: flex;
  width: 100%;
  min-height: 320px;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  isolation: isolate;
}
.kloel-hero-carousel::before {
  position: absolute;
  z-index: -1;
  width: min(98%, 650px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(97,72,211,.27), rgba(29,32,89,.15) 38%, transparent 70%);
  content: '';
}
.kloel-hero-carousel .quiz-carousel { width: min(100%, 520px); margin: 0; }
@media(max-width:1023px) {
  .kloel-hero-carousel { min-height: 240px; }
  .kloel-hero-carousel .quiz-carousel { width: min(100%, 420px); }
}
@media(max-width:560px) {
  .kloel-hero-carousel { min-height: 190px; }
  .kloel-hero-carousel .quiz-carousel { width: min(100%, 320px); }
}
@media(prefers-reduced-motion:reduce) {
  .quiz-carousel-card { transition: none; animation: none; }
}
