/* Shared QT Trading Lab course theme
   Aligns Beginner and Intermediate course shells with Home, Dictionary, and Advanced pages. */

:root {
  --bg: #0c0e13;
  --surface: #14171e;
  --surface2: #1c2029;
  --border: #262b36;
  --border2: #2e3440;
  --ink: #e8eaf0;
  --ink2: #8b92a5;
  --ink3: #5c6378;
  --gold: #4a9eff;
  --gold2: #2a6bbd;
  --gold-glow: rgba(74,158,255,.14);
  --cyan: #4a9eff;
  --green: #34d399;
  --red: #f87171;
  --blue: #4a9eff;
  --sidebar: 260px;
}

body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  background: var(--bg);
  color: var(--ink);
}

.sidebar {
  background: var(--bg);
  border-right: 1px solid var(--border);
}

.sidebar-brand {
  padding: 16px 20px;
}

.brand-mark {
  width: 32px;
  height: 32px;
  border-radius: 7px;
  border-color: var(--border-light, var(--border2));
  box-shadow: none;
}

.brand-text h1,
.topbar-label strong {
  color: var(--ink);
}

.brand-text h1,
.course-link,
.back-link,
.progress-label,
.progress-pct,
.module-num,
.module-meta,
.hero-kicker,
.toolkit-kicker,
.toolkit-section-title,
.section-label,
.lesson-num,
.lesson-meta,
.lesson-done-tag,
.tab-btn,
.btn-primary,
.btn-secondary,
.quiz-score-num,
.toolkit-action {
  font-family: 'JetBrains Mono', monospace;
}

.brand-text h1 {
  font-size: 13px;
  letter-spacing: .08em;
}

.brand-text p {
  color: var(--ink3);
  font-size: 11px;
}

.sidebar-progress,
.sidebar-footer,
.topbar,
.lesson-body,
.toolkit-section,
.toolkit-hero {
  border-color: var(--border);
}

.module-btn {
  color: var(--ink2);
  padding: 10px 16px;
  gap: 10px;
}

.module-btn:hover,
.module-btn.active {
  background: var(--surface2);
  color: var(--ink);
}

.module-btn.active::before {
  background: var(--gold);
}

.module-btn.active .module-num,
.module-btn.done .module-num {
  background: rgba(74,158,255,.16);
  border-color: rgba(74,158,255,.45);
  color: var(--gold);
}

.module-info {
  min-width: 0;
}

.module-title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 11.5px;
  line-height: 1.35;
}

.module-meta {
  margin-top: 3px;
  font-size: 10px;
  letter-spacing: .06em;
}

.course-link,
.module-num,
.lesson-num,
.pill,
.toolkit-action,
.btn-secondary {
  border-radius: 6px;
}

.course-link {
  background: transparent;
  border-color: var(--border);
  color: var(--ink2);
  letter-spacing: 0;
}

.course-link:hover,
.course-link.active {
  background: var(--surface2);
  border-color: var(--border2);
  color: var(--ink);
}

.main {
  background: var(--bg);
}

.topbar {
  background: var(--bg);
  border-bottom: 1px solid var(--border);
}

.tab-btn {
  color: var(--ink2);
  border-radius: 6px;
  letter-spacing: .06em;
}

.tab-btn:hover,
.tab-btn.active {
  background: var(--surface2);
  border-color: var(--border2);
  color: var(--ink);
}

.content {
  max-width: 1040px;
}

.hero-panel,
.toolkit-panel,
.lesson-card,
.quiz-header,
.quiz-card,
.drill-panel,
.note-panel,
.diagram-card,
.assessment-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 10px;
  box-shadow: none;
}

.hero-panel::before {
  display: none;
}

.hero-title,
.diagram-title {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-weight: 700;
  letter-spacing: -.02em;
}

.hero-title {
  font-size: 30px;
}

.hero-overview p:first-child {
  color: var(--ink);
  font-size: 15px;
}

.objective-item,
.diagram-mark,
.quiz-choice,
.drill-mini,
.brief-area,
.note-area {
  background: var(--surface2);
  border-color: var(--border);
  border-radius: 6px;
}

.objective-item::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--gold);
  margin-top: 7px;
}

.outcome-list li::before,
.rules-list li::before {
  content: '';
  width: 8px;
  height: 1px;
  background: var(--gold);
  top: .75em;
}

.lesson-card:hover,
.lesson-card.open,
.quiz-card:hover,
.diagram-card:hover,
.term-card:hover {
  border-color: var(--border2);
}

.toolkit-panel {
  background: var(--surface);
}

.toolkit-hero {
  background: var(--surface);
}

.toolkit-ring {
  box-shadow: none;
}

.btn-primary {
  background: var(--gold);
  color: #fff;
  border-radius: 6px;
  letter-spacing: .04em;
}

.btn-primary:hover {
  background: #3d8de6;
}

.progress-fill {
  background: var(--gold);
  box-shadow: none;
}

.lesson-card.done {
  border-left-color: var(--green);
}

.mobile-nav-toggle {
  background: var(--surface);
  border-color: var(--border);
  border-radius: 6px;
}
