/* Student progress: focus on two generous overview cards; line trend lives below the practice results. */
.progress-pro-page .progress-overview-grid {
  grid-template-columns: minmax(275px,.72fr) minmax(400px,1.28fr);
  gap: 22px;
}
.progress-pro-page .progress-overview-grid > .progress-disclosure {
  min-width: 0;
}
.progress-pro-page .progress-disclosure .monthly-learning-overview.is-alltime {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
}
.progress-pro-page .is-alltime .progress-overall-summary { width: 100%; gap: 16px; }
.progress-pro-page .is-alltime .progress-score-ring { width: 166px; height: 166px; flex-basis: 166px; }
.progress-pro-page .is-alltime .progress-overall-description { width: 100%; }
.progress-pro-page .progress-radar-card {
  width: 100%; min-width: 0;
  display: flex; align-items: center; justify-content: center;
}
.progress-pro-page .progress-radar-card .progress-six-radar {
  width: 100%; min-height: 390px; border: 0;
  background: linear-gradient(145deg,var(--ui-surface),var(--ui-surface-2));
  padding: 16px 18px 6px;
}
.progress-pro-page .progress-radar-card .progress-radar-heading { padding-inline: 16px; }
.progress-pro-page .progress-radar-card .progress-radar-heading strong { font-size: 18px; }
.progress-pro-page .progress-radar-card .progress-radar-heading span { font-size: 13px; }
.progress-pro-page .progress-radar-card .progress-six-radar svg {
  width: 100%; max-width: 650px; min-height: 325px; margin: 2px auto 0;
}
.progress-pro-page .progress-radar-card .progress-radar-label { font-size: 15.5px; }
.progress-pro-page .progress-lower-trend { margin-top: 26px; min-width: 0; }
.progress-pro-page .progress-lower-trend > .progress-disclosure { max-width: 100%; }
.progress-pro-page .progress-lower-trend .progress-trend-chart {
  padding: 10px 22px 15px;
  border: 1px solid var(--ui-border);
  border-radius: 19px;
  background: linear-gradient(180deg,var(--ui-surface),var(--ui-surface-2));
  color: var(--ui-accent);
}
.progress-pro-page .progress-lower-trend .progress-trend-chart svg {
  width: 100%; max-width: 1080px; max-height: 365px;
  margin: 16px auto 20px;
}
.progress-pro-page .progress-lower-trend .progress-chart-line {
  stroke: #536de3; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round;
  filter: drop-shadow(0 3px 3px rgba(77,104,214,.17));
}
.progress-pro-page .progress-lower-trend .progress-chart-dot {
  fill: var(--ui-surface); stroke: #4965d3; stroke-width: 3.5;
}
.progress-pro-page .progress-lower-trend .progress-chart-grid {
  stroke: var(--ui-border); stroke-width: 1; stroke-dasharray: 4 7;
}
.progress-pro-page .progress-lower-trend .trend-point-halo {
  stroke: #6a89e7; stroke-width: 1.5; fill: rgba(94,122,230,.1);
}
.progress-pro-page .progress-lower-trend .trend-selected-guide { stroke: #8fa6e7; stroke-width: 1.5; stroke-dasharray: 4 6; }
.progress-pro-page .progress-lower-trend .trend-point-inspector {
  border: 1px solid var(--ui-border);
  border-radius: 14px; background: var(--ui-surface);
}
.progress-pro-page .progress-lower-trend .trend-chart-legend { color: var(--ui-text-2); }
.idea-page .idea-word-help {
  display: flex; align-items: center; gap: 10px;
  color: var(--ui-text); background: var(--ui-accent-soft);
  border: 1px solid var(--ui-border); border-inline-start: 4px solid var(--ui-accent);
  border-radius: 13px; padding: 12px 18px; margin: 0 0 18px;
  font-size: 14px; font-weight: 700; line-height: 1.85;
}
.idea-page .idea-word-help svg { flex: none; color: var(--ui-accent); }
@media(max-width: 1120px) {
  .progress-pro-page .progress-overview-grid { grid-template-columns: 1fr; }
  .progress-pro-page .progress-radar-card .progress-six-radar { max-width: 760px; margin-inline: auto; }
}
@media(max-width: 600px) {
  .progress-pro-page .progress-lower-trend .progress-trend-chart { padding: 6px 8px; }
  .progress-pro-page .progress-radar-card .progress-six-radar { padding-inline: 5px; }
  .progress-pro-page .progress-radar-card .progress-six-radar svg { min-height: 0; }
}

/* Scoped only to four instructor-evaluation KPI tiles. */
.class-session-panel .class-session-progress-kpis,
.teacher-student-report-shared .class-session-progress-kpis { gap: 13px; }
.class-session-panel .class-session-progress-kpis > div,
.teacher-student-report-shared .class-session-progress-kpis > div {
  position: relative; isolation: isolate; overflow: hidden;
  min-height: 112px; padding: 17px 20px; border-radius: 17px;
  border: 1px solid var(--ui-border, rgba(87,105,150,.17));
  background: linear-gradient(145deg, #eef3ff 0%, #dce6ff 100%);
  box-shadow: 0 5px 17px rgba(29,61,124,.055);
  transition: transform .18s ease,box-shadow .18s ease;
}
.class-session-panel .class-session-progress-kpis > div:nth-child(2),
.teacher-student-report-shared .class-session-progress-kpis > div:nth-child(2) { background: linear-gradient(145deg,#e7f6f4,#d6f0e9); }
.class-session-panel .class-session-progress-kpis > div:nth-child(3),
.teacher-student-report-shared .class-session-progress-kpis > div:nth-child(3) { background: linear-gradient(145deg,#f0ecff,#e3dcfa); }
.class-session-panel .class-session-progress-kpis > div:nth-child(4),
.teacher-student-report-shared .class-session-progress-kpis > div:nth-child(4) { background: linear-gradient(145deg,#fff5e7,#f8e9d9); }
.class-session-panel .class-session-progress-kpis > div::before,
.teacher-student-report-shared .class-session-progress-kpis > div::before {
  content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:4px;
  background:#5074cb;
}
.class-session-panel .class-session-progress-kpis > div:nth-child(2)::before,
.teacher-student-report-shared .class-session-progress-kpis > div:nth-child(2)::before {background:#2c907f;}
.class-session-panel .class-session-progress-kpis > div:nth-child(3)::before,
.teacher-student-report-shared .class-session-progress-kpis > div:nth-child(3)::before {background:#7b65bc;}
.class-session-panel .class-session-progress-kpis > div:nth-child(4)::before,
.teacher-student-report-shared .class-session-progress-kpis > div:nth-child(4)::before {background:#c28842;}
.class-session-panel .class-session-progress-kpis span,
.teacher-student-report-shared .class-session-progress-kpis span { color:#44536d;font-weight:650;font-size:13px; }
.class-session-panel .class-session-progress-kpis strong,
.teacher-student-report-shared .class-session-progress-kpis strong { color:#2e4d96;font-size:29px;font-weight:850;margin-top:8px; }
.class-session-panel .class-session-progress-kpis > div:nth-child(2) strong,
.teacher-student-report-shared .class-session-progress-kpis > div:nth-child(2) strong {color:#1c7568;}
.class-session-panel .class-session-progress-kpis > div:nth-child(3) strong,
.teacher-student-report-shared .class-session-progress-kpis > div:nth-child(3) strong {color:#6951a5;}
.class-session-panel .class-session-progress-kpis > div:nth-child(4) strong,
.teacher-student-report-shared .class-session-progress-kpis > div:nth-child(4) strong {color:#93601d;}
.class-session-panel .class-session-progress-kpis > div:hover {transform:translateY(-2px);box-shadow:0 9px 23px rgba(29,61,124,.1);}
[data-theme="dark"] .class-session-panel .class-session-progress-kpis > div,
[data-theme="dark"] .teacher-student-report-shared .class-session-progress-kpis > div {background:linear-gradient(135deg,#273857,#202e48);border-color:#405377;}
[data-theme="dark"] .class-session-panel .class-session-progress-kpis > div:nth-child(2) {background:linear-gradient(135deg,#1f4542,#1b343b);}
[data-theme="dark"] .class-session-panel .class-session-progress-kpis > div:nth-child(3) {background:linear-gradient(135deg,#3b3158,#2c2948);}
[data-theme="dark"] .class-session-panel .class-session-progress-kpis > div:nth-child(4) {background:linear-gradient(135deg,#48402f,#353341);}
[data-theme="dark"] .class-session-panel .class-session-progress-kpis span {color:#c8d4ed;}
[data-theme="dark"] .class-session-panel .class-session-progress-kpis strong {color:#e3ecff;}
@media(max-width:700px){.class-session-panel .class-session-progress-kpis > div{min-height:96px;padding:13px;}}
@media(prefers-reduced-motion:reduce){.class-session-panel .class-session-progress-kpis > div{transition:none;}}

.idea-page .idea-word-help {
  display:flex;align-items:center;gap:10px;direction:rtl;
  color:var(--ui-text);background:var(--ui-accent-soft);
  border:1px solid var(--ui-border);border-inline-start:4px solid var(--ui-accent);
  border-radius:13px;padding:12px 18px;margin:0 0 18px;
  font-size:14px;font-weight:700;line-height:1.85;
}
.idea-page .idea-word-help svg {flex:none;color:var(--ui-accent);}

.reading-marker-workspace { min-width: 0; }
.reading-marker-toolbar {
  display: flex; align-items: center; flex-wrap: wrap;
  gap: 10px 14px; padding: 14px 17px; margin: 0 0 18px;
  border-radius: 16px; border: 1px solid var(--ui-border);
  background: linear-gradient(120deg, var(--ui-accent-soft), var(--ui-surface));
}
.reading-marker-button {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 43px; padding: 8px 17px; border-radius: 12px;
  border: 1px solid var(--ui-accent); background: var(--ui-surface);
  color: var(--ui-accent); font-weight: 800; cursor: pointer;
  transition: background .17s ease, transform .17s ease;
}
.reading-marker-button:hover:not(:disabled) { background: var(--ui-accent-soft); transform: translateY(-1px); }
.reading-marker-button.is-active { background: var(--ui-accent); color: #fff; box-shadow: 0 5px 14px rgba(54,83,171,.18); }
.reading-marker-button:disabled { opacity: .5; cursor: not-allowed; }
.reading-marker-help { flex: 1 1 310px; min-width: 210px; margin: 0; color: var(--ui-text-2); font-size: 13px; line-height: 1.9; }
.reading-marker-help strong { color: var(--ui-text); }
.reading-marker-clear {
  display: inline-flex; align-items: center; gap: 7px; border: 1px solid var(--ui-border);
  border-radius: 10px; background: var(--ui-surface); color: var(--ui-text);
  min-height: 39px; padding: 6px 12px; font-size: 13px; font-weight: 700; cursor: pointer;
}
.reading-marker-workspace.is-marking :is(.phase4-reading-passage p, .phase4-question-prompt, .phase4-question-card label, .phase4-question-card span) {
  user-select: text; -webkit-user-select: text; cursor: text;
}
::highlight(class-reading-pencil) { background: #fbd95f; color: #20335d; text-decoration: underline; text-decoration-color: #dcad31; }
[data-theme="dark"] ::highlight(class-reading-pencil) { background: #e1bd53; color: #16213d; }
@media(max-width: 600px) { .reading-marker-toolbar { padding: 12px; } .reading-marker-button { width: 100%; } }


/* Fine-grained production overrides matching the three requested UI areas. */
.progress-pro-page .study-recent-list { display:none!important; }
.progress-pro-page .progress-overview-grid { grid-template-columns:minmax(260px,.8fr) minmax(390px,1.4fr); }
.progress-pro-page .progress-overview-grid .progress-radar-card .progress-six-radar {
 width:100%;min-height:410px;padding:18px 12px;background:linear-gradient(145deg,var(--ui-surface),var(--ui-surface-2));border:1px solid var(--ui-border);border-radius:17px;
}
.progress-pro-page .progress-overview-grid .progress-radar-card svg {max-width:700px;max-height:none;min-height:320px;}
.progress-pro-page .monthly-learning-overview.is-alltime {display:flex;flex-direction:column;align-items:center;}
.progress-pro-page .monthly-learning-overview.is-alltime .progress-overall-summary {width:100%;display:flex;flex-direction:column;align-items:center;}
.progress-pro-page .progress-lower-trend {margin-top:30px;}
.idea-page .idea-result::before {
 content:"برای دیدن معنی فارسی، روی هر واژهٔ آلمانی در متن کلیک کنید یا آن را لمس کنید؛ معنی همان واژه مشخص می‌شود.";
 display:flex;align-items:center;border-radius:13px;border:1px solid var(--ui-border);
 border-inline-start:4px solid var(--ui-accent);
 padding:12px 18px;margin:0 0 18px;font-weight:750;font-size:14px;line-height:1.9;
 color:var(--ui-text);background:var(--ui-accent-soft);white-space:normal;
}
.cz-reading-pencil {
 box-sizing:border-box;position:fixed;bottom:20px;left:20px;z-index:1300;
 display:flex;flex-wrap:wrap;gap:9px;align-items:center;direction:rtl;
 width:min(440px,calc(100vw - 30px));padding:13px;
 border:1px solid var(--ui-border);border-radius:18px;
 background:var(--ui-surface);color:var(--ui-text);box-shadow:0 15px 35px rgba(21,38,88,.19);
}
.cz-reading-pencil[hidden] {display:none!important;}
.cz-reading-pencil-toggle,.cz-reading-pencil-clear {
 min-height:42px;padding:8px 14px;display:inline-flex;align-items:center;gap:6px;
 border-radius:11px;border:1px solid var(--ui-border);font-weight:800;font-size:13px;
 color:var(--ui-accent);background:var(--ui-accent-soft);cursor:pointer;
}
.cz-reading-pencil-toggle[aria-pressed="true"] {background:var(--ui-accent);color:#fff;}
.cz-reading-pencil-clear {background:var(--ui-surface);font-weight:650;}
.cz-reading-pencil-toggle:disabled {opacity:.6;cursor:not-allowed;}
.cz-reading-pencil-guide {margin:0;flex:1 1 100%;font-size:12px;line-height:1.9;color:var(--ui-text-2);}
::highlight(cz-reading-pencil-20261020) {background:#ffdc69;color:#24334f;text-decoration:underline;text-decoration-color:#dfb43d;}
[data-theme="dark"] ::highlight(cz-reading-pencil-20261020) {background:#d7b652;color:#151e31;}
@media(max-width:1120px) { .progress-pro-page .progress-overview-grid {grid-template-columns:1fr;} }
@media(max-width:600px) {
 .cz-reading-pencil {bottom:9px;left:8px;width:calc(100vw - 16px);}
 .progress-pro-page .progress-overview-grid .progress-radar-card svg {min-height:0;}
}
