.academy-lesson {
  background:
    radial-gradient(ellipse 70% 35% at 50% 0%, rgba(139, 92, 246, 0.18), transparent 70%),
    var(--bg-primary);
  min-height: 100vh;
  padding-bottom: 96px;
}

.academy-lesson-hero {
  border-bottom: 1px solid var(--border-subtle);
  background: rgba(9, 7, 42, 0.72);
}

.academy-lesson-hero-inner,
.academy-progress,
.academy-lesson-layout {
  max-width: 1180px;
  margin: 0 auto;
  padding-left: 32px;
  padding-right: 32px;
}

.academy-lesson-hero-inner {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  padding-top: 76px;
  padding-bottom: 44px;
}

.academy-kicker,
.academy-section-number,
.academy-aside-label,
.academy-placeholder-bar,
.academy-quiz-progress,
.academy-quote-values small,
.academy-risk-panel small {
  color: var(--accent-hot);
  font-family: 'Syne', sans-serif;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.academy-kicker span { color: var(--text-muted); padding: 0 8px; }

.academy-lesson h1,
.academy-lesson h2,
.academy-lesson h3,
.academy-lesson strong,
.academy-lesson legend,
.academy-lesson button {
  font-family: 'Syne', sans-serif;
}

.academy-lesson h1 {
  max-width: 700px;
  margin: 12px 0 16px;
  font-size: clamp(42px, 6vw, 76px);
  line-height: 0.98;
  letter-spacing: -0.05em;
  background: linear-gradient(135deg, #fff 25%, var(--accent-hot));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.academy-lesson-lede {
  max-width: 600px;
  color: var(--text-secondary);
  font-size: 19px;
  line-height: 1.6;
}

.academy-lesson-meta {
  display: flex;
  align-items: flex-end;
  flex-direction: column;
  gap: 8px;
  flex-shrink: 0;
  color: var(--text-secondary);
  font-size: 13px;
}

.academy-lesson-meta span { border: 1px solid var(--border-subtle); border-radius: 999px; padding: 7px 12px; }

.academy-objectives { max-width: 1180px; margin: 0 auto; padding: 0 32px 34px; }
.academy-objectives p { margin-bottom: 10px; color: var(--text-muted); font: 700 11px 'Syne', sans-serif; letter-spacing: 0.1em; text-transform: uppercase; }
.academy-objectives ul { display: flex; flex-wrap: wrap; gap: 10px 26px; padding-left: 18px; color: var(--text-secondary); font-size: 13px; }
.academy-objectives li::marker { color: var(--accent); }

.academy-progress {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-top: 18px;
  padding-bottom: 18px;
  color: var(--text-muted);
  font-size: 12px;
}

.academy-progress-step { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; }
.academy-progress-step span { display: grid; width: 24px; height: 24px; place-items: center; border: 1px solid var(--border-subtle); border-radius: 50%; }
.academy-progress-step.is-current { color: var(--text-primary); font-weight: 600; }
.academy-progress-step.is-current span { border-color: var(--accent); background: var(--accent-dim); color: var(--accent-hot); }
.academy-progress-line { height: 1px; flex: 1; background: var(--border-subtle); }

.academy-lesson-layout { display: grid; grid-template-columns: 190px minmax(0, 760px); gap: 72px; padding-top: 64px; }
.academy-lesson-aside { position: sticky; top: 92px; align-self: start; }
.academy-lesson-aside ol { display: grid; gap: 10px; padding: 14px 0 24px 18px; color: var(--text-secondary); font-size: 13px; }
.academy-lesson-aside a { color: inherit; text-decoration: none; }
.academy-lesson-aside a:hover,
.academy-lesson-aside a:focus { color: var(--accent-hot); }
.academy-aside-note { padding-top: 18px; border-top: 1px solid var(--border-subtle); color: var(--text-muted); font-size: 12px; line-height: 1.55; }

.academy-section { margin-bottom: 68px; scroll-margin-top: 92px; }
.academy-section-number { margin-bottom: 11px; }
.academy-lesson h2 { margin-bottom: 18px; font-size: clamp(28px, 4vw, 42px); line-height: 1.08; letter-spacing: -0.035em; }
.academy-section > p:not(.academy-section-number),
.academy-lesson-footer p { color: var(--text-secondary); font-size: 16px; line-height: 1.8; }
.academy-section > p + p { margin-top: 18px; }
.academy-definition-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin: 28px 0; }
.academy-definition,
.academy-risk-grid > div { display: flex; flex-direction: column; gap: 5px; padding: 18px; border: 1px solid var(--border-subtle); border-radius: var(--radius); background: rgba(16, 13, 58, 0.72); }
.academy-definition strong,
.academy-risk-grid strong { color: var(--accent-hot); font-size: 14px; }
.academy-definition span,
.academy-risk-grid span { color: var(--text-secondary); font-size: 13px; line-height: 1.55; }
.academy-callout { margin-top: 26px; padding: 19px 21px; border-left: 3px solid var(--accent); background: var(--accent-dim); color: var(--text-secondary); font-size: 14px; line-height: 1.65; }
.academy-callout strong { color: var(--text-primary); }
.academy-callout-warning { border-left-color: var(--accent-hot); }
.academy-example { margin: 28px 0; padding: 22px; border: 1px solid var(--border); border-radius: var(--radius-lg); background: linear-gradient(135deg, rgba(139, 92, 246, 0.13), rgba(16, 13, 58, 0.7)); }
.academy-example-label { display: block; margin-bottom: 8px; color: var(--accent-hot); font: 700 11px 'Syne', sans-serif; letter-spacing: 0.1em; text-transform: uppercase; }
.academy-example p { color: var(--text-secondary); font-size: 14px; line-height: 1.7; }
.academy-term-list { display: grid; gap: 13px; margin-top: 25px; }
.academy-term-list p { padding-left: 17px; border-left: 1px solid var(--border); color: var(--text-secondary); font-size: 14px; line-height: 1.65; }
.academy-term-list strong { color: var(--text-primary); }
.academy-risk-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin-top: 28px; }

.academy-figure { margin: -4px 0 70px; padding: 14px; border: 1px solid var(--border); border-radius: var(--radius-lg); background: rgba(9, 7, 42, 0.82); box-shadow: var(--glow-purple-sm); }
.academy-placeholder-bar { display: flex; align-items: center; gap: 8px; padding: 4px 5px 14px; color: var(--text-muted); letter-spacing: 0.07em; }
.academy-placeholder-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--accent); box-shadow: 0 0 10px var(--accent); }
.academy-placeholder-tag { margin-left: auto; color: var(--text-muted); font-size: 9px; }
.academy-quote-mock,
.academy-risk-mock { position: relative; min-height: 300px; overflow: hidden; border: 1px solid var(--border-subtle); border-radius: var(--radius); background: #080722; }
.academy-quote-mock { padding: 30px; background: radial-gradient(circle at 50% 30%, rgba(139, 92, 246, 0.17), transparent 50%), #080722; }
.academy-quote-top { display: flex; justify-content: space-between; color: var(--text-muted); font-size: 12px; }
.academy-quote-top strong { color: var(--text-primary); font-size: 16px; }
.academy-quote-pair { display: flex; align-items: center; justify-content: center; gap: 15px; margin: 42px 0 25px; }
.academy-quote-currency { color: var(--text-primary); font: 700 clamp(26px, 5vw, 42px) 'Syne', sans-serif; }
.academy-quote-currency small { display: block; color: var(--accent-hot); font: 700 9px 'DM Sans', sans-serif; letter-spacing: 0.08em; text-align: center; text-transform: uppercase; }
.academy-quote-slash { color: var(--text-muted); font-size: 30px; }
.academy-quote-values { display: grid; grid-template-columns: repeat(3, 1fr); max-width: 500px; margin: 0 auto; border: 1px solid var(--border-subtle); border-radius: var(--radius); background: rgba(16, 13, 58, 0.82); }
.academy-quote-values div { padding: 15px; text-align: center; border-right: 1px solid var(--border-subtle); }
.academy-quote-values div:last-child { border-right: 0; }
.academy-quote-values small { display: block; margin-bottom: 5px; color: var(--text-muted); font-size: 9px; }
.academy-quote-values strong { color: var(--text-primary); font: 600 16px 'DM Sans', sans-serif; }
.academy-annotation { position: absolute; z-index: 2; display: inline-flex; align-items: center; gap: 6px; padding: 5px 8px; border: 1px solid rgba(192, 132, 252, 0.55); border-radius: 5px; background: rgba(5, 5, 26, 0.9); color: var(--text-secondary); font-size: 10px; white-space: nowrap; }
.academy-annotation b { display: grid; width: 18px; height: 18px; place-items: center; border-radius: 50%; background: var(--accent); color: #fff; font-size: 10px; }
.academy-annotation-one { top: 88px; left: 20px; }
.academy-annotation-two { top: 88px; right: 20px; }
.academy-annotation-three { bottom: 28px; left: 22px; }
.academy-annotation-four { right: 22px; bottom: 28px; }
.academy-figure figcaption { padding: 15px 4px 2px; color: var(--text-muted); font-size: 12px; line-height: 1.55; }
.academy-figure figcaption strong { color: var(--text-secondary); }

.academy-risk-mock { display: grid; grid-template-columns: 1fr 180px; min-height: 320px; }
.academy-chart-grid { position: relative; overflow: hidden; background: repeating-linear-gradient(0deg, transparent 0 39px, rgba(167, 139, 250, 0.1) 40px), repeating-linear-gradient(90deg, transparent 0 54px, rgba(167, 139, 250, 0.08) 55px); }
.academy-chart-grid::before { content: ''; position: absolute; inset: 28px 28px 38px; background: linear-gradient(145deg, transparent 10%, rgba(192, 132, 252, 0.1) 10% 12%, transparent 12% 20%, rgba(139, 92, 246, 0.38) 20% 21%, transparent 21% 38%, rgba(192, 132, 252, 0.45) 38% 39%, transparent 39% 56%, rgba(139, 92, 246, 0.5) 56% 57%, transparent 57% 75%, rgba(192, 132, 252, 0.72) 75% 76%, transparent 76%); }
.academy-chart-line { position: absolute; top: 47%; left: 8%; width: 84%; height: 2px; background: var(--accent-hot); transform: rotate(-7deg); box-shadow: 0 0 10px var(--accent-hot); }
.academy-chart-entry,
.academy-chart-stop,
.academy-chart-target { position: absolute; left: 8%; width: 84%; border-top: 1px dashed; }
.academy-chart-entry { top: 48%; border-color: #fbbf24; }
.academy-chart-stop { top: 70%; border-color: #f87171; }
.academy-chart-target { top: 22%; border-color: #4ade80; }
.academy-chart-label { position: absolute; right: 8%; padding: 3px 6px; border-radius: 3px; background: rgba(5, 5, 26, 0.9); font-size: 10px; }
.academy-chart-entry-label { top: 44%; color: #fbbf24; }
.academy-chart-stop-label { top: 66%; color: #f87171; }
.academy-chart-target-label { top: 18%; color: #4ade80; }
.academy-risk-panel { display: flex; flex-direction: column; gap: 9px; padding: 26px 20px; border-left: 1px solid var(--border-subtle); background: rgba(16, 13, 58, 0.9); }
.academy-risk-panel small { color: var(--text-muted); font-size: 9px; }
.academy-risk-panel strong { color: var(--text-primary); font-size: 14px; }
.academy-risk-panel > span { color: var(--accent-hot); font: 700 32px 'Syne', sans-serif; }
.academy-risk-panel em { color: var(--text-secondary); font-size: 12px; font-style: normal; line-height: 1.5; }
.academy-risk-annotation-one { top: 46%; left: 12px; }
.academy-risk-annotation-two { bottom: 28px; left: 22%; }
.academy-risk-annotation-three { top: 16%; left: 26%; }
.academy-risk-annotation-four { right: 15px; bottom: 18px; }

.academy-audio-block { margin-top: 28px; padding: 19px 21px; border: 1px solid var(--border); border-radius: var(--radius); background: rgba(16, 13, 58, 0.72); }
.academy-audio-heading { display: flex; align-items: center; gap: 12px; }
.academy-audio-heading > div { display: grid; gap: 3px; }
.academy-audio-heading strong { color: var(--text-primary); font-size: 14px; }
.academy-audio-heading span:last-child { color: var(--text-muted); font-size: 12px; }
.academy-audio-icon { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 50%; background: var(--accent); color: #fff; font-size: 11px; }
.academy-audio-status { margin: 14px 0 0; color: var(--text-secondary); font-size: 13px; line-height: 1.6; }
.academy-transcript { margin-top: 14px; border-top: 1px solid var(--border-subtle); padding-top: 12px; }
.academy-transcript summary { color: var(--accent-hot); cursor: pointer; font: 700 12px 'Syne', sans-serif; }
.academy-transcript p { margin: 10px 0 0; color: var(--text-secondary); font-size: 13px; line-height: 1.65; }

.academy-tv-chart-mock,
.academy-candle-mock,
.academy-workflow-mock { position: relative; overflow: hidden; border: 1px solid var(--border-subtle); border-radius: var(--radius); background: #080722; }
.academy-tv-chart-mock { min-height: 340px; }
.academy-tv-toolbar { display: flex; align-items: center; gap: 7px; min-height: 48px; padding: 9px 13px; border-bottom: 1px solid var(--border-subtle); background: rgba(16, 13, 58, 0.92); color: var(--text-muted); font-size: 11px; }
.academy-tv-logo { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 5px; background: #2962ff; color: #fff; font: 800 11px 'Syne', sans-serif; }
.academy-tv-tool { display: inline-flex; align-items: center; min-height: 27px; padding: 0 9px; border: 1px solid var(--border-subtle); border-radius: 4px; background: rgba(9, 7, 42, 0.76); white-space: nowrap; }
.academy-tv-symbol-control { color: var(--text-primary); }
.academy-tv-symbol-control small { margin-left: 5px; color: var(--text-muted); font-size: 9px; }
.academy-tv-timeframe-control { color: var(--accent-hot); }
.academy-tv-chart-body { position: relative; min-height: 292px; background: repeating-linear-gradient(0deg, transparent 0 48px, rgba(167, 139, 250, 0.1) 49px), repeating-linear-gradient(90deg, transparent 0 68px, rgba(167, 139, 250, 0.08) 69px); }
.academy-tv-chart-body::before { content: ''; position: absolute; inset: 30px 62px 35px 32px; background: linear-gradient(145deg, transparent 5%, rgba(139, 92, 246, 0.45) 5% 6%, transparent 6% 23%, rgba(192, 132, 252, 0.58) 23% 24%, transparent 24% 45%, rgba(139, 92, 246, 0.72) 45% 46%, transparent 46% 68%, rgba(192, 132, 252, 0.4) 68% 69%, transparent 69%); transform: skewY(-7deg); }
.academy-tv-axis-label { position: absolute; right: 12px; color: var(--text-muted); font-size: 10px; }
.academy-tv-axis-top { top: 24px; }
.academy-tv-axis-mid { top: 48%; }
.academy-tv-axis-bottom { bottom: 26px; }
.academy-tv-price-line { position: absolute; top: 49%; left: 8%; width: 84%; border-top: 1px dashed rgba(251, 191, 36, 0.65); }
.academy-tv-candle { position: absolute; width: 9px; border-radius: 2px; background: #4ade80; box-shadow: 0 0 9px rgba(74, 222, 128, 0.35); }
.academy-tv-candle::before { content: ''; position: absolute; top: -13px; left: 4px; width: 1px; height: calc(100% + 26px); background: currentColor; }
.academy-tv-candle-a { top: 56%; left: 18%; height: 30px; color: #4ade80; }
.academy-tv-candle-b { top: 43%; left: 31%; height: 47px; color: #f87171; background: #f87171; }
.academy-tv-candle-c { top: 38%; left: 45%; height: 35px; color: #4ade80; }
.academy-tv-candle-d { top: 29%; left: 57%; height: 54px; color: #4ade80; }
.academy-tv-candle-e { top: 35%; left: 70%; height: 28px; color: #f87171; background: #f87171; }
.academy-tv-candle-f { top: 22%; left: 80%; height: 48px; color: #4ade80; }
.academy-tv-annotation-symbol { top: 14px; left: 92px; }
.academy-tv-annotation-timeframe { top: 14px; left: 246px; }
.academy-tv-annotation-tools { right: 18px; bottom: 16px; }

.academy-candle-mock { min-height: 320px; padding: 20px; }
.academy-candle-header { display: flex; justify-content: space-between; color: var(--text-muted); font-size: 12px; }
.academy-candle-header strong { color: var(--text-primary); font-size: 15px; }
.academy-candle-stage { position: relative; min-height: 250px; margin-top: 15px; background: repeating-linear-gradient(0deg, transparent 0 43px, rgba(167, 139, 250, 0.1) 44px), repeating-linear-gradient(90deg, transparent 0 74px, rgba(167, 139, 250, 0.08) 75px); }
.academy-large-candle { position: absolute; top: 49px; width: 42px; height: 110px; border-radius: 3px; }
.academy-large-candle i { position: absolute; top: -37px; left: 20px; width: 2px; height: 184px; background: currentColor; }
.academy-large-candle b { position: absolute; right: -11px; bottom: -23px; color: var(--text-muted); font: 600 10px 'DM Sans', sans-serif; white-space: nowrap; }
.academy-large-bullish { left: 30%; background: rgba(74, 222, 128, 0.85); color: #4ade80; }
.academy-large-bullish b::after { content: 'close'; }
.academy-large-bearish { left: 60%; background: rgba(248, 113, 113, 0.85); color: #f87171; }
.academy-large-bearish b::after { content: 'close'; }
.academy-candle-label { position: absolute; color: var(--text-muted); font-size: 10px; }
.academy-candle-open { top: 159px; left: 30%; }
.academy-candle-close { top: 26px; left: 30%; }
.academy-candle-wick { top: 4px; left: 60%; }
.academy-candle-annotation-body { top: 12px; left: 13px; }
.academy-candle-annotation-wick { bottom: 24px; right: 16px; }
.academy-candle-annotation-context { bottom: 15px; left: 13px; }

.academy-workflow-mock { display: grid; grid-template-columns: minmax(0, 1fr) 210px; min-height: 340px; }
.academy-workflow-chart { position: relative; overflow: hidden; background: #080722; }
.academy-workflow-grid { position: absolute; inset: 0; background: repeating-linear-gradient(0deg, transparent 0 49px, rgba(167, 139, 250, 0.1) 50px), repeating-linear-gradient(90deg, transparent 0 65px, rgba(167, 139, 250, 0.08) 66px); }
.academy-workflow-ma { position: absolute; top: 41%; left: 6%; width: 88%; height: 2px; background: var(--accent-hot); transform: rotate(-8deg); box-shadow: 0 0 9px var(--accent-hot); }
.academy-workflow-level { position: absolute; left: 7%; width: 84%; border-top: 1px dashed; }
.academy-workflow-entry { top: 48%; border-color: #fbbf24; }
.academy-workflow-invalidation { top: 72%; border-color: #f87171; }
.academy-workflow-target { top: 22%; border-color: #4ade80; }
.academy-workflow-label { position: absolute; right: 8%; padding: 3px 6px; border-radius: 3px; background: rgba(5, 5, 26, 0.9); font-size: 10px; }
.academy-workflow-entry-label { top: 44%; color: #fbbf24; }
.academy-workflow-invalidation-label { top: 68%; color: #f87171; }
.academy-workflow-target-label { top: 18%; color: #4ade80; }
.academy-workflow-annotation-chart { top: 16px; left: 14px; }
.academy-workflow-side { display: flex; flex-direction: column; gap: 12px; padding: 20px 16px; border-left: 1px solid var(--border-subtle); background: rgba(16, 13, 58, 0.92); }
.academy-indicator-row { display: flex; justify-content: space-between; gap: 8px; padding-bottom: 10px; border-bottom: 1px solid var(--border-subtle); color: var(--text-secondary); font-size: 12px; }
.academy-indicator-row b { color: var(--accent-hot); font-size: 10px; }
.academy-workflow-notes { display: grid; gap: 8px; margin-top: auto; padding: 13px; border: 1px solid var(--border-subtle); border-radius: 6px; background: rgba(9, 7, 42, 0.78); }
.academy-workflow-notes small { color: var(--text-muted); font: 700 9px 'Syne', sans-serif; letter-spacing: 0.1em; }
.academy-workflow-notes strong { color: var(--text-primary); font-size: 13px; }
.academy-workflow-notes span { color: var(--text-secondary); font-size: 11px; line-height: 1.45; }
.academy-workflow-annotation-notes { right: 15px; bottom: 15px; }

.academy-quiz { scroll-margin-top: 92px; margin-top: 78px; padding: 38px; border: 1px solid var(--border); border-radius: var(--radius-lg); background: linear-gradient(145deg, rgba(16, 13, 58, 0.95), rgba(9, 7, 42, 0.82)); box-shadow: var(--glow-purple-sm); }
.academy-quiz-heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px 20px; }
.academy-quiz-heading h2 { width: 100%; margin: 0; }
.academy-quiz-heading > p:not(.academy-section-number):not(.academy-quiz-progress) { max-width: 540px; color: var(--text-secondary); font-size: 14px; line-height: 1.65; }
.academy-quiz-progress { margin-left: auto; color: var(--text-muted); }
.academy-quiz-form { display: grid; gap: 15px; margin-top: 28px; }
.academy-question { min-width: 0; padding: 19px; border: 1px solid var(--border-subtle); border-radius: var(--radius); }
.academy-question legend { width: 100%; padding: 0 0 14px; color: var(--text-primary); font-size: 15px; font-weight: 600; }
.academy-question legend span { display: inline-grid; width: 28px; height: 28px; margin-right: 8px; place-items: center; border-radius: 50%; background: var(--accent-dim); color: var(--accent-hot); font-size: 11px; }
.academy-question label { display: flex; align-items: flex-start; gap: 10px; padding: 10px 11px; border: 1px solid transparent; border-radius: 7px; color: var(--text-secondary); cursor: pointer; font-size: 13px; line-height: 1.45; }
.academy-question label:hover { border-color: var(--border-subtle); background: rgba(139, 92, 246, 0.06); }
.academy-question input { flex: 0 0 auto; width: 16px; height: 16px; margin: 1px 0 0; accent-color: var(--accent); }
.academy-question.is-unanswered { border-color: #fbbf24; }
.academy-question.is-correct { border-color: rgba(74, 222, 128, 0.5); }
.academy-question.is-incorrect { border-color: rgba(248, 113, 113, 0.5); }
.academy-question label.is-correct { border-color: rgba(74, 222, 128, 0.38); background: rgba(74, 222, 128, 0.08); color: #bbf7d0; }
.academy-question label.is-incorrect { border-color: rgba(248, 113, 113, 0.38); background: rgba(248, 113, 113, 0.08); color: #fecaca; }
.academy-answer-explanation { margin: 12px 0 0 34px; padding-top: 11px; border-top: 1px solid var(--border-subtle); color: var(--text-muted); font-size: 12px; line-height: 1.55; }
.academy-quiz-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 9px; }
.academy-quiz-feedback { padding: 17px 19px; border: 1px solid var(--border); border-radius: var(--radius); color: var(--text-secondary); font-size: 13px; }
.academy-quiz-feedback strong { display: block; margin-bottom: 4px; color: var(--text-primary); font-size: 16px; }
.academy-quiz-feedback p { line-height: 1.55; }
.academy-quiz-feedback.is-success { border-color: rgba(74, 222, 128, 0.45); background: rgba(74, 222, 128, 0.08); }
.academy-quiz-feedback.is-review { border-color: rgba(192, 132, 252, 0.45); background: var(--accent-dim); }
.academy-quiz-feedback.is-warning { border-color: rgba(251, 191, 36, 0.5); background: rgba(251, 191, 36, 0.08); }

.academy-lesson-footer { display: flex; justify-content: space-between; gap: 32px; align-items: center; margin-top: 82px; padding-top: 36px; border-top: 1px solid var(--border-subtle); }
.academy-lesson-footer h2 { margin-bottom: 10px; font-size: 27px; }
.academy-footer-actions { display: flex; align-items: flex-end; flex-direction: column; gap: 13px; flex-shrink: 0; }
.academy-next-link { transition: opacity 0.2s, box-shadow 0.2s, transform 0.15s; }
.academy-cta--locked { opacity: 0.52; filter: saturate(0.65); }
.academy-back-link { color: var(--text-muted); font-size: 13px; text-decoration: none; }
.academy-back-link:hover,
.academy-back-link:focus { color: var(--accent-hot); }

.academy-lesson a:focus-visible,
.academy-lesson button:focus-visible,
.academy-lesson input:focus-visible,
.academy-question label:has(input:focus-visible) { outline: 3px solid rgba(192, 132, 252, 0.75); outline-offset: 3px; }

@media (max-width: 800px) {
  .academy-lesson-hero-inner { display: block; padding-top: 54px; }
  .academy-lesson-meta { align-items: flex-start; flex-direction: row; flex-wrap: wrap; margin-top: 28px; }
  .academy-lesson-layout { grid-template-columns: 1fr; gap: 0; padding-top: 44px; }
  .academy-lesson-aside { position: static; margin-bottom: 42px; }
  .academy-lesson-aside ol { display: flex; flex-wrap: wrap; gap: 8px 18px; padding-bottom: 15px; }
  .academy-aside-note { max-width: 500px; }
  .academy-lesson-footer { align-items: flex-start; flex-direction: column; }
  .academy-footer-actions { align-items: flex-start; }
}

@media (max-width: 560px) {
  .academy-lesson-hero-inner,
  .academy-objectives,
  .academy-progress,
  .academy-lesson-layout { padding-left: 20px; padding-right: 20px; }
  .academy-lesson h1 { font-size: 46px; }
  .academy-progress { align-items: flex-start; flex-direction: column; gap: 9px; }
  .academy-progress-line { width: 1px; height: 14px; flex: 0 0 auto; margin-left: 11px; }
  .academy-definition-grid,
  .academy-risk-grid { grid-template-columns: 1fr; }
  .academy-figure { padding: 10px; }
  .academy-placeholder-tag { display: none; }
  .academy-quote-mock { padding: 24px 14px; }
  .academy-quote-pair { gap: 8px; margin-top: 48px; }
  .academy-quote-currency { font-size: 27px; }
  .academy-quote-values strong { font-size: 13px; }
  .academy-annotation { font-size: 9px; }
  .academy-annotation-one { top: 85px; left: 10px; }
  .academy-annotation-two { top: 85px; right: 10px; }
  .academy-annotation-three { bottom: 22px; left: 10px; }
  .academy-annotation-four { right: 10px; bottom: 22px; }
  .academy-risk-mock { display: block; }
  .academy-chart-grid { min-height: 250px; }
  .academy-risk-panel { min-height: 125px; border-top: 1px solid var(--border-subtle); border-left: 0; }
  .academy-risk-annotation-four { right: 12px; bottom: 138px; }
  .academy-audio-block { padding: 17px; }
  .academy-tv-toolbar { align-items: flex-start; flex-wrap: wrap; }
  .academy-tv-ghost-tool { display: none; }
  .academy-tv-chart-mock { min-height: 330px; }
  .academy-tv-chart-body { min-height: 280px; }
  .academy-tv-annotation-symbol { top: 14px; left: 12px; }
  .academy-tv-annotation-timeframe { top: 53px; left: 12px; }
  .academy-tv-annotation-tools { right: 12px; bottom: 13px; }
  .academy-candle-mock { padding: 14px; }
  .academy-candle-header { display: block; }
  .academy-candle-header span { display: block; margin-top: 5px; }
  .academy-candle-annotation-body { top: 8px; left: 8px; }
  .academy-candle-annotation-wick { right: 8px; bottom: 12px; }
  .academy-candle-annotation-context { bottom: 12px; left: 8px; }
  .academy-workflow-mock { display: block; }
  .academy-workflow-chart { min-height: 270px; }
  .academy-workflow-side { min-height: 190px; border-top: 1px solid var(--border-subtle); border-left: 0; }
  .academy-workflow-annotation-chart { left: 8px; }
  .academy-workflow-annotation-notes { right: 8px; bottom: 12px; }
  .academy-quiz { padding: 24px 18px; }
  .academy-quiz-progress { width: 100%; margin-left: 0; }
  .academy-quiz-actions .btn { width: 100%; justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
  .academy-lesson *,
  .academy-lesson *::before,
  .academy-lesson *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; }
}
