.hgefv-current,
.hgefv-archive { width:100%; box-sizing:border-box; }
.hgefv-current *,
.hgefv-current *::before,
.hgefv-current *::after,
.hgefv-archive *,
.hgefv-archive *::before,
.hgefv-archive *::after { box-sizing:border-box; }

.hgefv-current-title { font-size:1.05rem; font-weight:700; margin:0 0 .4rem; }
.hgefv-current-date { font-size:.9rem; opacity:.75; margin:0 0 .25rem; }
.hgefv-current-player { width:100%; aspect-ratio:16/9; background:#000; }
.hgefv-current-player iframe { display:block; width:100%; height:100%; border:0; }

.hgefv-tabs { display:flex; gap:.5rem; flex-wrap:wrap; margin:0 0 1.25rem; border-bottom:1px solid rgba(127,127,127,.35); padding-bottom:.6rem; }
.hgefv-tab,
.hgefv-button,
.hgefv-alpha-btn { font:inherit; color:inherit; }
.hgefv-tab { border:1px solid rgba(127,127,127,.4); background:transparent; padding:.55rem .95rem; cursor:pointer; border-radius:4px; }
.hgefv-tab.is-active { font-weight:700; border-color:currentColor; }
.hgefv-archive section[hidden] { display:none !important; }

.hgefv-results { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.25rem; }
.hgefv-card { margin:0; min-width:0; border:1px solid rgba(127,127,127,.25); background:rgba(255,255,255,.02); overflow:hidden; }
.hgefv-card-head { padding:.75rem .85rem .65rem; }
.hgefv-date { font-size:.84rem; opacity:.72; margin-bottom:.2rem; }
.hgefv-title { font-size:1rem; line-height:1.35; margin:0; }
.hgefv-media,
.hgefv-card iframe { width:100%; aspect-ratio:16/9; border:0; display:block; }
.hgefv-media { position:relative; padding:0; background:#000; cursor:pointer; overflow:hidden; border:0; }
.hgefv-media img { width:100%; height:100%; object-fit:cover; display:block; }
.hgefv-play { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:3.4rem; height:2.4rem; border-radius:.55rem; background:rgba(0,0,0,.78); color:#fff; display:flex; align-items:center; justify-content:center; font-size:1.2rem; padding-left:.15rem; }

.hgefv-pagination { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:.75rem; margin:1.4rem 0 .25rem; }
.hgefv-pagination > :first-child { justify-self:start; }
.hgefv-pagination > :last-child { justify-self:end; }
.hgefv-page-label { font-size:.9rem; opacity:.8; }
.hgefv-button { border:1px solid rgba(127,127,127,.5); background:transparent; padding:.55rem .85rem; cursor:pointer; border-radius:4px; }
.hgefv-primary { font-weight:700; border-color:currentColor; }
.hgefv-label { display:block; font-weight:700; margin-bottom:.35rem; }
.hgefv-input { width:100%; max-width:560px; font:inherit; padding:.6rem .7rem; border:1px solid rgba(127,127,127,.5); background:transparent; color:inherit; border-radius:4px; }
.hgefv-alpha { display:flex; gap:.3rem; flex-wrap:wrap; margin:.8rem 0; }
.hgefv-alpha-btn { min-width:2rem; border:1px solid rgba(127,127,127,.4); background:transparent; padding:.3rem .45rem; cursor:pointer; border-radius:3px; }
.hgefv-alpha-btn.is-active { font-weight:700; border-color:currentColor; }
.hgefv-search-actions { display:flex; gap:.6rem; flex-wrap:wrap; margin:.5rem 0 1.2rem; }
.hgefv-summary { margin:.5rem 0 1rem; font-weight:700; }
.hgefv-loading,
.hgefv-empty { grid-column:1/-1; padding:1.25rem 0; opacity:.75; }

@media (max-width:900px) {
    .hgefv-results { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:600px) {
    .hgefv-results { grid-template-columns:1fr; }
    .hgefv-pagination { grid-template-columns:1fr 1fr; }
    .hgefv-page-label { grid-row:2; grid-column:1/-1; justify-self:center; }
    .hgefv-alpha { flex-wrap:nowrap; overflow-x:auto; padding-bottom:.35rem; scrollbar-width:thin; }
    .hgefv-alpha-btn { flex:0 0 auto; }
}
