.parent-progress-section {
  --progress-ink: #24352f;
  --progress-muted: #6b7973;
  --progress-green: #2f7255;
  --progress-blue: #55738f;
  --progress-amber: #a67335;
  --progress-ivory: #fbf8ef;
  color: var(--progress-ink);
  border: 1px solid rgba(47,114,85,.2) !important;
  background: linear-gradient(150deg, #fff 0%, var(--progress-ivory) 100%) !important;
  min-width: 0;
  max-width: 100%;
}
.parent-progress-heading > div, .parent-progress-card, .parent-progress-cards { min-width:0; max-width:100%; }
.parent-progress-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:18px; }
.parent-progress-ranges { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:12px; }
.parent-progress-ranges button { border:1px solid rgba(47,114,85,.22); border-radius:999px; padding:7px 12px; background:#fff; color:#53625b; font-size:12px; font-weight:700; cursor:pointer; }
.parent-progress-ranges button.active { border-color:#2f7255; color:#235e45; background:#e5f2e9; box-shadow:inset 0 -2px 0 rgba(47,114,85,.18); }
.parent-progress-conclusion { display:grid; gap:3px; margin:0 0 14px; padding:13px 15px; border-left:4px solid #2f7255; border-radius:12px; background:rgba(255,255,255,.78); }
.parent-progress-conclusion span { color:#66756e; font-size:10px; font-weight:750; letter-spacing:.12em; }
.parent-progress-conclusion b { color:#24352f; font-size:16px; line-height:1.45; }
.parent-progress-conclusion small { color:#68756e; font-size:11px; line-height:1.5; }
.parent-progress-overview.readonly p, .parent-progress-next.readonly p { margin:0; line-height:1.75; color:var(--progress-ink); }
.parent-progress-section.institution-mode { border-color:rgba(61,95,138,.22) !important; background:linear-gradient(150deg,#fff 0%,#f5f8fb 100%) !important; }
.parent-progress-section.institution-mode .parent-progress-conclusion { border-color:#3d5f8a; }
.parent-progress-section.institution-mode .parent-progress-ranges button.active { border-color:#3d5f8a; color:#284b6d; background:#e7eef6; }
.parent-progress-heading h3 { margin:3px 0 5px !important; font-family:"Noto Serif SC","Source Han Serif SC","Songti SC",serif; font-size:22px !important; letter-spacing:.03em; }
.parent-progress-heading p { margin:0; color:var(--progress-muted); font-size:12px; line-height:1.65; }
.parent-progress-heading .parent-progress-source-meta { margin:0 0 3px; color:#4f6259; font-size:11px; font-weight:650; }
.parent-progress-kicker { color:var(--progress-green); font-size:11px; font-weight:750; letter-spacing:.12em; }
.parent-progress-review { flex:0 0 auto; border-radius:999px; padding:7px 11px; font-size:11px; font-weight:700; }
.parent-progress-review.confirmed { color:#235e45; background:#e5f2e9; }
.parent-progress-review.draft { color:#765523; background:#f8ecd8; }
.parent-progress-review.stale { color:#954b3d; background:#f9e3de; }
.parent-progress-overview, .parent-progress-next { padding:14px 16px; background:rgba(255,255,255,.74); border:1px solid rgba(47,114,85,.14); border-radius:14px; }
.parent-progress-overview label, .parent-progress-next label { display:block; margin-bottom:7px; font-family:"Noto Serif SC","Source Han Serif SC","Songti SC",serif; font-size:14px; font-weight:700; }
.parent-progress-overview textarea, .parent-progress-next textarea, .parent-progress-card textarea { width:100%; border:1px solid rgba(61,83,75,.2); border-radius:9px; background:#fff; color:var(--progress-ink); padding:9px 11px; font:inherit; line-height:1.7; resize:vertical; }
.parent-progress-overview textarea { min-height:70px; }
.parent-progress-overview small { display:block; margin-top:5px; color:var(--progress-muted); }
.parent-progress-cards { display:grid; gap:14px; margin:15px 0; }
.parent-progress-card { padding:16px 17px 14px; border-radius:15px; border:1px solid rgba(61,83,75,.16); background:#fff; box-shadow:0 10px 28px rgba(44,62,54,.06); break-inside:avoid; page-break-inside:avoid; }
.parent-progress-card header { display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.parent-progress-card header small { display:block; color:var(--progress-muted); font-size:10px; letter-spacing:.08em; }
.parent-progress-card h4 { margin:3px 0 0; font-family:"Noto Serif SC","Source Han Serif SC","Songti SC",serif; font-size:16px; }
.parent-progress-status { flex:0 0 auto; padding:5px 9px; border-radius:999px; background:#eef2ef; color:#53615b; font-size:10px; font-weight:700; }
.parent-progress-status.status-mastered { background:#e4f1e8; color:#286347; }
.parent-progress-status.status-progressing { background:#e7eef4; color:#41627f; }
.parent-progress-status.status-needs_attention { background:#f8e8df; color:#96523c; }
.parent-progress-chart { margin:10px 0 8px; overflow-x:auto; }
.parent-progress-chart svg { display:block; width:100%; min-width:430px; height:164px; }
.parent-progress-chart .grid { stroke:#dce3df; stroke-width:1; }
.parent-progress-chart .grid.threshold { stroke:#b7c5bc; stroke-dasharray:5 5; }
.parent-progress-chart .axis, .parent-progress-chart text { fill:#69766f; font-size:10px; text-anchor:middle; }
.parent-progress-chart .axis { text-anchor:start; }
.parent-progress-chart .week { fill:#7f8984; font-size:9px; }
.parent-progress-bar { stroke:rgba(0,0,0,.08); stroke-width:1; }
.parent-progress-bar.phase-0 { fill:var(--progress-green); }
.parent-progress-bar.phase-1 { fill:var(--progress-blue); }
.parent-progress-bar.phase-2 { fill:var(--progress-amber); }
.parent-progress-bar.sparse { fill-opacity:.45; stroke-dasharray:3 2; stroke:#8a9690; }
.parent-progress-value text { fill:#41504a; font-size:10px; font-weight:700; }
.parent-progress-value.sparse text { fill:#8a9690; font-weight:400; }
.parent-progress-chart-legend { display:flex; gap:8px; flex-wrap:wrap; }
.parent-progress-chart-legend span { padding:4px 8px; border-radius:999px; background:#edf2ef; color:#53625b; font-size:10px; }
.parent-progress-chart-legend .sparse-note { background:#f3f0e8; color:#756b56; }
.parent-progress-pass { display:inline-block; margin:2px 0 8px; color:#266349; font-size:11px; font-weight:750; }
.parent-progress-highlight { display:block; margin:8px 0 6px; color:var(--progress-muted); font-size:11px; }
.parent-progress-card textarea { min-height:62px; }
.parent-progress-narrative { margin:9px 0 0; padding-top:8px; border-top:1px solid #e3e7e4; line-height:1.7; }
.parent-progress-compact { margin:16px 0; overflow-x:auto; min-width:0; max-width:100%; }
.parent-progress-compact h4, .parent-progress-compact h3 { margin:0 0 8px; font-family:"Noto Serif SC","Source Han Serif SC","Songti SC",serif; font-size:14px; }
.parent-progress-compact table { width:100%; min-width:600px; border-collapse:collapse; font-size:11px; }
.parent-progress-compact th { color:#53625b; background:#eef2ed; font-weight:700; }
.parent-progress-compact th, .parent-progress-compact td { padding:8px 9px; border-bottom:1px solid #dfe5e1; text-align:left; line-height:1.55; }
.parent-progress-compact thead { display:table-header-group; }
.parent-progress-actions { display:flex; align-items:center; gap:12px; margin-top:12px; }
.parent-progress-actions span { color:var(--progress-muted); font-size:11px; }
.parent-progress-actions span.error { color:#a13c2e; }
.parent-progress-empty { padding:24px; border:1px dashed #bec9c2; border-radius:12px; color:var(--progress-muted); text-align:center; }
.sensory-progress-weeks { display:grid; gap:8px; margin:12px 0; }
.sensory-progress-week { display:grid; grid-template-columns:58px 1fr; gap:10px; align-items:start; }
.sensory-progress-week > strong { padding-top:5px; color:var(--progress-muted); font-size:10px; }
.sensory-progress-week > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:5px 12px; }
.sensory-state { display:grid; grid-template-columns:58px 1fr 30px; gap:6px; align-items:center; font-size:9px; }
.sensory-state i { height:7px; overflow:hidden; border-radius:999px; background:#e7ebe8; }
.sensory-state i b { display:block; width:var(--share); height:100%; background:var(--progress-green); border-radius:inherit; }
.sensory-state:nth-child(2) i b { background:var(--progress-blue); }
.sensory-state:nth-child(3) i b { background:var(--progress-amber); }
.sensory-state:nth-child(4) i b { background:#a05a4a; }
.sensory-state em { color:var(--progress-muted); font-style:normal; }
.parent-progress-print { margin-top:14px; }
.parent-progress-print-head { padding:12px 14px; border-left:4px solid #2f7255; background:#f7f4e9; }
.parent-progress-print-head span { color:#2f7255; font-size:10px; font-weight:700; letter-spacing:.08em; }
.parent-progress-print-head h2 { margin:2px 0 4px !important; border:0 !important; padding:0 !important; font-family:"Noto Serif SC","Source Han Serif SC","Songti SC",serif; font-size:17px !important; }
.parent-progress-print-head p, .parent-progress-print-next p { margin:2px 0; }
.parent-progress-print-next { break-inside:avoid; padding:10px 12px; border:1px solid #cbd6cf; background:#fafaf7; }
.parent-progress-signoff { color:#68756e; font-size:10px; text-align:right; }
.sensory-professional-progress{margin:12px 0;padding:13px;border:1px solid #c9d9d0;border-radius:13px;background:linear-gradient(145deg,#f5faf7,#eef5f1)}
.sensory-professional-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.sensory-professional-head>b{color:#245b43}.sensory-professional-head>span{color:#65776d;font-size:10px}
.sensory-metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sensory-metric-series{padding:10px;border:1px solid #dbe6df;border-radius:10px;background:#fff}.sensory-metric-series header{display:flex;align-items:center;justify-content:space-between;gap:8px}.sensory-metric-series header span{color:#738178;font-size:9px}.sensory-metric-series ol{display:flex;gap:6px;margin:9px 0 0;padding:0;overflow-x:auto;list-style:none}.sensory-metric-series li{min-width:66px;padding:7px;border-left:2px solid #4d8369;background:#f5f8f6}.sensory-metric-series time,.sensory-metric-series small{display:block;color:#78857e;font-size:8px}.sensory-metric-series li>b{display:block;margin:2px 0;color:#203b2d;font-size:13px}
.sensory-video-evidence{margin-top:9px;padding-top:9px;border-top:1px solid #d7e2dc}.sensory-video-evidence>p{display:grid;grid-template-columns:42px 1fr auto;gap:8px;margin:6px 0;color:#43584d;font-size:10px}.sensory-video-evidence small,.sensory-video-empty{color:#78857e;font-size:9px}

@media (max-width:680px) {
  .parent-progress-heading { display:block; }
  .parent-progress-review { display:inline-block; margin-top:10px; }
  .sensory-progress-week { grid-template-columns:1fr; }
  .parent-progress-actions { align-items:flex-start; flex-direction:column; }
  /* 2026-09-05 手机端可读性：图表完整显示（不再 min-width:430 溢出遮最新点），配合窄版坐标系字号相对放大 */
  .parent-progress-chart svg { min-width:0; }
  .parent-progress-chart.narrow text { font-size:13px; }
  .parent-progress-chart.narrow .week { font-size:11px; }
  .parent-progress-chart.narrow .parent-progress-value text { font-size:12px; }
  .parent-progress-heading p { font-size:12px; }
  .parent-progress-source-meta { font-size:11px; }
  .parent-progress-kicker { font-size:11px; }
  .parent-progress-review { font-size:11px; }
  .parent-progress-card header small { font-size:11px; }
  .parent-progress-status { font-size:11px; }
  .parent-progress-chart-legend span { font-size:11px; }
  .parent-progress-pass { font-size:12px; }
  .parent-progress-highlight { font-size:12px; }
  .parent-progress-actions span { font-size:12px; }
  .sensory-state { font-size:11px; grid-template-columns:64px minmax(0,1fr) 34px; }
  .sensory-progress-week > strong { font-size:11px; }
  .parent-progress-compact-hint { margin:0 0 8px; color:var(--progress-muted); font-size:11px; }
  .parent-progress-compact-item { padding:10px 11px; border:1px solid #dfe5e1; border-radius:10px; background:#fff; }
  .parent-progress-compact-item + .parent-progress-compact-item { margin-top:8px; }
  .parent-progress-compact-check { display:flex; align-items:flex-start; gap:8px; font-size:12.5px; line-height:1.5; color:var(--progress-ink); }
  .parent-progress-compact-check input { flex:0 0 auto; margin-top:2px; }
  .parent-progress-compact-row { display:flex; align-items:flex-start; gap:8px; margin-top:7px; }
  .parent-progress-compact-row p { flex:1; min-width:0; margin:0; color:var(--progress-muted); font-size:11.5px; line-height:1.6; }
}

@media print {
  @page { size:A4 portrait; margin:12mm; }
  .parent-progress-section textarea, .parent-progress-highlight, .parent-progress-actions { display:none !important; }
  .parent-progress-card { box-shadow:none; border-color:#aeb8b2; break-inside:avoid; page-break-inside:avoid; }
  .parent-progress-cards { display:block; }
  .parent-progress-card + .parent-progress-card { margin-top:8px; }
  .parent-progress-chart { overflow:visible; }
  .parent-progress-chart svg { min-width:0; }
  .parent-progress-compact { overflow:visible; }
  .parent-progress-compact table { min-width:0; }
  .parent-progress-compact thead { display:table-header-group; }
/* 2026-09-28 Martin 反馈：打印/PDF 不再改成黑灰柱，保留品牌三色并降低稀疏周强调。 */
  .parent-progress-bar.phase-0 { fill:#2f7255; stroke:#205b43; }
  .parent-progress-bar.phase-1 { fill:#55738f; stroke:#405a73; }
  .parent-progress-bar.phase-2 { fill:#a67335; stroke:#855a27; }
  .parent-progress-status, .parent-progress-review, .parent-progress-chart-legend span { color:#222 !important; background:#eee !important; border:1px solid #aaa; }
}

@media (max-width:680px) {
  .sensory-professional-head{align-items:flex-start;flex-direction:column}
  .sensory-metric-grid{grid-template-columns:1fr}
  .sensory-video-evidence>p{display:flex;flex-direction:column;gap:3px;padding:7px 0;border-bottom:1px solid #e0e8e3}
  .sensory-video-evidence>p:last-child{border-bottom:0}
}

/* 2026-09-23 大类×三态视图（2026-10-17 决策#11：去掉 break-inside:avoid，分页单位放宽为课题行） */
.parent-progress-category { margin:12px 0; padding:12px 14px; border:1px solid #e2e9e5; border-radius:12px; background:#fbfdfc; }
/* 2026-10-21 大类前空白根因修复：宿主页面（teacher.html 页头）的裸 header 全局规则
   （width:min(880px,…); margin:0 auto; padding:26px 0 14px）穿透进注入的本组件——
   每个大类卡片 header 被居中收窄到 880px，两侧各约 84px 空白＋顶部 26px（文字层此前已
   用 cleanLabel 修过两次无效，因空白在布局层不在文字层）。组件根级重置全部后代 header。 */
.parent-progress-section header, .parent-progress-cycle header, .sensory-metric-series header { margin:0; padding:0; width:auto; }
.parent-progress-category header { display:flex; justify-content:space-between; align-items:baseline; gap:8px; }
.parent-progress-category h4 { margin:0; font-size:15px; color:#2f3d36; }
.parent-progress-category header span { font-size:11px; color:#53625b; white-space:nowrap; }
.parent-progress-state { margin:10px 0 4px; }
.parent-progress-state > b { display:inline-block; padding:3px 8px; border-radius:999px; font-size:11px; margin-bottom:6px; }
.parent-progress-state.state-passed > b { background:#e6f5ec; color:#1c7c47; }
.parent-progress-state.state-improving > b { background:#e8f0fb; color:#2f5f9e; }
.parent-progress-state.state-focus > b { background:#f8efe2; color:#8a6420; }
.parent-progress-state ul { list-style:none; margin:0; padding:0; }
.parent-progress-state li { border-top:1px dashed #e4ebe7; }
.parent-progress-state details summary { display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding:7px 2px; cursor:pointer; font-size:13px; color:#37453e; }
.parent-progress-state details summary::-webkit-details-marker { display:none; }
.parent-progress-state details summary::before { content:"▸"; color:#9aa8a1; font-size:10px; }
.parent-progress-state details[open] summary::before { content:"▾"; }
.parent-progress-state details summary small { color:#7f8984; font-size:11px; }
.parent-progress-pass-date { color:#1c7c47; font-size:11px; }
.parent-progress-sparse-tag { color:#756b56; font-size:10px; background:#f3f0e8; border-radius:999px; padding:2px 7px; }
.parent-progress-detail { padding:4px 2px 10px; }
.parent-progress-detail-note { margin:2px 0 0; font-size:10px; color:#7f8984; }
/* 2026-10-21 全周期说明输入框修复：cycle 编辑行的 textarea 不在 .parent-progress-category 内，
   原规则选择器不命中 → width:100% 失效，输入框缩成约 180px 窄条。两个容器统一全宽＋完整视觉样式。 */
.parent-progress-category textarea, .parent-progress-cycle textarea { width:100%; min-height:52px; margin-top:6px; border:1px solid rgba(61,83,75,.2); border-radius:9px; background:#fff; color:var(--progress-ink); padding:9px 11px; font:inherit; line-height:1.7; resize:vertical; box-sizing:border-box; }
.parent-progress-category-editor label { display:block; font-size:11px; color:#5f6d66; margin-top:8px; }
.parent-progress-category-narrative { margin:8px 0 0; font-size:12px; color:#4c5a53; }

/* ===== 2026-10-17 对审稿定稿：图表可读性（通过线/✓徽标/白话注解）＋训练小项陈列 ===== */
/* 2026-10-18：去掉竖排轴题（贴边被裁且家长不必读）；百分比文字加白色描边，80% 虚线不再穿过数字 */
.parent-progress-value > text:not(.week) { paint-order:stroke; stroke:#fff; stroke-width:3px; stroke-linejoin:round; }
.parent-progress-chart .grid.threshold { stroke:#2f7255; stroke-dasharray:5 4; stroke-width:1.4; }
/* 2026-10-18：「通过线 80%」原来被 CSS 的 text-anchor:end 右对齐到 x=54 左侧，压到纵轴和轴题上；
   改为与标记一致的 start，并从 x=left+6 向右画；白描边保证压到柱子上也能读。 */
.parent-progress-chart .through-tag { fill:#2f7255; font-size:10px; font-weight:700; text-anchor:start; paint-order:stroke; stroke:#fff; stroke-width:3px; stroke-linejoin:round; }
.parent-progress-chart .week.sub { fill:#a2b0a8; font-size:9px; }
.parent-progress-pass-badge rect { fill:#2f7255; }
.parent-progress-pass-badge text { fill:#fff; font-size:10px; font-weight:700; }
.parent-progress-chart-note { margin:6px 0 0; font-size:11px; color:#6b7973; line-height:1.6; }
/* 2026-10-17 决策#13B：陈列行单行弱化——标签改小徽章、全部去粗、「现在」绿色小字标，明确低于课题标题层级 */
.parent-progress-drill { margin:10px 0 2px; padding-top:8px; border-top:1px dashed #e0e9e4; font-size:11px; color:#85988f; line-height:1.8; }
.parent-progress-drill .drill-label { display:inline-block; font-size:10px; color:#96a8a0; background:#f0f4f1; border-radius:4px; padding:1px 7px; margin-right:8px; letter-spacing:.06em; }
.parent-progress-drill .drill-arrow { font-style:normal; color:#c3d1ca; margin:0 6px; font-size:10px; }
.parent-progress-drill .drill-now-mark { font-style:normal; font-size:10px; color:#2f7255; background:#e2f2e9; border-radius:4px; padding:0 5px; margin-right:5px; }
.parent-progress-drill b { font-weight:inherit; }

/* ===== 2026-10-17 全周期四层形式 ===== */
.parent-progress-cycle .cycle-summary { width:100%; border-collapse:collapse; font-size:12.5px; }
.parent-progress-cycle .cycle-summary th { background:#f1f6f4; color:#44584e; text-align:left; padding:9px 10px; border-bottom:2px solid #cfe0d6; }
.parent-progress-cycle .cycle-summary td { padding:9px 10px; border-bottom:1px solid #e3ebe7; }
.parent-progress-cycle .cycle-summary td.center { text-align:center; }
.parent-progress-cycle .cycle-range { font-variant-numeric:tabular-nums; color:#3d5248; }
.parent-progress-cycle .cycle-range b { color:#145c39; font-size:14px; }
.cycle-trend { font-weight:700; font-size:12px; white-space:nowrap; }
.cycle-trend.trend-up { color:#2f7255; }
.cycle-trend.trend-flat { color:#a67335; }
.cycle-trend.trend-down { color:#a1493d; }
.cycle-trend.trend-unknown { color:#8ba39a; }
.cycle-row-editor td { padding:0 10px 8px; border-bottom:1px solid #e3ebe7; }
.cycle-sub { margin:18px 0 8px; font-family:"Noto Serif SC","Source Han Serif SC","Songti SC",serif; font-size:14px; color:#2f3d36; }
.cycle-timeline { list-style:none; margin:0; padding:0; position:relative; }
.cycle-timeline::before { content:""; position:absolute; left:8px; top:8px; bottom:8px; width:2px; background:#cfe0d6; }
.cycle-timeline li { position:relative; padding:0 0 12px 30px; }
.cycle-timeline li::before { content:""; position:absolute; left:2px; top:5px; width:13px; height:13px; border-radius:50%; background:#2f7255; border:3px solid #e2f2e9; }
.cycle-timeline time { display:block; font-size:11px; color:#6b7973; font-variant-numeric:tabular-nums; }
.cycle-timeline b { font-size:13px; color:#24352f; }
.cycle-timeline span { display:block; font-size:11.5px; color:#55655d; }
.cycle-topic-list { display:grid; gap:8px; }
.cycle-topic-row { display:flex; flex-wrap:wrap; align-items:center; gap:10px 14px; padding:10px 12px; border:1px solid #e0e9e4; border-radius:10px; background:#fbfdfc; }
.cycle-topic-name { flex:1 1 200px; min-width:0; }
.cycle-topic-name b { font-size:13.5px; }
.cycle-topic-name small { display:block; color:#6b7973; font-size:11px; }
.cycle-topic-range { flex:0 0 auto; font-variant-numeric:tabular-nums; color:#3d5248; font-size:13px; }
.cycle-topic-range b { color:#145c39; font-size:15px; }
.cycle-topic-row .pill { flex:0 0 auto; border-radius:999px; padding:3px 11px; font-size:11px; font-weight:700; white-space:nowrap; }
.cycle-topic-row .pill.state-passed { background:#e2f2e9; color:#2f7255; }
.cycle-topic-row .pill.state-improving { background:#e9f0f6; color:#55738f; }
.cycle-topic-row .pill.state-focus { background:#f7efe2; color:#a67335; }
.cycle-all-list { margin-top:14px; border-top:1px dashed #dfe7e2; padding-top:10px; }
.cycle-all-list summary { cursor:pointer; color:#6b7973; font-size:12px; }
.cycle-all-list table { width:100%; margin-top:8px; border-collapse:collapse; font-size:11.5px; }
.cycle-all-list th { background:#f1f6f4; text-align:left; padding:7px 9px; }
.cycle-all-list td { padding:7px 9px; border-bottom:1px solid #e8eeea; }

/* 2026-10-17 决策#11：PDF 分页最小单位放宽为课题卡/课题行——大类块允许跨页，消除整块推页的半页空白 */
.parent-progress-category { break-inside:auto; }
.parent-progress-state li { break-inside:avoid; page-break-inside:avoid; }
.parent-progress-category header { break-after:avoid; }
.cycle-timeline li, .cycle-topic-row, .cycle-all-list table tr { break-inside:avoid; page-break-inside:avoid; }

@media print {
  .parent-progress-drill { color:#7d8f86 !important; }
  .cycle-trend.trend-up { color:#2f7255 !important; }
  .cycle-trend.trend-flat { color:#8a6420 !important; }
  .cycle-trend.trend-down { color:#a1493d !important; }
}
