:root {
  --paper: #ffffff;
  --ink: #365b73;
  --muted: #55778b;
  --line: #b5deee;
  --blue: #b8e5f5;
  --pink: #e485b8;
}

/* Keep the supplied illustrations in their original blue and pink. */
.gate-art img { filter: none; }
button:focus-visible, a:focus-visible { outline-color: #b44480; }
.page-frame { border-color: var(--blue); }
.page-frame i { border-color: var(--pink); }
.identity > span { color: #b44480; }
.identity b { border-color: var(--pink); }
.header-right a { color: #a43e75; }
.gate-caption p, .scene-eyebrow, .folio, .bottle-caption small { color: #507c96; }
.gate-caption > span, .rope-prompt { color: #a43e75; }
.book-scene > h1, .lab-heading h1, .works-heading h1 { color: #a43e75; }
.spellbook {
  background: #c8eaf7;
  border-color: #8ec8e2;
  box-shadow: 0 16px 24px #dc90b817;
}
.spellbook:hover { box-shadow: 0 22px 32px #dc90b822; }
.spellbook::before { background: #e7b1ce; }
.book-page { background: #fffafd; }
.page-right { background: #f4fbff; }
.page-left { border-right-color: #e7b1ce; }
.skill-list i, .book-seal > span { color: #b44480; }
.book-name, .book-seal { color: #a43e75; }
.bottle-caption b, .quiet-button { color: #365b73; }
.quiet-button:hover { color: #a43e75; }
.brewing-ripples i { border-color: var(--pink); }
.work-pending span { color: #b44480; }
#lightbox, #lightbox::backdrop { background: #fffffffa; }
.load-error { background: #ffedf6; color: #8e3564; }
