/* MGH / ILLUSTRATED CHAPTERS — original character pixels, editable typography. */
#heroTitleLink{color:inherit;text-decoration:none}#heroTitleLink:hover{filter:brightness(1.15)}
.hero-dots{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);z-index:8;display:flex;align-items:center;gap:2px}
.hero-dots button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;background:none;color:#fff;cursor:pointer}
.hero-dots button span{width:7px;height:7px;border-radius:50%;border:1px solid #fff;background:transparent;opacity:.6;transition:opacity .2s,scale .2s}
.hero-dots button[aria-current=true] span{background:#fff;opacity:1;scale:1.15}.hero-dots button:focus-visible{outline:2px solid #fff;outline-offset:2px}.hero-dots .hero-pause{font-size:12px}
.hero[hidden]{display:none}
/* Remove the unrelated gold ribbon, including its overlay on character artwork. */
.mgh-page-art::before{display:none}
.page-heading:has(.character-scene-art){min-height:280px;padding-right:53%;background:none}
.page-heading .character-scene-art,#view-characters .mgh-page-art.character-scene-art{inset:0 -2% 0 auto;top:0;right:-2%;width:64%;height:100%;background:none;mask-image:linear-gradient(90deg,transparent 0%,#000 36%,#000 92%,transparent 100%);opacity:1}
.character-scene-art img{width:100%;height:100%;object-fit:cover;object-position:55% 25%;display:block}
#view-characters .mgh-page-art.character-scene-art>img{display:block}
#view-bgm .character-scene-art img{object-position:40% 23%}#view-novels .character-scene-art img{object-position:55% 24%}
.page-heading:has(.character-scene-art)>:not(.mgh-page-art){position:relative;z-index:2}
/* The planet and space are separate painted 2D layers, not 3D primitives. */
.orbit-portal{background:#070e1c;perspective:1000px;aspect-ratio:1.3}
.space-backdrop{position:absolute;inset:-8%;background:url('/assets/redesign/memory-cosmos.webp') center/cover;transform:translate(calc(var(--orbit-x,0px) * -.45),calc(var(--orbit-y,0px) * -.45));transition:transform .4s}
.orbital-system{transform:translate(var(--orbit-x,0),var(--orbit-y,0)) rotateX(3deg);transform-style:preserve-3d}
.planet-illustration{position:absolute;display:block;width:83%;aspect-ratio:1;left:12%;top:-9%;transition:transform .75s cubic-bezier(.2,.7,.25,1)}
.planet-illustration .arkesia-planet{position:static;width:100%;height:100%;filter:drop-shadow(0 0 22px #7abbea44);animation:painted-orbit 65s ease-in-out infinite alternate;animation-play-state:paused}
.space-foreground{position:absolute;inset:0;background:url('/assets/redesign/memory-cosmos.webp') 10% 80%/180% auto;opacity:.3;mask-image:linear-gradient(24deg,#000,transparent 43%);transform:translateZ(40px);pointer-events:none}
.in-viewport .arkesia-planet{animation-play-state:running}.motion-paused .arkesia-planet{animation-play-state:paused}
@keyframes painted-orbit{from{transform:rotate(-8deg)}to{transform:rotate(8deg)}}
.orbit-portal.entering .planet-illustration{transform:scale(3.5)}.orbit-portal.entering .arkesia-planet{filter:brightness(1.15);transform:none}
/* Music key visual is Lili's edited ultimate scene. Track controls stay independent. */
#homeBgmPanel{position:relative;isolation:isolate;min-height:430px;padding:54px 45px;display:flex;align-items:flex-end;overflow:hidden;background:#131526;border:1px solid #3d344b}
.home-bgm-art{position:absolute;z-index:-2;inset:0 0 0 auto;width:70%;height:100%;object-fit:cover;object-position:45% 26%}
#homeBgmPanel::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#111829 2%,#111829e8 27%,#11182905 75%),linear-gradient(0deg,#0b1221bb,transparent 65%);pointer-events:none}
#homeBgmPanel::before{display:none}#homeBgmPanel .home-bgm-disc{display:none}#homeBgmPanel .home-bgm-copy{max-width:47%;position:relative}#homeBgmPanel .home-bgm-count{margin-left:auto;align-self:flex-start;position:relative}#homeBgmPanel .home-bgm-copy h3{font-size:30px;line-height:1.4;color:#fff}#homeBgmPanel .home-bgm-copy p{color:#c4c9db}#homeBgmPanel .home-bgm-actions{flex-wrap:wrap}
/* Work entrance is not a playable chat until the administrator publishes a URL. */
.work-preview-link{display:grid;grid-template-columns:180px 1fr 40px;align-items:center;gap:30px;color:#edf2ff;text-decoration:none;background:#111d31;border-block:1px solid #39465e;margin-bottom:30px;overflow:hidden;transition:background .25s}
.work-preview-link:hover{background:#21314a}.work-preview-link img{width:180px;height:145px;object-fit:cover;object-position:center 35%}.work-preview-link span{display:grid;gap:8px}.work-preview-link small{font-size:10px;letter-spacing:.16em;color:#e9b7cc}.work-preview-link b{font:700 26px var(--font-display)}.work-preview-link em{font:400 13px var(--font-ui);color:#b6c6dc}.work-preview-link i{font:400 26px var(--font-ui)}
.work-intro{background:#0b1323;overflow:hidden}.work-cover{position:relative;isolation:isolate;min-height:670px;display:flex;align-items:center;background:#070d19}.work-cover-art{position:absolute;inset:0 0 0 auto;width:77%;height:100%;object-fit:cover;object-position:center 35%;z-index:-2}.work-cover::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#080f1e 2%,#080f1eeb 18%,transparent 79%),linear-gradient(0deg,#0b1323,transparent 45%);z-index:-1}.work-cover-copy{padding-block:35px}.work-back{display:block;font-size:12px;color:#b6c6db;margin-bottom:45px;text-decoration:none}.work-cover .eyebrow{display:block}.work-logo{display:block;width:450px;max-width:45%;height:auto;margin:25px 0 5px}.work-cover h1{font:700 clamp(30px,4vw,50px)/1.25 var(--font-display);margin:12px 0;color:#fff}.work-cover p{font-size:18px;color:#e1e9f6;max-width:45%}.work-release{display:inline-block;border:1px solid #bcc7db66;color:#d6dfef;background:#101b2b99;padding:9px 14px;font-size:12px;letter-spacing:.05em}.work-scroll{display:block;color:#adbbd0;text-decoration:none;font-size:11px;margin-top:45px}
.work-opening{padding-block:90px 50px;text-align:center;max-width:850px}.work-opening h2,.work-section-title h2{font:700 clamp(23px,3vw,36px)/1.5 var(--font-display);margin:16px 0 25px;color:#f1f4fa}.work-opening>p{color:#becbdf;font-size:16px;line-height:2;white-space:pre-line}.work-genres{display:flex;justify-content:center;gap:25px;color:#e8b9c9;font-size:11px;margin-top:35px}
.work-features{padding-block:30px 80px}.work-feature{display:grid;grid-template-columns:1.35fr 1fr;gap:65px;align-items:center;margin:45px 0 80px}.work-feature figure{margin:0;overflow:hidden;border:1px solid #35445d}.work-feature img{width:100%;height:auto;display:block;aspect-ratio:4/3;object-fit:contain;background:#0a111f;transition:scale .7s}.work-feature:hover img{scale:1.018}.work-feature.is-reversed{grid-template-columns:1fr 1.35fr}.work-feature.is-reversed figure{order:2}.work-feature h2{font:700 32px/1.45 var(--font-display);color:#f2f5fb;margin:18px 0}.work-feature p{font-size:15px;line-height:2;color:#bac8dd;white-space:pre-line}
.work-paths{padding:65px 0 85px;background:linear-gradient(#11203bdd,#11192bf2),url('/assets/redesign/memory-cosmos.webp') center/cover}.work-section-title{text-align:center}.work-mode-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#52627c44;border:1px solid #52627c44;margin-top:45px}.work-mode-grid article{padding:28px;background:#0e192d}.work-mode-grid article:first-child{grid-row:span 2;background:#1a2945;display:flex;flex-direction:column;justify-content:center}.work-mode-grid small{color:#e2acbf;font-size:11px}.work-mode-grid h3{font:700 24px var(--font-display);color:#fff;margin:18px 0 10px}.work-mode-grid p{color:#aebed6;font-size:13px;line-height:1.8;margin:0}
.work-webtoon{max-width:960px;margin:75px auto}.work-webtoon img{display:block;width:100%;height:auto}.work-end{padding-block:80px 100px;text-align:center;background:none;border:0}.work-end h2{color:#fff;font:700 32px/1.5 var(--font-display);margin:20px 0 32px}.work-end .button{margin:8px}.work-missing{padding:100px 0}
/* Landscape source images and videos should not be squeezed into portrait cards. */
.character-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.carousel{grid-auto-columns:calc((100% - 48px)/3)}
.character-card-media-wrap{clip-path:none;aspect-ratio:4/3;background:#0d182b}
.character-card .character-card-media-wrap .card-media.character{aspect-ratio:inherit;width:100%;height:100%;min-height:0}
.character-card-media-wrap.is-square{aspect-ratio:1/1}
.character-card-media-wrap.is-landscape{aspect-ratio:4/3}
.character-card-media-wrap :is(img,video){width:100%;height:100%}
.memory-card-frame::after{display:none}.memory-card-media{aspect-ratio:4/3}.memory-card-media :is(img,video){object-fit:contain!important}.memory-card-copy{position:static;padding:18px 15px;background:#122137}.memory-card-copy h2{font-size:23px;margin:4px 0}.memory-card-frame{padding:0}
.character-memory-detail,.character-memory-detail.record-open{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.character-memory-detail.record-open>.character-memory-card-column{padding:30px 22px}.memory-character-card-detail{max-width:none}
.companion-card-stage{height:auto;aspect-ratio:4/3;max-width:640px;width:100%}.companion-reveal-card{width:100%;height:100%;aspect-ratio:4/3}.companion-card-front .memory-card-frame{padding:0}.companion-card-front .memory-card-media{height:100%;aspect-ratio:4/3}.companion-card-front .memory-card-media :is(img,video){object-fit:contain}.companion-card-front .memory-card-copy{display:none}.companion-result-copy b{display:block}.companion-experience{background:#101b2f;min-height:0}.companion-back-pattern img{object-fit:contain}.companion-card-back{background:#10192b}.companion-dialog{width:min(840px,calc(100% - 48px))}
@media(max-width:800px){
 .hero-dots{bottom:5px}.home-scroll-cue{display:none}.page-heading:has(.character-scene-art),#view-characters .page-heading{min-height:240px;padding-right:35%}.page-heading .character-scene-art,#view-characters .mgh-page-art.character-scene-art{width:75%;right:-12%;mask-image:linear-gradient(90deg,transparent,#000 40%,#000)}.character-scene-art img{object-position:55% 25%;opacity:.68}.page-heading h1{font-size:29px}.page-heading p{font-size:11px;text-shadow:0 2px 8px #081123}
 .orbit-portal{aspect-ratio:1.2}.planet-illustration{top:-3%;width:90%;left:7%}
 #homeBgmPanel{min-height:520px;padding:28px 22px;align-items:flex-end}.home-bgm-art{width:100%;height:75%;object-position:48% 25%}#homeBgmPanel::after{background:linear-gradient(0deg,#111829 9%,#111829ed 31%,transparent 71%)}#homeBgmPanel .home-bgm-copy{max-width:100%;padding-top:270px}#homeBgmPanel .home-bgm-copy h3{font-size:23px}#homeBgmPanel .home-bgm-actions .button{font-size:11px}
 .work-preview-link{grid-template-columns:95px 1fr 20px;gap:15px}.work-preview-link img{width:95px;height:125px}.work-preview-link b{font-size:21px}.work-preview-link em{font-size:10px}.work-preview-link i{font-size:20px}
 .work-cover{min-height:700px;align-items:flex-end}.work-cover-art{width:100%;height:70%;top:0;object-position:62% 30%}.work-cover::after{background:linear-gradient(0deg,#0b1323 0%,#0b1323 13%,#0b1323e8 29%,transparent 80%)}.work-cover-copy{padding-top:290px;padding-bottom:30px}.work-back{position:absolute;top:25px;left:20px;z-index:3;background:#0b1323b3;padding:10px}.work-logo{width:270px;max-width:85%;margin:10px 0}.work-cover h1{font-size:30px}.work-cover p{max-width:100%;font-size:15px}.work-scroll{margin-top:24px}.work-opening{padding-block:60px 20px}.work-opening>p{font-size:13px;line-height:1.95}.work-genres{gap:18px;font-size:10px}
 .work-features{padding-block:10px 10px}.work-feature,.work-feature.is-reversed{grid-template-columns:1fr;gap:22px;margin:40px 0 55px}.work-feature.is-reversed figure{order:0}.work-feature h2{font-size:25px;margin:12px 0}.work-feature p{font-size:13px}.work-mode-grid{grid-template-columns:repeat(2,1fr)}.work-mode-grid article{padding:22px 18px}.work-mode-grid article:first-child{grid-column:span 2;grid-row:auto}.work-mode-grid h3{font-size:21px}.work-mode-grid p{font-size:12px}.work-end{padding-block:50px 70px}.work-end h2{font-size:24px}
 .character-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.carousel{grid-auto-columns:82%;gap:18px}.memory-character-card-detail{max-width:none}.character-memory-detail.record-open>.character-memory-card-column{padding:20px 16px}.memory-card-copy h2{font-size:23px}.companion-dialog{width:calc(100% - 20px)}.companion-experience{padding:28px 15px 22px}.companion-card-stage{height:auto;aspect-ratio:4/3}.companion-reveal-card{width:100%;height:100%}.companion-stage-copy span{font-size:16px}.player.collapsed.is-idle{display:none}
}
@media(prefers-reduced-motion:reduce){.arkesia-planet{animation:none!important}.orbit-portal.entering .planet-illustration{transform:none}.space-backdrop,.orbital-system{transform:none!important}.work-feature:hover img{scale:1}.work-preview-link{transition:none}}
.arkesia-planet[hidden]{display:none}
.work-end::after{display:none}
/* Square collectible: a complete 4:3 picture above a separate nameplate. */
.companion-card-stage{max-width:480px;aspect-ratio:1}.companion-reveal-card{aspect-ratio:1}.companion-card-front .memory-card-frame{display:flex;flex-direction:column}.companion-card-front .memory-card-media{height:75%;flex:none}.companion-card-front .memory-card-copy{display:flex;flex:1;position:static;flex-direction:column;justify-content:center;padding:12px 20px;border-top:1px solid #6e819a;background:linear-gradient(105deg,#1d304b,#111d32)}.companion-card-front .memory-card-copy h2{font-size:23px}.companion-card-front .memory-card-alias{font-size:11px}.companion-back-pattern img{object-fit:cover}.companion-result-copy{font-size:13px}
@media(max-width:800px){.companion-card-stage{aspect-ratio:1}.companion-reveal-card{aspect-ratio:1}.companion-card-front .memory-card-copy{padding:8px 15px}.companion-card-front .memory-card-copy h2{font-size:20px}.companion-card-front .memory-card-alias{font-size:9px}}
.companion-card-stage{max-width:min(480px,max(240px,calc(100svh - 310px)))}
.companion-dialog-heading p,.companion-result-copy b{display:none}.companion-dialog-heading h2{font-size:23px;margin:8px 0}
.companion-result-copy{min-height:0;margin:6px 0}.companion-hint{margin:8px 0 12px}.companion-experience.has-result .companion-hint{display:none}
.memory-card-media::after{display:none}
/* Stable image windows: these are the same ratios shown in the image editor. */
.work-cover-frame{position:absolute;right:0;top:0;width:77%;aspect-ratio:4/3;overflow:hidden;z-index:-2}
.work-cover-frame .work-cover-art{position:static;width:100%;height:100%;object-fit:cover;display:block}
.work-feature figure{aspect-ratio:4/3}.work-feature figure img{width:100%;height:100%;object-fit:cover;transition:none}
.work-feature:hover img{scale:1}
@media(max-width:800px){.work-cover-frame{width:100%}}
/* Reader is closed by default; page pixels are requested only after opening. */
details.work-webtoon{width:calc(100% - 32px);max-width:900px;margin:32px auto 60px;color:#eef3ff;background:#101a2a;border:1px solid #758cb34d;border-radius:12px;overflow:hidden}
.work-webtoon>summary{display:flex;align-items:center;justify-content:center;gap:14px;min-height:60px;padding:14px 20px;cursor:pointer;list-style:none;font-weight:700;font-size:17px;color:#eef3ff;background:linear-gradient(110deg,#1b2e49,#162034);transition:background .18s}
.work-webtoon>summary::-webkit-details-marker{display:none}
.work-webtoon>summary:hover{background:#243952}
.work-webtoon>summary:focus-visible,.webtoon-close:focus-visible{outline:2px solid #b5d8ff;outline-offset:-4px}
.webtoon-close-label,.work-webtoon[open] .webtoon-open-label{display:none}
.work-webtoon[open] .webtoon-close-label{display:inline}
.work-webtoon[open] .webtoon-chevron{transform:rotate(180deg)}
.webtoon-pages{background:#000;line-height:0}
.webtoon-pages img{display:block;width:100%;height:auto;margin:0;border:0;border-radius:0}
.webtoon-close{display:block;width:100%;min-height:52px;border:0;border-radius:0;background:#18283e;color:#eef3ff;font:inherit;cursor:pointer}
@media(max-width:600px){details.work-webtoon{width:calc(100% - 16px);margin:24px auto 40px}.work-webtoon>summary{font-size:16px}}
