/* Shared image controls only; existing page typography and layout stay in place. */
.request-card-media{flex:0 0 auto;height:auto;aspect-ratio:4/3}
@media(max-width:760px){.request-card-media--placeholder{aspect-ratio:auto}}
.media-editor{margin:1.5rem 0;min-width:0}.media-editor>p{margin:.65rem 0}.media-remaining{font-weight:600}.media-file-label{display:block;font-weight:600}.media-file-label input{display:block;width:100%;max-width:100%;margin-top:.6rem;min-height:44px;font:inherit}.media-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.media-edit-card{margin:0;padding:.75rem;border:1px solid var(--line,#dce3da);border-radius:16px;min-width:0}.media-edit-card>img,.media-placeholder{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:10px;background:var(--cream,#f6f7f0)}.media-placeholder{display:grid;place-items:center}.media-edit-card figcaption{margin-top:.6rem;font-weight:600}.media-image-status,.media-upload-status,.media-upload-error{font-size:.9rem;overflow-wrap:anywhere}.media-actions{display:flex;flex-wrap:wrap;gap:.4rem}.media-actions button,.media-upload-error button,.media-gallery-controls button{min-height:44px;padding:.5rem .7rem;font:inherit;font-size:.875rem;border:1px solid var(--line,#dce3da);border-radius:9px;background:white;color:inherit;cursor:pointer}.media-actions button:disabled{opacity:.55;cursor:default}.media-actions [data-action=cover],.media-actions [data-action=delete]{flex-basis:100%}.media-actions button:focus-visible,.media-gallery button:focus-visible{outline:3px solid var(--teal,#075962);outline-offset:2px}.media-upload-status{margin-top:.75rem}.media-upload-error{border-left:3px solid var(--orange,#f39129);padding-left:.75rem;margin-top:.75rem}.media-card-cover{position:relative;margin-bottom:1rem;aspect-ratio:4/3;overflow:hidden;border-radius:14px}.media-card-cover>img{display:block;width:100%;height:100%;object-fit:cover}.media-count{position:absolute;right:.6rem;bottom:.6rem;border-radius:8px;background:#fff;padding:.3rem .55rem;font-size:.8rem}.media-gallery{margin-top:1.5rem;min-width:0}.media-main{display:block;border-radius:16px;overflow:hidden;background:var(--cream,#f6f7f0)}.media-main img{display:block;width:100%;max-height:620px;object-fit:contain}.media-thumbnails{display:flex;gap:.6rem;overflow-x:auto;padding:.75rem .2rem;scroll-snap-type:x proximity}.media-thumbnails button{flex:0 0 96px;padding:3px;border:2px solid transparent;border-radius:10px;background:transparent;cursor:pointer;scroll-snap-align:start}.media-thumbnails button[aria-pressed=true]{border-color:var(--teal,#075962)}.media-thumbnails img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:6px}.media-gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.media-lightbox{max-width:min(1100px,96vw);max-height:94dvh;padding:1rem;border:0;border-radius:18px;background:#fff;color:inherit}.media-lightbox::backdrop{background:rgba(5,55,62,.75)}.media-avatar{object-fit:contain!important;background:var(--cream,#f6f7f0)}.request-card>.request-cover{aspect-ratio:4/3;height:auto;object-fit:cover}
@media(max-width:600px){.media-editor-grid{grid-template-columns:minmax(0,1fr)}.media-edit-card{display:grid;grid-template-columns:100px minmax(0,1fr);gap:.5rem .75rem;align-items:start}.media-edit-card>img,.media-placeholder{grid-row:1/3}.media-edit-card figcaption,.media-image-status{margin:0}.media-actions{grid-column:1/-1}.media-actions button{flex:1 1 42%;min-width:0}.media-actions [data-action=cover],.media-actions [data-action=delete]{flex-basis:42%}.media-main img{max-height:450px}.media-thumbnails button{flex-basis:80px}.media-gallery-controls{font-size:.9rem}}

/* Image links retain the existing card surface and independent actions. */
.card-image-link{color:inherit;text-decoration:none;cursor:pointer}
.card-image-link:focus-visible{outline:3px solid var(--teal,#075962);outline-offset:3px}
.helper-card>.card-image-link,.request-card-media.card-image-link{display:block}
.helper-top>.card-image-link{display:flex;flex:none;border-radius:50%}
.request-card-media--placeholder.card-image-link{display:flex}

/* Content-fitted shared lightbox. Small previews never load master images. */
.media-lightbox{box-sizing:border-box;overflow:auto;max-width:calc(100vw - 32px);box-shadow:var(--shadow);transition:width .18s ease}
.media-lightbox-header{display:flex;justify-content:flex-end;height:44px;margin-bottom:4px}
.media-lightbox button{font:inherit;color:inherit;background:#fff;border:1px solid var(--line,#dce3da);border-radius:9px;cursor:pointer}
.media-lightbox [data-close]{display:grid;place-items:center;width:44px;height:44px;padding:0;border-color:transparent;font-size:26px;line-height:1}
.media-lightbox-view{display:flex;align-items:center;gap:4px;min-width:0}
.media-lightbox-arrow{flex:0 0 44px;width:44px;height:44px;padding:0;font-size:28px!important;line-height:1}
.media-lightbox-stage{position:relative;display:grid;place-items:center;flex:1;min-width:0;touch-action:pan-y pinch-zoom}
.media-lightbox-stage img{display:block;width:100%;height:100%;min-height:0;object-fit:contain}
.media-lightbox-stage img:not([src]){visibility:hidden}
.media-lightbox-stage[aria-busy=true] img{opacity:.35}
.media-lightbox-stage [role=status]{position:absolute;inset:auto .5rem;margin:0;text-align:center;background:#fff;border-radius:8px;padding:.5rem;overflow-wrap:anywhere;font-size:.875rem}
.media-lightbox-stage [role=status]:empty{display:none}
.media-lightbox-position{margin:8px 0!important;text-align:center;font-size:.875rem;line-height:20px}
.media-lightbox-thumbnails{display:flex;gap:6px;overflow-x:auto;padding:3px;max-width:100%;scrollbar-width:thin}
.media-lightbox-thumbnails button{flex:0 0 70px;padding:2px;border:2px solid transparent}
.media-lightbox-thumbnails button[aria-pressed=true]{border-color:var(--teal,#075962)}
.media-lightbox-thumbnails img{display:block;width:62px;height:46px;object-fit:cover;border-radius:5px}
.media-lightbox button:focus-visible{outline:3px solid var(--teal,#075962);outline-offset:1px}
@media(max-width:600px){.media-lightbox{padding:12px}.media-lightbox-thumbnails,.media-lightbox-arrow{display:none}}
@media(prefers-reduced-motion:reduce){.media-lightbox{transition:none}}
