:root{color-scheme:light;--paper:#f4f2ec;--ink:#242722;--line:#cecec4;--accent:#b83c21}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"PingFang TC","Noto Sans TC",sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}header,footer{display:flex;align-items:center;justify-content:space-between;padding:30px 5%;gap:25px;border-bottom:1px solid var(--line)}.brand{font-size:30px;font-weight:800;letter-spacing:-1.5px;white-space:nowrap}.brand span,h1 span{color:var(--accent)}.brand small{font-size:12px;letter-spacing:2px;font-weight:500;margin-left:10px}nav{display:flex;gap:30px;font-size:14px}.edition,.eyebrow,.section-heading span,.art-no,footer>span{font-size:12px;letter-spacing:2px}.intro{padding:75px 8% 65px;max-width:1600px;margin:auto}.eyebrow{margin:0 0 28px}.intro h1{font-family:"Songti TC","Noto Serif TC",serif;font-size:clamp(54px,6.8vw,102px);font-weight:500;letter-spacing:.07em;line-height:1.28;margin:0}.intro-bottom{display:flex;align-items:end;justify-content:space-between;margin-top:36px;gap:25px}.intro-bottom p{font-size:16px;line-height:1.9;color:#5b6057;margin:0}.intro-bottom>a{font-size:16px;border-bottom:1px solid var(--ink);padding-bottom:10px}.intro-bottom>a span{margin-left:50px;font-size:24px}.intro-count{font-size:12px;line-height:1.8;letter-spacing:1px;text-align:right}#collection{padding:0 5% 75px;max-width:1700px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:25px 0 35px;gap:20px}.section-heading h2{font-size:16px;font-weight:500;margin:0}.works{display:grid;grid-template-columns:1fr 1fr;column-gap:5%;row-gap:65px}.art{display:flex;position:relative;min-height:360px;aspect-ratio:1.23;align-items:center;justify-content:center;overflow:hidden;border:1px solid #00000009}.art-us{background:#e4ddd4}.art-ev{background:#d9e2df}.art-mj{background:#dedfce}.art-meh{background:#e1dce8}.art img{width:43%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:22%;box-shadow:0 25px 40px -22px #2229;transition:transform .7s}.art:hover img{transform:translateY(-8px) scale(1.035)}.art-no{position:absolute;top:23px;left:25px;font-size:12px;letter-spacing:1.5px}.view{position:absolute;bottom:23px;right:25px;font-size:14px}.caption{display:flex;gap:20px;padding:25px 0 17px}.caption>span:first-child{font-family:Georgia,serif;font-size:16px;padding-top:4px;color:#686d62}.caption h3{font-size:25px;font-weight:500;margin:0 0 10px;font-family:"Songti TC",Georgia,serif}.caption p{font-size:14px;line-height:1.7;margin:0;color:#5b6057}.medium{font-size:12px;line-height:1.8;margin-left:auto;flex-shrink:0;text-align:right;color:#60665c}details{border-top:1px solid var(--line);padding:15px 0;font-size:16px;line-height:1.9}summary{font-size:14px;cursor:pointer}.note{font-size:14px;line-height:1.9;color:#61665c}.experimental{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 5%}.experimental .art{grid-row:1/3;aspect-ratio:1.65;min-height:310px}.experimental .caption{align-self:end}.experimental details{align-self:start}.art-ar{background:#272e2d;color:#f2f2dc}.type-art{font:160px/1 Georgia,serif;display:flex;gap:35px;align-items:center}.type-art span{font:14px/1.9 sans-serif;letter-spacing:3px}.colophon{background:#e8e8de;padding:65px 8%;display:grid;grid-template-columns:1fr 1fr;gap:20px 6%}.colophon .eyebrow{grid-column:1/-1;margin:0}.colophon h2{font-family:"Songti TC",serif;font-size:36px;font-weight:500;line-height:1.6;margin:0}.colophon>p:not(.eyebrow){font-size:16px;line-height:2}.colophon .note{grid-column:2;font-size:14px!important;margin:0}footer{border-top:1px solid var(--line);border-bottom:0}footer>a:last-child{font-size:14px}.skip{position:fixed;top:-100px;left:10px;background:white;padding:15px;z-index:10}.skip:focus{top:10px}@media(max-width:720px){header,footer{padding:22px 6%;flex-wrap:wrap}.edition{display:none}.brand{font-size:26px}.brand small{font-size:12px;letter-spacing:1px}nav{gap:20px}.intro{padding:50px 7%}.intro-bottom{flex-wrap:wrap}.intro-count{display:none}.intro-bottom>a span{margin-left:20px}#collection{padding:0 6% 45px}.section-heading span{font-size:12px;letter-spacing:0}.works{grid-template-columns:1fr;row-gap:30px}.art{min-height:290px}.experimental{display:block}.experimental .art{min-height:290px}.caption{gap:14px}.caption h3{font-size:24px}.medium{font-size:12px}.colophon{display:block;padding:45px 7%}.colophon h2{font-size:32px;margin-top:20px}footer>span{display:none}.type-art{font-size:130px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.art img{transition:none}}
.immersive{height:calc(100svh - 100px);min-height:530px;position:relative;background:#d9d8d0;color:#292d28}#room{position:absolute;inset:0;touch-action:none}#room canvas{display:block;width:100%;height:100%}.room-title{position:absolute;left:5%;top:25px;pointer-events:none}.room-title p{font-size:12px;letter-spacing:2px}.room-title h1{font:500 clamp(24px,3vw,42px)/1.5 "Songti TC",serif;margin:8px 0}.room-toolbar{position:absolute;bottom:60px;left:50%;transform:translateX(-50%);display:flex;gap:6px;align-items:center;background:#f8f7f0ed;padding:8px;border:1px solid #cdcec1;box-shadow:0 8px 30px #0001;max-width:94%;white-space:nowrap}.room-toolbar button,.room-toolbar a,.walk-controls button{font:14px/1.5 inherit;font-family:inherit;font-size:14px;border:0;padding:12px 15px;background:transparent;color:#292d28;cursor:pointer}.room-toolbar button:hover,.room-toolbar a:hover{background:#dedfd3}.room-toolbar button:focus-visible,.walk-controls button:focus-visible{outline:3px solid #b83c21}.room-hint{position:absolute;bottom:15px;left:0;right:0;text-align:center;font-size:12px;pointer-events:none}.walk-controls{position:absolute;right:25px;bottom:130px;display:grid;grid-template-columns:repeat(3,44px);gap:3px}.walk-controls button{background:#faf9f0d9;padding:12px;touch-action:none}.walk-controls button:first-child{grid-column:2}.walk-controls button:nth-child(2){grid-column:1}#room-status{position:absolute;left:5%;top:125px;font-size:14px;background:#f4f2ecde;padding:8px}.immersive+.intro{padding-top:50px}.immersive+.intro h1{font-size:clamp(40px,4vw,64px)}@media(max-width:720px){.immersive{height:calc(100svh - 86px);min-height:560px}.room-toolbar{flex-wrap:wrap;justify-content:center;width:max-content;bottom:65px}.room-toolbar button,.room-toolbar a{padding:8px 10px}.room-toolbar #inspect-work{min-width:170px}.room-hint{font-size:12px;padding:0 20px}.walk-controls{right:15px;bottom:185px}.room-title{top:20px}.room-title h1{font-size:28px}} 
#work-panel{position:fixed;inset:0 0 0 auto;margin:0;height:100svh;max-height:100svh;width:min(440px,94vw);max-width:94vw;padding:30px;background:#f4f2ec;border:0;border-left:1px solid #aaa;box-shadow:-15px 0 60px #0002;color:#242722}#work-panel::backdrop{background:#14221c40}#close-panel{display:block;margin:0 0 40px auto;border:1px solid #999;background:transparent;padding:12px 15px;font:14px inherit;cursor:pointer}#panel-title{font:34px/1.4 "Songti TC",Georgia,serif}#panel-content{font-size:16px;line-height:1.9}#panel-content img{width:150px;height:150px;object-fit:contain;border-radius:30px;margin:10px 0 25px}.room-map{position:absolute;right:25px;top:25px;width:105px;height:150px;background:#f7f5eed9;border:1px solid #c3c6ba}.room-map>span{position:absolute;left:10px;top:10px;font-size:12px}.room-map button{position:absolute;transform:translate(-50%,-50%);font-size:12px;padding:4px;background:#f4f2ec;border:1px solid #90988c;cursor:pointer}.room-map button:hover{background:#283b32;color:#fff}.room-map button:focus-visible{outline:3px solid #b83c21}@media(max-width:720px){.room-map{width:78px;height:130px;right:15px;top:115px}.room-map>span{font-size:12px;left:3px}.room-toolbar{width:94%;bottom:55px}.room-toolbar button,.room-toolbar a{padding:6px 8px}#work-panel{padding:24px}}
.entrance{min-height:100svh;display:flex;flex-direction:column}.entrance>main{flex:1;display:flex}.entrance .immersive{flex:1;height:auto;min-height:530px}.entrance header{flex-shrink:0}.entrance .room-toolbar{bottom:55px}@media(max-width:720px){.entrance .immersive{min-height:560px}}
html,body{max-width:100%;overflow-x:clip}.entrance header{flex-wrap:wrap;min-width:0}.entrance>main,.entrance .immersive,#room{min-width:0;max-width:100%}.entrance .immersive{width:100%;overflow:hidden}.room-toolbar{white-space:normal;justify-content:center;flex-wrap:wrap;width:max-content;max-width:calc(100% - 24px)}.room-toolbar>*{min-width:0}.room-toolbar #inspect-work{min-width:0}.room-map{top:auto;bottom:145px;right:20px;width:138px;height:178px;border:1px solid #b7c0b3;border-radius:12px;background:#f8f8f0ed;box-shadow:0 5px 22px #0001}.room-map:before{content:'';position:absolute;inset:35px 16px 22px;border:1px solid #a9b1a3;border-bottom-style:dashed}.room-map>span:first-child{left:12px;top:10px;font-size:12px;letter-spacing:1px}.room-map button{border-radius:50%;width:28px;height:28px;padding:0;border:1px solid #a5afa0;background:#fffef7;z-index:1}.room-map .map-position{position:absolute;width:9px;height:9px;background:#b83c21;border:2px solid #fff;border-radius:50%;z-index:2}.map-position:after{content:'';position:absolute;left:-3px;top:-9px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:6px solid #b83c21}.room-map .map-entry{position:absolute;bottom:5px;left:0;width:100%;text-align:center;font-size:12px;color:#63705e}.entrance .room-title{max-width:85%}@media(max-width:720px){.entrance header{gap:12px;padding:18px 5%}.entrance nav{gap:16px}.room-map{top:auto;bottom:150px;right:12px;width:112px;height:152px}.room-map button{width:26px;height:26px}.room-toolbar{bottom:48px!important;gap:2px}.room-toolbar button,.room-toolbar a{padding:8px;font-size:13px}.room-hint{bottom:8px;margin:0;padding:0 12px}.room-map>span:first-child{left:8px;letter-spacing:0}}
/* Let collection tracks and their contents shrink to the available viewport. */
.works{grid-template-columns:repeat(2,minmax(0,1fr))}.work,.caption,.caption>div,details{min-width:0}.art{width:100%;min-width:0}.caption h3,.caption p,details p{overflow-wrap:anywhere}.experimental{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:720px){.works{grid-template-columns:minmax(0,1fr)}.art,.experimental .art{min-height:0;aspect-ratio:1.23}.caption{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px 12px}.caption .medium{grid-column:2;text-align:left;margin-left:0}.type-art{font-size:clamp(75px,24vw,130px);gap:20px}.type-art span{font-size:12px;letter-spacing:1px}.section-heading{flex-wrap:wrap;gap:10px}header{flex-wrap:wrap;gap:16px}nav{flex-wrap:wrap;gap:18px}.art-no{left:18px;right:18px;letter-spacing:1px}.view{right:18px}}
.site-header,.entrance .site-header{width:100%;min-width:0;padding:30px 5%;gap:25px;flex-wrap:wrap;flex-shrink:0}.site-header nav a[aria-current="page"]{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}.site-header nav{gap:24px}@media(max-width:720px){.site-header,.entrance .site-header{display:grid;grid-template-columns:minmax(0,1fr);padding:18px 5% 16px;gap:16px;align-items:center}.site-header .brand{font-size:26px;line-height:32px}.site-header .brand small{font-size:12px;letter-spacing:1px}.site-header nav,.entrance .site-header nav{display:flex;gap:24px;flex-wrap:nowrap;font-size:14px;line-height:22px}.site-header .edition{display:none}}
.work-video{display:block;width:100%;max-width:280px;max-height:55svh;margin:0 auto 20px;aspect-ratio:1206/2622;object-fit:contain;background:#111;border-radius:18px}#panel-content h3{font-size:20px;line-height:1.5;margin:18px 0 8px}#panel-content .work-video~img{width:64px;height:64px;border-radius:14px;margin:20px 0 0}.video-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;padding:20px 0}.video-feature h4{font-size:18px;line-height:1.6;margin:0}.video-feature p{font-size:14px;line-height:1.8}@media(max-width:480px){.video-feature{grid-template-columns:minmax(0,1fr)}.work-video{max-height:60svh}}
#panel-content .work-video{width:min(100%,260px);max-height:none;height:auto}.video-feature .work-video{max-height:none;height:auto}
/* Collection books */
@media(min-width:721px){.entrance .room-toolbar{left:24px;bottom:24px;transform:none;max-width:calc(100% - 205px)}.room-map{bottom:24px}}
.album-collection .works{grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 5%}.album-collection .work.experimental{display:block;grid-column:auto}.album-collection .art,.album-collection .experimental .art{aspect-ratio:3/4;min-height:0;border-radius:2px 9px 9px 2px;border-left:9px solid #0002;box-shadow:5px 5px 0 #e5e2d7,9px 9px 0 #d2cfc5,12px 16px 22px #29272216}.album-collection .art:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#0001,transparent 7%,transparent 96%,#fff3)}.album-collection .art img{width:48%}.album-collection .caption{display:block;padding-top:28px}.album-collection .caption>span:first-child{display:none}.album-collection .medium{display:block;text-align:left;margin-top:12px}.album-open{font:14px inherit;border:0;border-bottom:1px solid #92978d;padding:8px 0;background:none;cursor:pointer}.album-collection .type-art{font-size:80px;gap:12px}.album-collection .type-art span{font-size:11px}.reading-album{overflow:hidden}.album-reader{width:min(1120px,96vw);max-width:96vw;height:min(830px,94svh);max-height:94svh;padding:0;border:0;background:#292c28;color:#f4f2ec;box-shadow:0 20px 90px #0008;overflow:hidden}.album-reader::backdrop{background:#151713dc;backdrop-filter:blur(5px)}.album-top,.album-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;height:64px;font-size:12px;letter-spacing:1px}.album-reader button{background:transparent;color:inherit;border:1px solid #73776f;padding:9px 14px;cursor:pointer;font:inherit}.album-reader button:disabled{opacity:.3;cursor:default}.album-reader button:focus-visible{outline:2px solid #f5b48d;outline-offset:3px}.album-spread{height:calc(100% - 128px);margin:0 22px;overflow:auto;background:#f4f2ec;color:#242722}.book-page{min-height:100%;animation:book-reveal .3s ease-out}.overview-page{display:grid;grid-template-columns:1fr 1fr}.overview-page .art{aspect-ratio:auto;min-height:100%;border:0;pointer-events:none}.overview-page .art img{width:50%}.book-copy{padding:clamp(24px,4vw,54px);box-shadow:inset 14px 0 25px -22px #3338}.book-copy h2,.demo-page h2{font:500 clamp(26px,3vw,42px)/1.4 'Songti TC',serif;margin:0 0 20px}.book-copy p,.demo-page p{font-size:15px;line-height:1.95}.book-tagline{border-bottom:1px solid #cccbbf;padding-bottom:26px;margin-bottom:28px}.demo-page .video-feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:0;margin:0;min-height:100%}.demo-page .work-video{display:block;width:auto;max-width:88%;height:auto;max-height:560px;margin:20px auto;border-radius:18px;background:#101410}.demo-page .video-feature>div{padding:36px}.album-count{font-variant-numeric:tabular-nums}.album-collection details[hidden]{display:none}@keyframes book-reveal{from{opacity:.4;transform:translateX(12px)}to{opacity:1;transform:none}}@media(max-width:900px){.album-collection .works{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.album-collection .works{gap:34px 22px}.album-collection .art-no{font-size:9px;left:10px;right:6px;top:15px;letter-spacing:0}.album-collection .view{font-size:11px;right:10px;bottom:15px}.album-collection .caption h3{font-size:21px}.album-collection .caption p{font-size:13px}.album-collection .type-art{font-size:54px}.album-collection .type-art span{display:none}.album-reader{width:100vw;max-width:100vw;height:100svh;max-height:100svh;margin:0}.album-top,.album-controls{padding:12px 16px}.album-spread{margin:0 12px}.overview-page{display:block}.overview-page .art{min-height:230px;height:35svh}.overview-page .art img{width:115px}.book-copy{padding:28px;box-shadow:none}.demo-page .video-feature{display:flex;flex-direction:column}.demo-page .work-video{max-height:50svh;max-width:85%;margin:24px auto 0}.demo-page .video-feature>div{padding:24px}.album-collection .intro{padding-top:36px;padding-bottom:40px}.album-collection .intro h1{font-size:48px}}@media(prefers-reduced-motion:reduce){.book-page{animation:none}}
