/* Artwork owns the space; controls remain reachable at every zoom level. */
.viewer.artwork-viewer[open]{display:block;inset:0;width:100%;height:100dvh;max-width:100%;max-height:100dvh;margin:0;padding:calc(72px + env(safe-area-inset-top)) 16px calc(14px + env(safe-area-inset-bottom));border:0;border-radius:0;overflow:hidden;background:transparent;color:#f7f3fa;font-family:Nunito,sans-serif;box-sizing:border-box}
.viewer.artwork-viewer::backdrop{background:#000e}
.viewer.artwork-viewer[open]>.viewer-shell{display:grid;grid-template-rows:auto minmax(0,1fr) auto;width:min(100%,1600px);height:100%;max-height:none;min-height:0;margin:0 auto;padding:0;overflow:hidden;border:1px solid #44344e;border-radius:18px;background:#0a080c;box-sizing:border-box;box-shadow:0 20px 90px #0008}
.artwork-viewer .viewer-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding:14px 18px;border-bottom:1px solid #2d2533}
.artwork-viewer .viewer-heading>div{min-width:0}
.artwork-viewer .viewer-title{margin:0;padding:0;font-size:1.125rem;font-weight:800;line-height:1.3;text-align:left;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.artwork-category{margin:4px 0 0;color:#aa9bb5;font-size:.875rem}
.viewer.artwork-viewer button{display:flex;align-items:center;justify-content:center;gap:7px;flex:0 0 auto;min-width:44px;min-height:44px;margin:0;padding:8px 12px;border:1px solid #44334f;border-radius:11px;background:#17111d;color:#e4d1fa;font:800 .875rem/1.2 Nunito,sans-serif;cursor:pointer}
.viewer.artwork-viewer button:hover:not(:disabled){border-color:#b08ce7;background:#30213e}
.viewer.artwork-viewer button:focus-visible,.artwork-stage:focus-visible{outline:2px solid #d6b5ff;outline-offset:-3px}
.viewer.artwork-viewer button:disabled{opacity:.35;cursor:default}
.viewer.artwork-viewer button[hidden]{display:none}
.viewer.artwork-viewer .viewer-close{min-width:44px;min-height:44px;border:0;background:transparent;color:#caa6f2;font-size:.875rem}
.artwork-viewer svg{width:19px;height:19px;flex:0 0 19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.artwork-stage{position:relative;min-width:0;min-height:0;overflow:hidden;isolation:isolate;touch-action:none;background:#050405;user-select:none;-webkit-user-select:none}
.artwork-stage.is-zoomed{cursor:grab}.artwork-stage.is-dragging{cursor:grabbing}
.artwork-viewer .artwork-image{position:absolute;z-index:0;top:50%;left:50%;display:block;max-width:none;max-height:none;width:auto;height:auto;object-fit:contain;transform-origin:center;will-change:transform;border:0;border-radius:0;box-shadow:none;pointer-events:none;-webkit-user-drag:none;user-select:none}
.artwork-viewer .artwork-image[hidden]{display:none}
.artwork-stage-overlay{position:absolute;z-index:2;left:16px;bottom:14px;right:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none}
.artwork-status,.artwork-help{margin:0;padding:6px 9px;border-radius:7px;background:#0a080cd9;color:#c0b1cc;font-size:.875rem;line-height:1.3;pointer-events:none}
.artwork-status:empty{display:none}.artwork-stage.is-zoomed .artwork-help,.artwork-stage[aria-busy=true] .artwork-help{visibility:hidden}
.artwork-viewer [data-art-retry]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
.artwork-footer{padding:11px 16px;background:#0f0b13;border-top:1px solid #2d2533;min-width:0}
.artwork-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.artwork-browse,.artwork-zoom,.artwork-actions{display:flex;align-items:center;gap:6px}
.viewer.artwork-viewer .viewer-prev,.viewer.artwork-viewer .viewer-next{position:static;transform:none;width:44px;height:44px;padding:0}
.artwork-position{min-width:65px;text-align:center;font-size:.875rem;color:#c2b3ce;font-variant-numeric:tabular-nums}
.artwork-viewer .viewer-prev svg{transform:rotate(180deg)}
.artwork-viewer [data-art-fit]{min-width:70px;font-variant-numeric:tabular-nums}
.artwork-description{max-height:16dvh;overflow:auto;white-space:pre-line;margin:12px 0 0;padding:12px 0 2px;border-top:1px solid #302537;color:#d0c2dc;font-size:1rem;line-height:1.55}
.artwork-description[hidden]{display:none}.viewer-feedback{margin:0;color:#ddc1fa;font-size:.875rem}.viewer-feedback:not(:empty){margin-top:8px}
.artwork-copy-link{width:100%;margin-top:8px;padding:8px;border:1px solid #67527b;border-radius:8px;background:#1c1424;color:#fff;font:inherit}.artwork-copy-link[hidden]{display:none}
.artwork-help .touch-help{display:none}
.viewer.artwork-viewer.is-fullscreen[open]{padding:12px}.artwork-viewer.is-fullscreen .viewer-header-clone{display:none}
@media(pointer:coarse){.artwork-help .touch-help{display:inline}.artwork-help .mouse-help{display:none}}
@media(max-width:650px){
  .viewer.artwork-viewer[open]{padding:calc(64px + env(safe-area-inset-top)) 5px calc(5px + env(safe-area-inset-bottom))}
  .viewer.artwork-viewer[open]>.viewer-shell{border-radius:13px}
  .artwork-viewer .viewer-heading{gap:10px;padding:9px 12px}.artwork-viewer .viewer-title{font-size:1rem}.artwork-category{margin-top:2px}
  .artwork-viewer .viewer-close span{display:none}.artwork-footer{padding:8px 10px}
  .artwork-toolbar{gap:8px}.artwork-actions{width:100%;justify-content:flex-end}.artwork-position{min-width:47px}
  .viewer.artwork-viewer button{padding:8px;min-width:44px}.artwork-viewer [data-art-fit]{min-width:60px}
  .artwork-stage-overlay{left:8px;right:8px;bottom:8px;flex-wrap:wrap;gap:4px}.artwork-help{font-size:.8125rem;padding:5px 7px}
  .artwork-description{max-height:13dvh}.artwork-viewer [data-art-info]{margin-right:auto}
}
@media(max-width:360px){.artwork-toolbar{column-gap:4px}.artwork-browse,.artwork-zoom{gap:3px}.artwork-position{min-width:39px}.artwork-viewer [data-art-fit]{min-width:52px}.artwork-footer{padding-inline:6px}}
@media(max-height:500px){.viewer.artwork-viewer[open]{padding:6px}.artwork-viewer .viewer-header-clone{display:none}.artwork-viewer .viewer-heading{padding-block:5px}.artwork-category,.artwork-help{display:none}.artwork-footer{padding-block:5px}.artwork-viewer .artwork-actions{width:auto}.artwork-description{max-height:15dvh}}
@media(prefers-reduced-motion:reduce){.artwork-viewer *, .viewer.artwork-viewer[open]>.viewer-shell{animation:none!important;transition:none!important}}
