/* Fifth pass: real edited artwork, responsive framing, clear media hierarchy. */
.character-card .card-media::after,.memory-card-frame::after{background:none!important}
.character-card .card-media::after,.memory-character-card-detail .memory-card-frame::after{content:'';display:block;position:absolute;inset:0;border:20px solid transparent;border-image:url('/assets/redesign/adaptive-frame.svg') 32 / 20px / 0 stretch;pointer-events:none;z-index:3}
.character-card .card-media{padding:3px}.character-card-shade{display:none}
.character-role-badge{top:15px;left:15px;background:#101b30e8!important;color:#f1e6e9!important;border:1px solid #7a849580!important}
/* Scenes belong to the visual column, not a row below the entire biography. */
.character-memory-detail,.character-memory-detail.record-open{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.character-memory-detail.record-open>.character-memory-card-column{padding:24px;background:#0d182a}
.memory-character-card-detail{max-width:none;aspect-ratio:auto;height:auto}.memory-character-card-detail .memory-card-frame{padding:0;height:auto;aspect-ratio:auto;grid-template-rows:none}
.memory-character-card-detail .memory-card-frame::after{width:auto;height:auto;transform:none}
.memory-character-card-detail .memory-card-media{aspect-ratio:4/3;background:#060c16}
.memory-character-card-detail .memory-card-copy{display:none}
.character-memory-card-column .character-art-version-host{margin:12px 0}
.character-art-version-switcher{display:flex;gap:8px;margin:0;padding:0}
.character-art-version-switcher button{min-width:48px;height:32px;border:1px solid #44546c;border-radius:0;background:#17263c;color:#ced8e7;font:600 11px var(--font-ui)}
.character-art-version-switcher button.active{background:#b86d87;color:#fff;border-color:#e7a4b9}
.character-memory-card-column .character-reference-host{margin:14px 0 0;padding:0;background:none}
.character-memory-card-column .character-reference-host:empty{display:none}
.character-reference-gallery{padding:0;border:0;background:none;box-shadow:none;border-radius:0}
.character-reference-heading{margin:0 0 10px;align-items:center;color:#e3ebf5}.character-reference-heading>b{font-size:12px}.character-reference-heading small{display:none}.character-reference-heading>span{font-size:8px;color:#aabed1}
.character-reference-grid,.character-reference-grid[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.character-reference-image{aspect-ratio:4/3;border-radius:0;border:1px solid #526278;background:#060c16;box-shadow:none}
.character-reference-image img{object-fit:contain;background:#060c16}.character-reference-image>span{font-size:7px;border-radius:0;border:0;padding:3px 5px;bottom:4px;right:4px;background:#071224d9}
.scene-loading{display:block;padding:12px;color:#aab8ca;font-size:11px}
/* Music: the illustration and text occupy separate cells at every breakpoint. */
#homeBgmPanel{display:grid;grid-template-columns:1.2fr 1fr;gap:0;min-height:0;padding:0;align-items:stretch;background:#111b2e;border:1px solid #3d4b62;overflow:hidden}
#homeBgmPanel::before,#homeBgmPanel::after{display:none}
#homeBgmPanel .home-bgm-art{position:static;z-index:auto;grid-column:1;grid-row:1;width:100%;height:100%;min-height:400px;object-fit:cover;object-position:50% 30%;opacity:1;mask:none}
#homeBgmPanel .home-bgm-copy{grid-column:2;grid-row:1;width:auto;max-width:none;min-width:0;padding:36px;display:flex;flex-direction:column;justify-content:center;background:#111b2e}
#homeBgmPanel .home-bgm-count{display:flex;position:static;inset:auto;align-self:stretch;align-items:center;gap:9px;margin:0 0 32px;padding:0 0 16px;border-bottom:1px solid #3c4b65;width:auto;min-width:0;text-align:left}
#homeBgmPanel .home-bgm-count small{display:block;font-size:11px;letter-spacing:0;color:#bbc8d8}
#homeBgmPanel .home-bgm-count b{display:flex;align-items:baseline;gap:4px;font-size:13px;color:#d4dde8}
#homeBgmPanel .home-bgm-count em{font:600 30px var(--font-display);color:#f2ccda}
#homeBgmPanel .home-bgm-wave{margin:0 0 0 auto;height:23px;align-self:center}
#homeBgmPanel .home-bgm-copy>.eyebrow{font-size:9px;letter-spacing:.16em;color:#c4b3d4}
#homeBgmPanel .home-bgm-copy h3{font-size:clamp(23px,2.2vw,31px);line-height:1.45;margin:15px 0;word-break:keep-all}
#homeBgmPanel .home-bgm-copy p{font-size:12px;line-height:1.8;color:#b7c4d9;margin:0 0 25px}
#homeBgmPanel .home-bgm-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0}
#homeBgmPanel .home-bgm-actions .button{font-size:11px;padding:12px 16px;white-space:normal}
/* The encounter is a scroll-reactive feature, not a thin advertisement strip. */
.mh-companion-strip{position:relative;overflow:hidden;background:radial-gradient(ellipse at 72% 50%,#30284166,transparent 64%),#0e192d;border-top:1px solid #40516d;border-bottom:1px solid #40516d;--encounter-progress:0}
.mh-companion-strip::before{content:'';position:absolute;inset:0;background:url('/assets/redesign/encounter-seal.svg') -130px center/500px 500px no-repeat;opacity:.12;pointer-events:none}
.mh-companion-button{display:grid;grid-template-columns:1fr 1fr;gap:8%;min-height:470px;padding:25px 0;background:none;border:0;text-align:left;position:relative}
.mh-companion-button:hover{background:none}.encounter-copy{grid-column:1;grid-row:1;display:flex;align-items:flex-start;flex-direction:column;position:relative;z-index:2;padding-left:25px}
.mh-companion-button .encounter-copy .eyebrow{color:#dfacc3;font-size:10px;letter-spacing:.2em;margin-bottom:21px}
.mh-companion-button .encounter-copy b{font:700 clamp(28px,3vw,42px)/1.5 var(--font-display);color:#f2f5fb;word-break:keep-all}
.mh-companion-button .encounter-copy small{font-size:13px;color:#aebfd3;max-width:none;line-height:1.8;margin-top:15px}
.mh-companion-button .encounter-copy em{display:inline-flex;align-items:center;gap:35px;margin-top:28px;padding:13px 24px;border:1px solid #a3829a;color:#f9e9f2;background:#513549;font-size:13px;font-style:normal;transition:background .2s,box-shadow .2s}
.mh-companion-button:hover .encounter-copy em{background:#70435e;box-shadow:0 0 28px #c486aa33}.encounter-copy em i{font-style:normal}
.encounter-deck{display:block;position:relative;grid-column:2;grid-row:1;width:100%;aspect-ratio:1;max-width:430px;justify-self:center;perspective:900px}
.encounter-seal{position:absolute;inset:-8%;width:116%;height:116%;opacity:calc(.2 + var(--encounter-progress)*.55);transform:rotate(calc(-18deg + var(--encounter-progress)*35deg))}
.encounter-card{display:block;position:absolute;width:58%;aspect-ratio:1;left:21%;top:23%;border:1px solid #aabdd077;padding:5px;background:#0a1223;box-shadow:0 18px 35px #0008;overflow:hidden}
.encounter-card::after{content:'';position:absolute;inset:0;border:16px solid transparent;border-image:url('/assets/redesign/adaptive-frame.svg') 32 / 16px / 0 stretch;pointer-events:none}
.encounter-card img{display:block;width:100%;height:100%;object-fit:cover}.encounter-left{transform:translateX(calc(-12px - var(--encounter-progress)*65px)) rotate(calc(-3deg - var(--encounter-progress)*14deg))}
.encounter-right{transform:translateX(calc(12px + var(--encounter-progress)*65px)) rotate(calc(3deg + var(--encounter-progress)*14deg))}
.encounter-center{transform:translateY(calc(20px - var(--encounter-progress)*35px)) rotateY(calc(10deg - var(--encounter-progress)*10deg));transition:filter .3s}
.mh-companion-button:hover .encounter-center{filter:brightness(1.25)}
/* All new section artwork has a readable copy zone, not a symbol layered over it. */
.page-heading:has(.character-scene-art){min-height:300px;padding:50px 54% 40px 28px;isolation:isolate;overflow:hidden}
.page-heading:has(.character-scene-art)>:not(.mgh-page-art){position:relative;z-index:2}
.page-heading:has(.character-scene-art)::before{inset:0;border:0;background:linear-gradient(90deg,#111e32 20%,#111e32cc 47%,transparent 78%);z-index:1;pointer-events:none}
.page-heading .mgh-page-art.character-scene-art,#view-characters .mgh-page-art.character-scene-art{right:0;top:0;bottom:0;width:68%;height:100%;background:none;opacity:1;mask-image:linear-gradient(90deg,transparent,#000 25%);z-index:0}
.page-heading .character-scene-art img{height:100%;width:100%;object-fit:cover;object-position:50% 26%;transform:none}
#view-videos .character-scene-art img{object-position:50% 22%}#view-history .character-scene-art img{object-position:50% 18%}
/* Hand-drawn atlas instrument motifs. Do not alter map media, crops or coordinates. */
.world-explorer{border:1px solid #41536b;background:#101d31;overflow:hidden}
.world-explorer-bar{background:#182940;border-bottom:1px solid #46546b;padding:20px 24px}
.world-explorer-heading>span{color:#a8bcd1;font-size:10px;letter-spacing:.1em}.world-explorer-heading>b{color:#f0f4fa;font-size:18px}
#view-world .world-stage::before{display:none}
#view-world .world-stage::after{content:'';display:block;position:absolute;inset:0;width:auto;height:auto;border:22px solid transparent;border-image:url('/assets/redesign/adaptive-frame.svg') 32 / 22px / 0 stretch;pointer-events:none;z-index:5;background:none}
.world-stage-grid{background:none!important;opacity:1!important}.world-stage-grid::after{content:'';position:absolute;right:22px;bottom:46px;width:90px;height:90px;background:url('/assets/redesign/atlas-compass.svg') center/contain no-repeat;opacity:.7}
#view-world .map-node{border:0;border-radius:0;background:none;gap:5px;padding:4px;min-height:36px}
#view-world .map-node-anchor{flex-basis:23px;width:23px;height:23px;background:#15273eee;border:1px solid #9ab8d0;box-shadow:0 0 0 3px #09132288;transform:rotate(45deg);border-radius:3px}
#view-world .map-node-anchor::after{inset:6px;background:#d9a5bd;border:0;border-radius:0}
#view-world .map-node-anchor i{display:none}
#view-world .map-node-copy{padding:7px 10px;background:#0e1d33ef;border:1px solid #68819d80;border-radius:0;box-shadow:0 2px 8px #0003}
#view-world .map-node-copy b{font:600 12px var(--font-ui);color:#f4f7fb}.map-node-copy small{display:none!important}
#view-world .map-node:hover,#view-world .map-node.active{background:none}#view-world .map-node:hover .map-node-copy,#view-world .map-node.active .map-node-copy{background:#58384e;border-color:#f2bed0}
.world-info{background:#111f33!important}.world-index-item{border:1px solid #41536b;border-left:2px solid #c197ad;border-radius:0;background:#192c44;padding:12px 15px}
.world-info-header h2{font-size:30px}.world-record-index{border-color:#5d718d;background:none;color:#e3cad7}
.world-stage-coordinate{display:none}.world-stage-legend{border:0;border-radius:0;backdrop-filter:blur(8px)}
.chronicle-entry{position:relative}.chronicle-entry::before{content:'';position:absolute;width:5px;height:5px;left:0;top:0;background:#e0afc5;transform:rotate(45deg)}
/* Short, staggered transitions; no scroll capture or full-screen wait. */
.polish-reveal{transition:opacity .55s ease,translate .65s cubic-bezier(.18,.72,.24,1)}
.polish-reveal:not(.polish-visible){opacity:.12;translate:0 30px}.polish-visible{opacity:1;translate:0 0}
.page-heading.polish-reveal .character-scene-art{transition:translate 1s cubic-bezier(.18,.72,.24,1),filter 1s}
.page-heading.polish-reveal:not(.polish-visible) .character-scene-art{translate:35px 0;filter:brightness(.65)}
.button,.home-gateway-action{transition:background .2s,color .2s,border-color .2s,box-shadow .2s}.button:hover{box-shadow:0 7px 20px #0004}
@media(max-width:800px){
 .polish-reveal{transition-duration:.8s,1s}
 .polish-reveal:not(.polish-visible){opacity:.06;translate:0 48px}
 .character-memory-detail,.character-memory-detail.record-open{display:flex}.character-memory-detail.record-open>.character-memory-card-column{padding:18px;width:100%}
 .character-reference-grid[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}.character-reference-grid[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.character-reference-image{aspect-ratio:4/3}
 .character-reference-image>span{font-size:6px}.character-art-version-switcher button{min-height:36px}
 #homeBgmPanel{grid-template-columns:1fr}#homeBgmPanel .home-bgm-art{grid-column:1;grid-row:1;aspect-ratio:4/3;min-height:0;height:auto;width:100%;object-fit:contain}
 #homeBgmPanel .home-bgm-copy{grid-column:1;grid-row:2;padding:26px 22px}#homeBgmPanel .home-bgm-count{margin-bottom:23px}#homeBgmPanel .home-bgm-copy h3{font-size:24px}#homeBgmPanel .home-bgm-actions .button{font-size:11px;padding:12px}
 .mh-companion-button{grid-template-columns:1fr;gap:0;padding:18px 0 35px;min-height:0}.encounter-deck{grid-column:1;grid-row:1;width:min(85%,370px);max-width:none;aspect-ratio:1.2}
 .encounter-copy{grid-column:1;grid-row:2;padding:0 8px;align-items:center;text-align:center}.mh-companion-button .encounter-copy .eyebrow{margin-bottom:12px;font-size:9px}.mh-companion-button .encounter-copy b{font-size:26px}.mh-companion-button .encounter-copy small{font-size:12px;max-width:none;margin-top:10px}.mh-companion-button .encounter-copy em{font-size:12px;margin-top:20px;gap:28px}.mh-companion-button .encounter-copy em i{font-size:18px}
 .encounter-card{width:55%;left:22.5%;top:22%}.encounter-left{transform:translateX(calc(-10px - var(--encounter-progress)*48px)) rotate(calc(-3deg - var(--encounter-progress)*14deg))}.encounter-right{transform:translateX(calc(10px + var(--encounter-progress)*48px)) rotate(calc(3deg + var(--encounter-progress)*14deg))}
 .page-heading:has(.character-scene-art){padding:225px 22px 26px;min-height:0;background:#111e32}.page-heading .mgh-page-art.character-scene-art,#view-characters .mgh-page-art.character-scene-art{width:100%;height:235px;top:0;right:0;mask-image:linear-gradient(#000 64%,transparent);opacity:1}
 .page-heading:has(.character-scene-art)::before{display:none}.page-heading:has(.character-scene-art) h1{font-size:30px;margin-top:8px}.page-heading:has(.character-scene-art) p{font-size:12px;max-width:none}
 .world-explorer-bar{padding:15px;gap:10px}.world-explorer-heading>b{font-size:15px}.world-stage-grid::after{width:50px;height:50px;right:14px;bottom:35px}
 #view-world .map-node-copy{padding:5px 7px}#view-world .map-node-copy b{font-size:10px}#view-world .map-node-anchor{width:17px;height:17px;flex-basis:17px}#view-world .map-node-anchor::after{inset:4px}
}
@media(prefers-reduced-motion:reduce){.polish-reveal,.polish-reveal:not(.polish-visible){opacity:1;translate:none;transition:none}.page-heading.polish-reveal .character-scene-art{translate:none;filter:none;transition:none}.encounter-seal,.encounter-card{transition:none}.character-card:hover,.simulation-card:hover{transform:none}}
