.community-index #view-gallery {
    --gallery-cyan: #46dff1;
    --gallery-violet: #9670ff;
    --gallery-pink: #f25aa9;
    --gallery-line: rgba(192,201,232,.13);
}

.community-index #view-gallery .gallery-public-hero {
    position: relative;
    isolation: isolate;
    min-height: 230px;
    margin-bottom: 14px;
    padding: clamp(30px,5vw,54px);
    overflow: hidden;
    border: 1px solid rgba(70,223,241,.17);
    border-radius: 28px;
    background:
        radial-gradient(circle at 82% 24%, rgba(242,90,169,.18), transparent 25%),
        linear-gradient(112deg, rgba(33,19,67,.96), rgba(17,20,38,.97) 56%, rgba(8,48,61,.9));
}
.community-index #view-gallery .gallery-public-hero::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 32px;
    right: clamp(80px,12vw,180px);
    width: 190px;
    height: 145px;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 20px;
    background: linear-gradient(135deg, rgba(150,112,255,.14), rgba(70,223,241,.07));
    transform: rotate(7deg);
    box-shadow: -34px 28px 0 -1px rgba(255,255,255,.025), -34px 28px 0 0 rgba(255,255,255,.08);
}
.community-index #view-gallery .gallery-public-hero::after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    opacity: .3;
    background-image: radial-gradient(circle, rgba(255,255,255,.18) 1px, transparent 1px);
    background-size: 25px 25px;
    mask-image: linear-gradient(90deg, transparent 35%, #000);
}
.community-index #view-gallery .gallery-public-hero > div { max-width: 820px; }
.community-index #view-gallery .gallery-public-hero h1 { max-width: 780px; margin-block: 9px; font-size: clamp(2.6rem,6vw,5.5rem); line-height: .9; letter-spacing: -.065em; }
.community-index #view-gallery .gallery-public-hero p { max-width: 650px; color: #aeb5ca; font-size: clamp(.95rem,1.5vw,1.1rem); }
.community-index #view-gallery .gallery-public-hero .icon-button { align-self: flex-start; border-color: rgba(255,255,255,.16); background: rgba(8,10,20,.48); backdrop-filter: blur(12px); }

.community-index #view-gallery .gallery-public-tools { position: sticky; z-index: 7; top: 78px; grid-template-columns: minmax(260px,1fr) auto auto; margin-bottom: 16px; padding: 8px; border-color: var(--gallery-line); border-radius: 16px; background: rgba(15,18,31,.88); backdrop-filter: blur(17px); }
.community-index #view-gallery .gallery-public-search input,
.community-index #view-gallery .gallery-public-sort select { min-height: 46px; }
.community-index #view-gallery .gallery-public-count { color: #a8eef7; }

.community-index #view-gallery .gallery-album-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; }
.community-index #view-gallery .gallery-album-card { display: flex; min-width: 0; flex-direction: column; border-radius: 20px; background: linear-gradient(145deg,rgba(255,255,255,.052),rgba(255,255,255,.015)),#121524; }
.community-index #view-gallery .gallery-album-card.is-featured { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(420px,1.25fr) minmax(0,.75fr); min-height: 420px; border-color: rgba(70,223,241,.28); }
.community-index #view-gallery .gallery-album-card .event-card-cover { aspect-ratio: 16/10; }
.community-index #view-gallery .gallery-album-card.is-featured .event-card-cover { height: 100%; min-height: 420px; aspect-ratio: auto; }
.community-index #view-gallery .gallery-album-card .event-card-cover::after { height: 60%; background: linear-gradient(transparent,rgba(4,6,15,.58)); }
.community-index #view-gallery .gallery-album-card .event-card-cover > img { padding: 0; object-fit: cover; }
.community-index #view-gallery .gallery-album-card .event-card-body { display: flex; flex: 1; flex-direction: column; padding: 21px; }
.community-index #view-gallery .gallery-album-card.is-featured .event-card-body { justify-content: center; padding: clamp(28px,4vw,48px); }
.community-index #view-gallery .gallery-album-card h2 { margin: 10px 0 8px; font-size: 1.35rem; }
.community-index #view-gallery .gallery-album-card.is-featured h2 { font-size: clamp(2.1rem,4vw,4rem); line-height: .92; }
.community-index #view-gallery .gallery-album-card.is-featured p { -webkit-line-clamp: 4; font-size: .9rem; }
.community-index #view-gallery .gallery-album-card footer { margin-top: auto; }
.community-index #view-gallery .gallery-album-card footer > span { display: grid; min-width: 0; }
.community-index #view-gallery .gallery-album-card footer b,
.community-index #view-gallery .gallery-album-card footer small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.community-index #view-gallery .gallery-album-card footer b { color: #919ab2; font-weight: 700; }
.community-index #view-gallery .gallery-album-card footer small { margin-top: 3px; color: #687188; }
.community-index #view-gallery .gallery-album-index { position: absolute; z-index: 2; top: 13px; left: 14px; color: rgba(255,255,255,.76); font-size: .66rem; font-weight: 900; letter-spacing: .1em; text-shadow: 0 2px 10px rgba(0,0,0,.45); }
.community-index #view-gallery .gallery-album-card.is-featured .gallery-album-index { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid rgba(255,255,255,.2); border-radius: 12px; background: rgba(5,7,16,.58); backdrop-filter: blur(10px); }

.community-index #albumModal .event-article { padding-bottom: 20px; }
.community-index #albumModal .event-article-header { padding-top: 28px; }
.community-index #albumModal .event-gallery { margin-top: 25px; }
.community-index #albumModal .news-gallery-heading { position: sticky; z-index: 4; top: 0; padding: 13px 0; background: rgba(15,18,31,.94); backdrop-filter: blur(14px); }
.community-index #albumModal .event-gallery-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; }
.community-index #albumModal .event-gallery-grid button { overflow: hidden; border-radius: 12px; }
.community-index #albumModal .event-gallery-grid img { transition: transform .35s cubic-bezier(.16,1,.3,1); }
.community-index #albumModal .event-gallery-grid button:hover img { transform: scale(1.045); }

@media(max-width:980px){
    .community-index #view-gallery .gallery-album-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .community-index #view-gallery .gallery-album-card.is-featured { grid-template-columns: minmax(300px,1fr) minmax(0,.8fr); }
    .community-index #albumModal .event-gallery-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media(max-width:700px){
    .community-index #view-gallery .gallery-public-hero { min-height: 0; padding: 25px 20px; border-radius: 22px; }
    .community-index #view-gallery .gallery-public-hero::before { display: none; }
    .community-index #view-gallery .gallery-public-hero h1 { font-size: clamp(2.35rem,12vw,3.6rem); }
    .community-index #view-gallery .gallery-public-tools { position: static; grid-template-columns: minmax(0,1fr) auto; }
    .community-index #view-gallery .gallery-album-grid { grid-template-columns: 1fr; }
    .community-index #view-gallery .gallery-album-card.is-featured { grid-column: auto; display: flex; min-height: 0; }
    .community-index #view-gallery .gallery-album-card.is-featured .event-card-cover { height: auto; min-height: 0; aspect-ratio: 16/10; }
    .community-index #view-gallery .gallery-album-card.is-featured .event-card-body { padding: 21px; }
    .community-index #view-gallery .gallery-album-card.is-featured h2 { font-size: 1.8rem; }
    .community-index #albumModal .event-gallery-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
