:root{color-scheme:dark;--paper:#111c19;--ink:#e9e5d4;--muted:#afbaac;--line:#455b4d;--rust:#e5a777;--forest:#142720;--cream:#eee8d6;--serif:'Iowan Old Style',Baskerville,'Palatino Linotype',Georgia,serif;--sans:'PingFang SC','Hiragino Sans GB','Noto Sans SC',sans-serif;--mono:'SFMono-Regular',Menlo,Consolas,monospace}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:13px/1.65 var(--sans);-webkit-font-smoothing:antialiased}
button,a,input{touch-action:manipulation}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
button:focus-visible,a:focus-visible,canvas:focus-visible,input:focus-visible{outline:2px dotted var(--rust);outline-offset:4px}
[hidden]{display:none!important}
.atlas-header{max-width:1680px;min-height:82px;padding:19px clamp(20px,4vw,72px);margin:auto;display:flex;align-items:center;gap:clamp(22px,4vw,75px);border-bottom:1px solid var(--line)}
.atlas-logo{display:flex;align-items:center;gap:9px;font:600 20px/1 var(--sans);white-space:nowrap;letter-spacing:.04em}
.atlas-logo-text{color:var(--ink);background:radial-gradient(circle,var(--ink) 1px,transparent 1.2px) 0 0/3px 3px;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.atlas-mark{width:23px;height:23px;margin-right:7px;background:radial-gradient(circle,var(--rust) 1.4px,transparent 1.75px) 0 0/6px 6px;clip-path:circle(50%)}
.atlas-edition{font:9px/1.8 var(--mono);letter-spacing:.1em;color:var(--muted);white-space:nowrap}
.atlas-edition span{display:block;color:var(--rust)}
.atlas-nav{margin-left:auto;display:flex;align-items:center;gap:clamp(13px,2.4vw,36px);white-space:nowrap;font-size:11px}
.atlas-nav a{transition:color .2s}.atlas-nav a:hover{color:var(--rust)}
.atlas-nav a span{margin-left:5px;color:var(--rust)}
.language-switch{display:flex;border:1px solid var(--line)}
.language-switch button{background:none;border:0;padding:7px 10px;font:10px/1.4 var(--mono);color:var(--muted)}
.language-switch button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
main{max-width:1680px;margin:auto;padding:0 clamp(20px,4vw,72px)}
.atlas-intro{position:relative;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(235px,.6fr);align-items:end;gap:26px;padding:clamp(27px,3.5vw,50px) 0 clamp(22px,3vw,38px);background:radial-gradient(ellipse at 70% 65%,#26382b66,transparent 56%)}
.eyebrow,.micro,.intro-meta,.catalog-count,.display-top,.display-bottom,.specimen-category,.specimen-count,.catalog-filters button,.object-code{font:10px/1.5 var(--mono);letter-spacing:.08em}
.eyebrow{color:var(--rust);display:flex;align-items:center;gap:8px}.eyebrow-num{margin-left:14px;color:var(--muted)}
.live-dot{width:5px;height:5px;border-radius:50%;background:var(--rust)}
h1,h2,p{margin:0}
.atlas-intro h1{font:500 clamp(38px,4.5vw,72px)/1.18 var(--sans);letter-spacing:-.045em;margin:16px 0 0}
.atlas-intro h1 em{font-style:normal;background-image:radial-gradient(circle,var(--rust) 1.4px,transparent 1.65px)}
.atlas-intro h1,.atlas-intro h1 em,.specimen h2,.catalog-heading h2,.object-card-title{
  color:var(--ink);background-image:radial-gradient(circle,var(--ink) 1.35px,transparent 1.6px);
  background-size:4px 4px;background-repeat:repeat;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.atlas-intro h1 em{background-image:radial-gradient(circle,var(--rust) 1.35px,transparent 1.6px)}
.intro-aside{padding:0 0 9px;color:var(--muted)}
.intro-line{display:block;width:45px;height:1px;background:var(--rust);margin:0 0 16px}
.intro-aside p{font-size:13px;line-height:1.85;max-width:33em}
.intro-meta{display:block;margin-top:15px;color:var(--rust);font-size:9px}
.intro-meta span{margin:0 7px;color:var(--line)}
.exhibit{display:grid;grid-template-columns:minmax(0,1.47fr) minmax(310px,.72fr);grid-template-areas:"display specimen" "catalog catalog";grid-template-rows:minmax(560px,1fr) auto;row-gap:12px}
.display{grid-area:display;position:relative;min-width:0;min-height:0;border:1px solid var(--line);background:radial-gradient(circle at 50% 48%,#203a2e,#142720 69%,#10201a);color:#c4d2bc;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}
.display::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle,rgba(221,211,177,.09) .7px,transparent 1px) 0 0/19px 19px;mask-image:radial-gradient(ellipse at 50% 50%,#000,transparent 80%)}
.display::after{content:'';position:absolute;inset:26px;border:1px solid rgba(227,221,196,.12);pointer-events:none}
.display-top,.display-bottom{position:relative;z-index:2;display:flex;justify-content:space-between;gap:8px;padding:37px clamp(30px,4vw,60px);color:#9fac9c;font-size:9px}
.display-top b{font-weight:400;color:#e6bd91}.display-live{display:flex;align-items:center;gap:8px}.display-live i{width:5px;height:5px;border-radius:50%;background:#daaa80;box-shadow:0 0 12px #daaa80}
.display-bottom{align-items:end;color:#b2bba9;letter-spacing:.12em}
#objectCanvas{position:absolute;inset:53px 22px 47px;width:calc(100% - 44px);height:calc(100% - 100px);cursor:crosshair;touch-action:none}
.specimen{grid-area:specimen;display:flex;flex-direction:column;justify-content:space-between;min-width:0;padding:clamp(22px,2vw,30px);border:1px solid var(--line);border-left:0;background:#1b2c24}
.specimen-top{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.micro{color:var(--rust);font-size:9px}.specimen-count{color:var(--muted)}.specimen-count b{font:400 24px/1 var(--serif);color:var(--ink)}
.specimen-copy{flex:1;display:flex;flex-direction:column;padding:24px 0 20px}.specimen-category{color:var(--rust);font-size:9px}
.specimen h2{font:500 clamp(38px,3.9vw,56px)/1.15 var(--sans);letter-spacing:-.04em;margin:12px 0 0;text-wrap:balance}
.specimen-en{font:12px/1.5 var(--mono);letter-spacing:.14em;color:var(--rust);margin-top:6px}
.specimen-description{font-size:13px;line-height:1.9;color:var(--muted);max-width:30em;margin-top:auto;padding-top:20px;border-top:1px dotted var(--line)}
.specimen-nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}
.specimen-nav button{border:0;background:none;color:var(--ink);padding:14px 0;font:17px/1 var(--serif);display:flex;gap:12px;align-items:center;min-height:48px}
.specimen-nav button span,.specimen-nav>span{font:9px var(--mono);letter-spacing:.08em;color:var(--muted)}
.specimen-nav button:hover{color:var(--rust)}
.specimen-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:19px}
.specimen-actions button{border:1px solid var(--line);background:none;color:var(--ink);text-align:left;padding:12px;font-size:11px;display:flex;justify-content:space-between;gap:3px;min-height:64px;align-items:center;transition:border-color .2s,color .2s}
.specimen-actions button:hover{border-color:var(--rust);color:var(--rust)}
.specimen-actions button:last-child{background:#b58a62;border-color:#b58a62;color:#111c19;font-weight:600}
.specimen-actions button:last-child:hover{background:var(--rust);border-color:var(--rust);color:#111c19}
.interaction-hint{font-size:10px;color:var(--muted);margin-top:18px;line-height:1.6;min-height:3.2em}
.catalog{grid-area:catalog;min-width:0;overflow:hidden;padding:12px 0 0;border:1px solid var(--line);background:#17281f}
.catalog-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 18px 8px}
.catalog-heading h2{font:500 16px/1.2 var(--sans);letter-spacing:-.02em;margin-top:2px}
.catalog-heading h2 span{font:9px var(--mono);color:var(--rust);-webkit-text-fill-color:var(--rust);letter-spacing:.06em;margin-left:8px;white-space:nowrap}
.catalog-controls{display:flex;align-items:center;gap:12px}.catalog-count{color:var(--muted);white-space:nowrap;font-size:9px}.catalog-count b{font:16px var(--serif);color:var(--ink)}
.rail-nav{display:flex;gap:4px}.rail-nav button{width:31px;height:31px;border:1px solid var(--line);background:transparent;color:var(--ink)}.rail-nav button:hover{color:var(--rust);border-color:var(--rust)}
.catalog-filters{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:0 18px 9px}.catalog-filters::-webkit-scrollbar{display:none}
.catalog-filters button{flex:none;padding:4px 10px;border:1px solid var(--line);color:var(--muted);background:none;min-height:29px;font-size:9px;transition:color .2s,background .2s,border-color .2s}
.catalog-filters button:hover{border-color:var(--rust);color:var(--rust)}
.catalog-filters button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.object-grid{display:flex;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;border-top:1px solid var(--line);scroll-snap-type:x proximity}
.object-card{flex:0 0 112px;min-width:0;position:relative;text-align:left;background:#182720;border:0;border-right:1px solid var(--line);padding:0;color:var(--ink);display:flex;flex-direction:column;scroll-snap-align:start;transition:background .2s}
.object-card:hover,.object-card[aria-current="true"]{background:#283d30}
.object-card[aria-current="true"]{box-shadow:inset 0 0 0 1px var(--rust)}
.object-card canvas{width:100%;height:auto;aspect-ratio:1.6;display:block;background:#10211c}
.object-card:nth-child(4n + 2) canvas{background:#1b3028}
.object-card:nth-child(4n + 3) canvas{background:#1d2b24}
.object-card:nth-child(4n + 4) canvas{background:#202d27}
.object-card-copy{padding:5px 8px 6px;width:100%;display:flex;flex-direction:column;gap:2px}
.object-card-title{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 11px/1.45 var(--sans);-webkit-text-fill-color:var(--ink);background:none}
.object-code{color:var(--rust);font-size:8px;white-space:nowrap}
.atlas-footer{max-width:1680px;margin:auto;padding:24px clamp(20px,4vw,72px) 32px;border-top:1px solid var(--ink);display:flex;align-items:center;justify-content:space-between;gap:15px;color:var(--muted);font:10px/1.7 var(--mono);letter-spacing:.03em}
.atlas-footer a{color:var(--ink)}.atlas-footer a:hover{color:var(--rust)}
.object-toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:10;background:var(--ink);color:var(--paper);padding:11px 18px;font-size:11px;box-shadow:0 10px 30px #28352e30}
@media(max-width:1100px){.atlas-edition{display:none}.exhibit{grid-template-columns:minmax(0,1.1fr) minmax(270px,.8fr)}}
@media(max-width:760px){.atlas-header{flex-wrap:wrap;gap:12px;min-height:0}.atlas-nav{width:100%;justify-content:space-between;gap:12px}.atlas-intro{grid-template-columns:1fr;gap:18px}.atlas-intro h1{font-size:clamp(38px,5vw,52px)}.intro-aside{display:flex;gap:20px;align-items:start;flex-wrap:wrap}.intro-line{margin-top:12px;margin-bottom:0}.intro-aside p{flex:1;min-width:220px}.intro-meta{width:100%;margin:0}.exhibit{grid-template-columns:minmax(0,1fr);grid-template-areas:"display" "catalog" "specimen";grid-template-rows:auto auto auto;min-height:0}.display{min-height:0;aspect-ratio:1.27}.specimen{border-left:1px solid var(--line);min-height:470px;padding:26px 18px 30px}.specimen-copy{padding:20px 0 18px}.specimen h2{font-size:clamp(38px,6.2vw,46px)}}
@media(max-width:480px){.atlas-header{padding:17px 20px}.atlas-logo{font-size:19px}.atlas-nav{font-size:10px}.language-switch button{padding:6px 7px;font-size:9px}.eyebrow-num{font-size:8px}.atlas-intro{padding:26px 0 25px;gap:12px}.atlas-intro h1{margin-top:10px;font-size:clamp(30px,8vw,38px);line-height:1.13}.intro-line{display:none}.intro-aside p{min-width:0}.display{aspect-ratio:1;min-height:320px;width:100%}.display::after{inset:17px}.display-top,.display-bottom{padding:23px 24px;font-size:8px}#objectCanvas{inset:40px 12px 36px;width:calc(100% - 24px);height:calc(100% - 76px)}.display-bottom span:nth-child(2){display:none}.catalog-heading{padding:0 12px 9px}.catalog-heading h2 span{display:none}.catalog-controls{gap:6px}.catalog-count{font-size:8px}.catalog-count b{font-size:14px}.rail-nav button{width:29px;height:29px}.catalog-filters{padding:0 12px 9px}.object-card{flex-basis:100px}.atlas-footer{align-items:start;flex-direction:column}.atlas-footer p{order:3}}
@media(max-width:360px){.specimen{min-height:512px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
