.aig-gallery{display:grid;grid-template-columns:repeat(var(--aig-columns,3),minmax(0,1fr));gap:var(--aig-gap,16px)}
.aig-gallery .aig-item{box-sizing:border-box;display:block;overflow:hidden;aspect-ratio:1;background:#eee;border:var(--aig-border-width,0px) solid var(--aig-border-color,#ddd);border-radius:var(--aig-border-radius,4px)}
.aig-gallery .aig-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s}
.aig-gallery .aig-item:hover img{transform:scale(1.025)}
.aig-gallery .aig-item:focus-visible{outline:3px solid #2271b1;outline-offset:4px}
.aig-modal{box-sizing:border-box;position:fixed;inset:0;width:96vw;height:94vh;height:94dvh;max-width:1800px;max-height:100dvh;padding:0;border:0;border-radius:8px;background:#151515;color:#fff;overflow:hidden;margin:auto;font-family:system-ui,sans-serif}
.aig-modal[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto 90px}
.aig-modal::backdrop{background:rgb(0 0 0 / .88)}
.aig-modal .aig-modal-toolbar{display:flex;align-items:center;gap:8px;padding:12px;z-index:2;background:#151515}
.aig-modal .aig-status{margin-right:auto;font-size:14px}
.aig-modal .aig-control{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:6px 12px;border:1px solid #777;border-radius:4px;background:#292929;color:#fff;font:inherit;font-size:22px;line-height:1;cursor:pointer;box-shadow:none;text-decoration:none}
.aig-modal .aig-control:hover{background:#444}.aig-modal .aig-control:disabled{opacity:.4;cursor:default}
.aig-modal .aig-control:focus-visible{outline:3px solid #80caff;outline-offset:2px}
.aig-modal .aig-stage{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:0;touch-action:none}
.aig-modal .aig-stage.is-zoomed{cursor:grab}.aig-modal .aig-stage.is-panning{cursor:grabbing}
.aig-modal .aig-modal-image{display:block;flex:none;max-width:none;max-height:none;object-fit:contain;user-select:none;pointer-events:none}
.aig-modal .aig-image-error{position:absolute;padding:20px;text-align:center}
.aig-modal .aig-control.aig-previous,.aig-modal .aig-control.aig-next{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:44px;height:44px;padding:0;background:rgb(30 30 30 / .85)}
.aig-modal .aig-chevron{display:block;box-sizing:border-box;width:12px;height:12px;border:solid currentColor;border-width:0 2px 2px 0;pointer-events:none}
.aig-modal .aig-previous .aig-chevron{transform:translateX(3px) rotate(135deg)}
.aig-modal .aig-next .aig-chevron{transform:translateX(-3px) rotate(-45deg)}
.aig-modal .aig-previous{left:12px}.aig-modal .aig-next{right:12px}
.aig-modal .aig-modal-caption{grid-row:3;box-sizing:border-box;max-height:20vh;overflow:auto;padding:10px 24px;color:#fff;background:#151515;text-align:center;font-size:15px;line-height:1.5;white-space:pre-line;overflow-wrap:anywhere}
.aig-modal .aig-thumbnails{grid-row:4;display:flex;align-items:center;gap:8px;padding:10px 12px;overflow-x:auto;background:#151515;z-index:2}
.aig-modal .aig-thumbnails button{flex:none;width:64px;height:64px;padding:0;overflow:hidden;border:var(--aig-border-width,0px) solid var(--aig-border-color,#ddd);border-radius:var(--aig-border-radius,4px)}
.aig-modal .aig-thumbnails button[aria-current=true]{outline:2px solid #fff;outline-offset:2px}
.aig-modal .aig-thumbnails button:focus-visible{outline:3px solid #80caff;outline-offset:2px}
.aig-modal .aig-thumbnails img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}
.aig-modal [hidden]{display:none!important}
@media(max-width:780px){.aig-gallery{grid-template-columns:repeat(min(var(--aig-columns,3),2),minmax(0,1fr))}}
@media(max-width:480px){.aig-gallery{grid-template-columns:1fr}.aig-modal{width:100vw;height:100dvh;border-radius:0}.aig-modal .aig-modal-toolbar{gap:4px;padding:8px}.aig-modal .aig-control{padding:6px 9px}.aig-modal .aig-status{font-size:12px}}
@media(prefers-reduced-motion:reduce){.aig-gallery .aig-item img{transition:none}}
