.build-card-zoom{display:block;width:100%;height:100%;min-height:0;border:0;padding:0;background:transparent;cursor:zoom-in}
.build-card-zoom img{display:block;width:100%;height:100%;object-fit:contain}
.build-card-zoom:focus-visible{outline-offset:-4px}
dialog.photo-viewer{position:fixed;inset:0;margin:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;border:0;padding:0;background:var(--paper);color:var(--ink);overflow:hidden}
dialog.photo-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto}
.photo-viewer-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 24px;border-bottom:1px solid var(--line)}
.photo-viewer-head h2{font-size:calc(22px * var(--type-scale));margin:0 0 5px;letter-spacing:-.6px}
.photo-viewer-head span{font:calc(9px * var(--type-scale))/1.5 var(--mono);color:var(--muted)}
.photo-viewer-head button,.photo-viewer-controls button{min-height:44px;min-width:44px}
.photo-viewer-stage{position:relative;overflow:hidden;min-width:0;min-height:0;background:#e7e8de;touch-action:none;overscroll-behavior:contain;cursor:zoom-in}
.photo-viewer-stage.is-zoomed{cursor:grab}.photo-viewer-stage.is-zoomed:active{cursor:grabbing}
.photo-viewer-stage>img{position:absolute;max-width:none;max-height:none;user-select:none;-webkit-user-select:none;pointer-events:none}
.photo-viewer-stage>img[hidden]{display:none}.photo-viewer-loading{position:absolute;inset:0;display:grid;place-items:center;padding:24px;font-size:calc(13px * var(--type-scale))}.photo-viewer-loading[hidden]{display:none}
.photo-viewer-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:12px 24px}
.photo-viewer-zoom{display:flex;align-items:center;gap:8px}.photo-viewer-zoom output{font:calc(10px * var(--type-scale))/1 var(--mono);min-width:48px;text-align:center}
#photo-viewer-help{margin:0;padding:0 24px 14px;text-align:center;font-size:calc(10px * var(--type-scale));line-height:1.5}
@media(max-width:600px){.photo-viewer-head{padding:12px 14px}.photo-viewer-head h2{font-size:calc(19px * var(--type-scale))}.photo-viewer-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 14px}.photo-viewer-zoom{grid-row:1;grid-column:1/-1;justify-content:center}.photo-viewer-controls>[data-prev]{grid-row:2}.photo-viewer-controls>[data-next]{grid-row:2}#photo-viewer-help{padding:0 14px 12px;font-size:calc(9px * var(--type-scale))}}
@media(prefers-reduced-motion:reduce){.photo-viewer *{scroll-behavior:auto;transition:none;animation:none}}
