/* 仅保留源模板未覆盖的少量补充样式；播放页/详情页样式一律交给源 CSS（layout.css / base.css） */
.fg-pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:12px 0 0;padding:8px 0}
.fg-pagination a,.fg-pagination span{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;padding:6px 12px;border-radius:999px;background:#f2f3f5;color:#333;text-decoration:none;font-size:13px;line-height:1}
.fg-pagination .is-active{background:#0f9d58;color:#fff}
@media (max-width:767.98px){
  .fg-pagination{flex-wrap:wrap;gap:6px;justify-content:center;padding:8px 0}
  .fg-pagination a,.fg-pagination span{min-width:32px;min-height:32px;padding:4px 8px;font-size:12px}
}
.fg-search-form{display:flex;gap:10px;margin:16px 0}
.fg-search-form input{flex:1}

.fg-drawer-link em{margin-left:8px}
.fg-drawer-chevron{margin-left:0}

/* 播放页底部留白收紧到 12px（覆盖源 CSS 的 48px / 移动端 36px） */
.fg-main.fg-detail-main-page{padding-bottom:12px}

/* 面包屑上方留出间距：源站这里被固定导航压住，属于源站 bug，不复刻 */
.fg-breadcrumb{padding-top:8px}

/* 导航占位块补上 1px 边框高度，避免内容被固定导航压住 */
.fg-nav-spacer{height:calc(var(--fg-nav-h) + 1px)}

/* 空广告位 / 空滚动位不占高度 */
.fg-top-banners:empty,
.fg-text-adv-list:empty,
.fg-scroll-container:empty,
.fg-ad-row:empty,
.fg-list-banners:empty,
.fg-app-ad-strip:empty{display:none}

/* 移动端相关推荐标题与卡片之间补一点间距 */
@media (max-width: 991.98px){
  .fg-related-mobile .fg-section-title{margin-bottom:12px}
}

/* ============================================================
   浅色主题：覆盖源 CSS 里写死的深色值
   ============================================================ */
.fg-body{background:var(--fg-bg);color:var(--fg-text)}

.fg-offcanvas{background:#fff;border-right-color:var(--fg-border)}
.fg-offcanvas .offcanvas-header{border-bottom-color:var(--fg-border)}
.fg-drawer-search-link{border-color:var(--fg-border);background:var(--fg-surface)}
.fg-offcanvas .fg-drawer-link{border-color:var(--fg-border);background:var(--fg-surface)}
.fg-offcanvas .fg-drawer-link:focus{background:var(--fg-card-hover)}
.fg-offcanvas .fg-drawer-sub-link{border-left-color:var(--fg-border)}
.fg-drawer-tools a{border-color:var(--fg-border);background:var(--fg-surface)}

.fg-footer{background:var(--fg-footer);border-top-color:var(--fg-border)}
.fg-footer-panel{background:#fff;border-color:var(--fg-border)}
.fg-footer-address-card{border-color:var(--fg-border);background:var(--fg-surface)}
.fg-footer-col{border-color:var(--fg-border);background:var(--fg-surface)}
.fg-footer-link-card{border-color:var(--fg-border);background:#fff}
.fg-footer-link-card:hover{background:var(--fg-card-hover)}
.fg-friend-links-grid a{border-color:var(--fg-border);background:var(--fg-surface)}

.fg-card-cover{background:#eef0f3}
.fg-card-body h3{color:var(--fg-text);margin:2px 0 4px}
.fg-card-body p{color:var(--fg-muted)}
.fg-duration{color:#fff}
.fg-rank-copy strong{color:var(--fg-text-secondary)}
.fg-hero-cover strong{color:rgba(255,255,255,.92)}
.fg-scroll-top{background:#fff;border-color:var(--fg-border);color:var(--fg-text)}

/* ============================================================
   紧凑间距：整体收紧一档
   ============================================================ */
.fg-home-shell,.fg-category-page{padding:16px 12px 28px}
.fg-main{padding:16px 12px 24px}

.fg-navbar{padding:0 12px}
.fg-navbar .navbar-brand{font-size:16px;margin-right:16px}
.fg-navbar .nav-link{padding:6px 10px;font-size:13px}
.fg-nav-search{width:220px}
.fg-nav-search .form-control{height:32px}

.fg-home-hero{gap:14px}
.fg-hero-cover{min-height:380px;padding:18px}
.fg-hero-cover strong{font-size:20px}
.fg-play-mark{width:36px;height:36px;margin-bottom:10px}
.fg-play-mark::after{left:14px;top:11px;border-left-width:10px;border-top-width:7px;border-bottom-width:7px}
.fg-rank-panel{padding:12px}
.fg-rank-panel h2{margin:0 0 10px;font-size:15px}
.fg-rank-item{grid-template-columns:24px 110px minmax(0,1fr);gap:8px;padding:7px 0}

.fg-category-tabs{gap:8px;margin:10px 0 22px}
.fg-category-tabs a{min-height:34px;padding:7px 16px;font-size:13px}
.fg-channel-head{margin:22px 0 0}
.fg-channel-head h2{font-size:20px}
.fg-section{margin:12px 0}
.fg-section-head,.fg-category-head{gap:12px;margin-bottom:12px}
.fg-section-head h2,.fg-category-head h1{font-size:20px}
.fg-section-head a,.fg-category-head a{min-height:32px;padding:6px 12px;font-size:13px}
.fg-stagger-feed{gap:12px}
.fg-card-body{padding:8px 10px 10px}
.fg-card-title{margin:0 0 4px;min-height:2.6em}

.fg-breadcrumb{padding:0 0 10px;margin-bottom:10px}
.fg-detail-page{gap:16px}
.fg-sidebar{padding-left:16px}
.fg-video-info{padding:14px 0}
.fg-video-title{margin:0 0 8px}
.fg-video-meta{margin-bottom:10px}
.fg-video-tags{margin-bottom:10px}
.fg-video-actions{margin-bottom:10px}
.fg-related-mobile{margin-top:10px;padding-top:10px}

.fg-footer{padding:24px 0 16px;margin-top:0}
.fg-footer-inner{padding:0 12px}
.fg-footer-panel{padding:16px;gap:16px}
.fg-footer-columns{gap:10px}
.fg-footer-brand-head{margin-bottom:10px}
.fg-footer-address-list{margin-top:10px;gap:8px}
.fg-footer-address-card{padding:8px 10px}
.fg-footer-col{padding:12px}
.fg-footer-link-card{padding:6px 10px}

/* 首页栏目锚点跳转：平滑滚动 + 避开固定导航 */
html{scroll-behavior:smooth}
.fg-section[id^="fg-section-cate"]{scroll-margin-top:calc(var(--fg-nav-h) + 12px)}

/* 分类下拉太长时内部滚动，保证能看全（AV 有 25 个子分类） */
.fg-dropdown-menu{
  max-height:min(85vh, 760px);
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:var(--fg-border-strong) transparent;
}
.fg-dropdown-menu::-webkit-scrollbar{width:6px}
.fg-dropdown-menu::-webkit-scrollbar-thumb{background:var(--fg-border-strong);border-radius:3px}
.fg-dropdown-menu::-webkit-scrollbar-track{background:transparent}

/* PC 端导航：栏目项均匀铺满整行，避免右侧留白 */
@media (min-width: 992px){
  .fg-navbar .navbar-nav.flex-row{flex:1 1 auto;justify-content:space-between;min-width:0}
  .fg-navbar .navbar-nav.flex-row > .nav-item{flex:1 1 auto;text-align:center}
  .fg-navbar .navbar-nav.flex-row > .nav-item > .nav-link{display:block;white-space:nowrap;padding:6px 4px}
  .fg-navbar .fg-nav-search{flex:0 0 220px}
}

/* 移动端抽屉：行高降低、底部留白收紧 */
.fg-offcanvas .offcanvas-header{min-height:52px;padding:12px 14px}
.fg-offcanvas .offcanvas-body{padding:12px}
.fg-drawer-nav{gap:6px}
.fg-offcanvas .fg-drawer-link{display:flex;align-items:center;justify-content:flex-start;min-height:42px;padding:0 12px}
.fg-offcanvas .fg-drawer-link:hover{background:var(--fg-card-hover)}
.fg-drawer-subnav{gap:4px;padding:6px 0 2px 12px}
.fg-offcanvas .fg-drawer-sub-link{display:flex;align-items:center;min-height:34px;padding:0 10px}
.fg-drawer-tools a{min-height:36px}
.fg-offcanvas .btn-close{filter:none}

/* 移动端分类按钮：黑色加粗边框与横杠 */
.navbar-toggler{
  padding:2px 3px;
  border:2px solid var(--fg-text);
  background:transparent;
}
.navbar-toggler:hover,
.navbar-toggler:focus{
  border-color:var(--fg-text);
  background:rgba(0,0,0,.06);
}
.navbar-toggler-icon{
  width:24px;
  height:24px;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='%2316181d' stroke-width='3.2' stroke-linecap='round' d='M4 8h22M4 15h22M4 22h22'/%3E%3C/svg%3E");
}

/* 移动端搜索按钮：无边框，图标与分类按钮同粗细 */
.fg-mobile-search-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:2px 3px;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--fg-text);
  line-height:1;
}
.fg-mobile-search-btn:hover,
.fg-mobile-search-btn:focus{
  border:0;
  background:rgba(0,0,0,.06);
  color:var(--fg-text);
}
.fg-mobile-search-btn svg{
  width:24px;
  height:24px;
  stroke-width:3.2;
}

/* 覆盖 Bootstrap 的 .gap-2 间距：.5rem → .8rem */
.gap-2{gap:.8rem!important}

/* 移动端：首页大图高度对齐栏目首卡（4:3），不再固定 380px */
@media (max-width:767.98px){
  .fg-hero-cover{min-height:0;aspect-ratio:4/3;padding:14px}
  .fg-hero-cover strong{font-size:17px;line-height:1.35}
  .fg-hero-eyebrow{font-size:11px}
}

/* 移动端：栏目标题和「更多」同一行，更多靠右 */
@media (max-width:767.98px){
  .fg-section-head,.fg-category-head{flex-direction:row;align-items:flex-end;justify-content:space-between;gap:10px}
  .fg-section-heading{min-width:0}
  .fg-section-more{flex:0 0 auto;white-space:nowrap}
}
