/* QuestFlow 1.3.695 — Discursivas student interface.
 * Scoped to the Discursivas root. No global QuestFlow history, cycle or calendar rules.
 * Button geometry deliberately overrides the legacy !important button layer.
 */
.questflow .qfd170.qfd195-student {
  --qfd195-accent:var(--qf-blue-800,#2b79aa);
  --qfd195-soft:rgba(104,178,227,.08);
  --qfd195-success:#067647;
  --qfd195-success-bg:#ecfdf3;
  --qfd195-warning:#9a6700;
  --qfd195-warning-bg:#fffaeb;
  --qfd195-radius:14px;
  width:100%; min-width:0; color:var(--qfd-text); font-size:14px; line-height:1.5;
}
body.qf-theme-dark .questflow .qfd195-student,
.questflow .qfd195-student.qf-theme-dark {
  --qfd195-accent:#85c6ef;
  --qfd195-soft:rgba(104,178,227,.09);
  --qfd195-success:#83deb2;
  --qfd195-success-bg:rgba(18,183,106,.12);
  --qfd195-warning:#f3cc80;
  --qfd195-warning-bg:rgba(245,158,11,.10);
}
.qfd195-student .qfd195-icon { display:block; width:20px; height:20px; flex:0 0 20px; }
.qfd195-student [hidden] { display:none!important; }
/* One component, one geometry — including badges and active states. */
body .questflow .qfd170.qfd189-student.qfd195-student .qfd170-btn {
  box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center;
  gap:8px; min-width:0; height:44px!important; min-height:44px!important; max-width:100%;
  padding:10px 16px!important; margin:0; border-radius:12px!important;
  font-family:inherit!important; font-size:13px!important;
  font-weight:600!important; line-height:1.35!important; letter-spacing:0!important;
  text-transform:none!important; white-space:normal; text-align:center;
  text-decoration:none!important; -webkit-text-fill-color:currentColor!important;
}
body .questflow .qfd170.qfd189-student.qfd195-student .qfd170-btn-primary {
  background:var(--qf-blue-800,#2b79aa)!important; color:#fff!important;
  border:1px solid var(--qf-blue-800,#2b79aa)!important;
}
body .questflow .qfd170.qfd189-student.qfd195-student .qfd170-btn-ghost {
  background:var(--qfd-card)!important; color:var(--qfd-text)!important;
  border:1px solid var(--qfd-border)!important;
}
body .questflow .qfd170.qfd189-student.qfd195-student .qfd170-btn-ghost:hover {
  background:var(--qfd195-soft)!important; border-color:var(--qfd195-accent)!important;
}
.qfd195-student :is(a,button,summary,input,select,textarea):focus-visible {
  outline:2px solid var(--qfd195-accent)!important; outline-offset:3px!important;
}
.qfd195-student .qfd170-btn:disabled { cursor:not-allowed; opacity:.55; }
/* Header: equal columns and explicit equal height, not content-sized flex buttons. */
.questflow .qfd195-student .qfd195-course-head {
  display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
  padding:0 0 24px; margin:0; border:0;
}
.qfd195-student .qfd189-head-copy { flex:1 1 270px; min-width:0; }
.qfd195-student .qfd195-eyebrow { display:block; margin:0 0 6px; color:var(--qfd195-accent); font-size:12px; font-weight:650; }
.questflow .qfd195-student .qfd189-head-copy h1 { margin:0; font-size:clamp(22px,2.2vw,28px); font-weight:700; line-height:1.25; letter-spacing:-.035em; color:var(--qfd-text); overflow-wrap:anywhere; }
.questflow .qfd195-student .qfd189-head-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:10px; width:416px; max-width:100%; flex:0 0 auto; margin:0; }
body .questflow .qfd170.qfd189-student.qfd195-student .qfd189-head-actions>.qfd170-btn { width:100%; height:44px!important; min-height:44px!important; padding:8px 10px!important; flex:none; gap:7px; }
.qfd195-student .qfd195-head-link .qfd195-icon { width:17px; height:17px; flex-basis:17px; color:var(--qfd195-accent); }
.qfd195-student .qfd195-head-label { min-width:0; }
body .questflow .qfd170.qfd189-student.qfd195-student .qfd195-head-link.is-current { background:var(--qfd195-soft)!important; border-color:var(--qfd195-accent)!important; color:var(--qfd195-accent)!important; }
.qfd195-student .qfd189-head-count { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; height:20px; min-width:20px; padding:0 5px; margin:0; border-radius:6px; color:var(--qfd195-accent); background:var(--qfd195-soft); font-size:11px; line-height:1; font-weight:700; font-variant-numeric:tabular-nums; }
.questflow .qfd195-student .qfd189-support-link { display:inline-flex; align-items:center; gap:6px; min-height:32px; margin:8px 0 0; padding:0; font-weight:500; line-height:1.4; font-family:inherit; font-size:12px; color:var(--qfd-muted); border:0; background:none; box-shadow:none; text-transform:none; cursor:pointer; }
.qfd195-student .qfd189-support-link .qfd195-icon { width:15px; height:15px; flex-basis:15px; }
.questflow .qfd195-student .qfd189-support-link:hover { color:var(--qfd195-accent); background:none; text-decoration:underline; }
/* Overview */
.qfd195-student .qfd195-overview { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:0 0 24px; }
.qfd195-student .qfd195-kpi { display:flex; flex-direction:column; min-width:0; padding:18px 20px; border:1px solid var(--qfd-border); border-radius:var(--qfd195-radius); background:var(--qfd-card); }
.qfd195-student .qfd195-kpi-top { display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:12px; font-weight:550; color:var(--qfd-muted); }
.qfd195-student .qfd195-kpi-top>.qfd195-icon { color:var(--qfd195-accent); width:18px; height:18px; flex-basis:18px; }
.qfd195-student .qfd195-kpi-number { display:flex; align-items:baseline; gap:8px; margin:8px 0 14px; font-variant-numeric:tabular-nums; }
.qfd195-student .qfd195-kpi-number>strong { font-size:30px; line-height:1.15; font-weight:700; letter-spacing:-.04em; color:var(--qfd-text); }
.qfd195-student .qfd195-kpi-number>span { font-size:13px; color:var(--qfd-muted); }
.qfd195-student .qfd195-progress-track { width:100%; height:4px; background:var(--qfd195-soft); border-radius:4px; overflow:hidden; margin:auto 0 4px; }
.qfd195-student .qfd195-progress-track>span { display:block; height:100%; background:var(--qfd195-accent); border-radius:4px; }
.qfd195-student .qfd190-kpi-link { display:inline-flex; align-items:center; gap:5px; width:fit-content; font-size:12px; font-weight:600; line-height:1.4; color:var(--qfd195-accent); text-decoration:none; margin-top:auto; }
.qfd195-student .qfd190-kpi-link:hover { text-decoration:underline; }
.qfd195-student .qfd190-kpi-link svg { width:14px; height:14px; flex-basis:14px; }
.qfd195-student .qfd195-kpi-note { font-size:11px; color:var(--qfd-muted); margin-top:auto; }
/* Navigation and native filter panels */
.questflow .qfd195-student .qfd186-student-tabs { display:flex; align-items:center; gap:6px; padding:5px; margin:0 0 22px; border:1px solid var(--qfd-border); border-radius:12px; background:var(--qfd-bg); width:fit-content; max-width:100%; overflow-x:auto; }
.questflow .qfd195-student .qfd186-student-tabs>a { display:flex; align-items:center; justify-content:center; min-height:38px; padding:8px 20px; margin:0; border:0; border-radius:8px; font-size:13px; font-weight:550; line-height:1.4; color:var(--qfd-muted); text-decoration:none; }
.questflow .qfd195-student .qfd186-student-tabs>a.is-active { color:var(--qfd195-accent); background:var(--qfd-card); font-weight:650; box-shadow:0 1px 4px #1018280a; }
.questflow .qfd195-student .qfd189-content-head { display:flex; justify-content:space-between; align-items:center; gap:14px; margin:0 0 16px; padding:0; }
.questflow .qfd195-student .qfd189-content-head h2 { font-size:18px; line-height:1.4; font-weight:650; letter-spacing:-.02em; margin:0; color:var(--qfd-text); }
.questflow .qfd195-student .qf-center-filters { margin:0 0 18px; }
.questflow .qfd195-student .qfd189-content-filters { grid-template-columns:minmax(150px,1.2fr) repeat(3,minmax(120px,1fr)) auto; }
.questflow .qfd195-student .qf-center-filter input[type=search] { width:100%; min-height:42px; padding:10px 12px; border:1px solid var(--qfd-border); border-radius:10px; background:var(--qfd-card); color:var(--qfd-text); font:inherit; font-size:13px; }
/* Module and topic hierarchy */
.questflow .qfd195-student .qfd183-group { margin:0 0 16px; border:1px solid var(--qfd-border); border-radius:var(--qfd195-radius); background:var(--qfd-card); box-shadow:none; overflow:hidden; }
.questflow .qfd195-student .qfd183-group>summary { display:grid; grid-template-columns:32px minmax(0,1fr) auto 20px; align-items:center; gap:12px; padding:14px 18px; border:0; background:var(--qfd-card); cursor:pointer; list-style:none; }
.questflow .qfd195-student .qfd183-group[open]>summary { border-bottom:1px solid var(--qfd-border); }
.qfd195-student summary::marker { content:''; }
.qfd195-student summary::-webkit-details-marker { display:none; }
.questflow .qfd195-student .qfd183-group>summary:before,.questflow .qfd195-student .qfd183-group>summary:after { content:none; }
.qfd195-student .qfd195-module-icon { display:flex; align-items:center; justify-content:center; width:32px; height:32px; border-radius:9px; background:var(--qfd195-soft); color:var(--qfd195-accent); }
.questflow .qfd195-student .qfd183-group>summary .qfd191-group-title { display:block; min-width:0; }
.questflow .qfd195-student .qfd183-group>summary strong { display:block; font-size:15px; line-height:1.4; font-weight:650; overflow-wrap:anywhere; }
.questflow .qfd195-student .qfd183-group-count { font-size:12px; color:var(--qfd-muted); white-space:nowrap; margin:0; }
.questflow .qfd195-student .qfd183-group-body { padding:12px; background:var(--qfd-bg); }
.questflow .qfd195-student .qfd170-compact-topics { display:grid; gap:10px; }
.questflow .qfd195-student .qfd170-compact-topic { margin:0; border:1px solid var(--qfd-border); border-radius:12px; background:var(--qfd-card); overflow:hidden; box-shadow:none; }
.questflow .qfd195-student .qfd170-compact-topic>summary { display:grid; grid-template-columns:34px minmax(0,1fr) auto 18px; align-items:center; gap:12px; padding:15px 16px; background:var(--qfd-card); border:0; cursor:pointer; list-style:none; }
.questflow .qfd195-student .qfd170-compact-topic[open]>summary { border-bottom:1px solid var(--qfd-border); background:var(--qfd195-soft); }
.qfd195-student .qfd195-topic-icon { display:flex; align-items:center; justify-content:center; width:34px; height:38px; color:var(--qfd195-accent); background:var(--qfd-card); border:1px solid var(--qfd-border); border-radius:8px; }
.questflow .qfd195-student .qfd170-topic-summary-title { min-width:0; margin:0; font-size:14px; line-height:1.5; flex:none; }
.qfd195-student .qfd170-topic-summary-title>strong { display:block; font-weight:650; font-size:15px; line-height:1.4; color:var(--qfd-text); overflow-wrap:anywhere; }
.questflow .qfd195-student .qfd183-item-kind { display:block; font-size:11px; line-height:1.4; font-weight:500; letter-spacing:0; text-transform:none; margin:0 0 3px; color:var(--qfd-muted); }
.questflow .qfd195-student .qfd170-topic-summary-meta { display:flex; align-items:center; gap:8px; max-width:none; flex:none; flex-wrap:wrap; justify-content:flex-end; margin:0; }
.qfd195-student .qfd189-study-state { display:inline-flex; align-items:center; gap:5px; color:var(--qfd-muted); font-size:11px; font-weight:600; white-space:nowrap; }
.qfd195-student .qfd189-study-state.is-completed { color:var(--qfd195-success); }
.qfd195-student .qfd189-study-state::before { content:none; }
.qfd195-student .qfd189-study-state>.qfd195-icon { width:15px; height:15px; flex-basis:15px; }
.questflow .qfd195-student .qfd170-status { display:inline-flex; align-items:center; width:fit-content; font-size:10px; font-weight:600; padding:3px 7px; border-radius:5px; letter-spacing:0; text-transform:none; line-height:1.5; white-space:normal; }
.questflow .qfd195-student .qfd170-status.status-updated { color:var(--qfd195-accent); background:var(--qfd195-soft); }
.qfd195-student .qfd170-chevron { display:flex; align-items:center; justify-content:center; width:18px; height:18px; color:var(--qfd-muted); margin:0; }
.qfd195-student .qfd170-chevron>.qfd195-icon { width:18px; height:18px; flex-basis:18px; }
.qfd195-student .qfd189-question-count { font-size:11px; color:var(--qfd-muted); }
.questflow .qfd195-student .qfd170-topic-detail { padding:20px; margin:0; border:0; }
/* Content is a workspace, not a stack of unrelated buttons. */
.questflow .qfd195-student .qfd195-workspace { display:grid; grid-template-columns:minmax(0,1fr) minmax(272px,32%); gap:22px 24px; align-items:start; min-width:0; }
.questflow .qfd195-student .qfd195-workspace.qfd183-material-only,
.questflow .qfd195-student .qfd195-workspace.qfd195-locked { grid-template-columns:minmax(0,1fr); }
.qfd195-student .qfd195-release { display:flex; align-items:center; flex-wrap:wrap; gap:10px 22px; grid-column:1/-1; padding:12px 14px; margin:0; border:1px solid var(--qfd-border); border-radius:10px; background:var(--qfd-bg); min-width:0; }
.qfd195-student .qfd195-release-main { display:flex; align-items:center; gap:8px; min-width:0; color:var(--qfd-muted); }
.qfd195-student .qfd195-release-main>strong { font-size:12px; line-height:1.5; font-weight:600; }
.qfd195-student .qfd195-release-main>.qfd195-icon { width:18px; height:18px; flex-basis:18px; }
.qfd195-student .qfd195-release.is-available .qfd195-release-main { color:var(--qfd195-success); }
.qfd195-student .qfd195-release-date { display:flex; align-items:center; flex-wrap:wrap; gap:5px 10px; margin-left:auto; font-size:11px; color:var(--qfd-muted); }
.qfd195-student .qfd191-release-time { display:inline-flex; line-height:1.4; font-variant-numeric:tabular-nums; }
.qfd195-student .qfd191-release-time strong { font-size:12px; color:var(--qfd-text); font-weight:650; }
.qfd195-student .qfd195-release.is-scheduled { padding:18px; background:var(--qfd195-soft); border-color:var(--qfd195-accent); }
.qfd195-student .qfd195-release.is-scheduled .qfd195-release-main { color:var(--qfd195-accent); }
.qfd195-student .qfd195-release.is-scheduled .qfd195-release-date { flex-direction:column; align-items:flex-start; gap:4px; }
.qfd195-student .qfd195-release.is-scheduled time strong { font-size:21px; }
.qfd195-student .qfd195-release>p { flex-basis:100%; font-size:12px; color:var(--qfd-muted); margin:0; line-height:1.6; }
.questflow .qfd195-student .qfd195-workspace .qfd195-material { display:block; min-width:0; width:100%; padding:0; margin:0; border:0; background:none; }
.questflow .qfd195-student .qfd195-section-title { margin:0 0 12px; color:var(--qfd-text); font-size:14px; line-height:1.5; font-weight:650; letter-spacing:-.01em; }
.qfd195-student .qfd195-files { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; min-width:0; }
.qfd195-student .qfd195-files>.qfd195-file-link:only-child { grid-column:1/-1; }
.questflow .qfd195-student .qfd195-file-link { display:grid; grid-template-columns:30px minmax(0,1fr) 17px; align-items:center; gap:10px; min-height:76px; padding:12px; border:1px solid var(--qfd-border); border-radius:11px; color:var(--qfd-text); background:var(--qfd-card); text-decoration:none; }
.questflow .qfd195-student .qfd195-file-link:hover { background:var(--qfd195-soft); border-color:var(--qfd195-accent); }
.qfd195-student .qfd195-file-icon { display:flex; align-items:center; justify-content:center; height:36px; border-radius:7px; background:var(--qfd195-soft); color:var(--qfd195-accent); }
.qfd195-student .qfd195-file-copy { display:block; min-width:0; }
.qfd195-student .qfd195-file-copy>strong { display:block; font-size:13px; line-height:1.4; font-weight:600; overflow-wrap:anywhere; }
.qfd195-student .qfd195-file-copy>small { display:block; margin:4px 0 0; font-size:11px; line-height:1.4; color:var(--qfd-muted); }
.qfd195-student .qfd195-file-download { color:var(--qfd-muted); }
.qfd195-student .qfd195-file-download svg { width:17px; height:17px; flex-basis:17px; }
.qfd195-student .qfd191-topic-context { display:flex; flex-wrap:wrap; gap:10px 24px; margin:16px 0 0; }
.qfd195-student .qfd191-topic-context>div { min-width:0; }
.qfd195-student .qfd191-topic-context dt { font-size:11px; color:var(--qfd-muted); }
.qfd195-student .qfd191-topic-context dd { margin:3px 0 0; font-size:12px; font-weight:550; color:var(--qfd-text); overflow-wrap:anywhere; }
.qfd195-student .qfd191-guidance { padding:14px; margin-top:16px; border-radius:10px; background:var(--qfd-bg); }
.qfd195-student .qfd191-guidance h4 { margin:0 0 6px; font-size:12px; font-weight:600; color:var(--qfd-text); }
.questflow .qfd195-student .qfd191-guidance .qfd170-instructions { font-size:12px; line-height:1.65; margin:0; }
.qfd195-student .qfd191-guidance .qfd170-instructions p:last-child { margin-bottom:0; }
/* Study actions and an optional, compact status editor. */
.qfd195-student .qfd195-study-panel { border-top:1px solid var(--qfd-border); margin-top:22px; padding-top:18px; }
.questflow .qfd195-student .qfd185-study-actions { display:block; margin:0; padding:0; border:0; width:100%; }
.qfd195-student .qfd195-study-head { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:6px 12px; margin-bottom:5px; }
.questflow .qfd195-student .qfd195-study-head h3 { margin:0; }
.qfd195-student .qfd195-study-time { display:flex; align-items:center; gap:5px; font-size:11px; color:var(--qfd-muted); }
.qfd195-student .qfd195-study-time strong { font-size:12px; font-variant-numeric:tabular-nums; font-weight:650; color:var(--qfd-text); }
.qfd195-student .qfd195-study-time svg { width:14px; height:14px; flex-basis:14px; }
.qfd195-student .qfd195-study-copy { margin:0 0 14px; font-size:12px; line-height:1.6; color:var(--qfd-muted); }
.questflow .qfd195-student .qfd185-study-actions .qfd170-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; width:100%; }
.qfd195-student .qfd185-study-actions .qfd170-btn { width:100%; }
.qfd195-student .qfd185-study-actions .qfd195-icon { width:17px; height:17px; flex-basis:17px; }
.qfd195-student .qfd195-status-editor { margin:16px 0 0; }
.qfd195-student .qfd195-status-editor>summary { display:flex; align-items:center; flex-wrap:wrap; gap:8px; padding:8px 0; cursor:pointer; list-style:none; font-size:12px; color:var(--qfd-muted); }
.qfd195-student .qfd195-study-badge { display:inline-flex; align-items:center; gap:5px; font-size:11px; font-weight:600; color:var(--qfd-muted); }
.qfd195-student .qfd195-study-badge.is-completed { color:var(--qfd195-success); }
.qfd195-student .qfd195-study-badge .qfd195-icon { width:14px; height:14px; flex-basis:14px; }
.qfd195-student .qfd195-status-change { display:flex; align-items:center; gap:4px; margin-left:auto; color:var(--qfd195-accent); font-size:11px; font-weight:550; }
.qfd195-student .qfd195-status-change svg { width:14px; height:14px; flex-basis:14px; }
.qfd195-student .qfd195-status-editor[open] .qfd195-status-change svg { transform:rotate(180deg); }
.questflow .qfd195-student .qfd183-study-form { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:12px; margin:5px 0 10px; padding:14px; border:1px solid var(--qfd-border); border-radius:10px; background:var(--qfd-bg); width:100%; }
.qfd195-student .qfd183-study-form label { display:grid; gap:6px; min-width:0; font-size:12px; }
.qfd195-student .qfd183-study-form select { width:100%; min-width:0; height:44px; padding:8px 12px; border:1px solid var(--qfd-border); border-radius:10px; background:var(--qfd-card); color:var(--qfd-text); font:inherit; }
.qfd195-student .qfd195-study-hint { margin:4px 0 0; font-size:11px; line-height:1.6; color:var(--qfd-muted); }
/* Correction panel: concise guidance and an accessible native upload control. */
.questflow .qfd195-student .qfd195-correction { display:flex; flex-direction:column; align-items:stretch; gap:12px; padding:18px; margin:0; border:1px solid var(--qfd-border); border-radius:12px; background:var(--qfd-bg); min-width:0; box-shadow:none; }
.qfd195-student .qfd195-correction-heading { display:flex; align-items:center; gap:8px; }
.qfd195-student .qfd195-correction-heading svg { width:19px; height:19px; flex-basis:19px; color:var(--qfd195-accent); }
.questflow .qfd195-student .qfd195-correction-heading h3 { margin:0; font-size:14px; line-height:1.5; font-weight:650; color:var(--qfd-text); }
.questflow .qfd195-student .qfd195-correction .qfd170-workspace-copy { font-size:12px; line-height:1.7; margin:0; color:var(--qfd-muted); }
.qfd195-student .qfd195-credit-note { display:inline-flex; align-items:center; width:fit-content; padding:4px 8px; border:1px solid var(--qfd-border); border-radius:6px; font-size:11px; color:var(--qfd-muted); background:var(--qfd-card); }
.questflow .qfd195-student .qfd170-upload { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; margin:0; padding:0; border:0; }
.questflow .qfd195-student .qfd170-upload .qfd195-file-picker { display:block; position:relative; min-width:0; min-height:112px; border:1px dashed var(--qfd-border); border-radius:10px; background:var(--qfd-card); padding:14px 10px; cursor:pointer; }
.qfd195-student .qfd195-file-picker:hover,.qfd195-student .qfd195-file-picker:focus-within { border-color:var(--qfd195-accent); background:var(--qfd195-soft); }
.qfd195-student .qfd195-file-picker:focus-within { outline:2px solid var(--qfd195-accent); outline-offset:3px; }
.qfd195-student .qfd195-upload-prompt { display:flex; flex-direction:column; align-items:center; gap:8px; text-align:center; }
.qfd195-student .qfd195-upload-prompt svg { color:var(--qfd195-accent); }
.qfd195-student .qfd195-upload-prompt strong { font-size:12px; line-height:1.5; font-weight:600; color:var(--qfd-text); overflow-wrap:anywhere; max-width:100%; }
.qfd195-student .qfd195-upload-prompt small { font-size:11px; font-weight:400; color:var(--qfd-muted); }
.questflow .qfd195-student .qfd170-upload .qfd195-file-picker.is-enhanced>input[type=file] { position:absolute; inset:0; margin:0; padding:0; opacity:0; width:100%; height:100%; min-height:100%; cursor:pointer; }
.qfd195-student .qfd195-file-picker.is-enhanced>.qfd195-upload-fallback { display:none; }
.qfd195-student .qfd170-upload>.qfd170-btn { width:100%; }
.qfd195-student .qfd170-upload>small { margin:0; font-size:11px; line-height:1.5; color:var(--qfd-muted); text-align:center; }
.questflow .qfd195-student .qfd195-correction.is-locked { padding:0; border:0; border-radius:0; background:none; }
.qfd195-student .qfd195-correction.is-locked .qfd195-correction-heading { display:none; }
.qfd195-student .qfd195-material:empty { display:none!important; }
.qfd195-student .qfd191-release-preview { display:inline-flex; align-items:center; gap:7px; color:var(--qfd195-accent); }
.qfd195-student .qfd191-release-preview>svg { width:16px; height:16px; }
.qfd195-student .qfd191-preview-label { display:block; font-size:10px; color:var(--qfd-muted); }
.qfd195-student .qfd191-release-preview time strong { font-size:12px; color:var(--qfd195-accent); }
.qfd195-student .qfd191-topic[open]>summary .qfd191-meta-availability { display:none; }
.qfd195-student .qfd191-topic[open]>summary .qfd170-chevron { grid-column:4; }
.qfd195-student .qfd189-release-label { font-size:11px; color:var(--qfd-muted); }
/* Simulados and discipline cards share the same hierarchy. */
.questflow .qfd195-student .qfd183-mock-questions { padding:20px 0 0; margin:20px 0 0; border-top:1px solid var(--qfd-border); }
.qfd195-student .qfd183-mock-questions>h3 { margin:0 0 6px; font-size:14px; font-weight:650; }
.qfd195-student .qfd183-mock-questions>p { font-size:12px; line-height:1.6; margin:0 0 14px; }
.questflow .qfd195-student .qfd186-subject-grid { grid-template-columns:repeat(auto-fit,minmax(min(270px,100%),1fr)); gap:14px; margin:0; }
.questflow .qfd195-student .qfd186-subject-card { border-radius:14px; padding:22px; box-shadow:none; transform:none; }
.questflow .qfd195-student .qfd186-subject-card h3 { font-size:17px; font-weight:650; }
.questflow .qfd195-student .qfd186-subject-cta { font-size:12px; letter-spacing:0; color:var(--qfd195-accent); }
/* Corrections, complementary materials and study history — no changes to other screens. */
.qfd195-student .qfd189-correction-list { display:grid; gap:16px; }
.qfd195-student .qfd170-correction { border-radius:14px; padding:22px; }
.qfd195-student .qfd170-correction-head h3 { margin:4px 0 8px; font-size:16px; line-height:1.4; }
.qfd195-student .qfd189-topic-link { display:inline-flex; margin-top:16px; color:var(--qfd195-accent); font-size:12px; font-weight:600; text-decoration:none; }
.qfd195-student .qfd170-result-main { grid-template-columns:100px minmax(0,1fr); }
.qfd195-student .qfd170-result-value { font-size:30px; }
.qfd195-student .qfd195-correction .qfd170-result-main { grid-template-columns:minmax(0,1fr); }
.qfd195-student .qfd195-correction .qfd170-result-score { border-right:0; border-bottom:1px solid var(--qfd-border); }
.qfd195-student .qfd170-result-feedback { font-size:13px; overflow-wrap:anywhere; }
.qfd195-student .qfd170-result-actions { display:flex; gap:10px; flex-wrap:wrap; }
.qfd195-student .qfd195-correction .qfd170-result-actions { display:grid; grid-template-columns:minmax(0,1fr); }
.qfd195-student .qfd189-support-list { display:grid; gap:0; }
.qfd195-student .qfd189-support-item { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px 0; border-bottom:1px solid var(--qfd-border); min-width:0; }
.qfd195-student .qfd189-support-item:first-child { padding-top:0; }
.qfd195-student .qfd189-support-item:last-child { padding-bottom:0; border:0; }
.qfd195-student .qfd189-support-item>div { min-width:0; }
.qfd195-student .qfd189-support-item h3 { font-size:15px; line-height:1.4; overflow-wrap:anywhere; margin:0 0 4px; }
.qfd195-student .qfd189-support-item p,.qfd195-student .qfd189-support-description { font-size:12px; color:var(--qfd-muted); margin:0 0 6px; }
.qfd195-student .qfd189-support-item .qfd170-actions { flex:0 0 auto; }
.qfd195-student .qfd189-history-actions { display:inline-flex; align-items:center; gap:5px; }
.questflow .qfd195-student .qfd189-native-history { font:inherit; }
.questflow .qfd195-student .qfd189-course-history.qf-page { padding:0; border:0; background:none; box-shadow:none; margin:0; }
.questflow .qfd195-student .qfd189-course-history .qf-history-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
.questflow .qfd195-student .qfd189-course-history .qf-history-columns,
.questflow .qfd195-student .qfd189-course-history .qf-history-row { grid-template-columns:minmax(0,1fr) 145px 110px 126px; }
.questflow .qfd195-student .qfd189-course-history .qf-history-row-detail { display:block; }
body.qf-has-questflow .questflow .qfd195-student .qf-history-row .qf-history-study-flag.is-discursive { background:#6d28d9!important; color:#fff!important; -webkit-text-fill-color:#fff!important; border-color:transparent!important; }
.qfd195-student .qfd170-empty { padding:30px 22px; border:1px dashed var(--qfd-border); border-radius:14px; background:var(--qfd-card); font-size:13px; color:var(--qfd-muted); }
/* Student dialogs keep the same equal-width footer as all Discursivas editors. */
.questflow .qfd195-student #qfd185-study-dialog { width:640px; }
.questflow .qfd195-student #qfd185-study-confirm { width:480px; }
.questflow .qfd195-student .qfd185-dialog-head h2 { font-size:20px; }
.questflow .qfd195-student .qfd185-dialog-head p:empty { display:none; }
body .questflow .qfd170.qfd189-student.qfd195-student .qfd185-dialog-footer>.qfd170-btn { height:100%!important; min-height:44px!important; }
/* Layout responds to the actual workspace width, including a native side navigation. */
@supports (container-type:inline-size) {
  .qfd195-student .qfd195-material { container-type:inline-size; container-name:qfd-material; }
}
@container qfd-material (max-width:490px) {
  .qfd195-student .qfd195-files { grid-template-columns:1fr; }
  .qfd195-student .qfd195-study-time>span { display:none; }
  .qfd195-student .qfd185-study-actions .qfd195-icon { display:none; }
}
/* Root-width observation avoids creating a containing block around the fixed timer. */
.questflow .qfd195-student[data-qfd-compact="true"] .qfd195-workspace { grid-template-columns:minmax(0,1fr); }
.questflow .qfd195-student[data-qfd-compact="true"] .qfd189-head-actions { width:100%; }
.questflow .qfd195-student[data-qfd-compact="true"] .qfd189-head-copy { flex-basis:100%; }
.questflow .qfd195-student[data-qfd-compact="true"] .qfd195-course-head { gap:16px; }
.questflow .qfd195-student[data-qfd-compact="true"] .qfd189-content-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
@media(max-width:1000px) {
  .questflow .qfd195-student .qfd195-workspace { grid-template-columns:minmax(0,1fr); }
  .questflow .qfd195-student .qfd189-head-actions { width:100%; }
  .questflow .qfd195-student .qfd195-course-head { gap:16px; }
  .questflow .qfd195-student .qfd189-head-copy { flex-basis:100%; }
  .questflow .qfd195-student .qfd189-content-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:650px) {
  .questflow .qfd195-student .qfd195-course-head { padding-bottom:18px; }
  .qfd195-student .qfd195-overview { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-bottom:18px; }
  .qfd195-student .qfd195-kpi { padding:14px; }
  .qfd195-student .qfd195-kpi-top { font-size:11px; }
  .qfd195-student .qfd195-kpi-number { margin:8px 0 10px; }
  .qfd195-student .qfd195-kpi-number>strong { font-size:26px; }
  .qfd195-student .qfd195-kpi.is-credits { grid-column:1/-1; display:grid; grid-template-columns:1fr auto; align-items:center; gap:4px 12px; }
  .qfd195-student .qfd195-kpi.is-credits .qfd195-kpi-top { grid-column:1; }
  .qfd195-student .qfd195-kpi.is-credits .qfd195-kpi-top svg { display:none; }
  .qfd195-student .qfd195-kpi.is-credits .qfd195-kpi-number { margin:0; grid-column:1; }
  .qfd195-student .qfd195-kpi.is-credits>a,.qfd195-student .qfd195-kpi.is-credits>.qfd195-kpi-note { grid-column:2; grid-row:1/3; margin:0; }
  .questflow .qfd195-student .qfd186-student-tabs { width:100%; gap:3px; margin-bottom:18px; }
  .questflow .qfd195-student .qfd186-student-tabs>a { flex:1; padding:8px 10px; font-size:12px; min-width:0; }
  .questflow .qfd195-student .qfd183-group>summary { padding:12px; gap:8px; grid-template-columns:28px minmax(0,1fr) auto 16px; }
  .qfd195-student .qfd195-module-icon { width:28px; height:28px; }
  .questflow .qfd195-student .qfd183-group>summary strong { font-size:14px; }
  .questflow .qfd195-student .qfd183-group-count { font-size:10px; }
  .questflow .qfd195-student .qfd183-group-body { padding:7px; }
  .questflow .qfd195-student .qfd170-compact-topic>summary { grid-template-columns:28px minmax(0,1fr) 16px; gap:8px; padding:12px; }
  .qfd195-student .qfd195-topic-icon { width:28px; height:32px; grid-column:1; grid-row:1; }
  .questflow .qfd195-student .qfd170-topic-summary-title { grid-column:2; grid-row:1; }
  .qfd195-student .qfd170-topic-summary-title>strong { font-size:14px; }
  .questflow .qfd195-student .qfd170-topic-summary-meta { grid-column:2; grid-row:2; justify-content:flex-start; gap:6px; }
  .questflow .qfd195-student .qfd170-topic-summary-meta:empty { display:none; }
  .questflow .qfd195-student .qfd191-topic>summary>.qfd170-chevron { grid-column:3; grid-row:1; }
  .questflow .qfd195-student .qfd170-topic-detail { padding:14px 12px; }
  .questflow .qfd195-student .qfd195-workspace { gap:18px; }
  .qfd195-student .qfd195-release { padding:10px 12px; gap:6px; }
  .qfd195-student .qfd195-release-date { width:100%; margin:0 0 0 26px; font-size:10px; gap:4px 7px; }
  .qfd195-student .qfd195-release-date time strong { font-size:11px; }
  .qfd195-student .qfd195-release.is-scheduled .qfd195-release-date { margin:4px 0 0 26px; }
  .qfd195-student .qfd195-release.is-scheduled time strong { font-size:20px; }
  .qfd195-student .qfd195-files { grid-template-columns:1fr; }
  .questflow .qfd195-student .qfd195-file-link { min-height:68px; }
  .qfd195-student .qfd195-study-time>span { display:none; }
  .qfd195-student .qfd185-study-actions .qfd195-icon { display:none; }
  body .questflow .qfd170.qfd189-student.qfd195-student .qfd185-study-actions .qfd170-btn { padding:8px!important; font-size:12px!important; }
  .questflow .qfd195-student .qfd195-correction { padding:16px; }
  .questflow .qfd195-student .qfd183-study-form { grid-template-columns:1fr; }
  .qfd195-student .qfd170-correction-head { flex-wrap:wrap; }
  .qfd195-student .qfd170-correction { padding:16px; }
  .qfd195-student .qfd170-result-main { grid-template-columns:1fr; }
  .qfd195-student .qfd189-support-item { flex-direction:column; align-items:stretch; }
  .qfd195-student .qfd189-support-item .qfd170-actions { width:100%; }
  .questflow .qfd195-student .qfd189-course-history .qf-history-columns { display:none; }
  .questflow .qfd195-student .qfd189-course-history .qf-history-row { grid-template-columns:minmax(0,1fr) auto; gap:10px 12px; }
  .questflow .qfd195-student .qfd189-course-history .qf-history-row-main { grid-column:1/-1; }
  .questflow .qfd195-student .qfd189-course-history .qf-history-row-type { grid-column:1; grid-row:auto; }
  .questflow .qfd195-student .qfd189-course-history .qf-history-metric.is-time { grid-column:2; grid-row:auto; justify-content:flex-end; }
  .questflow .qfd195-student .qfd189-course-history .qf-history-row-actions,
  .questflow .qfd195-student .qfd189-course-history .qf-history-row-note { grid-column:1/-1; justify-content:flex-end; }
}
@media(max-width:420px) {
  body .questflow .qfd170.qfd189-student.qfd195-student .qfd189-head-actions>.qfd170-btn { font-size:12px!important; padding:6px 7px!important; gap:5px; }
  .qfd195-student .qfd195-head-link .qfd195-icon { display:none; }
  .qfd195-student .qfd189-head-count { min-width:18px; height:18px; padding:0 4px; font-size:10px; }
  .questflow .qfd195-student[data-qfd-compact] .qfd189-content-filters { grid-template-columns:1fr; }
  .questflow .qfd195-student .qfd189-course-history .qf-history-kpis { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce) {
  .qfd195-student *,.qfd195-student *::before,.qfd195-student *::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; }
}
/* The native mobile filter header stacks by default; this local toolbar stays compact. */
body .questflow .qfd170.qfd195-student .qfd189-content-head {
  display:flex!important; flex-direction:row!important; align-items:center!important;
  justify-content:space-between!important; flex-wrap:nowrap!important; gap:12px!important;
  text-align:left!important;
}
body .questflow .qfd170.qfd195-student .qfd189-content-head>h2 { flex:1; min-width:0; text-align:left!important; }
body .questflow .qfd170.qfd195-student .qfd189-content-head>.qf-center-head-filter {
  width:auto!important; flex:0 0 auto!important; min-width:0!important; margin:0!important;
  min-height:40px!important; padding:9px 12px!important; font-size:12px!important;
}
body .questflow .qfd170.qfd195-student .qfd170-status.qfd183-updated {
  background:var(--qfd195-soft)!important; color:var(--qfd195-accent)!important;
  -webkit-text-fill-color:currentColor!important; border:1px solid var(--qfd-border)!important;
  text-transform:none!important; font-weight:550!important; font-size:10px!important;
  letter-spacing:0!important; padding:2px 6px!important; border-radius:5px!important;
}
/* Personal history inside Discursivas uses the same compact toolbar/action scale.
   Native study-history pages outside this root keep their original appearance. */
body .questflow .qfd170.qfd195-student .qfd189-course-history>.qf-center-head {
  display:flex!important; flex-direction:row!important; align-items:center!important;
  justify-content:space-between!important; flex-wrap:nowrap!important; gap:12px!important;
  margin:0 0 16px!important; text-align:left!important;
}
body .questflow .qfd170.qfd195-student .qfd189-course-history .qf-panel-header-title {
  font-size:18px!important; font-weight:650!important; line-height:1.4!important;
  letter-spacing:-.02em!important; margin:0!important; text-align:left!important;
}
body .questflow .qfd170.qfd195-student .qfd189-course-history .qf-center-head-filter {
  width:auto!important; flex:0 0 auto!important; min-height:40px!important;
  padding:9px 12px!important; font-size:12px!important; margin:0!important;
}
body .questflow .qfd170.qfd195-student .qfd189-course-history .qf-center-kpi {
  padding:18px!important; border-radius:14px!important;
}
body .questflow .qfd170.qfd195-student .qfd189-course-history .qf-center-kpi-label {
  font-size:12px!important; font-weight:550!important; text-transform:none!important; letter-spacing:0!important;
}
body .questflow .qfd170.qfd195-student .qfd189-course-history .qf-center-kpi-value { font-size:28px!important; font-weight:700!important; }
body .questflow .qfd170.qfd195-student .qfd189-course-history .qf-center-kpi-help { font-size:11px!important; font-weight:400!important; }
body .questflow .qfd170.qfd195-student .qfd189-course-history .qf-history-row-actions { display:flex!important; align-items:center!important; justify-content:flex-end!important; gap:6px!important; }
body .questflow .qfd170.qfd195-student .qfd189-course-history .qf-study-iconbtn {
  display:inline-flex!important; align-items:center!important; justify-content:center!important;
  width:34px!important; min-width:34px!important; height:34px!important; min-height:34px!important;
  padding:7px!important; margin:0!important; border:1px solid var(--qfd-border)!important;
  border-radius:8px!important; background:var(--qfd-card)!important; box-shadow:none!important;
}
body .questflow .qfd170.qfd195-student .qfd189-course-history .qf-study-iconbtn>.qf-ico { width:17px!important; height:17px!important; }
body .questflow .qfd170.qfd195-student .qfd189-course-history .qf-study-iconbtn:hover { background:var(--qfd195-soft)!important; border-color:var(--qfd195-accent)!important; }
/* Preserve the pre-existing Discursivas badges in the integrated native history. */
.questflow .qf-history-center-type.is-discursive{background:#f3e8ff;color:#7e22ce;border-color:#e9d5ff}
body.qf-theme-dark .questflow .qf-history-center-type.is-discursive{background:#382349;color:#e0b7ff;border-color:#654178}
body.qf-has-questflow .questflow .qf-history-row .qf-history-study-flag.is-discursive,
body.qf-has-questflow.qf-theme-dark .questflow .qf-history-row .qf-history-study-flag.is-discursive{background:#6d28d9!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:transparent!important}
