/* Collection surfaces, coordinated with the nocturnal studio. */
dialog.device-aigc,dialog.device-architecture{height:92dvh;max-height:960px;width:min(1380px,95vw);aspect-ratio:auto;background:#111617;color:#e9e9e1}
dialog.device-aigc[open],dialog.device-architecture[open],dialog.device-photography[open],dialog.device-music[open]{display:flex;flex-direction:column}
dialog.device-aigc .dialog-head,dialog.device-architecture .dialog-head{position:relative;inset:auto;background:#171d1e;padding:18px 26px;border-bottom:1px solid #ffffff15;flex-shrink:0}
dialog.device-aigc #content,dialog.device-architecture #content{height:auto;flex:1;min-height:0;overflow:auto;padding:28px 34px 46px}
.collection-intro{padding:12px 0 24px;max-width:900px}.index{font-size:12px;letter-spacing:.16em;opacity:.6}.collection-intro h3{font-size:clamp(38px,5vw,68px);font-weight:500;line-height:1.04;letter-spacing:.01em;margin:15px 0}.collection-intro p{font-family:var(--font-zh);font-size:13px;line-height:1.9;opacity:.65;margin:0}
.filters,.tag-filters{display:flex;flex-wrap:wrap;gap:8px}.filters{border-top:1px solid #8884;padding:18px 0 10px}.filters button,.tag-filters button{color:inherit;background:none;border:1px solid transparent;padding:8px 13px;border-radius:2px;font-family:var(--font-zh);font-size:12px;line-height:1.5}.filters button[aria-pressed=true]{background:#e3e5d9;color:#19201c}.filters sup{font-family:var(--font-en);margin-left:6px}.tag-filters button{padding:5px 10px;opacity:.55;font-size:11px}.tag-filters button[aria-pressed=true]{border-color:#9dada57a;opacity:1}.catalog-count{font-size:11px;letter-spacing:.14em;opacity:.5;margin:22px 0 14px}
.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 22px}.work-tile{padding:0;border:0;background:none;color:inherit;text-align:left;min-width:0}.work-cover{aspect-ratio:4/3;background:#080b0c;position:relative;overflow:hidden;border:1px solid #ffffff12}.work-cover img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .5s ease,filter .4s}.work-tile:hover img{transform:scale(1.025);filter:brightness(1.08)}.cover-action{position:absolute;right:10px;bottom:10px;font-size:11px;letter-spacing:.1em;background:#101516d9;padding:8px 10px;color:#eee}.tile-meta{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.06em;opacity:.45;margin:14px 0 8px}.work-tile h4{font-size:23px;font-weight:500;line-height:1.25;margin:0;overflow-wrap:anywhere}.work-tile p{font-size:12px;opacity:.55;margin:8px 0}.architecture-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.architecture-grid .work-cover{aspect-ratio:16/10}.architecture-grid .work-cover img{object-fit:cover}
.work-detail{max-width:1080px;margin:0 auto}.back-list{font-size:12px;color:inherit;opacity:.7;padding:6px 0 24px;text-align:left}.work-heading{padding:12px 0 26px}.work-heading h3{font-size:clamp(28px,4vw,50px);line-height:1.2;margin:12px 0}.work-heading p{font-size:15px;opacity:.65;line-height:1.8}.work-heading small{font-size:12px;display:block}.work-detail .film-stage{height:auto;border-radius:2px;background:#080a0b}.work-detail .film-stage video{height:auto!important;max-height:65dvh;min-height:0;width:100%;display:block;object-fit:contain}.content-figure{margin:28px 0}.content-figure img{width:100%;height:auto;display:block}.content-figure figcaption{font-size:11px;letter-spacing:.12em;opacity:.45;margin-top:10px}.content-prose{font-size:22px;line-height:1.8}.content-prose small{display:block;font-size:14px}.image-zoom{display:block;padding:0;border:0;background:none;cursor:zoom-in;width:100%}.end-back{margin-top:28px}.action{border-radius:2px;border-color:#8886;font-size:13px;padding:10px 15px}.project-detail code{overflow-wrap:anywhere}
dialog.device-photography{width:min(1340px,95vw);height:92dvh;max-height:1000px;background:#dddcd3;color:#282d2b;overflow:hidden;border-radius:3px;box-shadow:3px 3px #aba99f,6px 6px #cfcdc3,0 30px 100px #0008}.device-photography .dialog-head{border-bottom:1px solid #4e554921;padding:18px 26px;flex-shrink:0}.device-photography #content{flex:1;min-height:0;height:auto;padding:25px 34px 40px}.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:46px 38px;padding:12px 10px}.volume{display:flex;flex-direction:column;align-items:flex-start;min-width:0;border:0;background:none;color:inherit;text-align:left;padding:0}.volume-object{display:block;position:relative;height:clamp(190px,24vw,310px);width:100%;perspective:1000px;margin-bottom:24px}.volume-object img{height:100%;max-width:90%;width:auto;object-fit:contain;display:block;margin:auto;box-shadow:4px 3px #a9a69b,7px 6px #f0eee5,9px 7px #99988e,12px 15px 25px #17231b40;transform:rotateY(-9deg) rotateZ(-2deg);transition:transform .55s,box-shadow .55s}.volume:hover img{transform:rotateY(-18deg) rotateZ(-3deg) translateY(-8px)}.volume-number{font-size:10px;letter-spacing:.13em;opacity:.55}.volume strong{font-size:27px;font-weight:500;line-height:1.12;margin:10px 0}.volume>small{font-size:13px;opacity:.6;line-height:1.4}
.reading-title{display:flex;justify-content:space-between;gap:20px;align-items:baseline}.reading-title h3{font-size:30px;line-height:1.15;margin:0 0 18px}.reading-title p{font-size:13px;opacity:.6}.pdf-toolbar{flex-wrap:wrap}.reading-desk{display:flex;align-items:center;justify-content:center;min-height:36vh;padding:20px 10px 30px;perspective:1800px}.paper-stack{position:relative;width:max-content;max-width:100%;box-shadow:1px 2px #aaa99e,2px 4px #eeece3,3px 6px #9f9f94,5px 8px #eeece3,10px 18px 32px #15211935;transform-style:preserve-3d}.paper-surface{display:block;padding:0;border:0;background:#eeeae0;cursor:zoom-in}.paper-surface img{display:block;width:auto;max-width:100%;height:auto;max-height:62vh;object-fit:contain}.paper-gutter{pointer-events:none;position:absolute;inset:0 auto 0 49%;width:2%;background:linear-gradient(90deg,transparent,#171f1b17,transparent)}.single-page .paper-gutter{display:none}.turning-leaf{position:absolute;display:none;top:0;bottom:0;width:50%;background-size:200% 100%;backface-visibility:hidden;pointer-events:none;box-shadow:inset 8px 0 16px #0002}.turn-forward{display:block;right:0;transform-origin:left center;background-position:right;animation:leaf-forward .65s cubic-bezier(.3,.1,.2,1) both}.turn-back{display:block;left:0;transform-origin:right center;background-position:left;animation:leaf-back .65s cubic-bezier(.3,.1,.2,1) both}@keyframes leaf-forward{0%{transform:rotateY(0);filter:brightness(1)}75%{opacity:1;filter:brightness(.7)}100%{transform:rotateY(-175deg);opacity:0}}@keyframes leaf-back{0%{transform:rotateY(0)}75%{opacity:1}100%{transform:rotateY(175deg);opacity:0}}.page-rail{display:flex;flex-wrap:wrap;gap:5px;justify-content:center;padding-top:15px}.page-rail button{background:none;border:1px solid #565f4e30;padding:6px 9px;color:inherit;min-width:30px}.page-rail [aria-current=page]{background:#354239;color:#fff}.book-links{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
dialog.image-lightbox{position:fixed;inset:0;width:98vw;height:96dvh;max-width:none;max-height:none;background:#141918;color:#fff;border:1px solid #ffffff30;border-radius:3px;z-index:100;overflow:auto}.image-lightbox>div{padding:65px 25px 30px;min-height:100%;display:flex;align-items:flex-start;justify-content:center}.image-lightbox img{width:100%;max-width:2400px;height:auto;object-fit:contain}.zoom-close{position:sticky;float:right;top:12px;margin:12px;z-index:2;padding:12px 20px;background:#eef0e8;color:#141a16;border:0;border-radius:2px}
dialog.device-music{width:min(1080px,94vw);height:90dvh;max-height:950px;background:#1c2422;border:1px solid #6d7a6e;color:#e6e9df}.device-music .dialog-head{flex-shrink:0;border-bottom:1px solid #ffffff15;padding:20px 28px}.device-music #content{height:auto;min-height:0;flex:1;max-height:none;padding:22px 30px 40px;overflow:auto}.listening-console{display:grid;grid-template-columns:150px 1fr;gap:28px;align-items:center;padding:20px 0 30px}.listening-console>img{width:150px;height:150px;object-fit:cover;box-shadow:5px 6px 0 #111916,12px 14px 25px #0005}.listening-console h4{font-size:36px;font-weight:500;margin:8px 0}.listening-console p{font-size:14px;opacity:.65;margin:0 0 18px}.transport{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.transport button{border:1px solid #ffffff40;background:none;color:inherit;padding:9px 14px}.transport label{font-size:11px;display:flex;gap:8px;align-items:center;margin-left:8px}.transport input{width:90px;accent-color:#c7d6bb}.record-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 20px;padding:20px 0}.record-tile{min-width:0;background:none;color:inherit;border:1px solid transparent;padding:6px;text-align:left;position:relative}.record-tile img{display:block;width:100%;aspect-ratio:1;object-fit:cover;box-shadow:3px 4px 10px #0004}.record-tile strong{display:block;font-size:21px;font-weight:500;line-height:1.2;margin:12px 0 6px}.record-tile small{font-size:11px;opacity:.6}.record-tile[aria-pressed=true]{border-color:#a6b99c;background:#dcebc10b}.record-state{position:absolute;top:12px;left:12px;background:#18231bd9;font-size:9px;letter-spacing:.08em}.record-state:not(:empty){padding:5px}.sound-toggle{position:fixed;bottom:33px;right:24px;z-index:6;padding:10px 14px;background:#18211cdb;color:#e4e8dc;border:1px solid #b7c8b859;backdrop-filter:blur(14px);font-size:12px;letter-spacing:.1em;border-radius:3px}.viewing .sound-toggle{display:none}
dialog.device-socials{width:min(520px,92vw);height:auto;min-height:300px;background:#1c2422;color:#e6e9df}.device-socials #content{height:auto;padding-bottom:35px}.device-socials h3{font-size:36px}button:focus-visible,a:focus-visible{outline:2px solid #9aaf92;outline-offset:4px}button:disabled{opacity:.25;cursor:default}.project-visual img{width:100%;height:100%;object-fit:cover}
@media(max-width:700px){dialog.device-aigc,dialog.device-architecture,dialog.device-photography,dialog.device-music{width:96vw;height:92dvh;max-height:92dvh;margin:auto}.device-aigc #content,.device-architecture #content,.device-photography #content,.device-music #content{padding:20px 16px 32px!important;height:auto!important}.collection-intro h3{font-size:39px}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}.architecture-grid{grid-template-columns:1fr}.work-tile h4{font-size:18px}.tile-meta{font-size:9px}.cover-action{font-size:9px;right:5px;bottom:5px;padding:5px}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px;padding:5px}.volume-object{height:190px}.volume strong{font-size:23px}.volume>small{font-size:11px}.reading-title{display:block}.reading-title p{margin-top:0}.reading-title h3{font-size:27px;margin-bottom:8px}.pdf-toolbar .action{font-size:11px;padding:8px}.reading-desk{padding:12px 0 24px;min-height:30vh}.paper-surface img{max-height:55vh}.listening-console{grid-template-columns:90px 1fr;gap:18px}.listening-console>img{width:90px;height:90px}.listening-console h4{font-size:28px}.transport{gap:6px}.transport label{margin-left:0}.record-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.sound-toggle{bottom:100px;right:15px}.image-lightbox>div{padding:65px 10px 25px;justify-content:flex-start}.image-lightbox img{min-width:850px}}
@media(prefers-reduced-motion:reduce){.turning-leaf{display:none}.volume-object img,.work-cover img{transition:none}}
