:root{--ink:#172d36;--night:#0b1e27;--paper:#f4f0e9;--sand:#dab58b;--line:rgba(23,45,54,.18);--muted:#66777a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans","Noto Serif TC","Noto Serif SC",serif}a{color:inherit}.shell{width:min(1180px,calc(100% - 48px));margin:0 auto}.topbar{position:absolute;inset:0 0 auto;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px 0;color:#fff;font-size:12px;letter-spacing:.08em}.brand{font-weight:600;text-decoration:none;white-space:nowrap}.top-actions{display:flex;align-items:center;gap:18px}.top-link{padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.55);text-decoration:none;white-space:nowrap}.language-links{display:flex;gap:5px}.language-links a{min-width:30px;padding:5px 7px;border:1px solid rgba(255,255,255,.36);border-radius:99px;color:rgba(255,255,255,.85);text-align:center;text-decoration:none;font:500 10px/1 "DM Mono",monospace}.language-links a[aria-current="page"]{border-color:#fff7df;background:#fff7df;color:#18313a}.hero{position:relative;display:flex;align-items:flex-end;min-height:630px;padding:150px 0 62px;overflow:hidden;background:#173a45 url("/manus-storage/luosi-chang-bluehour-private_a2f45ce1.png") center/cover no-repeat;color:#fff}.hero:before{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,22,29,.86),rgba(7,22,29,.38) 55%,rgba(7,22,29,.12));content:""}.hero-copy{position:relative;max-width:720px}.eyebrow{display:flex;align-items:center;gap:11px;color:var(--sand);font:11px/1 "DM Mono",monospace;letter-spacing:.13em;text-transform:uppercase}.eyebrow:before{width:40px;height:1px;background:currentColor;content:""}h1,h2,h3,p{margin-top:0}h1{margin:19px 0 18px;font-family:"Noto Serif TC","Noto Serif SC",serif;font-size:clamp(55px,8vw,108px);font-weight:500;letter-spacing:-.07em;line-height:.98}.lede{max-width:590px;color:rgba(255,255,255,.9);font-size:clamp(17px,2.2vw,22px);line-height:1.8}.hero-meta{display:flex;flex-wrap:wrap;gap:13px;margin-top:30px;font-size:13px}.hero-meta span{padding:8px 11px;border:1px solid rgba(255,255,255,.4);border-radius:999px;background:rgba(10,30,39,.22)}main{padding:92px 0 0}.intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:clamp(32px,7vw,104px);align-items:start;margin-bottom:92px}h2{font-family:"Noto Serif TC","Noto Serif SC",serif;font-size:clamp(34px,5vw,60px);font-weight:500;letter-spacing:-.055em;line-height:1.12}.intro p,.story p{color:#40555a;font-size:16px;line-height:1.9}.margin-note{padding:22px 0 0 24px;border-left:1px solid var(--sand);color:#56676a;font-size:14px;line-height:1.8}.margin-note strong{display:block;margin-bottom:8px;color:var(--ink);font-family:"Noto Serif TC","Noto Serif SC",serif;font-size:18px;font-weight:500}.story{display:grid;grid-template-columns:152px minmax(0,1fr);gap:clamp(32px,6vw,92px);max-width:960px;margin:0 auto 94px}.story-index{padding-top:8px;color:#a67d54;font:12px/1 "DM Mono",monospace;letter-spacing:.12em}.story h2{margin-bottom:22px}.quote{margin:30px 0!important;padding-left:22px;border-left:2px solid var(--sand);color:var(--ink)!important;font-family:"Noto Serif TC","Noto Serif SC",serif;font-size:clamp(22px,3vw,31px)!important;line-height:1.58!important}.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;margin:0 0 104px}figure{margin:0}.card{position:relative;overflow:hidden;background:#e9e3d9}.card.is-zoomable{cursor:zoom-in;outline:none}.card.is-zoomable:focus-visible{outline:2px solid #18313a;outline-offset:4px}.card img{display:block;width:100%;height:100%;min-height:280px;object-fit:cover;transition:transform .6s cubic-bezier(.23,1,.32,1)}.card:hover img,.card:focus-visible img{transform:scale(1.025)}.card figcaption{padding:14px 15px 16px;background:#fffdf9}.card b{display:block;margin-bottom:5px;font-family:"Noto Serif TC","Noto Serif SC",serif;font-size:18px;font-weight:500}.card span{display:block;color:#6b7775;font-size:12px;line-height:1.65}.card:nth-child(1){grid-column:span 7}.card:nth-child(2){grid-column:span 5}.card:nth-child(3){grid-column:span 5}.card:nth-child(4){grid-column:span 7}.card:nth-child(5),.card:nth-child(6),.card:nth-child(7){grid-column:span 4}.card:nth-child(8){grid-column:span 12}.card:nth-child(8) img{min-height:460px}.card-zoom-hint{position:absolute;top:10px;right:10px;z-index:1;padding:6px 8px;border:1px solid rgba(255,255,255,.5);border-radius:999px;background:rgba(8,27,35,.64);color:#fff;font:500 10px/1 "DM Mono",monospace;letter-spacing:.03em;opacity:0;pointer-events:none;transform:translateY(-3px);transition:opacity .2s ease,transform .2s ease}.card:hover .card-zoom-hint,.card:focus-visible .card-zoom-hint{opacity:1;transform:translateY(0)}.continue{padding:76px 0;background:var(--night);color:#fff}.continue-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:54px;align-items:end}.continue h2{margin:15px 0 0}.continue p{color:rgba(255,255,255,.74);font-size:15px;line-height:1.8}.button-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:23px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border:1px solid rgba(255,255,255,.5);border-radius:999px;font-size:13px;text-decoration:none;transition:transform .2s ease,background .2s ease}.button:hover{background:rgba(255,255,255,.1);transform:translateY(-2px)}.button.sand{border-color:var(--sand);background:var(--sand);color:#152b35}footer{padding:28px 0;background:#091821;color:rgba(255,255,255,.65);font-size:12px;letter-spacing:.06em}footer .shell{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px}footer a{color:#fff;text-decoration:none}.reading-progress{position:fixed;top:0;left:0;z-index:20;display:grid;grid-template-columns:auto minmax(100px,1fr) auto;align-items:center;gap:9px;width:min(340px,calc(100vw - 28px));margin:10px 14px;padding:7px 10px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(11,30,39,.76);box-shadow:0 9px 22px rgba(7,22,29,.18);color:#fff;font:500 10px/1 "DM Mono",monospace;letter-spacing:.04em;backdrop-filter:blur(10px)}.reading-progress-track{display:block;height:4px;overflow:hidden;border-radius:99px;background:rgba(255,255,255,.25)}.reading-progress-fill{display:block;width:0;height:100%;border-radius:inherit;background:var(--sand);transition:width .15s linear}.reading-progress-value{min-width:27px;color:#fff5df;text-align:right}.image-lightbox{width:min(1120px,calc(100vw - 28px));max-width:none;max-height:calc(100vh - 28px);padding:0;border:0;background:transparent;color:#fff}.image-lightbox::backdrop{background:rgba(4,15,20,.88);backdrop-filter:blur(6px)}.lightbox-stage{position:relative;display:grid;place-items:center;min-height:min(760px,calc(100vh - 28px))}.lightbox-stage figure{display:grid;gap:12px;max-width:100%;max-height:calc(100vh - 66px)}.lightbox-stage img{display:block;width:auto;max-width:100%;max-height:calc(100vh - 150px);margin:auto;object-fit:contain;box-shadow:0 20px 70px rgba(0,0,0,.35)}.lightbox-stage figcaption{display:grid;grid-template-columns:1fr auto;gap:6px 22px;padding:0 44px;color:rgba(255,255,255,.78);font-size:13px;line-height:1.55}.lightbox-stage figcaption strong{color:#fff;font-family:"Noto Serif TC","Noto Serif SC",serif;font-size:18px;font-weight:500}.lightbox-stage figcaption span{max-width:720px}.lightbox-stage figcaption small{grid-row:1/span 2;grid-column:2;color:var(--sand);font-family:"DM Mono",monospace}.lightbox-close,.lightbox-step{position:absolute;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:rgba(7,22,29,.58);color:#fff;cursor:pointer;transition:background .2s ease,transform .2s ease}.lightbox-close:hover,.lightbox-step:hover{background:#fff;color:#173a45;transform:scale(1.04)}.lightbox-close{top:12px;right:12px;font-size:26px;line-height:1}.lightbox-prev{top:50%;left:10px;transform:translateY(-50%)}.lightbox-next{top:50%;right:10px;transform:translateY(-50%)}.lightbox-prev:hover,.lightbox-next:hover{transform:translateY(-50%) scale(1.04)}.lightbox-close:focus-visible,.lightbox-step:focus-visible{outline:2px solid #fff5df;outline-offset:3px}.lightbox-open{overflow:hidden}@media(max-width:720px){.shell{width:min(100% - 32px,1180px)}.topbar{padding:17px 0;font-size:10px}.top-actions{gap:8px}.top-link{display:none}.language-links a{min-width:27px;padding:5px}.hero{min-height:560px;padding:142px 0 42px;background-position:58% center}.hero:before{background:linear-gradient(90deg,rgba(7,22,29,.88),rgba(7,22,29,.28))}h1{font-size:clamp(48px,16vw,70px)}.lede{max-width:31rem;font-size:15px;line-height:1.7}.hero-meta{gap:7px;margin-top:21px;font-size:11px}.hero-meta span{padding:7px 9px}main{padding-top:54px}.intro,.story,.continue-grid{grid-template-columns:1fr;gap:21px;margin-bottom:58px}.intro p,.story p{font-size:15px;line-height:1.82}.margin-note{padding:17px 0 0 18px;font-size:13px}.story{gap:8px}.quote{margin:24px 0!important;padding-left:18px;font-size:21px!important}.gallery{grid-template-columns:1fr;gap:12px;margin-bottom:60px}.card,.card:nth-child(n){grid-column:span 1}.card img,.card:nth-child(8) img{min-height:0;aspect-ratio:4/3}.card figcaption{padding:12px 13px 14px}.card span{font-size:12px}.card-zoom-hint{top:auto;bottom:88px;font-size:9px;opacity:1;transform:none}.continue{padding:58px 0}.continue-grid{margin-bottom:0}.button-row{gap:8px}.button{min-height:43px;padding:0 13px;font-size:12px}.reading-progress{grid-template-columns:auto minmax(60px,1fr) auto;width:calc(100vw - 24px);margin:8px 12px;padding:6px 9px;font-size:9px}.lightbox-stage{min-height:calc(100vh - 28px)}.lightbox-stage img{max-height:calc(100vh - 190px)}.lightbox-stage figcaption{grid-template-columns:1fr auto;gap:4px 12px;padding:0 16px;font-size:12px}.lightbox-stage figcaption strong{font-size:16px}.lightbox-stage figcaption span{grid-column:1/-1}.lightbox-stage figcaption small{grid-row:auto;grid-column:2}.lightbox-step{top:auto;bottom:102px;width:38px;height:38px}.lightbox-prev{left:calc(50% - 46px);transform:none}.lightbox-next{right:calc(50% - 46px);transform:none}.lightbox-prev:hover,.lightbox-next:hover{transform:scale(1.04)}}
.reading-progress{top:60px}.feature-scrolled .reading-progress{top:0}@media(max-width:720px){.reading-progress{top:56px}}
.reading-progress{top:60px}.feature-scrolled .reading-progress{top:0}@media(max-width:720px){.reading-progress{top:56px}.intro,.story,.continue-grid{grid-template-columns:1fr}.story{grid-template-columns:1fr}}
.shell.gallery{margin-left:auto;margin-right:auto}
.intro{grid-template-columns:minmax(0,1.08fr) minmax(300px,.72fr);gap:clamp(38px,7vw,108px);margin-bottom:clamp(68px,8vw,112px)}.intro>div:first-child{max-width:650px}.intro p,.story p{max-width:43rem}.story{grid-template-columns:132px minmax(0,1fr);gap:clamp(32px,5.6vw,82px);max-width:980px;margin-bottom:clamp(72px,8vw,112px)}.story>div:last-child{max-width:690px}.story-index{padding-top:13px}.gallery{gap:clamp(10px,1.25vw,18px);margin-bottom:clamp(76px,9vw,120px)}.card{display:flex;flex-direction:column;box-shadow:0 1px 0 rgba(42,60,61,.08)}.card img{min-height:clamp(230px,25vw,370px)}.card:nth-child(8) img{min-height:clamp(340px,37vw,520px)}.card figcaption{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:7px 16px;padding:15px 17px 17px;border-top:1px solid rgba(30,53,57,.1)}.card b{margin:0;font-size:clamp(17px,1.45vw,21px);line-height:1.22}.card span{grid-row:2;grid-column:1/-1;max-width:46ch;font-size:12px;line-height:1.65}.card-zoom-hint{top:10px;right:10px;bottom:auto;opacity:.96;transform:none}.card:hover .card-zoom-hint,.card:focus-visible .card-zoom-hint{transform:none}.continue{padding:clamp(60px,8vw,96px) 0}.continue-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);gap:clamp(34px,6vw,72px);align-items:center}.continue-grid>div{max-width:620px}.continue-grid>div:last-child{max-width:460px}.continue h2{font-size:clamp(34px,4.3vw,58px);line-height:1.08}@media(min-width:721px) and (max-width:900px){.shell{width:min(100% - 42px,1180px)}.hero{min-height:500px;padding:126px 0 48px}.hero-copy{max-width:620px}.intro{gap:36px;margin-bottom:72px}.story{grid-template-columns:104px minmax(0,1fr);gap:34px;margin-bottom:76px}.story h2{font-size:clamp(31px,4.8vw,46px)}.gallery{gap:10px;margin-bottom:80px}.card img{min-height:230px}.card:nth-child(8) img{min-height:360px}.continue-grid{gap:32px}.continue h2{font-size:38px}}@media(max-width:720px){.hero{min-height:520px;padding:132px 0 40px}.hero-copy{max-width:31rem}.intro,.story{gap:24px;margin-bottom:64px}.intro>div:first-child,.story>div:last-child{max-width:none}.intro p,.story p{max-width:35rem;font-size:15px;line-height:1.86}.story{gap:12px}.story-index{padding-top:0}.quote{margin:28px 0!important;line-height:1.52!important}.gallery{gap:16px;margin-bottom:68px}.card img,.card:nth-child(8) img{min-height:0;aspect-ratio:4/3}.card figcaption{padding:13px 14px 15px;gap:6px 10px}.card b{font-size:18px}.card span{font-size:12px;line-height:1.68}.card-zoom-hint{top:10px;right:10px;bottom:auto;opacity:.94}.continue{padding:62px 0}.continue-grid{gap:25px}.continue-grid>div:last-child{max-width:none}.continue p{font-size:15px}.button-row{gap:9px}.button{width:100%;min-height:48px;padding:0 18px}}@media(max-width:390px){.shell{width:min(100% - 28px,1180px)}.hero{min-height:500px}.hero h1{font-size:clamp(47px,15vw,60px)}.hero-meta span{padding:7px 8px}.intro,.story{margin-bottom:56px}.gallery{gap:14px}.card figcaption{padding:12px 13px 14px}.reading-progress{width:calc(100vw - 28px)}}
