/* v1.3.3 Portal UX Expansion + Homepage Feature Card Alignment Fix */

.home-widget-manager-list{display:grid;gap:10px}
.home-widget-row{display:grid;grid-template-columns:70px 1fr 120px 110px 110px;gap:10px;align-items:center;border:1px solid var(--border,#333);padding:12px;background:rgba(255,255,255,.025)}
.home-widget-row input[type=number]{width:70px}
.home-widget-row .drag-handle{cursor:move;color:var(--accent,#d9b26a);font-weight:900}

.homepage-featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.homepage-widget-wide{grid-column:1/-1}

.featured-card{
    position:relative;
    min-height:260px;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    overflow:hidden;
}

.featured-card-cover{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    opacity:.38;
}

.featured-card-content{
    position:relative;
    z-index:2;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    min-height:100%;
    height:100%;
    flex:1;
}

.featured-card-content .badge{
    margin-bottom:8px;
}

.featured-card-content h2,
.featured-card-content h3{
    margin-top:0;
}

.featured-card-content p{
    margin-bottom:14px;
}

/* Keep the read/open/view buttons pinned to the bottom */
.featured-card-content .btn{
    margin-top:auto;
}

.featured-card:before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent,rgba(0,0,0,.85));
    z-index:1;
}

.article-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:28px 0}
.article-gallery-grid figure{margin:0;border:1px solid var(--border,#333);background:rgba(255,255,255,.025)}
.article-gallery-grid img{width:100%;height:170px;object-fit:cover;display:block;cursor:zoom-in}
.article-gallery-grid figcaption{padding:8px 10px;color:var(--muted,#9fb6d8);font-size:.88rem}

.search-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:28px;align-items:start}
.search-sidebar{position:sticky;top:96px}
.search-sidebar .card{display:grid;gap:12px}
.search-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}

.gallery-album-cover{width:100%;height:210px;object-fit:cover;border:1px solid var(--border,#333);margin-bottom:14px}
.gallery-meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted,#9fb6d8);font-size:.88rem;margin:8px 0 14px}

.admin-chart-bar{display:grid;gap:10px}
.admin-chart-row{display:grid;grid-template-columns:160px 1fr 70px;gap:10px;align-items:center}
.admin-chart-track{height:16px;background:rgba(255,255,255,.08);border:1px solid var(--border,#333)}
.admin-chart-fill{height:100%;background:linear-gradient(90deg,var(--primary,#a25801),var(--accent,#d9b26a))}
.site-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}

.image-metadata-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.image-metadata-form .full{grid-column:1/-1}

@media(max-width:1100px){
    .homepage-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .search-layout{grid-template-columns:1fr}
    .search-sidebar{position:static}
    .site-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:700px){
    .homepage-featured-grid,
    .article-gallery-grid,
    .site-stats-grid{grid-template-columns:1fr}
    .home-widget-row{grid-template-columns:1fr}
    .search-date-grid{grid-template-columns:1fr}
}
