:root{--ink:#2b211a;--muted-ink:#2b211a9e;--paper-atmosphere:#eee6d5;--paper:var(--paper-atmosphere);--paper-deep:#dfd2bc;--scene-accent:#9b2f20;--architecture-atmosphere-filter:brightness(1) saturate(1);--atmosphere-shadow-opacity:.6;color:var(--ink);background-color:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;background-image:linear-gradient(#e6d8c02e,#e6d8c02e),url(/assets/paper/xuan-paper-texture.webp);background-position:0 0,0 0;background-repeat:repeat;background-size:auto,1024px 1024px;font-family:Songti SC,STSong,Noto Serif CJK SC,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px;min-height:100%}body{background-color:var(--paper);background-image:linear-gradient(#e6d8c02e,#e6d8c02e),url(/assets/paper/xuan-paper-texture.webp);background-position:0 0,0 0;background-repeat:repeat;background-size:auto,1024px 1024px;min-width:320px;min-height:100svh;margin:0;transition:background-color .52s cubic-bezier(.22,1,.36,1);overflow-x:clip}body:before,body:after{display:none}button,select,textarea{font:inherit}button{color:inherit}a{color:inherit;text-underline-offset:4px;text-decoration-thickness:1px}a:focus-visible,button:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--scene-accent);outline-offset:4px}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.site-header{z-index:70;border-top:2px solid color-mix(in srgb, var(--scene-accent), transparent 18%);background:repeating-linear-gradient(92deg, transparent 0 29px, #573c2706 30px, transparent 31px 58px), color-mix(in srgb, var(--paper), transparent 8%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #402c1d24;justify-content:space-between;align-items:center;min-height:78px;padding:12px clamp(20px,3.8vw,62px);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-size:11px;display:flex;position:relative;box-shadow:0 7px 24px #3a271909}.site-header:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#402c1d1f 22% 78%,#0000);height:1px;position:absolute;bottom:-1px;left:clamp(20px,3.8vw,62px);right:clamp(20px,3.8vw,62px)}.header-origin,.site-header nav{align-items:center;display:flex}.header-origin{gap:18px}.site-header nav{align-self:stretch;gap:clamp(17px,2.6vw,36px)}.brand{align-items:center;gap:11px;min-width:44px;min-height:44px;font-family:Fangsong SC,STKaiti,serif;font-size:14px;text-decoration:none;display:inline-flex}.brand-mark{border:1px solid var(--scene-accent);width:28px;height:28px;color:var(--scene-accent);place-items:center;font-size:17px;line-height:1;display:grid;transform:rotate(-2deg)}.brand-copy{gap:2px;display:grid}.brand-copy b{letter-spacing:.14em;font-weight:700}.brand-copy small,.header-context{color:#2b211a6e;letter-spacing:.11em;font:400 7px/1.2 ui-sans-serif,-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif}.header-rule{background:#402c1d29;width:1px;height:22px}.header-nav-item,.header-action{color:#2b211aa6;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;min-height:44px;padding:0 2px;text-decoration:none;display:inline-flex;position:relative}.header-nav-item small{color:#9b2f208f;font:400 8px/1 Fangsong SC,STKaiti,serif}.header-nav-item:after{content:"";background:var(--scene-accent);transform-origin:100%;height:1px;transition:transform .26s cubic-bezier(.16,1,.3,1);position:absolute;bottom:2px;left:2px;right:2px;transform:scaleX(0)}.header-action:hover,.header-nav-item:hover,.header-nav-item.is-active{color:var(--ink)}.header-nav-item:hover:after,.header-nav-item.is-active:after{transform-origin:0;transform:scaleX(1)}.composition{z-index:2;grid-template-columns:minmax(210px,.8fr) minmax(500px,1.55fr) minmax(180px,.66fr);align-items:center;gap:clamp(24px,3vw,52px);width:100%;min-height:calc(100svh - 74px);padding:24px clamp(20px,3.8vw,62px) 46px;display:grid;position:relative;overflow:clip visible}.editorial-copy{z-index:6;align-self:center;min-width:0;position:relative}.eyebrow{color:var(--scene-accent);letter-spacing:.22em;margin:0 0 9px;font-family:Fangsong SC,STKaiti,serif;font-size:12px}.scene-region{color:var(--muted-ink);letter-spacing:.12em;margin:0 0 22px;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-size:9px}.editorial-copy h1{letter-spacing:-.04em;max-width:440px;margin:0;font-family:Songti SC,STSong,serif;font-size:52px;font-weight:400;line-height:1.04}.editorial-copy h1 span{display:block}.editorial-copy h1 span:not(:first-child){letter-spacing:.02em;margin-top:8px;font-size:.45em;line-height:1.34}.editorial-copy h1 span:first-child{margin-bottom:17px}.scene-quote-source{color:#2b211a7a;max-width:390px;min-height:28px;-webkit-text-decoration-color:color-mix(in srgb, var(--scene-accent), transparent 68%);text-decoration-color:color-mix(in srgb, var(--scene-accent), transparent 68%);margin-top:11px;font-size:8px;line-height:1.55;display:inline-block}.scene-quote-source:hover{color:var(--scene-accent)}.scene-instruction{color:#2b211a78;letter-spacing:.06em;align-items:center;gap:8px;margin:28px 0 0;font-size:9px;display:flex}.scene-instruction:before{content:"";background:color-mix(in srgb, var(--scene-accent), transparent 45%);width:26px;height:1px}.scene-note{z-index:6;color:#2b211ab8;align-self:end;max-width:230px;padding-bottom:7vh;font-size:10px;line-height:1.65;position:relative}.note-kicker{color:var(--scene-accent);letter-spacing:.15em;margin:0 0 12px;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-size:8px}.note-caption{margin:0 0 20px;font-size:11px;line-height:1.85}.article-source{flex-direction:column;gap:3px;text-decoration:none;display:inline-flex}.article-source span{border-bottom:1px solid color-mix(in srgb, var(--scene-accent), transparent 54%);width:fit-content}.article-source small{color:#2b211a80;font-size:8px}.inline-settings-trigger{color:#2b211a85;min-height:44px;box-shadow:none;letter-spacing:.08em;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin:7px 0 0;padding:0 2px;font:400 10px/1.2 Fangsong SC,STKaiti,Songti SC,serif;transition:color .18s;display:inline-flex;position:relative}.inline-settings-trigger svg{opacity:.58;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1px;width:13px;height:13px;transition:opacity .18s}.inline-settings-trigger span{text-underline-offset:5px;-webkit-text-decoration:underline #2b211a33;text-decoration:underline #2b211a33}.inline-settings-trigger:hover,.inline-settings-trigger:focus-visible{color:color-mix(in srgb, var(--scene-accent), var(--ink) 24%);outline:0}.inline-settings-trigger:hover svg,.inline-settings-trigger:focus-visible svg{opacity:.86}.inline-settings-trigger:hover span,.inline-settings-trigger:focus-visible span{text-decoration-color:currentColor}.red-seal{aspect-ratio:1;color:#a23325;opacity:.9;border:2px solid #a23325;grid-template-columns:repeat(2,1fr);width:62px;margin:20px 5px 0 auto;padding:5px;font:700 18px/.95 Fangsong SC,STKaiti,serif;display:grid;position:relative;transform:rotate(-3deg);box-shadow:inset 0 0 0 2px #9b2f2033}.red-seal span{place-items:center;display:grid}.red-seal:after{content:"";background:radial-gradient(circle, var(--paper) 0 1px, transparent 1.7px) 0 0 / 8px 9px;opacity:.32;mix-blend-mode:screen;position:absolute;inset:-2px}.character-stage{--curtain-top:48.5%;--architecture-lift:-2.6%;--architecture-anchor:calc(var(--curtain-top) + var(--architecture-lift));--curtain-extension:clamp(56px, 8svh, 88px);--curtain-height:calc(100% - var(--architecture-anchor) + var(--curtain-extension));isolation:isolate;aspect-ratio:.93;justify-self:center;width:min(100%,720px,93svh - 102.3px);min-width:0;margin:0;position:relative}.scene-readout{z-index:8;border-left:1px solid var(--scene-accent);color:#2b211a8c;background:color-mix(in srgb, var(--paper), transparent 38%);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);letter-spacing:.08em;align-items:center;gap:9px;padding:7px 10px;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-size:8px;display:flex;position:absolute;top:1.5%;left:1.5%}.scene-counter{color:var(--scene-accent)}.stage-shadow{z-index:-2;transform-origin:0 0;filter:blur(12px);width:88%;height:58%;opacity:var(--atmosphere-shadow-opacity);pointer-events:none;background:linear-gradient(100deg,#2d211838,#2d21180d 58%,#0000 84%);transition:opacity .52s cubic-bezier(.22,1,.36,1);position:absolute;top:28%;left:30%;transform:skewY(30deg)rotate(1deg)}.roof-art{z-index:3;pointer-events:none;filter:drop-shadow(20px 27px 13px #3a2a1d29);position:absolute;inset:0}.roof-image{top:var(--art-anchor,var(--architecture-anchor));width:var(--art-width,106%);max-width:none;height:auto;transform:translate(-50%, var(--art-attachment-shift,-76%));transform-origin:50%;filter:var(--architecture-atmosphere-filter);will-change:opacity, transform, filter;transition:filter .52s cubic-bezier(.22,1,.36,1);display:block;position:absolute;left:50%}.roof-image--current{z-index:1}.roof-image--incoming{z-index:2;opacity:0}.roof-image--incoming[hidden]{display:none}.roof-fallback{clip-path:polygon(2% 71%,24% 58%,31% 37%,39% 33%,42% 9%,58% 9%,61% 33%,69% 37%,76% 58%,98% 71%,75% 72%,67% 87%,33% 87%,25% 72%);background:linear-gradient(#bf6b26 0 23%,#8d271d 24% 42%,#c6892d 43% 66%,#51251d 67% 100%);width:104%;height:34%;display:none;position:absolute;top:17%;left:-2%}.roof-art.is-fallback .roof-image--current{display:none}.roof-art.is-fallback .roof-fallback{display:block}.curtain-interaction{z-index:2;top:var(--architecture-anchor);width:86%;height:var(--curtain-height);touch-action:none;cursor:crosshair;position:absolute;left:7%}.curtain-canvas{inset-block:0;pointer-events:none;width:150%;height:100%;position:absolute;left:-25%}.static-curtain{z-index:2;top:var(--architecture-anchor);width:128%;height:var(--curtain-height);color:#2b231e;direction:rtl;grid-template-rows:repeat(22,1fr);grid-template-columns:repeat(24,1fr);grid-auto-flow:column;font:500 9px/1 Songti SC,Noto Serif CJK SC,STSong,serif;position:absolute;left:-14%;overflow:visible}.static-curtain:not([hidden]){display:grid}.static-curtain span{direction:ltr;place-items:center;display:grid}.character-stage.is-transitioning .curtain-interaction,.character-stage.is-transitioning .scene-neighbor{pointer-events:none}.scene-neighbor{--neighbor-distance:-118px;--neighbor-y:-50%;z-index:10;top:var(--architecture-anchor);width:82px;min-height:68px;transform:translateY(var(--neighbor-y));cursor:pointer;will-change:opacity, transform;background:0 0;border:0;flex-direction:column;align-items:center;gap:6px;padding:0;display:flex;position:absolute}.scene-neighbor--previous{left:var(--neighbor-distance)}.scene-neighbor--next{right:var(--neighbor-distance)}.scene-neighbor-visual{background:linear-gradient(145deg, #ffffff4d, transparent 58%), color-mix(in srgb, var(--paper), transparent 8%);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);border:1px solid #2b211a33;width:68px;height:52px;transition:border-color .22s,transform .3s cubic-bezier(.2,.8,.2,1),background .22s;display:block;position:relative;overflow:hidden;box-shadow:0 10px 24px #432d1d17}.scene-neighbor-visual:after{content:"";background:color-mix(in srgb, var(--scene-accent), transparent 45%);height:1px;position:absolute;bottom:6px;left:8px;right:8px}.scene-neighbor-image{--neighbor-scale:96%;--neighbor-offset-x:0%;top:70%;left:calc(50% + var(--neighbor-offset-x));width:var(--neighbor-scale);max-width:none;height:auto;transform:translate(-50%, var(--art-attachment-shift,-72%));filter:drop-shadow(3px 5px 3px #34241929);display:block;position:absolute}.scene-flight{z-index:30;pointer-events:none;transform-origin:0 0;filter:drop-shadow(20px 27px 13px #3a2a1d29);will-change:opacity, transform;max-width:none;height:auto;display:block;position:fixed}.scene-neighbor-copy{color:#2b211ab8;text-align:center;flex-direction:column;max-width:82px;font-size:9px;line-height:1.32;display:flex}.scene-neighbor-copy small{color:#2b211a6b;letter-spacing:.12em;font:7px/1.3 ui-sans-serif,-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif}.scene-neighbor-copy b{white-space:nowrap;font-weight:400}.scene-neighbor:hover .scene-neighbor-visual,.scene-neighbor:focus-visible .scene-neighbor-visual{border-color:var(--scene-accent);background:color-mix(in srgb, var(--paper), white 16%);transform:translateY(-3px)scale(1.04)}dialog{color:var(--ink);background:var(--paper)}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#271d1647}.weather-layer{z-index:5;contain:strict;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .52s cubic-bezier(.22,1,.36,1),visibility .52s;position:fixed;inset:0;overflow:hidden}.weather-atmosphere,.weather-particle{pointer-events:none;display:block;position:absolute}.weather-atmosphere{opacity:0;transition:opacity .62s;inset:0}.weather-particle{top:-16vh;left:var(--weather-x);opacity:0;will-change:transform, opacity}:root[data-atmosphere=rain] .weather-layer,:root[data-atmosphere=snow] .weather-layer{opacity:1;visibility:visible}:root[data-atmosphere=rain] .weather-atmosphere{opacity:1;background:linear-gradient(#414b4a14,#0000 32%,#3c48480b),radial-gradient(at 50% 108%,#525e5b1c,#0000 62%)}:root[data-atmosphere=rain] .weather-particle{width:1px;height:36px;animation:weather-rain-fall var(--rain-duration) linear var(--rain-delay) infinite;background:linear-gradient(#0000,#3041461f 28%,#30414694);border-radius:999px;transform:translateY(-18vh)rotate(13deg)}:root[data-atmosphere=rain] .weather-particle[data-depth="0"]{--weather-alpha:.24;filter:blur(.3px);width:.6px;height:22px}:root[data-atmosphere=rain] .weather-particle[data-depth="1"]{--weather-alpha:.4;width:.8px;height:34px}:root[data-atmosphere=rain] .weather-particle[data-depth="2"]{--weather-alpha:.62;filter:drop-shadow(0 0 1px #2f3f442e);width:1px;height:49px}:root[data-atmosphere=snow] .weather-atmosphere{opacity:1;background:linear-gradient(#fff3,#0000 42%),radial-gradient(at 50% 0,#ffffff57,#0000 64%)}:root[data-atmosphere=snow] .weather-particle{width:var(--weather-size);height:var(--weather-size);animation:weather-snow-fall var(--snow-duration) cubic-bezier(.34, .08, .66, .92) var(--snow-delay) infinite;background:#fcfdfaf5;border-radius:50%;top:-8vh;transform:translateY(-10vh);box-shadow:0 0 1px #4e5b5b33,0 0 5px #ffffffa3}:root[data-atmosphere=snow] .weather-particle[data-depth="0"]{--weather-alpha:.32;filter:blur(.65px);scale:.7}:root[data-atmosphere=snow] .weather-particle[data-depth="1"]{--weather-alpha:.56}:root[data-atmosphere=snow] .weather-particle[data-depth="2"]{--weather-alpha:.86;scale:1.16}@keyframes weather-rain-fall{0%{opacity:0;transform:translateY(-18vh)rotate(13deg)}7%{opacity:var(--weather-alpha)}88%{opacity:var(--weather-alpha)}to{opacity:0;transform:translate3d(var(--weather-drift), 122vh, 0) rotate(13deg)}}@keyframes weather-snow-fall{0%{opacity:0;transform:translateY(-10vh)rotate(0)}8%{opacity:var(--weather-alpha)}86%{opacity:var(--weather-alpha)}to{opacity:0;transform:translate3d(var(--weather-drift), 116vh, 0) rotate(190deg)}}.capture-tools{z-index:75;opacity:0;visibility:hidden;pointer-events:none;align-items:center;gap:9px;transition:opacity .26s,visibility .26s,transform .36s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;top:20px;right:clamp(18px,3vw,48px);transform:translateY(-8px)}.capture-tools button{border:1px solid color-mix(in srgb, var(--ink), transparent 76%);min-height:42px;color:color-mix(in srgb, var(--ink), transparent 24%);background:color-mix(in srgb, var(--paper), transparent 12%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;padding:0 15px}.capture-tools kbd{color:var(--scene-accent);font:inherit;margin-left:5px;font-size:8px}:root[data-capture-mode=true] .capture-tools{opacity:1;visibility:visible;pointer-events:auto;transform:none}.site-header,.editorial-copy,.scene-note,.scene-neighbor,.scene-readout{transition:opacity .28s,visibility .28s,transform .42s cubic-bezier(.22,1,.36,1)}:root[data-capture-mode=true] .site-header,:root[data-capture-mode=true] .editorial-copy,:root[data-capture-mode=true] .scene-note,:root[data-capture-mode=true] .scene-neighbor,:root[data-capture-mode=true] .scene-readout{opacity:0;visibility:hidden;pointer-events:none}:root[data-capture-mode=true] .site-header{position:fixed;inset:0 0 auto;transform:translateY(-100%)}:root[data-capture-mode=true] .composition{grid-template-columns:1fr;min-height:100dvh;padding:32px}:root[data-capture-mode=true] .editorial-copy,:root[data-capture-mode=true] .scene-note{position:absolute}:root[data-capture-mode=true] .character-stage{width:min(94vw,1040px,93dvh - 39.06px);transition:width .54s cubic-bezier(.22,1,.36,1)}.atmosphere-dialog{border:1px solid color-mix(in srgb, var(--ink), transparent 78%);background:linear-gradient(125deg, #ffffff4d, transparent 45%), var(--paper);width:min(580px,100vw - 32px);max-width:none;margin:8vh clamp(16px,4vw,64px) auto auto;padding:0;box-shadow:0 28px 90px #2a1d142e}.atmosphere-panel{padding:28px}.atmosphere-panel header{border-bottom:1px solid #2b211a1f;justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:20px;display:flex}.atmosphere-panel header small,.atmosphere-options small{color:var(--muted-ink);letter-spacing:.1em;font:400 8px/1.5 ui-sans-serif,-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif}.atmosphere-panel h2{margin:7px 0 0;font-size:30px;font-weight:400}.atmosphere-close{cursor:pointer;background:0 0;border:1px solid #2b211a2e;min-width:44px;min-height:44px;padding:0 14px}.atmosphere-options{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:20px 0 6px;display:grid}.atmosphere-options button{text-align:left;cursor:pointer;background:#ffffff14;border:1px solid #2b211a24;align-content:end;gap:7px;min-width:0;min-height:128px;padding:14px 10px;transition:transform .28s cubic-bezier(.22,1,.36,1),border-color .22s,background .22s;display:grid;position:relative}.atmosphere-options button:before{content:"";background:linear-gradient(155deg, #ffffffa6, var(--atmosphere-swatch,#eee7d7));border-bottom:1px solid #2b211a1c;height:45px;position:absolute;inset:9px 9px auto}.atmosphere-options button:nth-child(2){--atmosphere-swatch:#d6a36c}.atmosphere-options button:nth-child(3){--atmosphere-swatch:#83929a}.atmosphere-options button:nth-child(4){--atmosphere-swatch:#8a9797}.atmosphere-options button:nth-child(5){--atmosphere-swatch:#e9ece9}.atmosphere-options button:hover{transform:translateY(-4px)}.atmosphere-options button[aria-pressed=true]{border-color:var(--scene-accent);background:#ffffff3d}.atmosphere-options b{font-size:16px;font-weight:400}.atmosphere-status{min-height:1.5em;color:var(--scene-accent);margin:12px 0 0;font-size:9px}.dialog-header{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.dialog-header p{color:var(--scene-accent);letter-spacing:.16em;margin:0 0 8px;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-size:8px}.dialog-header h2{letter-spacing:.08em;margin:0;font-size:34px;font-weight:400}.dialog-close{cursor:pointer;background:#ffffff21;border:1px solid #2b211a33;min-width:44px;min-height:44px;padding:0 16px}.overview-dialog{background:linear-gradient(110deg, #ffffff38, transparent 38%), var(--paper);border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;overflow:hidden}.overview-shell{grid-template-rows:auto auto minmax(220px,1fr) auto auto;height:100%;padding:34px clamp(22px,4vw,66px) 24px;display:grid}.overview-header{padding-bottom:24px}.overview-filter{scrollbar-width:none;gap:7px;padding:0 0 14px;display:flex;overflow-x:auto}.overview-filter::-webkit-scrollbar{display:none}.overview-filter button{min-height:36px;color:var(--muted-ink);cursor:pointer;background:0 0;border:1px solid #2b211a21;flex:none;padding:0 14px;font-size:9px}.overview-filter button[aria-pressed=true]{border-color:var(--scene-accent);color:var(--scene-accent);background:color-mix(in srgb, var(--paper), white 12%)}.overview-track{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-color:var(--scene-accent) #2b211a1a;scrollbar-width:thin;gap:clamp(18px,2.3vw,34px);min-width:0;padding:8px 9vw 20px 1px;display:flex;overflow:auto hidden}.overview-card{text-align:left;scroll-snap-align:center;cursor:pointer;background:#ffffff1c;border:1px solid #2b211a24;flex:0 0 min(56vw,680px);grid-template-rows:minmax(0,1fr) auto;min-width:290px;padding:18px 20px 20px;transition:border-color .22s,background .22s,transform .3s;display:grid;position:relative}.overview-card[hidden]{display:none}.overview-card:hover,.overview-card[aria-current=true]{border-color:color-mix(in srgb, var(--scene-accent), transparent 20%);background:#ffffff3d}.overview-card:hover{transform:translateY(-3px)}.overview-card-index{z-index:2;color:var(--scene-accent);letter-spacing:.1em;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-size:9px;position:absolute;top:18px;left:20px}.overview-card-visual{place-items:center;min-height:0;display:grid}.overview-card-visual img{object-fit:contain;filter:drop-shadow(18px 24px 12px #36261b21);width:100%;height:100%;max-height:43vh}.overview-card-copy{border-top:1px solid #2b211a1a;grid-template-columns:1fr auto;align-items:end;gap:4px 18px;padding-top:8px;display:grid}.overview-card-copy small{color:#2b211a80;letter-spacing:.08em;grid-column:1/-1;font-size:9px}.overview-card-copy b{font-size:22px;font-weight:400}.overview-card-copy em{color:var(--scene-accent);font-size:10px;font-style:normal}.overview-curation{grid-template-columns:54px minmax(0,1fr);align-items:start;gap:18px;max-width:860px;padding-top:16px;display:grid}.overview-curation-count{border-top:1px solid var(--scene-accent);color:var(--scene-accent);margin:0;padding-top:4px;font-size:9px}.overview-curation-region{color:var(--muted-ink);letter-spacing:.12em;font-size:8px}.overview-curation-title{margin:3px 0 5px;font-size:19px;font-weight:400}.overview-curation-caption{color:var(--muted-ink);margin:0;font-size:10px;line-height:1.6}.overview-curation-source{color:var(--scene-accent);margin-top:4px;font-size:8px;display:inline-block}.overview-hint{color:#2b211a75;text-align:right;margin:14px 0 0;font-size:9px}.text-settings-dialog{background:0 0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;overflow:hidden}.text-settings-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#23191233}.settings-shell{pointer-events:none;width:100%;height:100%;position:relative;overflow:hidden}.book-turntable{z-index:12;pointer-events:auto;width:min(610px,94vw);height:340px;transition:opacity .22s,visibility 0s linear .22s;position:absolute;bottom:clamp(20px,4vh,48px);right:clamp(20px,4vw,64px)}.book-turntable.is-receded{opacity:0;visibility:hidden;pointer-events:none}.settings-close{z-index:40;color:#2b211aa3;text-underline-offset:5px;cursor:pointer;background:0 0;border:0;min-width:52px;min-height:44px;padding:0 8px;-webkit-text-decoration:underline #2b211a38;text-decoration:underline #2b211a38;position:absolute;top:0;right:0}.turntable-heading{z-index:30;pointer-events:none;max-width:280px;position:absolute;top:0;left:38px}.turntable-heading p{color:var(--scene-accent);margin:0 0 7px;font-size:8px}.active-book-title{margin:0;font-size:27px;font-weight:400;line-height:1.18}.active-book-meta{color:#2b211a80;margin-top:7px;font-size:9px;display:block}.turntable-actions{z-index:32;align-items:center;gap:14px;display:flex;position:absolute;top:84px;right:0}.turntable-actions>span{color:#2b211a70;font-size:8px}.expand-book{border:1px solid color-mix(in srgb, var(--scene-accent), transparent 34%);color:#f5ead6;background:var(--scene-accent);cursor:pointer;min-width:112px;min-height:44px;padding:0 17px}.expand-book:disabled{cursor:wait;opacity:.48}.book-carousel{--dial-drag:0px;touch-action:pan-y;cursor:grab;width:100%;height:244px;transform:translateX(var(--dial-drag));outline:0;transition:transform .26s cubic-bezier(.16,1,.3,1);position:absolute;bottom:0;right:0}.book-carousel.is-dragging{cursor:grabbing;transition:none}.book-carousel:focus-visible:after{content:"";background:color-mix(in srgb, var(--scene-accent), transparent 34%);height:1px;position:absolute;bottom:7px;left:12%;right:12%}.book-volume{transform-origin:50% 100%;cursor:pointer;background:0 0;border:0;width:118px;min-width:44px;height:184px;min-height:44px;padding:0;transition:opacity .26s,filter .26s,transform .62s cubic-bezier(.16,1,.3,1);position:absolute;bottom:18px;left:50%}.book-volume[data-slot="0"]{z-index:30;transform:translate(-50%,-28px)rotate(0)scale(1.13)}.book-volume[data-slot="-1"]{z-index:20;transform:translate(calc(-50% - 84px),5px)rotate(-9deg)scale(.92)}.book-volume[data-slot="1"]{z-index:19;transform:translate(calc(84px - 50%),5px)rotate(9deg)scale(.92)}.book-volume[data-slot="-2"]{z-index:10;opacity:.72;transform:translate(calc(-50% - 162px),28px)rotate(-16deg)scale(.79)}.book-volume[data-slot="2"]{z-index:9;opacity:.72;transform:translate(calc(162px - 50%),28px)rotate(16deg)scale(.79)}.book-volume[data-slot="3"]{z-index:4;opacity:.54;transform:translate(calc(226px - 50%),43px)rotate(22deg)scale(.66)}.book-volume:hover,.book-volume:focus-visible{filter:brightness(1.06)saturate(1.04)}.book-volume:focus-visible{filter:brightness(1.06)saturate(1.04)drop-shadow(0 6px 5px #4e2c1c33);outline:0}.book-volume:focus-visible .book-volume-face:before{border-color:color-mix(in srgb, var(--scene-accent), transparent 38%);box-shadow:inset 0 0 0 1px #ead7ad70}.book-volume.is-flight-source{opacity:0}[data-tone=indigo]{--book-cover:#47585b;--book-cover-deep:#2d393b;--book-thread:#d8c9a7;--book-cover-image:url(/assets/book-covers/thread-indigo.webp)}[data-tone=ochre]{--book-cover:#9b6f3e;--book-cover-deep:#654522;--book-thread:#e2cfaa;--book-cover-image:url(/assets/book-covers/thread-ochre.webp)}[data-tone=cinnabar]{--book-cover:#8c493d;--book-cover-deep:#5f2d27;--book-thread:#e1c8a5;--book-cover-image:url(/assets/book-covers/thread-cinnabar.webp)}[data-tone=jade]{--book-cover:#687a69;--book-cover-deep:#414f43;--book-thread:#e0d0ad;--book-cover-image:url(/assets/book-covers/thread-jade.webp)}[data-tone=umber]{--book-cover:#745746;--book-cover-deep:#49352b;--book-thread:#dfc9a6;--book-cover-image:url(/assets/book-covers/thread-umber.webp)}[data-tone=smoke]{--book-cover:#62645d;--book-cover-deep:#393d39;--book-thread:#d9c8a5;--book-cover-image:url(/assets/book-covers/thread-indigo.webp)}.book-volume-face{border:1px solid color-mix(in srgb, var(--book-cover-deep), black 10%);color:#29231d;background:linear-gradient(color-mix(in srgb, var(--book-cover), transparent 62%), color-mix(in srgb, var(--book-cover-deep), transparent 73%)), var(--book-cover-image) center / cover no-repeat, var(--book-cover);display:block;position:absolute;inset:0;overflow:visible;box-shadow:inset -16px 0 20px #19100a17,8px 13px 18px #2f1f142e}.book-volume-face:before{content:"";pointer-events:none;border:1px solid #efdcb51f;position:absolute;inset:5px}.book-page-edge{z-index:-1;background:repeating-linear-gradient(0deg,#e7dcc2 0 1px,#cabd9f 1px 2px);border:1px solid #573f2938;width:7px;position:absolute;top:5px;bottom:-5px;left:-5px}.book-title-slip{background:repeating-linear-gradient(2deg,#49311e09 0 1px,#0000 1px 5px),#eadfc6;border:1px solid #4f392638;place-items:center;width:34px;padding:8px 5px;display:grid;position:absolute;top:14%;bottom:17%;left:31%;overflow:hidden;box-shadow:1px 2px 3px #2a1b1121}.book-title-slip strong{writing-mode:vertical-rl;text-orientation:upright;letter-spacing:.12em;white-space:nowrap;width:1em;height:max-content;max-height:calc(100% - 12px);font-size:17px;font-weight:500;line-height:1;display:block}.book-volume-face small{color:#eee0c1c2;text-align:center;font-size:7px;line-height:1.55;position:absolute;bottom:8%;left:8%}.book-volume-face i{border-top:1px solid var(--book-thread);border-bottom:1px solid var(--book-thread);opacity:.85;border-radius:50%;width:15px;height:6px;position:absolute;right:4px}.book-volume-face i:after{content:"";border:1px solid var(--book-thread);border-radius:50%;width:5px;height:5px;position:absolute;top:2px;right:4px}.book-volume-face i:first-of-type{top:14%}.book-volume-face i:nth-of-type(2){top:36%}.book-volume-face i:nth-of-type(3){top:58%}.book-volume-face i:nth-of-type(4){top:80%}.book-flight{z-index:80;pointer-events:none;transform-origin:0 0;will-change:opacity, transform, filter;padding:0;position:fixed}.book-flight .book-volume-face{inset:0}.unfolded-manuscript{z-index:20;pointer-events:none;place-items:center;display:none;position:absolute;inset:0}.unfolded-manuscript.is-mounted{pointer-events:auto;display:grid}.scroll-stage{isolation:isolate;will-change:opacity;place-items:center;width:min(90vw,1320px);height:min(84dvh,820px);display:grid;position:relative}.manuscript-paper{isolation:isolate;color:#2b241d;transform-origin:50%;will-change:clip-path, opacity, transform, filter;background:radial-gradient(at 15% 12%,#ffffff9e,#0000 30%),repeating-linear-gradient(2deg,#563a2307 0 1px,#0000 1px 6px),#eee3ca;grid-template-rows:74px minmax(0,1fr) 58px;width:100%;height:100%;padding:24px 30px 18px;display:grid;position:relative;overflow:hidden;box-shadow:0 26px 72px #25180f38}.scroll-axis{z-index:4;filter:drop-shadow(3px 6px 4px #2d1d1138);pointer-events:none;transform-origin:50%;will-change:opacity, transform;width:22px;position:absolute;top:-11px;bottom:-11px}.scroll-axis--left{left:-10px}.scroll-axis--right{right:-10px}.scroll-axis-shaft{background:linear-gradient(90deg,#3b2115,#8a5534 24%,#b37a4b 48%,#6b3d27 72%,#321b12),#6c3f28;border:1px solid #3a21127a;border-radius:7px;width:10px;position:absolute;top:12px;bottom:12px;left:6px;box-shadow:inset 1px 0 #ffe0ac3b,inset -2px 0 #1f110a47}.scroll-axis-cap{background:radial-gradient(circle at 42% 35%,#ffe7a39e 0 12%,#0000 13%),linear-gradient(90deg,#69431f,#d2a34d 38%,#886023 68%,#4e2f17);border:1px solid #4d2d1385;border-radius:48% 48% 34% 34%;width:20px;height:19px;position:absolute;left:1px;box-shadow:inset 0 1px #ffecb85c}.scroll-axis-cap--top{top:0}.scroll-axis-cap--bottom{bottom:0;transform:rotate(180deg)}.scroll-axis-cap:after{content:"";background:#b7893f;border:1px solid #4b2b1280;border-radius:50%;width:7px;height:7px;position:absolute;left:6px}.scroll-axis-cap--top:after,.scroll-axis-cap--bottom:after{top:-6px}.manuscript-paper:before,.manuscript-paper:after{content:"";z-index:-1;pointer-events:none;position:absolute;inset:0}.manuscript-paper:before{opacity:.24;background:repeating-linear-gradient(91deg,#0000 0 43px,#60412814 44px,#0000 45px 71px)}.manuscript-paper:after{box-shadow:inset 0 0 30px #61412814}.manuscript-inscription{border-bottom:1px solid #4c331f26;align-items:end;gap:18px;min-width:0;padding:0 6px 13px;display:flex}.manuscript-inscription p{color:var(--scene-accent);margin:0;font-size:8px}.reader-title{margin:0;font-size:24px;font-weight:400}.reader-meta{color:#2b211a80;white-space:nowrap;font-size:9px}.manuscript-source{color:#2b211a8f;text-underline-offset:4px;margin-left:auto;font-size:9px}.manuscript-reading{min-width:0;min-height:0;padding:16px 4px 12px}.classical-page-scroll{overscroll-behavior-x:contain;scrollbar-color:color-mix(in srgb, var(--scene-accent), transparent 24%) #4b332014;scrollbar-width:thin;direction:ltr;width:100%;height:100%;overflow:auto hidden}.classical-page-scroll:focus-visible,.custom-text:focus-visible{box-shadow:inset 0 -2px color-mix(in srgb, var(--scene-accent), transparent 28%);outline:0}.classical-text{writing-mode:vertical-rl;text-orientation:upright;color:#2c241e;letter-spacing:.08em;white-space:pre-wrap;block-size:max-content;min-block-size:100%;inline-size:100%;padding:3px 10px 13px;font:500 17px/2.12 Songti SC,STSong,Noto Serif CJK SC,serif}.custom-editor-pane,.custom-text{width:100%;height:100%}.custom-editor-pane[hidden],.classical-page-scroll[hidden],.manuscript-source[hidden]{display:none}.custom-text{resize:none;color:#2c241e;letter-spacing:.08em;writing-mode:vertical-rl;text-orientation:upright;direction:ltr;background:0 0;border:0;padding:8px 12px 14px;font:500 17px/2.12 Songti SC,STSong,Noto Serif CJK SC,serif;overflow:auto hidden}.custom-text::placeholder{color:#2b211a4d}.manuscript-actions{border-top:1px solid #4c331f26;align-items:center;gap:9px;min-width:0;padding-top:10px;display:flex}.reader-mode,.text-count,.manuscript-status{color:#2b211a80;font-size:8px}.manuscript-status{color:var(--scene-accent);flex:auto}.manuscript-actions button{cursor:pointer;background:0 0;border:1px solid #2b211a2e;min-width:88px;min-height:44px;padding:0 13px}.manuscript-actions .apply-text{border-color:var(--scene-accent);color:#f5ead6;background:var(--scene-accent);min-width:116px}.manuscript-actions button:disabled{cursor:wait;opacity:.45}@media (width<=1099px){.composition{grid-template-columns:minmax(150px,.8fr) minmax(340px,1.45fr) minmax(110px,.62fr);gap:14px}.editorial-copy h1{font-size:42px}.scene-note{padding-bottom:4vh}.scene-neighbor-copy{display:none}.scene-neighbor{--neighbor-distance:-92px;--neighbor-y:-170%;width:60px}.scene-neighbor-visual{width:58px;height:46px}}@media (width<=760px){.site-header{min-height:66px;padding:8px 16px}.header-origin{gap:10px}.header-rule,.header-context,.brand-copy small{display:none}.site-header nav{gap:13px}.header-nav-item{gap:4px;font-size:9px}.header-nav-item small{display:none}.brand{letter-spacing:.08em}.composition{grid-template-columns:1fr;align-items:start;gap:22px;min-height:auto;padding:24px 15px 48px}.editorial-copy{max-width:520px}.scene-region{margin-bottom:15px}.editorial-copy h1{max-width:330px;font-size:43px}.editorial-copy h1 span:first-child{margin-bottom:11px}.editorial-copy h1 span:not(:first-child){margin-top:5px;font-size:.45em}.scene-quote-source{margin-top:8px}.scene-instruction{margin-top:13px}.character-stage{--architecture-lift:-2.2%;--curtain-extension:0px;aspect-ratio:.88;width:100%}.scene-readout{top:0;left:1%}.scene-readout-label{display:none}.scene-neighbor{--neighbor-distance:-13px;--neighbor-y:-100%;width:54px;min-height:46px}.scene-neighbor-visual{background:color-mix(in srgb, var(--paper), transparent 3%);width:52px;height:42px}.stage-shadow{width:75%;opacity:var(--atmosphere-shadow-opacity);left:22%}.curtain-canvas{width:124%;left:-12%}.scene-note{text-align:right;grid-template-columns:minmax(0,1fr) auto;justify-self:end;column-gap:18px;width:min(100%,390px);max-width:none;padding:0;display:grid}.note-kicker,.note-caption,.article-source,.inline-settings-trigger{grid-column:1}.note-kicker{margin-bottom:5px}.note-caption{margin-bottom:10px}.article-source{align-items:flex-end}.inline-settings-trigger{margin-left:auto}.red-seal{grid-area:1/2/span 4;align-self:end;margin:0}.overview-shell{padding:24px 16px 18px}.overview-header{padding-bottom:17px}.overview-filter{margin-right:-16px;padding-right:16px}.dialog-header h2{font-size:28px}.dialog-close{padding-inline:12px}.overview-track{gap:14px;padding-right:10vw}.overview-card{flex-basis:84vw;padding:14px}.overview-card-index{top:14px;left:14px}.overview-card-copy b{font-size:19px}.overview-curation{grid-template-columns:42px 1fr;gap:11px;padding-top:11px}.overview-curation-caption{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.overview-hint{text-align:left}.atmosphere-dialog{border-width:1px 0 0;width:100vw;margin:auto 0 0}.atmosphere-panel{padding:20px 16px max(20px, env(safe-area-inset-bottom))}.atmosphere-options{grid-template-columns:repeat(5,minmax(76px,1fr));overflow-x:auto}.atmosphere-options button{min-height:116px}.weather-particle:nth-of-type(3n){display:none}.capture-tools{top:auto;right:12px;bottom:max(12px, env(safe-area-inset-bottom))}:root[data-capture-mode=true] .composition{padding:16px 8px}:root[data-capture-mode=true] .character-stage{width:min(100%,88dvh - 21.12px)}.book-turntable{right:0;bottom:max(24px, env(safe-area-inset-bottom));width:100vw;height:312px}.settings-close{top:0;right:14px}.turntable-heading{max-width:220px;top:4px;left:16px}.active-book-title{font-size:22px}.turntable-actions{top:76px;right:16px}.turntable-actions>span{display:none}.book-carousel{width:100%;height:218px;bottom:0}.book-volume{width:96px;height:150px;bottom:9px}.book-volume[data-slot="0"]{transform:translate(-50%,-22px)rotate(0)scale(1.12)}.book-volume[data-slot="-1"]{transform:translate(calc(-50% - 64px),4px)rotate(-9deg)scale(.91)}.book-volume[data-slot="1"]{transform:translate(calc(64px - 50%),4px)rotate(9deg)scale(.91)}.book-volume[data-slot="-2"]{transform:translate(calc(-50% - 112px),25px)rotate(-15deg)scale(.78)}.book-volume[data-slot="2"]{transform:translate(calc(112px - 50%),25px)rotate(15deg)scale(.78)}.book-volume[data-slot="3"]{opacity:.5;transform:translate(calc(164px - 50%),37px)rotate(21deg)scale(.64)}.book-title-slip{width:29px}.book-title-slip strong{font-size:14px}.book-volume-face small{font-size:6px}.scroll-stage{width:100vw;height:100dvh}.manuscript-paper{width:100%;height:100%;box-shadow:none;grid-template-rows:68px minmax(0,1fr) 104px;padding:12px 12px 9px}.scroll-axis{width:16px;top:5px;bottom:5px}.scroll-axis--left{left:0}.scroll-axis--right{right:0}.scroll-axis-shaft{width:7px;left:5px}.scroll-axis-cap{width:16px;left:0}.scroll-axis-cap:after{left:4px}.manuscript-paper:after{inset:0}.manuscript-inscription{gap:9px;padding:0 4px 9px}.manuscript-inscription p{display:none}.reader-title{font-size:19px}.reader-meta{font-size:7px}.manuscript-source{white-space:nowrap;font-size:8px}.manuscript-reading{padding:10px 0 8px}.classical-text,.custom-text{font-size:14px;line-height:1.92}.manuscript-actions{grid-template-rows:26px 48px;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding-top:7px;display:grid}.reader-mode{grid-column:1}.text-count{text-align:center;grid-column:2}.manuscript-status{text-align:right;text-overflow:ellipsis;white-space:nowrap;grid-column:3;overflow:hidden}.manuscript-actions button{min-width:0;min-height:44px;padding-inline:5px}.manuscript-actions .apply-text{min-width:0}}@media (width<=390px){.brand-mark{display:none}.header-origin{gap:10px}.site-header nav{gap:6px}.header-nav-item{font-size:8px}.editorial-copy h1{font-size:39px}.scene-neighbor-visual{width:48px;height:39px}.turntable-heading{max-width:205px}.active-book-title{font-size:20px}.expand-book{min-width:104px;padding-inline:12px}.reader-meta{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.weather-particle{animation:none!important;display:none!important}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
