/* 复盘四页共用设计；保留原有工具 DOM、题目身份、目录拖拽和滚动容器。 */
.toolbar-inner { gap:var(--toolbar-item-gap,2px); }
.toolbar-inner .tool-divider { margin-inline:2px; }
.study-ui-icon { width:16px; height:16px; display:inline-block; vertical-align:middle; flex-shrink:0; }
.tool-btn svg { width:15px; height:15px; }
.sidebar:not(.collapsed) .subject-group { margin-bottom:10px; }
@media(min-width:621px) {
  .nav-tabs { gap:12px; }
  .nav-tab { padding-inline:14px; font-size:15px; }
}
.qa-fav-toggle,.qa-nav-btn { display:inline-flex; align-items:center; justify-content:center; gap:6px; }
.qa-load-warning { padding:10px 12px; background:var(--warning-bg); color:var(--warning); border-radius:7px; font-size:12px; margin-bottom:12px; }
.qa-load-warning button { background:transparent; color:inherit; border:0; text-decoration:underline; cursor:pointer; margin-left:12px; }
.review-filter-fly-confirm,.review-filter-fly-confirm:hover,
.summary-notes-btn-primary,.summary-notes-btn-primary:hover:not(:disabled) {
  background:var(--action-fill); color:var(--on-action); border-color:transparent;
}
.review-page { --review-space:clamp(16px,2vw,32px); }
.review-page.review-weak-on { width:100%; max-width:none; }
.review-page.review-weak-on #reviewContent { padding:var(--review-space); }
.review-page:not(.review-weak-on) #reviewContent { padding-top:8px; }
.review-chapter-name { display:flex; gap:12px; align-items:center; color:var(--on-surface); margin:20px 0 12px; }
.review-chapter-name::after { content:''; flex:1; height:1px; background:var(--border); }
.review-item { border-radius:11px; border-color:var(--border); box-shadow:none; margin-bottom:14px; }
.review-item:hover { box-shadow:var(--shadow-card); }
.review-item-head { gap:10px; }
.review-item-foot { gap:12px; flex-wrap:wrap; }
.review-analysis-box { background:var(--white); border-color:var(--border); box-shadow:none; }

/* 薄弱分析：保留资料进度与知识树，收敛装饰，统计不重算。 */
.weak-dashboard { gap:20px; }
.review-page.review-weak-on .weak-page-head { display:none; }
.weak-overview { gap:0; border:1px solid var(--border); border-radius:11px; background:var(--white); padding:18px 0; }
.weak-stat-card { border:0; border-right:1px solid var(--border); border-radius:0; padding:0 22px; min-height:110px; background:transparent; }
.weak-stat-card:last-child { border-right:0; }
.weak-stat-card::after,.weak-stat-accent { display:none; }
.weak-stat-main { margin-top:12px; flex-wrap:wrap; }
.weak-stat-main strong { font-size:30px; font-variant-numeric:tabular-nums; }
.weak-stat-sub,.weak-section-head p { white-space:normal; overflow:visible; line-height:1.7; }
.weak-type-summary,.weak-legend,.weak-sample,.weak-chapter-copy small,.weak-link-btn { font-size:11px; }
.weak-analysis-grid { grid-template-columns:minmax(0,1.3fr) minmax(290px,1fr); gap:20px; }
.weak-section-card { border-radius:11px; }
.weak-section-head { padding:18px 18px 14px; }
.weak-section-icon,.weak-section-icon.attention { background:transparent; color:var(--primary); width:22px; height:22px; }
.weak-chapter-list { padding:6px 12px 14px; }
.weak-chapter-item { padding:14px 6px; border-bottom:1px solid var(--border); border-radius:0; grid-template-columns:24px minmax(90px,1fr) minmax(65px,.7fr) 42px 54px; }
.weak-chapter-item:last-child { border-bottom:0; }
.weak-rank { background:transparent; color:var(--on-surface-variant); }
.weak-priority-body { padding:16px 18px 20px; }
.weak-progress-track { height:5px; background:var(--surface-subtle); }
.weak-progress-fill { background:var(--action-fill); }
.weak-rate-visual .weak-progress-track { height:5px; }
.weak-progress-fill.mid { background:var(--warning); }
.weak-progress-fill.good { background:var(--success); }
.weak-rate-value.mid,.weak-tree-item strong.mid,.weak-tree-point b.mid { color:var(--warning); }
.weak-rate-value.good,.weak-tree-item strong.good,.weak-tree-point b.good,.weak-legend .good { color:var(--success); }
.weak-stat-card.accuracy .weak-stat-label .weak-ui-icon { color:var(--success); }
.weak-stat-card.strengthen .weak-stat-label .weak-ui-icon { color:var(--warning); }

/* 问答卡片：主卡是阅读区；长内容继续滚动，不删除或截断讲解。 */
.qa-cards-page { gap:22px; }
.qa-sidebar { width:clamp(220px,15vw,260px); padding-right:18px; }
.qa-side-item { flex:0 0 auto; min-height:0; border-radius:6px; white-space:normal; overflow:visible; text-overflow:clip; overflow-wrap:anywhere; line-height:1.55; }
.summary-side-item { border-radius:6px; white-space:normal; overflow-wrap:anywhere; }
.qa-toolbar { flex-wrap:wrap; padding-bottom:16px; gap:10px; }
.qa-tool-group { flex-wrap:wrap; }
.qa-sort-btn,.qa-fav-toggle { border-radius:6px; }
.qa-sort-btn.active,.qa-fav-toggle.active { border-color:transparent; }
.qa-card { width:min(960px,calc(100% - 48px)); border-radius:12px; }
.qa-card.pos-center { box-shadow:var(--shadow-card); }
.qa-card.fav { border-color:var(--border); }
.qa-card-head { padding:15px 24px; }
.qa-fav-btn.on { color:var(--warning); }
.qa-card .qa-card-body { padding:22px 26px; }
.qa-card .qa-question-title { font-size:20px; line-height:1.6; margin-bottom:20px; }
.qa-card .qa-explanation-title { font-size:12px; font-weight:500; margin-bottom:12px; }
.qa-explanation-title::after { display:none; }
.qa-card .qa-explanation { font-size:var(--type-body); line-height:var(--leading-body); }
.qa-card .qa-para { padding-left:0; margin-bottom:14px; }
.qa-para::before { display:none; }
.qa-card .qa-insights { margin-top:20px; }
.qa-card .qa-reminder { border-left:0; border-radius:7px; padding:12px 14px; background:var(--warning-bg); color:var(--warning); line-height:1.8; font-size:13px; }
.qa-reminder-label { color:var(--warning); font-weight:500; }
.qa-card .qa-weak-tag { font-size:11px; border:0; border-radius:4px; background:var(--surface-subtle); }
.qa-card .qa-source { margin-top:20px; padding-top:16px; }
.qa-card .qa-source-toggle { font-size:12px; font-weight:500; color:var(--on-surface-variant); }
.qa-card .qa-question { border:0; border-radius:0; padding:10px 0 0; background:transparent; font-size:13px; line-height:1.8; }
.qa-q-stem { line-height:1.8; }

/* 汇总笔记：目录宽度仍由用户拖拽控制，正文保留字体设置与原题工具。 */
.summary-notes-main { margin-left:16px; }
.summary-notes-toolbar { gap:14px; flex-wrap:wrap; padding-bottom:14px; }
.summary-notes-title { font-size:16px; font-weight:500; }
.summary-notes-actions { flex-wrap:wrap; }
.summary-notes-legend { border:0; gap:8px; padding-bottom:16px; }
.summary-source-filter { border:1px solid var(--border); border-radius:6px; padding:6px 9px; }
.summary-source-filter.selected { background:var(--primary-container); border-color:transparent; color:var(--primary); }
.summary-source-filter:not(.selected) { opacity:1; text-decoration:none; background:var(--white); }
.summary-legend-dot.annotation { background:var(--annotation-purple); }
.summary-legend-dot.tag { background:var(--annotation-green); }
.summary-legend-dot.ai { background:var(--primary); }
.summary-notes-paper { background:var(--white); border:1px solid var(--border); border-radius:10px; padding:26px clamp(18px,3vw,38px) 40px; }
.summary-notes-doc { max-width:1000px; }
.summary-notes-doc > h2 { padding-bottom:18px; border-bottom:1px solid var(--border); line-height:1.6; overflow-wrap:anywhere; }
.summary-note-item { padding:17px 0; margin:0; border-bottom:1px solid var(--border); }
.summary-note-item:last-child { border-bottom:0; }
.summary-note-item-head { gap:8px; flex-wrap:wrap; margin-bottom:10px; }
.summary-note-item-actions { gap:12px; flex-wrap:wrap; }
.summary-note-goto,.summary-note-remove,.summary-note-view { opacity:1; }
.summary-note-memo { margin-top:12px; padding:12px 14px; background:var(--surface-subtle); border-radius:6px; }
.summary-note-number-annotation,.summary-selected-annotation { color:var(--annotation-purple); }
.summary-note-source { color:var(--on-surface-variant); }
.summary-notes-resizer:focus-visible { outline:2px solid var(--primary); outline-offset:-4px; }

@media(max-width:1100px) {
  .weak-analysis-grid { grid-template-columns:1fr; }
  .qa-cards-page { gap:14px; }
  .qa-sidebar { width:200px; }
}
@media(max-width:760px) {
  .review-page.review-weak-on #reviewContent { padding:8px 14px 20px; }
  .weak-overview { display:block; padding:0; }
  .weak-stat-card { min-height:0; padding:16px; border-right:0; border-bottom:1px solid var(--border); }
  .weak-stat-card:last-child { border-bottom:0; }
  .weak-chapter-item { grid-template-columns:22px minmax(0,1fr) 40px 48px; }
  .weak-rate-visual { grid-column:2/-1; grid-row:2; }
  .qa-sidebar { width:100%; flex-wrap:nowrap; }
  .qa-side-item { flex:none; white-space:nowrap; }
  .qa-card { width:100%; }
  .qa-card .qa-card-body { padding:18px; }
  .qa-card .qa-question-title { font-size:18px; }
  .summary-notes-main { margin-left:0; }
  .summary-notes-sidebar { flex-wrap:wrap; }
  .summary-side-item { flex-shrink:1; }
  .summary-notes-actions { margin-left:0; }
}
@media(prefers-reduced-motion:reduce) { .qa-card,.weak-progress-fill { animation:none; transition:none; } }
/* 极窄窗口保留全部导航，工具使用原有收纳菜单；同步浮层定位的顶栏高度。 */
@media(max-width:620px) {
  .topbar { height:88px; padding:4px 10px; }
  .topbar .nav-tabs { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:4px; }
  .topbar .nav-tabs .nav-tab { grid-column:span 2; grid-row:1; justify-content:center; padding:6px 0; font-size:11px; gap:3px; transform:none !important; }
  .topbar .nav-tab > svg { display:none; }
  .topbar .practice-toolbar { grid-column:1/6; grid-row:2; padding:0; }
  .topbar .toolbar-inner .tool-btn { min-width:24px; height:28px; padding:4px; }
  .topbar .tool-divider { margin:0 2px; }
  .topbar .topbar-actions { grid-column:6/8; grid-row:2; margin:0; }
  .topbar #fullscreenBtn { grid-column:8; grid-row:2; width:28px; height:28px; }
  .topbar .time-btn { min-width:0; padding:2px; }
  .topbar .time-clock { font-size:12px; }
  .topbar .nav-spacer { display:none; }
  .main > #scratchLayer,.main > #annotationLayer { top:88px !important; }
  .weak-section-head { flex-wrap:wrap; }
  .weak-section-head > div { flex-basis:calc(100% - 40px); }
  .weak-section-head > .weak-link-btn,.weak-section-head > .weak-legend { margin-left:32px; }
}
