/* The viewing room: existing walnut and velvet, with clearer artwork and controls. */
.shadowbox-dialog {width:min(1160px,96vw);max-height:94dvh;scrollbar-color:#8b6b40 #1b1310;scrollbar-width:thin;}
.deck-dialog-toolbar {position:sticky;top:0;z-index:5;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;min-height:65px;padding:9px 22px;background:linear-gradient(#201710f5,#1c1411fa);border-bottom:1px solid #96713e66;box-shadow:0 5px 12px #0003;}
.viewer-eyebrow {font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:#c7aa79;}
.deck-stepper {display:flex;align-items:center;gap:12px;}
.deck-stepper[hidden] {display:none;}
.deck-stepper button {display:grid;place-items:center;min-width:44px;min-height:44px;padding:9px;border-color:#81633f;background:#211913;}
.deck-stepper button:hover:not(:disabled) {background:#3a2a1d;border-color:#b48e57;}
.deck-stepper button:disabled {opacity:.3;cursor:default;}
.deck-stepper [data-deck-position] {min-width:58px;text-align:center;font-size:.75rem;font-variant-numeric:tabular-nums;color:#c7b597;}
.deck-dialog-toolbar .dialog-close {position:static;float:none;justify-self:end;grid-column:3;margin:0;background:#1b1310;}
#deck-dialog-content {transition:opacity .15s;}
.shadowbox-dialog[aria-busy=true] #deck-dialog-content {opacity:.35;}
.viewer-loading {padding:100px 30px;text-align:center;color:#c7b597;}

.deck-detail {grid-template-columns:minmax(260px,.92fr) minmax(0,1.08fr);grid-template-rows:auto 1fr;align-items:start;gap:24px 38px;padding:32px;}
.detail-heading {grid-column:2;grid-row:1;min-width:0;padding-top:7px;}
.detail-heading .eyebrow {margin:0 0 14px;line-height:1.7;}
.detail-heading h1 {font-size:clamp(2rem,2.6vw,2.8rem);line-height:1.15;text-wrap:balance;overflow-wrap:anywhere;margin:0;}
.detail-heading .edition {margin:12px 0 0;font-size:.9rem;color:#c9b495;}
.detail-copy {grid-column:2;grid-row:2;min-width:0;}
.detail-art {grid-column:1;grid-row:1/3;top:86px;min-width:0;}
.detail-page .detail-art {top:24px;}
.shadowbox-dialog .detail-art,.detail-page .detail-art {padding:17px 18px 20px;}
.gallery-heading {display:flex;justify-content:space-between;gap:16px;margin:0 0 17px;font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:#c6ac7f;}
.gallery-heading [data-art-caption] {min-width:0;overflow-wrap:anywhere;text-align:right;color:#dfccb0;letter-spacing:.08em;}
.shadowbox-dialog .detail-main-image,.detail-page .detail-main-image {display:flex;flex-direction:column;align-items:center;gap:19px;max-width:none;text-decoration:none;}
.artwork-stage {display:flex;justify-content:center;align-items:center;width:100%;height:clamp(310px,44dvh,470px);}
.detail-main-image .artwork-stage img {width:100%;height:100%;max-height:none;object-fit:contain;filter:drop-shadow(8px 12px 13px #0009);}
.inspect-artwork {display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:8px 15px;border:1px solid #ac884f8c;border-radius:2px;background:#201613a8;color:#ddc598;font-size:.78rem;transition:background .15s,border-color .15s;}
.detail-main-image:hover .inspect-artwork {background:#493021;border-color:#d2ad6b;color:#f1dcae;}
.detail-main-image:focus-visible {outline-offset:7px;}
.detail-art .image-tabs {display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:18px 0 0;padding-top:17px;border-top:1px solid #a483483d;}
.detail-art .image-tabs[hidden] {display:none;}
.image-tabs button {display:flex;align-items:center;gap:10px;min-width:100px;max-width:100%;min-height:68px;padding:8px 12px;border-color:#786045;background:#18110fed;color:#d1bfa1;font-size:.79rem;}
.image-tabs button>span {min-width:0;overflow-wrap:anywhere;text-align:left;}
.image-tabs button img {display:block;object-fit:contain;width:29px;height:41px;filter:drop-shadow(1px 2px 2px #0006);}
.image-tabs button[aria-pressed=true] {background:var(--brass-face);color:var(--brass-ink);border-color:var(--brass-rim);box-shadow:var(--brass-inlay);}
.image-tabs button:hover:not([aria-pressed=true]) {background:#3b2920;border-color:#b18b52;}
.detail-art .image-filmstrip {justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:8px;padding:10px 2px 12px;margin-top:9px;border-top:0;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#98794a #211711;scroll-padding-inline:2px;}
.image-filmstrip button {flex:0 0 126px;min-width:0;max-width:126px;height:76px;min-height:76px;padding:8px;gap:8px;}
.image-filmstrip button img {flex:none;width:29px;height:41px;}
.image-filmstrip button>span {display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.73rem;line-height:1.35;}
.photo-navigation {display:flex;align-items:center;gap:8px;min-width:0;}
.photo-navigation[hidden] {display:none;}
.photo-navigation label {display:block;flex:1;min-width:0;}
.photo-navigation select {width:100%;min-width:0;max-width:100%;height:44px;padding:8px;color:#decaa7;background:#1e1611;border:1px solid #80633f;border-radius:2px;text-overflow:ellipsis;font-size:.78rem;}
.photo-navigation button {display:grid;place-items:center;flex:none;width:44px;height:44px;padding:9px;border-color:#80633f;background:#211913;}
.photo-navigation button:disabled {opacity:.3;cursor:default;}
.gallery-navigation {margin-top:18px;padding-top:16px;border-top:1px solid #a483483d;}
.gallery-fallback {margin-top:18px;}
.gallery-fallback .image-fallback-links {max-height:200px;overflow:auto;justify-content:flex-start;padding:6px;}
.image-fallback-links {display:flex;justify-content:center;flex-wrap:wrap;gap:15px;font-size:.85rem;}
.detail-art .image-credit {margin:17px 0 0;font-size:.7rem;line-height:1.6;}
.studio-art-link {display:flex;align-items:center;justify-content:center;gap:11px;margin:17px 0 0;padding:13px 2px 0;border-top:1px solid #a483483d;color:#d4ba88;text-decoration:none;font-size:.78rem;}
.studio-art-link>span {display:flex;flex-direction:column;gap:3px;}
.studio-art-link small {color:#c3b398;font-size:.69rem;line-height:1.5;}
.studio-art-link>.ui-icon:first-child {width:23px;height:23px;}
.studio-art-link>.ui-icon:last-child {width:14px;height:14px;}
.studio-art-link:hover {color:#f1dbaf;}
.studio-art-link:hover>span {text-decoration:underline;text-underline-offset:3px;}
.detail-art .missing-cover {min-height:320px;border:0;background:none;}
.detail-copy>.facts {margin:0 0 25px;gap:0 24px;padding-top:3px;}
.detail-copy>.facts>div {padding:13px 0;border-bottom:1px solid #ae87552d;min-width:0;}
.facts dd {overflow-wrap:anywhere;}
.detail-copy>.facts dt {font-size:.63rem;letter-spacing:.11em;}
.detail-copy>.facts dd {font-size:.9rem;margin-top:5px;}
.detail-copy .source-description {border-top:0;padding-top:0;font-size:.88rem;line-height:1.85;}
.detail-copy .source-description h2 {font-size:1.35rem;color:#e6d6ba;margin:0 0 12px;}
.detail-copy .personal-note {margin:0 0 22px;line-height:1.8;}
.detail-copy .holdings-summary {padding:17px 19px;border-left:2px solid #8b6b403f;background:#16100d80;}
.detail-copy .holdings-summary h2 {font-size:1.12rem;margin-bottom:10px;}
.detail-copy .holdings-summary p {margin-bottom:0;color:#c8b79e;}
.detail-copy .technical {border-color:#97744555;}
.detail-copy .technical summary {min-height:30px;line-height:30px;color:#d5c29f;}
.detail-copy .source-links {gap:7px 18px;margin:20px 0 12px;}
.detail-copy .source-links a {display:inline-flex;align-items:center;min-height:36px;overflow-wrap:anywhere;}
.detail-actions {display:flex;align-items:center;flex-wrap:wrap;gap:14px 22px;margin-top:19px;}
.detail-permalink {gap:14px;min-height:68px;max-width:100%;padding:12px 25px;}
.detail-permalink>span {display:flex;flex-direction:column;gap:4px;min-width:0;}
.detail-permalink strong {font:1.12rem/1.2 Georgia,"Times New Roman",serif;}
.detail-permalink small {font-size:.67rem;line-height:1.4;color:#49351b;}
.detail-permalink>.ui-icon:first-child {width:24px;height:28px;}
.detail-permalink>.ui-icon:last-child {width:18px;height:18px;margin-left:3px;}
.detail-edit-link {display:inline-flex;align-items:center;min-height:44px;font-size:.8rem;color:#c9ae7f;}

/* Full artwork has its own quiet surface. Only an explicit inspection loads the full file. */
.image-dialog {width:min(1500px,97vw);height:94dvh;max-height:94dvh;padding:0;overflow:hidden;border:1px solid #a48350;background:radial-gradient(ellipse at 50% 38%,#28201b,#100d0b 75%);box-shadow:0 20px 100px #000d;}
.image-dialog[open] {display:flex;flex-direction:column;}
.viewer-tools {flex:none;justify-content:space-between;gap:20px;min-height:76px;padding:13px 22px;background:#1e1611;border-bottom:1px solid #8e6a3d66;}
.viewer-image-title {display:flex;flex-direction:column;gap:4px;min-width:0;}
.viewer-image-title strong {font:1.14rem Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#e9d8b9;}
.viewer-image-title>span {font-size:.72rem;color:#bca680;overflow-wrap:anywhere;}
.viewer-tools button {display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border-radius:50%;border-color:#957449;}
.image-stage {position:relative;flex:1;min-height:0;height:auto;width:100%;padding:24px;overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom;scrollbar-color:#8b6b40 #19120f;scrollbar-width:thin;cursor:zoom-in;}
.image-stage.is-zoomed {cursor:grab;}
.image-stage.is-dragging {cursor:grabbing;user-select:none;}
.image-stage:focus-visible {outline-offset:-4px;}
.image-stage img {display:block;max-width:none;max-height:none;flex-shrink:0;margin:auto;object-fit:contain;}
.image-stage img[hidden] {display:none;}
.image-status {margin:auto;text-align:center;color:#cbb893;font-size:.9rem;}
.image-status:not([hidden]) {display:flex;flex-direction:column;align-items:center;gap:15px;}
.viewer-controls {display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;flex:none;padding:12px 22px;background:#1b1410;border-top:1px solid #8e6a3d66;}
.viewer-image-switch,.zoom-controls {display:flex;align-items:center;gap:5px;}
.viewer-image-switch {flex:1 1 18rem;min-width:0;max-width:100%;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding-block:3px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#8b6b40 #19120f;}
.viewer-image-switch button {flex-shrink:0;max-width:16rem;overflow-wrap:anywhere;}
.viewer-image-switch[hidden] {display:none;}
.viewer-photo-navigation {flex:1 1 22rem;max-width:32rem;}
.viewer-controls button {display:inline-flex;justify-content:center;align-items:center;min-height:42px;min-width:42px;padding:8px 13px;font-size:.78rem;border-color:#685035;border-radius:2px;}
.viewer-controls button[aria-pressed=true] {background:var(--brass-face);border-color:var(--brass-rim);color:var(--brass-ink);box-shadow:var(--brass-inlay);}
.viewer-controls button:disabled {opacity:.4;cursor:default;}
.zoom-controls output {min-width:49px;text-align:center;font-size:.77rem;font-variant-numeric:tabular-nums;color:#d8c4a3;}
.viewer-controls>a {display:inline-flex;align-items:center;gap:7px;min-height:42px;font-size:.77rem;color:#c9ae7f;text-decoration:none;}
.viewer-controls>a:hover {text-decoration:underline;}
#inspection-help {flex:none;margin:0;padding:0 22px 12px;background:#1b1410;text-align:center;color:#b49c78;font-size:.68rem;}

@media(max-width:850px) {
 .deck-detail {grid-template-columns:minmax(220px,.9fr) minmax(0,1.1fr);gap:23px;padding:24px;}
 .detail-heading h1 {font-size:2rem;}
 .artwork-stage {height:340px;}
 .shadowbox-dialog .detail-art,.detail-page .detail-art {padding-inline:13px;}
 .image-tabs button {min-width:85px;padding:7px;gap:7px;}
}
@media(max-width:680px) {
 .shadowbox-dialog {width:96vw;border-width:8px;}
 .deck-dialog-toolbar {padding:7px 12px;gap:6px;min-height:59px;}
 .viewer-eyebrow {font-size:.58rem;letter-spacing:.11em;}
 .deck-stepper {gap:4px;}
 .deck-stepper [data-deck-position] {font-size:.72rem;min-width:45px;}
 .deck-detail {grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:24px;padding:24px 20px;}
 .detail-heading {grid-column:1;grid-row:1;padding:0;}
 .detail-heading h1 {font-size:2rem;text-wrap:pretty;}
 .detail-heading .eyebrow {margin-bottom:10px;font-size:.62rem;}
 .detail-art {grid-column:1;grid-row:2;position:static;}
 .detail-copy {grid-column:1;grid-row:3;}
 .gallery-heading {margin-bottom:14px;}
 .shadowbox-dialog .detail-main-image,.detail-page .detail-main-image {max-width:none;gap:13px;}
 .artwork-stage {height:clamp(230px,35dvh,330px);}
 .detail-art .image-tabs {margin-top:13px;padding-top:13px;}
 .image-tabs button {min-width:105px;min-height:60px;padding:7px 11px;}
 .detail-copy>.facts {gap:0 20px;}
 .detail-copy>.facts dd {font-size:.95rem;}
 .detail-copy .source-description {font-size:.95rem;}
 .image-dialog {width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border-width:0;margin:0;}
 .viewer-tools {padding:12px 15px;min-height:73px;}
 .viewer-image-title strong {font-size:1.1rem;}
 .image-stage {padding:16px;}
 .viewer-controls {padding:10px 14px;gap:9px;}
 .viewer-photo-navigation {flex-basis:100%;max-width:none;}
 .viewer-image-switch {flex:1;}
 .zoom-controls {order:3;width:100%;justify-content:center;border-top:1px solid #71533159;padding-top:9px;}
 .viewer-controls button {min-height:44px;}
 #inspection-help {font-size:.7rem;padding:0 18px max(12px,env(safe-area-inset-bottom));}
}
@media(max-width:350px) {
 .deck-dialog-toolbar {grid-template-columns:1fr auto;padding-inline:8px;}
 .deck-dialog-toolbar .viewer-eyebrow {display:none;}
 .deck-dialog-toolbar .dialog-close {grid-column:2;}
 .deck-stepper {justify-self:start;}
 .deck-detail {padding:20px 14px;}
 .detail-heading h1 {font-size:1.85rem;}
 .image-tabs button {min-width:90px;}
 .detail-permalink {width:100%;padding-inline:18px;gap:10px;}
 .detail-permalink>.ui-icon:first-child {width:20px;}
 .detail-permalink>.ui-icon:last-child {margin-left:auto;}
 .viewer-controls {padding-inline:10px;}
}
@media(prefers-reduced-motion:reduce) {
 #deck-dialog-content,.inspect-artwork {transition:none;}
}
@media(prefers-reduced-motion:no-preference) {
 .shadowbox-dialog[open]::backdrop {animation:cabinet-dim 300ms ease-out both;}
}
@keyframes cabinet-dim {from{opacity:0;}to{opacity:1;}}
