:root{--paper:#f5f2eb;--ink:#223b32;--green:#176343;--muted:#58665d;--line:#bdc8bb;--serif:'STSong','SimSun','Songti SC',Georgia,serif;--sans:'Microsoft YaHei UI','Microsoft YaHei',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;border:1px solid var(--line);background:transparent;padding:10px 16px;cursor:pointer;transition:background .18s,color .18s}button:hover{background:var(--ink);color:var(--paper)}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b36c19;outline-offset:4px}a{color:inherit;text-underline-offset:5px}::selection{background:#c7dfb8;color:#152c22}::-webkit-scrollbar{width:7px}::-webkit-scrollbar-thumb{background:#a9b6a6}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500;text-wrap:balance}p{line-height:1.9}button.primary{background:var(--green);color:#fff;border-color:var(--green)}button.primary:hover{background:#0f4930}.skip{position:fixed;left:10px;top:-80px;z-index:20;background:var(--paper);padding:10px}.skip:focus{top:10px}
.masthead{height:70px;padding:0 5vw;display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line);font-size:13px;letter-spacing:.06em}.masthead>a{font-family:var(--serif);font-size:21px;text-decoration:none;margin-right:auto}.masthead>span:last-child{font-variant-numeric:tabular-nums}.controls{position:fixed;z-index:5;bottom:0;left:0;right:0;min-height:66px;padding:12px 3vw;display:flex;align-items:center;gap:10px;background:var(--paper);border-top:1px solid var(--line);font-size:13px}.controls button{padding:8px 14px}.controls #progress{margin-right:auto;color:var(--muted);font-variant-numeric:tabular-nums}.controls #next-button{background:var(--ink);color:var(--paper);min-width:96px}.slide{min-height:calc(100dvh - 70px);padding:4vh 6vw 110px;display:flex;flex-direction:column}.page-meta{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted);padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:4vh}.page-meta span:last-child{font-variant-numeric:tabular-nums}.slide.dark{background:var(--ink);color:var(--paper)}.dark .page-meta{color:#ced9cb;border-color:#748f7d}.slide h1{font-size:clamp(36px,4.6vw,76px);line-height:1.35}.slide h2{font-size:clamp(26px,3vw,48px);line-height:1.45}.spread{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:6vw;align-items:center;flex:1;min-width:0}.spread>div{min-width:0}.copy{font-size:clamp(19px,1.85vw,30px);line-height:1.95;max-width:36em;overflow-wrap:anywhere}.copy p+p{margin-top:1em}.subtle{color:var(--muted);font-size:15px}.dark .subtle{color:#ced9cb}.rule{border:0;border-top:1px solid var(--line);margin:24px 0}.value{margin-top:24px;font-size:20px}.value span{display:inline-block;padding:5px 0;border-bottom:1px solid currentColor}.cover-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:6vw;align-items:center;flex:1}.cover-title{font-size:clamp(60px,8vw,128px)!important;line-height:1.15!important;letter-spacing:.02em}.cover-title span{display:block}.cover-title .green{color:var(--green)}.cover-theme{font-family:var(--serif);font-size:clamp(23px,2.3vw,38px);margin-top:28px}.cover-side{border-top:1px solid var(--ink);align-self:end;margin-bottom:5vh}.cover-side p{padding:18px 0;border-bottom:1px solid var(--line);font-size:18px}.issue-stamp{display:flex;align-items:baseline;gap:16px;margin-bottom:30px;font-size:16px}.issue-stamp strong{font:italic 60px Georgia,serif}.page-bottom{margin-top:30px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:12px}.chapter{justify-content:center}.chapter h1{font-size:clamp(56px,8vw,124px)}.chapter p{font-family:var(--serif);font-size:clamp(24px,2.4vw,38px);margin-top:30px}.chapter .page-meta{margin-top:0}.chapter-body{flex:1;display:flex;flex-direction:column;justify-content:center}.nominees{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 4vw;margin:35px 0}.nominees .name{padding:24px 0;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:clamp(24px,3vw,46px);overflow-wrap:anywhere}.nominees.team{grid-template-columns:repeat(2,minmax(0,1fr))}.nominees.team .name{font-family:var(--sans);font-size:clamp(18px,1.8vw,28px);line-height:1.6}.nominee-heading{font-size:clamp(28px,3vw,46px)!important}.award-name{max-width:10em}.award-name .suffix{display:block;font-size:.55em;margin-top:12px}.reveal-body{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:30px}.reveal-body h1{font-size:clamp(44px,6vw,96px)}.winner-list{display:flex;flex-wrap:wrap;gap:24px 70px;font-family:var(--serif);font-size:clamp(45px,7vw,110px);line-height:1.3;overflow-wrap:anywhere}.winner-list.team-title{font-size:clamp(36px,4.5vw,72px);max-width:16em}.revealed{animation:reveal .75s cubic-bezier(.16,1,.3,1)}@keyframes reveal{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}.winner-name{font-size:clamp(50px,6vw,96px)!important;overflow-wrap:anywhere}.team-story .winner-name{font-size:clamp(32px,3.4vw,54px)!important}.team-members{margin-top:24px;font-size:clamp(17px,1.6vw,25px);line-height:1.8}.team-members p{margin-top:12px}.years{font-family:Georgia,var(--serif);font-size:clamp(100px,15vw,230px);line-height:1;color:var(--green)}.years small{font:28px var(--serif);margin-left:18px}.tenure-list{font-family:var(--serif);font-size:clamp(23px,2.4vw,38px);line-height:2.1}.quote{font-family:var(--serif);font-size:clamp(22px,2.25vw,36px);line-height:1.85;white-space:pre-line;max-width:32em}.quote.long{font-size:clamp(19px,1.85vw,29px)}.person-head{margin-bottom:28px}.portrait{width:100%;height:46vh;object-fit:contain;object-position:center;background:#eae9df;display:block}.photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px}.photo-pair figure{margin:0;min-width:0}.photo-pair .portrait{height:34vh}.photo-pair figcaption{font-size:13px;color:var(--muted);margin-top:8px}.person-photos{margin-bottom:20px}.person-name{font-size:clamp(42px,5vw,80px)!important}.person-with-photo{grid-template-columns:1fr 1fr}.person-message{border-top:1px solid var(--line);padding-top:26px}.empty-message{font-family:var(--serif);font-size:clamp(26px,3vw,44px);line-height:1.8}.closing h1{white-space:pre-line}.toc-row{display:grid;grid-template-columns:70px 1fr 100px;align-items:center;gap:22px;padding:25px 0;border-bottom:1px solid var(--line);width:100%;border-left:0;border-right:0;border-top:0;text-align:left}.toc-row strong{font-family:var(--serif);font-size:clamp(28px,3vw,46px);font-weight:400}.toc-row span{line-height:1.8}.contents-panel{position:fixed;inset:70px 0 66px;background:var(--paper);z-index:6;padding:30px 6vw;overflow-y:auto}.contents-panel[hidden]{display:none}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid var(--line)}.panel-head h2{font-size:32px}#contents-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;padding:15px 0}#contents-links button{border:0;border-bottom:1px solid var(--line);padding:18px 0;text-align:left;line-height:1.6}.notice{position:fixed;bottom:84px;left:3vw;background:var(--ink);color:var(--paper);padding:12px 20px;z-index:10;font-size:14px;max-width:90vw}
.reader{max-width:1160px;margin:auto;padding:45px 5vw 110px}.reader .reader-cover{padding:40px 0 70px;border-bottom:1px solid var(--line)}.reader h1{font-size:clamp(42px,6vw,80px);line-height:1.3}.reader h2{font-size:clamp(30px,3.7vw,52px);margin-bottom:25px}.reader h3{font-size:clamp(26px,3vw,38px);margin-bottom:15px}.reader p{font-size:18px;line-height:1.95;max-width:70ch}.reader p+p{margin-top:18px}.reader section{padding:55px 0;border-bottom:1px solid var(--line);scroll-margin-top:30px}.reader .read-winner{padding:30px 0}.reader .read-nominees{font-size:17px;color:var(--muted);margin:20px 0;line-height:2}.reader details{margin:25px 0;font-size:16px}.reader details p{font-size:16px;margin-top:12px}.reader summary{cursor:pointer;line-height:1.6}.reader .people-entry{padding:30px 0;border-top:1px solid var(--line)}.reader .people-entry .portrait{max-width:400px;height:350px;margin:20px 0}.reader .message{white-space:pre-line}.reader .reader-toc{display:flex;flex-wrap:wrap;gap:20px;padding:25px 0}.reader .reader-toc a{font-size:18px}.reading #previous-button,.reading #next-button,.reading #reset-button{display:none}.reading .masthead{position:relative}.reading .controls #progress{font-size:12px}body.static{scroll-behavior:auto}body.static .revealed{animation:none}
@media(max-width:800px){.masthead{padding:0 6vw;gap:10px;font-size:11px;height:60px}.masthead>a{font-size:17px}.masthead>span:nth-child(2){display:none}.slide{padding:24px 6vw 130px;min-height:calc(100dvh - 60px)}.spread,.cover-grid{grid-template-columns:1fr;gap:30px;align-content:center}.cover-title{font-size:clamp(54px,13vw,90px)!important}.cover-side{margin:0;align-self:auto}.cover-side p{padding:10px 0;font-size:15px}.issue-stamp{margin-bottom:18px}.issue-stamp strong{font-size:42px}.page-meta{margin-bottom:30px}.copy{font-size:19px}.nominees{grid-template-columns:repeat(2,minmax(0,1fr));margin:20px 0;gap:0 20px}.nominees .name{font-size:25px;padding:16px 0}.nominees.team{grid-template-columns:1fr}.nominees.team .name{font-size:19px}.controls{flex-wrap:wrap;gap:6px;padding:9px 4vw;min-height:88px}.controls button{font-size:12px;padding:7px 10px}.controls #progress{order:-1;flex:1 0 100%}.controls #fullscreen-button{display:none}.controls #reset-button{font-size:11px}.controls #previous-button{margin-left:auto}.controls #next-button{min-width:auto}.contents-panel{inset:60px 0 95px}#contents-links{grid-template-columns:1fr}.quote{font-size:24px}.quote.long{font-size:20px}.years{font-size:120px}.tenure-list{font-size:26px}.winner-list{font-size:58px}.toc-row{grid-template-columns:40px 1fr;gap:12px}.toc-row span:last-child{display:none}.portrait{height:40vh}.page-bottom{flex-wrap:wrap}.reader{padding-bottom:140px}.reading .controls{min-height:80px}.notice{bottom:112px}.panel-head h2{font-size:24px}.chapter h1{font-size:65px}.team-members{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.revealed{animation:none}}
@media print{.controls,.masthead,.skip,.notice,.contents-panel{display:none!important}.reader{max-width:none;padding:0}.reader section{break-inside:avoid}.reader details{display:block}.reader details>*{display:block}.slide{min-height:auto}}

@media(min-width:801px){.cover-title{font-size:clamp(60px,6.4vw,104px)!important}.cover-theme{font-size:clamp(23px,2vw,32px)}.cover-grid{gap:5vw}.slide:has(.cover-grid){padding-top:3vh}.slide:has(.cover-grid) .issue-stamp{margin-bottom:20px}}

/* Editorial annotations: quiet pen strokes and warm paper, all offline. */
:root{--paper:#fbf5eb;--ink:#354337;--green:#286449;--muted:#736653;--line:#cec6b6;--pencil:#ad5039;--hand:'KaiTi','STKaiti','Kaiti SC','SimSun',serif}
.ink-emphasis{position:relative;display:table;max-width:100%}
.pen-line{position:absolute;left:-.02em;bottom:-.07em;width:100%;height:17px;color:var(--pencil);pointer-events:none}
.pen-line path,.pen-arrow path{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.hand-note{font-family:var(--hand);font-size:clamp(20px,1.8vw,28px);line-height:1.65;color:var(--pencil);margin-top:30px;transform:rotate(-2deg);transform-origin:left center}
.pen-arrow{width:120px;height:60px;color:var(--pencil);margin:8px 0 0 15px;display:block}
.cover-side{position:relative;border-top:0;padding:25px 28px 15px;background:#f1e8d6;transform:rotate(1deg);margin-bottom:7vh}
.cover-side>.hand-note{margin-top:0;padding:0 0 16px;border:0;font-size:clamp(21px,2vw,29px);color:var(--pencil)}
.cover-side>.pen-arrow{position:absolute;right:10px;top:-36px;transform:rotate(26deg);width:85px}
.cover-side>p:not(.hand-note){border-bottom-color:#c8bea9}.cover-side>p:last-child{border:0}
.cover-title .ink-emphasis{width:max-content;max-width:100%;padding-bottom:.08em}.cover-title .pen-line{bottom:.06em}
.editorial-letter{padding:30px 0}.spread{gap:4.8vw}.slide h1{font-weight:600}.slide .copy{line-height:1.9}.winner-name .pen-line{bottom:-.03em}
.dark{--pencil:#edb08a}.dark .hand-note{color:#edb08a}.reveal-body{gap:22px}.reveal-body .hand-note{margin-top:0}
.reveal-body h1{font-size:clamp(42px,5.2vw,80px);line-height:1.5}.chapter .hand-note{font-family:var(--hand);font-size:clamp(20px,1.8vw,28px);margin-top:32px;max-width:90%}
.reader .reader-cover h2,.reader .read-winner h3{display:table;text-decoration:underline;text-decoration-color:#c18560;text-decoration-thickness:2px;text-underline-offset:9px}
@media(max-width:800px){.cover-side{margin:0;padding:15px 20px}.hand-note{font-size:21px;margin-top:22px}.pen-arrow{width:88px;height:44px}.cover-side>.pen-arrow{display:none}.reveal-body h1{font-size:39px}.reveal-body{gap:22px}.pen-line{height:12px}.editorial-letter{padding:0}.chapter .hand-note{font-size:22px;line-height:1.7}}

/* Stage edition: names first, specific contributions second, supporting detail last. */
.masthead>a{display:flex;align-items:baseline;gap:18px}
.masthead small{font:12px var(--sans);letter-spacing:.12em;color:var(--green)}
.slide{position:relative}
.slide:before{content:'';position:absolute;top:0;left:0;width:var(--page-progress,0%);height:2px;background:#39817c;pointer-events:none}
.slide.dark:before{background:#94c5b5}
.page-meta{font-variant-numeric:tabular-nums;letter-spacing:.04em}
.cover-title>span:first-child{font-family:var(--sans);font-weight:600;letter-spacing:-.04em}
.connection-mark{display:block;width:100%;height:54px;margin-top:24px;color:#39817c}
.connection-mark path{fill:none;stroke:currentColor;stroke-width:1.3}
.connection-mark circle{fill:var(--paper);stroke:currentColor;stroke-width:1.5}
.slide .winner-story .story-headline{font-family:var(--sans);font-weight:500;font-size:clamp(27px,2.45vw,38px);letter-spacing:-.02em}
.cover-index{align-self:center;padding:0 0 0 2vw}
.cover-index .hand-note{margin:0 0 32px;font-size:25px}
.cover-index .toc-row{grid-template-columns:1fr auto;gap:12px;padding:26px 0}
.cover-index .toc-row>span:first-child{display:none}
.cover-index .toc-row strong{font-size:32px}
.cover-index .toc-row>span:last-child{font-size:13px;color:var(--muted)}
.cover-index .toc-row:hover{background:transparent;color:var(--green)}
.cover-index .toc-row:hover strong{text-decoration:underline;text-underline-offset:9px}
.cover-theme{font-size:clamp(21px,2vw,30px)}
.award-definition{border-top:1px solid var(--line);padding-top:28px;max-width:34em}
.award-definition h2{font:20px var(--hand);color:var(--pencil);margin-bottom:20px}
.award-definition p{font-size:clamp(22px,2vw,30px);line-height:1.9}
.nomination-header{display:flex;justify-content:space-between;align-items:baseline;gap:24px}
.nomination-header p{font-size:18px;color:var(--muted)}
.nominees{flex:1;align-content:center;margin:24px 0}
.nominees .name{font-weight:600;padding:27px 0;font-size:clamp(28px,3.4vw,50px)}
.nominees.team .name{font-weight:400;font-size:clamp(18px,1.8vw,27px)}
.reveal-body{gap:50px}
.reveal-fold{position:relative;display:flex;align-items:center;justify-content:space-between;gap:40px;padding:28px 0;width:min(100%,720px);border-top:1px solid #8f9b8a}
.reveal-fold>span{font:clamp(28px,3vw,42px) var(--serif)}
.reveal-fold>.pen-line{width:150px;bottom:9px}
.reveal-fold button{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.reveal-fold button:hover{background:#ead8bd;color:var(--ink)}
.winner-spread{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:5vw;flex:1;align-items:center}
.winner-identity{min-width:0;padding:28px 3vw 28px 0;border-right:1px solid var(--line)}
.winner-spread .winner-name{font-size:clamp(52px,5.7vw,86px)!important;line-height:1.3;letter-spacing:.02em}
.winner-award{font-size:clamp(17px,1.4vw,22px);line-height:1.6;margin-top:26px;color:var(--green)}
.co-winners{font-size:18px;margin-top:26px;color:var(--muted)}
.winner-story{min-width:0;padding:24px 0}
.winner-story .story-headline{font-size:clamp(28px,2.7vw,42px);line-height:1.55;font-weight:600;text-wrap:initial}
.winner-story>.pen-line{position:static;display:block;width:110px;height:14px;margin:16px 0 24px}
.story-copy{font-size:clamp(20px,1.65vw,26px);line-height:1.85;overflow-wrap:anywhere}
.story-copy p{line-height:inherit}
.story-copy p+p{margin-top:20px}
.team-story .winner-name{font-size:clamp(32px,3.4vw,52px)!important;max-width:8em}
.team-story .team-members{font-size:clamp(18px,1.5vw,23px);margin-top:24px}
.team-story .winner-name>span{display:block;white-space:nowrap}
.team-story .team-members{display:grid;grid-template-columns:repeat(4,max-content);gap:10px 14px;line-height:1.8}
.team-story .team-members>span{white-space:nowrap}
.person-message{position:relative;border:0;padding:28px 0}
.person-message:before{content:'“';font:80px Georgia,serif;line-height:1;color:var(--pencil);display:block;height:55px}
.person-message:has(.empty-message):before{display:none}
@media(max-width:1000px) and (min-width:801px){.cover-index{padding-left:0}.cover-index .toc-row{grid-template-columns:1fr}.winner-spread{gap:4vw}.winner-spread .winner-name{font-size:58px!important}.team-story .winner-name{font-size:36px!important}.nomination-header p{font-size:16px}}
@media(max-width:800px){
 .masthead>a{gap:8px}.masthead small{font-size:9px;letter-spacing:.02em}.connection-mark{height:40px;margin-top:12px}
 .cover-index{padding:0;margin-top:28px}.cover-index .hand-note{font-size:21px;margin-bottom:16px}.cover-index .toc-row{padding:18px 0}.cover-index .toc-row strong{font-size:27px}
 .nomination-header{display:block}.nomination-header p{margin-top:14px;font-size:16px}.nominees .name{font-size:30px;padding:20px 0}.nominees.team .name{font-size:19px}
 .award-definition{margin-top:22px;padding-top:20px}.award-definition p{font-size:21px}.award-definition h2{margin-bottom:14px}
 .winner-spread{grid-template-columns:1fr;gap:22px}.winner-identity{border-right:0;border-bottom:1px solid var(--line);padding:20px 0 26px}.winner-spread .winner-name{font-size:54px!important}.team-story .winner-name{font-size:36px!important;max-width:none}.winner-award{font-size:17px;margin-top:18px}.co-winners{font-size:16px;margin-top:14px}.winner-story{padding:0}.winner-story .story-headline{font-size:29px}.story-copy{font-size:20px}.winner-story>.pen-line{margin:12px 0 20px}.team-story .team-members{font-size:18px}
 .reveal-body{gap:34px}.reveal-fold{flex-direction:column;align-items:flex-start;gap:28px}.reveal-fold>.pen-line{display:none}.person-message{padding-top:10px}
}
@media(min-width:801px) and (max-height:760px){
 .slide{padding-top:24px;padding-bottom:90px}.page-meta{margin-bottom:24px;padding-bottom:16px}.page-bottom{margin-top:20px}
 .cover-title{font-size:66px!important}.issue-stamp{margin-bottom:16px}.issue-stamp strong{font-size:42px}.cover-theme{margin-top:18px}
 .winner-story{padding:10px 0}.winner-story .story-headline{font-size:32px}.story-copy{font-size:21px}.story-copy p+p{margin-top:14px}.winner-story>.pen-line{margin:10px 0 18px}
 .nominees .name{padding:20px 0}.nominees.team .name{font-size:21px}.quote.long{font-size:21px}
}
/* Enterprise IT: confident technical structure around a human editorial core. */
:root{--green:#176b5b;--tech:#176b65;--tech-night:#173d37;--tech-light:#92e2cc}
.masthead{background:var(--tech-night);color:#fff8eb;border-bottom-color:#35695f}
.masthead small{color:var(--tech-light);font-weight:500}
.slide:before{height:3px;background:var(--tech)}
.slide.dark{background:var(--tech-night)}
.slide.dark:before{background:var(--tech-light)}
.page-meta{border-bottom-color:#94b3a8}.page-meta>span:last-child{color:var(--tech);font-weight:600}
.dark .page-meta>span:last-child{color:var(--tech-light)}
.cover-grid{grid-template-columns:1.15fr .85fr;gap:5vw}
.cover-index{padding:30px 32px;background:var(--tech-night);color:var(--paper)}
.cover-index .hand-note{color:#f0bb9e;font-size:24px;margin-bottom:20px}
.cover-index .toc-row{border-bottom-color:#4d766a;padding:22px 0}
.cover-index .toc-row>span:last-child{color:#c5ddd2}
.cover-index .toc-row:hover{color:var(--tech-light)}
.cover-index .connection-mark{color:var(--tech-light);height:74px;margin-top:18px}
.cover-index .connection-mark path{stroke-width:2}
.cover-index .connection-mark circle{fill:var(--tech-night);stroke-width:2.5}
.issue-stamp strong{font-family:var(--sans);font-style:normal;font-weight:600;font-size:52px;letter-spacing:-.04em;color:var(--tech)}
.slide.chapter .chapter-body:after{content:'';display:block;width:min(600px,75%);height:100px;background:url('connections.svg') center/contain no-repeat;margin-top:40px}
.slide.chapter h1{font-family:var(--sans);font-weight:500;letter-spacing:-.025em;font-size:clamp(54px,7vw,106px)}
.award-name{font-family:var(--sans);letter-spacing:-.025em}
.award-definition{border-top:2px solid var(--tech)}
.nominees .name{border-bottom-color:#9bb8ab}
.person-name:after{content:'';display:block;width:90px;height:4px;background:var(--tech);margin-top:22px}
.winner-identity{border-right-color:#8cb1a2}
.years{font-family:var(--sans);font-weight:500;letter-spacing:-.04em}
.controls #next-button{background:var(--tech-night);border-color:var(--tech-night)}
.reveal-fold{border-color:#83b5a3}.reveal-fold button{background:var(--tech-light);border-color:var(--tech-light);color:#173d37}
@media(max-width:800px){.cover-grid{grid-template-columns:1fr}.cover-index{padding:24px;margin-top:12px}.cover-index .hand-note{font-size:20px}.cover-index .toc-row strong{font-size:27px}.cover-index .connection-mark{height:50px}.slide.chapter .chapter-body:after{width:100%;height:66px;margin-top:30px}.slide.chapter h1{font-size:56px}}
@media(min-width:801px) and (max-height:760px){.cover-index{padding:20px 26px}.cover-index .toc-row{padding:16px 0}.cover-index .connection-mark{height:50px}.cover-index .hand-note{font-size:21px}.issue-stamp strong{font-size:42px}.slide.chapter .chapter-body:after{height:66px;margin-top:24px}}
/* Motion stays brief and event-driven: one entrance per page, no ambient loop. */
@keyframes page-arrive{from{opacity:.55;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@keyframes connect-once{from{stroke-dashoffset:1200}to{stroke-dashoffset:0}}
@keyframes chapter-connect{from{clip-path:inset(0 100% 0 0);opacity:.4}to{clip-path:inset(0);opacity:1}}
.slide{animation:page-arrive .36s cubic-bezier(.16,1,.3,1)}
.connection-mark path{stroke-dasharray:1200;stroke-dashoffset:0;animation:connect-once 1.6s cubic-bezier(.16,1,.3,1)}
.slide.chapter .chapter-body:after{animation:chapter-connect 1.25s cubic-bezier(.16,1,.3,1)}
.revealed{animation:reveal .55s cubic-bezier(.16,1,.3,1)}
body.static .slide,body.static .connection-mark path,body.static .slide.chapter .chapter-body:after,body.static .revealed{animation:none}
@media(prefers-reduced-motion:reduce){.slide,.connection-mark path,.slide.chapter .chapter-body:after,.revealed{animation:none}html{scroll-behavior:auto}}
