/* Author-selected appearance belongs to one poem, with readable foreground colours. */
body.poem-custom-background:before{background:var(--poem-page-bg)!important;opacity:1!important;animation:none!important}
.poem-custom-background .publication-body.poem-body{color:var(--poem-page-ink)}
.poem-custom-background :is(.publication-breadcrumb,.publication-breadcrumb span,.annotation-rail-hint,.related-publications>h2){color:var(--poem-page-muted)}
.poem-custom-background .publication-breadcrumb a:hover{color:var(--poem-page-ink)}
.poem-custom-background .publication-tools :is(.reader-menu-toggle,.author-work-tools>summary){color:var(--poem-page-ink);border-color:color-mix(in srgb,var(--poem-page-ink) 28%,transparent);background:color-mix(in srgb,var(--poem-page-ink) 6%,var(--poem-page-bg))}
.poem-custom-background .publication-body .annotated-fragment{color:inherit;background:transparent;text-decoration-color:color-mix(in srgb,var(--poem-page-ink) 24%,transparent)}
.poem-custom-background .publication-body .annotated-fragment:is(:hover,.annotation-active){background:color-mix(in srgb,var(--poem-page-ink) 3%,transparent);text-decoration-color:color-mix(in srgb,var(--poem-page-ink) 55%,transparent)}
.poem-custom-background .publication-body .annotated-fragment:focus-visible{outline-color:var(--poem-page-ink)}
.poem-custom-background .literary-footer :is(.footer-wordmark,.footer-wordmark>span:first-child,.footer-resource,.footer-resource strong,.footer-resource small,.footer-copyright,.footer-editor,.footer-section-nav){color:var(--poem-page-muted)}
.poem-custom-background .literary-footer a:hover{color:var(--poem-page-ink)}
.poem-custom-background .literary-footer .footer-inner:before{background:color-mix(in srgb,var(--poem-page-ink) 22%,transparent)}
.poem-background-surface{--poem-particle:var(--poem-page-ink,#c8b7e4);overflow:hidden;pointer-events:none}
.poem-background-page{position:fixed;inset:0;z-index:-1}
.poem-background-light,.poem-background-particles{position:absolute;inset:0;pointer-events:none}
.poem-background-light{display:none}
.poem-background-particles{mask-image:linear-gradient(90deg,#000,transparent 37%,transparent 63%,#000)}
.poem-background-particles i{position:absolute;left:var(--x);top:var(--y);display:block;width:3px;height:3px;border-radius:50%;background:var(--poem-particle);opacity:.35;animation-duration:var(--duration);animation-delay:var(--delay);animation-iteration-count:infinite;animation-timing-function:ease-in-out;will-change:transform}
.poem-background-surface:is([data-animation=inherit],[data-animation=off]) :is(.poem-background-particles,.poem-background-light){display:none}
.poem-background-surface[data-animation=dust] i{animation-name:poem-dust;box-shadow:0 0 8px currentColor;opacity:.22}
.poem-background-surface[data-animation=stars] i{width:2px;height:2px;box-shadow:0 0 6px var(--poem-particle);animation-name:poem-stars;animation-duration:calc(var(--duration) * .35)}
.poem-background-surface[data-animation=stars] i:nth-child(4n){width:4px;height:4px}
.poem-background-surface[data-animation=fireflies] i{width:4px;height:4px;background:#c8c982;box-shadow:0 0 12px 3px #c2cf883b;animation-name:poem-fireflies;animation-duration:calc(var(--duration) * .65)}
.poem-background-surface[data-animation=rain] i{top:-15%;width:1px;height:65px;border-radius:0;background:linear-gradient(transparent,color-mix(in srgb,var(--poem-particle) 60%,transparent),transparent);animation-name:poem-rain;animation-duration:calc(var(--duration) * .17);animation-timing-function:linear;opacity:.4}
.poem-background-surface[data-animation=snow] i{top:-15%;width:5px;height:5px;animation-name:poem-snow;animation-timing-function:linear;opacity:.55}
.poem-background-surface:is([data-animation=glow],[data-animation=aurora],[data-animation=drift]) .poem-background-particles{display:none}
.poem-background-surface:is([data-animation=glow],[data-animation=aurora],[data-animation=drift]) .poem-background-light{display:block;inset:-15%;background:radial-gradient(ellipse at 15% 20%,#a797d633,transparent 48%),radial-gradient(ellipse at 90% 70%,#798dc12b,transparent 48%);animation:poem-glow 12s ease-in-out infinite alternate;will-change:transform,opacity}
.poem-background-surface[data-animation=aurora] .poem-background-light{background:linear-gradient(120deg,transparent 15%,#68af9842 36%,#7d75ba47 54%,#a583b72b 70%,transparent 88%);filter:blur(28px);animation:poem-aurora 22s ease-in-out infinite alternate}
.poem-background-surface[data-animation=drift] .poem-background-light{animation:poem-light-drift 26s ease-in-out infinite alternate}
.poem-background-surface[data-paused=true] *{animation-play-state:paused!important}
@keyframes poem-dust{0%,100%{transform:translate3d(0,10px,0) scale(var(--size));opacity:.12}50%{transform:translate3d(18px,-28px,0) scale(var(--size));opacity:.42}}
@keyframes poem-stars{0%,100%{opacity:.12;transform:scale(.7)}50%{opacity:.7;transform:scale(1.2)}}
@keyframes poem-fireflies{0%,100%{transform:translate3d(-12px,8px,0);opacity:.1}35%{transform:translate3d(18px,-22px,0);opacity:.7}70%{transform:translate3d(5px,20px,0);opacity:.35}}
@keyframes poem-rain{from{transform:translate3d(-25px,-15vh,0)}to{transform:translate3d(35px,125vh,0)}}
@keyframes poem-snow{0%{transform:translate3d(-12px,-10vh,0) scale(var(--size))}50%{transform:translate3d(15px,55vh,0) scale(var(--size))}100%{transform:translate3d(-4px,125vh,0) scale(var(--size))}}
@keyframes poem-glow{from{opacity:.3}to{opacity:1}}
@keyframes poem-aurora{from{transform:translate3d(-8%,-5%,0) rotate(-6deg);opacity:.45}to{transform:translate3d(8%,6%,0) rotate(7deg);opacity:.9}}
@keyframes poem-light-drift{from{transform:translate3d(-5%,-5%,0) scale(1.05)}to{transform:translate3d(7%,4%,0) scale(1.2)}}
/* The same scene is used by the published reader and the author's preview. */
.poem-appearance-dialog{box-sizing:border-box;width:min(900px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid #bda0d83d;border-radius:24px;background:#120f1b;color:#eee6f5;box-shadow:0 30px 110px #0009;overflow:auto;overscroll-behavior:contain;font:16px/1.6 Inter,'Segoe UI',sans-serif}
.poem-appearance-dialog::backdrop{background:#05030bb8;backdrop-filter:blur(6px)}
.poem-appearance-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 28px;border-bottom:1px solid #c5a6e424}
.poem-appearance-kicker{font-size:16px;color:#ad95c3;letter-spacing:.045em}.poem-appearance-dialog h2{font:400 30px/1.25 Georgia,serif;margin:7px 0}.poem-appearance-dialog header p{margin:0;color:#b5a4c5;overflow-wrap:anywhere}
.poem-appearance-dialog header>button{display:grid;place-items:center;width:44px;height:44px;flex:none;border:1px solid #c5a6e42b;border-radius:12px;color:#dfcee9;font-size:28px}
.poem-appearance-body{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:28px;padding:26px 28px}
.poem-appearance-settings{min-width:0}.poem-appearance-settings fieldset{margin:0 0 24px;padding:0;border:0}.poem-appearance-settings legend{padding:0;margin-bottom:12px;color:#e9d9f4;font-size:18px}.poem-inherit-color{display:flex;align-items:center;gap:10px;cursor:pointer;color:#beadce}.poem-inherit-color input{width:19px;height:19px;accent-color:#c3a1e4;flex:none}
.poem-color-fields{display:grid;grid-template-columns:1fr 1.2fr;gap:14px;margin-top:14px}.poem-color-fields label{display:grid;gap:7px;font-size:16px;color:#b6a3c8}.poem-color-fields input{width:100%;min-width:0;height:48px;padding:8px 10px;border:1px solid #c4a6df38;border-radius:11px;background:#090811;color:#f1e5fa;font:inherit;font-size:16px;line-height:1.4}.poem-color-fields input[type=color]{padding:5px;cursor:pointer}.poem-color-fields input:disabled{opacity:.4;cursor:default}
.poem-animation-presets{display:grid;grid-template-columns:1fr 1fr;gap:9px}.poem-animation-presets button{display:flex;align-items:center;gap:10px;min-height:50px;padding:10px 12px;border:1px solid #c5a6e427;border-radius:12px;background:#c5a6e404;text-align:left;color:#bba6ce;font:inherit;line-height:1.4;transition:color .18s,border-color .18s,background .18s}.poem-animation-presets button[aria-pressed=true]{color:#f2e6fc;border-color:#c5a3ed88;background:#bb8ce516;box-shadow:inset 0 1px 0 #ffffff0c}.poem-animation-presets button:hover{border-color:#c5a3ed70;color:#eee0f8}
.poem-preset-symbol{display:block;flex:none;width:20px;height:20px;border-radius:50%;border:1px solid #c5a3ed45;background:radial-gradient(circle at 35% 35%,#d4b7edbb 1px,transparent 2px),radial-gradient(circle at 70% 65%,#d4b7ed99 1px,transparent 2px)}.poem-preset-symbol[data-preset=off]{background:none}.poem-preset-symbol[data-preset=inherit]{background:linear-gradient(130deg,#c5a3ed40,transparent)}.poem-preset-symbol[data-preset=aurora]{background:linear-gradient(130deg,#729d91,#8671ae)}.poem-preset-symbol[data-preset=rain]{background:repeating-linear-gradient(100deg,transparent 0 4px,#c5a3ed90 5px 6px)}.poem-preset-symbol:is([data-preset=glow],[data-preset=drift]){background:radial-gradient(circle,#d5b7e4a8,transparent 70%)}
.poem-appearance-reset{padding:8px 0;min-height:44px;font:inherit;color:#b7a1ca;text-align:left;text-decoration:underline;text-decoration-color:#b7a1ca55;text-underline-offset:5px}
.poem-appearance-preview-wrap{min-width:0;position:sticky;top:20px}.poem-appearance-preview{position:relative;min-height:300px;padding:28px 24px;border:1px solid #ba9bd544;border-radius:18px;background:var(--poem-page-bg);color:var(--poem-page-ink);isolation:isolate;pointer-events:auto}.poem-appearance-preview .poem-background-particles{mask-image:none;opacity:.6}.poem-appearance-preview-copy{position:relative;z-index:1}.poem-appearance-preview-copy>span{font-size:16px;letter-spacing:.05em;opacity:.75}.poem-appearance-preview h3{font:400 26px/1.25 Georgia,serif;margin:16px 0 24px;color:inherit}.poem-appearance-preview p{font:400 19px/1.8 Georgia,serif;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;color:inherit}.poem-appearance-hint{font-size:16px;line-height:1.65;color:#b5a3c6;margin:14px 0 0}
.poem-appearance-dialog footer{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px 18px;padding:20px 28px;border-top:1px solid #c5a6e424}.poem-appearance-dialog footer p{flex:1 1 230px;margin:0;font-size:16px;color:#c2adcf}.poem-appearance-dialog #poem-appearance-reload{min-height:44px;color:#dbc3ed;text-decoration:underline;text-underline-offset:4px}.poem-appearance-dialog :is(button,input):focus-visible{outline:2px solid #c9a9ed;outline-offset:3px}.poem-appearance-dialog button:disabled{opacity:.45;cursor:wait}.poem-appearance-dialog [hidden]{display:none!important}
.poem-appearance-launch{margin-top:24px;padding:22px;border:1px solid #c4a2df2c;border-radius:16px;background:#c4a2df05}.poem-appearance-launch h3{font-size:20px;margin:0 0 8px}.poem-appearance-launch p{font-size:16px;color:#ad9dbb;margin:0 0 16px;line-height:1.6}
@media(max-width:680px){.poem-appearance-dialog header{padding:20px}.poem-appearance-body{grid-template-columns:minmax(0,1fr);gap:24px;padding:20px}.poem-appearance-preview-wrap{position:static;grid-row:1}.poem-appearance-preview{min-height:220px}.poem-appearance-dialog footer{padding:18px 20px max(18px,env(safe-area-inset-bottom))}.poem-appearance-dialog footer .button{width:100%}.poem-animation-presets button{min-height:52px}.poem-appearance-dialog h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){.poem-background-surface *{animation:none!important;will-change:auto!important}.poem-animation-presets button{transition:none}}

.poem-custom-background .reader-actions>.button,.poem-custom-background #post-votes button{color:var(--poem-page-ink);border-color:color-mix(in srgb,var(--poem-page-ink) 24%,transparent)}

.poem-animation-presets button>span:last-child{min-width:0;overflow-wrap:anywhere}
@media(max-width:380px){.poem-animation-presets{grid-template-columns:minmax(0,1fr)}}
body.reader-page.poem-custom-background .publication-body .annotated-fragment[data-annotation][data-provenance]{color:inherit;background:transparent;text-decoration-color:color-mix(in srgb,var(--poem-page-ink) 24%,transparent)}
body.reader-page.poem-custom-background .publication-body .annotated-fragment[data-annotation][data-provenance]:is(:hover,.annotation-active){background:color-mix(in srgb,var(--poem-page-ink) 3%,transparent);text-decoration-color:color-mix(in srgb,var(--poem-page-ink) 55%,transparent)}
body.reader-page.poem-custom-background .publication-body .annotated-fragment[data-annotation][data-provenance]:focus-visible{outline-color:var(--poem-page-ink)}

/* Reading panels follow this poem's page palette, including the shared classic background. */
body.poem-page:is(.poem-custom-background,.classic-reading){--reader-surface-bg:var(--poem-page-bg,var(--classic-page-bg));--reader-surface-ink:var(--poem-page-ink,var(--classic-page-ink,#f3eff8));--reader-surface-line:color-mix(in srgb,var(--reader-surface-ink) 22%,transparent)}
body.poem-page:is(.poem-custom-background,.classic-reading) .publication-layout>.illustrated-about,
body.poem-page:is(.poem-custom-background,.classic-reading) .related-publications>div>a.related-work{background:var(--reader-surface-bg);color:var(--reader-surface-ink);border-color:var(--reader-surface-line);box-shadow:inset 0 1px 0 color-mix(in srgb,var(--reader-surface-ink) 4%,transparent)}
body.poem-page:is(.poem-custom-background,.classic-reading) .illustrated-about{--about-accent:var(--reader-surface-ink)}
body.poem-page:is(.poem-custom-background,.classic-reading) .illustrated-about :is(.about-heading h2,.about-topic p,.about-topic blockquote,.about-details>summary,.about-detail-body.work-about-content,.about-topics button),
body.poem-page:is(.poem-custom-background,.classic-reading) .related-publications .related-work :is(h3,p,time){color:var(--reader-surface-ink)}
body.poem-page:is(.poem-custom-background,.classic-reading) .illustrated-about :is(.about-heading,.about-detail-body.work-about-content){border-color:var(--reader-surface-line)}
body.poem-page:is(.poem-custom-background,.classic-reading) .related-publications>div>a.related-work:is(:hover,:focus-visible){border-color:color-mix(in srgb,var(--reader-surface-ink) 55%,transparent)}

/* Page ink must win over the reader's legacy pale text, outside the separately coloured banner. */
body.reader-page.poem-page.poem-custom-background .publication-content .publication-body.poem-body,
body.reader-page.poem-page.poem-custom-background .publication-content .poem-stanza{color:var(--poem-page-ink)}
body.reader-page.poem-page.poem-custom-background .work-hero .work-details :is(.work-meta,.work-author,.work-author span,time,.read-count-toggle,.report-link-icon,.ui-icon,.work-note-preview,.work-excerpt,.work-excerpt p,.work-note-more){color:var(--poem-page-ink)}
body.reader-page.poem-page.poem-custom-background .work-hero .work-details :is(.work-excerpt,.work-excerpt-group,.work-note-more){border-color:color-mix(in srgb,var(--poem-page-ink) 35%,transparent)}
body.reader-page.poem-page.poem-custom-background .original-source,
body.reader-page.poem-page.poem-custom-background .original-source a{color:var(--poem-page-ink)}
body.reader-page.poem-page.poem-custom-background .work-hero.no-cover .work-hero-copy h1{color:var(--poem-page-ink)}
@media(max-width:600px){
 body.reader-page.poem-page.poem-custom-background .hybrid-hero .work-title-block :is(h1,.work-format){color:var(--poem-page-ink)}
}
