/*
 * 阅读理解、完形填空区直接复用 index.html 中“当前推荐”的 rec-* 样式。
 * 此文件只处理空状态和连续区块边界，不覆盖卡片尺寸、封面或滚动布局。
 */
.home-training-section {
  border-top: 0;
}

.home-content-loading,
.home-content-empty {
  flex: 1 0 calc(100% - 54px);
  min-height: 180px;
  display: grid;
  place-items: center;
  border: 1px dashed #bfdbfe;
  border-radius: 14px;
  color: #64748b;
  background: rgba(255, 255, 255, .72);
  font-size: .88rem;
  text-align: center;
}

/* rec-track 已隐藏滚动条；这里补充旧版 Edge/IE 的等效规则。 */
.home-training-section .rec-track {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.home-training-section .rec-track::-webkit-scrollbar {
  display: none;
}

.rec-header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
}

.rec-continue-link {
  padding: 6px 14px;
  border: 1px solid #2563eb;
  border-radius: 8px;
  color: #fff;
  background: #2563eb;
  font-size: .8rem;
  font-weight: 700;
  line-height: 1.5;
  white-space: nowrap;
  transition: background .18s ease, border-color .18s ease;
}

.rec-continue-link:hover {
  border-color: #1d4ed8;
  background: #1d4ed8;
}

.rec-status-chip,
.rec-lock-chip {
  position: absolute;
  top: 10px;
  z-index: 2;
  border-radius: 999px;
  padding: 3px 9px;
  font-size: .64rem;
  font-weight: 800;
  line-height: 1.35;
  backdrop-filter: blur(5px);
}

.rec-status-chip { left: 10px; }
.rec-lock-chip {
  right: 10px;
  color: #fff;
  background: rgba(15, 23, 42, .68);
}

.rec-status-chip.status-new {
  border: 1px solid rgba(203, 213, 225, .9);
  color: #475569;
  background: rgba(248, 250, 252, .92);
}

.rec-status-chip.status-completed {
  border: 1px solid rgba(134, 239, 172, .85);
  color: #166534;
  background: rgba(220, 252, 231, .94);
}

.rec-status-chip.status-retry {
  border: 1px solid rgba(253, 186, 116, .9);
  color: #9a3412;
  background: rgba(255, 237, 213, .95);
}

.rec-status-chip.status-corrected {
  border: 1px solid rgba(147, 197, 253, .9);
  color: #1d4ed8;
  background: rgba(219, 234, 254, .95);
}

/* 本周计划只压缩留白，不改变目标或积分计算。 */
.challenge-inner {
  padding-top: 16px;
  padding-bottom: 18px;
  gap: 18px;
  grid-template-columns: minmax(0, 1fr) 240px;
}

.challenge-sub { margin-bottom: 8px; }
.challenge-tasks { gap: 6px; margin-bottom: 7px; }
.ctask { padding: 7px 10px 6px; }
.ctask-top { margin-bottom: 4px; }
.challenge-reward-note { margin-bottom: 7px; }
.challenge-side { padding: 12px; gap: 7px; }
.challenge-side-note { margin-bottom: 4px; }
.challenge-stats-grid { gap: 6px; }
.csg-item { padding: 7px 6px; }

@media (max-width: 860px) {
  .challenge-inner { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  .rec-header-actions { gap: 6px; }
  .rec-continue-link,
  .rec-viewall { padding: 5px 9px; font-size: .72rem; }
  .challenge-inner { padding: 14px 16px 16px; gap: 10px; }
}

.home-assignments{width:min(1180px,calc(100% - 32px));margin:22px auto;padding:20px 22px;border:1px solid #dbe5f0;border-radius:16px;background:#fff;box-shadow:0 3px 14px rgba(15,23,42,.05)}
.home-assignments-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}.home-assignments-head h2{margin:0;color:#111827;font-size:20px}.home-assignments-head p{margin:3px 0 0;color:#64748b;font-size:13px}.home-assignments-head a{color:#2563eb;font-size:13px;font-weight:700}
.home-assignment-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px;border-radius:11px;background:#f8fafc}.home-assignment-card h3{margin:0 0 4px;font-size:16px}.home-assignment-meta{color:#64748b;font-size:12px}.home-assignment-progress{height:6px;margin-top:10px;overflow:hidden;border-radius:99px;background:#e2e8f0}.home-assignment-progress span{display:block;height:100%;border-radius:inherit;background:#2563eb}.home-assignment-card a{border-radius:9px;background:#2563eb;color:#fff;padding:8px 13px;font-size:13px;font-weight:700;white-space:nowrap}
@media(max-width:600px){.home-assignments{width:calc(100% - 24px);padding:16px}.home-assignment-card{grid-template-columns:1fr}.home-assignment-card a{text-align:center}}
