/* =========================================================
   NOAH AI SCHOOL HOME UI V8 TODAY FIX - 2026-06-27
   修复 V7 后“今日推荐”空白。V8 使用独立 class，避开旧 V6 隐藏规则。
========================================================= */
:root{
  --noah-v8-blue:#1677ff;
  --noah-v8-cyan:#28d7ff;
  --noah-v8-text:#0f172a;
  --noah-v8-border:#dbeafe;
}

/* V8 准备好后，只隐藏旧来源和旧版本网格；不要隐藏 V8 网格 */
html body.web-index .webtoday.noah-v8-today-ready .wb-today-feed,
html body.web-index .webtoday.noah-v8-today-ready .wb-today-dynamic,
html body.web-index .webtoday.noah-v8-today-ready .noah-v7-today-grid,
html body.web-index .webtoday.noah-v8-today-ready .noah-v6-today-grid,
html body.web-index .webtoday.noah-v8-today-ready .noah-today-grid,
html body.web-index .wb-home-today.noah-v8-today-ready .wb-today-feed,
html body.web-index .wb-home-today.noah-v8-today-ready .wb-today-dynamic,
html body.web-index .wb-home-today.noah-v8-today-ready .noah-v7-today-grid,
html body.web-index .wb-home-today.noah-v8-today-ready .noah-v6-today-grid,
html body.web-index .wb-home-today.noah-v8-today-ready .noah-today-grid{
  display:none!important;
}

/* 覆盖旧 V6 CSS：即使 root 还残留 noah-v6-today-ready，也必须显示 V8 网格 */
html body.web-index .webtoday.noah-v6-today-ready .noah-v8-today-grid,
html body.web-index .wb-home-today.noah-v6-today-ready .noah-v8-today-grid,
html body.web-index .webtoday.noah-v5-today-ready .noah-v8-today-grid,
html body.web-index .wb-home-today.noah-v5-today-ready .noah-v8-today-grid,
html body.web-index .webtoday.noah-today-ready .noah-v8-today-grid,
html body.web-index .wb-home-today.noah-today-ready .noah-v8-today-grid,
html body.web-index .webtoday .noah-v8-today-grid,
html body.web-index .wb-home-today .noah-v8-today-grid{
  display:grid!important;
}

/* 如果 V8 暂时还没取到课程源，临时允许原始内容显示，避免用户看到空白 */
html body.web-index .webtoday.noah-v8-original-fallback .wb-today-feed,
html body.web-index .webtoday.noah-v8-original-fallback .wb-today-dynamic,
html body.web-index .wb-home-today.noah-v8-original-fallback .wb-today-feed,
html body.web-index .wb-home-today.noah-v8-original-fallback .wb-today-dynamic{
  display:block!important;
}

html body.web-index .web_jrtj.webtoday,
html body.web-index .wb-home-today{
  overflow:visible!important;
  min-height:420px!important;
}
html body.web-index .webjrtit{
  display:flex!important;
  align-items:center!important;
  gap:16px!important;
  margin:0 0 24px!important;
  padding:0!important;
  height:auto!important;
}
html body.web-index .webjrtit h2{
  margin:0!important;
  line-height:1.2!important;
  color:var(--noah-v8-text)!important;
  font-size:28px!important;
  font-weight:950!important;
}
html body.web-index .wb-today-more,
html body.web-index .wb-today-more.notranslate{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  min-width:128px!important;
  max-width:none!important;
  height:42px!important;
  line-height:42px!important;
  padding:0 24px!important;
  margin-left:10px!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,rgba(22,119,255,.12),rgba(40,215,255,.16))!important;
  border:1px solid rgba(22,119,255,.22)!important;
  color:#0757d8!important;
  font-size:14px!important;
  font-weight:950!important;
  white-space:nowrap!important;
  text-decoration:none!important;
  overflow:visible!important;
}
html body.web-index.noah-lang-ja .wb-today-more,
html body.web-index[data-noah-lang="ja"] .wb-today-more{min-width:170px!important;padding:0 28px!important;}

html body.web-index .noah-v8-today-grid{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:22px!important;
  overflow:visible!important;
  opacity:1!important;
  transition:opacity .18s ease!important;
}
html body.web-index .noah-v8-today-grid.noah-v8-switching{opacity:.35!important;}
html body.web-index .noah-v8-today-card{
  display:flex!important;
  flex-direction:column!important;
  min-height:238px!important;
  height:auto!important;
  overflow:hidden!important;
  border-radius:22px!important;
  background:#fff!important;
  border:1px solid var(--noah-v8-border)!important;
  box-shadow:0 16px 34px rgba(15,37,84,.08)!important;
  color:var(--noah-v8-text)!important;
  text-decoration:none!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease!important;
}
html body.web-index .noah-v8-today-card:hover{
  transform:translateY(-3px)!important;
  border-color:rgba(22,119,255,.36)!important;
  box-shadow:0 22px 46px rgba(15,37,84,.14)!important;
}
html body.web-index .noah-v8-today-thumb{
  flex:0 0 132px!important;
  width:100%!important;
  height:132px!important;
  object-fit:cover!important;
  border-radius:22px 22px 0 0!important;
  border-bottom:1px solid #e6eefb!important;
  background:#eaf0f8!important;
}
html body.web-index .noah-v8-today-body{
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  flex:1 1 auto!important;
  min-height:104px!important;
  padding:13px 14px 14px!important;
  overflow:visible!important;
  background:#fff!important;
}
html body.web-index .noah-v8-today-title{
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  min-height:40px!important;
  max-height:42px!important;
  overflow:hidden!important;
  color:var(--noah-v8-text)!important;
  font-size:14px!important;
  line-height:1.43!important;
  font-weight:900!important;
}
html body.web-index .noah-v8-today-price{
  display:block!important;
  min-height:20px!important;
  margin-top:10px!important;
  color:#ff5a1f!important;
  font-size:14px!important;
  line-height:20px!important;
  font-weight:950!important;
  overflow:visible!important;
}

@media (max-width:1180px){html body.web-index .noah-v8-today-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}}
@media (max-width:768px){
  html body.web-index .noah-v8-today-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;}
  html body.web-index .noah-v8-today-thumb{height:110px!important;flex-basis:110px!important;}
}
