/* Cool rainbow pastels: blue, turquoise and lilac. Shared across all pages. */
:root {
  --ink: #292448;
  --night: #ded1ff;
  --paper: #e1f4ff;
  --mint: #bff3ee;
  --line: #29244830;
  --muted: #55516d;
  --lilac: #ded1ff;
  --sky: #d6efff;
  --periwinkle: #dce2ff;
  --aqua: #cff4f7;
  --ice: #c8eaff;
  --accent: #59359a;
}
body { background: var(--lilac); color: var(--ink); }
body::before {
  content: ''; display: block; height: 6px;
  background: linear-gradient(90deg, #b4ede7 0% 20%, #b5e8f7 20% 40%, #bcd7ff 40% 60%, #c8c3ff 60% 80%, #dcbfff 80% 100%);
}
.header { border-color: var(--line); }
.artist-name { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.artist-name:hover { color: var(--accent); }
.logo, .hero h1 em { color: var(--accent); }
.header nav a::after { background: var(--accent); }
.languages summary { border-color: var(--line); }
.languages > div { background: #f5f0ff; box-shadow: 0 12px 30px #59359a20; }
.languages a:hover, .languages a[aria-current] { background: var(--mint); }
.hero, .reader-hero { background: var(--lilac); }
.eyebrow, .world-label, .hero-bottom, .intro { color: #494064; }
.stars {
  opacity: .4;
  background-image: radial-gradient(circle at 10% 14%, #59359a 1px, transparent 1.5px), radial-gradient(circle at 52% 60%, #59359a 1px, transparent 1.5px), radial-gradient(circle at 84% 24%, #59359a 1px, transparent 1.5px);
}
.orbit { border-color: #7457ad40; }
.tiny-star { color: var(--accent); }
.planet { background: var(--aqua); border-color: #8bb9d455; opacity: .9; }
.creature { filter: drop-shadow(0 24px 25px #7259a026); }
.mint { background: var(--mint); color: #24464b; }
.mint:hover { background: #a4e9e3; }
.dark { color: #f8f5ff; }
.tale { background: var(--sky); }
.triad > div:nth-child(1) { background: #bcd7ff80; }
.triad > div:nth-child(2) { background: #ded1ff90; }
.triad > div:nth-child(3) { background: #bff3eeb0; }
.triad > div:first-child { padding-left: 20px; }
.symbol-0 { color: #365c9b; }
.symbol-1 { color: #6542a7; }
.symbol-2 { color: #246b72; }
.philosophy > span:first-child, .philosophy .end-mark { color: #6551a3; }
.game { background: var(--mint); color: var(--ink); }
.game-copy > p, .game-copy small, .game-preview figcaption { color: #344c59; }
.game .button { background: var(--lilac); color: var(--ink); }
.game .button:hover { background: #ceb9ff; }
.game-preview > a { background: #ffffff55; border-color: #527c6b40; }
.play-circle { background: var(--ice); }
.collection { background: var(--periwinkle); }
.collection-intro { max-width: 350px; font-size: 15px; }
.collection-motto { display: block; margin-top: 15px; font-family: var(--serif); font-style: italic; font-size: 30px; color: var(--accent); }
.edition-stage { background: var(--ice); }
.toy-stage { background: var(--lilac); }
.print { background: #fff; box-shadow: 13px 21px 24px #735c9a23; }
.status { background: #ffffff4d; }
.toy-orbit { border-color: #7650b966; }
.toy-word { color: #ffffffa6; }
.about { background: var(--aqua); }
.about-art { background: var(--sky); }
.about-ring { border-color: #527baf55; }
footer { background: var(--lilac); color: var(--ink); }
.footer-bottom { flex-wrap: wrap; gap: 16px 24px; border-color: var(--line); color: #55516d; }
.legal-links { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 16px 28px; font-size: 14px; }
.legal-links a { text-decoration: underline; text-underline-offset: 4px; }
.legal-hero { min-height: 0; padding-bottom: 50px; }
.legal-hero h1 { font-size: clamp(34px, 6vw, 72px); overflow-wrap: anywhere; }
.legal-hero .back { margin-bottom: 32px; }
.legal-hero > p { margin-top: 20px; font-size: 14px; }
.legal-body { max-width: none; }
.legal-body > * { max-width: 820px; margin-inline: auto; }
.legal-body section { padding-top: 32px; }
.legal-body h2 { font-family: var(--sans); font-size: 26px; line-height: 1.3; font-style: normal; }
.legal-body section p { font-family: var(--sans); font-size: 17px; line-height: 1.75; overflow-wrap: anywhere; }
.legal-body section p:first-of-type:first-letter { float: none; font-size: inherit; line-height: inherit; margin: 0; }
.legal-body a { text-decoration: underline; text-underline-offset: 3px; }
.legal-review-note { background: #ded1ff; border-left: 4px solid #6651a3; padding: 20px; font-size: 15px; line-height: 1.6; }
.reader-body { background: var(--sky); }
.reader-note { border-left-color: #6651a3; }
.chapter-end { color: #6851a7; }
.reader-body section:first-of-type .chapter-number { color: #246b72; }
.reader-body section:last-of-type .chapter-number { color: #6542a7; }
::selection { background: #c8c3ff; color: #292448; }
@media(max-width:700px) {
  .triad > div:first-child { padding-left: 10px; }
  .collection-intro { max-width: none; font-size: 14px; }
}
