/* AltarVision Gallery Uploader - Frontend */
.avgu-box{padding:14px;border-radius:14px;background:#fff;border:1px solid #eee}
.avgu-error{border-color:#ffb4b4;background:#fff7f7}

.avgu-upload-wrap{max-width:720px;margin:20px auto}
.avgu-card{padding:18px;border-radius:18px;border:1px solid rgba(0,0,0,.08);background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.06)}
.avgu-title{margin:0 0 6px;font-size:20px}
.avgu-subtitle{margin:0 0 14px;opacity:.75}
.avgu-file{display:block;margin:12px 0}
.avgu-btn{border:none;border-radius:14px;padding:12px 16px;font-weight:700;cursor:pointer}
.avgu-btn-primary{background:#111;color:#fff}
.avgu-status{margin-top:12px;font-weight:600}
.avgu-preview{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}
.avgu-preview img{width:100%;height:90px;object-fit:cover;border-radius:14px}

/* Galleries */
.avgu-gallery{margin:18px auto;max-width:1100px}
.avgu-gallery a{display:block;text-decoration:none}
.avgu-gallery img{width:100%;display:block;border-radius:18px;transition:transform .25s ease, box-shadow .25s ease}
.avgu-item:hover img{transform:translateY(-3px) scale(1.01);box-shadow:0 18px 40px rgba(0,0,0,.15)}

/* Grid */
.avgu-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media(max-width:1024px){.avgu-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.avgu-grid{grid-template-columns:repeat(2,1fr)}}

/* Masonry */
.avgu-masonry{column-count:4;column-gap:14px}
.avgu-masonry .avgu-item{break-inside:avoid;margin-bottom:14px}
@media(max-width:1024px){.avgu-masonry{column-count:3}}
@media(max-width:700px){.avgu-masonry{column-count:2}}

/* Glossy */
.avgu-glossy{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:1024px){.avgu-glossy{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.avgu-glossy{grid-template-columns:repeat(1,1fr)}}
.avgu-glossy-card{position:relative;border-radius:22px;overflow:hidden}
.avgu-gloss{position:absolute;inset:-40%;background:linear-gradient(120deg, rgba(255,255,255,0) 40%, rgba(255,255,255,.35) 50%, rgba(255,255,255,0) 60%);transform:rotate(12deg);opacity:0;transition:opacity .25s ease}
.avgu-item:hover .avgu-gloss{opacity:1;animation:avguGloss 1.1s ease}
@keyframes avguGloss{0%{transform:translateX(-40%) rotate(12deg)}100%{transform:translateX(40%) rotate(12deg)}}

/* Slider */
.avgu-slider{position:relative;max-width:1100px;margin:18px auto;border-radius:22px;overflow:hidden}
.avgu-track{display:flex;overflow:auto;scroll-snap-type:x mandatory;gap:14px;padding:14px}
.avgu-slide{min-width:80%;scroll-snap-align:center}
.avgu-slide img{border-radius:22px}
.avgu-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:10;border:none;width:44px;height:44px;border-radius:999px;background:rgba(0,0,0,.55);color:#fff;font-size:22px;cursor:pointer}
.avgu-prev{left:12px}
.avgu-next{right:12px}
@media(max-width:700px){.avgu-slide{min-width:92%}}
