/*
 Theme Name: Astra Child - CFA SmartDrills
 Template: astra
 Description: CFA SmartDrills child theme with unified branding for Astra, Elementor, LearnDash, Tin Canny and GamiPress.
*/

/* ===========================
   0. BRAND VARIABLES
   =========================== */
:root {
  /* TradingDrills / CFA palette */
  --cfa-brand: #2123a4;          /* Deep blue – main brand */
  --cfa-accent: #00aeef;         /* Cyan accent (buttons, links) */
  --cfa-text-strong: #1a202c;    /* Primary text */
  --cfa-text-muted: #4a5568;     /* Secondary text */
  --cfa-bg-soft: #f7fafc;        /* Page background */
  --cfa-bg-subtle: #edf2f7;      /* Panels / soft cards */
  --cfa-border-soft: #e2e8f0;    /* Light border */
  --cfa-success: #1c934d;        /* Success / completed */
  --cfa-warning: #f5a524;
}

/* ===========================
   1. BASE TYPOGRAPHY / BODY
   =========================== */
body {
  color: var(--cfa-text-strong);
  background-color: var(--cfa-bg-soft);
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
  color: var(--cfa-brand);
}

/* General links */
a {
  color: var(--cfa-brand);
}
a:hover,
a:focus {
  color: var(--cfa-accent);
}

/* ===========================
   2. GLOBAL BUTTONS
   (Astra + Elementor + generic)
   =========================== */

/* Primary buttons */
button,
input[type="submit"],
.ast-button,
.ast-custom-button,
a.ast-button,
.elementor-button,
.elementor-button.elementor-size-sm,
.elementor-button.elementor-size-md,
.elementor-button.elementor-size-lg {
  background-color: var(--cfa-brand);
  border-color: var(--cfa-brand);
  color: #fff;
  border-radius: 999px;
  padding: 0.65em 1.6em;
  font-weight: 600;
}

button:hover,
input[type="submit"]:hover,
.ast-button:hover,
.ast-custom-button:hover,
a.ast-button:hover,
.elementor-button:hover {
  background-color: var(--cfa-accent);
  border-color: var(--cfa-accent);
  color: #fff;
}

/* Secondary (outline) buttons */
.button-secondary,
.elementor-button--secondary {
  background-color: transparent;
  border-radius: 999px;
  border: 2px solid var(--cfa-brand);
  color: var(--cfa-brand);
  font-weight: 600;
}

.button-secondary:hover,
.elementor-button--secondary:hover {
  background-color: var(--cfa-accent);
  border-color: var(--cfa-accent);
  color: #fff;
}

/* ===========================
   3. GENERIC CARDS / PANELS
   =========================== */
.cfa-card,
.elementor-widget-container .cfa-card,
.learndash-wrapper .ld-course-list-items .ld_course_grid,
.learndash-wrapper .ld-focus .ld-focus-main,
.uo-dashboard,
.uo-transcript,
.uo-report,
.ld-profile-summary,
.ld-profile-content {
  background-color: #fff;
  border-radius: 10px;
  border: 1px solid var(--cfa-border-soft);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
}

/* ===========================
   4. LEARNDASH – COURSE CARDS
   =========================== */

/* Course grid card */
.learndash-wrapper .ld-course-list-items .ld_course_grid {
  padding: 20px;
}

/* Course title */
.learndash-wrapper .ld-course-list-items .ld_course_grid .ld_course_title {
  color: var(--cfa-brand);
  font-weight: 700;
}

/* Meta text (lessons, quizzes, etc.) */
.learndash-wrapper .ld-course-list-items .ld_course_grid .ld_course_grid_price,
.learndash-wrapper .ld-course-list-items .ld_course_grid .ld_course_grid_content {
  color: var(--cfa-text-muted);
}

/* Progress bar */
.learndash-wrapper .ld-progress .ld-progress-bar {
  background-color: var(--cfa-bg-subtle);
}
.learndash-wrapper .ld-progress .ld-progress-bar-percentage {
  background-color: var(--cfa-accent);
}

/* Status labels (In Progress / Completed) */
.learndash-wrapper .ld-status-incomplete,
.learndash-wrapper .ld-status-progress {
  background-color: var(--cfa-accent);
  color: #fff;
  border-radius: 999px;
}
.learndash-wrapper .ld-status-complete {
  background-color: var(--cfa-success);
  color: #fff;
  border-radius: 999px;
}

/* ===========================
   5. LEARNDASH – LESSON / TOPIC LISTS
   =========================== */

.learndash-wrapper .ld-item-list .ld-item-list-item {
  background-color: #fff;
  border-radius: 8px;
  border: 1px solid var(--cfa-border-soft);
  margin-bottom: 10px;
}

.learndash-wrapper .ld-item-list .ld-item-list-item .ld-item-title {
  color: var(--cfa-brand);
  font-weight: 600;
}

.learndash-wrapper .ld-item-list .ld-item-list-item .ld-status {
  color: #fff;
  background-color: var(--cfa-accent);
  border-radius: 999px;
}

/* Focus Mode header */
.learndash-wrapper .ld-focus-header {
  background-color: #ffffff;
  border-bottom: 1px solid var(--cfa-border-soft);
}
.learndash-wrapper .ld-focus-header .ld-focus-breadcrumbs a {
  color: var(--cfa-text-muted);
}
.learndash-wrapper .ld-focus-header .ld-focus-breadcrumbs a:hover {
  color: var(--cfa-accent);
}

/* ===========================
   6. LEARNDASH – MY PROFILE / MY PROGRESS
   =========================== */

/* Profile header bar */
.learndash-wrapper .ld-profile-header {
  background-color: #ffffff;
  border-bottom: 1px solid var(--cfa-border-soft);
}

/* Numbers (Courses, Completed, Certificates, Points) */
.learndash-wrapper .ld-profile-stat,
.learndash-wrapper .ld-profile-stat-value {
  color: var(--cfa-brand);
}

/* My Progress course rows */
.learndash-wrapper .ld-profile-content .ld-profile-list .ld-profile-list-item {
  background-color: #fff;
  border-radius: 8px;
  border: 1px solid var(--cfa-border-soft);
}

/* ===========================
   7. UNCANNY / TIN CANNY REPORTS
   =========================== */

/* SCORM Activity report table */
.uo-report table.dataTable,
.uo-transcript table.dataTable {
  border: 1px solid var(--cfa-border-soft);
}

.uo-report table.dataTable thead th,
.uo-transcript table.dataTable thead th {
  background-color: var(--cfa-brand);
  color: #fff;
}

.uo-report table.dataTable tbody tr:nth-child(even),
.uo-transcript table.dataTable tbody tr:nth-child(even) {
  background-color: var(--cfa-bg-subtle);
}

/* Export buttons */
.uo-report .button,
.uo-transcript .button {
  background-color: var(--cfa-brand);
  border-color: var(--cfa-brand);
  color: #fff;
}
.uo-report .button:hover,
.uo-transcript .button:hover {
  background-color: var(--cfa-accent);
  border-color: var(--cfa-accent);
}

/* ===========================
   8. GAMIPRESS – POINTS & BADGES
   =========================== */

/* Points counter / badge */
.gamipress-points,
.gamipress-points-badge,
.gamipress-achievement-points {
  background-color: var(--cfa-success);
  color: #fff !important;
  border-radius: 999px;
  padding: 0.25em 0.7em;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 0.3em;
}

/* Icons inside points labels */
.gamipress-points i,
.gamipress-points-badge i {
  color: #fff;
}

/* Achievement cards */
.gamipress-achievement,
.gamipress-rank {
  background-color: #fff;
  border-radius: 10px;
  border: 1px solid var(--cfa-border-soft);
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06);
}

/* Achievement titles */
.gamipress-achievement .gamipress-achievement-title,
.gamipress-rank .gamipress-rank-title {
  color: var(--cfa-brand);
  font-weight: 700;
}

/* Progress bars inside GamiPress widgets */
.gamipress-progress-bar {
  background-color: var(--cfa-bg-subtle);
}
.gamipress-progress-bar span {
  background-color: var(--cfa-accent);
}

/* ===========================
   9. MISC SMALL TWEAKS
   =========================== */

/* Header menu hover underline */
.main-header-menu a:hover,
.main-header-menu .current-menu-item > a {
  color: var(--cfa-brand);
  border-bottom: 2px solid var(--cfa-brand);
}

/* Soft background for sections in Elementor */
.section-soft {
  background-color: var(--cfa-bg-subtle);
}

/* Utility: class for subtle card background */
.bg-subtle {
  background-color: var(--cfa-bg-subtle);
}
