:root{--blue:#073bb8;--blue-soft:#e7edff;--ink:#1a1a1a;--muted:#6a6a6a;--paper:#fbfaf8;--line:#dcdcd7;--serif:"Cormorant Garamond","Noto Serif SC",serif;--sans:"Noto Sans SC",sans-serif;--mono:"JetBrains Mono",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);margin:0}a{color:inherit}.section{padding-left:max(5vw,36px);padding-right:max(5vw,36px);scroll-margin-top:74px}.site-header{align-items:center;background:rgba(251,250,248,.93);border-bottom:1px solid var(--ink);display:flex;height:74px;justify-content:space-between;padding:0 max(4vw,30px);position:sticky;top:0;z-index:30}.brand{align-items:center;color:var(--blue);display:flex;font:500 13px var(--mono);gap:10px;letter-spacing:.04em;text-decoration:none}.brand-mark{align-items:center;border:1px solid var(--blue);border-radius:50%;display:inline-flex;font:600 15px var(--serif);height:27px;justify-content:center;width:27px}.main-nav{display:flex;gap:25px}.main-nav a{color:#383838;font-size:14px;font-weight:500;padding:26px 0 23px;position:relative;text-decoration:none;white-space:nowrap}.main-nav a:after{background:var(--blue);bottom:18px;content:"";height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:left;transition:transform .25s;width:100%}.main-nav a.active,.main-nav a:hover{color:var(--blue)}.main-nav a.active:after,.main-nav a:hover:after{transform:scaleX(1)}.nav-toggle{background:none;border:0;color:var(--blue);display:none;font:12px var(--mono)}.section-no{color:var(--blue);font:10px var(--mono);letter-spacing:.12em;margin:0}.intro-section{display:grid;gap:45px;grid-template-columns:minmax(0,1fr) minmax(275px,.62fr);min-height:690px;padding-bottom:70px;padding-top:80px;position:relative}.intro-copy{align-self:center}.intro-copy h1{font:600 clamp(62px,7.2vw,108px)/.9 var(--serif);letter-spacing:-.075em;margin:18px 0 24px}.intro-copy h1 em,.section-title h2 em,.social-head h2 em,.contact-copy h2 em{color:var(--blue);font-style:normal}.intro-lede{border-left:2px solid var(--blue);font:19px/1.7 var(--serif);margin:0;max-width:470px;padding-left:17px}.intro-link{border-bottom:1px solid var(--ink);display:inline-block;font:12px var(--mono);margin-top:34px;padding-bottom:7px;text-decoration:none}.intro-link span{color:var(--blue);font-size:17px}.intro-portrait{align-self:center;justify-self:center;margin:0;max-width:320px;position:relative;width:100%}.intro-portrait:before{background:var(--blue-soft);border-radius:50%;content:"";height:220px;position:absolute;right:-80px;top:-42px;width:220px;z-index:-1}.intro-portrait>span{background:#f5e6df;font:16px "Caveat",cursive;left:-48px;padding:8px 12px;position:absolute;top:26px;transform:rotate(-6deg);z-index:1}.intro-portrait img{aspect-ratio:3/4;background:#9bcbed;border:1px solid var(--ink);box-shadow:11px 12px 0 #d5d5d1;display:block;object-fit:cover;width:100%}.intro-portrait figcaption{font:10px/1.55 var(--mono);letter-spacing:.08em;margin-top:13px}.skill-lines{border-top:1px solid var(--ink);bottom:35px;display:grid;grid-column:1/-1;grid-template-columns:repeat(4,1fr);left:max(5vw,36px);position:absolute;right:max(5vw,36px)}.skill-lines article{border-right:1px solid var(--line);min-height:80px;padding:13px 18px 0}.skill-lines article:first-child{padding-left:0}.skill-lines article:last-child{border:0}.skill-lines span{color:var(--blue);font:10px var(--mono)}.skill-lines b{display:block;font:600 19px var(--serif);margin:5px 0}.skill-lines p{color:var(--muted);font-size:11px;line-height:1.55;margin:0;max-width:190px}.experience-section{background:#f4f4f3;min-height:800px;padding-bottom:70px;padding-top:72px}.section-title{border-top:1px solid var(--ink);display:grid;gap:18px;grid-template-columns:1.2fr .8fr;padding-top:16px}.section-title .section-no{grid-column:1/-1}.section-title h2{font:600 clamp(49px,5.5vw,80px)/.93 var(--serif);letter-spacing:-.07em;margin:0}.section-title>p:last-child{align-self:end;color:#4f4f4f;font:18px/1.5 var(--serif);margin:0 0 5px;max-width:360px}.experience-stage{height:420px;margin:31px auto 0;max-width:1020px;overflow:visible;position:relative}.experience-card{background:#fff;border:0;border-radius:11px;box-shadow:0 13px 25px rgba(0,0,0,.12);cursor:pointer;height:315px;left:50%;overflow:hidden;padding:0;position:absolute;text-align:left;top:48px;transform-origin:50% 100%;transition:transform .6s cubic-bezier(.2,.75,.2,1),opacity .45s;transform-style:preserve-3d;width:226px}.experience-card img{display:block;height:202px;object-fit:cover;width:100%}.experience-card div{padding:9px 13px}.experience-card small{color:#777;font:9px var(--mono)}.experience-card h3{font:600 22px/1 var(--serif);margin:6px 0 0}.experience-card p{display:none}.experience-card.position-0{opacity:1;transform:translateX(-50%) translateY(-10px) rotate(0);z-index:5}.experience-card.position-1{opacity:.8;transform:translateX(12%) translateY(40px) rotate(18deg);z-index:4}.experience-card.position-2{opacity:.62;transform:translateX(60%) translateY(91px) rotate(32deg);z-index:3}.experience-card.position-3{opacity:.45;transform:translateX(104%) translateY(140px) rotate(43deg);z-index:2}.experience-card.active{height:355px;width:254px}.experience-card.active img{height:222px}.experience-card.active div{padding:12px 15px}.experience-card.active h3{font-size:25px}.experience-card.active p{color:#666;display:block;font:13px/1.42 var(--serif);margin:8px 0 0}.experience-nav{align-items:center;display:flex;gap:18px;justify-content:center;margin:11px auto 0;max-width:700px}.experience-nav>button{background:#fff;border:1px solid var(--line);border-radius:50%;color:var(--blue);cursor:pointer;font:24px var(--serif);height:42px;width:42px}.experience-nav>button:hover{background:var(--blue);color:#fff}.experience-timeline{border-top:1px solid #cfcfca;display:flex;height:65px;justify-content:space-between;position:relative;width:min(540px,62vw)}.experience-timeline:before{border:1px solid #e1e1dc;border-bottom:0;border-radius:420px 420px 0 0;content:"";height:90px;left:7%;position:absolute;right:7%;top:-1px}.experience-timeline button{background:none;border:0;color:#a1a1a1;cursor:pointer;flex:1;font:10px var(--mono);padding:16px 0 0;position:relative;z-index:1}.experience-timeline button i{background:#fff;border:1px solid #aaa;border-radius:50%;display:block;height:8px;margin:-21px auto 8px;width:8px}.experience-timeline button.active{color:var(--blue);font-weight:600}.experience-timeline button.active i{background:var(--blue);border-color:var(--blue);box-shadow:0 0 0 4px #dce6ff}.writing-section{background:#fbfaf8;padding-bottom:95px;padding-top:80px}.writing-title{max-width:900px}.writing-layout{display:grid;gap:60px;grid-template-columns:minmax(240px,.56fr) minmax(0,1.44fr);margin:53px auto 0;max-width:1060px}.writing-list{border-top:1px solid var(--ink)}.writing-list button{align-items:center;background:none;border:0;border-bottom:1px solid var(--ink);color:#333;cursor:pointer;display:grid;font:14px var(--sans);gap:13px;grid-template-columns:30px 1fr 20px;padding:18px 4px;text-align:left;width:100%}.writing-list button span,.writing-list button i{color:var(--blue);font:10px var(--mono);font-style:normal}.writing-list button.active,.writing-list button:hover{color:var(--blue);padding-left:11px}.writing-detail{background:#fffefb;border:1px solid var(--ink);box-shadow:10px 11px 0 #e2e8fa;min-height:410px;opacity:.35;padding:40px 50px;transform:rotateY(3deg);transition:opacity .2s,transform .2s}.writing-detail.is-open{opacity:1;transform:none}.detail-code{color:var(--blue);font:10px var(--mono);letter-spacing:.08em;margin:0}.writing-detail h3{font:600 clamp(41px,5vw,66px)/.94 var(--serif);letter-spacing:-.07em;margin:43px 0 7px}.detail-label{font:10px var(--mono);margin:0}.detail-summary{border-top:1px solid var(--ink);font:21px/1.55 var(--serif);margin:23px 0 0;padding-top:22px}.detail-bottom{display:grid;gap:14px;grid-template-columns:1fr 1fr 170px;margin-top:28px}.detail-bottom p{color:#555;font:14px/1.5 var(--serif);margin:0}.detail-bottom b{color:var(--blue);display:block;font:10px var(--mono);margin-bottom:7px}.video-slot{align-items:center;background:var(--blue);color:#fff;display:flex;font:10px/1.4 var(--mono);gap:8px;justify-content:center;min-height:74px;padding:10px;text-align:center}.video-slot span{font-size:18px}.visual-section{background:#f1f1f0;padding-bottom:88px;padding-top:77px}.visual-title{max-width:920px}.visual-book{height:510px;margin:47px auto 0;max-width:1010px;perspective:1800px}.book-cover-page,.book-spread{border-radius:10px;box-shadow:0 23px 45px rgba(0,0,0,.18);height:100%;overflow:hidden}.book-cover-page{background:linear-gradient(160deg,#0b47ca,#00278d);color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:39px;position:relative;width:55%}.book-cover-page:after{background:rgba(255,255,255,.07);border-radius:50%;content:"";height:310px;position:absolute;right:-150px;top:-120px;width:310px}.book-cover-page p,.book-cover-page span{color:#cbd8ff;font:10px var(--mono);letter-spacing:.1em;margin:0}.book-cover-page h3{font:600 57px/.84 var(--serif);letter-spacing:-.05em;margin:29px 0}.book-cover-page i{bottom:26px;color:#cbd8ff;font:11px var(--mono);font-style:normal;position:absolute;right:30px}.book-spread{background:#fff;display:grid;grid-template-columns:1.05fr .95fr;transform-origin:left}.turn-next .book-cover-page,.turn-next .book-spread{animation:pageNext .65s cubic-bezier(.2,.65,.2,1)}.turn-prev .book-cover-page,.turn-prev .book-spread{animation:pagePrev .65s cubic-bezier(.2,.65,.2,1)}@keyframes pageNext{50%{transform:rotateY(-13deg) translateX(-14px)}}@keyframes pagePrev{50%{transform:rotateY(13deg) translateX(14px)}}.book-photo-page{overflow:hidden;position:relative}.book-photo-page img{height:100%;object-fit:cover;width:100%}.book-photo-page span{background:#fff;border-radius:3px;color:var(--blue);font:10px var(--mono);left:18px;padding:8px;position:absolute;top:18px}.book-text-page{border-left:1px solid #e0e0de;display:flex;flex-direction:column;padding:51px}.book-text-page>p:first-child,.book-text-page small{color:var(--blue);font:10px var(--mono);letter-spacing:.1em;margin:0}.book-text-page h3{font:600 clamp(43px,5vw,64px)/.92 var(--serif);letter-spacing:-.07em;margin:31px 0 0}.book-rule{border-top:1px solid var(--ink);margin:24px 0}.book-note{font:19px/1.55 var(--serif);margin:0;max-width:340px}.book-video-slot{align-items:center;background:#edf1fe;border:1px solid var(--blue);color:var(--blue);display:flex;gap:11px;margin:auto 0 17px;padding:13px}.book-video-slot b{font-size:21px}.book-video-slot span{font:9px/1.45 var(--mono)}.book-nav{align-items:center;display:flex;gap:15px;justify-content:center;margin-top:23px}.book-nav>button{background:#fff;border:0;border-radius:50%;box-shadow:0 3px 11px rgba(0,0,0,.13);color:var(--blue);cursor:pointer;font:32px var(--serif);height:45px;line-height:1;width:45px}.book-nav>button:hover{background:var(--blue);color:#fff}.book-dots{display:flex;gap:6px}.book-dots button{background:#c9c9c6;border:0;border-radius:6px;cursor:pointer;height:6px;padding:0;width:6px}.book-dots button.active{background:var(--blue);width:22px}.book-nav>span{color:#777;font:10px var(--mono);margin-left:7px}.social-section{background:#fbfaf8;padding-bottom:90px;padding-top:83px}.social-head{align-items:end;border-top:1px solid var(--ink);display:grid;gap:25px;grid-template-columns:1.2fr .67fr .9fr;padding-top:17px}.social-head h2{font:600 clamp(48px,5.5vw,78px)/.92 var(--serif);letter-spacing:-.075em;margin:10px 0 0}.social-intro{font:17px/1.5 var(--serif);margin:0 0 5px}.metric-strip{border-left:1px solid var(--line);display:flex;gap:22px;justify-content:flex-end;padding-left:20px}.metric-strip span{min-width:68px}.metric-strip b{color:var(--blue);display:block;font:600 36px/.9 var(--serif);letter-spacing:-.05em}.metric-strip small{color:#777;display:block;font:9px/1.4 var(--mono);margin-top:8px}.social-grid{border-bottom:1px solid var(--blue);display:grid;gap:18px;grid-template-columns:repeat(6,1fr);margin-top:42px;padding-bottom:28px}.social-post{background:#fff;border-radius:13px;box-shadow:0 5px 18px rgba(0,0,0,.06);overflow:hidden;text-decoration:none;transition:transform .25s,box-shadow .25s}.social-post:hover{box-shadow:0 11px 25px rgba(7,59,184,.18);transform:translateY(-7px)}.post-image{aspect-ratio:3/4;overflow:hidden;position:relative}.post-image img{height:100%;object-fit:cover;transition:transform .4s;width:100%}.social-post:hover img{transform:scale(1.05)}.post-image span{background:rgba(255,255,255,.9);border-radius:4px;color:var(--blue);font:9px var(--mono);left:8px;padding:5px;position:absolute;top:8px}.post-copy{padding:12px}.post-copy h3{font-size:13px;line-height:1.45;margin:0}.post-copy p{color:#777;font-size:10px;line-height:1.45;margin:7px 0}.post-copy b{color:#e94863;font:10px var(--mono)}.social-note{color:#666;font:12px/1.5 var(--sans);margin:15px 0 0}.social-note code{color:var(--blue);font:10px var(--mono)}.contact-section{background:#edf1ff;padding-bottom:85px;padding-top:76px}.contact-copy{border-top:1px solid var(--ink);padding-top:17px}.contact-copy h2{font:600 clamp(51px,6vw,86px)/.9 var(--serif);letter-spacing:-.08em;margin:15px 0}.contact-copy>p:last-child{font:19px/1.5 var(--serif);margin:0}.honor-tickets{display:grid;grid-template-columns:repeat(3,1fr);margin:43px 0 68px}.honor-tickets article{background:#fffefb;border:1px solid var(--ink);border-right:0;min-height:146px;padding:16px;position:relative;transition:transform .2s}.honor-tickets article:nth-child(3n){border-right:1px solid var(--ink)}.honor-tickets article:nth-child(even){background:#f7f0ed}.honor-tickets article:hover{background:var(--blue);color:#fff;transform:rotate(-1deg) translateY(-5px);z-index:1}.honor-tickets small,.honor-tickets span{color:var(--blue);font:9px var(--mono)}.honor-tickets article:hover small,.honor-tickets article:hover span{color:#dbe5ff}.honor-tickets i{font-style:normal;position:absolute;right:15px;top:13px}.honor-tickets p{font:600 22px/1.1 var(--serif);margin:22px 0 0;max-width:230px}.honor-tickets span{bottom:15px;position:absolute}.contact-letter{background:#fffefb;border:1px solid var(--ink);box-shadow:11px 12px 0 #cad7fa;margin:0 auto;max-width:700px;padding:44px 58px;position:relative}.contact-letter:after{border:1px solid var(--blue);border-radius:50%;color:var(--blue);content:"OPEN\A TO\A WORK";font:9px/1.22 var(--mono);height:65px;padding-top:15px;position:absolute;right:-30px;text-align:center;top:42px;transform:rotate(12deg);white-space:pre-wrap;width:65px}.letter-label{color:var(--blue);font:10px var(--mono);letter-spacing:.1em;margin:0}.contact-letter h3{font:600 49px/.95 var(--serif);letter-spacing:-.06em;margin:30px 0 15px}.contact-letter>p:not(.letter-label){font:19px/1.55 var(--serif);margin:0}.contact-list{border-top:1px solid var(--ink);display:grid;margin-top:30px}.contact-list a{border-bottom:1px solid var(--ink);display:grid;font:13px var(--mono);grid-template-columns:83px 1fr;padding:11px 0;text-decoration:none}.contact-list a:hover{color:var(--blue)}.contact-list small{color:var(--blue);font:10px var(--mono)}.contact-list .resume{background:var(--blue);color:#fff;display:block;margin-top:15px;padding:13px;text-align:center}.letter-sign{color:var(--blue);display:block;font:25px "Caveat",cursive;margin-top:26px;text-align:right}footer{background:#171717;color:#e0e0dc;display:flex;font:10px var(--mono);justify-content:space-between;padding:23px max(5vw,36px)}footer a{color:#fff;text-decoration:none}
@media(max-width:1020px){.main-nav{gap:16px}.experience-stage{max-width:820px}.social-head{grid-template-columns:1fr 1fr}.metric-strip{grid-column:1/-1;justify-content:flex-start;padding-left:0}.social-grid{grid-template-columns:repeat(3,1fr);row-gap:22px}.skill-lines{position:static}.intro-section{padding-bottom:40px}.writing-layout{gap:30px}.detail-bottom{grid-template-columns:1fr 1fr}.video-slot{grid-column:1/-1}.visual-book{height:470px}.book-text-page{padding:35px}}
@media(max-width:760px){.site-header{height:64px;padding:0 20px}.brand{font-size:11px}.brand-mark{height:24px;width:24px}.nav-toggle{display:block}.main-nav{background:rgba(251,250,248,.98);border-bottom:1px solid var(--ink);display:none;flex-wrap:wrap;gap:10px 20px;left:0;padding:14px 20px;position:absolute;top:63px;width:100%}.main-nav.open{display:flex}.main-nav a{font-size:13px;padding:5px 0}.main-nav a:after{bottom:0}.section{padding-left:20px;padding-right:20px}.intro-section{display:block;min-height:0;padding-bottom:60px;padding-top:55px}.intro-copy h1{font-size:65px}.intro-portrait{margin:46px auto 0;max-width:270px}.intro-portrait>span{left:-25px}.skill-lines{grid-template-columns:1fr 1fr;margin-top:50px}.skill-lines article{border-bottom:1px solid var(--line);padding:13px 10px}.skill-lines article:first-child{padding-left:0}.experience-section{min-height:730px;padding-top:52px}.section-title{display:block}.section-title>p:last-child{margin-top:16px}.experience-stage{height:370px;margin-top:20px}.experience-card{height:265px;width:186px}.experience-card img{height:168px}.experience-card.active{height:298px;width:208px}.experience-card.active img{height:176px}.experience-card.active p{font-size:12px}.experience-card.position-1{transform:translateX(1%) translateY(36px) rotate(17deg)}.experience-card.position-2{transform:translateX(42%) translateY(78px) rotate(29deg)}.experience-card.position-3{transform:translateX(74%) translateY(116px) rotate(38deg)}.experience-timeline{width:58vw}.writing-section,.visual-section,.social-section,.contact-section{padding-top:55px}.writing-layout{display:block;margin-top:33px}.writing-list{margin-bottom:30px}.writing-detail{min-height:410px;padding:31px 29px}.writing-detail h3{font-size:47px;margin-top:32px}.detail-summary{font-size:19px}.visual-book{height:580px;margin-top:33px}.book-cover-page{width:78%}.book-spread{grid-template-columns:1fr}.book-photo-page{height:280px}.book-text-page{border-left:0;border-top:1px solid #e0e0de;padding:26px}.book-text-page h3{font-size:42px;margin-top:20px}.book-note{font-size:17px}.book-video-slot{margin:22px 0 14px}.social-head{display:block}.social-intro{margin-top:20px}.metric-strip{gap:16px;margin-top:25px}.metric-strip b{font-size:31px}.social-grid{grid-template-columns:repeat(2,1fr);margin-top:30px}.post-image{aspect-ratio:1.1/1}.honor-tickets{grid-template-columns:1fr 1fr;margin-bottom:48px}.honor-tickets article:nth-child(3n){border-right:0}.honor-tickets article:nth-child(2n){border-right:1px solid var(--ink)}.contact-letter{padding:34px 27px}.contact-letter:after{right:-15px;top:22px}.contact-letter h3{font-size:43px}.contact-list a{font-size:11px;grid-template-columns:65px 1fr}footer{font-size:9px;padding:20px}.section-no{font-size:9px}}
@media(max-width:390px){.intro-copy h1{font-size:58px}.experience-card.position-2,.experience-card.position-3{opacity:.32}.experience-nav{gap:8px}.experience-timeline{width:52vw}.metric-strip{flex-wrap:wrap}.visual-book{height:560px}.honor-tickets p{font-size:19px}}

/* Precision pass: keep the first screen in normal flow, then make the experience
   and visual sections behave like physical objects rather than static cards. */
.intro-section{min-height:0;padding-bottom:62px}.intro-lede{max-width:640px}.intro-link{margin-top:27px}.skill-lines{bottom:auto;left:auto;margin-top:10px;position:static;right:auto}.skill-lines article{min-height:96px}.experience-section .section-title{display:block}.experience-stage{height:455px;margin-top:20px}.experience-card{background:none;border:0;border-radius:0;box-shadow:none;height:355px;overflow:visible;padding:0;perspective:1100px;width:254px}.experience-card-inner{display:block;height:100%;position:relative;transform-style:preserve-3d;transition:transform .68s cubic-bezier(.2,.72,.2,1);width:100%}.experience-card.flipped .experience-card-inner{transform:rotateY(180deg)}.experience-card-face{backface-visibility:hidden;background:#fff;border:1px solid #e2e2df;border-radius:10px;box-shadow:0 14px 26px rgba(0,0,0,.13);display:block;height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%}.experience-front img{display:block;height:222px;object-fit:cover;width:100%}.experience-front>span{display:block;padding:12px 15px}.experience-front small,.experience-back small{color:#777;font:9px var(--mono)}.experience-front b,.experience-back b{display:block;font:600 25px/1 var(--serif);margin-top:7px}.experience-back{background:var(--blue);color:#fff;padding:27px 23px;transform:rotateY(180deg)}.experience-back small{color:#d6e0ff}.experience-back b{font-size:31px;line-height:1.02}.experience-back p{font:18px/1.52 var(--serif);margin:26px 0 0}.experience-back em{bottom:20px;color:#d6e0ff;font:14px "Caveat",cursive;font-style:normal;left:23px;position:absolute}.experience-card.position-0{height:355px;opacity:1;transform:translateX(-50%) translateY(-5px) rotate(0);width:254px;z-index:8}.experience-card.position--1{opacity:.76;transform:translateX(-139%) translateY(47px) rotate(-22deg);z-index:5}.experience-card.position--2{opacity:.48;transform:translateX(-220%) translateY(103px) rotate(-36deg);z-index:3}.experience-card.position-1{opacity:.76;transform:translateX(39%) translateY(47px) rotate(22deg);z-index:5}.experience-card.position-2{opacity:.48;transform:translateX(120%) translateY(103px) rotate(36deg);z-index:3}.experience-card.active{height:355px;width:254px}.experience-card.active img{height:222px}.experience-card.active div,.experience-card.active p{display:initial}.experience-nav{margin-top:0}.experience-timeline{height:78px;overflow:visible;width:min(590px,62vw)}.experience-timeline:before{display:none}.experience-timeline .timeline-arc{border:1px solid #deded9;border-bottom:0;border-radius:420px 420px 0 0;height:115px;left:7%;position:absolute;right:7%;top:0}.experience-timeline .timeline-hand{background:var(--blue);bottom:-2px;height:46px;left:50%;position:absolute;transform:rotate(var(--timeline-angle));transform-origin:50% 100%;transition:transform .68s cubic-bezier(.2,.72,.2,1);width:2px;z-index:3}.experience-timeline .timeline-hand:after{background:var(--blue);border-radius:50%;bottom:-4px;content:"";height:9px;left:-3.5px;position:absolute;width:9px}.experience-timeline button{padding-top:32px}.experience-timeline button i{margin:-36px auto 9px}.writing-title h2{font-size:clamp(46px,5vw,74px);white-space:nowrap}.detail-bottom{grid-template-columns:1fr 1fr minmax(215px,.8fr)}.video-slot{min-height:112px}.visual-book{position:relative}.visual-book:after{background:linear-gradient(90deg,#f7f7f4,#fff);border-left:1px solid #ddd;box-shadow:-10px 0 22px rgba(0,0,0,.08);content:"";inset:0 0 0 50%;opacity:0;pointer-events:none;position:absolute;transform-origin:left;z-index:5}.visual-book.turn-next:after{animation:leafForward .72s ease-in-out}.visual-book.turn-prev:after{animation:leafBackward .72s ease-in-out;inset:0 50% 0 0;transform-origin:right}@keyframes leafForward{0%{opacity:.95;transform:rotateY(0)}55%{opacity:.9}100%{opacity:0;transform:rotateY(-180deg)}}@keyframes leafBackward{0%{opacity:.95;transform:rotateY(0)}55%{opacity:.9}100%{opacity:0;transform:rotateY(180deg)}}
@media(max-width:760px){.intro-section{padding-bottom:45px}.intro-lede{max-width:100%}.skill-lines{margin-top:44px}.experience-stage{height:395px}.experience-card{height:286px;width:205px}.experience-card.position-0{height:286px;width:205px}.experience-front img{height:174px}.experience-card.active img{height:174px}.experience-front b{font-size:22px}.experience-card.position--1{transform:translateX(-128%) translateY(46px) rotate(-20deg)}.experience-card.position--2{transform:translateX(-188%) translateY(90px) rotate(-32deg)}.experience-card.position-1{transform:translateX(28%) translateY(46px) rotate(20deg)}.experience-card.position-2{transform:translateX(88%) translateY(90px) rotate(32deg)}.experience-back{padding:21px 17px}.experience-back b{font-size:26px}.experience-back p{font-size:16px;margin-top:20px}.experience-timeline{width:58vw}.writing-title h2{font-size:48px;white-space:normal}.detail-bottom{grid-template-columns:1fr}.video-slot{grid-column:auto;min-height:132px}.visual-book:after{display:none}}

/* Final interaction composition: circular experience dial and a two-page visual book. */
.experience-section{min-height:930px}.experience-stage{height:430px}.experience-nav{height:275px;margin:15px auto 0;position:relative;width:min(680px,82vw)}.experience-nav>button{position:absolute;top:50%;transform:translateY(-50%);z-index:4}.experience-nav>#experience-prev{left:0}.experience-nav>#experience-next{right:0}.experience-timeline{border:0;border-radius:50%;height:248px;left:50%;margin:0;position:absolute;top:10px;transform:translateX(-50%);width:248px}.experience-timeline .timeline-arc{border:1px solid #d9d9d3;border-radius:50%;height:100%;inset:0;position:absolute;width:100%}.experience-timeline .timeline-hand{bottom:50%;height:102px;left:50%;transform:rotate(var(--timeline-angle));transform-origin:50% 100%;width:2px}.experience-timeline .timeline-hand:after{bottom:-4px}.experience-timeline button{align-items:center;background:transparent;border:0;color:#969696;cursor:pointer;display:flex;height:34px;justify-content:center;left:50%;padding:0;position:absolute;top:50%;transform:translate(-50%,-50%) rotate(var(--point-angle)) translateY(-144px) rotate(calc(-1 * var(--point-angle)));width:64px}.experience-timeline button i{background:#fff;border:1px solid #a8a8a2;border-radius:50%;height:8px;margin:0 5px 0 0;width:8px}.experience-timeline button span{font:10px var(--mono)}.experience-timeline button.active{color:var(--blue);font-weight:600}.experience-timeline button.active i{background:var(--blue);border-color:var(--blue);box-shadow:0 0 0 4px #dce6ff}.writing-layout{grid-template-columns:minmax(215px,.38fr) minmax(0,1.62fr);max-width:1210px}.writing-title{max-width:1150px}.writing-title h2{white-space:nowrap}.writing-detail{min-height:450px;padding:43px 54px}.detail-bottom{grid-template-columns:1fr 1fr minmax(280px,.95fr)}.video-slot{min-height:138px}.book-stage{margin:47px auto 0;max-width:1010px;position:relative}.visual-book{margin:0}.book-side{align-items:center;background:#fff;border:0;border-radius:50%;box-shadow:0 4px 15px rgba(0,0,0,.14);color:var(--blue);cursor:pointer;display:flex;font:38px/1 var(--serif);height:52px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);width:52px;z-index:8}.book-side:hover{background:var(--blue);color:#fff}.book-side-prev{left:-66px}.book-side-next{right:-66px}.book-nav{margin-top:20px}.book-spread{grid-template-columns:1fr 1fr}.book-text-page{border-left:0;border-right:1px solid #e0e0de;padding:50px}.book-media-page{background:#fff;display:flex;flex-direction:column;gap:16px;justify-content:center;overflow:hidden;padding:34px}.book-media-page img{box-shadow:0 8px 20px rgba(0,0,0,.12);height:68%;object-fit:cover;width:100%}.book-media-page .book-video-slot{margin:0;min-height:83px}.visual-book:after{background:linear-gradient(90deg,#fbfbf8,#fff 65%,#ececea);box-shadow:-9px 0 22px rgba(0,0,0,.11)}
@media(max-width:760px){.experience-section{min-height:820px}.experience-nav{height:225px;width:100%}.experience-timeline{height:190px;top:15px;width:190px}.experience-timeline button{transform:translate(-50%,-50%) rotate(var(--point-angle)) translateY(-112px) rotate(calc(-1 * var(--point-angle)));width:58px}.experience-timeline button span{font-size:9px}.experience-timeline .timeline-hand{height:75px}.writing-layout{grid-template-columns:1fr}.writing-title h2{white-space:normal}.writing-detail{padding:31px 29px}.detail-bottom{grid-template-columns:1fr}.video-slot{min-height:140px}.book-stage{margin-top:33px}.book-side{height:42px;width:42px}.book-side-prev{left:-10px}.book-side-next{right:-10px}.book-spread{grid-template-columns:1fr}.book-text-page{border-bottom:1px solid #e0e0de;border-right:0;padding:26px}.book-media-page{height:300px;padding:20px}.book-media-page img{height:190px}.book-media-page .book-video-slot{min-height:68px}.visual-book{height:620px}}

/* The reference uses an open half-arc under the cards: it is a timeline dial,
   not a complete circle. The book itself stays still while one paper leaf turns. */
.experience-section{min-height:885px}.experience-stage{height:430px}.experience-nav{height:205px;margin-top:4px;width:min(760px,86vw)}.experience-timeline{border-radius:0;height:170px;top:0;width:min(560px,70vw)}.experience-timeline .timeline-arc{border:1px solid #ddd;border-bottom:0;border-radius:560px 560px 0 0;height:155px;inset:auto 0 0;position:absolute;width:100%}.experience-timeline .timeline-hand{bottom:0;height:80px;left:var(--timeline-left);transform:none;transform-origin:50% 100%;transition:left .68s cubic-bezier(.2,.72,.2,1);width:2px}.experience-timeline button{height:28px;left:auto;padding:0;position:absolute;top:auto;transform:none;width:72px}.experience-timeline button i{height:7px;margin-right:4px;width:7px}.experience-timeline button:nth-of-type(1){bottom:18px;left:7%}.experience-timeline button:nth-of-type(2){bottom:76px;left:29%}.experience-timeline button:nth-of-type(3){bottom:93px;left:57%}.experience-timeline button:nth-of-type(4){bottom:53px;right:5%}.experience-nav>#experience-prev,.experience-nav>#experience-next{top:auto;transform:none}.experience-nav>#experience-prev{bottom:5px;left:15%}.experience-nav>#experience-next{bottom:5px;right:15%}.visual-book{perspective:2200px}.turn-next .book-cover-page,.turn-next .book-spread,.turn-prev .book-cover-page,.turn-prev .book-spread{animation:none!important;transform:none!important}.visual-book:after{backface-visibility:hidden;background:linear-gradient(90deg,#fafaf7,#fff 72%,#ecece9);border-left:1px solid #dededb;bottom:0;box-shadow:-10px 0 21px rgba(0,0,0,.12);content:"";left:50%;opacity:0;position:absolute;right:0;top:0;transform-origin:left center;z-index:7}.visual-book.turn-next:after{animation:normalLeafNext .72s cubic-bezier(.32,.05,.2,1)}.visual-book.turn-prev:after{animation:normalLeafPrev .72s cubic-bezier(.32,.05,.2,1);left:0;right:50%;transform-origin:right center}@keyframes normalLeafNext{0%{opacity:0;transform:rotateY(0)}2%{opacity:1}52%{opacity:1}100%{opacity:0;transform:rotateY(-180deg)}}@keyframes normalLeafPrev{0%{opacity:0;transform:rotateY(0)}2%{opacity:1}52%{opacity:1}100%{opacity:0;transform:rotateY(180deg)}}
@media(max-width:760px){.experience-section{min-height:770px}.experience-stage{height:390px}.experience-nav{height:164px;width:100%}.experience-timeline{height:138px;width:min(360px,78vw)}.experience-timeline .timeline-arc{height:123px}.experience-timeline .timeline-hand{height:62px}.experience-timeline button{font-size:8px;width:50px}.experience-timeline button:nth-of-type(1){bottom:10px;left:3%}.experience-timeline button:nth-of-type(2){bottom:55px;left:25%}.experience-timeline button:nth-of-type(3){bottom:66px;left:57%}.experience-timeline button:nth-of-type(4){bottom:37px;right:1%}.experience-nav>#experience-prev{bottom:0;left:6%}.experience-nav>#experience-next{bottom:0;right:6%}}

/* Large-radius arc: only the top edge of one huge circle is visible.  The
   central needle is fixed; the tick track rotates beneath it. */
.experience-timeline{height:178px;overflow:hidden;width:min(760px,78vw)}.experience-timeline .timeline-arc{border:1px solid #deded9;border-radius:50%;height:820px;inset:0 auto auto 50%;transform:translateX(-50%);width:820px}.experience-timeline .timeline-hand{bottom:0;left:50%;transform:none}.experience-timeline .timeline-track{height:820px;inset:0 auto auto 50%;position:absolute;transform:translateX(-50%) rotate(var(--timeline-rotation));transform-origin:50% 50%;transition:transform .7s cubic-bezier(.2,.72,.2,1);width:820px}.experience-timeline .timeline-track button{height:27px;position:absolute;transform:rotate(calc(-1 * var(--timeline-rotation)));transition:transform .7s cubic-bezier(.2,.72,.2,1);width:82px}.experience-timeline .timeline-track button:nth-of-type(1){left:369px;top:1px}.experience-timeline .timeline-track button:nth-of-type(2){left:510px;top:27px}.experience-timeline .timeline-track button:nth-of-type(3){left:637px;top:92px}.experience-timeline .timeline-track button:nth-of-type(4){left:725px;top:190px}.experience-timeline button i{margin-right:4px}.visual-book:after{display:block}.visual-book.turn-next:after{animation:normalLeafNext .74s cubic-bezier(.36,.06,.19,1)}.visual-book.turn-prev:after{animation:normalLeafPrev .74s cubic-bezier(.36,.06,.19,1)}@keyframes normalLeafNext{0%{opacity:0;transform:rotateY(0)}1%{opacity:1}48%{opacity:1;transform:rotateY(-88deg)}100%{opacity:0;transform:rotateY(-180deg)}}@keyframes normalLeafPrev{0%{opacity:0;transform:rotateY(0)}1%{opacity:1}48%{opacity:1;transform:rotateY(88deg)}100%{opacity:0;transform:rotateY(180deg)}}
@media(max-width:760px){.experience-timeline{height:132px;width:min(520px,88vw)}.experience-timeline .timeline-arc,.experience-timeline .timeline-track{height:560px;width:560px}.experience-timeline .timeline-track button{font-size:8px;width:55px}.experience-timeline .timeline-track button:nth-of-type(1){left:253px;top:1px}.experience-timeline .timeline-track button:nth-of-type(2){left:350px;top:18px}.experience-timeline .timeline-track button:nth-of-type(3){left:435px;top:63px}.experience-timeline .timeline-track button:nth-of-type(4){left:500px;top:132px}.experience-timeline .timeline-hand{height:58px}}

/* Keep the blue needle fixed below the card fan. The labels sit on, and rotate
   with, the large circular arc so no year can drift into the images. */
.experience-nav{height:222px;margin-top:0}.experience-timeline{height:185px;top:0;width:min(820px,80vw)}.experience-timeline .timeline-arc{height:900px;width:900px}.experience-timeline .timeline-track{height:900px;width:900px}.experience-timeline .timeline-track button{height:28px;width:84px}.experience-timeline .timeline-track button:nth-of-type(1){left:408px;top:1px}.experience-timeline .timeline-track button:nth-of-type(2){left:564px;top:28px}.experience-timeline .timeline-track button:nth-of-type(3){left:704px;top:98px}.experience-timeline .timeline-track button:nth-of-type(4){left:802px;top:202px}.experience-timeline .timeline-hand{height:86px}.experience-nav>#experience-prev,.experience-nav>#experience-next{bottom:1px}.visual-book{height:545px;max-width:1040px;perspective:none}.visual-book:after{display:none!important}.book-stage{max-width:1040px}.book-nav{align-items:center;display:flex;justify-content:center;min-height:24px}.book-dots{align-items:center;display:flex;gap:6px}.book-dots i{background:#c9c9c6;border-radius:6px;display:block;height:6px;width:6px}.book-dots i.active{background:var(--blue);width:21px}.visual-book .stf__parent{margin:0 auto!important}.visual-book .stf__wrapper{box-shadow:0 25px 45px rgba(0,0,0,.17)!important}.flip-page{background:#fffefb;color:var(--ink);height:100%;overflow:hidden;padding:46px 48px}.flip-cover{background:linear-gradient(155deg,#124cca,#002886)!important;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:43px!important}.flip-cover p,.flip-cover span,.flip-back-cover p,.flip-back-cover span{color:#d8e3ff;font:10px var(--mono);letter-spacing:.1em;margin:0}.flip-cover h3{font:600 62px/.83 var(--serif);letter-spacing:-.06em;margin:29px 0}.flip-copy-page{display:flex;flex-direction:column}.flip-copy-page>p{color:var(--blue);font:10px var(--mono);letter-spacing:.08em;margin:0}.flip-copy-page h3{font:600 53px/.9 var(--serif);letter-spacing:-.065em;margin:34px 0 0}.flip-copy-page>div{border-top:1px solid var(--ink);margin:23px 0}.flip-copy-page>b{font:19px/1.56 var(--serif);font-weight:500}.flip-media-page{display:flex;flex-direction:column;gap:16px;justify-content:center;padding:34px!important}.flip-media-page img{box-shadow:0 9px 22px rgba(0,0,0,.14);height:70%;object-fit:cover;width:100%}.flip-media-page span{align-items:center;background:#edf1fe;border:1px solid var(--blue);color:var(--blue);display:flex;font:10px/1.45 var(--mono);justify-content:center;min-height:74px;text-align:center}.flip-back-cover{background:#0b3198!important;color:#fff;display:flex;flex-direction:column;justify-content:space-between}.book-fallback{align-items:center;background:#fff;display:flex;height:100%;justify-content:center}.book-side{z-index:20}
@media(max-width:760px){.experience-nav{height:168px}.experience-timeline{height:137px;width:min(590px,90vw)}.experience-timeline .timeline-arc,.experience-timeline .timeline-track{height:640px;width:640px}.experience-timeline .timeline-track button{font-size:8px;width:60px}.experience-timeline .timeline-track button:nth-of-type(1){left:290px;top:1px}.experience-timeline .timeline-track button:nth-of-type(2){left:404px;top:20px}.experience-timeline .timeline-track button:nth-of-type(3){left:510px;top:70px}.experience-timeline .timeline-track button:nth-of-type(4){left:589px;top:145px}.experience-timeline .timeline-hand{height:62px}.visual-book{height:570px}.flip-page{padding:27px 25px}.flip-cover{padding:32px!important}.flip-cover h3{font-size:50px}.flip-copy-page h3{font-size:41px}.flip-copy-page>b{font-size:17px}.flip-media-page{padding:24px!important}.flip-media-page img{height:68%}.book-side{z-index:30}}

/* Give the card fan room to finish before the dial begins. */
.experience-section{min-height:1010px}.experience-nav{margin-top:104px}.experience-timeline .timeline-track button:nth-of-type(4){top:148px}
@media(max-width:760px){.experience-section{min-height:855px}.experience-nav{margin-top:56px}.experience-timeline .timeline-track button:nth-of-type(4){top:116px}}

/* Equal-spaced circular dial: the needle stays still, the four year markers travel as one arc. */
.experience-timeline .timeline-track{inset:0!important;overflow:visible!important;position:absolute!important}.experience-timeline .timeline-track button{bottom:auto!important;left:var(--tick-x)!important;opacity:1!important;pointer-events:auto!important;right:auto!important;top:var(--tick-y)!important;transform:translate(-50%,-50%)!important;transition:left .72s cubic-bezier(.22,.75,.18,1),top .72s cubic-bezier(.22,.75,.18,1),color .25s ease,opacity .25s ease!important}.experience-timeline .timeline-track button.active{color:var(--blue)!important;font-weight:700!important}.experience-timeline .timeline-track button.active i{background:var(--blue)!important;border-color:var(--blue)!important;box-shadow:0 0 0 4px #e5efff}.experience-timeline .timeline-arc{border-radius:50%!important;height:min(820px,108vw)!important;left:50%!important;top:0!important;transform:translateX(-50%)!important;width:min(820px,108vw)!important}.experience-timeline .timeline-hand{left:50%!important;transform:translateX(-50%)!important}

/* Keep labels clear of the line, and show a balanced pair around the selected year. */
.experience-timeline .timeline-track button{height:18px!important;outline:none!important;width:18px!important}.experience-timeline .timeline-track button i{left:50%;margin:0!important;position:absolute;top:50%;transform:translate(-50%,-50%)}.experience-timeline .timeline-track button span{bottom:13px;left:50%;position:absolute;transform:translateX(-50%);white-space:nowrap}.experience-timeline .timeline-track button.is-distant{opacity:0!important;pointer-events:none!important}.experience-stage{transform:scale(.86);transform-origin:top center}.experience-nav{margin-top:58px;z-index:10}@media(max-width:760px){.experience-stage{transform:scale(.92)}.experience-nav{margin-top:22px}}

/* Final visual scale and clearly separated year labels. */
.experience-timeline{height:160px!important;width:min(650px,74vw)!important}.experience-timeline .timeline-arc{height:var(--dial-diameter)!important;top:var(--dial-top)!important;width:var(--dial-diameter)!important}.experience-timeline .timeline-track button{z-index:4!important}.experience-timeline .timeline-track button span{background:rgba(250,250,248,.94);bottom:22px!important;color:inherit!important;display:block!important;font-size:11px!important;font-weight:650!important;line-height:1!important;padding:2px 4px!important;text-shadow:0 0 5px #fafaf8;z-index:6}.experience-timeline .timeline-track button.active span{color:var(--blue)!important}@media(max-width:760px){.experience-timeline{height:130px!important;width:min(410px,82vw)!important}.experience-timeline .timeline-track button span{bottom:19px!important;font-size:10px!important}}

/* The fan is a fixed set of four cards. Selection never reorders or moves a card. */
.experience-card.fixed-card-0,.experience-card.fixed-card-1,.experience-card.fixed-card-2,.experience-card.fixed-card-3{height:286px!important;width:205px!important}.experience-card.fixed-card-0{opacity:.5;transform:translateX(-188%) translateY(90px) rotate(calc(-32deg + var(--fan-turn,0deg)))!important;z-index:3}.experience-card.fixed-card-1{opacity:.76;transform:translateX(-128%) translateY(46px) rotate(calc(-20deg + var(--fan-turn,0deg)))!important;z-index:5}.experience-card.fixed-card-2{opacity:1;transform:translateX(-50%) translateY(-5px) rotate(calc(0deg + var(--fan-turn,0deg)))!important;z-index:8}.experience-card.fixed-card-3{opacity:.76;transform:translateX(28%) translateY(46px) rotate(calc(20deg + var(--fan-turn,0deg)))!important;z-index:5}.experience-card.fixed-card-0.active,.experience-card.fixed-card-1.active,.experience-card.fixed-card-2.active,.experience-card.fixed-card-3.active{opacity:1}.experience-card.fixed-card-0 img,.experience-card.fixed-card-1 img,.experience-card.fixed-card-2 img,.experience-card.fixed-card-3 img{height:174px!important}@media(max-width:760px){.experience-card.fixed-card-0{transform:translateX(-178%) translateY(82px) rotate(calc(-29deg + var(--fan-turn,0deg)))!important}.experience-card.fixed-card-1{transform:translateX(-120%) translateY(42px) rotate(calc(-18deg + var(--fan-turn,0deg)))!important}.experience-card.fixed-card-2{transform:translateX(-50%) translateY(-4px) rotate(calc(0deg + var(--fan-turn,0deg)))!important}.experience-card.fixed-card-3{transform:translateX(20%) translateY(42px) rotate(calc(18deg + var(--fan-turn,0deg)))!important}}

/* Linear fan carousel: cards step through the fan without a circular jump from one edge to the other. */
.experience-card.position--3,.experience-card.position--2,.experience-card.position--1,.experience-card.position-0,.experience-card.position-1,.experience-card.position-2,.experience-card.position-3{height:286px!important;width:205px!important}.experience-card.position--3{opacity:.25;transform:translateX(-240%) translateY(132px) rotate(-43deg)!important;z-index:1}.experience-card.position--2{opacity:.5;transform:translateX(-188%) translateY(90px) rotate(-32deg)!important;z-index:3}.experience-card.position--1{opacity:.76;transform:translateX(-128%) translateY(46px) rotate(-20deg)!important;z-index:5}.experience-card.position-0{opacity:1;transform:translateX(-50%) translateY(-5px) rotate(0)!important;z-index:8}.experience-card.position-1{opacity:.76;transform:translateX(28%) translateY(46px) rotate(20deg)!important;z-index:5}.experience-card.position-2{opacity:.5;transform:translateX(88%) translateY(90px) rotate(32deg)!important;z-index:3}.experience-card.position-3{opacity:.25;transform:translateX(140%) translateY(132px) rotate(43deg)!important;z-index:1}.experience-card.position--3 img,.experience-card.position--2 img,.experience-card.position--1 img,.experience-card.position-0 img,.experience-card.position-1 img,.experience-card.position-2 img,.experience-card.position-3 img{height:174px!important}.experience-nav>button:disabled{cursor:default;opacity:.22}@media(max-width:760px){.experience-card.position--3{transform:translateX(-220%) translateY(114px) rotate(-39deg)!important}.experience-card.position--2{transform:translateX(-178%) translateY(82px) rotate(-29deg)!important}.experience-card.position--1{transform:translateX(-120%) translateY(42px) rotate(-18deg)!important}.experience-card.position-0{transform:translateX(-50%) translateY(-4px) rotate(0)!important}.experience-card.position-1{transform:translateX(20%) translateY(42px) rotate(18deg)!important}.experience-card.position-2{transform:translateX(78%) translateY(82px) rotate(29deg)!important}.experience-card.position-3{transform:translateX(120%) translateY(114px) rotate(39deg)!important}}

/* --- LQY LITTLE UNIVERSE: cinematic opening and richer editorial rhythm --- */
.site-header{background:rgba(255,255,255,.78)!important;backdrop-filter:blur(18px);border-bottom-color:rgba(12,37,90,.18)!important}.intro-section{background:#070b22!important;color:#f7f7fb!important;isolation:isolate;min-height:810px!important;overflow:hidden;padding:146px max(6vw,48px) 104px!important;position:relative}.intro-section:before{background:linear-gradient(90deg,rgba(4,8,29,.96) 0%,rgba(4,8,29,.74) 44%,rgba(4,8,29,.13) 77%),url("assets/images/lqy-cosmic-hero.png") center/cover no-repeat;content:"";inset:0;position:absolute;z-index:-2}.intro-section:after{background:radial-gradient(circle at 22% 58%,rgba(84,114,255,.24),transparent 22%),radial-gradient(circle at 76% 12%,rgba(182,149,255,.17),transparent 18%);content:"";inset:0;pointer-events:none;position:absolute;z-index:-1}.cosmos-atmosphere{inset:0;pointer-events:none;position:absolute;z-index:0}.star{animation:twinkle 3.2s ease-in-out infinite alternate;background:#fff;border-radius:50%;box-shadow:0 0 13px 4px rgba(172,205,255,.7);height:4px;position:absolute;width:4px}.star-one{left:47%;top:18%}.star-two{left:65%;top:31%;animation-delay:1.2s}.star-three{left:29%;top:77%;animation-delay:.5s}.butterfly{animation:floaty 7s ease-in-out infinite;color:#d4d1ff;font:26px/1 serif;opacity:.72;position:absolute;text-shadow:0 0 16px #a4c6ff}.butterfly-one{left:69%;top:24%}.butterfly-two{bottom:18%;left:55%;animation-delay:-3s}.intro-copy,.intro-portrait,.skill-lines{position:relative;z-index:1}.intro-copy{max-width:720px!important}.intro-section .section-no{color:#b6c8ff!important}.intro-kicker{color:#c9d5ff;font:12px var(--mono);letter-spacing:.14em;margin:16px 0}.intro-copy h1{color:#fff!important;font-size:clamp(56px,6.4vw,104px)!important;letter-spacing:-.075em;line-height:.95!important;margin:0!important;text-shadow:0 8px 42px rgba(0,0,0,.28)}.intro-copy h1 span{color:#e7ecff;font-weight:500}.intro-copy h1 em{color:#a9c8ff!important;font-style:normal}.intro-lede{border-left:1px solid #96b6ff!important;color:#e2e9ff!important;font:18px/1.8 var(--serif)!important;margin-top:32px!important;max-width:600px!important;padding-left:20px}.intro-actions{align-items:center;display:flex;flex-wrap:wrap;gap:24px;margin-top:34px}.intro-link{background:#dbe7ff!important;border:0!important;color:#092a7e!important;font-weight:700;padding:13px 18px!important}.intro-link:hover{background:#fff!important;transform:translateY(-3px)}.intro-quiet-link{color:#e3e8ff;font:13px var(--mono);letter-spacing:.08em;text-decoration:none}.intro-quiet-link:hover{color:#fff}.orbit-notes{display:flex;gap:11px;margin-top:38px}.orbit-notes span{border:1px solid rgba(205,219,255,.34);border-radius:999px;color:#dce6ff;font:12px var(--mono);padding:8px 11px}.intro-portrait{background:rgba(241,246,255,.1)!important;border:1px solid rgba(225,234,255,.42)!important;box-shadow:0 24px 58px rgba(0,0,0,.34)!important;right:8%!important;top:154px!important;transform:rotate(4deg);backdrop-filter:blur(11px)}.intro-portrait>span{background:#e8efff!important;color:#173b90!important}.intro-portrait figcaption{color:#e6edff!important}.skill-lines{background:rgba(8,17,53,.55)!important;border:1px solid rgba(202,219,255,.2);border-radius:20px!important;bottom:36px!important;box-shadow:0 20px 40px rgba(0,0,0,.18);left:max(6vw,48px)!important;padding:0 16px!important;width:min(1020px,82vw)!important}.skill-lines article{border-color:rgba(210,224,255,.15)!important;padding:18px 16px!important}.skill-lines article span{color:#9dbbff!important}.skill-lines article b{color:#fff!important;font-size:18px!important}.skill-lines article p{color:#cbd7fa!important;font:13px/1.5 var(--serif)!important}

.experience-section{background:linear-gradient(140deg,#f7f9ff,#fff 55%,#edf1ff)!important}.experience-section .section-title h2{max-width:620px}.writing-section{background:linear-gradient(130deg,#fff 5%,#f2f0ff 100%)!important}.writing-title>p{color:#5c6280!important;font:17px/1.75 var(--serif)!important;max-width:650px}.writing-detail{box-shadow:0 24px 60px rgba(50,58,115,.12)!important}.writing-detail:before{background:linear-gradient(90deg,#6b8cf5,#baa6f1)!important}.visual-section{background:radial-gradient(circle at 80% 20%,#e6ecff,transparent 28%),#f8f8f5!important}.social-section{background:#f5f7ff!important}.contact-section{background:radial-gradient(circle at 82% 16%,rgba(136,163,255,.18),transparent 29%),#0a1641!important;color:#eff3ff!important;overflow:hidden;position:relative}.contact-section:before{background-image:radial-gradient(rgba(190,208,255,.55) 1px,transparent 1px);background-size:27px 27px;content:"";inset:0;opacity:.26;pointer-events:none;position:absolute}.contact-section>*{position:relative;z-index:1}.contact-section .section-no,.contact-section .contact-copy p,.contact-section .contact-letter p,.contact-section .contact-letter h3{color:#eff3ff!important}.contact-section h2,.contact-section h2 em{color:#fff!important}.honor-tickets{gap:14px!important}.honor-tickets article{background:linear-gradient(145deg,#f4f6ff,#dce6ff)!important;border:1px solid rgba(255,255,255,.7)!important;box-shadow:0 18px 34px rgba(0,0,0,.25)!important;min-height:170px!important}.honor-tickets article:nth-child(2n){background:linear-gradient(145deg,#eee7ff,#d9cef8)!important;transform:translateY(22px) rotate(2deg)}.honor-tickets article:nth-child(3n){background:linear-gradient(145deg,#dff3ff,#c6d9ff)!important;transform:translateY(-10px) rotate(-2deg)}.honor-tickets article i{color:#184fc5!important;font-size:27px!important}.contact-letter{background:rgba(255,255,255,.1)!important;border-color:rgba(224,234,255,.35)!important;backdrop-filter:blur(14px)}.contact-list a{color:#fff!important}.contact-list .resume{background:#dce7ff!important;color:#092a7e!important}
@keyframes twinkle{to{opacity:.35;transform:scale(.45)}}@keyframes floaty{50%{transform:translate(18px,-22px) rotate(11deg)}}
@media(max-width:900px){.intro-section{min-height:900px!important;padding:118px 30px 74px!important}.intro-copy{max-width:560px!important}.intro-portrait{opacity:.86;right:4%!important;top:390px!important;transform:scale(.78) rotate(4deg);transform-origin:top right}.skill-lines{bottom:30px!important;left:30px!important;width:calc(100% - 60px)!important}.skill-lines article{min-width:45%}.intro-copy h1{font-size:clamp(52px,11vw,76px)!important}.intro-lede{font-size:16px!important}.butterfly-one{left:81%}.butterfly-two{left:45%}}
.intro-copy h1{font-size:clamp(56px,5.8vw,86px)!important}
.honor-tickets article p{color:#10275e!important;font:600 20px/1.25 var(--serif)!important}.honor-tickets article small,.honor-tickets article span{color:#2452b5!important}

/* Skills belong to the experience section: education evidence first, production capability second. */
.experience-lede{color:#4e5774;font:17px/1.72 var(--serif);margin:10px 0 -30px;max-width:650px}.experience-section .skill-lines{background:rgba(255,255,255,.74)!important;border:1px solid rgba(50,89,175,.14);border-radius:18px!important;bottom:auto!important;box-shadow:0 18px 35px rgba(43,68,145,.09);left:auto!important;margin:18px auto 0;padding:0 16px!important;position:relative!important;width:min(1020px,92vw)!important}.experience-section .skill-lines article{border-color:rgba(44,78,165,.13)!important;padding:16px!important}.experience-section .skill-lines article span{color:#2259ce!important}.experience-section .skill-lines article b{color:#142c67!important}.experience-section .skill-lines article p{color:#54607d!important}.intro-section .skill-lines{display:none!important}@media(max-width:760px){.experience-lede{font-size:15px;margin:4px 0 -18px}.experience-section .skill-lines{margin-top:8px;width:100%!important}.experience-section .skill-lines article{min-width:46%;padding:14px 10px!important}}
html,body{overflow-x:hidden}.experience-section{overflow:hidden}

/* --- Twilight continuum: one scroll-long dusk sky, not isolated page colors. --- */
html{background:#11195a}body{background:linear-gradient(180deg,#121b69 0%,#263786 15%,#745695 37%,#bc7fa8 57%,#e59a80 77%,#f6bd78 100%)!important;color:#fff;min-height:100%;position:relative}body:before{background-image:radial-gradient(circle at 16% 14%,rgba(215,230,255,.72) 0 1px,transparent 1.7px),radial-gradient(circle at 79% 32%,rgba(255,228,172,.68) 0 1px,transparent 1.8px),radial-gradient(circle at 34% 76%,rgba(255,255,255,.44) 0 1px,transparent 1.6px),radial-gradient(circle at 92% 68%,rgba(255,217,146,.48) 0 1px,transparent 1.8px);background-size:173px 173px,239px 239px,137px 137px,311px 311px;content:"";inset:0;opacity:.76;pointer-events:none;position:absolute;z-index:0}.site-header,main,footer{position:relative;z-index:2}.site-header{background:rgba(14,22,69,.34)!important;border-bottom:1px solid rgba(246,219,200,.32)!important}.brand,.main-nav a,.nav-toggle{color:#fff!important}.brand-mark{border-color:#f8d49a!important;color:#f8d49a!important}.main-nav a.active{border-color:#ffd28d!important;color:#ffd28d!important}.section{background:transparent!important}.section-title h2,.section-title h2 em,.section-title p,.social-head h2,.social-head h2 em,.social-intro,.contact-copy h2,.contact-copy h2 em{color:#fff!important}.section-no{color:#f8d39b!important}.experience-section,.writing-section,.visual-section,.social-section,.contact-section{background:transparent!important}.experience-section:before,.writing-section:before,.visual-section:before,.social-section:before{background:linear-gradient(90deg,rgba(20,28,83,.12),rgba(255,220,190,.08),rgba(38,40,110,.12));content:"";inset:0;pointer-events:none;position:absolute}.experience-section,.writing-section,.visual-section,.social-section{isolation:isolate;position:relative}.experience-section>*,.writing-section>*,.visual-section>*,.social-section>*{position:relative;z-index:1}.experience-lede{color:#fff!important;text-shadow:0 1px 12px rgba(31,20,75,.25)}.intro-section{background:transparent!important}.intro-section:before{background:linear-gradient(90deg,rgba(13,20,83,.76),rgba(31,31,105,.24) 52%,rgba(94,62,119,.11)),url("assets/images/lqy-cosmic-hero.png") center/cover no-repeat!important;mix-blend-mode:screen;opacity:.78}.intro-section:after{background:linear-gradient(180deg,rgba(5,10,56,.2),transparent 70%)!important}.intro-copy h1{color:#fff!important;text-shadow:0 8px 40px rgba(16,16,72,.38)}.intro-copy h1 span{color:#fff4e8!important}.intro-copy h1 em{color:#ffd69a!important}.intro-lede{border-color:#f8d39b!important;color:#fff8f2!important}.intro-kicker,.intro-section .section-no{color:#ffe0ae!important}.intro-link{background:linear-gradient(135deg,#ffe2ac,#f0a47c)!important;color:#5a2856!important}.intro-quiet-link{color:#fff3df!important}.orbit-notes span{border-color:rgba(255,228,192,.55)!important;color:#fff4e7!important}.intro-portrait{border-color:rgba(255,224,190,.52)!important}.intro-portrait>span{background:#ffe4b6!important;color:#6b3154!important}.skill-lines,.experience-section .skill-lines{background:rgba(255,250,244,.78)!important;border-color:rgba(255,226,194,.65)!important;box-shadow:0 20px 48px rgba(47,26,85,.2)!important}.experience-section .skill-lines article{border-color:rgba(160,103,152,.18)!important}.experience-section .skill-lines article span{color:#b06181!important}.experience-section .skill-lines article b{color:#56345c!important}.experience-section .skill-lines article p{color:#765b71!important}.writing-title>p{color:#fff9f1!important;max-width:740px;text-shadow:0 1px 10px rgba(45,23,71,.26)!important}.writing-list button,.writing-detail{box-shadow:0 16px 40px rgba(47,29,81,.15)!important}.visual-title p{color:#fff9f2!important}.book-stage{filter:drop-shadow(0 22px 35px rgba(45,28,73,.21))}.social-post{box-shadow:0 15px 35px rgba(54,29,78,.18)!important}.metric-strip{background:rgba(255,247,244,.2)!important;border-color:rgba(255,236,212,.5)!important}.metric-strip *{color:#fff!important}.contact-section{background:transparent!important}.contact-section:before{background:none!important}.honor-tickets article{box-shadow:0 18px 35px rgba(53,26,72,.27)!important}.contact-letter{background:rgba(38,27,82,.28)!important;border-color:rgba(255,225,192,.45)!important}.contact-section .contact-copy p,.contact-section .contact-letter p,.contact-section .contact-letter h3{color:#fffaf3!important}.contact-list a{border-color:rgba(255,233,206,.28)!important}.contact-list .resume{background:linear-gradient(135deg,#ffe4b2,#eea17f)!important;color:#59294e!important}footer{background:rgba(45,27,74,.18)!important;border-color:rgba(255,231,207,.25)!important;color:#fff7ef!important}footer a{color:#ffe0a4!important}
.twilight-ambience{inset:0;overflow:hidden;pointer-events:none;position:absolute;z-index:1}.twilight-ambience:before,.twilight-ambience:after{content:"";inset:0;opacity:.52;pointer-events:none;position:fixed}.twilight-ambience:before{animation:starBreathe 5.8s ease-in-out infinite alternate;background-image:radial-gradient(circle,rgba(230,240,255,.95) 0 1.2px,transparent 1.8px),radial-gradient(circle,rgba(255,220,151,.92) 0 1.2px,transparent 1.9px);background-position:11vw 24vh,78vw 65vh;background-repeat:repeat;background-size:191px 191px,263px 263px}.twilight-ambience:after{animation:starBreathe 7.2s ease-in-out -2.7s infinite alternate;background-image:radial-gradient(circle,rgba(255,248,220,.8) 0 1px,transparent 1.8px);background-size:317px 317px}.ambient-glow{border-radius:50%;filter:blur(26px);opacity:.34;position:fixed}.glow-a{background:#ffd394;height:180px;right:10%;top:62%;width:180px}.glow-b{background:#a9c8ff;height:150px;left:4%;top:18%;width:150px}.ambient-butterfly{height:24px;opacity:.72;position:fixed;width:30px;z-index:3}.ambient-butterfly:before,.ambient-butterfly:after{animation:wingShimmer 1.8s ease-in-out infinite alternate;background:radial-gradient(ellipse at 70% 30%,#fff7cf 0 8%,#ffd483 25%,#c9b5ff 64%,rgba(190,151,255,.1) 72%);border-radius:76% 24% 72% 28%;box-shadow:0 0 12px rgba(255,211,133,.65);content:"";height:22px;position:absolute;top:1px;transform-origin:100% 100%;width:17px}.ambient-butterfly:after{left:14px;transform:scaleX(-1);transform-origin:0 100%}.butterfly-a{animation:butterflyFloat 13s ease-in-out infinite;left:8%;top:39%}.butterfly-b{animation:butterflyFloat 17s ease-in-out -6s infinite;right:9%;top:58%}.butterfly-c{animation:butterflyFloat 15s ease-in-out -10s infinite;left:67%;top:83%}@keyframes butterflyFloat{50%{transform:translate(42px,-62px) rotate(14deg)}}@keyframes wingShimmer{to{filter:brightness(1.35) saturate(1.2);opacity:.63}}@keyframes starBreathe{to{opacity:.94}}
@media(max-width:760px){.site-header{background:rgba(16,21,75,.58)!important}.intro-section:before{opacity:.55}.twilight-ambience .ambient-butterfly{transform:scale(.72)}.butterfly-a{left:4%}.butterfly-b{right:2%}.butterfly-c{left:72%}.section-title h2{font-size:clamp(43px,13vw,65px)!important}.experience-section .skill-lines{background:rgba(255,250,244,.84)!important}.writing-title>p{font-size:16px!important}.contact-section{padding-bottom:85px!important}}
.writing-detail,.writing-detail h3,.writing-detail p,.writing-detail b,.writing-detail .detail-code,.writing-detail .detail-label,.writing-detail .detail-summary{color:#28223b!important}.writing-detail .detail-code{color:#3055b6!important}.writing-detail .detail-label{color:#7e5477!important}.writing-detail .detail-bottom p{color:#645d6b!important}.writing-detail .detail-bottom b{color:#234aa3!important}.book-text-page,.book-text-page h3,.book-text-page p,.book-media-page,.book-media-page p{color:#30273d!important}.book-text-page small,.book-media-page small{color:#835f80!important}.social-post,.social-post h3,.social-post p,.social-post b{color:#2d2941!important}.social-post .post-image span{color:#fff!important}.honor-tickets article{color:#192b59!important}

/* --- Editorial balance pass: wider experience dial + dusk-compatible paper. --- */
.experience-section{min-height:1080px!important}
.experience-lede{margin:12px 0 22px!important;max-width:720px}
.experience-section .skill-lines{margin:0 auto 26px!important}
.experience-stage{height:480px!important;margin-top:6px!important;max-width:1180px!important;transform:scale(.98)!important;transform-origin:top center}
.experience-card.position--3,.experience-card.position--2,.experience-card.position--1,.experience-card.position-0,.experience-card.position-1,.experience-card.position-2,.experience-card.position-3{height:316px!important;width:226px!important}
.experience-card.position-0{height:390px!important;width:280px!important}
.experience-card.position--3{transform:translateX(-252%) translateY(145px) rotate(-43deg)!important}.experience-card.position--2{transform:translateX(-196%) translateY(98px) rotate(-32deg)!important}.experience-card.position--1{transform:translateX(-132%) translateY(50px) rotate(-20deg)!important}.experience-card.position-1{transform:translateX(32%) translateY(50px) rotate(20deg)!important}.experience-card.position-2{transform:translateX(96%) translateY(98px) rotate(32deg)!important}.experience-card.position-3{transform:translateX(152%) translateY(145px) rotate(43deg)!important}
.experience-card.position--3 img,.experience-card.position--2 img,.experience-card.position--1 img,.experience-card.position-1 img,.experience-card.position-2 img,.experience-card.position-3 img{height:190px!important}.experience-card.position-0 img{height:242px!important}
.experience-nav{height:276px!important;margin-top:8px!important;width:min(940px,90vw)!important}.experience-timeline{height:226px!important;width:min(880px,84vw)!important}.experience-timeline .timeline-arc{height:var(--dial-diameter)!important;width:var(--dial-diameter)!important}.experience-timeline .timeline-track button span{background:rgba(247,235,232,.88)!important;bottom:25px!important;color:#5f4162!important;padding:3px 6px!important}.experience-timeline .timeline-track button.active span{color:#6d3975!important}.experience-timeline .timeline-hand{height:104px!important}

.writing-list{border-color:rgba(89,57,96,.42)!important}.writing-list button{border-color:rgba(89,57,96,.27)!important;color:#573757!important}.writing-list button span,.writing-list button i{color:#a47088!important}.writing-list button.active,.writing-list button:hover{background:rgba(255,243,224,.2)!important;color:#74406f!important}
.writing-detail{background:#fff8eb!important;border-color:rgba(96,59,101,.52)!important;box-shadow:12px 14px 0 rgba(116,75,128,.25)!important}.writing-detail .detail-code,.writing-detail .detail-bottom b{color:#a66e82!important}.writing-detail .detail-label{color:#8d6178!important}.writing-detail h3{color:#42294c!important}.writing-detail .detail-summary{border-color:rgba(94,55,95,.42)!important;color:#4d344f!important}.writing-detail .detail-bottom p{color:#765a68!important}.video-slot{background:linear-gradient(135deg,#493163,#715081)!important;color:#fff8ed!important}.video-slot span{color:#f3c981!important}

.visual-book .flip-page{background:#fff7e8!important;color:#473049!important}.visual-book .flip-cover{background:radial-gradient(circle at 78% 15%,rgba(244,203,133,.24),transparent 29%),linear-gradient(150deg,#29235b 5%,#63406f 58%,#9e6681 100%)!important}.visual-book .flip-cover p,.visual-book .flip-cover span,.visual-book .flip-back-cover p,.visual-book .flip-back-cover span{color:#f5d79b!important}.visual-book .flip-cover h3{color:#fff8ea!important}.visual-book .flip-copy-page>p{color:#a77080!important}.visual-book .flip-copy-page h3,.visual-book .flip-copy-page>b{color:#49304d!important}.visual-book .flip-copy-page>div{border-color:rgba(82,47,82,.42)!important}.visual-book .flip-media-page{background:#fff4e2!important}.visual-book .flip-media-page span{background:linear-gradient(135deg,#493163,#76517b)!important;border-color:#8e6a94!important;color:#fff7e8!important}.visual-book .flip-back-cover{background:linear-gradient(145deg,#33235f,#81516f)!important}.book-side{background:#fff4e5!important;color:#70416d!important}.book-side:hover{background:#6c426c!important;color:#fff8ed!important}.book-dots i{background:rgba(255,239,215,.5)!important}.book-dots i.active{background:#f0c676!important}.book-nav>span{color:#fff0d6!important}

@media(max-width:760px){.experience-section{min-height:940px!important}.experience-lede{margin:8px 0 18px!important}.experience-section .skill-lines{margin-bottom:18px!important}.experience-stage{height:410px!important;transform:scale(.94)!important}.experience-card.position--3,.experience-card.position--2,.experience-card.position--1,.experience-card.position-0,.experience-card.position-1,.experience-card.position-2,.experience-card.position-3{height:286px!important;width:205px!important}.experience-card.position-0{height:310px!important;width:220px!important}.experience-card.position-0 img{height:188px!important}.experience-card.position--3 img,.experience-card.position--2 img,.experience-card.position--1 img,.experience-card.position-1 img,.experience-card.position-2 img,.experience-card.position-3 img{height:174px!important}.experience-nav{height:205px!important;margin-top:0!important;width:100%!important}.experience-timeline{height:170px!important;width:min(640px,90vw)!important}.experience-timeline .timeline-hand{height:76px!important}.experience-timeline .timeline-track button span{bottom:19px!important;font-size:9px!important;padding:2px 3px!important}.writing-detail{box-shadow:8px 10px 0 rgba(116,75,128,.22)!important}.visual-book .flip-page{background:#fff7e8!important}.book-side{box-shadow:0 4px 15px rgba(44,25,68,.24)!important}}

/* --- Human, readable typography and final component harmonization. --- */
:root{--mono:"JetBrains Mono","Noto Sans SC",sans-serif;--serif:"Noto Sans SC",sans-serif}
.site-header{left:0!important;position:fixed!important;right:0!important;top:0!important;width:100%!important;z-index:100!important}
.main-nav a:after{background:linear-gradient(90deg,transparent,#ffd28d 18%,#ffe6b6 50%,#ffd28d 82%,transparent)!important;bottom:17px!important;box-shadow:0 0 9px rgba(255,210,141,.45);height:1px!important}
.main-nav a.active,.main-nav a:hover{color:#ffe0a7!important}
.experience-back{display:flex!important;flex-direction:column;justify-content:center;padding:30px 23px!important}.experience-back small{margin-bottom:10px}.experience-back b{line-height:1.14!important;margin-top:0!important}.experience-back p{line-height:1.72!important;margin:29px 0 0!important}.experience-back em{bottom:auto!important;display:block;left:auto!important;margin-top:25px;position:static!important}
.intro-copy h1,.section-title h2,.social-head h2,.contact-copy h2,.writing-detail h3,.flip-copy-page h3{font-family:"Noto Serif SC","Noto Sans SC",serif!important;font-weight:600!important;letter-spacing:-.065em}
.intro-kicker,.section-no,.brand,.main-nav a,.intro-quiet-link,.experience-front small,.experience-back small,.metric-strip small,.honor-tickets small,.honor-tickets span{font-family:"Noto Sans SC",sans-serif!important;font-weight:600!important;letter-spacing:.075em}
.site-header{background:rgba(12,20,70,.62)!important;backdrop-filter:blur(13px);transition:background .35s ease,backdrop-filter .35s ease,border-color .35s ease}.site-header.is-scrolled{background:rgba(27,22,62,.22)!important;border-bottom-color:rgba(255,235,204,.22)!important;backdrop-filter:blur(21px)}
.intro-actions{align-items:center!important}.intro-link,.intro-quiet-link{align-items:center;display:inline-flex;height:50px;margin-top:0!important}.intro-link{justify-content:center}.intro-quiet-link{padding:0 3px}
.experience-back{background:linear-gradient(150deg,#3b2c61,#7d4d75 62%,#b57b82)!important;color:#fff8ed!important}.experience-back small,.experience-back em{color:#f6d7a4!important}.experience-back p{color:#fff1e3!important}
.metric-strip{align-items:center!important;align-self:stretch;justify-content:center!important;min-height:68px;padding:9px 18px!important}.metric-strip span{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:48px;text-align:center}.metric-strip b{color:#fff8ed!important;line-height:1!important}.metric-strip small{color:#fff9ef!important;line-height:1.35!important;margin-top:5px!important}
.honor-tickets article,.honor-tickets article:nth-child(2n),.honor-tickets article:nth-child(3n){background:linear-gradient(135deg,#fff0d6,#f4c898)!important;border-color:rgba(117,67,73,.25)!important;box-shadow:0 16px 30px rgba(104,50,68,.2)!important;color:#633d50!important}.honor-tickets article:nth-child(2n){background:linear-gradient(135deg,#fbe1d7,#eeb9aa)!important}.honor-tickets article:nth-child(3n){background:linear-gradient(135deg,#f8e5be,#e9bd85)!important}.honor-tickets article p{color:#633d50!important}.honor-tickets article small,.honor-tickets article span,.honor-tickets article i{color:#a25b63!important}.honor-tickets article:hover{background:linear-gradient(135deg,#733f61,#a65f70)!important;color:#fff8ec!important}.honor-tickets article:hover p,.honor-tickets article:hover small,.honor-tickets article:hover span,.honor-tickets article:hover i{color:#fff3dc!important}
@media(max-width:760px){.site-header{background:rgba(12,20,70,.72)!important}.site-header.is-scrolled{background:rgba(27,22,62,.28)!important}.intro-link,.intro-quiet-link{height:46px}.metric-strip{align-items:stretch!important;justify-content:center!important;min-height:0;padding:10px!important}.metric-strip span{min-height:52px}.honor-tickets article,.honor-tickets article:nth-child(2n),.honor-tickets article:nth-child(3n){transform:none!important}}

/* Final interaction polish: a warm dial hand, calm book controls and a compact data strip. */
.experience-timeline .timeline-hand{background:#f1c979!important;box-shadow:0 0 16px rgba(241,201,121,.55)!important}
.experience-timeline .timeline-hand:after{background:#f1c979!important;box-shadow:0 0 10px rgba(241,201,121,.48)!important}
.book-stage{isolation:isolate;position:relative}
.visual-book{margin-left:auto!important;margin-right:auto!important;position:relative!important}
.visual-book .stf__wrapper,.visual-book .stf__block{background:transparent!important}
.visual-book .stf__wrapper{margin-left:auto!important;margin-right:auto!important;transform:translateZ(0)}
.book-stage.is-front-cover .visual-book .stf__wrapper,.book-stage.is-back-cover .visual-book .stf__wrapper{box-shadow:none!important}
.book-nav{margin-top:38px!important;position:relative;z-index:2}
@media(max-width:760px){.book-nav{margin-top:30px!important}}
.visual-book .flip-page.--left{box-shadow:inset -.5px 0 0 rgba(78,58,82,.36),inset -12px 0 20px -22px rgba(55,38,62,.28)!important}
.visual-book .flip-page.--right{box-shadow:inset 9px 0 18px -22px rgba(55,38,62,.2)!important}
.book-stage .visual-book{transition:transform .48s cubic-bezier(.22,.72,.2,1)}
.book-stage.is-front-cover .visual-book{transform:translateX(-25%)}
.book-stage.is-back-cover .visual-book{transform:translateX(25%)}
.book-stage.is-open-book .visual-book{transform:translateX(0)}
.book-stage .book-side{transition:opacity .28s ease,transform .28s ease,background .2s ease}
.book-stage.is-front-cover .book-side-prev,.book-stage.is-back-cover .book-side-next{opacity:0;pointer-events:none;transform:translateY(-50%) scale(.82)}
.book-stage.is-front-cover .book-side-next,.book-stage.is-back-cover .book-side-prev,.book-stage.is-open-book .book-side{opacity:1;pointer-events:auto;transform:translateY(-50%) scale(1)}
.book-stage.is-turning .book-side{opacity:.38;pointer-events:none}
.book-side{align-items:center!important;display:flex!important;font-size:0!important;justify-content:center!important;line-height:1!important;padding:0!important;text-align:center!important}
.book-side:before{align-items:center;display:flex;font:400 29px/1 "Noto Serif SC",serif;height:100%;justify-content:center;transform:translateY(-1px);width:100%}
.book-side-prev:before{content:"‹"}.book-side-next:before{content:"›"}
.metric-strip{min-height:54px!important;padding:5px 16px!important}.metric-strip span{min-height:40px!important}.metric-strip small{margin-top:2px!important}
@media(max-width:760px){.book-stage.is-front-cover .visual-book,.book-stage.is-back-cover .visual-book,.book-stage.is-open-book .visual-book{transform:none}.metric-strip{padding:6px 9px!important}.metric-strip span{min-height:43px!important}}

/* Writing work videos live beside the editable copy instead of using a placeholder tile. */
.work-video{background:#2f234b;border:1px solid rgba(125,83,126,.45);border-radius:10px;display:block;max-height:230px;min-height:150px;object-fit:contain;width:100%}
.detail-bottom:has(.work-video){grid-template-columns:minmax(130px,.72fr) minmax(130px,.72fr) minmax(300px,1.35fr)}
@media(max-width:760px){.work-video{max-height:280px;min-height:190px}.detail-bottom:has(.work-video){grid-template-columns:1fr}}

/* P3 长文案阅读：让故事与创作想法有稳定层级，避免挤在视频卡片中。 */
.writing-detail{align-content:start!important;padding-bottom:34px!important}
.detail-copy{display:grid;gap:16px;margin-top:18px;max-width:900px}
.detail-summary{font-size:15px!important;line-height:1.92!important;margin:0!important;max-width:none!important}
.detail-story{border-left:2px solid rgba(96,59,101,.3);display:grid;gap:12px;margin:2px 0 0;padding:2px 0 2px 18px}
.detail-story p{font-size:14px!important;line-height:1.85!important;margin:0!important;max-width:none!important}
.detail-note{background:rgba(235,214,226,.42);border-radius:12px;margin:2px 0 4px;padding:15px 17px}
.detail-note b{color:#6f3e6d!important;display:block;font-size:12px!important;letter-spacing:.12em;margin-bottom:7px}
.detail-note p{font-size:14px!important;line-height:1.8!important;margin:0!important;max-width:none!important}
.detail-bottom{align-items:start!important;margin-top:26px!important}
.detail-meta{display:grid;gap:14px}
.detail-bottom{grid-template-columns:minmax(190px,.78fr) minmax(230px,1.15fr)!important}
.detail-bottom:has(.work-video){grid-template-columns:minmax(190px,.78fr) minmax(340px,1.55fr)!important}
@media(max-width:760px){.writing-detail{padding-bottom:24px!important}.detail-copy{gap:14px;margin-top:16px}.detail-summary{font-size:14px!important;line-height:1.85!important}.detail-story{padding-left:14px}.detail-story p,.detail-note p{font-size:13px!important}.detail-note{padding:14px}.detail-bottom,.detail-bottom:has(.work-video){grid-template-columns:1fr!important}}

/* Responsive polish: mobile navigation, portrait and P3's long-form work viewer. */
.work-video{align-self:start;background:transparent!important;border:0!important;border-radius:8px!important;box-shadow:none!important;height:auto!important;max-height:170px!important;max-width:280px!important;min-height:0!important;object-fit:initial!important;width:280px!important}
.detail-bottom:has(.work-video){grid-template-columns:minmax(190px,.78fr) minmax(280px,1fr)!important}
.detail-bottom:has(.work-video) .work-video{justify-self:end}
.metric-strip{align-self:end!important;min-height:42px!important;padding:4px 13px!important}
.metric-strip span{min-height:32px!important}
.metric-strip b{font-size:29px!important}
.book-stage{box-sizing:border-box!important;max-width:840px!important;padding:0 62px!important}
.visual-book{height:500px!important;max-width:720px!important}
.book-side-prev{left:9px!important}.book-side-next{right:9px!important}
.visual-book .flip-page{background:#fcfcf8!important;color:#26243c!important}
.visual-book .flip-cover{background:radial-gradient(circle at 78% 15%,rgba(177,203,255,.25),transparent 29%),linear-gradient(150deg,#151d62 5%,#3d4e9b 62%,#7869ab 100%)!important}
.visual-book .flip-copy-page>p{color:#5a67a9!important}
.visual-book .flip-copy-page h3,.visual-book .flip-copy-page>b{color:#2a2d57!important}
.visual-book .flip-copy-page>div{border-color:rgba(61,78,155,.34)!important}
.visual-book .flip-media-page{background:#eef1ff!important}
.visual-book .flip-media-page span{background:linear-gradient(135deg,#263c92,#5f62a8)!important;border-color:#7b87c8!important;color:#fff!important}
.visual-book .flip-back-cover{background:linear-gradient(145deg,#151d62,#6b63a5)!important}

@media(max-width:1020px){.main-nav.open{background:rgba(24,21,66,.98)!important;border-bottom-color:rgba(255,220,165,.35)!important;box-shadow:0 13px 26px rgba(8,7,30,.25)}.main-nav.open a{color:#ffe1ac!important}.main-nav.open a.active,.main-nav.open a:hover{color:#fff0cc!important}}
@media(max-width:760px){
  .intro-section{background:#0a103e!important;display:flex!important;flex-direction:column!important;min-height:0!important;padding:104px 24px 58px!important}
  .intro-section:before{background:linear-gradient(180deg,rgba(8,13,56,.7) 0%,rgba(12,17,64,.5) 44%,rgba(13,17,59,.78) 100%),url("assets/images/lqy-cosmic-hero.png") 58% center/cover no-repeat!important;mix-blend-mode:normal!important;opacity:1!important}
  .intro-section:after{background:linear-gradient(180deg,rgba(8,12,54,.04),rgba(8,12,54,.24))!important}
  .intro-copy{max-width:100%!important}
  .intro-portrait{display:block!important;margin:40px 0 0 auto!important;max-width:min(72vw,270px)!important;opacity:1!important;right:auto!important;top:auto!important;transform:rotate(3deg)!important}
  .intro-portrait img{display:block!important;min-height:0!important;width:100%!important}
  .writing-layout{margin-top:26px!important}
  .writing-list{background:rgba(255,248,235,.96)!important;border:1px solid rgba(116,75,128,.34)!important;border-radius:14px!important;box-shadow:0 10px 22px rgba(36,23,62,.16)!important;display:grid!important;gap:5px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;margin:0 0 22px!important;padding:6px!important;position:sticky!important;top:72px!important;z-index:25!important}
  .writing-list button{align-content:center!important;background:transparent!important;border:0!important;border-radius:9px!important;display:block!important;min-height:50px!important;padding:7px 4px!important;text-align:center!important}
  .writing-list button.active{background:rgba(168,112,136,.18)!important;padding:7px 4px!important}
  .writing-list button span,.writing-list button i{display:none!important}
  .writing-list button b{display:block;font-size:11px!important;line-height:1.3!important;overflow-wrap:anywhere!important}
  .work-video{justify-self:start!important;max-height:none!important;max-width:min(100%,280px)!important;min-height:0!important;width:min(100%,280px)!important}
  .detail-bottom:has(.work-video){grid-template-columns:1fr!important}
  .metric-strip{min-height:38px!important;padding:4px 9px!important}.metric-strip span{min-height:29px!important}.metric-strip b{font-size:25px!important}
  .book-stage{max-width:100%!important;padding:0 45px!important}
  .visual-book{height:430px!important;max-width:calc(100vw - 90px)!important}
  .book-side{height:36px!important;width:36px!important}.book-side:before{font-size:25px!important}
  .book-side-prev{left:3px!important}.book-side-next{right:3px!important}
  .flip-page{padding:22px 19px!important}
}

/* P4 影像书：封面与暮色背景同调，摊开时两页使用同一纸张色。 */
.visual-book .flip-cover,.visual-book .flip-back-cover{background:linear-gradient(145deg,#805788 0%,#b878a0 54%,#dc977f 100%)!important}
.visual-book .flip-page:not(.flip-cover):not(.flip-back-cover),.visual-book .flip-copy-page,.visual-book .flip-media-page{background:#fff8ed!important}
.visual-book .flip-page.--left,.visual-book .flip-page.--right{box-shadow:none!important}
/* 将翻页按钮移到书本外侧，避免与书页边缘相碰。 */
.book-side-prev{left:-18px!important}.book-side-next{right:-18px!important}
@media(max-width:760px){.book-side-prev{left:-20px!important}.book-side-next{right:-20px!important}}

/* 手机菜单的高亮线独立留在文字下方，并融入半透明夜色。 */
@media(max-width:760px){
  .main-nav.open{background:rgba(255,255,255,.08)!important;backdrop-filter:blur(14px) saturate(135%)!important}
  .main-nav.open a{color:rgba(255,225,177,.82)!important;padding:7px 0 15px!important}
  .main-nav.open a.active,.main-nav.open a:hover{color:rgba(255,241,210,.96)!important}
  .main-nav.open a:after{background:rgba(255,221,157,.55)!important;bottom:5px!important}
}

/* P4：桌面端恢复较宽的双页书；手机端单独缩小，保留清晰书脊。 */
.visual-book .flip-page.--left{box-shadow:inset -1px 0 0 rgba(38,31,51,.72)!important}
.visual-book .flip-page.--right{box-shadow:inset 1px 0 0 rgba(38,31,51,.72)!important}
@media(min-width:761px){
  .book-stage{max-width:1040px!important;padding:0!important}
  .visual-book{height:545px!important;max-width:1040px!important}
}
@media(max-width:760px){
  .visual-book{height:400px!important;max-width:min(270px,calc(100vw - 96px))!important}
  .main-nav.open{background:rgba(19,22,64,.82)!important;border:1px solid rgba(255,229,188,.32)!important;border-radius:0 0 16px 16px!important;box-shadow:0 14px 28px rgba(9,8,34,.28)!important;backdrop-filter:blur(14px) saturate(130%)!important}
}

/* 手机菜单保持全宽，但缩短上下间距，使展开后的高度更轻巧。 */
@media(max-width:760px){
  .main-nav{gap:4px 16px!important;left:0!important;padding:7px 20px!important;width:100%!important}
  .main-nav.open{border-radius:0 0 14px 14px!important}
  .main-nav.open a{padding:4px 0 10px!important}
  .main-nav.open a:after{bottom:2px!important}
}

/* P4 统一为 A4 竖版页型；书脊只保留一条轻细的中缝。 */
.visual-book .flip-page.--left{box-shadow:inset -.5px 0 0 rgba(38,31,51,.52)!important}
.visual-book .flip-page.--right{box-shadow:inset .5px 0 0 rgba(38,31,51,.52)!important}
@media(min-width:761px){.visual-book{height:566px!important}}
@media(max-width:760px){
  .book-stage{margin-left:-20px!important;max-width:none!important;padding:0!important;width:100vw!important}
  .visual-book{height:368px!important;max-width:min(260px,calc(100vw - 100px))!important;width:min(260px,calc(100vw - 100px))!important}
  .book-side{height:30px!important;width:30px!important}
  .book-side-prev{left:0!important}.book-side-next{right:0!important}
  .book-side:before{font-size:23px!important}
}

/* P4 翻页书使用稳定的相对网格：翻封面不再带额外位移，也不保留外层方框。 */
.book-stage{display:grid!important;filter:none!important;grid-template-columns:42px 760px 42px;justify-content:center;align-items:center;column-gap:28px}
.book-stage .visual-book{grid-column:2;grid-row:1;margin:0!important;transform:none!important;transition:none!important;width:760px!important;height:537px!important;max-width:none!important}
.book-stage .book-side{grid-row:1;position:relative!important;top:auto!important;left:auto!important;right:auto!important;transform:none!important}
.book-stage .book-side-prev{grid-column:1}.book-stage .book-side-next{grid-column:3}
.book-stage.is-front-cover .visual-book,.book-stage.is-back-cover .visual-book,.book-stage.is-open-book .visual-book{transform:none!important}
.book-stage.is-front-cover .book-side-prev,.book-stage.is-back-cover .book-side-next,.book-stage.is-front-cover .book-side-next,.book-stage.is-back-cover .book-side-prev,.book-stage.is-open-book .book-side{transform:none!important}
.visual-book .stf__parent,.visual-book .stf__wrapper,.visual-book .stf__block{box-shadow:none!important;outline:0!important}
.book-nav{clear:both!important;margin-top:24px!important}
@media(max-width:900px){.book-stage{grid-template-columns:38px 680px 38px;column-gap:22px}.book-stage .visual-book{width:680px!important;height:480px!important}}
@media(max-width:760px){
  .book-stage{column-gap:8px!important;grid-template-columns:30px 245px 30px!important;margin-left:-20px!important;width:100vw!important}
  .book-stage .visual-book{height:346px!important;max-width:245px!important;width:245px!important}
  .book-stage .book-side{height:30px!important;width:30px!important}
  .book-nav{margin-top:18px!important}
}

/* 位移由脚本在翻页结束后独立执行，避免被翻页组件的内部布局切换打断。 */
@media(min-width:761px){.book-stage .visual-book{will-change:transform}}

/* P4 只展示图文版式：真实长图完整呈现，未补素材时使用可读的版式占位页。 */
.visual-book .flip-media-page{align-items:center;display:flex;justify-content:center;padding:16px!important;position:relative}
.visual-book .flip-media-page>img{background:#ece9e6;display:block;height:100%;max-width:100%;object-fit:contain;width:100%}
.visual-book .flip-media-page>span{bottom:25px!important;left:50%!important;right:auto!important;top:auto!important;transform:translateX(-50%);white-space:nowrap}
.visual-placeholder{background:linear-gradient(150deg,#f5eef9,#eee2f2 56%,#e4d6ea);border:1px dashed rgba(93,62,112,.34);color:#54405e;display:flex;flex-direction:column;height:100%;justify-content:center;padding:28px;text-align:center;width:100%}
.visual-placeholder small{color:#876a95;font:600 10px var(--mono);letter-spacing:.13em}
.visual-placeholder strong{font:600 27px/1.5 "Noto Serif SC",serif;margin:22px 0}
.visual-placeholder i{color:#8c7892;font:10px var(--mono);font-style:normal}
@media(max-width:760px){.visual-book .flip-media-page{padding:10px!important}.visual-placeholder{padding:16px}.visual-placeholder strong{font-size:20px;margin:15px 0}.visual-book .flip-media-page>span{bottom:17px!important;font-size:8px!important;padding:5px 7px!important}}

/* P3 照片作品：缩略图位于卡片右下角，点击后进入沉浸式大图预览。 */
.work-image-button{align-self:start;background:transparent;border:0;border-radius:9px;cursor:zoom-in;justify-self:end;max-width:320px;overflow:hidden;padding:0;position:relative;width:100%}
.work-image-button img{display:block;height:auto;max-height:230px;object-fit:cover;transition:transform .35s ease;width:100%}
.work-image-button span{background:rgba(30,24,56,.72);border-radius:999px;bottom:9px;color:#fff7e8;font-size:10px;letter-spacing:.06em;padding:6px 10px;position:absolute;right:9px}
.work-image-button:hover img{transform:scale(1.025)}
body.lightbox-open{overflow:hidden}
.image-lightbox[hidden]{display:none}
.image-lightbox{align-items:center;background:rgba(10,10,24,.88);display:flex;inset:0;justify-content:center;padding:32px;position:fixed;z-index:999}
.image-lightbox-photo{box-shadow:0 24px 70px rgba(0,0,0,.45);display:block;max-height:calc(100vh - 64px);max-width:calc(100vw - 64px);object-fit:contain}
.image-lightbox-close{align-items:center;background:rgba(255,248,235,.9);border:0;border-radius:50%;color:#432d4f;cursor:pointer;display:flex;font:28px/1 sans-serif;height:42px;justify-content:center;position:absolute;right:24px;top:20px;width:42px;z-index:1}
@media(max-width:760px){.work-image-button{justify-self:start;max-width:280px}.work-image-button img{max-height:210px}.image-lightbox{padding:18px}.image-lightbox-photo{max-height:calc(100vh - 36px);max-width:calc(100vw - 36px)}.image-lightbox-close{height:38px;right:14px;top:14px;width:38px}}

/* P3 最终排版：引语右对齐；视频与图片使用同一张 8:5 媒体卡片。 */
.writing-detail .detail-label{color:#66415f!important;font-size:clamp(17px,1.55vw,21px)!important;font-weight:500!important;line-height:1.65!important;margin:0!important;max-width:none!important;text-align:left!important}
.work-media-card{align-self:start;aspect-ratio:8/5;background:#2b2540;border:0;border-radius:9px;box-shadow:0 9px 22px rgba(45,28,73,.18);display:block;justify-self:end;max-width:320px;overflow:hidden;padding:0;position:relative;width:320px}
.work-media-card img,.work-video-preview{display:block;height:100%!important;max-height:none!important;object-fit:cover;width:100%!important}
.work-media-action{align-items:center;background:rgba(30,24,56,.76)!important;border:0;border-radius:999px;bottom:10px;color:#fff7e8!important;cursor:pointer;display:flex;font:10px/1 var(--sans);gap:6px;letter-spacing:.05em;padding:7px 11px;position:absolute;right:10px;z-index:2}
.work-video-play i{align-items:center;background:#fff4d8;border-radius:50%;color:#61415f;display:flex;font-size:9px;font-style:normal;height:19px;justify-content:center;padding-left:1px;width:19px}
.work-video-card.is-playing .work-video-play{display:none}
.work-video-card.is-playing .work-video-preview{object-fit:contain}
@media(max-width:760px){.writing-detail .detail-label{font-size:16px!important;line-height:1.6!important}.work-media-card{justify-self:start;max-width:min(100%,280px);width:min(100%,280px)}}

/* 缓存与移动端顶栏收尾：确保引导文案不生成符号，手机品牌栏更紧凑。 */
.writing-detail .detail-label:before,.writing-detail .detail-label:after{content:none!important;display:none!important}
@media(max-width:760px){
  .site-header{height:48px!important;padding:0 16px!important}
  .brand{gap:8px!important}
  .brand-mark{height:20px!important;width:20px!important}
  .main-nav{top:47px!important}
}

/* P3 引导文案不允许由桌面端旧样式补入破折号。 */
.writing-detail .detail-label{quotes:none!important}
.writing-detail .detail-label::before,.writing-detail .detail-label::after{content:none!important;display:none!important}

/* P5 横向内容带：五张以内居中，更多卡片保留尺寸并通过底部滚动条浏览。 */
.social-grid{border-bottom-color:var(--ink)!important;display:flex!important;gap:18px!important;overflow-x:auto;overflow-y:hidden;padding:4px 2px 38px;scrollbar-color:rgba(38,31,51,.7) rgba(255,255,255,.22);scrollbar-width:thin}
.social-grid.is-centered{justify-content:center}
.social-grid.is-scrollable{justify-content:flex-start}
.social-grid .social-post{flex:0 0 clamp(170px,17vw,220px)}
.social-grid .post-image{aspect-ratio:5/6}
.social-grid .post-copy h3{font-size:14px;min-height:4.35em}
.social-grid .post-copy b{color:#74415f!important}
.social-grid::-webkit-scrollbar{height:7px}
.social-grid::-webkit-scrollbar-track{background:rgba(255,255,255,.22);border-radius:99px}
.social-grid::-webkit-scrollbar-thumb{background:rgba(38,31,51,.7);border-radius:99px}
@media(max-width:760px){.social-grid,.social-grid.is-centered{justify-content:flex-start}.social-grid .social-post{flex-basis:min(68vw,230px)}.social-grid .post-copy h3{min-height:0}}

/* P4 · 14 页互动创作画册（页面元素均为网页原生绘制）。 */
.visual-book .flip-page{overflow:hidden!important}.visual-book .album-cover,.visual-book .album-back-cover{background:radial-gradient(circle at 50% 43%,rgba(249,198,122,.2),transparent 22%),linear-gradient(145deg,#171341,#302169 58%,#1d1b54)!important;color:#fff9ed;isolation:isolate;padding:0!important}.album-cover>*:not(.album-firework),.album-back-cover>*:not(.album-firework){position:absolute;z-index:2}.album-cover>p{color:#d9ceff;left:12%;letter-spacing:.18em;top:13%}.album-cover h3{color:#fff!important;font:400 clamp(43px,5.3vw,66px)/1.08 "Ma Shan Zheng","Noto Serif SC",serif!important;left:10%;margin:0;right:10%;text-align:center;top:24%}.album-cover>span{color:#f8d5ed;font:400 22px "Dancing Script","Noto Serif SC",serif;left:0;right:0;text-align:center;top:50%}.album-cover>small{bottom:9%;color:rgba(255,255,255,.66);font:11px var(--mono);left:0;letter-spacing:.08em;right:0;text-align:center}.album-firework{height:58%;left:50%;position:absolute;top:51%;transform:translate(-50%,-50%);width:58%;z-index:1}.album-firework:before,.album-firework:after{background:repeating-conic-gradient(from 2deg,#fbbf79 0 2deg,transparent 2deg 20deg,#f99db7 20deg 22deg,transparent 22deg 40deg,#bda6fa 40deg 42deg,transparent 42deg 60deg);border-radius:50%;content:"";inset:0;opacity:.8;position:absolute}.album-firework:after{filter:blur(5px);opacity:.48;transform:scale(.8)}.album-firework i{background:#ffe5a4;border-radius:50%;box-shadow:0 0 11px #ffba95;height:5px;position:absolute;width:5px}.album-firework i:nth-child(1){left:9%;top:42%}.album-firework i:nth-child(2){left:79%;top:18%}.album-firework i:nth-child(3){left:68%;top:74%}.album-firework i:nth-child(4){left:27%;top:82%}.album-firework i:nth-child(5){left:89%;top:58%}.album-firework i:nth-child(6){left:17%;top:13%}.album-cover-firework{animation:albumBreathe 4s ease-in-out infinite}.album-back-cover{background:radial-gradient(circle at 32% 34%,rgba(185,161,255,.25),transparent 19%),linear-gradient(145deg,#15113d,#302268 60%,#1c164f)!important}.album-back-cover>p{color:#cfc1ff;left:0;letter-spacing:.2em;right:0;text-align:center;top:39%}.album-back-cover h3{color:#fff;font:400 60px "Dancing Script",cursive;left:0;margin:0;right:0;text-align:center;top:46%}.album-back-cover>span{bottom:9%;color:#f2d4e4;font:11px var(--mono);left:0;right:0;text-align:center}.album-back-firework{height:34%;left:72%;opacity:.42;top:25%;width:34%}
.album-intro-page{background:linear-gradient(140deg,#f4e7ff,#fce7f2)!important;color:#3f3151;display:grid;gap:5%;grid-template-columns:41% 1fr;padding:9%!important}.album-polaroid{align-self:center;background:#fff;padding:8px 8px 28px;box-shadow:0 13px 24px rgba(79,44,85,.17);transform:rotate(-3deg)}.album-polaroid img{aspect-ratio:3/4;display:block;object-fit:cover;width:100%}.album-polaroid b{display:block;font:400 23px "Ma Shan Zheng","Noto Serif SC",serif;margin-top:7px;text-align:center}.album-intro-copy{align-self:center}.album-intro-copy>p,.album-contents-page>p,.album-awards-page>p{color:#7d4f91;font:10px var(--mono);letter-spacing:.13em;margin:0}.album-intro-copy h3,.album-contents-page h3{color:#48285e;font:400 42px/1.1 "Ma Shan Zheng","Noto Serif SC",serif;margin:15px 0 8px}.album-intro-copy em{color:#8d6f91;font:11px/1.6 var(--sans);font-style:normal}.album-intro-copy>div{border-top:1px solid rgba(93,59,100,.25);margin-top:16px;padding-top:13px}.album-intro-copy>div p{font:12px/1.62 var(--sans);margin:0 0 8px}
.album-contents-page{background:#fffdf7!important;color:#4f4650;padding:11%!important;position:relative}.album-mini-firework{color:#d6769b;font-size:65px;left:12%;position:absolute;top:8%}.album-contents-page>p{margin-left:38%;margin-top:3%}.album-contents-page h3{font-size:36px;margin-left:38%}.album-contents-page nav{border-top:1px solid rgba(85,70,80,.25);margin-top:42px;padding-top:5px}.album-toc-jump{align-items:center;background:transparent;border:0;border-bottom:1px dashed rgba(85,70,80,.25);color:#55465a;cursor:pointer;display:grid;font:14px var(--sans);gap:7px;grid-template-columns:1fr auto 38px;padding:10px 0;text-align:left;width:100%}.album-toc-jump i{color:#b7adb3;font-style:normal;letter-spacing:.12em}.album-toc-jump b{color:#8f8290;font:10px var(--mono);text-align:right}.album-toc-jump:hover{color:#9a527b;transform:translateX(4px)}.album-contents-page>small{bottom:9%;color:#9e929b;font:9px var(--mono);position:absolute}
.album-fireworks-page{background:linear-gradient(145deg,#17164a,#30216d)!important;color:#fff;isolation:isolate;padding:0!important}.album-page-firework{height:65%;left:27%;top:48%;width:65%}.album-firework-copy{bottom:10%;position:absolute;right:9%;text-align:right;top:12%;width:51%;z-index:2}.album-firework-copy>span,.album-stair-copy>span,.album-tree-copy>span{color:rgba(213,191,255,.32);font:700 80px var(--mono);line-height:1}.album-firework-copy>p{color:#d9b8fb;font:11px var(--sans);margin:2px 0 10px}.album-firework-copy h3{color:#fff;font:400 37px/1.14 "Ma Shan Zheng","Noto Serif SC",serif;margin:0 0 18px}.album-firework-copy div{border-top:1px solid rgba(255,255,255,.25);padding-top:12px}.album-firework-copy div p{color:rgba(255,255,255,.9);font:12px/1.62 var(--sans);margin:0 0 10px}
.album-transition-page{background:linear-gradient(180deg,#1c194e,#3b2b83 43%,#dff5d6 73%,#f1fbdc)!important;color:#fff;padding:0!important;position:relative;text-align:center}.transition-top,.transition-mid,.transition-bottom{font:400 19px/1.55 "Ma Shan Zheng","Noto Serif SC",serif;left:0;margin:0;position:absolute;right:0;z-index:3}.transition-top{color:#f9bed8;top:9%}.transition-mid{color:#ffe58e;top:45%}.transition-bottom{bottom:8%;color:#5c8e4e}.album-horizon{background:linear-gradient(90deg,transparent,rgba(255,231,138,.8),transparent);height:2px;left:9%;position:absolute;right:9%;top:55%;z-index:2}.album-falling-seeds i{animation:seedFall 5s linear infinite;background:#ffdfa5;border-radius:50%;box-shadow:0 0 9px #f6bd72;height:5px;position:absolute;top:10%;width:5px}.album-falling-seeds i:nth-child(1){left:18%;animation-delay:-1s}.album-falling-seeds i:nth-child(2){left:36%;animation-delay:-3s}.album-falling-seeds i:nth-child(3){left:61%;animation-delay:-2s}.album-falling-seeds i:nth-child(4){left:76%;animation-delay:-4s}.album-falling-seeds i:nth-child(5){left:88%;animation-delay:-.4s}.album-sprout{bottom:17%;height:22%;left:50%;position:absolute;transform:translateX(-50%);width:30%;z-index:2}.album-sprout b{background:#8b6b47;border-radius:50% 50% 0 0;bottom:0;height:78%;left:49%;position:absolute;width:5px}.album-sprout i{background:#8ebf72;border-radius:100% 0 100% 0;height:39%;position:absolute;top:21%;width:42%}.album-sprout i:first-child{left:12%;transform:rotate(-21deg)}.album-sprout i:nth-child(2){right:9%;transform:scaleX(-1) rotate(-21deg)}
.album-tree-page{background:linear-gradient(145deg,#effbe9,#e9f6bd)!important;color:#36523b;display:grid;grid-template-columns:56% 44%;padding:0!important}.album-tree-art{overflow:hidden;position:relative}.album-tree-svg{bottom:-4%;height:93%;left:-5%;position:absolute;width:110%}.tree-root,.tree-trunk,.tree-branch{fill:none;stroke-linecap:round}.tree-root{stroke:#7d5e38;stroke-width:9}.tree-trunk{stroke:#815f38;stroke-width:18}.tree-branch{stroke:#66884b;stroke-width:9}.tree-word{color:#406140;font:400 20px "Ma Shan Zheng","Noto Serif SC",serif;position:absolute}.word-1{left:17%;top:32%}.word-2{left:46%;top:23%}.word-3{left:26%;top:12%}.word-4{left:57%;top:42%}.word-5{left:12%;top:49%}.album-tree-copy{align-self:center;padding:11% 10% 11% 0}.album-tree-copy>p{color:#66875f;font:11px var(--sans)}.album-tree-copy h3{color:#355837;font:400 35px/1.15 "Ma Shan Zheng","Noto Serif SC",serif;margin:11px 0 17px}.album-tree-copy>b{border-top:1px solid rgba(52,90,55,.3);display:block;font:12px/1.7 var(--sans);font-weight:400;padding-top:13px}.album-tree-copy small{bottom:9%;color:#638761;font:10px var(--sans);position:absolute;right:7%}
.album-fruits-page{background:linear-gradient(145deg,#edf8bd,#fffde9)!important;color:#41613e;padding:0!important;position:relative}.album-fruit-tree{bottom:-31%;height:114%;left:-14%;opacity:.73;position:absolute;width:57%}.album-fruit-tree .album-tree-svg{height:100%;width:100%}.album-writing-fruits{display:grid;gap:14px;position:absolute;right:9%;top:14%;width:54%;z-index:2}.album-writing-fruits article{background:rgba(255,255,255,.83);border:1px solid #92bd7f;border-radius:8px;box-shadow:0 7px 15px rgba(73,102,51,.11);min-height:74px;padding:11px 11px 9px;position:relative;transform:rotate(-1deg)}.album-writing-fruits article:nth-child(2){margin-left:10%;transform:rotate(2deg)}.album-writing-fruits article:nth-child(3){margin-left:-5%;transform:rotate(-2deg)}.album-writing-fruits article span{color:#7eb164;font:10px var(--mono)}.album-writing-fruits article b{display:block;font:400 18px "Ma Shan Zheng","Noto Serif SC",serif;margin:4px 0}.album-writing-fruits article small{color:#6d8566;font:9px var(--sans)}.album-fruits-page>p{bottom:9%;font:400 17px/1.5 "Ma Shan Zheng","Noto Serif SC",serif;margin:0;position:absolute;right:9%;text-align:right}
.album-stair-page{background:linear-gradient(145deg,#fff0c7,#ffd49d 54%,#f5a86f)!important;color:#674128;padding:0!important;position:relative}.album-stair-copy{left:9%;position:absolute;top:12%;width:54%;z-index:3}.album-stair-copy>span{color:rgba(173,98,41,.18)}.album-stair-copy>p{font:11px var(--sans);margin:0}.album-stair-copy h3{font:400 36px/1.14 "Ma Shan Zheng","Noto Serif SC",serif;margin:12px 0}.album-stair-copy>b{border-top:1px solid rgba(107,67,38,.28);display:block;font:12px/1.7 var(--sans);font-weight:400;padding-top:13px}.album-stairs{bottom:10%;position:absolute;right:8%;width:54%}.album-stairs i{align-items:center;background:rgba(255,251,232,.82);border:1px solid rgba(148,78,35,.22);box-shadow:0 6px 12px rgba(112,56,36,.11);display:flex;font:400 22px "Ma Shan Zheng","Noto Serif SC",serif;height:50px;justify-content:center;margin-left:auto;margin-top:-1px;width:100%}.album-stairs i:nth-child(2){width:84%}.album-stairs i:nth-child(3){width:68%}.album-stairs i:nth-child(4){width:52%}.album-stairs i:nth-child(5){width:36%}
.album-scrapbook-page{background:linear-gradient(145deg,#ffd7a3,#fbb276)!important;color:#633e30;padding:8%!important}.album-scrapbook-page>p{font:10px var(--mono);letter-spacing:.12em;margin:0}.album-scrapbook-page h3{font:400 36px/1.12 "Ma Shan Zheng","Noto Serif SC",serif;margin:12px 0}.album-photo-notes{bottom:8%;left:7%;position:absolute;right:7%;top:32%}.album-photo-notes figure{background:#fff;border:5px solid #fff;box-shadow:0 7px 15px rgba(102,55,42,.19);margin:0;position:absolute;transform:rotate(-5deg);width:31%}.album-photo-notes img{aspect-ratio:1/1;display:block;object-fit:cover;width:100%}.album-photo-notes figcaption{color:#774b3b;font:10px/1.35 "Ma Shan Zheng","Noto Serif SC",serif;padding:5px 2px 2px}.album-photo-notes .photo-1{left:1%;top:25%}.album-photo-notes .photo-2{left:33%;top:4%;transform:rotate(4deg)}.album-photo-notes .photo-3{right:0;top:19%;transform:rotate(-2deg)}.album-photo-notes .photo-4{bottom:0;left:19%;transform:rotate(3deg)}.album-photo-notes .photo-5{bottom:3%;right:14%;transform:rotate(-6deg)}
.album-film-page{background:linear-gradient(145deg,#ffe0a2,#fa9c63)!important;color:#5a3434;display:grid;grid-template-columns:43% 1fr;padding:8%!important}.album-film-copy{align-self:center}.album-film-copy>p{font:10px var(--mono);letter-spacing:.1em;margin:0}.album-film-copy h3{font:400 37px/1.13 "Ma Shan Zheng","Noto Serif SC",serif;margin:12px 0}.album-film-rule{border-top:1px solid rgba(97,51,44,.35);margin:15px 0}.album-film-copy>b{display:block;font:12px/1.7 var(--sans);font-weight:400}.album-film-copy small{color:#8a513e;display:block;font:10px var(--sans);margin-top:18px}.album-film-stills{position:relative}.album-film-stills figure{border:5px solid #fff6e8;box-shadow:0 8px 18px rgba(114,48,39,.22);margin:0;position:absolute;width:57%}.album-film-stills img{aspect-ratio:4/3;display:block;object-fit:cover;width:100%}.album-film-stills figcaption{background:#fff6e8;color:#75463c;font:8px var(--mono);padding:4px}.album-film-stills .still-1{left:8%;top:8%;transform:rotate(-4deg)}.album-film-stills .still-2{right:0;top:34%;transform:rotate(4deg)}.album-film-stills .still-3{bottom:3%;left:11%;transform:rotate(-2deg)}
.album-awards-page{background:radial-gradient(circle at 50% 22%,rgba(255,213,117,.18),transparent 25%),linear-gradient(145deg,#5a278e,#30175e)!important;color:#fff9e9;padding:9%!important}.album-awards-page>p{color:#f9d57a}.album-awards-page h3{color:#fff;font:400 39px "Ma Shan Zheng","Noto Serif SC",serif;margin:15px 0}.album-award-grid{display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-top:23px}.album-award{background:#fff9ec;border:6px solid #fffdf6;box-shadow:0 9px 18px rgba(16,5,45,.32);color:#4b315a;min-height:194px;padding:12px 9px;position:relative;transform:rotate(-4deg)}.album-award:nth-child(2){margin-top:24px;transform:rotate(3deg)}.album-award:nth-child(3){transform:rotate(-1deg)}.album-award span{color:#b07431;font:10px var(--mono)}.album-award b{display:block;font:400 20px/1.3 "Ma Shan Zheng","Noto Serif SC",serif;margin-top:26px}.album-award small{display:block;font:9px/1.45 var(--sans);margin-top:9px}.album-award i{bottom:10px;color:#d59a45;font-style:normal;position:absolute;right:10px}.album-awards-final .album-award-grid{margin-top:6px}.album-farewell{bottom:9%;left:0;position:absolute;right:0;text-align:center}.album-farewell h3{font-size:35px;line-height:1.16;margin:0}.album-farewell b{color:#e6caff;font:400 18px "Ma Shan Zheng","Noto Serif SC",serif}.book-dots button{background:rgba(255,239,215,.5);border:0;border-radius:6px;cursor:pointer;height:6px;padding:0;width:6px}.book-dots button.active{background:#f0c676;width:20px}.book-dots button:hover{background:#fff}.book-dots{flex-wrap:wrap;justify-content:center;max-width:220px}@keyframes albumBreathe{50%{filter:brightness(1.18);transform:translate(-50%,-50%) scale(1.04)}}@keyframes seedFall{to{opacity:.15;transform:translateY(270px) rotate(130deg)}}
@media(max-width:760px){.album-cover h3{font-size:34px}.album-cover>span{font-size:16px}.album-intro-page{gap:10px;grid-template-columns:37% 1fr;padding:7%!important}.album-polaroid{padding:5px 5px 19px}.album-polaroid b{font-size:17px}.album-intro-copy h3,.album-contents-page h3{font-size:27px}.album-intro-copy>div p{font-size:9px;line-height:1.5;margin-bottom:5px}.album-intro-copy em{font-size:8px}.album-toc-jump{font-size:10px;padding:8px 0}.album-firework-copy{right:7%;width:59%}.album-firework-copy>span,.album-stair-copy>span{font-size:57px}.album-firework-copy h3,.album-tree-copy h3,.album-stair-copy h3{font-size:25px}.album-firework-copy div p,.album-tree-copy>b,.album-stair-copy>b{font-size:9px;line-height:1.55}.transition-top,.transition-mid,.transition-bottom{font-size:14px}.album-tree-copy{padding:9% 7% 9% 0}.tree-word{font-size:13px}.album-writing-fruits article{min-height:58px;padding:7px}.album-writing-fruits article b{font-size:13px}.album-writing-fruits article small{font-size:7px}.album-fruits-page>p{font-size:12px}.album-stairs i{font-size:16px;height:37px}.album-scrapbook-page h3{font-size:26px}.album-photo-notes figcaption{font-size:7px}.album-film-page{grid-template-columns:42% 1fr;padding:6%!important}.album-film-copy h3{font-size:25px}.album-film-copy>b{font-size:9px;line-height:1.55}.album-film-copy small{font-size:7px}.album-film-stills figcaption{font-size:6px}.album-award-grid{gap:6px;margin-top:15px}.album-award{border-width:3px;min-height:130px;padding:6px}.album-award b{font-size:13px;margin-top:15px}.album-award small{font-size:6px}.album-awards-page h3,.album-farewell h3{font-size:27px}.album-farewell b{font-size:13px}.book-dots{max-width:165px}.book-dots button{height:5px;width:5px}}

/* P4 画册的阅读安全区：桌面端加大书本，并保证文字与卡片不会贴边或相撞。 */
@media(min-width:1100px){.book-stage{grid-template-columns:46px 880px 46px!important;column-gap:32px!important}.book-stage .visual-book{height:622px!important;width:880px!important}.book-stage .book-side{height:44px!important;width:44px!important}.book-nav{margin-top:30px!important}}
@media(min-width:761px) and (max-width:1099px){.book-stage{grid-template-columns:40px 760px 40px!important;column-gap:24px!important}.book-stage .visual-book{height:537px!important;width:760px!important}}
.album-intro-copy,.album-firework-copy,.album-tree-copy,.album-stair-copy,.album-film-copy{min-width:0}.album-intro-copy>div,.album-firework-copy div,.album-tree-copy>b,.album-stair-copy>b{overflow-wrap:anywhere}.album-contents-page nav{max-height:calc(100% - 215px);overflow:hidden}.album-award-grid{align-items:start}.album-award{overflow:hidden}.album-photo-notes{overflow:hidden}.album-film-stills{min-height:100%}
@media(max-width:760px){.book-stage .visual-book{height:346px!important;width:245px!important}.album-contents-page nav{max-height:calc(100% - 165px)}.album-toc-jump{line-height:1.25}.album-award-grid{align-items:start}.album-awards-final .album-award{min-height:122px}.album-farewell{bottom:6%}.album-farewell h3{margin-bottom:4px}.album-film-stills{min-height:100%}}

/* P4 附件版式：按参考画册的留白、插画和照片排版还原。 */
.album-pdf-contents{background:#fffdf7!important;padding:17% 13%!important}.album-pdf-contents>p{color:#171717!important;font:400 48px "Ma Shan Zheng","Noto Serif SC",serif!important;letter-spacing:0!important;margin:0 0 60px!important;text-align:center}.album-pdf-contents nav{border:0!important;margin:0!important;max-height:none!important;padding:0!important}.album-pdf-contents .album-toc-jump{border-bottom:0;color:#171717;font:600 14px "Noto Serif SC",serif;grid-template-columns:1fr auto 36px;padding:17px 0}.album-pdf-contents .album-toc-jump i{color:#222;letter-spacing:.22em;overflow:hidden}.album-pdf-contents .album-toc-jump b{color:#171717;font:600 12px var(--mono)}.album-video-page{align-items:center;background:#fffdf7!important;display:flex;justify-content:center;padding:11%!important}.album-video-frame{box-shadow:0 12px 25px rgba(74,47,55,.15);height:58%;overflow:hidden;position:relative;width:82%}.album-video-frame:after{background:linear-gradient(110deg,rgba(78,20,41,.16),rgba(255,218,197,.06));content:"";inset:0;position:absolute}.album-video-frame img{height:100%;object-fit:cover;width:100%}.album-video-frame span{color:#fee55b;font:500 31px/1.02 "Dancing Script","Ma Shan Zheng",cursive;left:12%;position:absolute;text-shadow:0 2px 8px rgba(33,6,18,.65);top:18%;transform:rotate(-4deg);z-index:1}.album-video-frame small{bottom:9%;color:#fff7d9;font:8px var(--mono);left:0;letter-spacing:.1em;position:absolute;right:0;text-align:center;z-index:1}.album-firework-left-page,.album-firework-right-page,.album-leaves-page,.album-bare-tree-page,.album-blank-page,.album-photo-pair-page,.album-portrait-page,.album-portraits-page{background:#fff!important;padding:0!important;position:relative}.album-firework-left-page img{height:68%;left:4%;object-fit:contain;position:absolute;top:4%;width:72%}.album-firework-left-page span{bottom:10%;color:#4f3d53;font:400 18px "Ma Shan Zheng","Noto Serif SC",serif;left:11%;position:absolute}.album-firework-right-page .firework-scatter{height:44%;object-fit:contain;position:absolute;right:-9%;top:-5%;width:68%}.album-firework-right-page .firework-haze{bottom:-10%;height:68%;left:-8%;object-fit:contain;opacity:.88;position:absolute;width:115%}.album-leaves-page{align-items:center;display:flex;justify-content:center}.album-leaves-page img{height:84%;object-fit:contain;width:82%}.album-bare-tree-page{align-items:center;display:flex;justify-content:center}.album-bare-tree-page img{height:79%;object-fit:contain;width:76%}.album-blank-page{background:#fff!important}.album-photo-pair-page{align-items:center;display:flex;justify-content:center}.album-photo-pair-page>div{display:grid;gap:26px;width:69%}.album-photo-pair-page img{aspect-ratio:2.25/1;display:block;object-fit:cover;width:100%}.album-portrait-page{align-items:center;display:flex;justify-content:center}.album-portrait-page img{height:82%;object-fit:contain;width:69%}.album-portraits-page{align-items:center;display:grid;gap:9%;justify-items:center;padding:14%!important}.album-portraits-page img{aspect-ratio:2.1/1;display:block;object-fit:cover;width:78%}
@media(max-width:760px){.album-pdf-contents{padding:15% 12%!important}.album-pdf-contents>p{font-size:32px!important;margin-bottom:35px!important}.album-pdf-contents .album-toc-jump{font-size:9px;padding:10px 0}.album-video-frame span{font-size:19px}.album-video-frame small{font-size:5px}.album-firework-left-page span{font-size:12px}.album-photo-pair-page>div{gap:14px}.album-portraits-page{gap:8%;padding:13%!important}}

/* P4 实际画册版心：所有图片都以单页 440 : 622 的安全区定位，而非按容器居中缩小。 */
.visual-book .album-firework-left-page img{height:76%;left:1%;top:8%;width:76%}
.visual-book .album-firework-left-page span{bottom:11%;left:9%;max-width:70%}
.visual-book .album-firework-right-page .firework-scatter{height:56%;right:-3%;top:3%;width:82%}
.visual-book .album-firework-right-page .firework-haze{bottom:-2%;height:76%;left:-5%;width:110%}
.visual-book .album-leaves-page img{height:88%;width:86%}
.visual-book .album-bare-tree-page{justify-content:flex-start}
.visual-book .album-bare-tree-page img{height:86%;margin-left:-7%;width:92%}
.visual-book .album-photo-pair-page{align-items:stretch;padding:10% 8%!important}
.visual-book .album-photo-pair-page>div{align-content:center;display:grid;gap:5%;height:100%;width:100%}
.visual-book .album-photo-pair-page img{aspect-ratio:1.78/1;box-shadow:0 8px 18px rgba(48,38,62,.16);object-fit:cover;width:86%}
.visual-book .album-photo-pair-page img:first-child{justify-self:start;transform:rotate(-2deg)}
.visual-book .album-photo-pair-page img:last-child{justify-self:end;transform:rotate(2deg)}
.visual-book .album-portrait-page{justify-content:flex-start;padding:8% 7%!important}
.visual-book .album-portrait-page img{height:86%;margin-left:1%;width:74%}
.visual-book .album-portraits-page{gap:7%;padding:11%!important}
.visual-book .album-portraits-page img{width:90%}
@media(max-width:760px){
  .visual-book .album-firework-left-page img{height:76%;left:1%;top:8%;width:76%}
  .visual-book .album-firework-right-page .firework-scatter{height:56%;right:-3%;top:3%;width:82%}
  .visual-book .album-firework-right-page .firework-haze{bottom:-2%;height:76%;left:-5%;width:110%}
  .visual-book .album-bare-tree-page img{height:86%;margin-left:-7%;width:92%}
  .visual-book .album-photo-pair-page{padding:10% 8%!important}
  .visual-book .album-portrait-page{padding:8% 7%!important}
  .visual-book .album-portrait-page img{height:86%;width:74%}
}

/* 恢复 Visual Diary 封面：与页面暮色背景接近的紫粉渐变，不使用画册内页插画。 */
.visual-book .album-visual-cover,.visual-book .album-visual-back{background:linear-gradient(145deg,#805788 0%,#b878a0 54%,#dc977f 100%)!important;color:#fff8ea!important;display:flex!important;flex-direction:column;isolation:isolate;padding:43px!important}
.visual-book .album-visual-cover{justify-content:flex-end}
.visual-book .album-visual-back{justify-content:space-between}
.visual-book .album-visual-cover>p,.visual-book .album-visual-cover>h3,.visual-book .album-visual-cover>span,.visual-book .album-visual-back>p,.visual-book .album-visual-back>span{bottom:auto!important;left:auto!important;position:static!important;right:auto!important;text-align:left!important;top:auto!important}
.visual-book .album-visual-cover>p,.visual-book .album-visual-cover>span,.visual-book .album-visual-back>p,.visual-book .album-visual-back>span{color:#f5d79b!important;font:10px var(--mono)!important;letter-spacing:.1em!important;margin:0!important}
.visual-book .album-visual-cover h3{color:#fff8ea!important;font:600 62px/.83 var(--serif)!important;letter-spacing:-.06em!important;margin:29px 0!important}
.visual-book .album-visual-back>span{text-align:right!important}
@media(max-width:760px){.visual-book .album-visual-cover,.visual-book .album-visual-back{padding:32px!important}.visual-book .album-visual-cover h3{font-size:50px!important}}

/* 初始封面只保留右侧正封面，避免末页硬封面在左侧透出。 */
.book-stage.is-front-cover .album-visual-back{opacity:0!important;pointer-events:none!important}

/* 第二页视频：不裁切，视频本身在整页安全区内严格水平、垂直居中。 */
.visual-book .album-video-page{align-items:center!important;display:flex!important;justify-content:center!important;padding:8%!important}
.visual-book .album-intro-video{background:#171717;box-shadow:0 12px 25px rgba(74,47,55,.18);display:block;height:auto;max-height:78%;max-width:86%;object-fit:contain;width:86%}

/* P4-P7 用对应色场承接透明插画；透明图不再带纸张白底。 */
.visual-book .album-firework-left-page{background:linear-gradient(145deg,#1e1b4b,#312e81)!important}
.visual-book .album-firework-left-page span{color:#fff7ed!important}
.visual-book .album-firework-right-page{background:linear-gradient(180deg,#1e1b4b 0%,#3730a3 43%,#dff5d6 73%,#f1fbdc 100%)!important}
.visual-book .album-leaves-page{background:linear-gradient(145deg,#f0fdf4,#ecfccb)!important}
.visual-book .album-bare-tree-page{background:linear-gradient(145deg,#ecfccb,#fefce8)!important}
.visual-book .album-firework-right-page .firework-haze,.visual-book .album-leaves-page img,.visual-book .album-bare-tree-page img{mix-blend-mode:multiply}

/* 第十页：两张横图同宽、纵向堆叠，整体居中偏上。 */
.visual-book .album-photo-pair-page{align-items:stretch!important;display:block!important;padding:0!important}
.visual-book .album-photo-pair-page>div{align-content:stretch!important;display:grid!important;gap:9%!important;grid-template-rows:45.5% 45.5%;height:55%!important;justify-items:center!important;left:0!important;padding:0!important;position:absolute!important;top:17%!important;width:100%!important}
.visual-book .album-photo-pair-page img,.visual-book .album-photo-pair-page img:first-child,.visual-book .album-photo-pair-page img:last-child{aspect-ratio:auto!important;box-shadow:none!important;height:100%!important;justify-self:center!important;object-fit:cover!important;transform:none!important;width:66.6667%!important}
@media(max-width:760px){.visual-book .album-intro-video{max-height:78%;max-width:86%;width:86%}.visual-book .album-photo-pair-page>div{height:55%!important;padding:0!important;top:17%!important}.visual-book .album-photo-pair-page img,.visual-book .album-photo-pair-page img:first-child,.visual-book .album-photo-pair-page img:last-child{height:100%!important;width:66.6667%!important}}

/* P5 多平台样机阵列：同源暖粉基底承接真实手机界面，避免白底样机与暮色背景割裂。 */
.social-section .social-grid{align-items:center;background:linear-gradient(125deg,rgba(255,231,222,.2),rgba(255,205,207,.13) 48%,rgba(239,181,153,.2));border:1px solid rgba(255,232,213,.25);border-bottom-color:rgba(255,236,212,.45)!important;border-radius:28px;box-shadow:inset 0 1px rgba(255,255,255,.16),0 25px 55px rgba(74,37,78,.16);display:flex!important;gap:clamp(10px,1.45vw,22px)!important;isolation:isolate;justify-content:center;margin-top:48px;min-height:490px;overflow-x:auto;overflow-y:hidden;padding:36px 32px 28px!important;position:relative}
.social-section .social-grid:before{background:radial-gradient(circle at 13% 25%,rgba(255,241,204,.32),transparent 22%),radial-gradient(circle at 86% 77%,rgba(215,177,255,.21),transparent 25%),linear-gradient(90deg,rgba(255,255,255,.08),rgba(255,255,255,0));content:"";inset:0;pointer-events:none;position:absolute;z-index:-1}
.social-section .social-grid:after{background-image:radial-gradient(circle,rgba(255,250,229,.95) 0 1px,transparent 1.7px),radial-gradient(circle,rgba(255,212,203,.75) 0 1px,transparent 1.6px);background-position:3% 12%,75% 84%;background-size:106px 106px,143px 143px;content:"";inset:0;opacity:.75;pointer-events:none;position:absolute;z-index:6}
.social-section .social-grid.is-scrollable{justify-content:flex-start}.social-phone{--phone-x:0px;--phone-y:0px;--phone-r:0deg;background:transparent;border:0;cursor:zoom-in;flex:0 0 clamp(132px,13.6vw,196px);margin-left:0;opacity:0;padding:0;position:relative;transform:translate3d(var(--phone-x),calc(var(--phone-y) + 46px),0) rotate(var(--phone-r));transition:opacity .7s ease,transform .95s cubic-bezier(.2,.74,.24,1),filter .35s ease;z-index:calc(2 + var(--phone-index))}
.social-phone-1{--phone-x:2px;--phone-y:26px;--phone-r:-4deg}.social-phone-2{--phone-x:0px;--phone-y:-13px;--phone-r:-2deg}.social-phone-3{--phone-x:0px;--phone-y:17px;--phone-r:0deg}.social-phone-4{--phone-x:0px;--phone-y:-6px;--phone-r:2deg}.social-phone-5{--phone-x:-2px;--phone-y:28px;--phone-r:4deg}
.social-grid.is-in-view .social-phone{opacity:1;transform:translate3d(var(--phone-x),var(--phone-y),0) rotate(var(--phone-r))}.social-grid.is-in-view .social-phone:nth-child(2){transition-delay:.09s}.social-grid.is-in-view .social-phone:nth-child(3){transition-delay:.18s}.social-grid.is-in-view .social-phone:nth-child(4){transition-delay:.27s}.social-grid.is-in-view .social-phone:nth-child(5){transition-delay:.36s}
.social-phone img{border-radius:clamp(16px,1.8vw,26px);box-shadow:0 20px 33px rgba(90,42,85,.25),0 6px 15px rgba(117,63,93,.2);display:block;height:auto;position:relative;width:100%}.social-phone:after{background:linear-gradient(145deg,rgba(255,211,204,.1),transparent 44%,rgba(135,91,164,.1));border-radius:clamp(16px,1.8vw,26px);content:"";inset:0;mix-blend-mode:soft-light;pointer-events:none;position:absolute}.social-phone:hover{filter:brightness(1.045);transform:translate3d(var(--phone-x),calc(var(--phone-y) - 11px),0) rotate(var(--phone-r));z-index:7}
.social-closure{align-items:end;border-bottom:1px solid rgba(255,235,211,.42);display:grid;gap:34px;grid-template-columns:minmax(0,1fr) minmax(360px,.95fr);margin:42px 0 0;padding:0 0 42px}.social-closure>p{color:#fff9f1;font:17px/1.8 var(--serif);margin:0;max-width:650px;text-shadow:0 1px 10px rgba(45,23,71,.22)}
.social-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.social-links a{align-items:center;background:linear-gradient(135deg,rgba(255,238,224,.24),rgba(255,205,185,.15));border:1px solid rgba(255,232,211,.38);border-radius:999px;box-shadow:0 8px 19px rgba(68,34,75,.13);color:#fffaf3;display:flex;font:12px var(--sans);gap:7px;isolation:isolate;overflow:hidden;padding:11px 14px;position:relative;text-decoration:none;transition:border-color .28s ease,box-shadow .28s ease,transform .28s cubic-bezier(.2,.75,.25,1)}.social-links a:before{background:linear-gradient(110deg,transparent 8%,rgba(255,253,224,.08) 26%,rgba(255,238,178,.86) 50%,rgba(255,192,212,.36) 64%,transparent 82%);content:"";inset:-45% auto -45% -75%;pointer-events:none;position:absolute;transform:skewX(-20deg);transition:transform .52s ease;width:68%;z-index:-1}.social-links a:after{background:radial-gradient(circle,rgba(255,222,181,.8),transparent 68%);content:"";inset:-22px;opacity:0;pointer-events:none;position:absolute;transition:opacity .28s ease;z-index:-2}.social-links a span{color:#ffe0ab;font:10px var(--mono);letter-spacing:.05em;transition:color .25s ease}.social-links a b{font:18px/1 var(--serif);transition:transform .25s ease}.social-links a:hover{background:linear-gradient(135deg,rgba(255,247,221,.62),rgba(255,169,184,.5));border-color:rgba(255,248,207,.82);box-shadow:0 15px 30px rgba(78,34,83,.25),0 0 25px rgba(255,220,164,.42);transform:translateY(-6px) scale(1.025)}.social-links a:hover:before{transform:translateX(300%) skewX(-20deg)}.social-links a:hover:after{opacity:1}.social-links a:hover span{color:#fffbed}.social-links a:hover b{transform:translateX(4px)}
@media(max-width:900px){.social-section .social-grid{min-height:395px;padding:24px 20px!important}.social-phone{flex-basis:clamp(108px,16vw,150px)}.social-closure{grid-template-columns:1fr}.social-links{justify-content:flex-start}}
@media(max-width:760px){.social-section .social-grid{border-radius:20px;justify-content:flex-start;min-height:390px;overflow-x:auto;overflow-y:hidden;padding:25px 23px!important;scrollbar-color:rgba(255,235,211,.72) transparent;scrollbar-width:thin}.social-section .social-grid:after{position:sticky;min-width:1px;right:0}.social-phone{flex:0 0 132px;margin-left:0}.social-phone-1{--phone-y:20px}.social-phone-2{--phone-y:-8px}.social-phone-3{--phone-y:14px}.social-phone-4{--phone-y:-2px}.social-phone-5{--phone-y:21px}.social-closure{gap:22px;margin-top:30px;padding-bottom:32px}.social-closure>p{font-size:15px}.social-links{display:grid;grid-template-columns:1fr}.social-links a{justify-content:space-between}.social-section .social-grid::-webkit-scrollbar{height:5px}.social-section .social-grid::-webkit-scrollbar-thumb{background:rgba(255,235,211,.72)}}

/* P4 最终版：封面是单页，内页按照实际纸张安全区居中排版。 */
/* PageFlip 在硬封面静止时会暂存内页图层；仅隐藏这些图层，翻动开始即恢复，避免裁切整个书本导致开合跳变。 */
.book-stage.is-front-cover:not(.is-turning) .flip-page:not(.album-visual-cover),.book-stage.is-back-cover:not(.is-turning) .flip-page:not(.album-visual-back){background:transparent!important;visibility:hidden!important}
/* 封面翻动的整个过程都不展示翻页器预绘的相邻内页，动画结束才呈现目标双页。 */
.book-stage.is-cover-transition .flip-page:not(.album-visual-cover):not(.album-visual-back){background:transparent!important;visibility:hidden!important}

/* 第二页视频：先展示一张横向电影感预览，点击才显示原生播放控件。 */
.visual-book .album-video-page{align-items:center!important;background:#fffdf7!important;display:flex!important;justify-content:center!important;padding:4%!important}
.visual-book .album-video-frame{aspect-ratio:16/9;background:#4d4a3e;border:0;border-radius:7px;box-shadow:0 13px 26px rgba(70,56,46,.2);cursor:pointer;height:auto!important;max-width:96%;overflow:hidden;padding:0;position:relative;width:96%}
.visual-book .album-intro-video{background:#4d4a3e;box-shadow:none!important;display:block;height:100%!important;max-height:none!important;max-width:none!important;object-fit:cover!important;width:100%!important}
.visual-book .album-video-frame:after{background:rgba(34,37,29,.29)!important;content:"";inset:0;opacity:1;pointer-events:none;position:absolute;transition:opacity .2s ease;z-index:1}
.visual-book .album-video-play{align-items:center;border:1.5px solid rgba(255,255,255,.78);border-radius:50%;color:#fff;display:flex;font:17px/1 var(--sans)!important;height:51px!important;justify-content:center;left:50%!important;padding-left:3px;position:absolute!important;text-shadow:none!important;top:50%!important;transform:translate(-50%,-50%)!important;transition:opacity .2s ease;width:51px!important;z-index:2}
.visual-book .album-video-frame.is-playing:after,.visual-book .album-video-frame.is-playing .album-video-play{opacity:0}

/* 第四页右下角：完整保留彩铅烟花原图的四边，透明区域与色场自然融合。 */
.visual-book .album-firework-right-page .firework-scatter{height:auto!important;max-height:44%!important;object-fit:contain!important;right:3%!important;top:3%!important;width:76%!important}
.visual-book .album-firework-right-page .firework-haze{bottom:7%!important;height:auto!important;left:50%!important;max-height:none!important;object-fit:contain!important;right:auto!important;top:auto!important;transform:translateX(-50%)!important;width:96%!important}

/* 第五、六页插画严格居中，保留所有透明边缘。 */
.visual-book .album-leaves-page,.visual-book .album-bare-tree-page{align-items:center!important;display:flex!important;justify-content:center!important}
.visual-book .album-leaves-page img{height:90%!important;margin:0!important;max-width:92%!important;object-fit:contain!important;width:88%!important}
.visual-book .album-bare-tree-page img{height:87%!important;margin:0!important;max-width:90%!important;object-fit:contain!important;width:86%!important}

/* 第八页：两张风景剪影下移至视觉中心，并保持不相接。 */
.visual-book .album-photo-pair-page{display:block!important;padding:0!important}
.visual-book .album-photo-pair-page>div{align-content:center!important;display:grid!important;gap:8.3333%!important;grid-template-rows:repeat(2,41.6667%)!important;height:60%!important;justify-items:center!important;left:0!important;padding:0!important;position:absolute!important;top:20%!important;width:100%!important}
.visual-book .album-photo-pair-page img,.visual-book .album-photo-pair-page img:first-child,.visual-book .album-photo-pair-page img:last-child{height:100%!important;object-fit:cover!important;width:72%!important}

/* 第九、十页恢复为稳定的正常文档流：第九页单图居中，第十页两图居中、放大且留白分隔。 */
.visual-book .album-portrait-page{align-items:center!important;display:flex!important;justify-content:center!important;padding:0!important}
.visual-book .album-portrait-page img{height:86%!important;margin:0!important;object-fit:contain!important;width:76%!important}
.visual-book .album-portraits-page{align-content:center!important;display:grid!important;gap:8%!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;justify-items:center!important;padding:10% 0!important}
.visual-book .album-portraits-page img{aspect-ratio:auto!important;display:block!important;height:100%!important;object-fit:contain!important;width:72%!important}

@media(max-width:760px){
  .visual-book .album-video-frame{width:96%!important}
  .visual-book .album-video-play{font-size:14px!important;height:42px!important;width:42px!important}
  .visual-book .album-photo-pair-page>div{height:60%!important;top:20%!important}
  .visual-book .album-photo-pair-page img,.visual-book .album-photo-pair-page img:first-child,.visual-book .album-photo-pair-page img:last-child{width:72%!important}
}

/* P4 封面独立于 PageFlip：内页翻动不再参与正反封面的 3D 过渡。 */
.book-stage{--cover-flip-duration:1150ms;overflow:visible!important}
.book-stage .visual-book{clip-path:inset(0);opacity:1!important;transform:none!important;transition:clip-path var(--cover-flip-duration) cubic-bezier(.22,.7,.2,1)!important}
.book-stage .visual-book.cover-book-hidden,.book-stage .visual-book.cover-book-inactive{pointer-events:none!important}
.book-cover-layer{grid-column:2;grid-row:1;height:100%;isolation:isolate;opacity:0;perspective:2200px;pointer-events:none;position:relative;transform:translateX(0);transition:opacity .1s linear,transform var(--cover-flip-duration) cubic-bezier(.22,.7,.2,1),visibility 0s linear .1s;visibility:hidden;width:100%;z-index:50}
.book-stage.cover-front-closed .book-cover-layer,.book-stage.cover-front-opening .book-cover-layer,.book-stage.cover-front-closing-prepare .book-cover-layer,.book-stage.cover-front-closing .book-cover-layer,.book-stage.cover-back-closed .book-cover-layer,.book-stage.cover-back-opening .book-cover-layer,.book-stage.cover-back-closing-prepare .book-cover-layer,.book-stage.cover-back-closing .book-cover-layer{opacity:1;transition-delay:0s;visibility:visible}
.book-cover-slab{height:100%;position:absolute;top:0;transform-style:preserve-3d;width:50%;will-change:transform}
.book-front-slab{left:50%;transform:rotateY(0deg);transform-origin:left center;transition:transform var(--cover-flip-duration) cubic-bezier(.2,.72,.2,1)}
.book-back-slab{left:0;transform:rotateY(0deg);transform-origin:right center;transition:transform var(--cover-flip-duration) cubic-bezier(.2,.72,.2,1)}
.book-cover-face{backface-visibility:hidden;-webkit-backface-visibility:hidden;height:100%;inset:0;overflow:hidden;position:absolute;width:100%}
.book-cover-outer{background:linear-gradient(145deg,#805788 0%,#b878a0 54%,#dc977f 100%);box-shadow:0 20px 42px rgba(56,31,67,.28);color:#fff8ea;display:flex;flex-direction:column;justify-content:flex-end;padding:43px}
.book-cover-outer>p,.book-cover-outer>span{color:#f5d79b;font:10px var(--mono);letter-spacing:.1em;margin:0}
.book-cover-outer h3{color:#fff8ea;font:600 62px/.83 var(--serif);letter-spacing:-.06em;margin:29px 0}
.book-back-outer{justify-content:space-between}.book-back-outer>span{text-align:right}
.book-cover-inner{background:#fffdf7;color:#171717;transform:rotateY(180deg)}
.book-cover-toc{padding:17% 13%}.book-cover-toc>p{font:400 48px "Ma Shan Zheng","Noto Serif SC",serif;margin:0 0 60px;text-align:center}.book-cover-toc>div{display:grid;gap:17px}.book-cover-toc>div p{align-items:center;display:grid;font:600 14px "Noto Serif SC",serif;gap:12px;grid-template-columns:1fr auto;margin:0}.book-cover-toc>div b{font:600 12px var(--mono)}
.book-cover-last{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:12%}.book-cover-last>p{font:400 26px "Ma Shan Zheng","Noto Serif SC",serif;margin:0 0 8%;text-align:center}.book-cover-last>div{display:grid;gap:9%;grid-template-rows:1fr 1fr;justify-items:center;width:78%}.book-cover-last img{display:block;object-fit:contain;width:100%}
.book-stage.cover-front-closed .book-cover-layer{transform:translateX(-25%)}
.book-stage.cover-back-closed .book-cover-layer{transform:translateX(25%)}
.book-stage.cover-front-closed .visual-book,.book-stage.cover-back-closed .visual-book{clip-path:inset(0 25% 0 25%)}
.book-stage.cover-front-opening .book-cover-layer,.book-stage.cover-back-opening .book-cover-layer,.book-stage.cover-front-closing-prepare .book-cover-layer,.book-stage.cover-back-closing-prepare .book-cover-layer{transform:translateX(0)}
.book-stage.cover-front-closing .book-cover-layer{transform:translateX(-25%)}
.book-stage.cover-back-closing .book-cover-layer{transform:translateX(25%)}
.book-stage.cover-front-closing .visual-book,.book-stage.cover-back-closing .visual-book{clip-path:inset(0 25% 0 25%)}
.book-stage.cover-front-opening .book-front-slab{transform:rotateY(-180deg)}
.book-stage.cover-front-closing-prepare .book-front-slab{transition:none;transform:rotateY(-180deg)}
.book-stage.cover-front-closing .book-front-slab{transform:rotateY(0deg)}
.book-stage.cover-back-opening .book-back-slab{transform:rotateY(180deg)}
.book-stage.cover-back-closing-prepare .book-back-slab{transition:none;transform:rotateY(180deg)}
.book-stage.cover-back-closing .book-back-slab{transform:rotateY(0deg)}
.book-stage.cover-front-closed .book-back-slab,.book-stage.cover-front-opening .book-back-slab,.book-stage.cover-front-closing-prepare .book-back-slab,.book-stage.cover-front-closing .book-back-slab,.book-stage.cover-back-closed .book-front-slab,.book-stage.cover-back-opening .book-front-slab,.book-stage.cover-back-closing-prepare .book-front-slab,.book-stage.cover-back-closing .book-front-slab{visibility:hidden}
@media(max-width:760px){
  .book-stage .visual-book{clip-path:none!important}
  .book-cover-layer{transform:none!important}
  .book-cover-slab{left:0;width:100%}
  .book-front-slab{transform-origin:left center}
  .book-back-slab{transform-origin:right center}
  .book-cover-outer{padding:32px}.book-cover-outer h3{font-size:50px}
  .book-cover-toc{padding:15% 12%}.book-cover-toc>p{font-size:32px;margin-bottom:35px}.book-cover-toc>div{gap:10px}.book-cover-toc>div p{font-size:9px}.book-cover-toc>div b{font-size:8px}
  .book-cover-last>p{font-size:19px}
}

/* P4 交回 PageFlip 原生硬封面：先翻页，组件读完新页后再单独平移书本。 */
.book-stage .visual-book{clip-path:none!important;opacity:1!important;transition:none!important;will-change:transform}
.book-cover-layer{display:none!important}
.book-stage.is-front-cover .album-visual-back,.book-stage.is-back-cover .album-visual-cover{opacity:0!important;pointer-events:none!important}
.book-stage.is-inner-turning .book-side,.book-stage.is-book-shifting .book-side{opacity:.38!important;pointer-events:none!important}
/* 原生组件翻硬封面时会预绘前后多张软页；封面过渡中只保留硬封面，避免底页露出。 */
.book-stage.is-cover-turning .visual-book .flip-page:not(.flip-cover):not(.flip-back-cover){visibility:hidden!important}

/* P4 确定性封面场景：翻页期间用正确的相邻页托底，翻完后再独立平移。 */
.book-stage{--cover-flip-duration:920ms;--cover-shift-duration:800ms}
.book-stage .visual-book{opacity:1!important;transform:none!important;transition:none!important}
.book-stage .visual-book.cover-book-hidden{opacity:0!important;pointer-events:none!important}
.book-cover-layer{display:block!important;grid-column:2;grid-row:1;height:100%;isolation:isolate;opacity:0;perspective:2200px;pointer-events:none;position:relative;transform:translateX(0);transition:opacity .1s linear,transform var(--cover-shift-duration) cubic-bezier(.22,.72,.2,1),visibility 0s linear .1s;visibility:hidden;width:100%;z-index:50}
.book-stage.cover-open .book-cover-layer{opacity:0!important;transition:none!important;visibility:hidden!important}
.book-stage.cover-open .book-front-slab,.book-stage.cover-open .book-back-slab{transition:none!important}
.book-stage.cover-front-closed .book-cover-layer,.book-stage.cover-front-opening .book-cover-layer,.book-stage.cover-front-expanding .book-cover-layer,.book-stage.cover-front-closing-ready .book-cover-layer,.book-stage.cover-front-closing .book-cover-layer,.book-stage.cover-front-returning .book-cover-layer,.book-stage.cover-back-closed .book-cover-layer,.book-stage.cover-back-opening .book-cover-layer,.book-stage.cover-back-expanding .book-cover-layer,.book-stage.cover-back-closing-ready .book-cover-layer,.book-stage.cover-back-closing .book-cover-layer,.book-stage.cover-back-returning .book-cover-layer{opacity:1;transition-delay:0s;visibility:visible}
.book-cover-preview{height:100%;inset:0;position:absolute;width:100%;z-index:0}
.book-preview-page{height:100%;overflow:hidden;position:absolute!important;top:0;width:50%}
.book-preview-right{left:50%}.book-preview-left{left:0}
.book-preview-mobile{display:none}
.book-cover-layer .album-video-page{align-items:center!important;background:#fffdf7!important;display:flex!important;justify-content:center!important;padding:4%!important}
.book-cover-layer .album-video-frame{aspect-ratio:16/9;background:#4d4a3e;border:0;border-radius:7px;box-shadow:0 13px 26px rgba(70,56,46,.2);display:block;height:auto!important;max-width:96%;overflow:hidden;position:relative;width:96%}
.book-cover-layer .album-intro-video{display:block;height:100%!important;object-fit:cover!important;width:100%!important}
.book-cover-layer .album-video-frame:after{background:rgba(34,37,29,.29);content:"";inset:0;position:absolute;z-index:1}
.book-cover-layer .album-video-play{align-items:center;border:1.5px solid rgba(255,255,255,.78);border-radius:50%;color:#fff;display:flex;font:17px/1 var(--sans);height:51px;justify-content:center;left:50%;padding-left:3px;position:absolute;top:50%;transform:translate(-50%,-50%);width:51px;z-index:2}
.book-front-preview,.book-back-preview{display:none}
.book-stage.cover-front-closed .book-front-preview,.book-stage.cover-front-opening .book-front-preview,.book-stage.cover-front-expanding .book-front-preview,.book-stage.cover-front-closing-ready .book-front-preview,.book-stage.cover-front-closing .book-front-preview,.book-stage.cover-front-returning .book-front-preview{display:block}
.book-stage.cover-back-closed .book-back-preview,.book-stage.cover-back-opening .book-back-preview,.book-stage.cover-back-expanding .book-back-preview,.book-stage.cover-back-closing-ready .book-back-preview,.book-stage.cover-back-closing .book-back-preview,.book-stage.cover-back-returning .book-back-preview{display:block}
.book-cover-slab{height:100%;position:absolute;top:0;transform-style:preserve-3d;width:50%;will-change:transform}
.book-front-slab{left:50%;transform:rotateY(0deg);transform-origin:left center;transition:transform var(--cover-flip-duration) cubic-bezier(.22,.66,.28,1);z-index:2}
.book-back-slab{left:0;transform:rotateY(0deg);transform-origin:right center;transition:transform var(--cover-flip-duration) cubic-bezier(.22,.66,.28,1);z-index:2}
.book-cover-face{backface-visibility:hidden;-webkit-backface-visibility:hidden;height:100%;inset:0;overflow:hidden;position:absolute;width:100%}
.book-cover-inner.book-cover-face{position:absolute!important}
.book-stage.cover-front-closed .book-cover-layer,.book-stage.cover-front-opening .book-cover-layer{transform:translateX(-25%)}
.book-stage.cover-front-expanding .book-cover-layer,.book-stage.cover-front-closing-ready .book-cover-layer,.book-stage.cover-front-closing .book-cover-layer{transform:translateX(0)}
.book-stage.cover-front-returning .book-cover-layer{transform:translateX(-25%)}
.book-stage.cover-back-closed .book-cover-layer,.book-stage.cover-back-opening .book-cover-layer{transform:translateX(25%)}
.book-stage.cover-back-expanding .book-cover-layer,.book-stage.cover-back-closing-ready .book-cover-layer,.book-stage.cover-back-closing .book-cover-layer{transform:translateX(0)}
.book-stage.cover-back-returning .book-cover-layer{transform:translateX(25%)}
.book-stage.cover-front-opening .book-front-slab,.book-stage.cover-front-expanding .book-front-slab{transform:rotateY(-180deg)}
.book-stage.cover-front-closing-ready .book-front-slab{transition:none;transform:rotateY(-180deg)}
.book-stage.cover-front-closing .book-front-slab{transform:rotateY(0deg)}
.book-stage.cover-back-opening .book-back-slab,.book-stage.cover-back-expanding .book-back-slab{transform:rotateY(180deg)}
.book-stage.cover-back-closing-ready .book-back-slab{transition:none;transform:rotateY(180deg)}
.book-stage.cover-back-closing .book-back-slab{transform:rotateY(0deg)}
.book-stage.cover-front-closed .book-back-slab,.book-stage.cover-front-opening .book-back-slab,.book-stage.cover-front-expanding .book-back-slab,.book-stage.cover-front-closing-ready .book-back-slab,.book-stage.cover-front-closing .book-back-slab,.book-stage.cover-front-returning .book-back-slab,.book-stage.cover-back-closed .book-front-slab,.book-stage.cover-back-opening .book-front-slab,.book-stage.cover-back-expanding .book-front-slab,.book-stage.cover-back-closing-ready .book-front-slab,.book-stage.cover-back-closing .book-front-slab,.book-stage.cover-back-returning .book-front-slab{visibility:hidden}
@media(max-width:760px){.book-cover-layer{transform:none!important}.book-cover-slab,.book-preview-page{left:0;width:100%}.book-front-preview{display:block!important}.book-front-preview .book-preview-right{display:none!important}.book-preview-mobile{display:block}.book-front-slab .book-cover-inner{background:transparent!important}.book-front-slab .book-cover-inner>*{visibility:hidden!important}.book-cover-layer .album-video-play{font-size:14px;height:42px;width:42px}}

/* P4 逐页文字版式：内容来自「翻页文字部分.pdf」，所有文字均直接落在纸面上，不使用示意白底。 */
.visual-book .album-video-page,.book-cover-layer .album-video-page{align-items:flex-start!important;background:#fffdf7!important;display:flex!important;flex-direction:column!important;gap:4%!important;justify-content:flex-start!important;padding:8% 9%!important}
.album-video-heading{color:#282328;font:500 15px/1.65 "Noto Serif SC",serif;letter-spacing:.03em;margin:1% 0 0;width:100%}
.album-video-heading span{display:block}
.visual-book .album-video-frame,.book-cover-layer .album-video-frame{aspect-ratio:16/9!important;flex:0 0 auto!important;margin:0!important;max-width:none!important;width:100%!important}

.album-page-copy{color:#463b43;position:absolute;z-index:3}
.album-page-copy strong{display:block;font:600 13px/1.65 "Noto Serif SC",serif;letter-spacing:.01em;margin:0 0 13%}
.album-page-copy p{font:500 10.5px/1.78 "Noto Serif SC",serif;letter-spacing:.01em;margin:0 0 10%}
.visual-book .album-firework-left-page{background:#fffdf7!important}
.visual-book .album-firework-left-page>img{height:76%!important;left:-8%!important;mix-blend-mode:multiply;object-fit:contain!important;opacity:.82;top:17%!important;width:94%!important}
.visual-book .album-firework-left-copy{left:42%;top:22%;width:50%}
.visual-book .album-firework-right-page{background:#fffdf7!important}
.visual-book .album-firework-right-page .firework-scatter{height:auto!important;max-height:43%!important;right:-3%!important;top:1%!important;width:69%!important}
.visual-book .album-firework-right-page .firework-haze{bottom:1%!important;left:52%!important;opacity:.72!important;width:106%!important}
.visual-book .album-firework-right-copy{left:8%;top:49%;width:51%}
.visual-book .album-firework-right-copy p{margin-bottom:13%}

.visual-book .album-bare-tree-page{background:#fffdf7!important;display:block!important;position:relative!important}
.visual-book .album-bare-tree-page>img{height:63%!important;left:50%!important;margin:0!important;max-width:none!important;object-fit:contain!important;position:absolute!important;top:51%!important;transform:translate(-50%,-45%)!important;width:72%!important}
.album-tree-top-copy,.album-tree-bottom-copy{color:#453b40;font:500 12px/1.72 "Noto Serif SC",serif;letter-spacing:.02em;margin:0;position:absolute;z-index:3}
.album-tree-top-copy{right:7%;text-align:left;top:6%;width:48%}
.album-tree-bottom-copy{bottom:5%;left:12%;text-align:center;width:76%}
.album-tree-top-copy span,.album-tree-bottom-copy span{display:block}

.visual-book .album-growth-page{background:#fffdf7!important;display:block!important;position:relative!important}
.album-growth-copy{bottom:10%;color:#40373d;display:flex;flex-direction:column;justify-content:space-between;left:12%;position:absolute;top:10%;width:76%}
.album-growth-copy p{font:500 13px/2 "Noto Serif SC",serif;letter-spacing:.025em;margin:0}
.album-growth-copy span{display:block}

@media(max-width:760px){
  .album-video-heading{font-size:10px;line-height:1.5}
  .visual-book .album-video-page,.book-cover-layer .album-video-page{gap:3%!important;padding:8% 9%!important}
  .album-page-copy strong{font-size:8.5px;line-height:1.5;margin-bottom:9%}
  .album-page-copy p{font-size:7.4px;line-height:1.56;margin-bottom:7%}
  .visual-book .album-firework-left-copy{left:40%;top:19%;width:53%}
  .visual-book .album-firework-right-copy{left:7%;top:47%;width:54%}
  .album-tree-top-copy,.album-tree-bottom-copy{font-size:8px;line-height:1.5}
  .album-growth-copy p{font-size:8.8px;line-height:1.7}
}

/* PageFlip 通过行内 display:none 回收离屏页；页面自身的布局规则不得把它们重新显示。 */
#visual-book .stf__item{position:absolute!important}
#visual-book .stf__item[style*="display: none"]{display:none!important}

/* 桌面双页模式中，真实页面的百分比内边距按整本书宽度计算；封面内页需换算为单页比例才能无缝交接。 */
@media(min-width:761px){.book-front-slab .album-pdf-contents{padding:34% 26%!important}}

/* 过渡页沿用真实 PageFlip 纸张色，避免开合交接时产生白度闪变。 */
.book-cover-inner,.book-preview-page,.book-cover-layer .album-video-page{background:#fff8ed!important}

/* 反封面内侧复用真实 P9/P10 的人像版式，避免封底打开后图片再次缩放或跳位。 */
.book-back-preview .album-portrait-page{align-items:center!important;display:flex!important;justify-content:center!important;padding:0!important}
.book-back-preview .album-portrait-page img{height:86%!important;margin:0!important;object-fit:contain!important;width:76%!important}
.book-back-slab .album-portraits-page{align-content:center!important;display:grid!important;gap:8%!important;grid-template-rows:repeat(2,minmax(0,1fr))!important;justify-items:center!important;padding:20% 0!important}
.book-back-slab .album-portraits-page img{aspect-ratio:auto!important;display:block!important;height:100%!important;object-fit:contain!important;width:72%!important}
@media(max-width:760px){.book-back-slab .album-portraits-page{padding:10% 0!important}}

/* 本轮排版校准：P2 视频居中，标题贴合视频左上角；正文页字号和 P7 节奏同步调整。 */
.visual-book .album-video-page,
.book-cover-layer .album-video-page{
  display:block!important;
  padding:0!important;
}
.album-video-heading{
  left:9%;
  margin:0!important;
  position:absolute;
  top:24%;
  width:82%;
  z-index:3;
}
.visual-book .album-video-frame,
.book-cover-layer .album-video-frame{
  left:50%!important;
  margin:0!important;
  position:absolute!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  width:82%!important;
}
.album-page-copy strong{font-size:14.5px;line-height:1.62}
.album-page-copy p{font-size:12px;line-height:1.68}
.album-tree-top-copy,.album-tree-bottom-copy{font-size:13.5px;line-height:1.65}
.album-growth-copy{bottom:16%;top:16%}
.album-growth-copy p{font-size:14.5px;line-height:1.82}

/* 目录：标题和页码固定左右对齐，中间点线自动占满剩余空间。 */
.album-pdf-contents .album-toc-jump{
  gap:7px;
  grid-template-columns:max-content minmax(12px,1fr) max-content!important;
}
.album-pdf-contents .album-toc-jump span{
  min-width:0;
  text-align:left;
  white-space:nowrap;
}
.album-pdf-contents .album-toc-jump i{
  border-bottom:1px dotted currentColor;
  font-size:0;
  height:.72em;
  min-width:12px;
  opacity:.58;
  overflow:visible;
}
.album-pdf-contents .album-toc-jump b{
  min-width:28px;
  text-align:right;
}
@media(min-width:761px){
  .visual-book .album-pdf-contents{padding:17% 8%!important}
  /* 封面动画预览层是半本宽度，水平/垂直百分比需按 2 倍换算。 */
  .book-front-slab .album-pdf-contents{padding:34% 16%!important}
}
@media(max-width:760px){
  .album-video-heading{font-size:10.5px;line-height:1.48;top:24%}
  .visual-book .album-video-frame,.book-cover-layer .album-video-frame{width:82%!important}
  .album-page-copy strong{font-size:9.2px;line-height:1.48}
  .album-page-copy p{font-size:8.2px;line-height:1.5}
  .album-tree-top-copy,.album-tree-bottom-copy{font-size:9px;line-height:1.47}
  .album-growth-copy{bottom:16%;top:16%}
  .album-growth-copy p{font-size:9.5px;line-height:1.58}
  .album-pdf-contents .album-toc-jump{font-size:8.5px;padding:10px 0}
  .album-pdf-contents .album-toc-jump b{font-size:7.5px;min-width:20px}
}
