@font-face{font-family:GallerySerif;src:local("Georgia");font-display:swap}
:root{--ink:#292e2a;--muted:#747b72;--paper:#f4f2eb;--line:#d7d8cc;--olive:#626b50;--gold:#a18b57;color-scheme:light;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer;border:0;background:transparent}button:disabled{opacity:.32;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--olive);outline-offset:5px}button:hover:not(:disabled){color:#7b6335}a{color:inherit;text-underline-offset:5px}#world{position:fixed;inset:0}#world canvas{display:block;width:100%;height:100%;touch-action:none}.masthead{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:25px 38px;background:linear-gradient(#f4f2ebfa,#f4f2ebd9 64%,transparent);z-index:3;pointer-events:none}.masthead>*{pointer-events:auto}.brand{text-align:left;padding:0}.brand-top{display:block;font-size:8px;letter-spacing:2.5px;font-weight:700}.brand-name{display:block;font:38px/1.15 GallerySerif,Georgia,serif;letter-spacing:-2px}.brand-dot{color:var(--gold)}nav{display:flex;gap:26px;align-items:center}nav>button{font-size:12px;font-weight:600;padding:12px 0}nav span{margin-left:7px}.icon-button{border:1px solid #292e2a50;border-radius:50%;width:28px;height:28px;padding:0;font-family:Georgia,serif}.room-heading{position:absolute;top:124px;left:38px;pointer-events:none;max-width:min(660px,70vw);text-shadow:0 1px 15px #fff9}.room-heading p:first-child{font-size:9px;letter-spacing:2.3px;font-weight:700;color:#60684f;margin:0 0 11px}.room-heading h1{font:clamp(23px,2.45vw,36px)/1.1 Georgia,serif;font-weight:400;letter-spacing:-.9px;margin:0}#room-caption{font-size:11px;margin-top:10px;color:#555e50}.visitor-bar{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;padding:8px 12px;border:1px solid #fff9;background:#f4f2ebed;box-shadow:0 5px 30px #34382b1a;backdrop-filter:blur(16px);border-radius:4px;white-space:nowrap}.visitor-bar>button{padding:10px;font-size:12px}.visitor-bar>button:first-child,.visitor-bar>button:nth-child(3){font-size:20px;padding:3px 7px}.visitor-bar>span{font-size:9px;letter-spacing:1.6px;font-weight:600;max-width:210px;overflow:hidden;text-overflow:ellipsis}.bar-divider{width:1px;height:18px;background:var(--line)}.movement-hint{position:absolute;bottom:88px;left:50%;transform:translateX(-50%);font-size:10px;background:#f4f2ebe6;padding:7px 11px;border-radius:3px;white-space:nowrap;color:#60664f}.reset-view{position:absolute;bottom:32px;right:36px;font-size:26px;width:40px;height:40px;background:#f4f2ebdf;border-radius:50%}#movement{position:absolute;bottom:30px;left:34px;display:grid;grid-template-columns:36px 36px 36px;grid-template-rows:36px 36px;gap:3px;touch-action:none}#movement button{border:1px solid #fff9;background:#f4f2ebe8;border-radius:4px;user-select:none;touch-action:none;font-size:17px}#movement button[data-move=forward]{grid-column:2}#movement button[data-move="turn-left"]{grid-row:2;grid-column:1}#movement button[data-move=back]{grid-row:2;grid-column:2}#movement button[data-move="turn-right"]{grid-row:2;grid-column:3}#hover-label{position:fixed;display:none;padding:8px 12px;background:var(--paper);box-shadow:0 3px 12px #0001;border-radius:3px;font-size:11px;max-width:250px;pointer-events:none;z-index:3}#loading{position:absolute;inset:0;background:#f4f2eb;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2;color:#727861;font:14px Georgia,serif;letter-spacing:.3px}.loading-ring{border:1px solid #cccbbb;border-top-color:#626b50;width:40px;height:40px;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#error{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:30px;background:var(--paper);z-index:5;max-width:90vw;width:420px}#error h2{font:28px Georgia,serif}#error p{font-size:14px;line-height:1.5}#error button{background:var(--olive);color:white;padding:12px;margin:8px 8px 0 0}[hidden]{display:none!important}
dialog{border:1px solid #dfded1;box-shadow:0 30px 100px #1115;background:var(--paper);color:var(--ink);padding:27px 32px;border-radius:7px;max-height:calc(100dvh - 48px);overflow:auto}dialog::backdrop{background:#1e272766;backdrop-filter:blur(6px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-top p,.eyebrow{font-size:9px;letter-spacing:1.8px;color:#6a7059;font-weight:600}.close-dialog{font-size:28px;padding:0 4px;line-height:1}.dialog-top+h2{font:34px Georgia,serif;letter-spacing:-.8px;margin:18px 0 25px}#drawer{width:640px}#search-form{display:flex;margin-bottom:25px;border-bottom:1px solid #aeb29e}#search{padding:14px 0;background:none;border:0;min-width:0;flex:1;font-size:13px}#search-form button{font-size:23px;padding:10px}#drawer-content{display:grid;gap:0}.category-row,.collector-row{padding:15px 0;border-bottom:1px solid var(--line);text-align:left;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px;line-height:1.4}.category-row span:last-child{font-size:10px;color:#7e826f;white-space:nowrap}.drawer-note{font-size:13px;line-height:1.7;color:#626955}.exhibit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.exhibit-card{text-align:left;padding:0;font-size:11px;line-height:1.5}.exhibit-card img{width:100%;height:155px;object-fit:contain;background:#fff;margin-bottom:8px}.exhibit-card .empty-photo{height:155px;display:grid;place-items:center;background:#e7e6dd;padding:18px;margin-bottom:8px;color:#858775}.inspect-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:35px;margin-top:20px}#inspect{width:950px}.inspect-visual{background:#fff;padding:20px;border-radius:2px;display:flex;flex-direction:column;justify-content:center;min-width:0}.inspect-visual img{width:100%;height:clamp(240px,49vh,510px);object-fit:contain}.inspect-details h2{font:30px/1.15 Georgia,serif;letter-spacing:-.5px;margin:12px 0 20px}.inspect-details>p{font-size:12px;line-height:1.6}.inspect-details dl{font-size:12px;line-height:1.6;margin:25px 0;overflow-wrap:anywhere}.inspect-details dt{font-size:9px;text-transform:uppercase;letter-spacing:1.2px;color:#777b6c;margin-top:15px}.inspect-details dd{margin:4px 0}.inspect-details a{font-size:11px}.photo-navigation{display:flex;align-items:center;justify-content:center;gap:20px;font-size:11px}.photo-navigation button{font-size:20px;padding:8px 16px}#photo-status{font-size:10px;text-align:center;color:#717664;margin:10px 0;min-height:12px}#album{width:960px}.album-intro{font-size:12px;color:#717764;line-height:1.5}#album-book{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:18px;background:#3d453b;border-radius:5px;box-shadow:0 10px 20px #323b2c26;perspective:1500px;margin:28px 0}.album-page{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:20px;background:#e6e3d6;border:1px solid #d2cdbc;min-height:280px}.album-page button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding:8px;background:#fbfaf1;box-shadow:inset 0 0 0 1px #ccc8b5,0 1px 4px #0002}.album-page img{height:125px;max-width:100%;object-fit:contain;pointer-events:none}.album-page span{font-size:9px;display:block;padding-top:8px;text-align:center;line-height:1.4;max-height:35px;overflow:hidden}.album-spine{position:absolute;top:18px;bottom:18px;left:calc(50% - 5px);width:10px;background:linear-gradient(90deg,#2e3127,#c5bca0,#353a2e)}.album-controls{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:11px}.album-controls button{padding:12px;background:#e6e6da;border-radius:3px}.album-controls span{color:#747c65}#toast{position:absolute;bottom:145px;left:50%;transform:translateX(-50%);background:#f4f2eb;padding:12px 20px;box-shadow:0 6px 25px #0002;font-size:12px;max-width:85vw;text-align:center}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.noscript{position:absolute;inset:30%;background:var(--paper);padding:30px;z-index:9}
@media(max-width:700px){.masthead{padding:20px 20px 28px}.brand-top{font-size:6px;letter-spacing:1.8px}.brand-name{font-size:31px}nav{gap:18px}nav>button{font-size:11px}nav span{display:none}.room-heading{top:103px;left:20px;max-width:87vw}.room-heading h1{font-size:25px}.room-heading p:first-child{font-size:8px}#room-caption{font-size:10px}.visitor-bar{bottom:calc(18px + env(safe-area-inset-bottom));gap:5px;padding:5px 7px;max-width:calc(100vw - 28px)}.visitor-bar>span{font-size:8px;letter-spacing:1px;max-width:160px}.visitor-bar>button{font-size:10px;padding:8px}.movement-hint{bottom:calc(80px + env(safe-area-inset-bottom));font-size:9px;max-width:95vw}#movement{left:20px;bottom:calc(112px + env(safe-area-inset-bottom));grid-template-columns:42px 42px 42px;grid-template-rows:42px 42px}.reset-view{right:20px;bottom:calc(117px + env(safe-area-inset-bottom));background:#f4f2ebc9}dialog{padding:19px 20px;max-width:calc(100vw - 20px);max-height:calc(100dvh - 24px);border-radius:5px}.dialog-top+h2{font-size:27px}.inspect-layout{grid-template-columns:1fr;gap:18px}.inspect-visual img{height:32vh;min-height:200px}.inspect-details h2{font-size:26px}.inspect-details dl{margin-top:18px}.exhibit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.album-page{padding:8px;gap:5px;min-height:220px}.album-page img{height:85px}.album-page button{padding:4px}.album-page span{font-size:8px;max-height:29px}#album-book{padding:9px;gap:6px;margin:20px 0}.album-spine{top:9px;bottom:9px;width:6px;left:calc(50% - 3px)}.album-controls{font-size:9px}.album-controls button{padding:10px 6px}.album-intro{font-size:11px}}
@media(max-height:520px) and (orientation:landscape){.room-heading{top:87px}#room-caption{display:none}.masthead{padding-top:15px}.movement-hint{display:none}#movement{bottom:25px}.inspect-layout{grid-template-columns:1fr 1fr}.inspect-visual img{height:200px}.room-heading h1{font-size:23px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;scroll-behavior:auto!important}}
.section-title{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:24px 0 17px}.section-title h3{font:21px/1.2 Georgia,serif;font-weight:400;margin:0}.section-title button{font-size:11px;white-space:nowrap;border-bottom:1px solid #aaa88f;padding:6px 0}.accessible-gallery{height:100dvh;overflow:auto;padding:215px max(38px,calc((100vw - 1020px)/2)) 130px;background:#f4f2eb}.accessible-gallery .exhibit-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}.accessible-gallery .exhibit-card img{height:185px}.accessible-gallery>.drawer-note{max-width:580px;margin:0 0 30px}.accessible-gallery .section-title{margin-top:40px}@media(max-width:700px){.accessible-gallery{padding:187px 20px 120px}.accessible-gallery .exhibit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.accessible-gallery .exhibit-card img{height:180px}.section-title h3{font-size:18px}.section-title button{font-size:10px}}
/* 0.2: room orientation, provenance, and photo invitations. */
.masthead{padding:20px 28px}nav{gap:22px}.room-heading{top:104px;left:28px;max-width:min(630px,73vw);background:#f4f2ebdc;border:1px solid #ffffff55;padding:12px 15px;backdrop-filter:blur(8px);border-radius:3px}.room-heading h1{font-size:clamp(21px,2vw,29px)}.room-heading p:first-child{font-size:8px;letter-spacing:1.7px;margin-bottom:8px}#room-caption{margin:8px 0 0}.room-heading button{pointer-events:auto;text-align:left;margin-top:9px;padding:7px 0 1px;border-top:1px solid #bebfab;font-size:11px;line-height:1.5}.group-caption{font-size:13px;line-height:1.45;margin:7px 0;color:#59634e}.item-meta{font-size:10px;line-height:1.5;color:#737964;display:block;margin:4px 0 0}.item-name{display:block}.card-photo{position:relative}.photo-badge{position:absolute;right:6px;bottom:6px;background:repeating-linear-gradient(0deg,#ffffff18 0 1px,#25303908 1px 3px),linear-gradient(#e1e5e7,#c4ccd0 45%,#d7dde0 53%,#aeb8bd);color:#29353c;padding:5px 7px;border:1px solid #77838a;border-radius:2px;font:10px/1.1 Arial,sans-serif;box-shadow:inset 0 1px 0 #f3f5f5,0 1px 2px #0002;text-shadow:0 1px #f4f6f7;white-space:nowrap}.album-page button{position:relative}.album-page span.photo-badge{display:inline-block;position:absolute;padding:4px 6px;bottom:5px;right:5px;max-height:none;font-size:9px;line-height:1.1;color:#29353c;text-align:center}.display-card{padding:19px 0;border-bottom:1px solid var(--line)}.display-card h3{font:23px/1.2 Georgia,serif;font-weight:400;margin:9px 0}.display-actions{display:flex;gap:14px;margin-top:16px;flex-wrap:wrap}.display-actions button{background:#e2e4d5;padding:10px 13px;border-radius:3px;font-size:11px}.display-actions button:first-child{background:#55674f;color:#fff9e8}.group-row{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:16px 0;border-bottom:1px solid var(--line)}.group-row strong{font:20px/1.2 Georgia,serif;font-weight:400}.controls-table{border-collapse:collapse;width:100%;font-size:12px;margin:20px 0}.controls-table th,.controls-table td{text-align:left;padding:12px 8px;border-bottom:1px solid var(--line)}.controls-table th{font-size:10px;letter-spacing:.5px;color:#657057}#nearby-display{position:absolute;bottom:116px;left:50%;transform:translateX(-50%);max-width:min(680px,65vw);text-align:center;font-size:11px;line-height:1.5;color:#424e3b;background:#f4f2ebed;padding:8px 12px;border:1px solid #fff9;border-radius:3px;pointer-events:none}#annex-controls{position:absolute;right:28px;top:114px;display:flex;align-items:center;gap:9px;background:#f4f2ebed;border:1px solid #fff9;border-radius:3px;padding:5px 8px}#annex-controls span{font-size:10px}#annex-controls button{font-size:18px;padding:4px}.accessible-gallery .section-title{align-items:center}.section-title .group-caption{margin:8px 0 0}.section-title .item-meta{margin-top:5px}
@media(max-width:700px){.masthead{padding:17px 18px}nav{gap:13px}nav>button{font-size:10px}.brand-name{font-size:29px}.room-heading{top:89px;left:18px;max-width:calc(100vw - 36px);padding:9px 11px}.room-heading h1{font-size:21px}#room-caption{font-size:9px}.room-heading button{font-size:9px}#annex-controls{top:auto;bottom:calc(91px + env(safe-area-inset-bottom));right:18px;gap:5px}#annex-controls span{font-size:9px}#nearby-display{bottom:calc(211px + env(safe-area-inset-bottom));max-width:calc(100vw - 36px);width:max-content;font-size:10px;padding:6px 10px}.movement-hint{bottom:calc(63px + env(safe-area-inset-bottom));font-size:8px}#movement{bottom:calc(102px + env(safe-area-inset-bottom))}.reset-view{bottom:calc(145px + env(safe-area-inset-bottom));right:18px}.accessible-gallery{padding-top:221px}.album-page span.photo-badge{font-size:8px;padding:3px 4px;right:2px;bottom:2px}.display-actions button{font-size:10px}.display-card h3{font-size:21px}.controls-table{font-size:11px}.controls-table th,.controls-table td{padding:10px 5px}}
@media(max-width:390px){nav{gap:10px}.brand-top{font-size:5px}.brand-name{font-size:27px}nav .icon-button{width:23px;height:23px}.masthead{padding-left:14px;padding-right:14px}}
@media(max-height:520px) and (orientation:landscape){.room-heading{top:80px;max-width:60vw}.room-heading h1{font-size:19px}#nearby-display{bottom:75px;max-width:55vw}#annex-controls{top:92px;bottom:auto}.accessible-gallery{padding-top:175px}}

.group-caption,.group-row,.item-meta{overflow-wrap:anywhere}

.item-meta[hidden],.group-caption[hidden]{display:none}

/* Readable albums and inspection, with the same item fronts at every size. */
dialog{overscroll-behavior:contain;scroll-padding-top:64px}
.dialog-top{position:sticky;top:-27px;z-index:2;background:var(--paper);padding:8px 0;border-bottom:1px solid var(--line)}
.dialog-top p{overflow-wrap:anywhere;min-width:0}
.close-dialog{min-width:44px;min-height:44px;flex-shrink:0;border-radius:4px}
.close-dialog:hover{background:#e6e6da}
.inspect-heading{overflow-wrap:anywhere}
.inspect-heading>p{font-size:12px;line-height:1.6}
.inspect-visual{min-height:220px}
.photo-navigation button{min-width:44px;min-height:44px}
#inspect-facts{min-width:0}
#search{font-size:16px}
#search-form button,.display-actions button,.section-title button{min-height:44px}
.category-row{flex-wrap:wrap;gap:5px 16px;overflow-wrap:anywhere}
.category-row span:first-child{flex:1;min-width:150px}
.section-title{flex-wrap:wrap}
.section-title>div{min-width:0;overflow-wrap:anywhere}
#album-title{overflow-wrap:anywhere}
.album-page{align-content:start}
.album-page button{justify-content:flex-start}
.album-page .album-picture{display:block;position:relative;width:100%;padding:0;max-height:none;overflow:visible}
.album-page .album-picture img{width:100%;height:145px}
.album-page .album-missing{min-height:145px;max-height:none;display:grid;place-items:center;font-size:12px;color:#636b61;padding:12px 3px}
.album-page .album-item-name{font-size:12px;line-height:1.4;max-height:none;overflow:visible;overflow-wrap:anywhere;padding:9px 0 3px}
.album-page span.photo-badge{font-size:10px;bottom:3px;right:3px}
#album-book[data-page-size="1"] .album-page,#album-book[data-page-size="2"] .album-page{grid-template-columns:minmax(0,1fr)}


.album-controls{position:sticky;bottom:-27px;z-index:2;background:var(--paper);padding:10px 0;border-top:1px solid var(--line)}
.album-controls button{min-width:70px;min-height:44px;font-size:12px}
.album-controls span{font-size:11px;text-align:center;line-height:1.4}
@media(max-width:900px){
  .album-page{padding:12px;gap:12px}
  .album-page .album-picture img{height:160px}
  
}
@media(max-width:700px){
  dialog{padding:12px 16px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}
  .dialog-top{top:-12px;padding:4px 0}
  .album-controls{bottom:-12px}
  .inspect-layout{grid-template-columns:minmax(0,1fr);gap:15px;margin-top:12px}
  .inspect-details{display:contents}
  .inspect-heading{order:-1}
  .inspect-heading h2{margin:7px 0;font-size:26px}
  .inspect-heading>p{margin:5px 0}
  .inspect-visual{padding:12px;min-height:160px}
  .inspect-visual img{height:clamp(160px,35dvh,300px);min-height:0}
  #inspect-facts{margin:0 0 10px}
  #catalog-link{font-size:13px;padding:12px 0}
  
}
@media(max-width:600px){
  .masthead{padding:12px max(12px,env(safe-area-inset-right)) 18px max(12px,env(safe-area-inset-left));gap:6px}
  .masthead .brand{width:86px;flex-shrink:0}
  .masthead .brand-top{font-size:5.5px;letter-spacing:1px;line-height:1.6}
  .masthead .brand-name{font-size:29px}
  .masthead nav{gap:0;min-width:0}
  .masthead nav>button{min-width:44px;min-height:44px;font-size:10px;padding:4px}
  .masthead nav .icon-button{width:44px;height:44px;border-color:transparent}
  .room-heading{left:max(12px,env(safe-area-inset-left));max-width:calc(100vw - 24px - env(safe-area-inset-left) - env(safe-area-inset-right))}
  #album-book{margin:18px 0;gap:6px}
  .album-page,
  .album-page button{padding:5px}
  .album-page .album-picture img{height:clamp(125px,28dvh,210px)}
  .album-page .album-item-name{font-size:12px}
}
@media(pointer:coarse),(max-width:700px){
  .visitor-bar>button,#annex-controls button{min-width:44px;min-height:44px}
}

/* Vault's brief, silent collision starburst; still visible with reduced motion. */
#bonk{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(190px,48vw);height:140px;display:grid;place-items:center;isolation:isolate;z-index:7;pointer-events:none;color:#332315;font:bold italic clamp(30px,6vw,43px)/1 Arial,Helvetica,sans-serif;text-shadow:0 1px #fff9;filter:drop-shadow(0 3px 3px #0003)}
#bonk::before,#bonk::after{content:"";position:absolute;inset:0;z-index:-2;clip-path:polygon(2% 26%,23% 28%,15% 4%,37% 17%,47% 0,57% 18%,82% 5%,77% 30%,100% 21%,88% 47%,99% 68%,77% 70%,85% 97%,61% 82%,47% 100%,38% 83%,12% 98%,21% 72%,0 66%,12% 47%);background:#f08a24}
#bonk::after{inset:10px 12px;z-index:-1;background:#ffdf58}
#bonk[hidden]{display:none}

/* Touch controls: explicit sideways steps and stationary viewing height. */
#movement .touch-extra,#viewing-controls{display:none}
#movement button[data-move=left]{grid-row:1;grid-column:1}
#movement button[data-move=right]{grid-row:1;grid-column:3}
#movement button[data-held],#viewing-controls button[data-held]{background:#34483f;color:#fff;border-color:#c7d8cb}
@media(pointer:coarse),(max-width:700px){
  #movement{grid-template-columns:repeat(3,44px);grid-template-rows:repeat(2,44px);gap:4px;left:max(18px,env(safe-area-inset-left));bottom:calc(102px + env(safe-area-inset-bottom))}
  #movement .touch-extra{display:block}
  #viewing-controls{position:absolute;right:max(18px,env(safe-area-inset-right));bottom:calc(148px + env(safe-area-inset-bottom));display:flex;gap:5px;touch-action:none}
  #viewing-controls button{width:48px;min-height:48px;padding:4px 2px;border:1px solid #fff9;border-radius:4px;background:#f4f2ebed;user-select:none;touch-action:none;font-size:10px}
  #viewing-controls button span{display:block;font-size:22px;line-height:23px}
  .reset-view{bottom:calc(204px + env(safe-area-inset-bottom));right:max(18px,env(safe-area-inset-right));width:44px;height:44px}
  #nearby-display{bottom:calc(258px + env(safe-area-inset-bottom));max-width:calc(100vw - 36px)}
  #annex-controls{top:auto;bottom:calc(88px + env(safe-area-inset-bottom));right:max(18px,env(safe-area-inset-right));gap:3px;padding:3px}
  #annex-controls button{min-width:36px;min-height:44px}
  #annex-controls span{font-size:9px}
  .masthead{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}
}
@media(pointer:coarse) and (max-height:520px) and (orientation:landscape),(max-width:700px) and (max-height:520px) and (orientation:landscape){
  #movement,#viewing-controls{bottom:calc(16px + env(safe-area-inset-bottom))}
  .reset-view{bottom:calc(76px + env(safe-area-inset-bottom))}
  #annex-controls{top:88px;bottom:auto}
  .visitor-bar{bottom:calc(16px + env(safe-area-inset-bottom));max-width:calc(100vw - 320px);gap:3px;padding:5px}
  .visitor-bar>span{max-width:90px;letter-spacing:.5px}
  .visitor-bar>button{padding:6px;font-size:10px}
  .bar-divider{display:none}
  #nearby-display{bottom:76px;max-width:calc(100vw - 330px);font-size:10px}
  .movement-hint{display:none}
}
@media(max-width:390px){
  #movement{left:max(10px,env(safe-area-inset-left))}
  #annex-controls{right:max(10px,env(safe-area-inset-right));max-width:calc(100vw - 168px)}
}

/* Three independent inspection panels keep long metadata and live sources readable. */
.inspection-tabs{display:flex;border-bottom:1px solid var(--line);gap:4px;margin-top:18px;position:sticky;top:34px;z-index:1;background:var(--paper)}
.inspection-tabs button{flex:1;min-width:0;min-height:44px;padding:10px 6px;font-size:12px;border-radius:4px 4px 0 0}
.inspection-tabs button[hidden]{display:none}
.inspection-tabs button[aria-selected="true"]{background:#3d4b56;color:#fff}
.inspection-tabs button:focus-visible{outline:2px solid #b24632;outline-offset:-3px}
.inspect-details [role="tabpanel"]{min-width:0;max-height:48vh;overflow:auto;overscroll-behavior:contain;padding:0 4px 12px;overflow-wrap:anywhere}
.inspect-details [role="tabpanel"][hidden]{display:none}
.inspection-note,#value-status{font-size:12px;line-height:1.6;color:#606953}
.value-offer{padding:16px 0;border-bottom:1px solid var(--line);font-size:13px;line-height:1.6}
.value-offer h3{font-size:14px;margin:0 0 5px}.value-offer p{margin:8px 0}.value-offer a,#item-links a{display:block;padding:12px 0;min-height:44px}
@media(max-width:700px){.inspection-tabs{top:44px}.inspect-details [role="tabpanel"]{max-height:46dvh}.inspection-tabs button{font-size:12px}}

/* Only display copies are cut out; inspection keeps original photography. */
.exhibit-card img.image-treated,.album-page img.image-treated{background:transparent;object-position:center bottom}
.image-treatment-loading{visibility:hidden}

/* Keep touch controls and navigation usable while the category view changes. */

/* Desktop floor plan: the same room and fixture geometry, drawn without photos. */
#map-toggle kbd{font:9px Arial,sans-serif;border:1px solid #a8ae9b;border-radius:3px;padding:2px 4px;margin-left:4px}
#floor-map{width:1200px;max-width:calc(100vw - 48px)}
#floor-map-title{margin-bottom:10px;font-size:30px;overflow-wrap:anywhere}
#floor-map-summary{font-size:12px;color:var(--muted);margin:0 0 20px}
#floor-map-drawing{height:clamp(230px,48vh,520px);background:#e9e7df;border:1px solid var(--line);border-radius:4px;padding:12px}
.floor-map-svg{display:block;width:100%;height:100%;overflow:visible}
.floor-map-svg .map-room{fill:#faf9f2}.floor-map-svg .map-current-room{fill:#e9dfba}
.floor-map-svg .map-passage{fill:#faf9f2}.floor-map-svg .map-wall{stroke:#555e56;stroke-width:.1}
.floor-map-svg .map-category-door{fill:#d2b774;stroke:#927c4e;stroke-width:.065}
.floor-map-svg .map-door-leaves{stroke:#6c583b;stroke-width:.12}
.floor-map-svg .map-room-label{fill:#435045;font-family:Arial,sans-serif;font-weight:600;pointer-events:none}
.floor-map-svg .map-furniture{fill:#c9cebc;stroke:#a8b09c;stroke-width:.04}
.floor-map-svg .map-display{fill:#526571;stroke:#354952;stroke-width:.06;cursor:pointer}
.floor-map-svg .map-display:hover,.floor-map-svg .map-display:focus{fill:#9a643d;stroke:#744225;stroke-width:.15;outline:none}
.floor-map-svg .map-stairs{fill:#d5d9ce;stroke:#657363;stroke-width:.08}.floor-map-svg .map-tread{stroke:#8d9887;stroke-width:.04}
.floor-map-svg .map-stair-label{fill:#445c49;font-weight:bold}
.floor-map-svg .map-position{pointer-events:none}.floor-map-svg .map-position circle{fill:#fff;stroke:#fff;stroke-width:.13}.floor-map-svg .map-position path{fill:#ad3f2f;stroke:#fff;stroke-width:.06}
.map-edge{font-size:11px;line-height:1.5;color:#756240;text-align:center;margin:8px 0;overflow-wrap:anywhere}
.map-legend{display:flex;align-items:center;gap:10px 22px;flex-wrap:wrap;font-size:11px;color:#64705f;margin-top:20px}
.map-legend span{display:flex;align-items:center;gap:7px}.map-legend span:last-child{margin-left:auto}
.map-legend i{display:inline-block;width:12px;height:12px;border-radius:2px}
.map-key-current{background:#e9dfba;border:1px solid #a99b70}.map-key-display{background:#526571}.map-key-door{background:#d2b774}.map-key-position{background:#ad3f2f;border-radius:50%!important}
#floor-map-detail{font-size:12px;line-height:1.6;min-height:3.2em;margin:15px 0 0;padding-top:14px;border-top:1px solid var(--line);overflow-wrap:anywhere}
@media(hover:none),(pointer:coarse){#map-toggle{display:none}}
@media(max-height:600px){#floor-map-drawing{height:230px}#floor-map-title{font-size:24px;margin-top:10px}.map-legend{margin-top:10px}}

/* A curved, two-sided sheet with page contents attached to its surface. */
.album-motion{display:flex;align-items:center;gap:7px;font-size:11px;color:#59634e;width:max-content;max-width:100%;cursor:pointer}
.album-motion input{accent-color:#55674f;width:15px;height:15px;margin:0}
#album-book{isolation:isolate;perspective:1800px}
#page-left{box-shadow:inset -12px 0 18px -16px #252a23a8}
#page-right{box-shadow:inset 12px 0 18px -16px #252a23a8}
#turning-page{display:none;position:absolute;width:0;z-index:3;pointer-events:none;transform-style:preserve-3d}
#turning-page.turn{display:block}
.album-turn-measure{position:absolute;visibility:hidden;pointer-events:none;left:0;top:0}
.album-leaf-strip{position:absolute;left:0;top:0;transform-origin:50% 50%;transform-style:preserve-3d;will-change:transform}
.album-leaf-face{position:absolute;inset:0;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(.2px);background:#e6e3d6}
.album-leaf-back{transform:rotateY(180deg) translateZ(.2px)}
.album-leaf-face>.album-page{position:absolute;top:0;margin:0;min-height:0;box-shadow:inset 0 0 18px #51452e12}
.album-leaf-sheen{position:absolute;top:0;height:100%;pointer-events:none;background:linear-gradient(90deg,#ffffff24 0%,transparent 45%,#35332512)}
.album-leaf-shadow{position:absolute;top:0;pointer-events:none;background:linear-gradient(90deg,#151a1890,transparent 85%);filter:blur(10px);transform:translateZ(.1px)}
#turning-page.reverse .album-leaf-shadow{background:linear-gradient(270deg,#151a1890,transparent 85%)}

/* Independent literal terms, all required within the same public record. */
#search-summary{font-size:11px;line-height:1.5;margin:8px 0 0;overflow-wrap:anywhere;max-height:3em;overflow:auto}
#search-terms{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.search-term{display:grid;grid-template-columns:minmax(0,1fr) 32px;align-items:center;gap:6px 5px;min-width:0}
.search-term-heading{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px}
.search-term label{font-size:11px;color:#59634e}
.search-term select{padding:5px 7px;background:#fffdf8;border:1px solid #b5b8a8;border-radius:3px;font:inherit;font-size:12px;color:var(--ink)}
.search-term input{width:100%;min-width:0;padding:11px 9px;background:#fffdf8;border:1px solid #b5b8a8;border-radius:3px;font-size:14px;color:var(--ink)}
.search-term>button{padding:8px;font-size:22px;min-height:40px}
.search-term-tools{display:flex;align-items:center;justify-content:space-between;margin:16px 0;font-size:11px;color:#626955}
.search-term-tools button{padding:9px;background:#e2e4d5;border-radius:3px}
.search-submit{padding:13px 18px;background:#55674f;color:#fff9e8;border-radius:3px}
#terms-error{color:#9d322b;font-size:12px}
@media(max-width:700px){.masthead nav{gap:9px}.masthead nav>button{font-size:10px}#search-terms{grid-template-columns:1fr}}
@media(max-width:430px){.masthead{flex-wrap:wrap;gap:8px}.masthead nav{width:100%;justify-content:space-between}.room-heading{top:135px}.accessible-gallery{padding-top:265px}}

/* Live tutorial captions sit beside the real controls, without blocking movement. */
#desktop-welcome{width:440px;text-align:center}#desktop-welcome h2{font:29px/1.2 Georgia,serif}#desktop-welcome p{font-size:13px;line-height:1.65}#desktop-welcome-ok{min-width:100px;min-height:44px;background:#55674f;color:#fff;border-radius:4px;margin-top:10px}
#tutorial-toggle kbd{font:9px Arial,sans-serif;border:1px solid #a8ae9b;border-radius:3px;padding:2px 4px;margin-left:4px}
#tutorial{position:fixed;z-index:20;right:24px;bottom:24px;width:370px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto;padding:20px;background:#f8f6ef;box-shadow:0 10px 55px #15201c45;border:1px solid #aa9870;border-top:4px solid #a18b57;border-radius:7px;outline:none;color:#292e2a}
.tutorial-top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:.6px;color:#59634e}.tutorial-top button{font-size:12px;text-decoration:underline;min-height:36px;letter-spacing:0}
#tutorial h2{font:25px/1.2 Georgia,serif;margin:13px 0}#tutorial p{font-size:13px;line-height:1.6;margin:12px 0}#tutorial-detail{color:#53604d;border-left:2px solid #b5a16f;padding-left:12px;min-height:1.6em;overflow-wrap:anywhere}.tutorial-motion{display:flex;gap:8px;align-items:center;font-size:11px;margin:18px 0}.tutorial-motion input{accent-color:#55674f;width:17px;height:17px}
.tutorial-actions{display:flex;gap:8px}.tutorial-actions button{min-height:44px;padding:10px 16px;border-radius:4px;background:#e6e6da;font-size:12px}.tutorial-actions button:last-child{margin-left:auto;background:#55674f;color:#fff}
.tutorial-active #drawer,.tutorial-active #floor-map{position:fixed;inset:100px 425px 24px 24px;margin:0;width:auto;max-width:none;max-height:none;z-index:10;pointer-events:none}.tutorial-active .close-dialog{visibility:hidden}.tutorial-highlight{outline:3px solid #a18b57;outline-offset:3px;background:#eee7d6}.tutorial-active #floor-map-drawing{height:clamp(180px,38vh,420px)}
@media(max-width:800px){#tutorial{right:12px;bottom:12px;width:calc(100vw - 24px);max-height:48dvh;padding:14px}#tutorial h2{font-size:21px;margin:8px 0}#tutorial p{margin:8px 0}.tutorial-motion{margin:10px 0}.tutorial-active #drawer,.tutorial-active #floor-map{inset:12px 12px calc(48dvh + 36px);padding:15px}.tutorial-active #floor-map-drawing{height:180px}.masthead nav{gap:8px}#tutorial-toggle kbd{display:none}}
@media(max-height:550px) and (min-width:801px){#tutorial{width:330px;padding:14px;right:12px;bottom:12px}.tutorial-active #drawer,.tutorial-active #floor-map{inset:12px 366px 12px 12px}#tutorial h2{font-size:20px;margin:8px 0}#tutorial p{font-size:12px;margin:8px 0}.tutorial-motion{margin:10px 0}}

/* Information Booth: one shared annex per floor. */
.booth-toggle{color:#68501e!important;border-bottom:2px solid #b89744!important}
#booth-actions{position:absolute;left:50%;top:100%;transform:translateX(-50%);display:flex;gap:8px;z-index:5;background:#f7f4e8eb;border:1px solid #c2ad75;border-radius:8px;padding:8px}
#booth-actions[hidden]{display:none}#booth-actions button{font-size:12px;padding:7px 12px}
#information-booth{width:min(960px,95vw);max-height:90vh;padding:28px;color:#26352e;background:#f4f0e5}
#booth-title{font-size:36px;margin:10px 0 20px}.booth-tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid #b9b6a9;padding-bottom:15px;margin-bottom:20px}
.booth-tabs button{padding:9px 14px;border:1px solid #b6b9a9;border-radius:4px}.booth-tabs button[aria-pressed=true]{background:#344b40;color:#fff}
.booth-content p{font-size:15px;line-height:1.7}.booth-content h3{font:600 27px Georgia,serif}.booth-content h4{font-size:20px;margin:0 0 10px}
.booth-feature{display:flow-root;background:#fffdf5;border:1px solid #c8bb91;border-radius:6px;padding:24px;margin-bottom:25px}.booth-feature img{float:left;width:43%;height:290px;object-fit:contain;margin:0 25px 16px 0;background:#fff}.booth-feature h3{margin-top:0}
.booth-link{display:inline-block;background:#d8b359;color:#211e17!important;text-decoration:none;font-size:14px;font-weight:bold;padding:11px 16px;border-radius:4px;line-height:1.5}.booth-link:focus-visible{outline:3px solid #344b40;outline-offset:4px}.booth-content .booth-small{font-size:12px;color:#505d53;line-height:1.65}
.booth-books{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.booth-book{padding:12px;border:1px solid #c9c8bb;background:#fffdf7;border-radius:5px}.booth-book img{width:100%;height:170px;object-fit:contain}.booth-book h3{font-size:18px}.booth-book p{font-size:12px}.booth-book .booth-link{font-size:11px;padding:9px}
.booth-support,.booth-welcome{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}.booth-support section,.booth-welcome button{background:#fffdf7;border:1px solid #c8bb91;padding:20px;border-radius:5px}.booth-welcome{grid-template-columns:repeat(3,minmax(0,1fr))}.booth-welcome button{text-align:left}.booth-welcome strong,.booth-welcome span{display:block}.booth-welcome span{font-size:13px;line-height:1.5;margin-top:10px}
.map-booth-callout{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;background:#eee0aa;border:1px solid #a98632;border-radius:5px;padding:12px 16px;margin-bottom:14px}.map-booth-callout strong{font-size:14px}.map-booth-callout button{font-size:12px;background:#344b40;color:#fff;padding:8px 12px;border-radius:3px}
.floor-map-svg .map-booth{fill:#dbb34f;stroke:#614b13;stroke-width:.13;cursor:pointer}.floor-map-svg .map-booth:focus,.floor-map-svg .map-booth:hover{fill:#f5d982;stroke-width:.22;outline:none}.floor-map-svg .map-booth-label{fill:#332a15;stroke:none;font-family:Arial,sans-serif;font-weight:bold;pointer-events:none}.floor-map-svg .map-booth-passage{fill:#eee0aa;stroke:#8d7a49;stroke-width:.07}.map-key-booth{background:#dbb34f;border:1px solid #614b13}
@media(max-width:1050px){.masthead nav{gap:12px}.masthead nav>button{font-size:11px}.booth-books{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.masthead{flex-wrap:wrap;gap:8px}.masthead nav{width:100%;justify-content:center;gap:10px;flex-wrap:wrap}.room-heading{top:140px}#booth-actions{max-width:95vw;gap:4px;padding:6px}#booth-actions button{padding:7px 8px}.booth-feature img{float:none;width:100%;height:230px;margin:0 0 15px}.booth-books{grid-template-columns:repeat(2,minmax(0,1fr))}.booth-support,.booth-welcome{grid-template-columns:1fr}#information-booth{padding:18px}.booth-tabs button{font-size:12px;padding:8px}#booth-title{font-size:29px}}
