/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}@font-face{font-family:Source Han Serif SC Web;src:url(/fonts/source-han-serif-sc-subset.woff2)format("woff2");font-style:normal;font-weight:200 900;font-display:swap}@font-face{font-family:Source Han Sans SC Web;src:url(/fonts/source-han-sans-sc-subset.woff2)format("woff2");font-style:normal;font-weight:200 900;font-display:swap}:root{--paper:#f3ead6;--cream:#fbf4e6;--ink:#1c1915;--muted:#746a5d;--red:#ae4937;--gold:#b88428;--green:#536d50;--blue:#164f66;--line:#d5c4a6}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{color:var(--ink);background:linear-gradient(180deg,var(--cream),var(--paper));margin:0;font-family:Songti SC,STSong,Noto Serif CJK SC,serif}body:before{content:"";pointer-events:none;z-index:20;opacity:.18;mix-blend-mode:multiply;background-image:radial-gradient(#281e1438 .55px,#0000 .7px);background-size:11px 11px;position:fixed;inset:0}a{color:inherit}button{font:inherit}.skip-link{z-index:99;background:var(--cream);border:1px solid var(--ink);padding:.6rem .9rem;position:fixed;top:1rem;left:1rem;transform:translateY(-180%)}.skip-link:focus{transform:none}.topbar{z-index:15;letter-spacing:.14em;color:#1c1915a6;mix-blend-mode:multiply;justify-content:space-between;padding:1rem clamp(1rem,3vw,2.5rem);font-family:ui-monospace,monospace;font-size:.68rem;display:flex;position:fixed;top:0;left:0;right:0}.hero{background:linear-gradient(90deg,#fbf4e6fa 0%,#fbf4e6e0 26%,#fbf4e629 62%,#0000),url(/room.png) 50%/cover;align-items:flex-end;min-height:100svh;padding:8rem clamp(1.25rem,5vw,5rem) clamp(3rem,7vw,5rem);display:flex;position:relative;overflow:hidden}.hero:after{content:"";pointer-events:none;background:linear-gradient(#0000 75%,#f3ead6b3);position:absolute;inset:0}.hero-copy{z-index:2;width:min(720px,100%);position:relative}.eyebrow{color:var(--red);letter-spacing:.18em;margin:0 0 1rem;font-family:ui-monospace,monospace;font-size:.72rem;font-weight:700}h1{letter-spacing:-.08em;margin:0;font-family:Kaiti SC,STKaiti,"FangSong",serif;font-size:clamp(5.6rem,12vw,10.8rem);font-weight:500;line-height:.76}.dek{color:#50483f;max-width:35rem;margin:2.2rem 0 0;font-size:clamp(1.05rem,1.8vw,1.32rem);line-height:1.8}.begin{letter-spacing:.08em;border-bottom:1px solid var(--ink);gap:1.3rem;margin-top:2rem;padding-bottom:.35rem;font-family:ui-monospace,monospace;font-size:.76rem;font-weight:700;text-decoration:none;display:inline-flex}.begin span{color:var(--red)}.chapter{border-top:1px solid var(--line);min-height:100vh;position:relative}.room-stage{z-index:1;background:#1d2d30;width:55%;height:100svh;position:sticky;top:0;overflow:hidden}.room-viewport{position:absolute;inset:clamp(1rem,2vw,2rem);overflow:hidden;box-shadow:0 24px 80px #1a120c40}.room-image{width:120%;height:120%;transform-origin:var(--focus-x) var(--focus-y);background:url(/room.png) 50%/cover no-repeat;transition:transform-origin 1s cubic-bezier(.2,.8,.2,1),transform .8s;position:absolute;inset:-10%;transform:scale(1.34)}.room-vignette{pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 120px #060e1157}.focus-dot{border:1px solid #fff4cde6;border-radius:50%;width:18px;height:18px;margin:-9px 0 0 -9px;transition:left .9s,top .9s;position:absolute;box-shadow:0 0 0 7px #ffefbb24,0 0 36px 14px #ffe48b33}.caption{color:#fff9e9;letter-spacing:.1em;border-top:1px solid #fff9e973;align-items:baseline;gap:.8rem;padding-top:.8rem;font-family:ui-monospace,monospace;font-size:.68rem;display:flex;position:absolute;bottom:clamp(1.25rem,3vw,2.5rem);left:clamp(1.3rem,3vw,3rem);right:clamp(1.3rem,3vw,3rem)}.caption strong{font-size:.85rem}.caption em{opacity:.7;margin-left:auto;font-style:normal}.story-column{width:45%;margin-left:55%;padding:14vh clamp(1.5rem,5vw,5rem) 15vh}.room-group{--accent:var(--gold)}.room-2{--accent:var(--green)}.room-3{--accent:var(--blue)}.scene-card{border-top:3px solid var(--accent);flex-direction:column;justify-content:center;min-height:70vh;display:flex}.scene-no{color:var(--accent);font-family:ui-monospace,monospace;font-size:.78rem}.scene-card h2{margin:.2rem 0 1rem;font-size:clamp(3rem,5vw,5rem);font-weight:500}.scene-card p:last-child{color:#62594e;margin:0;font-size:1.05rem;line-height:1.9}.story-card{outline:none;flex-direction:column;justify-content:center;min-height:86vh;display:flex}.story-meta{border-bottom:1px solid var(--line);color:var(--accent);letter-spacing:.1em;justify-content:space-between;padding-bottom:.7rem;font-family:ui-monospace,monospace;font-size:.72rem;font-weight:700;display:flex}.story-card h3{letter-spacing:-.05em;max-width:9ch;margin:1.1rem 0 1.6rem;font-size:clamp(2.6rem,5vw,5.3rem);font-weight:500;line-height:1.05}blockquote{color:#3c352d;margin:0;font-family:Kaiti SC,STKaiti,serif;font-size:clamp(1.35rem,2.5vw,2.1rem);line-height:1.55}.author{color:var(--accent);margin:.7rem 0 0;font-size:.86rem}.note{border-top:1px solid var(--line);color:#5f574d;margin:2.3rem 0 0;padding-top:1.1rem;font-size:.98rem;line-height:1.85}.rail{z-index:10;flex-direction:column;gap:.38rem;display:flex;position:fixed;top:50%;left:calc(55% - 1.1rem);transform:translateY(-50%)}.rail button{cursor:pointer;background:0 0;border:0;align-items:center;width:2.2rem;height:.6rem;padding:0;display:flex}.rail span{background:#fbf4e680;width:.5rem;height:1px;transition:all .25s;display:block}.rail button.active span,.rail button:hover span{background:#fff;width:1.2rem}.closing{background:var(--ink);color:var(--cream);padding:clamp(6rem,12vw,12rem) clamp(1.5rem,10vw,12rem);position:relative}.closing h2{max-width:12ch;margin:0;font-size:clamp(3.4rem,7vw,7rem);font-weight:500;line-height:1.12}.closing-copy{color:#d9cdb7;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,7rem);max-width:70rem;margin:5rem 0 0 auto;font-size:1.06rem;line-height:2;display:grid}.final-quote{text-align:center;border-top:1px solid #625a4d;max-width:45rem;margin:7rem auto 0;padding-top:2rem;font-family:Kaiti SC,STKaiti,serif;font-size:1.4rem;line-height:1.8}footer{color:#a99e8b;letter-spacing:.08em;background:#13110f;justify-content:space-between;padding:1.5rem clamp(1.2rem,4vw,3rem);font-family:ui-monospace,monospace;font-size:.68rem;display:flex}footer a{text-decoration:none}@media (max-width:900px){.topbar span:last-child{display:none}.hero{background:linear-gradient(#0000,#fbf4e666 42%,#fbf4e6f5 100%),url(/room.png) 44%/cover}.hero-copy{width:100%}h1{font-size:clamp(5.3rem,23vw,8.5rem)}.chapter{background:var(--paper);grid-template-rows:43svh minmax(0,1fr);height:100svh;min-height:100svh;display:grid;overflow:hidden}.room-stage{z-index:4;width:100%;height:100%;position:relative;top:auto}.room-viewport{inset:.65rem .65rem 2.6rem}.caption{bottom:.72rem;left:1rem;right:1rem}.story-column{width:100%;height:100%;min-height:0;padding:0 1.25rem calc(3rem + env(safe-area-inset-bottom));z-index:2;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;background:var(--paper);border-top:1px solid var(--line);margin-left:0;scroll-padding-top:1rem;position:relative;overflow:hidden auto}.scene-card{min-height:100%;padding:3rem 0}.story-card{min-height:100%;padding:4rem 0}.rail{display:none}.closing-copy{grid-template-columns:1fr;margin-top:3rem}.closing h2{font-size:clamp(3rem,13vw,5rem)}footer{align-items:flex-start;gap:1rem}footer span{max-width:70%;line-height:1.55}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.room-image,.focus-dot{transition:none}}.room-image{transform-origin:0 0;will-change:transform;background:url(/room.png) 50%/100% 100% no-repeat;transition:transform 1s cubic-bezier(.2,.78,.2,1);inset:0 auto auto 0}.room-vignette{z-index:3;box-shadow:inset 0 0 120px #060e1161}.focus-dot{z-index:2;background:radial-gradient(circle,#ffefb12e,#0000 70%);border:2px solid #fff8d6f5;width:66px;height:66px;margin:-33px 0 0 -33px;transition:left .8s,top .8s;box-shadow:0 0 0 9999px #070f1247,0 0 35px 15px #ffe28242}.focus-dot:after{content:"";background:#fff2bd;border-radius:50%;width:7px;height:7px;margin:-3.5px;position:absolute;top:50%;left:50%;box-shadow:0 0 16px 5px #ffe89cbf}.caption{z-index:4}@media (prefers-reduced-motion:reduce){.room-image,.focus-dot{transition:none}}:root{--font-serif:"Source Han Serif SC Web","Source Han Serif SC","Noto Serif CJK SC","Songti SC","STSong","SimSun",serif;--font-kai:"Kaiti SC","STKaiti","KaiTi","FangSong",serif;--font-sans:"Source Han Sans SC Web","Source Han Sans SC","Noto Sans CJK SC","PingFang SC","Microsoft YaHei","Heiti SC",sans-serif}body{font-family:var(--font-serif);font-synthesis:none;line-break:strict;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-weight:400}.topbar,.eyebrow,.begin,.caption,.scene-no,.story-meta,footer{font-family:var(--font-sans)}h1{font-family:var(--font-serif);letter-spacing:-.06em;text-wrap:balance;font-weight:800;line-height:.82}blockquote,.final-quote{font-family:var(--font-kai)}.eyebrow{font-weight:600}.scene-card h2,.story-card h3,.closing h2{font-family:var(--font-serif);text-wrap:balance;line-break:strict;font-weight:800}.caption strong,.story-meta{font-family:var(--font-serif);font-weight:700}.story-card h3{letter-spacing:-.035em;max-width:10ch}.dek,.scene-card p:last-child,.note,.closing-copy p{text-wrap:pretty;line-break:strict;word-break:normal;orphans:2;widows:2}blockquote{line-break:strict;text-wrap:pretty;hanging-punctuation:first last}.author{font-family:var(--font-sans);flex-wrap:wrap;align-items:baseline;gap:.25rem .7rem;line-height:1.6;display:flex}.author time{white-space:nowrap;opacity:.72;letter-spacing:.04em;font-size:.78rem}.note,.closing-copy p{text-align:justify;text-justify:inter-ideograph}@media (max-width:900px){.story-card h3{max-width:12ch}.note,.closing-copy p{text-align:start}.topbar{letter-spacing:.08em}}
