:root {
  --qla-accent: #c88b46;
  --qla-accent-2: #78a4a2;
}

.qla-hero__art img {
  object-position: 68% 48%;
  filter: saturate(.82) contrast(1.08) brightness(.8);
}

.qla-hero::after {
  content: "";
  position: absolute;
  width: min(34vw, 420px);
  aspect-ratio: 1;
  right: 7vw;
  top: 50%;
  translate: 0 -50%;
  border: 1px solid color-mix(in srgb, var(--qla-accent) 34%, transparent);
  border-radius: 50%;
  opacity: .16;
  pointer-events: none;
  background:
    linear-gradient(90deg, transparent 49.6%, var(--qla-accent) 49.8% 50.2%, transparent 50.4%),
    linear-gradient(0deg, transparent 49.6%, var(--qla-accent) 49.8% 50.2%, transparent 50.4%),
    repeating-conic-gradient(from -2deg, color-mix(in srgb, var(--qla-accent) 45%, transparent) 0deg 1deg, transparent 1deg 30deg);
  animation: qla-clock-turn 48s linear infinite;
}

.qla-chapter[data-chapter="primer"] { --chapter-accent: #829a8b; }
.qla-chapter[data-chapter="road"] { --chapter-accent: #6f9d91; }
.qla-chapter[data-chapter="cloakwood"] { --chapter-accent: #7a8d68; }
.qla-chapter[data-chapter="opinions"] { --chapter-accent: #a58d56; }
.qla-chapter[data-chapter="hungry"] { --chapter-accent: #a7654e; }
.qla-chapter[data-chapter="hill"] { --chapter-accent: #c48a45; }
.qla-chapter[data-chapter="last-bell"] { --chapter-accent: #6e8f99; }

.qla-chapter[data-chapter="hill"] .qla-chapter__mast,
.qla-chapter[data-chapter="last-bell"] .qla-chapter__mast {
  background-image: linear-gradient(120deg, rgba(200,139,70,.08), transparent 44%);
}

.item-dossier img {
  object-fit: contain;
}

.npc-card img {
  object-fit: contain;
  object-position: center bottom;
}

.statblock .ability-grid .ability span {
  white-space: nowrap;
}

@keyframes qla-clock-turn { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .qla-hero::after { animation: none; } }
@media (max-width: 760px) { .qla-hero::after { opacity: .08; right: -12vw; width: 70vw; } }
