.zigzag td,
.zigzag th {
  width: 64px;
  height: 64px;
}

.prologue-container {
  margin: 30px auto;
  max-width: 600px;
  padding: 10px;
}

.prologue-box {
  background-color: var (--bg-color);
  border: 2px solid #777;
  border-radius: 8px;
  padding: 25px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  text-align: center;
  position: relative;
}

.prologue-title {
  color: var (--text-color);
  margin-top: 0;
  font-variant: small-caps;
  letter-spacing: 2px;
  font-size: 1.5em;
}

.prologue-text {
  font-style: italic;
  line-height: 1.8;
  color: var (--text-color);
  font-size: 1.1em;
}

.prologue-divider {
  height: 1px;
  background: var (--text-color);
  margin: 20px auto;
  width: 60%;
}

.prologue-footer {
  font-size: 0.8em;
  color: var (--text-color);
}

.card-carousel-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
  margin: 32px auto;
  max-width: 700px;
}

.card-carousel-btn {
  font-size: 2em;
  background: var(--bg-color);
  border: 1px solid var(--border-color);
  border-radius: 50%;
  width: 48px;
  height: 48px;
  cursor: pointer;
  transition: background 0.2s;
  color: var(--text-color);
}

.card-carousel-btn:active {
  background: var(--bg-hover);
}

.card-carousel-card {
  width: 420px;
  aspect-ratio: 16/9;
  border: 2px solid var(--border-color);
  border-radius: 16px;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
  background: var(--card-bg);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 24px;
  text-align: center;
  transition:
    box-shadow 0.2s,
    background 0.2s,
    color 0.2s;
  color: var(--text-color);
}

.card-carousel-card h2 {
  margin: 0 0 12px 0;
  font-size: 1.5em;
  color: var(--text-color);
}

.card-carousel-card p {
  margin: 0;
  font-size: 1.1em;
  color: var(--text-secondary);
}

.card-carousel-indicator {
  margin-top: 12px;
  font-size: 1em;
  color: var(--indicator-color);
  letter-spacing: 0.1em;
}

@media (prefers-color-scheme: dark) {
  .card-carousel-btn {
    background: var(--bg-color);
    border-color: var(--border-color);
    color: var(--text-color);
  }

  .card-carousel-btn:active {
    background: var(--bg-hover);
  }

  .card-carousel-card {
    background: var(--card-bg);
    border-color: var(--border-color);
    color: var(--text-color);
  }

  .card-carousel-card h2 {
    color: var(--text-color);
  }

  .card-carousel-card p {
    color: var(--text-secondary);
  }

  .card-carousel-indicator {
    color: var(--indicator-color);
  }
}

.mytho-chapter {
  text-align: center;
  font-size: 7vw;
  text-shadow: 0px 0px 5px;
}

.mytho-section {
  text-align: center;
  font-size: 4vw;
}

.story-content {
  width: 800px;
  margin: 0 auto;
  padding: 20px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
}

.story-content p {
  margin: 1.5vh;
  line-height: 1.6;
  text-align: justify;
}

.story-content div {
  margin: 2vh;
}

@media screen and (max-width: 768px) {
  .story-content {
    width: 90%;
  }

  .story-content p {
    margin: 0vh;
  }

  .story-content div {
    margin: 0vh;
  }
}
