@charset "UTF-8";
:root{--paper:#f0eee8;--ink:#24242b;--serif:"Noto Serif SC","Source Han Serif SC","Songti SC","SimSun",serif;--sans:"Inter","Segoe UI","Microsoft YaHei",sans-serif;--header:78px}
*{box-sizing:border-box}html,body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button[hidden],[hidden]{display:none!important}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid #7476b7;outline-offset:5px}::selection{background:#c8c5e0;color:#202025}
.space-header{height:var(--header);padding:0 6.4vw;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:20;border-bottom:1px solid #24242b13;transition:color .3s,border-color .3s,background .3s}.brand{display:flex;align-items:center;font-weight:670;font-size:24px;letter-spacing:-1.15px}.brand svg{width:28px;height:36px;margin-right:9px;stroke:currentColor;fill:none;stroke-width:1.8}.header-links{display:flex;align-items:center;gap:28px;font-size:11px}.space-header button{border:0;background:none;padding:10px 0;font-size:11px}.space-header a:hover,.space-header button:hover{opacity:.65}
.intro{padding:60px 6.4vw 80px}.intro h1{font:400 clamp(55px,6.5vw,100px)/1.26 var(--serif);letter-spacing:-.065em;margin:0}.intro h1 span{display:inline-block;padding-left:28px}.intro p{font-size:12px;color:#817c80;margin:30px 0;line-height:1.9;letter-spacing:.04em}.direct-link{display:inline-flex;justify-content:space-between;align-items:center;gap:52px;border-bottom:1px solid #aaa2a2;padding:13px 0;font-size:11px}.direct-link b{font-size:21px;font-weight:400}
.portal-collar,.slit-handle,.gallery-dock,.space-label,.architecture{display:none}
.reader-scroll{background:var(--paper);padding:55px 7vw;color:var(--ink)}.panel-heading,.reader-body,.panel-end{max-width:760px;margin:0 auto}.panel-status{display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#8b8286;letter-spacing:.035em;padding-bottom:22px;border-bottom:1px solid #24242b20}.panel-heading h2{font:400 clamp(32px,4.1vw,59px)/1.45 var(--serif);letter-spacing:-.04em;margin:27px 0 22px;text-wrap:balance}.panel-note{font-size:10px;color:#968c92;line-height:1.9;margin-bottom:48px}.reader-body{font:400 17px/2.1 var(--serif);color:#49434a;overflow-wrap:anywhere}.reader-body p{margin:0 0 1.6em}.reader-body a{text-decoration:underline;text-underline-offset:4px;color:#68649c}.reader-body blockquote{border-left:1px solid #96858c;margin:30px 0;padding-left:25px}.panel-end{margin-top:60px;padding:24px 0;border-top:1px solid #24242b2b;display:flex;justify-content:space-between;gap:20px;font-size:11px}.frame-hit{display:none}.plane-index{font:11px/1 monospace;letter-spacing:.06em;position:absolute;left:0;top:-35px;color:#e5ddd3}.prototype-note{padding:22px 6.4vw;font-size:10px;color:#93858d}

html.has-space,html.has-space body{height:100%;overflow:hidden}
.has-space .space-header{position:fixed;inset:0 0 auto;height:var(--header)}
.has-space .space-stage{position:fixed;top:var(--header);left:0;right:0;bottom:0;isolation:isolate;overflow:clip}
.has-space .intro{position:absolute;inset:0;z-index:5;padding:0 6.4vw;display:flex;flex-direction:column;justify-content:center;pointer-events:none;will-change:transform,opacity}
.has-space .intro h1,.has-space .intro p{pointer-events:none}.has-space .intro .direct-link{position:absolute;left:6.4vw;bottom:44px;pointer-events:auto}
.has-space .portal-view{position:absolute;inset:0;background:#17171c;z-index:3;clip-path:inset(18% 22% 18% 70% round 45px);overflow:clip;pointer-events:none;will-change:clip-path}
.has-space.inside .portal-view{pointer-events:auto}
.has-space .world{position:absolute;inset:0;perspective:1200px;perspective-origin:50% 50%;overflow:visible;pointer-events:none}
.has-space .space{position:absolute;inset:0;transform-style:preserve-3d;will-change:transform;pointer-events:none}
.has-space .article-plane{position:absolute;inset:0;transform-style:preserve-3d;backface-visibility:hidden;will-change:transform;filter:none;pointer-events:auto}
.has-space .article-plane:before{content:"";position:absolute;inset:-9px;background:linear-gradient(135deg,#c2bdb2,#3d3a3d 26%,#a29b90 65%,#28282d);box-shadow:0 8px 30px #0005;transform:translateZ(-3px)}
.has-space .reader-scroll{position:absolute;inset:0;overflow:hidden;padding:55px 7vw;box-shadow:0 0 0 1px #f4f1e7;user-select:none}
.has-space .frame-hit{display:block;position:absolute;inset:0;border:0;background:transparent;z-index:4;cursor:zoom-in;touch-action:pan-y}
.has-space .frame-hit:focus-visible{outline:4px solid #a6a0e0;outline-offset:9px}.has-space .frame-hit:hover{box-shadow:inset 0 0 0 3px #aea5d4aa}
.has-space .article-plane.active-reader .reader-scroll{overflow:auto;overscroll-behavior:contain;user-select:text;scrollbar-width:thin;scrollbar-color:#b1a7ac transparent}
.has-space .article-plane.active-reader:before{opacity:0}.has-space .article-plane.active-reader .frame-hit{display:none}.has-space .article-plane.active-reader .plane-index{opacity:0}
.has-space .architecture{display:block;position:absolute;inset:0;transform-style:preserve-3d;pointer-events:none}
.room-back{position:absolute;width:550%;height:500%;left:-225%;top:-200%;transform:translateZ(-2900px);background:radial-gradient(ellipse at 38% 30%,#635c57 0,#343133 26%,#1c1c22 62%)}
.room-floor{position:absolute;width:6000px;height:5600px;left:calc(50% - 3000px);top:calc(50% + 390px);transform-origin:50% 0;transform:rotateX(90deg) translateY(-3000px);background:radial-gradient(ellipse at 48% 46%,#746b6180 0,#373538 35%,#1a1a20 70%);border-top:2px solid #8c7e6e55}
.room-light{position:absolute;width:1800px;height:3600px;left:calc(50% - 900px);top:calc(50% + 386px);transform-origin:50% 0;transform:rotateX(90deg) translateY(-2600px) rotateZ(-18deg);background:linear-gradient(90deg,transparent,#ece1c226 44%,#ece1c246 48%,#ece1c215 54%,transparent 65%)}
.structural-frame{position:absolute;width:225%;height:185%;left:-62.5%;top:-42.5%;border:22px solid #595452;box-shadow:inset 0 0 0 2px #a89b8555,0 0 0 2px #08080a;transform:translateZ(-1450px)}
.structural-frame:nth-of-type(5){transform:translateZ(-2050px);border-color:#655e57}.structural-frame:nth-of-type(6){transform:translateZ(-2650px);border-color:#514b49}
.has-space .portal-collar{display:block;position:absolute;z-index:6;pointer-events:none;border:2px solid #7c7775;background:none;box-shadow:inset 3px 0 2px #fff9,inset -5px 0 3px #2227,0 0 0 2px #cbc4b7,0 0 0 5px #9d9794,0 0 0 6px #f7f3e8,5px 10px 27px #251e2438;will-change:left,top,width,height}
.has-space .slit-handle{display:flex;position:absolute;z-index:8;align-items:center;justify-content:center;border:0;border-radius:45px;background:transparent;cursor:ew-resize;touch-action:pan-y;color:#eee8df;padding:0}
.has-space .portal-collar{display:none!important}.edge-frame{display:none}.has-space .edge-frame{display:block;position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:6;overflow:visible}.space-masks{position:absolute;pointer-events:none}.has-space .slit-handle:before,.has-space .slit-handle:after{display:none}
.slit-handle:before,.slit-handle:after{content:"";position:absolute;width:2px;height:27px;top:calc(50% - 13px);background:#ddd1bcaa;box-shadow:1px 0 1px #000a}.slit-handle:before{left:9px}.slit-handle:after{right:9px}.slit-handle span{position:absolute;bottom:-39px;font-size:10px;color:#7f747a;letter-spacing:.12em;white-space:nowrap}.slit-handle.dragging{cursor:grabbing}
.has-space .gallery-dock{display:flex;position:absolute;left:6.4vw;right:6.4vw;bottom:29px;z-index:10;align-items:end;justify-content:space-between;gap:30px;color:#ded5c9;opacity:0;pointer-events:none}
.gallery-dock nav{display:flex;gap:23px}.gallery-dock nav button{background:none;border:0;border-bottom:1px solid transparent;color:#8b8485;padding:10px 0;font-size:11px;line-height:1.7}.gallery-dock nav button[aria-current]{color:#eee6d7;border-bottom-color:#a99d88}.gallery-dock nav button b{font:10px/1 monospace;margin-right:14px}.gallery-dock .read-enter{border:0;border-bottom:1px solid #b8aa8c88;background:none;color:#e8dfd1;padding:10px 0;font-size:12px;min-width:145px;text-align:left;display:flex;justify-content:space-between;gap:25px}.gallery-dock .read-enter span{font-size:21px}
.has-space .space-label{display:block;position:absolute;left:6.4vw;top:29px;z-index:5;font:9px/1.6 monospace;letter-spacing:.12em;color:#a29a94;opacity:0;pointer-events:none}.has-space .prototype-note{position:fixed;bottom:13px;left:6.4vw;padding:0;z-index:6;font-size:8px;letter-spacing:.025em;color:#978c90;pointer-events:none}
.has-space.inside .space-header{background:#17171c;color:#e4ded4;border-color:#f6ebd217}.has-space.reading .space-header{background:var(--paper);color:var(--ink);border-color:#24242b13}
.panel-end button{background:none;border:0;padding:0;font-size:11px}
.has-space.reading .prototype-note{display:none}.has-space.reading .space-stage{overflow:clip}.has-space.reading .world{perspective:1200px}
.has-space.reduced .architecture{display:none}
.plane-index,.panel-end button{display:none}.has-space .plane-index,.has-space .panel-end button{display:block}
@media(max-width:899px){:root{--header:72px}.space-header{padding:0 6vw}.brand{font-size:21px}.brand svg{width:24px;height:31px}.header-links{gap:20px;font-size:10px}.space-header button{font-size:10px}.intro h1{font-size:58px}.intro h1 span{padding-left:18px}.intro p{font-size:10px;max-width:270px}.has-space .intro{padding:0 6vw}.has-space .intro .direct-link{left:6vw}.reader-scroll,.has-space .reader-scroll{padding:42px 7vw}.panel-heading h2{font-size:43px}.panel-note{font-size:9px}.reader-body{font-size:16px}.gallery-dock nav{gap:20px}.gallery-dock nav button{font-size:10px}.gallery-dock nav button b{margin-right:8px}.gallery-dock .read-enter{font-size:11px;min-width:120px}.has-space .gallery-dock{left:6vw;right:6vw;gap:20px}}
@media(max-width:639px){.space-header{padding:0 23px}.brand{font-size:20px}.header-links{gap:16px}.header-links .whole-site{display:none}.has-space .intro{justify-content:start;padding:40px 23px 0}.intro h1{font-size:55px;line-height:1.26}.intro p{margin-top:20px;font-size:10px;line-height:1.8}.has-space .intro .direct-link{left:23px;bottom:30px;gap:35px;font-size:10px}.has-space .prototype-note{left:23px;bottom:8px;font-size:7px}.has-space .gallery-dock{left:23px;right:23px;bottom:24px;display:block}.gallery-dock nav{justify-content:space-between;gap:16px}.gallery-dock nav button{font-size:10px}.gallery-dock .read-enter{margin-top:13px;min-width:100%;font-size:11px}.reader-scroll,.has-space .reader-scroll{padding:34px 23px 40px}.panel-heading h2{font-size:34px;line-height:1.5;margin-top:22px}.panel-note{font-size:9px;margin-bottom:34px}.reader-body{font-size:16px;line-height:2}.panel-status{font-size:9px;gap:10px}.panel-end{font-size:10px}.has-space .space-label{left:23px;top:20px}.plane-index{font-size:10px}.room-floor,.room-light{top:calc(50% + 500px)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.space-header{transition:none}}
