/* Database-driven story cards inside the Culture collection panel. */
.culture-heritage-panel .culture-heritage-grid {
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.culture-heritage-panel .culture-card-body {
    display: flex;
    min-height: 168px;
    flex-direction: column;
    padding: .8rem;
}

.culture-heritage-panel .culture-featured-badge {
    position: absolute;
    top: .6rem;
    right: .7rem;
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    padding: .25rem .5rem;
    border-radius: 999px;
    color: #fff;
    background: rgba(7, 22, 51, .82);
    backdrop-filter: blur(8px);
    font-size: .57rem;
    font-weight: 800;
}

.culture-heritage-panel .culture-featured-badge i { color: #fbbf24; }

.culture-heritage-panel .culture-article-meta {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem .65rem;
    margin-bottom: .5rem;
    color: var(--culture-muted);
    font-size: .58rem;
    font-weight: 700;
}

.culture-heritage-panel .culture-article-meta span {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
    min-width: 0;
}

.culture-heritage-panel .culture-article-meta span:nth-child(2) {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.culture-heritage-panel .culture-article-meta i { color: var(--culture-violet); }

.culture-heritage-panel .culture-card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .6rem;
    margin-top: auto;
    padding-top: .65rem;
    border-top: 1px solid var(--culture-line);
    color: var(--culture-muted);
    font-size: .59rem;
}

.culture-heritage-panel .culture-card-footer > span:first-child {
    display: inline-flex;
    align-items: center;
    gap: .25rem;
}

.culture-heritage-panel .culture-card-footer .culture-mini-link { white-space: nowrap; }

.culture-load-more-wrap { position: relative; display: grid; justify-items: center; gap: .65rem; margin-top: 1.5rem; padding-top: 1.25rem; border-top: 1px solid var(--culture-line); }
.culture-load-more { position: relative; isolation: isolate; width: min(100%,300px); min-height: 60px; padding: 7px 8px; overflow: hidden; border: 1px solid rgba(255,255,255,.3); border-radius: 17px; display: grid; grid-template-columns: 42px 1fr 38px; align-items: center; gap: .72rem; color: #fff; text-align: left; background: linear-gradient(115deg,#137fe8 0%,#684cff 52%,#bd43e8 100%); box-shadow: 0 16px 34px rgba(86,76,255,.3),inset 0 1px rgba(255,255,255,.28); font-family:'Plus Jakarta Sans',Inter,sans-serif; cursor: pointer; transition: transform .24s ease,box-shadow .24s ease,filter .24s ease,opacity .22s; }
.culture-load-more::before { position: absolute; z-index: -1; inset: 0; background: linear-gradient(105deg,transparent 20%,rgba(255,255,255,.22) 45%,transparent 70%); content: ''; transform: translateX(-120%); transition: transform .55s ease; }
.culture-load-more i { display: grid; place-items: center; border: 1px solid rgba(255,255,255,.25); color: #fff; background: rgba(255,255,255,.14); box-shadow: inset 0 1px rgba(255,255,255,.2); transition: transform .25s ease,background-color .25s ease; }
.culture-load-icon { width: 42px; height: 42px; border-radius: 13px; font-size: .9rem; }
.culture-load-action { width: 38px; height: 38px; border-radius: 50%; font-size: .72rem; }
.culture-load-copy { min-width: 0; display: grid; gap: 4px; }
.culture-load-copy b { color: #fff; font-size: .76rem; line-height: 1.15; }
.culture-load-copy small { overflow: hidden; color: rgba(255,255,255,.72); font-size: .62rem; font-weight: 650; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.culture-load-more:hover:not(:disabled) { color: #fff; filter: saturate(1.12); transform: translateY(-3px); box-shadow: 0 19px 40px rgba(86,76,255,.4),0 0 24px rgba(22,139,255,.15); }
.culture-load-more:hover:not(:disabled)::before { transform: translateX(120%); }
.culture-load-more:hover:not(:disabled) i { background: rgba(255,255,255,.24); }
.culture-load-more:hover:not(:disabled) .culture-load-action { transform: translateY(3px); }
.culture-load-more:hover:not(:disabled) .culture-load-icon { transform: rotate(-5deg) scale(1.04); }
.culture-load-more:focus-visible { outline: 3px solid color-mix(in srgb,var(--culture-blue) 55%,transparent); outline-offset: 4px; }
.culture-load-more:disabled { opacity: .75; cursor: wait; filter: saturate(.75); }
.culture-load-more.is-loading i { background: rgba(255,255,255,.22); }
.culture-load-more.is-loading .culture-load-icon { opacity: .7; }
[data-theme=light] .culture-load-more { border-color: rgba(255,255,255,.72); box-shadow: 0 14px 30px rgba(86,76,255,.24),inset 0 1px rgba(255,255,255,.4); }
.culture-load-status { min-height: 1em; margin: 0; color: var(--culture-muted); font-size: .57rem; font-weight: 650; }
.culture-load-more-wrap.is-complete { margin-top: .8rem; }
.culture-card-loaded { animation: cultureCardLoaded .45s both; animation-delay: calc(var(--load-index) * 70ms); }
@keyframes cultureCardLoaded { from { opacity: 0; transform: translateY(14px); } }

@media (max-width: 720px) {
    .culture-heritage-panel .culture-heritage-grid { grid-template-columns: 1fr; }
}
