/* Retain the borders, remove the decorative divider symbols. */
.library .video-entrance[open]{display:block!important;padding:0!important;width:100vw;height:100dvh;overflow:hidden!important;background:#030916!important}
.library .video-entrance .intro-film{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:contain;background:#030916}
.library .video-entrance>.portal-skip{position:absolute!important;inset:auto auto max(22px,env(safe-area-inset-bottom)) 50%!important;transform:translateX(-50%)!important;z-index:5;margin:0!important;padding:13px 24px;min-height:48px;max-width:calc(100vw - 40px);white-space:nowrap;background:#071322db;border:1px solid #c4deef80;color:#e2f1ff;backdrop-filter:blur(10px);font:12px/1.6 Cinzel,Georgia,serif}
.library>header{position:relative!important;inset:auto!important}
@media(min-width:768px){
.library .cosmic-entrance[open]{display:grid;place-items:center;box-sizing:border-box;padding:28px 40px;overflow:auto}
.library .cosmic-entrance .wish-message{position:relative;inset:auto;width:min(1040px,100%);max-width:1040px;box-sizing:border-box;margin:auto;padding:16px 20px;flex-shrink:0}
.library .cosmic-entrance .wish-message .cosmic-signature{width:360px;height:88px;margin:8px auto 0;flex-shrink:0}
.library .cosmic-entrance .sky-book-orbit{width:620px;max-width:85vw;height:175px;transform:scale(1.3);transform-origin:center;margin:20px auto;flex-shrink:0}
.library .cosmic-entrance h2{font-size:clamp(36px,3.4vw,54px);line-height:1.2;margin:8px 0 14px}
.library .cosmic-entrance .wish-message p{font-size:23px;max-width:640px;margin:8px auto 14px}
.library .cosmic-entrance .entry-worlds{margin:14px 0}
.library .cosmic-entrance .portal-skip{font-size:13px;padding:15px 30px;margin-top:18px}
.world .mobile-book-buy{display:flex;align-items:center;gap:9px;position:fixed;right:24px;bottom:24px;z-index:65;padding:13px 20px;border:1px solid var(--accent,#c6b089);border-radius:30px;background:#121214ed;color:#f6eee2;text-decoration:none;font-size:13px;line-height:1.4;box-shadow:0 5px 24px #0006;backdrop-filter:blur(12px)}
.world.future-world .mobile-book-buy{bottom:100px}
}
@media(min-width:768px) and (max-height:740px){
.library .cosmic-entrance[open]{padding-block:16px}
.library .cosmic-entrance .wish-message .cosmic-signature{height:64px}
.library .cosmic-entrance .sky-book-orbit{height:135px;transform:scale(1.1);margin:10px auto}
.library .cosmic-entrance h2{font-size:36px}
.library .cosmic-entrance .wish-message p{font-size:20px}
}
.library .wish-entrance .entrance-sound-toggle{position:absolute;top:max(18px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right));z-index:30;display:grid;place-items:center;width:42px;height:42px;min-height:42px;padding:0;border:1px solid #c1dfed45;border-radius:50%;background:#08152266;color:#c8dfed;font:19px/1 Georgia,serif;cursor:pointer;touch-action:manipulation}
.library .wish-entrance .entrance-sound-toggle:focus-visible{outline:2px solid #b7dbea;outline-offset:4px}
.world .world-section:before,.world .world-section::after,.library .author>div:before,.library .extras .section-heading:after,.library .reader-circle>.section-heading:after{content:none!important;display:none!important}
.orbiting-cover:has(img[alt="Belladonna"]){width:75px;left:calc(50% - 37.5px);overflow:hidden;border-radius:2px}
.orbiting-cover img[alt="Belladonna"]{position:absolute;width:162.4%!important;height:149.3%!important;max-width:none!important;object-fit:fill!important;left:-31.3%;top:-24.7%;filter:none;box-shadow:none}
@media(max-width:767px),(pointer:coarse) and (max-width:1023px){
.world .entrance-skip,.night-music label,.night-music.playing label,.audio-fallback{display:none!important}
body .night-music{display:flex!important;position:relative!important;inset:auto!important;width:40px;height:40px;max-width:none;margin:16px 0 0 auto;z-index:1;padding:0;box-shadow:none;border:1px solid #d6e7ed35;background:transparent;border-radius:50%;color:var(--accent,#c2ddeb);flex-shrink:0}
body.library>.night-music{margin:8px 5% 8px auto}
body .night-music button{width:40px;height:40px;min-height:40px;padding:0;font-size:0;line-height:1;display:grid;place-items:center;border-radius:50%}
body .night-music button::before{content:'♫';font:18px/1 Georgia,serif;opacity:.85}
body .night-music button[aria-pressed="true"]::before{content:'Ⅱ';font-size:15px}
body .night-music:focus-within{outline:2px solid currentColor;outline-offset:3px}
.world .map-paper{min-width:1050px}.world .map-scroll{max-height:60vh;touch-action:pan-x pan-y}
}
@media(prefers-reduced-motion:reduce){.orbiting-cover:has(img[alt="Belladonna"]){left:auto;width:40px;height:54px}}
/* Covers and copy occupy separate rows on phones, even with enlarged text. */
@media(max-width:767px){
.world .narrative-deck{grid-template-columns:minmax(0,1fr)}
.world .narrative-deck .deck-nav{height:auto;max-height:none;overflow:visible}
.world .narrative-deck>.deck-copy{order:0;min-width:0}
.world .narrative-deck>figure{order:1;min-width:0}
.theme-time #fragmentos{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
.theme-time #fragmentos>.deck-copy{order:0;min-width:0}
.theme-time #fragmentos>figure{order:1;min-width:0;margin:0}
.theme-time #fragmentos .deck-nav{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:36px;padding-top:16px;row-gap:30px;margin-bottom:18px}
.theme-time #fragmentos .deck-copy>p{margin-bottom:0}
.theme-time #fragmentos .deck-nav button{min-width:0;overflow-wrap:anywhere}
.theme-blood .hero-content{min-width:0;max-width:100%}
.theme-blood .hero-content h1{font-size:clamp(32px,10.5vw,64px);line-height:1.18;letter-spacing:-.035em;max-width:100%;white-space:nowrap;margin-inline:0}
.library .portal-grid{grid-template-columns:1fr}
.library .world-portal,.library .world-portal:first-child{display:flex;flex-direction:column;align-items:stretch;gap:24px;min-height:0;height:auto;padding:26px 24px 30px}
.library .world-portal .portal-number{position:static;inset:auto;display:block;font-size:10px;line-height:1.7}
.library .world-portal>img,.library .world-portal:first-child>img{position:relative;inset:auto;width:140px;height:215px;max-width:70%;margin:0 auto;align-self:center;object-fit:contain;transform:none;flex-shrink:0}
.library .world-portal>.izyncor-cover{position:relative!important;inset:auto!important;width:140px!important;height:215px!important;margin:0 auto;align-self:center;transform:none!important;flex-shrink:0}
.library .world-portal .portal-copy,.library .world-portal:first-child .portal-copy{position:relative;max-width:100%;width:100%;margin:0;min-width:0}
.library .world-portal .portal-copy h3,.library .world-portal:first-child .portal-copy h3{font-size:clamp(28px,8vw,37px);line-height:1.2;margin:12px 0;overflow-wrap:break-word}
.library .portal-copy .eyebrow{font-size:10px;line-height:1.7;letter-spacing:.12em}
.library .portal-copy p{margin:0;line-height:1.6}
}
.atlas-toolbar{flex-wrap:wrap;align-items:end}.atlas-search{flex:1 1 250px}.atlas-search label,.atlas-filter{font-size:11px;line-height:1.5;color:#d5c5a7}.atlas-search>div{display:flex;margin-top:8px;gap:8px}.atlas-search input,.atlas-filter select{box-sizing:border-box;background:#11161c;color:#f2e8d7;border:1px solid #a58e6255;padding:12px;font:14px/1.5 Georgia,serif;min-height:44px;min-width:0;border-radius:0}.atlas-search input{width:100%}.atlas-filter{display:grid;gap:8px}.atlas-status{font-size:11px;color:#bba786;margin:16px 0}.map-point[hidden]{display:none!important}.map-point:hover,.map-point:focus-visible{z-index:5}.map-point.visited b{background:#23362c}.landscape-image.loading{opacity:0}.landscape-image{transition:transform .35s ease-out,opacity .3s}.landscape-travel{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:20px;border-top:1px solid #ffffff25;padding-top:15px}.landscape-travel button{background:transparent;color:#d0b78b;border:1px solid #bda27855;padding:12px;font:12px/1.5 Georgia,serif;cursor:pointer;min-height:44px}@media(max-width:767px){.atlas-toolbar{gap:18px}.atlas-search{flex-basis:100%}.atlas-filter{flex:1}.atlas-toolbar .map-zoom{min-height:44px}.landscape-description{padding:18px 22px 28px}.landscape-travel button{flex:1}}

/* The destination invitation appears only after the film. */
.library .video-entrance>.portal-skip[hidden]{display:none!important}
.library .video-entrance>.portal-skip{inset:50% auto auto 50%!important;transform:translate(-50%,-50%)!important;font-size:clamp(23px,3.5vw,46px)!important;line-height:1.35;padding:28px 42px!important;white-space:normal;text-align:center;width:max-content;max-width:calc(100vw - 48px);border-radius:4px;box-shadow:0 0 80px #9bcde02b;background:#061222ed;animation:destination-reveal .8s ease both}
.library .video-entrance.intro-ended .intro-film{filter:brightness(.35);transition:filter .8s}
.library .video-entrance>.intro-skip{position:absolute;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:6;min-height:44px;padding:10px 12px;border:0;background:#06122280;color:#d9e8ee;font:12px/1.5 Georgia,serif;cursor:pointer;border-radius:4px}
.library .video-entrance.intro-ended>.intro-skip{display:none}
@keyframes destination-reveal{from{opacity:0;filter:blur(5px)}to{opacity:1;filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.library .video-entrance>.portal-skip{animation:none}}

/* Larger author signature in the homepage navigation. */
.library>header>.brand{flex-shrink:0;display:block}
.library>header>.brand img{display:block;width:310px!important;height:96px!important;max-width:100%;object-fit:contain}
@media(min-width:651px) and (max-width:1000px){.library>header>.brand img{width:240px!important;height:75px!important}.library>header{gap:20px}.library>header nav{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:650px){.library>header>.brand img{width:220px!important;height:68px!important;max-width:80vw}}

/* Map locations display their names and descriptions. */
.landscape-dialog .landscape-window {
  min-height: 0 !important;
  height: auto !important;
  aspect-ratio: auto !important;
  padding: 28px 28px 0;
  background: none;
}
.landscape-dialog .landscape-number {
  position: static;
  display: block;
}
.landscape-dialog {
  width: min(620px, calc(100vw - 32px));
}
