:root{
  --bg:#070706;--panel:#0c0b09;--panel2:#12100c;--ink:#ddd3bd;--muted:#9f947e;
  --gold:#b79561;--gold2:#705534;--red:#8e2b2c;--line:rgba(189,153,96,.32);
  --header:78px;--max:1480px;--serif:Georgia,"Noto Serif TC","Songti TC","PMingLiU",serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header)}body{margin:0;background:#050504;color:var(--ink);font-family:var(--serif);letter-spacing:.035em;overflow-x:hidden}button,a{font:inherit}a{color:inherit}.skip-link{position:fixed;left:16px;top:-80px;z-index:999;background:#fff;color:#111;padding:12px}.skip-link:focus{top:16px}.noise{position:fixed;inset:0;pointer-events:none;z-index:1000;opacity:.2;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E")}
body:before{content:"";position:fixed;inset:0;z-index:-2;background:#080807 url('assets/images/ui/texture.webp') center/520px repeat;filter:saturate(.45) brightness(.28)}body:after{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at 50% 10%,transparent 0 18%,rgba(0,0,0,.72) 68%),linear-gradient(90deg,rgba(0,0,0,.3),transparent 15% 85%,rgba(0,0,0,.4))}
.topbar{position:fixed;inset:0 0 auto;z-index:100;height:var(--header);display:grid;grid-template-columns:220px 1fr 170px;align-items:center;gap:22px;padding:10px 30px;background:linear-gradient(#070706 0%,rgba(7,7,6,.88) 72%,transparent);backdrop-filter:blur(8px)}.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1}.brand span{font-size:14px;letter-spacing:.08em}.brand strong{font-size:16px;letter-spacing:.55em;color:#a23838;margin-top:3px}.brand small{font-size:10px;letter-spacing:.4em;margin-top:6px;color:#c8bea9}.main-nav{display:flex;justify-content:center;gap:34px}.main-nav a{text-decoration:none;text-align:center;opacity:.75;position:relative;padding:13px 0}.main-nav b{display:block;font-size:11px;font-weight:400;letter-spacing:.11em}.main-nav span{display:block;font-size:9px;margin-top:5px;color:var(--muted)}.main-nav a:after{content:"";position:absolute;left:50%;right:50%;bottom:0;height:1px;background:var(--gold);transition:.25s}.main-nav a:hover,.main-nav a.active{opacity:1}.main-nav a:hover:after,.main-nav a.active:after{left:0;right:0}.lang-switch{display:flex;justify-content:flex-end;align-items:center;gap:7px}.lang-switch button{border:0;background:none;color:#8d846f;padding:5px 1px;cursor:pointer;font-size:10px}.lang-switch button.active{color:#e1d5bc}.lang-switch i{width:1px;height:12px;background:var(--line)}.menu-button{display:none}
.depth-rail{position:fixed;left:18px;top:120px;z-index:50;color:#b7aa91;font-size:9px;letter-spacing:.09em}.depth-rail>span{display:block;margin-bottom:12px}.depth-rail ol{margin:0;padding:0 0 0 18px;list-style:none;border-left:1px solid var(--line)}.depth-rail li{height:41px;position:relative}.depth-rail li:before{content:"";position:absolute;left:-22px;top:4px;width:7px;height:1px;background:#c4b48f}.depth-sigil{color:var(--red);font-size:46px;line-height:.7;margin-top:12px}.section-rail{position:fixed;right:14px;top:47%;z-index:50;display:flex;flex-direction:column;gap:18px;align-items:center}.section-rail:before{content:"";position:absolute;top:-10px;bottom:18px;width:1px;background:var(--line);z-index:-1}.section-rail a{font-size:9px;text-decoration:none;background:#070706;padding:3px;color:#8f856f}.section-rail a:last-child{font-size:7px;color:#5f5849}
.audio-dock{position:fixed;right:28px;top:92px;z-index:90;width:184px;height:74px;display:flex;align-items:center;gap:12px;padding:10px 14px;color:var(--ink);border:1px solid var(--line);background:rgba(8,7,6,.86);cursor:pointer;clip-path:polygon(0 0,92% 0,100% 14%,100% 100%,0 100%)}.audio-dock img{width:52px;height:52px;object-fit:contain}.audio-dock span{display:flex;flex-direction:column;text-align:left}.audio-dock b{font-size:12px;font-weight:400}.audio-dock small{font-size:9px;color:var(--muted);margin-top:6px}.audio-dock[aria-pressed="true"]{box-shadow:0 0 24px rgba(142,43,44,.23)}.audio-dock[aria-pressed="true"] img{animation:audioPulse 2.6s ease-in-out infinite}@keyframes audioPulse{50%{filter:drop-shadow(0 0 9px rgba(173,82,54,.75));transform:scale(1.04)}}.volume-dock{position:fixed;right:29px;top:170px;z-index:89;width:182px;display:flex;align-items:center;gap:10px;padding:5px 9px;background:rgba(8,7,6,.78);border:1px solid rgba(189,153,96,.16);opacity:0;transform:translateY(-6px);pointer-events:none;transition:.25s}.audio-dock:hover+.volume-dock,.volume-dock:hover,.audio-dock:focus+.volume-dock{opacity:1;transform:none;pointer-events:auto}.volume-dock label{font-size:9px;color:var(--muted)}.volume-dock input{width:120px;accent-color:var(--gold)}
.hero{position:relative;min-height:100svh;overflow:hidden}.hero-bg{position:absolute;inset:0;background:url('assets/images/hero/abyss-city.webp') center/cover no-repeat;filter:saturate(.72) contrast(1.08) brightness(.68);transform:scale(1.03)}.hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,4,3,.55),rgba(4,4,3,.03) 40%,rgba(4,4,3,.3)),linear-gradient(0deg,#070706 0%,rgba(7,7,6,.2) 24%,rgba(0,0,0,.18) 75%,rgba(0,0,0,.65) 100%),radial-gradient(circle at 52% 48%,transparent 0 18%,rgba(0,0,0,.34) 68%)}.hero-blade{position:absolute;z-index:2;right:14%;bottom:0;height:min(92vh,960px);max-width:48vw;object-fit:contain;object-position:bottom;filter:drop-shadow(-30px 18px 38px rgba(0,0,0,.7)) saturate(.82)}.hero-copy{position:absolute;z-index:3;left:50%;top:48%;transform:translate(-50%,-50%);text-align:center;width:min(720px,60vw);text-shadow:0 3px 24px #000}.eyebrow{margin:0;font-size:18px}.hero-copy h1{font-size:clamp(50px,6vw,92px);font-weight:400;line-height:.92;margin:2px 0 0;letter-spacing:.02em}.reborn{margin:15px 0 10px;color:#9d3434;font-size:clamp(24px,3.2vw,48px);letter-spacing:.55em}.hero-zh{font-size:clamp(16px,1.8vw,27px);letter-spacing:.65em;margin:0;color:#d0c5af}.hero-copy blockquote{font-size:clamp(14px,1.2vw,19px);line-height:1.9;margin:26px 0 0;color:#c7bca7}.entry-card{position:absolute;z-index:5;right:6%;bottom:5.5%;width:390px;padding:17px 22px 14px;text-align:center;background:rgba(10,9,7,.9);transition:opacity .55s,transform .55s}.entry-card.dismissed{opacity:0;transform:translateY(20px);pointer-events:none}.entry-card>p{margin:0;color:var(--gold);font-size:11px;letter-spacing:.15em}.entry-card h2{font-size:12px;font-weight:400;margin:8px 0 12px}.entry-grid{display:grid;grid-template-columns:1fr 1fr}.entry-grid button{min-height:100px;border:1px solid var(--line);background:rgba(0,0,0,.16);color:var(--ink);cursor:pointer}.entry-grid button+button{border-left:0}.entry-grid button:hover{background:rgba(183,149,97,.08)}.entry-grid b{font-size:11px;font-weight:400;line-height:1.5}.entry-grid span{display:block;color:#b8aa90;font-size:10px;margin-top:4px}.entry-grid em{display:block;color:var(--gold);font-style:normal;font-size:18px;margin-top:8px}.entry-card>small{display:block;color:#817865;font-size:8px;margin-top:8px}.scroll-cue{position:absolute;z-index:6;left:50%;bottom:4%;transform:translateX(-50%);text-decoration:none;font-size:9px;letter-spacing:.2em;color:#c9bea8;text-align:center}.scroll-cue span{display:block;font-size:20px;margin-top:5px}.ornate{position:relative;border:1px solid var(--line)}.ornate:before,.section-shell:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:url('assets/images/ui/corner-tl.png'),url('assets/images/ui/corner-tr.png'),url('assets/images/ui/corner-bl.png'),url('assets/images/ui/corner-br.png');background-position:left top,right top,left bottom,right bottom;background-repeat:no-repeat;background-size:70px;opacity:.22}
.section-shell{position:relative;max-width:var(--max);margin:0 auto 12px;min-height:320px;border:1px solid var(--line);display:grid;grid-template-columns:330px 1fr;background:linear-gradient(110deg,rgba(13,11,8,.96),rgba(6,6,5,.88));overflow:hidden}.section-intro{position:relative;z-index:2;padding:32px 28px 30px 44px;display:grid;grid-template-columns:70px 1fr;align-content:start}.section-intro.compact{grid-template-columns:70px 1fr}.section-no{font-size:58px;color:#b59a71;line-height:.9;grid-row:1/3}.section-intro h2{margin:0;font-size:31px;font-weight:400;letter-spacing:.08em}.section-zh{margin:5px 0 0;font-size:13px;color:#d4c6a9}.section-lead{grid-column:2;margin:18px 0 0;color:#aaa08b;line-height:1.85;font-size:12px}.button{grid-column:2;justify-self:start;margin-top:18px;display:inline-flex;align-items:center;gap:30px;min-width:140px;justify-content:center;padding:10px 16px;text-decoration:none;color:#d7cbb4;border:1px solid var(--line);background:rgba(8,7,6,.45);cursor:pointer;font-size:11px}.button:hover{border-color:var(--gold);background:rgba(183,149,97,.07)}.button i{font-style:normal;color:var(--gold)}.button.ghost{font:inherit}.story-section{min-height:390px;grid-template-columns:340px 1fr 330px}.story-art{position:absolute;inset:0;background:linear-gradient(90deg,#080706 0%,rgba(8,7,6,.84) 25%,rgba(8,7,6,.12) 55%,rgba(8,7,6,.88) 100%),url('assets/images/story/chapter-1.webp') 55% 39%/cover no-repeat;filter:saturate(.62) contrast(1.1)}.story-section .section-intro{grid-column:1;z-index:3}.latest-card{grid-column:3;align-self:center;z-index:4;margin:22px 24px 22px 0;background:rgba(10,9,7,.86);overflow:hidden}.latest-image{height:120px;overflow:hidden}.latest-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.7)}.latest-card>div:last-child{padding:16px 20px 18px}.latest-card small{font-size:9px;color:var(--gold)}.latest-card b{display:block;font-size:9px;color:#9d8b70;margin-top:7px}.latest-card h3{font-size:24px;font-weight:400;margin:4px 0 8px}.latest-card p{font-size:10px;line-height:1.7;color:#a89d88}.latest-card a,.media-note a{display:block;border:1px solid var(--line);text-align:center;padding:9px;text-decoration:none;font-size:10px;margin-top:12px}.world-grid,.character-grid,.archive-grid{position:relative;z-index:2;display:grid;grid-auto-flow:column;grid-auto-columns:1fr}.world-card,.character-card,.archive-card{position:relative;min-width:0;overflow:hidden;border-left:1px solid var(--line);cursor:pointer;background:#0b0a08}.world-card{min-height:360px}.world-card img,.character-card img,.archive-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .65s ease,filter .45s ease;filter:saturate(.64) brightness(.72)}.world-card:after,.character-card:after,.archive-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,3,3,.96),transparent 55%),linear-gradient(90deg,rgba(0,0,0,.1),transparent)}.world-card:hover img,.character-card:hover img,.archive-card:hover img{transform:scale(1.045);filter:saturate(.85) brightness(.9)}.world-card div,.character-card div,.archive-card div{position:absolute;z-index:2;inset:auto 16px 16px;text-align:center}.world-card b{font-size:11px;font-weight:400;display:block}.world-card span{font-size:10px;color:#c5b89e}.world-card em{display:block;width:28px;height:28px;border:1px solid var(--line);margin:11px auto 0;transform:rotate(45deg);font-style:normal;line-height:26px;color:var(--gold)}.character-card{min-height:270px}.character-card div{inset:auto 8px 12px}.character-card b{display:block;font-size:13px;font-weight:400}.character-card span{font-size:9px;color:#a99e89}.archive-card{min-height:250px}.archive-card div{text-align:left;inset:auto 16px 16px}.archive-card b{display:block;font-size:13px;font-weight:400}.archive-card span{font-size:9px;color:#a99e89}.media-section{grid-template-columns:330px minmax(0,1fr) 300px;padding-right:22px;align-items:center;min-height:430px}.video-shell{position:relative;aspect-ratio:16/9;background:#000;overflow:hidden}.video-shell iframe{width:100%;height:100%;border:0}.video-cover{position:absolute;inset:0;padding:0;border:0;background:#000;cursor:pointer;color:white}.video-cover img{width:100%;height:100%;object-fit:cover;filter:saturate(.64) brightness(.7)}.video-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.6),transparent 60%)}.video-cover .play{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;border:1px solid #d4c9b3;background:rgba(0,0,0,.55);display:grid;place-items:center;font-size:22px;padding-left:4px}.video-cover small{position:absolute;z-index:2;left:18px;top:16px;text-align:left;font-size:9px;line-height:1.5}.media-note{margin-left:18px;padding:25px;background:rgba(11,10,8,.86)}.media-note small{color:var(--gold);font-size:9px}.media-note h3{font-size:23px;font-weight:400;margin:8px 0}.media-note p{font-size:11px;color:#a79d89;line-height:1.75}.bottom-grid{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.1fr 1fr 1fr;border:1px solid var(--line);background:rgba(12,10,8,.92)}.bottom-panel{position:relative;min-height:220px;display:grid;grid-template-columns:74px 1fr;gap:12px;padding:30px 30px 24px;border-right:1px solid var(--line);overflow:hidden}.bottom-panel:last-child{border-right:0}.bottom-panel .section-no{font-size:50px}.bottom-panel h2{margin:0;font-size:21px;font-weight:400;color:#c7ae7b}.bottom-panel p{margin:4px 0 12px;font-size:12px}.bottom-panel span{font-size:10px;color:#a69b86;line-height:1.7}.bottom-panel a{display:inline-block;text-decoration:none;border:1px solid var(--line);padding:9px 12px;margin-top:14px;font-size:10px}.medium-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,9,7,.94),rgba(10,9,7,.45)),url('assets/images/story/medium-cta.webp') center/cover;z-index:-1;filter:saturate(.5)}#news-list{list-style:none;margin:0;padding:0}#news-list li{font-size:9px;color:#b5aa95;padding:3px 0}#news-list time{display:inline-block;width:76px;color:#817864}.socials{display:flex;gap:12px;margin-top:20px}.socials a{margin:0;border:1px solid var(--line);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;padding:0;font-size:14px}.socials a:hover{border-color:var(--gold)}footer{position:relative;max-width:var(--max);margin:0 auto;min-height:90px;display:grid;grid-template-columns:180px 1fr auto;align-items:center;gap:24px;padding:18px 30px;border:1px solid var(--line);border-top:0;color:#7f7665;font-size:9px;overflow:hidden}footer:before{content:"";position:absolute;inset:0;background:url('assets/images/ui/footer-watermark.png') center/cover no-repeat;opacity:.06;pointer-events:none}footer img{width:150px;filter:saturate(.35) brightness(.75)}footer p{text-align:center}footer nav{display:flex;gap:18px}footer a{text-decoration:none}.detail-dialog{width:min(920px,92vw);padding:0;background:#0b0a08;color:var(--ink);border:1px solid var(--line);box-shadow:0 40px 130px #000;grid-template-columns:42% 1fr;overflow:hidden}.detail-dialog[open]{display:grid}.detail-dialog::backdrop{background:rgba(0,0,0,.86);backdrop-filter:blur(5px)}.detail-dialog>img{width:100%;height:100%;min-height:520px;object-fit:cover;filter:saturate(.72)}.detail-dialog>div{padding:60px 42px}.detail-dialog small{color:var(--gold)}.detail-dialog h2{font-weight:400;font-size:34px}.detail-dialog p{line-height:1.9;color:#b4aa95}.dialog-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border:1px solid var(--line);background:#0a0907;color:var(--ink);font-size:24px;cursor:pointer;z-index:3}
:focus-visible{outline:1px solid #d2b375;outline-offset:4px}
@media(max-width:1180px){:root{--header:70px}.topbar{grid-template-columns:190px auto 1fr;padding:8px 18px}.main-nav{position:fixed;top:70px;left:14px;right:14px;display:none;grid-template-columns:repeat(2,1fr);gap:0;background:rgba(8,7,6,.98);border:1px solid var(--line);padding:16px}.main-nav.open{display:grid}.main-nav a{border-bottom:1px solid rgba(189,153,96,.15)}.menu-button{display:block;justify-self:center;border:1px solid var(--line);background:none;color:var(--ink);padding:8px 11px;font-size:10px}.lang-switch{justify-self:end}.depth-rail,.section-rail{display:none}.audio-dock{right:18px;top:83px}.volume-dock{right:19px;top:161px}.hero-blade{right:2%;max-width:58vw}.hero-copy{left:42%;width:62vw}.entry-card{right:3%;width:350px}.section-shell{margin-left:14px;margin-right:14px}.story-section{grid-template-columns:310px 1fr 310px}.world-grid,.character-grid,.archive-grid{overflow-x:auto;grid-auto-columns:minmax(180px,1fr);scroll-snap-type:x mandatory}.world-card,.character-card,.archive-card{scroll-snap-align:start}.bottom-grid{margin:0 14px}.media-section{grid-template-columns:300px 1fr}.media-note{grid-column:2;margin:14px 0 20px}.detail-dialog>img{min-height:430px}}
@media(max-width:760px){.topbar{grid-template-columns:1fr auto auto}.brand span{font-size:10px}.brand strong{font-size:13px}.brand small{display:none}.lang-switch{gap:4px}.lang-switch button{font-size:8px}.audio-dock{top:auto;bottom:14px;right:14px;width:62px;height:62px;border-radius:50%;clip-path:none;padding:5px}.audio-dock img{width:50px;height:50px}.audio-dock span,.volume-dock{display:none}.hero{min-height:900px}.hero-bg{background-position:48% center}.hero-blade{right:-13%;height:70%;max-width:75vw;opacity:.86}.hero-copy{left:50%;top:30%;width:92vw}.hero-copy h1{font-size:45px}.reborn{font-size:23px}.hero-copy blockquote{font-size:13px}.entry-card{left:14px;right:14px;bottom:70px;width:auto}.scroll-cue{display:none}.section-shell,.story-section,.media-section{margin:0 10px 10px;grid-template-columns:1fr;min-height:0}.section-intro,.section-intro.compact{grid-template-columns:58px 1fr;padding:25px 19px}.section-no{font-size:44px}.section-intro h2{font-size:26px}.section-lead{grid-column:1/3;font-size:11px}.button{grid-column:1/3}.story-art{position:absolute;inset:0;opacity:.35;background-position:center}.story-section .section-intro{grid-column:1}.latest-card{grid-column:1;margin:0 16px 20px}.world-grid,.character-grid,.archive-grid{grid-auto-columns:72%;border-top:1px solid var(--line)}.world-card{min-height:340px}.character-card{min-height:300px}.archive-card{min-height:250px}.media-section{padding-right:0}.video-shell{margin:0 16px}.media-note{grid-column:1;margin:16px}.bottom-grid{margin:0 10px;grid-template-columns:1fr}.bottom-panel{border-right:0;border-bottom:1px solid var(--line)}footer{margin:0 10px;grid-template-columns:1fr;text-align:center}footer img{margin:auto}footer nav{justify-content:center}.detail-dialog[open]{display:block}.detail-dialog>img{height:320px;min-height:0}.detail-dialog>div{padding:30px 24px}.detail-dialog h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Preserve absolute placement when an entry panel also uses ornate corners. */
.entry-card.ornate{position:absolute}


/* V3.2 visual lift: preserve the abyss mood while restoring readable midtones. */
:root{
  --bg:#0b0907;--panel:#17120d;--panel2:#24190f;--ink:#f0e4cc;--muted:#c0ae90;
  --gold:#d4ac70;--gold2:#936b3d;--red:#b74040;--line:rgba(220,177,108,.44);
}
body{background:#090806;color:var(--ink)}
body:before{background-color:#100d09;filter:saturate(.62) brightness(.48)}
body:after{background:radial-gradient(circle at 50% 10%,transparent 0 22%,rgba(0,0,0,.46) 72%),linear-gradient(90deg,rgba(0,0,0,.16),transparent 13% 87%,rgba(0,0,0,.22))}
.noise{opacity:.13}
.topbar{background:linear-gradient(#0d0b08 0%,rgba(13,11,8,.89) 72%,transparent)}
.main-nav a{opacity:.86}.main-nav span{color:#c5b69a}
.audio-dock{background:rgba(20,15,10,.91);box-shadow:0 10px 32px rgba(0,0,0,.28)}
.volume-dock{background:rgba(20,15,10,.9)}
.hero-bg{filter:saturate(.88) contrast(1.04) brightness(.84)}
.hero-vignette{background:linear-gradient(90deg,rgba(5,4,3,.38),rgba(4,4,3,.01) 42%,rgba(4,4,3,.18)),linear-gradient(0deg,#0a0806 0%,rgba(7,7,6,.08) 25%,rgba(0,0,0,.08) 75%,rgba(0,0,0,.42) 100%),radial-gradient(circle at 52% 48%,transparent 0 24%,rgba(0,0,0,.2) 72%)}
.hero-blade{filter:drop-shadow(-28px 20px 38px rgba(0,0,0,.58)) saturate(.98) brightness(1.06) contrast(1.03)}
.hero-copy{text-shadow:0 3px 20px rgba(0,0,0,.78)}
.hero-copy blockquote{max-width:620px;margin:24px auto 0;color:#eadbc0;font-size:clamp(13px,1.05vw,17px);line-height:1.75;padding:10px 18px;background:linear-gradient(90deg,transparent,rgba(21,14,9,.38),transparent)}
.entry-card{background:rgba(24,17,11,.91);box-shadow:0 22px 54px rgba(0,0,0,.34)}
.section-shell{background:linear-gradient(110deg,rgba(34,23,15,.94),rgba(12,10,8,.82));box-shadow:0 12px 38px rgba(0,0,0,.18)}
.section-lead,.latest-card p,.media-note p,.bottom-panel span{color:#c5b69a}
.story-art{filter:saturate(.78) contrast(1.03) brightness(.88)}
.latest-card,.media-note{background:rgba(27,19,12,.9)}
.latest-image img{filter:saturate(.82) brightness(.94)}
.world-card,.character-card,.archive-card{background:#17110c}
.world-card img,.character-card img,.archive-card img{filter:saturate(.78) brightness(.86) contrast(1.02)}
.world-card:after,.character-card:after,.archive-card:after{background:linear-gradient(0deg,rgba(10,7,4,.92),rgba(8,6,4,.06) 62%),linear-gradient(90deg,rgba(0,0,0,.06),transparent)}
.world-card:hover img,.character-card:hover img,.archive-card:hover img{filter:saturate(.98) brightness(1.03) contrast(1.02)}
.archive-card em{display:inline-block;margin-top:9px;padding-top:7px;border-top:1px solid rgba(220,177,108,.28);font-size:9px;font-style:normal;color:#e1bd82;letter-spacing:.08em}
.video-cover img{filter:saturate(.82) brightness(.86)}
.bottom-grid{background:rgba(28,19,12,.94)}
.medium-panel:after{background:linear-gradient(90deg,rgba(22,15,10,.9),rgba(22,15,10,.35)),url('assets/images/story/medium-cta.webp') center/cover;filter:saturate(.72) brightness(.9)}
footer{color:#a99b82}
footer img{filter:saturate(.5) brightness(.95)}
.detail-dialog{width:min(1040px,94vw);background:linear-gradient(125deg,#20160f,#100d09);box-shadow:0 40px 130px rgba(0,0,0,.72)}
.detail-dialog::backdrop{background:rgba(2,2,1,.67);backdrop-filter:blur(6px)}
.detail-dialog>img{filter:saturate(.9) brightness(.96)}
.detail-dialog .dialog-content{padding:50px 46px 44px;overflow:auto;max-height:min(78vh,760px)}
.detail-dialog h2{margin:10px 0 14px;color:#f1e3c8}
.detail-dialog p{color:#cdbd9f;margin:0}
.dialog-details{margin-top:26px;padding-top:22px;border-top:1px solid rgba(220,177,108,.28)}
.archive-detail{display:grid;grid-template-columns:1.05fr .95fr;gap:28px}
.archive-detail section{padding:18px 20px;background:rgba(255,224,174,.035);border:1px solid rgba(220,177,108,.2)}
.archive-detail h3{margin:0 0 12px;color:#d9b478;font-size:12px;font-weight:400;letter-spacing:.12em}
.archive-detail ul{margin:0;padding-left:18px;color:#d3c3a5;line-height:1.9;font-size:12px}
.archive-status p{font-size:12px;line-height:1.85;color:#c8b89a}
.dialog-close{background:#1a120c}
@media(max-width:760px){
  .hero-bg{filter:saturate(.86) contrast(1.02) brightness(.78)}
  .hero-blade{opacity:.96;filter:drop-shadow(-15px 14px 28px rgba(0,0,0,.56)) saturate(.96) brightness(1.05)}
  .hero-copy{top:27%}.hero-copy blockquote{font-size:11px;line-height:1.68;padding:8px 12px}
  .detail-dialog .dialog-content{padding:28px 24px 30px;max-height:none}
  .archive-detail{grid-template-columns:1fr;gap:14px}
}


/* V3.3 ARCHIVES two-level browser */
.detail-dialog.archive-browser{width:min(1240px,96vw);grid-template-columns:32% 1fr}
.detail-dialog.archive-browser>img{min-height:690px}
.archive-category-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}
.archive-category-head h3{margin:0;color:#e2bd80;font-size:13px;font-weight:400;letter-spacing:.14em}
.archive-category-head p{margin:0;max-width:440px;text-align:right;font-size:10px!important;color:#bcae95!important}
.archive-record-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.archive-record-card{position:relative;display:grid;grid-template-rows:180px auto;padding:0;border:1px solid rgba(220,177,108,.25);background:linear-gradient(145deg,rgba(57,39,24,.72),rgba(20,15,10,.94));color:#eadfc9;text-align:left;cursor:pointer;overflow:hidden}
.archive-record-card:hover{border-color:#d5a75e;transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.28)}
.archive-record-image{display:block;overflow:hidden;background:radial-gradient(circle at 50% 34%,rgba(208,164,96,.16),rgba(8,7,5,.84) 72%)}
.archive-record-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.9) brightness(1.04);transition:transform .45s ease}
.archive-record-card.contain .archive-record-image img{object-fit:contain;padding:8px}
.archive-record-card:hover img{transform:scale(1.035)}
.archive-record-copy{display:block;padding:13px 14px 14px;border-top:1px solid rgba(220,177,108,.18)}
.archive-record-copy b{display:block;font-size:13px;font-weight:400;line-height:1.45}
.archive-record-copy small{display:block;margin-top:5px;color:#b3a48c;font-size:9px;line-height:1.5}
.archive-record-copy em{display:block;margin-top:10px;color:#dcb06b;font-size:9px;font-style:normal;letter-spacing:.08em}
.detail-dialog.archive-record{width:min(1120px,94vw);grid-template-columns:48% 1fr}
.detail-dialog.archive-record>img{object-fit:cover;min-height:650px;background:radial-gradient(circle at 50% 36%,rgba(206,161,94,.12),rgba(8,7,5,.9) 76%)}
.detail-dialog.archive-record>img.contain{object-fit:contain;padding:24px}
.archive-back{margin:0 0 20px;padding:8px 12px;border:1px solid rgba(220,177,108,.28);background:rgba(255,228,184,.035);color:#d9b679;cursor:pointer;font:inherit;font-size:10px}
.archive-back:hover{border-color:#d5a75e}
.archive-record-meta{display:grid;gap:10px;margin:0}
.archive-record-meta div{display:grid;grid-template-columns:100px 1fr;gap:12px;padding:11px 0;border-bottom:1px solid rgba(220,177,108,.15)}
.archive-record-meta dt{color:#a89473;font-size:10px}
.archive-record-meta dd{margin:0;color:#e0d2b9;font-size:11px;line-height:1.55}
.archive-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.archive-tags span{padding:6px 9px;border:1px solid rgba(220,177,108,.22);background:rgba(219,169,89,.055);color:#cdb78f;font-size:9px}
@media(max-width:980px){
  .detail-dialog.archive-browser{grid-template-columns:1fr}
  .detail-dialog.archive-browser>img{height:270px;min-height:0}
  .archive-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .detail-dialog.archive-record{grid-template-columns:42% 1fr}
}
@media(max-width:760px){
  .detail-dialog.archive-browser,.detail-dialog.archive-record{width:96vw}
  .detail-dialog.archive-browser>img,.detail-dialog.archive-record>img{height:300px;min-height:0}
  .archive-category-head{display:block}.archive-category-head p{text-align:left;margin-top:8px}
  .archive-record-grid{grid-template-columns:1fr 1fr;gap:9px}
  .archive-record-card{grid-template-rows:145px auto}
  .archive-record-copy{padding:10px}
  .archive-record-copy b{font-size:11px}
  .archive-record-meta div{grid-template-columns:82px 1fr}
}


/* V3.4 motion, inline video and archive sequential navigation */
.hero-blade{
  opacity:0;
  transform:translate3d(16vw,1.5vh,0) scale(1.035);
  transform-origin:bottom center;
  will-change:transform,opacity,filter;
  transition:transform 1.85s cubic-bezier(.16,.84,.22,1),opacity 1.15s ease,filter 1.5s ease;
  filter:drop-shadow(-30px 18px 38px rgba(0,0,0,.7)) saturate(.72) brightness(.82);
}
.site-entered .hero-blade{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
  filter:drop-shadow(-30px 18px 38px rgba(0,0,0,.7)) saturate(.9) brightness(1.02);
}
.site-entered .hero-bg{animation:hero-bg-breathe 8s ease-out both}
@keyframes hero-bg-breathe{from{transform:scale(1.075);filter:saturate(.68) contrast(1.08) brightness(.62)}to{transform:scale(1.03);filter:saturate(.78) contrast(1.06) brightness(.73)}}
.video-reset{position:absolute;z-index:4;right:12px;top:12px;display:flex;align-items:center;gap:10px;padding:8px 11px;border:1px solid rgba(222,185,120,.42);background:rgba(8,7,5,.82);color:#ead8b9;font:inherit;font-size:9px;cursor:pointer;backdrop-filter:blur(5px)}
.video-reset[hidden]{display:none}.video-reset b{font-size:18px;font-weight:400;line-height:1}.video-reset:hover{border-color:#dcb26f;background:rgba(35,24,14,.92)}
#youtube-player,#youtube-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.archive-record-nav{display:grid;grid-template-columns:minmax(115px,1fr) minmax(150px,1.4fr) minmax(115px,1fr);align-items:center;gap:12px;margin-top:25px;padding-top:18px;border-top:1px solid rgba(220,177,108,.18)}
.archive-record-nav button{min-height:48px;display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid rgba(220,177,108,.3);background:rgba(255,228,184,.035);color:#e2c28d;cursor:pointer;font:inherit;font-size:10px;letter-spacing:.04em}
.archive-record-nav button:hover{border-color:#d5a75e;background:rgba(213,167,94,.1)}
.archive-record-nav button span{font-size:17px}.archive-record-nav button b{font-weight:400}
.archive-record-nav p{margin:0;text-align:center!important;line-height:1.35!important}.archive-record-nav strong{display:block;color:#e5d5b8;font-size:11px;font-weight:400}.archive-record-nav small{display:block;margin-top:5px;color:#8f816b;font-size:8px}
@media(max-width:760px){
  .hero-blade{transform:translate3d(24vw,1vh,0) scale(1.025)}
  .archive-record-nav{grid-template-columns:1fr 1fr;gap:8px}.archive-record-nav p{grid-column:1/3;grid-row:1}.archive-record-nav button{min-height:44px}
  .video-reset span{display:none}.video-reset{width:38px;height:38px;justify-content:center;padding:0}
}
@media(prefers-reduced-motion:reduce){
  .hero-blade,.site-entered .hero-blade{opacity:1;transform:none;filter:drop-shadow(-30px 18px 38px rgba(0,0,0,.7)) saturate(.9) brightness(1.02)}
  .site-entered .hero-bg{animation:none}
}

/* V3.5 media, navigation and attribution refinements */
.video-shell>iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}
.video-local-warning{position:absolute;inset:0;z-index:5;display:grid;place-content:center;gap:10px;padding:34px;text-align:center;background:linear-gradient(145deg,rgba(18,13,9,.98),rgba(7,7,6,.98));color:#d8c6a5}
.video-local-warning[hidden]{display:none}.video-local-warning b{color:#d8ad68;letter-spacing:.18em;font-size:10px}.video-local-warning p{margin:0;font-size:13px;line-height:1.75}.video-local-warning span{font-size:10px;color:#a99a82;line-height:1.7}.video-local-warning a{justify-self:center;margin-top:5px;padding:9px 14px;border:1px solid rgba(220,177,108,.38);text-decoration:none;font-size:10px}
.socials svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}.socials .ig-dot{fill:currentColor;stroke:none}
.copyright-lines{display:grid;gap:5px;line-height:1.45}.copyright-lines span{display:block}
.collection-record .dialog-details{margin-top:18px}.collection-record-nav{margin-top:0;padding-top:0;border-top:0}
@media(max-width:760px){.video-local-warning{padding:22px}.copyright-lines{gap:7px}}


/* V3.6 readability and luminance pass */
:root{
  --bg:#100d09;
  --panel:#20170f;
  --panel2:#302116;
  --ink:#f6ead3;
  --muted:#d0bea1;
  --line:rgba(221,184,119,.38);
}
html{font-size:18px}
body{background:#0d0b08;color:var(--ink)}
body:before{background-color:#171109;filter:saturate(.72) brightness(.62)}
body:after{background:radial-gradient(circle at 50% 10%,transparent 0 25%,rgba(0,0,0,.32) 74%),linear-gradient(90deg,rgba(0,0,0,.1),transparent 12% 88%,rgba(0,0,0,.14))}
.noise{opacity:.13}
.topbar{background:linear-gradient(#17110c 0%,rgba(20,15,10,.9) 72%,transparent)}
.brand span{font-size:16px}.brand strong{font-size:18px}.brand small{font-size:12px}
.main-nav b{font-size:13px}.main-nav span{font-size:11px}.lang-switch button{font-size:12px}
.depth-rail,.section-rail a{font-size:11px}
.audio-dock b{font-size:14px}.audio-dock small{font-size:11px}.volume-dock label{font-size:11px}
.hero-bg{filter:saturate(.82) contrast(1.03) brightness(.82)}
.hero-vignette{background:linear-gradient(90deg,rgba(5,4,3,.26),rgba(4,4,3,0) 44%,rgba(4,4,3,.11)),linear-gradient(0deg,#0e0b08 0%,rgba(7,7,6,.03) 28%,rgba(0,0,0,.03) 76%,rgba(0,0,0,.25) 100%),radial-gradient(circle at 52% 48%,transparent 0 30%,rgba(0,0,0,.12) 76%)}
.hero-copy h1{font-size:clamp(60px,6.5vw,104px)}
.reborn{font-size:clamp(29px,3.5vw,55px)}
.hero-zh{font-size:clamp(19px,2vw,31px)}
.hero-copy blockquote{font-size:clamp(17px,1.35vw,22px);color:#f2e3c8}
.entry-card{background:rgba(34,24,15,.93)}
.entry-card>p{font-size:13px}.entry-card h2{font-size:15px}.entry-grid b{font-size:13px}.entry-grid span{font-size:12px}.entry-card>small{font-size:10px}
.section-shell{background:linear-gradient(110deg,rgba(46,31,20,.95),rgba(18,14,10,.86))}
.section-no{font-size:64px}.section-intro h2{font-size:36px}.section-zh{font-size:16px}.section-lead{font-size:15px;line-height:1.9;color:#d4c4a8}
.button{font-size:13px;padding:12px 18px}
.latest-card small,.latest-card b{font-size:11px}.latest-card h3{font-size:28px}.latest-card p{font-size:13px}
.world-card b,.character-card b,.archive-card b{font-size:15px}.world-card span,.character-card span,.archive-card span{font-size:12px}
.archive-card em{font-size:11px}
.media-note p,.bottom-panel span{font-size:14px}
.detail-dialog h2{font-size:34px}.detail-dialog p{font-size:15px;line-height:1.9}
.archive-category-head h3{font-size:16px}.archive-category-head p{font-size:13px!important}
.archive-record-copy b{font-size:16px}.archive-record-copy small{font-size:12px}.archive-record-copy em{font-size:11px}
.archive-record-meta dt{font-size:12px}.archive-record-meta dd{font-size:14px}.archive-tags span{font-size:11px}
.archive-record-nav button{font-size:12px}.archive-record-nav strong{font-size:13px}.archive-record-nav small{font-size:10px}
footer{font-size:13px;color:#c7b79b}
@keyframes hero-bg-breathe-v36{from{transform:scale(1.075);filter:saturate(.78) contrast(1.03) brightness(.73)}to{transform:scale(1.03);filter:saturate(.88) contrast(1.01) brightness(.86)}}
.site-entered .hero-bg{animation:hero-bg-breathe-v36 8s ease-out both}
.site-entered .hero-blade{filter:drop-shadow(-24px 18px 34px rgba(0,0,0,.55)) saturate(.96) brightness(1.09)}
@media(max-width:760px){
  html{font-size:17px}
  .brand span{font-size:12px}.brand strong{font-size:15px}.lang-switch button{font-size:10px}
  .hero-copy h1{font-size:50px}.reborn{font-size:27px}.hero-zh{font-size:18px}.hero-copy blockquote{font-size:15px}
  .section-no{font-size:50px}.section-intro h2{font-size:30px}.section-zh{font-size:14px}.section-lead{font-size:14px}
  .world-card b,.character-card b,.archive-card b{font-size:14px}.world-card span,.character-card span,.archive-card span{font-size:11px}
  .detail-dialog h2{font-size:30px}.detail-dialog p{font-size:14px}
}


/* V3.7 alignment, highlighted Hero copy and reliable default-audio intent */
.section-shell{grid-template-columns:430px minmax(0,1fr)}
.story-section{grid-template-columns:430px minmax(0,1fr) 340px}
.media-section{grid-template-columns:430px minmax(0,1fr) 320px}
.section-intro,.section-intro.compact{
  grid-template-columns:92px minmax(0,1fr);
  column-gap:14px;
  padding:36px 32px 34px 40px;
}
.section-intro>div{min-width:0;align-self:start}
.section-no{font-size:60px;line-height:.92;grid-row:1;white-space:nowrap;align-self:start}
.section-intro h2{font-size:clamp(30px,2.25vw,36px);line-height:1.02;letter-spacing:.045em;white-space:nowrap}
.section-zh{font-size:16px}
.section-lead{grid-column:2;margin-top:21px;font-size:15px;line-height:1.92}
.section-intro>.button{grid-column:2}
.bottom-panel{grid-template-columns:86px minmax(0,1fr);gap:16px}
.bottom-panel>div{min-width:0}
.bottom-panel .section-no{font-size:52px}

.hero-copy blockquote{font-size:clamp(17px,1.25vw,21px);line-height:2.25;max-width:760px}
.hero-key{
  display:inline-block;
  color:#d94a45;
  font-size:1.68em;
  line-height:.82;
  font-weight:600;
  letter-spacing:.09em;
  text-shadow:0 0 18px rgba(180,34,31,.34),0 3px 18px rgba(0,0,0,.88);
  transform:translateY(.08em);
}
.entry-sound-default{position:relative;border-color:rgba(220,71,63,.78)!important;background:linear-gradient(145deg,rgba(120,31,27,.34),rgba(35,19,13,.5))!important;box-shadow:inset 0 0 22px rgba(178,42,36,.12)}
.entry-sound-default:before{content:"BGM DEFAULT";position:absolute;left:50%;top:7px;transform:translateX(-50%);color:#e46b61;font-size:8px;letter-spacing:.16em;white-space:nowrap}
.entry-sound-default:hover{background:linear-gradient(145deg,rgba(145,38,31,.46),rgba(46,23,14,.58))!important}

@media(max-width:1180px){
  .section-shell{grid-template-columns:390px minmax(0,1fr)}
  .story-section{grid-template-columns:390px minmax(0,1fr) 300px}
  .media-section{grid-template-columns:390px minmax(0,1fr)}
  .section-intro,.section-intro.compact{grid-template-columns:82px minmax(0,1fr);padding-left:34px;padding-right:26px}
  .section-no{font-size:54px}
  .section-intro h2{font-size:clamp(28px,2.5vw,33px)}
}
@media(max-width:760px){
  .section-shell,.story-section,.media-section{grid-template-columns:1fr}
  .section-intro,.section-intro.compact{grid-template-columns:64px minmax(0,1fr);column-gap:12px;padding:27px 20px}
  .section-no{font-size:45px}
  .section-intro h2{font-size:clamp(24px,7.2vw,30px);white-space:normal;overflow-wrap:anywhere;line-height:1.05}
  .section-lead,.section-intro>.button{grid-column:1/3}
  .hero-copy blockquote{font-size:14px;line-height:2.18;padding-left:9px;padding-right:9px}
  .hero-key{font-size:1.62em;letter-spacing:.055em}
  .bottom-panel{grid-template-columns:68px minmax(0,1fr);padding-left:22px;padding-right:22px}
  .bottom-panel .section-no{font-size:44px}
}


/* V3.8 reliable loop, dimensional title treatment and Hero parallax depth */
.hero-copy{
  perspective:900px;
}
.hero-copy .eyebrow,
.hero-copy h1,
.hero-copy .reborn,
.hero-copy .hero-zh{
  -webkit-font-smoothing:antialiased;
  paint-order:stroke fill;
}
.hero-copy h1{
  -webkit-text-stroke:.8px rgba(0,0,0,.96);
  text-shadow:
    0 1px 0 rgba(226,211,184,.22),
    0 2px 0 #241b13,
    0 3px 0 #0b0907,
    0 5px 9px rgba(0,0,0,.92),
    0 13px 28px rgba(0,0,0,.72);
  transform:rotateX(2deg) translateZ(8px);
  transform-origin:center bottom;
  letter-spacing:.025em;
}
.hero-copy .reborn{
  -webkit-text-stroke:.65px rgba(0,0,0,.98);
  text-shadow:
    0 1px 0 rgba(255,174,149,.28),
    0 2px 0 #461713,
    0 3px 0 #130807,
    0 5px 10px rgba(0,0,0,.94),
    0 12px 24px rgba(0,0,0,.66);
  transform:translateZ(6px);
}
.hero-copy .hero-zh{
  -webkit-text-stroke:.55px rgba(0,0,0,.92);
  text-shadow:
    0 1px 0 rgba(255,241,213,.25),
    0 2px 0 #17120d,
    0 4px 8px rgba(0,0,0,.9),
    0 10px 20px rgba(0,0,0,.58);
  transform:translateZ(4px);
}
.hero-bg{
  animation:none!important;
  transform-origin:52% 48%;
  transform:translate3d(-1.5%,0,0) scale(1.015);
  will-change:transform,filter;
  transition:
    transform 3.4s cubic-bezier(.16,.82,.22,1),
    filter 3s ease;
}
.site-entered .hero-bg{
  animation:none!important;
  transform:translate3d(0,0,0) scale(1.095);
  filter:saturate(.9) contrast(1.04) brightness(.87);
}
.site-entered .hero-blade{
  transition-duration:2.25s,1.35s,1.8s;
}
@media(max-width:760px){
  .hero-copy h1{-webkit-text-stroke:.65px rgba(0,0,0,.96)}
  .hero-copy .reborn{-webkit-text-stroke:.55px rgba(0,0,0,.98)}
  .hero-copy .hero-zh{-webkit-text-stroke:.45px rgba(0,0,0,.92)}
  .hero-bg{transform:translate3d(-2%,0,0) scale(1.02)}
  .site-entered .hero-bg{transform:translate3d(0,0,0) scale(1.075)}
}
@media(prefers-reduced-motion:reduce){
  .hero-bg,.site-entered .hero-bg{transition:none;transform:scale(1.03);animation:none!important}
  .hero-copy h1,.hero-copy .reborn,.hero-copy .hero-zh{transform:none}
}


/* V3.9 immediate entry, stable crossfade, stronger logo volume and language controls */
.entry-card.bgm-panel{
  opacity:1!important;
  transform:none!important;
  pointer-events:auto!important;
  background:linear-gradient(145deg,rgba(44,30,18,.94),rgba(19,14,10,.94));
}
.entry-card.bgm-panel .entry-grid button{
  transition:background .25s,border-color .25s,color .25s,box-shadow .25s;
}
.entry-card.bgm-panel .entry-grid button.is-active{
  color:#f4dfbd;
  border-color:rgba(186,52,43,.88);
  background:linear-gradient(145deg,rgba(128,32,27,.3),rgba(70,25,20,.18));
  box-shadow:inset 0 0 20px rgba(177,47,38,.12),0 0 16px rgba(142,39,33,.12);
}
.entry-card.bgm-panel .entry-grid button.is-active em{color:#c94c43}

.hero-copy .eyebrow,
.hero-copy h1,
.hero-copy .reborn,
.hero-copy .hero-zh{
  position:relative;
  display:block;
  paint-order:stroke fill;
  filter:drop-shadow(0 11px 12px rgba(0,0,0,.48));
}
.hero-copy .eyebrow{
  font-size:clamp(21px,1.9vw,30px);
  letter-spacing:.22em;
  color:#e7d7bb;
  -webkit-text-stroke:.65px #080705;
  text-shadow:1px 1px 0 #695947,2px 2px 0 #31291f,3px 3px 0 #090806,0 8px 15px rgba(0,0,0,.72);
  transform:translateZ(7px) rotateX(2deg);
}
.hero-copy h1{
  color:#eadcc4;
  background:linear-gradient(180deg,#fff3dc 3%,#d6c5a7 48%,#9f8f75 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  -webkit-text-stroke:1px rgba(5,4,3,.98);
  text-shadow:
    1px 1px 0 #80705b,
    2px 2px 0 #5f5141,
    3px 3px 0 #392f25,
    4px 4px 0 #17120e,
    5px 5px 0 #070605,
    0 12px 22px rgba(0,0,0,.74);
  transform:perspective(850px) rotateX(3deg) translateZ(10px);
}
.hero-copy .reborn{
  background:linear-gradient(180deg,#d75d51 2%,#a52d2a 48%,#641a18 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  -webkit-text-stroke:.85px rgba(4,3,3,.98);
  text-shadow:1px 1px 0 #7f2c28,2px 2px 0 #4b1715,3px 3px 0 #170807,4px 4px 0 #050303,0 11px 20px rgba(0,0,0,.7);
  transform:perspective(850px) rotateX(2deg) translateZ(8px);
}
.hero-copy .hero-zh{
  color:#e3d4bb;
  -webkit-text-stroke:.7px rgba(4,3,3,.96);
  text-shadow:1px 1px 0 #71624e,2px 2px 0 #33291f,3px 3px 0 #090705,0 9px 18px rgba(0,0,0,.68);
  transform:translateZ(5px);
}

.topbar{grid-template-columns:220px 1fr 250px}
.lang-switch{
  gap:8px;
  padding:4px;
  border:1px solid rgba(188,151,94,.3);
  background:rgba(18,14,10,.58);
  box-shadow:inset 0 0 18px rgba(189,153,96,.05);
}
.lang-switch button{
  min-width:54px;
  padding:9px 11px;
  font-size:14px!important;
  letter-spacing:.08em;
  border:1px solid transparent;
  color:#c0b394;
  transition:.2s ease;
}
.lang-switch button:hover{
  color:#f2e3c6;
  border-color:rgba(189,153,96,.34);
  background:rgba(189,153,96,.08);
}
.lang-switch button.active{
  color:#fff0d1;
  border-color:rgba(193,153,91,.6);
  background:linear-gradient(180deg,rgba(154,113,61,.22),rgba(67,45,24,.2));
  box-shadow:inset 0 0 12px rgba(205,163,95,.1),0 0 10px rgba(0,0,0,.28);
}
.lang-switch i{height:20px;background:rgba(189,153,96,.32)}

@media(max-width:1180px){
  .topbar{grid-template-columns:190px auto minmax(220px,1fr)}
  .lang-switch button{min-width:48px;font-size:13px!important;padding:8px 8px}
}
@media(max-width:760px){
  .topbar{grid-template-columns:minmax(100px,1fr) auto auto;gap:7px;padding-left:12px;padding-right:12px}
  .lang-switch{gap:2px;padding:2px}
  .lang-switch button{min-width:38px;font-size:10px!important;padding:7px 4px;letter-spacing:0}
  .lang-switch i{height:16px}
  .hero-copy .eyebrow{font-size:18px}
  .hero-copy h1{-webkit-text-stroke:.75px rgba(5,4,3,.98);text-shadow:1px 1px 0 #6b5c49,2px 2px 0 #33291f,3px 3px 0 #090705,0 9px 16px rgba(0,0,0,.7)}
  .entry-card.bgm-panel{bottom:68px}
}
@media(prefers-reduced-motion:reduce){
  .hero-copy .eyebrow,.hero-copy h1,.hero-copy .reborn,.hero-copy .hero-zh{transform:none}
}


/* V3.10 sample-accurate audio, brighter dimensional logo, and smoother Hero depth */
.hero-copy h1,.hero-copy .reborn{isolation:isolate;overflow:visible}
.hero-copy h1::before,.hero-copy .reborn::before{
  content:attr(data-text);
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  transform:translate3d(3px,4px,-1px);
  -webkit-text-stroke:1.2px #050403;
  text-shadow:0 7px 12px rgba(0,0,0,.72);
}
.hero-copy h1{
  color:#f7ead2;
  background:linear-gradient(180deg,#fffaf0 0%,#f0dfc2 36%,#c8ad82 72%,#9a7d55 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  -webkit-text-stroke:.85px rgba(5,4,3,.98);
  filter:brightness(1.18) drop-shadow(0 2px 0 rgba(255,247,224,.2));
  text-shadow:0 1px 0 rgba(255,255,255,.38),0 3px 0 #6d5b43,0 5px 0 #2a2118,0 8px 1px #070504,0 16px 26px rgba(0,0,0,.7);
}
.hero-copy h1::before{color:#66553d;-webkit-text-fill-color:#66553d}
.hero-copy .reborn{
  color:#e75e50;
  background:linear-gradient(180deg,#ff9585 0%,#dc5045 38%,#a72825 72%,#681512 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  -webkit-text-stroke:.8px rgba(4,3,3,.98);
  filter:brightness(1.18) drop-shadow(0 2px 0 rgba(255,179,160,.18));
  text-shadow:0 1px 0 rgba(255,207,194,.38),0 3px 0 #7f2a24,0 5px 0 #3d1110,0 8px 1px #070303,0 15px 24px rgba(0,0,0,.66);
}
.hero-copy .reborn::before{color:#551713;-webkit-text-fill-color:#551713}
.hero-copy .hero-zh{color:#f0dfc2;-webkit-text-stroke:.65px rgba(4,3,3,.96);filter:brightness(1.12)}

.hero-blade-stage{
  position:absolute;z-index:2;right:14%;bottom:0;
  width:min(48vw,780px);height:min(92vh,960px);
  opacity:0;
  transform:translate3d(10vw,.4vh,0) scale(1.018);
  transform-origin:bottom center;
  will-change:transform,opacity;
  backface-visibility:hidden;
  contain:layout paint;
  transition:transform 3.8s cubic-bezier(.18,.76,.2,1),opacity 1.65s ease-out;
}
.hero-blade-stage .hero-blade{
  position:static;width:100%;height:100%;max-width:none;object-fit:contain;object-position:bottom;
  opacity:1;transform:none;transition:none!important;will-change:auto;
  filter:drop-shadow(-22px 16px 30px rgba(0,0,0,.58)) saturate(.96) brightness(1.07);
}
.site-entered .hero-blade-stage{opacity:1;transform:translate3d(0,0,0) scale(1)}
.hero-bg{
  animation:none!important;
  transform:translate3d(-1.2%,0,0) scale(1.025);
  transform-origin:53% 48%;
  filter:saturate(.9) contrast(1.03) brightness(.85)!important;
  will-change:transform;
  backface-visibility:hidden;
  transition:transform 6.2s cubic-bezier(.18,.72,.18,1)!important;
}
.site-entered .hero-bg{animation:none!important;transform:translate3d(.4%,0,0) scale(1.085);filter:saturate(.9) contrast(1.03) brightness(.85)!important}
@media(max-width:760px){
  .hero-blade-stage{right:-13%;width:75vw;height:70%;transform:translate3d(16vw,.4vh,0) scale(1.012);transition-duration:3.2s,1.4s}
  .site-entered .hero-blade-stage{transform:translate3d(0,0,0) scale(1)}
  .hero-copy h1{filter:brightness(1.16);text-shadow:0 1px 0 rgba(255,255,255,.32),0 2px 0 #6d5b43,0 4px 0 #2a2118,0 7px 1px #070504,0 12px 20px rgba(0,0,0,.68)}
}
@media(prefers-reduced-motion:reduce){
  .hero-blade-stage,.site-entered .hero-blade-stage{opacity:1;transform:none;transition:none}
  .hero-bg,.site-entered .hero-bg{transform:scale(1.04);transition:none!important}
}

/* V1.0.2 production hotfix: deterministic MEDIA audio handoff and mobile detail navigation */
.video-launch{
  position:absolute;inset:0;z-index:4;padding:0;border:0;background:#090806;color:#f2e3c8;cursor:pointer;overflow:hidden;
}
.video-launch[hidden],.video-stop[hidden]{display:none!important}
.video-launch>img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) brightness(.82);transition:transform .7s ease,filter .45s ease}
.video-launch:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.76),rgba(0,0,0,.05) 62%),radial-gradient(circle at 50% 50%,transparent 0 18%,rgba(0,0,0,.18) 70%)}
.video-launch:hover>img{transform:scale(1.025);filter:saturate(.94) brightness(.92)}
.video-launch .play{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:72px;height:72px;border-radius:50%;display:grid;place-items:center;padding-left:5px;border:1px solid rgba(246,222,179,.72);background:rgba(7,6,5,.72);font-size:25px;box-shadow:0 14px 42px rgba(0,0,0,.48)}
.video-launch small{position:absolute;z-index:2;left:20px;right:20px;bottom:18px;display:flex;justify-content:space-between;align-items:end;gap:20px;text-align:left;color:#d8c6a6;font-size:11px;line-height:1.5}
.video-launch small b{color:#f0cf93;font-weight:400;letter-spacing:.14em}.video-launch small span{color:#c3b397;text-align:right}
.video-stop{position:absolute;z-index:6;right:12px;top:12px;display:flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid rgba(222,185,120,.48);background:rgba(8,7,5,.88);color:#ead8b9;font:inherit;font-size:11px;cursor:pointer;backdrop-filter:blur(5px)}
.video-stop:hover{border-color:#dcb26f;background:rgba(35,24,14,.94)}
#youtube-player,#youtube-player iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}
.dialog-step{display:none}

@media(max-width:760px){
  .video-launch .play{width:62px;height:62px;font-size:21px}
  .video-launch small{left:14px;right:14px;bottom:13px;font-size:10px}.video-launch small span{max-width:52%}
  .video-stop{right:8px;top:8px;padding:7px 9px}.video-stop span{display:none}

  .detail-dialog,
  .detail-dialog.archive-browser,
  .detail-dialog.archive-record,
  .detail-dialog.collection-record{
    width:calc(100vw - 12px)!important;
    max-width:none!important;
    max-height:calc(100dvh - 12px)!important;
    height:auto!important;
    margin:auto!important;
    padding:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    border-radius:0;
  }
  .detail-dialog[open],
  .detail-dialog.archive-browser[open],
  .detail-dialog.archive-record[open],
  .detail-dialog.collection-record[open]{display:block!important}
  .detail-dialog>img,
  .detail-dialog.archive-browser>img,
  .detail-dialog.archive-record>img{
    display:block;
    width:100%;
    height:min(38dvh,300px)!important;
    min-height:0!important;
    object-fit:cover;
  }
  .detail-dialog.archive-record>img.contain{object-fit:contain!important;padding:10px!important}
  .detail-dialog .dialog-content{
    display:flex;
    flex-direction:column;
    max-height:none!important;
    min-height:0!important;
    overflow:visible!important;
    padding:28px 22px calc(88px + env(safe-area-inset-bottom))!important;
  }
  .detail-dialog .dialog-details{overflow:visible!important;min-height:0}
  .dialog-close{position:fixed;right:12px;top:12px;z-index:1003;width:42px;height:42px;background:rgba(10,9,7,.94)}
  .dialog-step:not([hidden]){
    position:fixed;
    z-index:1002;
    top:50%;
    width:46px;
    height:58px;
    display:grid;
    place-items:center;
    border:1px solid rgba(222,185,120,.46);
    background:rgba(8,7,5,.82);
    color:#f0d49e;
    font:400 38px/1 Georgia,serif;
    cursor:pointer;
    backdrop-filter:blur(6px);
    box-shadow:0 10px 28px rgba(0,0,0,.35);
  }
  .dialog-step-prev{left:8px}.dialog-step-next{right:8px}
  .archive-record-nav{margin-left:0;margin-right:0;padding-bottom:4px}
  .archive-record-grid{padding-bottom:24px}
}
