@charset "UTF-8";
:root{color-scheme:dark;--bg:#0a171e;--ink:#eee8d9;--muted:#adb9bd;--gold:#dfc28a;--line:#c8b38038;--serif:"Noto Serif TC","PMingLiU","Songti TC",serif;--sans:"Microsoft JhengHei","Noto Sans TC",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.9 var(--sans)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{max-width:100%;display:block}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.section{padding-block:110px;scroll-margin-top:70px}.eyebrow{font:10px/1.6 var(--sans);letter-spacing:.27em;color:var(--gold);margin:0 0 24px}.fine{font-size:12px!important;line-height:1.9!important;color:#83959d!important}h1,h2,h3,p,figure{margin-top:0}h2{font:400 clamp(30px,3.3vw,46px)/1.5 var(--serif);letter-spacing:.035em;margin-bottom:30px}h2 em{font-style:normal;color:var(--gold)}.lead{font-family:var(--serif);font-size:23px;line-height:1.9;color:var(--ink)}.skip{position:fixed;top:-100px;left:20px;z-index:30;background:var(--gold);color:#09171e;padding:12px}.skip:focus{top:12px}.masthead{height:86px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;left:0;width:100%;z-index:5;border-bottom:1px solid #ffffff16}.brand{display:flex;align-items:center;gap:12px;font:17px var(--serif);letter-spacing:.15em}.brand small{display:block;font:8px/2 var(--sans);letter-spacing:.17em;color:var(--gold)}.masthead nav{display:flex;align-items:center;gap:30px;font-size:12px}.nav-action{border:1px solid var(--line);padding:9px 18px;color:var(--gold)}.cover{position:relative;min-height:760px;height:100svh;max-height:1060px;isolation:isolate;overflow:hidden}.cover-art{position:absolute;width:100%;height:100%;object-fit:cover;object-position:64% center;z-index:-3}.cover-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#06111fdd 0%,#08162099 32%,#0816200a 70%),linear-gradient(0deg,var(--bg) 1%,transparent 24%,#08162033 80%)}.cover-copy{height:100%;min-height:inherit;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-block:150px}.cover-copy .eyebrow{margin-bottom:20px}.edition{font:15px var(--serif);letter-spacing:.28em;color:#d8d4c8;margin-bottom:14px}.cover h1{font:400 clamp(64px,6.7vw,100px)/1.2 var(--serif);letter-spacing:.08em;color:#f4e8ce;margin:0 0 12px;text-shadow:0 4px 40px #020609}.cover-tagline{font:23px/1.8 var(--serif);letter-spacing:.13em;color:var(--gold);margin-bottom:26px}.cover-intro{font-size:15px;line-height:2.1;letter-spacing:.04em;color:#d0d7d6;margin-bottom:32px}.button{display:inline-flex;gap:30px;align-items:center;justify-content:space-between;padding:14px 25px;min-height:54px;background:linear-gradient(110deg,#f0dab0,#c9a66c);border:1px solid #e5c68e;color:#111d22;font-size:14px;transition:filter .2s,transform .2s}.button:hover{filter:brightness(1.13);transform:translateY(-2px)}.cover-bottom{position:absolute;left:0;right:0;bottom:32px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.2em;color:#d1c6ad}.cover-bottom span:nth-child(2){color:#a8b7bd}.mobile-break{display:none}.chapter-nav{position:sticky;top:0;z-index:8;display:flex;justify-content:center;gap:42px;padding:17px 20px;background:#0a171ef5;border-block:1px solid var(--line);backdrop-filter:blur(14px);font-size:12px;letter-spacing:.05em}.chapter-nav a:hover{color:var(--gold)}.story-split{display:grid;grid-template-columns:1fr 1.05fr;gap:85px;align-items:center}.chapter-heading{margin-bottom:50px}.memory-figure{margin:0}.memory-figure img{width:100%;border:1px solid var(--line);box-shadow:0 25px 60px #0003}.memory-figure figcaption{display:flex;gap:18px;font-size:11px;letter-spacing:.1em;color:var(--muted);margin-top:18px}.memory-figure figcaption span{color:var(--gold);font-family:Georgia,serif}.prose p{color:var(--muted);margin-bottom:20px;font-size:15px}.prose .lead{color:var(--ink);font-size:23px}.text-link{display:inline-flex;justify-content:space-between;gap:30px;padding-block:13px;border-bottom:1px solid var(--line);color:var(--gold);font-size:13px}.elements{background:#e4dece;color:#26312f}.elements .eyebrow{color:#7c6131}.elements h2 em{color:#79613a}.section-row{display:flex;gap:50px;align-items:flex-end;justify-content:space-between;margin-bottom:42px}.section-row h2{margin-bottom:0}.section-row>p{font-size:14px;line-height:2;color:var(--muted);margin:0}.elements .section-row>p{color:#65706c}.element-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.element-grid article{min-width:0}.element-grid img{width:100%;aspect-ratio:1;object-fit:contain}.element-grid article>div{position:relative;padding-top:30px}.element-symbol{position:absolute;right:0;top:18px;font:44px var(--serif);color:#7d684328}.element-grid small{font-size:9px;letter-spacing:.09em;color:#75633f}.element-grid h3{font:22px/1.5 var(--serif);margin-block:13px}.element-grid p{font-size:13px;line-height:1.95;color:#5f6860}.mirror{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center}.mirror h2{font-size:clamp(28px,2.6vw,38px)}.mirror-copy>p{font-size:15px;color:var(--muted)}.mirror-copy>.lead{color:var(--ink);font-size:22px}.mirror blockquote{font:24px/1.8 var(--serif);color:var(--gold);margin:32px 0;border-left:1px solid var(--gold);padding-left:24px}.mirror-image{margin:0;transform:rotate(2deg)}.mirror-image img{width:100%;border:1px solid var(--line);box-shadow:0 20px 80px #0005}.mirror-image figcaption{text-align:center;font-size:12px;margin-top:20px;color:var(--muted)}.companions{background:radial-gradient(ellipse at 72% 55%,#1e343d,#101f28 65%);border-block:1px solid var(--line)}.character-stage{display:grid;grid-template-columns:210px 1fr;min-height:470px;gap:36px}.character-tabs{display:flex;flex-direction:column;justify-content:space-between;gap:7px}.character-tabs button{border:1px solid transparent;background:transparent;text-align:left;padding:10px 17px;color:#a3b5bd;font-size:14px;letter-spacing:.1em}.character-tabs button span{font:10px Georgia,serif;margin-right:18px;opacity:.55}.character-tabs button[aria-selected=true]{color:var(--gold);background:#d7b9770a;border-color:var(--line);border-left-color:var(--gold)}.character-panel{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;height:100%}.character-panel[hidden]{display:none}.portrait{height:460px;width:100%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 15px 28px #0004)}.character-copy h3{font:40px/1.3 var(--serif);margin-bottom:10px}.character-role{color:var(--gold);font-size:12px;letter-spacing:.15em}.character-copy>p:not(.character-role){font-size:15px;color:var(--muted)}.character-motif{border-top:1px solid var(--line);padding-top:20px;margin-top:24px;font:17px/1.8 var(--serif)!important;color:#dbcdb0!important}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.gallery button{display:block;border:0;padding:0;background:none;width:100%;text-align:left}.gallery img{width:100%;transition:filter .3s,transform .3s}.gallery button:hover img{filter:brightness(1.12);transform:translateY(-4px)}.gallery span{display:flex;justify-content:space-between;margin-top:12px;font-size:13px;color:#bbbec0}.gallery small{color:var(--gold);font:11px Georgia,serif}.journey-numbers{display:grid;grid-template-columns:repeat(4,1fr);margin-top:70px;padding-top:40px;border-top:1px solid var(--line)}.journey-numbers div{text-align:center;border-right:1px solid var(--line)}.journey-numbers div:last-child{border:0}.journey-numbers strong{display:block;font:44px/1.4 Georgia,serif;color:var(--gold);font-weight:400}.journey-numbers span{font-size:12px;color:var(--muted);letter-spacing:.12em}.begin{background:linear-gradient(#101f29e8,#0a171ef5),url('/assets/g23s1/hero.webp') center 40%/cover;border-top:1px solid var(--line);text-align:center}.begin h2{font-size:clamp(40px,4.5vw,62px)}.begin-inner>p:not(.eyebrow){color:var(--muted);font-size:15px;line-height:2.2}.actions{display:flex;justify-content:center;gap:18px;margin-block:30px}.outline{background:transparent;color:var(--gold);border-color:var(--line)}.footer{padding-block:38px;display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap}.footer>p{font:14px var(--serif);color:var(--muted);margin:0}.footer>a:last-of-type{font-size:12px;color:var(--gold)}.art-credit{flex-basis:100%;font-size:10px;color:#758890;letter-spacing:.03em;border-top:1px solid #ffffff0b;padding-top:18px;margin-top:8px}.lightbox{background:#0b1822;border:1px solid var(--line);padding:32px;color:var(--ink);max-width:min(660px,94vw);max-height:94svh}.lightbox::backdrop{background:#03080de8;backdrop-filter:blur(8px)}.lightbox figure{margin:0}.lightbox img{max-height:70svh;object-fit:contain;width:100%;height:auto}.lightbox figcaption{text-align:center;font-size:14px;margin:12px 0}.lightbox button{background:transparent;border:1px solid var(--line);padding:6px 12px;font-size:12px}.lightbox-close{position:absolute;top:4px;right:6px;border:0!important;font-size:24px!important}.lightbox-controls{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;color:var(--gold)}
@media(min-width:1700px){.cover-copy{width:calc(100% - 160px);max-width:1520px}}
@media(max-width:1050px){.wrap{width:calc(100% - 60px)}.chapter-nav{gap:25px}.story-split,.mirror{gap:38px}.element-grid{gap:16px}.element-grid h3{font-size:19px}.character-stage{grid-template-columns:165px 1fr;gap:20px}.character-panel{gap:10px}.portrait{height:400px}.character-copy h3{font-size:32px}.section-row{gap:28px}}
@media(max-width:760px){html{scroll-padding-top:68px}.wrap{width:calc(100% - 40px)}.section{padding-block:72px}.masthead{height:68px;padding-inline:20px}.brand{font-size:15px;gap:8px}.brand img{width:30px;height:30px}.masthead nav{gap:12px}.masthead nav>a:first-child{display:none}.nav-action{padding:7px 10px;font-size:11px}.cover{height:auto;min-height:810px;max-height:none;padding-top:clamp(240px,57vw,430px)}.cover-art{top:68px;height:auto;aspect-ratio:1672/941;object-fit:contain;object-position:center}.cover-shade{background:linear-gradient(0deg,var(--bg) 0%,var(--bg) 49%,#0a171e00 72%)}.cover-copy{min-height:0;padding-block:65px 110px;align-items:center;text-align:center}.cover h1{font-size:clamp(52px,12vw,78px)}.cover-tagline{font-size:19px;letter-spacing:.06em}.cover-copy .eyebrow{font-size:9px;margin-bottom:14px}.cover-intro{font-size:14px}.edition{font-size:12px}.cover-bottom{bottom:24px;font-size:8px}.cover-bottom span:nth-child(2){display:none}.chapter-nav{justify-content:flex-start;gap:25px;overflow-x:auto;white-space:nowrap;font-size:11px;padding:15px 20px;scrollbar-width:none}.story-split,.mirror{grid-template-columns:1fr;gap:38px}.memory-figure{max-width:440px}.chapter-heading{margin-bottom:30px}.prose .lead{font-size:21px}.section-row{display:block}.section-row>p{margin-top:20px;font-size:13px}.element-grid{grid-template-columns:repeat(2,1fr);gap:25px 16px}.element-grid h3{font-size:20px}.element-grid p{font-size:13px}.element-grid article>div{padding-top:22px}.element-grid small{font-size:8px}.mirror-image{width:90%;margin:auto;max-width:460px;order:-1}.mirror h2{font-size:28px}.character-stage{grid-template-columns:1fr;gap:22px;min-height:0}.character-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.character-tabs button{padding:10px 3px;text-align:center;font-size:12px;letter-spacing:0}.character-tabs button span{display:none}.character-panel{grid-template-columns:1fr;gap:20px}.portrait{height:340px;max-width:390px;margin:auto}.character-copy{text-align:center;max-width:480px;margin:auto}.character-copy h3{font-size:32px}.character-motif{padding-top:17px;margin-bottom:0}.gallery{grid-template-columns:repeat(2,1fr);gap:24px 15px}.gallery span{font-size:11px}.journey-numbers{margin-top:45px;gap:25px 0;grid-template-columns:repeat(2,1fr)}.journey-numbers div:nth-child(2){border:0}.journey-numbers strong{font-size:38px}.begin h2{font-size:40px}.begin-inner>p:not(.eyebrow){font-size:14px}.actions{flex-direction:column;align-items:stretch;max-width:360px;margin-inline:auto}.footer{padding-block:30px}.footer>p{display:none}.footer .brand{display:block}.lightbox{padding:30px 16px 18px}.lightbox-controls{gap:10px}.lightbox-controls button{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
