/* Supplement the existing photography styles without changing their layout tokens. */
.gallery-angle-shortcuts button,.open-gallery{min-height:44px}
.open-gallery>span{display:inline-flex;align-items:center;gap:9px}.open-gallery svg{width:19px;height:19px}
.photo-lightbox [hidden]{display:none!important}
dialog.photo-dialog{overscroll-behavior:contain;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}
.photo-dialog #close{width:44px;min-width:44px;height:44px;min-height:44px}
.photo-lightbox button:focus-visible,.photo-lightbox a:focus-visible,.lightbox-viewport:focus-visible{outline:2px solid var(--accent,#90c5ff);outline-offset:3px}
.lightbox-heading{min-height:44px;padding-right:32px}
.lightbox-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0 0 10px;flex-wrap:wrap}
.lightbox-toolbar button{min-width:44px;min-height:44px;display:inline-flex;gap:8px;align-items:center;justify-content:center;background:var(--surface,#141b25);border:1px solid var(--line,#30363c);border-radius:6px;padding:8px 10px;color:var(--white,#fff);font:inherit;font-size:12px}
.lightbox-toolbar button:disabled{opacity:.4}.lightbox-toolbar svg{width:20px;height:20px;flex:none}
.lightbox-toolbar output{min-width:46px;text-align:center;font-size:12px;font-variant-numeric:tabular-nums}
.lightbox-viewport{position:relative;overflow:hidden;touch-action:pan-y pinch-zoom;min-width:0;outline-offset:-4px!important}
.lightbox-viewport .lightbox-image{transform-origin:center;will-change:transform;user-select:none;-webkit-user-select:none;transition:none!important}
.lightbox-viewport.is-zoomed{cursor:grab;touch-action:none}.lightbox-viewport.is-zoomed:active{cursor:grabbing}
.photo-lightbox .lightbox-stage>.lightbox-previous,.photo-lightbox .lightbox-stage>.lightbox-next{width:44px;height:44px;min-width:44px;min-height:44px;display:grid;place-items:center;z-index:2;padding:10px}
.lightbox-stage>button svg{width:22px;height:22px;transition:transform .15s ease}.lightbox-stage>button:active svg{transform:scale(.92)}
.lightbox-unavailable{min-height:40dvh;display:grid;place-items:center;padding:35px 55px;text-align:center;color:#19212c}
.photo-lightbox .lightbox-footer{font-size:12px;gap:16px;flex-wrap:wrap}.photo-lightbox .lightbox-footer p{font-size:12px;opacity:.85;overflow-wrap:anywhere}
.lightbox-credit{min-width:0;max-width:480px}.lightbox-credit>p{margin:0 0 5px}.lightbox-credit a{display:inline-flex;align-items:center;gap:5px;min-height:44px;margin-right:12px;color:var(--blue,#90c5ff);text-decoration:underline;text-underline-offset:3px}
.lightbox-credit svg{width:16px;height:16px;flex:none}.lightbox-credit strong{font-size:inherit}
.photo-lightbox .lightbox-thumbnails{position:relative;overscroll-behavior-x:contain;scrollbar-width:thin}.photo-lightbox .lightbox-thumbnails button{min-height:88px;min-width:90px;scroll-margin-inline:10px}
.photo-lightbox .lightbox-hint{font-size:11px;line-height:1.6;opacity:.75}
@media(max-width:700px){dialog.photo-dialog{max-height:calc(100dvh - 16px);width:calc(100vw - 16px);padding-top:18px}.lightbox-heading{padding-right:36px;gap:8px}.lightbox-heading h2{overflow-wrap:anywhere}.lightbox-toolbar{justify-content:flex-start;gap:5px}.photo-lightbox .lightbox-previous{left:5px}.photo-lightbox .lightbox-next{right:5px}.photo-lightbox .lightbox-footer{display:block}.lightbox-credit{margin-top:10px}.photo-lightbox .lightbox-thumbnails span{font-size:10px}.lightbox-viewport .lightbox-image{height:clamp(210px,42dvh,430px)}}
@media(max-width:359px){.lightbox-toolbar button{padding-inline:8px}.lightbox-toolbar button[data-lightbox-control=reset] span{font-size:10px}.lightbox-toolbar output{min-width:40px}.photo-lightbox .lightbox-footer p{font-size:11px}}
@media(prefers-reduced-motion:reduce){.photo-lightbox *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
