/* Nocturne: the Vampir publication and its editor preview share these tokens. */
.reader-v2.theme-nocturne {
  --page:#161116; --surface:#21191f; --surface-high:#30232b;
  --ink:#f5edf0; --muted:#bcabb4; --accent:#f19aa9; --accent-ink:#2b101a;
  --line:#d7a7ba30; color-scheme:dark; background:var(--page);
}
.theme-nocturne .portal-heading {
  padding:32px 30px 34px; margin-bottom:24px; overflow:hidden;
  border:1px solid var(--line); border-radius:4px 32px 4px 4px;
  background:radial-gradient(ellipse at 100% 0,#702b484a,transparent 65%),linear-gradient(125deg,#251821,#191218);
}
.theme-nocturne .portal-heading::after {
  content:""; position:absolute; width:220px; height:220px; right:-125px; top:-100px;
  border:1px solid #eb9ab52b; border-radius:50%; pointer-events:none;
  box-shadow:0 0 0 22px #eb9ab508,0 0 0 44px #eb9ab506;
}
.reader-v2.theme-nocturne .portal-heading h1 { max-width:690px; font-size:clamp(33px,4vw,53px); }
.theme-nocturne .portal-heading .eyebrow { color:var(--accent); }
.theme-nocturne .vampir-official-link { display:inline-flex; align-items:center; gap:7px; margin-top:20px; color:var(--accent); font-size:11px; text-underline-offset:4px; }
.theme-nocturne .vampir-official-link .reader-icon { width:15px; height:15px; }
.theme-nocturne .portal-directory { border-color:#d7a7ba24; }
.theme-nocturne .portal-directory nav a:hover { background:#3f2331; }
.theme-nocturne .cover-art { background:linear-gradient(125deg,#251723,#54253b); }
.theme-nocturne .cover-art[data-art-kind=news] { background:linear-gradient(125deg,#33242c,#743649); }
.theme-nocturne .cover-art>b { color:#f5d5df; }
.theme-nocturne .cover-art>span:first-child,.theme-nocturne .cover-art-label { color:#ebbacb; }
.theme-nocturne .reader-empty { background:var(--surface); border-color:var(--line); }
.theme-nocturne .reader-footer { border-top-color:var(--line); }
@media(max-width:760px) {
  .theme-nocturne .portal-heading { padding:25px 20px; margin-top:20px; margin-bottom:20px; }
  .reader-v2.theme-nocturne .portal-heading h1 { font-size:36px; letter-spacing:-1.5px; }
}
