/* The image archive is organized by content; each sheet preserves its project credit. */
:root{--archive-frame:url('./assets/neon/archive-mat-frame.png')}
.asset-library{position:relative;overflow:clip;scroll-margin-top:80px}
.library-anchor{position:absolute;top:0}
.library-heading{align-items:flex-end;gap:30px;margin-bottom:32px}
.library-heading .library-description{font:400 19px/1.8 BodyCN,sans-serif;color:#bacfd0;margin:16px 0 0;letter-spacing:0}
.library-edition{display:flex;align-items:center;gap:18px;flex:none;padding:15px 0 15px 25px;border-left:1px solid #5f7d82}
.library-edition strong{font:400 68px/1 FilmTitle,BodyCN,sans-serif;color:#e9bad4}
.library-edition>span{font:400 16px/1.7 MetaCN,BodyCN,sans-serif;color:#c9dbd7}
.archive-controls{margin-bottom:34px}
.archive-control-label{font:400 16px/1.5 MetaCN,BodyCN,sans-serif;color:#a9c8c9;margin:0 0 13px}
.library-filters{display:flex;flex-wrap:wrap;gap:10px 14px;padding:0;margin:0}
:root .library-filters button{position:relative;font:400 17px/1.5 BodyCN,sans-serif;letter-spacing:0;color:#cad9d8;background:#16313a;padding:11px 16px;border:1px solid #597079;box-shadow:3px 3px 0 #04171d;border-radius:0;clip-path:none;min-height:48px;transition:color .2s,background .2s,transform .2s}
.library-filters button:hover{background:#23454d;transform:translateY(-2px)}
.library-filters button[aria-pressed=true]{background:#eac0d5;color:#203039;border-color:#eac0d5}
.library-filters button:focus-visible,.library-directory a:focus-visible,.archive-card button:focus-visible{outline:2px solid #edacd7;outline-offset:4px}
.library-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 20px;margin-bottom:24px}
.library-directory a{display:flex;align-items:center;position:relative;gap:17px;min-width:0;padding:12px 15px 12px 10px;color:#e7ece3;background:#102c34;border:1px solid #4b656c;box-shadow:4px 4px 0 #041920;transition:transform .25s,background .25s}
.library-directory a:after{content:'';position:absolute;left:10px;right:10px;bottom:5px;height:1px;background:#7e969b44}
.library-directory a:hover{transform:translateY(-3px);background:#20414a}
.archive-directory-art{display:block;flex:0 0 74px;width:74px;height:64px;rotate:-3deg;padding:5px;background:#e3dfd1;box-shadow:2px 2px 0 #010c1177}
.archive-directory-art img{width:100%;height:100%;object-fit:contain;display:block}
.library-directory strong{display:block;font:400 25px/1.3 TitleCN,BodyCN,sans-serif;letter-spacing:.01em}
.library-directory small{display:block;margin-top:6px;font:400 15px/1.3 MetaCN,BodyCN,sans-serif;color:#c8d6d1}
.archive-directory-arrow{margin-left:auto;align-self:flex-end;font:24px/1 'Segoe UI Symbol',sans-serif;color:#cbe0de;padding:0 0 6px}
.library-index{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:16px 0 22px;color:#adcbc9;border-bottom:1px solid #637c805c;font:400 15px/1.6 MetaCN,BodyCN,sans-serif}
.library-index p{margin:0;color:#e7e9e2}
.library-grid{display:block}
.archive-section{--archive-accent:#eac0d5;scroll-margin-top:95px;margin:56px 0 0;padding:0 0 42px;border-bottom:1px solid #566f7566}
.archive-section:last-child{border-bottom:0;padding-bottom:0}
.archive-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:26px}
.archive-heading h3{display:inline-flex;align-items:center;justify-content:center;width:280px;max-width:100%;min-height:92px;margin:-8px 0 -2px -6px;padding:15px 32px 19px;font:400 clamp(28px,2.5vw,36px)/1.3 TitleCN,BodyCN,sans-serif;letter-spacing:.025em;color:#142d35;background:url('./assets/neon/archive-heading-tab.png') center 46%/100% 190% no-repeat;clip-path:none}
.archive-heading p{font:400 17px/1.8 BodyCN,sans-serif;color:#b9cecd;margin:13px 0 0}
.archive-total{font:400 19px/1.4 MetaCN,BodyCN,sans-serif;color:var(--archive-accent);flex:none;padding-top:15px}
.archive-linework{--archive-accent:#e1bbc1}.archive-collage{--archive-accent:#e6d595}.archive-scene{--archive-accent:#bdd1c6}.archive-product{--archive-accent:#c8c4dc}.archive-performance{--archive-accent:#b9d7dc}
.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 24px;align-items:stretch}
.archive-card{display:flex;flex-direction:column;min-width:0;background:#102a32;border-bottom:1px solid #6c848975;position:relative;padding:0 0 16px;transition:transform .25s}
.archive-card:hover{transform:translateY(-4px)}
.archive-image{position:relative;display:block;width:100%;padding:0;background:transparent;cursor:zoom-in}
.archive-mount{display:block;border:32px solid transparent;border-image:var(--archive-frame) 164 157 173 155 / 32px stretch;background:transparent}
.archive-mount img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#e9e4d8}
.archive-scene .archive-mount img,.archive-performance .archive-mount img,.archive-product .archive-mount img{background:#0b1d25}
.archive-zoom{position:absolute;bottom:27px;right:27px;width:34px;height:34px;display:grid;place-items:center;background:#0b252ce8;color:#e4ece7;border:1px solid #d1ddd4;font:22px/1 'Segoe UI Symbol',sans-serif;opacity:0;transition:opacity .2s}
.archive-image:hover .archive-zoom,.archive-image:focus-visible .archive-zoom{opacity:1}
.archive-caption{padding:0 24px;margin-top:2px}
.archive-kind{margin:0 0 8px;color:#bdd0cf;font:400 15px/1.6 MetaCN,BodyCN,sans-serif;letter-spacing:.015em}
.archive-caption h4{margin:0 0 10px;color:#f0ede1;font:400 27px/1.4 TitleCN,BodyCN,sans-serif;letter-spacing:.01em}
.archive-caption h4 button{font:inherit;text-align:left;color:inherit;line-height:inherit}
.archive-source{margin:0;color:#a9c2c5;font:400 15px/1.7 BodyCN,sans-serif}
:root .archive-project.art-action{--action-width:174px;--action-height:60px;--action-art:var(--action-compact);align-self:flex-start;margin:10px 0 0 17px;font-size:17px}
.archive-origin{font:400 15px/1.6 MetaCN,BodyCN,sans-serif;color:#d8bdcc;padding:0 24px;margin:17px 0 0}
.archive-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:22px}
.archive-progress{font:400 15px/1.6 MetaCN,BodyCN,sans-serif;color:#abc5c6;margin:0}
:root .archive-more.art-action{--action-width:220px;--action-height:70px;font-size:18px}
.archive-section[hidden],.library-directory a[hidden]{display:none}
@media(max-width:1100px){.library-directory{gap:13px}.archive-directory-art{flex-basis:57px;width:57px;height:53px}.library-directory a{gap:12px;padding-right:10px}.library-directory strong{font-size:22px}.archive-grid{gap:28px 18px}.archive-mount{border-width:26px;border-image-width:26px}.archive-caption{padding:0 17px}.archive-caption h4{font-size:24px}.archive-project{margin-left:17px}.archive-zoom{right:22px;bottom:22px}}
@media(max-width:850px){.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-directory{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-directory-art{flex-basis:68px;width:68px;height:56px}.archive-heading h3{font-size:30px}.library-edition strong{font-size:54px}}
@media(max-width:600px){
 .library-heading{display:block;margin-bottom:28px}.library-heading .library-description{font-size:17px;max-width:100%;margin-top:12px}
 .library-edition{display:flex;border:0;padding:18px 0 0;margin:0;gap:12px}.library-edition strong{font-size:43px}.library-edition>span{font-size:14px}
 .archive-controls{margin-bottom:24px}.archive-control-label{font-size:14px}.library-filters{gap:9px}:root .library-filters button{font-size:15px;padding:9px 12px;min-height:43px;max-width:100%;text-align:left}
 .library-directory{gap:10px}.library-directory a{gap:8px;padding:10px 8px}.archive-directory-art{flex-basis:36px;width:36px;height:41px;padding:3px}.library-directory strong{font-size:18px;white-space:nowrap}.library-directory small{font-size:13px;margin-top:4px}.archive-directory-arrow{display:none}
 .library-index{font-size:13px;align-items:flex-start;padding-top:12px;padding-bottom:16px;gap:14px}.library-index>span{max-width:90px;text-align:right}
 .archive-section{margin-top:38px;padding-bottom:28px;scroll-margin-top:80px}.archive-heading{gap:12px;margin-bottom:21px}.archive-heading>div{min-width:0;flex:1}.archive-heading h3{width:240px;min-height:80px;font-size:28px;padding:14px 24px 18px}.archive-heading p{font-size:16px;line-height:1.7;margin-top:10px}.archive-total{font-size:15px;padding-top:15px}
 .archive-grid{grid-template-columns:1fr;gap:27px}.archive-mount{border-width:29px;border-image-width:29px}.archive-caption{padding:0 23px}.archive-caption h4{font-size:26px}.archive-kind,.archive-source{font-size:15px}.archive-project{margin-left:23px}.archive-zoom{opacity:1;right:26px;bottom:25px}
 .archive-bottom{gap:10px;margin-top:16px}.archive-progress{font-size:13px}:root .archive-more.art-action{--action-width:190px;--action-height:65px;font-size:17px}
}
@media(max-width:360px){.library-directory strong{font-size:18px}.archive-directory-art{display:none}.library-directory a{padding:13px 12px}.library-directory small{margin-top:6px}:root .archive-more.art-action{--action-width:169px;font-size:16px}.archive-heading h3{font-size:25px}}
