/* ════════════════════════════════════════════════════════════
   PLI LearnDash Style Overrides
   Loaded via functions.php after LearnDash core CSS
   
   CONTENTS
   1. Color Reference
   2. Sidebar / Lesson Navigation
   3. Course Navigation Heading
   4. Green Color Overrides
   5. Mark as Complete Button
   6. Topic List (Lesson Content panel)
   7. Course Outline Page
   8. Password-Protected Page
   ════════════════════════════════════════════════════════════ */


/* ─────────────────────────────────────────────────────
   1. COLOR REFERENCE
   PLI Navy        #001F4B
   PLI Navy Mid    #002762
   PLI Blue        #0077C8
   PLI Blue Hover  #005fa0
   PLI Blue Soft   #eef5fc
   PLI Gold        #FFCD00
   PLI Green       #0a8a6e
   PLI Green Dark  #0c6e58
   PLI Ink         #1A1A1A
   PLI Ink Muted   #4a4a6a
   PLI Rule        #e2e8f0
   PLI Rule Muted  #c5cfe0
   ───────────────────────────────────────────────────── */


/* ════════════════════════════════════════════════════════════
   2. SIDEBAR / LESSON NAVIGATION
   ════════════════════════════════════════════════════════════ */

.ld-lesson-navigation .ld-lesson-item-preview-heading,
.ld-lesson-navigation .ld-lesson-item-preview-heading .ld-lesson-title {
  color: #1A1A1A;
  font-weight: 500;
  transition: color 0.15s ease, background 0.15s ease;
}

.ld-lesson-navigation .ld-lesson-item-preview-heading:hover,
.ld-lesson-navigation .ld-lesson-item-preview-heading:hover .ld-lesson-title,
.ld-lesson-navigation .ld-lesson-item-preview-heading:focus,
.ld-lesson-navigation .ld-lesson-item-preview-heading:focus .ld-lesson-title {
  color: #0077C8;
  background: #eef5fc;
}

.ld-lesson-navigation .ld-is-current-lesson .ld-lesson-item-preview-heading,
.ld-lesson-navigation .ld-is-current-lesson .ld-lesson-item-preview-heading .ld-lesson-title {
  color: #0077C8;
  font-weight: 700;
}

.ld-lesson-navigation .ld-lesson-section-heading {
  color: #001F4B;
  font-weight: 800;
  letter-spacing: 0.01em;
}

.ld-lesson-navigation .ld-status-icon.ld-status-incomplete {
  border-color: #c5cfe0;
  background: transparent;
}

.ld-lesson-navigation .ld-is-current-lesson .ld-status-icon {
  border-color: #0077C8;
}

.ld-lesson-navigation .ld-status-icon.ld-status-complete {
  background: #0a8a6e;
  border-color: #0a8a6e;
}

.ld-lesson-navigation .ld-lesson-item-preview-heading:focus-visible {
  outline: 3px solid #FFCD00;
  outline-offset: -2px;
  border-radius: 4px;
}


/* ════════════════════════════════════════════════════════════
   3. COURSE NAVIGATION HEADING
   ════════════════════════════════════════════════════════════ */

.learndash-wrapper .ld-focus .ld-focus-sidebar .ld-course-navigation-heading {
  background: linear-gradient(135deg, #001F4B 0%, #0077C8 100%);
  border-bottom: 3px solid #FFCD00;
}


/* ════════════════════════════════════════════════════════════
   4. GREEN COLOR OVERRIDES
   Replaces LearnDash #81d742 with PLI brand-aligned green
   ════════════════════════════════════════════════════════════ */

/* Backgrounds */
.learndash-wrapper #quiz_continue_link,
.learndash-wrapper .ld-secondary-background,
.learndash-wrapper .ld-status-complete,
.learndash-wrapper .ld-alert-success .ld-button,
.learndash-wrapper .ld-alert-success .ld-alert-icon,
.learndash-wrapper .wpProQuiz_content a#quiz_continue_link {
  background-color: #0a8a6e !important;
}

/* Text colors (Mark Complete button excluded — handled separately) */
.learndash-wrapper .ld-secondary-color-hover:hover,
.learndash-wrapper .ld-secondary-color,
.learndash-wrapper .ld-alert-success {
  color: #0a8a6e !important;
}

/* Progress bar */
.learndash-wrapper .course_progress .sending_progress_bar {
  background: #0a8a6e !important;
}

/* Loading spinner */
.learndash-wrapper .ld-secondary-in-progress-icon {
  border-left-color: #0a8a6e !important;
  border-top-color: #0a8a6e !important;
}

/* Success alert */
.learndash-wrapper .ld-alert-success {
  border-color: #0a8a6e !important;
  background-color: transparent !important;
}

/* Quiz button hover */
.learndash-wrapper .wpProQuiz_content .wpProQuiz_button_reShowQuestion:hover,
.learndash-wrapper .wpProQuiz_content .wpProQuiz_button_restartQuiz:hover {
  background-color: #0a8a6e !important;
  opacity: 0.85;
}

/* Focus outlines */
.learndash-wrapper #quiz_continue_link:focus,
.learndash-wrapper .ld-alert-success .ld-button:focus,
.learndash-wrapper .wpProQuiz_content a#quiz_continue_link:focus,
.learndash-wrapper .wpProQuiz_content .wpProQuiz_button_reShowQuestion:focus,
.learndash-wrapper .wpProQuiz_content .wpProQuiz_button_restartQuiz:focus {
  outline-color: #0a8a6e !important;
}


/* ════════════════════════════════════════════════════════════
   5. MARK AS COMPLETE BUTTON
   Loaded after section 4 to win cascade for color: white
   ════════════════════════════════════════════════════════════ */

.learndash-wrapper input.learndash_mark_complete_button,
.learndash-wrapper input[type="submit"].learndash_mark_complete_button,
.learndash-wrapper .ld-focus .ld-focus-header input.learndash_mark_complete_button,
.learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete input[type="submit"],
.learndash-wrapper .ld-focus .ld-focus-header #sfwd-mark-complete #learndash_mark_complete_button,
.learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete .learndash_mark_complete_button {
  background: #0a8a6e !important;
  background-color: #0a8a6e !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: none !important;
  padding: 10px 22px !important;
  border-radius: 6px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  transition: background 0.15s ease, transform 0.1s ease !important;
  cursor: pointer !important;
}

.learndash-wrapper input.learndash_mark_complete_button:hover,
.learndash-wrapper input[type="submit"].learndash_mark_complete_button:hover,
.learndash-wrapper .ld-focus .ld-focus-header input.learndash_mark_complete_button:hover,
.learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete input[type="submit"]:hover {
  background: #0c6e58 !important;
  background-color: #0c6e58 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  transform: translateY(-1px);
}

/* Hide the redundant checkmark next to button */
.learndash-wrapper .ld-focus .ld-focus-header .sfwd-mark-complete:after {
  display: none !important;
}


/* ════════════════════════════════════════════════════════════
   6. TOPIC LIST (Lesson Content panel + expanded topics)
   ════════════════════════════════════════════════════════════ */

/* Topic list header — PLI Navy Mid */
.learndash-wrapper .ld-table-list .ld-table-list-header {
  background-color: #002762 !important;
}

/* Default topic title */
.learndash-wrapper .ld-table-list .ld-topic-title,
.learndash-wrapper .ld-table-list-item .ld-topic-title,
.learndash-wrapper .ld-table-list-item-preview .ld-topic-title,
.learndash-wrapper .ld-topic-row .ld-topic-title {
  color: #1A1A1A !important;
  font-weight: 500 !important;
}

/* Hover state */
.learndash-wrapper .ld-table-list-item-preview:hover,
.learndash-wrapper .ld-topic-row:hover {
  background-color: #eef5fc !important;
}

.learndash-wrapper .ld-table-list-item-preview:hover .ld-topic-title,
.learndash-wrapper .ld-table-list-item-preview:focus .ld-topic-title,
.learndash-wrapper .ld-topic-row:hover .ld-topic-title,
.learndash-wrapper .ld-topic-row:focus .ld-topic-title,
.learndash-wrapper .ld-primary-color-hover:hover .ld-topic-title {
  color: #0077C8 !important;
}

/* Current topic */
.learndash-wrapper .ld-table-list-item.ld-is-current-lesson .ld-topic-title,
.learndash-wrapper .ld-table-list-item .ld-is-current-lesson .ld-topic-title,
.learndash-wrapper .ld-topic-row.ld-is-current-lesson .ld-topic-title {
  color: #0077C8 !important;
  font-weight: 700 !important;
}

/* Status icons */
.learndash-wrapper .ld-table-list-item .ld-status-icon.ld-status-incomplete,
.learndash-wrapper .ld-topic-row .ld-status-icon.ld-status-incomplete {
  border-color: #c5cfe0 !important;
  background: transparent !important;
}

.learndash-wrapper .ld-table-list-item.ld-is-current-lesson .ld-status-icon,
.learndash-wrapper .ld-topic-row.ld-is-current-lesson .ld-status-icon {
  border-color: #0077C8 !important;
}

.learndash-wrapper .ld-table-list-item .ld-status-icon.ld-status-complete,
.learndash-wrapper .ld-topic-row .ld-status-icon.ld-status-complete {
  background: #0a8a6e !important;
  border-color: #0a8a6e !important;
}

/* Focus ring */
.learndash-wrapper .ld-table-list-item-preview:focus-visible,
.learndash-wrapper .ld-topic-row:focus-visible {
  outline: 3px solid #FFCD00 !important;
  outline-offset: -2px;
  border-radius: 4px;
}


/* ════════════════════════════════════════════════════════════
   7. COURSE OUTLINE PAGE
   ════════════════════════════════════════════════════════════ */

/* Default lesson title */
.learndash-wrapper .ld-item-list-item .ld-item-name,
.learndash-wrapper .ld-item-list-item .ld-item-title,
.learndash-wrapper .ld-item-list-item .ld-item-name .ld-item-title,
.learndash-wrapper .ld-item-list-item a.ld-primary-color-hover,
.learndash-wrapper .ld-item-list-item a.ld-primary-color-hover .ld-item-title {
  color: #1A1A1A !important;
  font-weight: 500 !important;
  transition: color 0.15s ease, background 0.15s ease !important;
}

/* Hover state */
.learndash-wrapper .ld-item-list-item .ld-item-list-item-preview:hover {
  background-color: #eef5fc !important;
}

.learndash-wrapper .ld-item-list-item .ld-item-name:hover,
.learndash-wrapper .ld-item-list-item .ld-item-name:hover .ld-item-title,
.learndash-wrapper .ld-item-list-item a.ld-primary-color-hover:hover,
.learndash-wrapper .ld-item-list-item a.ld-primary-color-hover:hover .ld-item-title,
.learndash-wrapper .ld-item-list-item .ld-item-list-item-preview:hover .ld-item-name,
.learndash-wrapper .ld-item-list-item .ld-item-list-item-preview:hover .ld-item-title {
  color: #0077C8 !important;
}

/* Current lesson */
.learndash-wrapper .ld-item-list-item.ld-is-current-lesson .ld-item-name,
.learndash-wrapper .ld-item-list-item.ld-is-current-lesson .ld-item-title,
.learndash-wrapper .ld-item-list-item.ld-is-current-lesson .ld-item-name .ld-item-title {
  color: #0077C8 !important;
  font-weight: 700 !important;
}

/* Section headings */
.learndash-wrapper .ld-item-list-section-heading .ld-lesson-section-heading {
  color: #001F4B !important;
  font-weight: 800 !important;
  letter-spacing: 0.01em !important;
}


/* ════════════════════════════════════════════════════════════
   8. PASSWORD-PROTECTED PAGE
   ════════════════════════════════════════════════════════════ */

/* Container — vertically centered */
.post-password-required .content-wrap,
.post-password-required .entry-content-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: calc(100vh - 240px);
  padding: 48px 24px;
}

.post-password-required .entry-content.single-content {
  width: 100%;
  max-width: 460px;
  padding: 0;
}

/* The card */
.post-password-required .post-password-form {
  background: #fff;
  border-radius: 12px;
  padding: 48px 44px 40px;
  box-shadow: 0 12px 40px rgba(0, 31, 75, 0.08);
  border: 1px solid #e2e8f0;
  position: relative;
  overflow: hidden;
  text-align: center;
}

/* PLI gradient accent bar — navy to blue */
.post-password-required .post-password-form::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, #001F4B 0%, #0077C8 100%);
}

/* Eyebrow */
.post-password-required .pwd-eyebrow {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #0077C8;
  margin-bottom: 12px;
}

/* Heading */
.post-password-required .pwd-heading {
  font-family: 'Montserrat', sans-serif;
  font-size: 28px;
  font-weight: 800;
  color: #001F4B;
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin: 0 0 12px;
}

/* Description */
.post-password-required .pwd-desc {
  font-size: 16px;
  color: #4a4a6a;
  line-height: 1.65;
  margin: 0 0 28px;
}

/* Label */
.post-password-required .pwd-label {
  display: block;
  font-size: 11px;
  font-weight: 700;
  color: #1A1A1A;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: left;
  margin-bottom: 8px;
}

/* Password input */
.post-password-required .post-password-form input[type="password"] {
  display: block;
  width: 100%;
  height: 52px;
  padding: 0 16px;
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
  color: #1A1A1A;
  background: #f4f6f9;
  border: 1.5px solid #e2e8f0;
  border-radius: 6px;
  outline: none;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
  box-sizing: border-box;
}

.post-password-required .post-password-form input[type="password"]:focus {
  border-color: #0077C8;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(0, 119, 200, 0.12);
}

/* Submit button */
.post-password-required .post-password-form input[type="submit"] {
  display: block;
  width: 100%;
  height: 52px;
  margin-top: 16px;
  background: #0077C8;
  color: #fff;
  border: none;
  border-radius: 6px;
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.15s ease, transform 0.1s ease;
}

.post-password-required .post-password-form input[type="submit"]:hover {
  background: #005fa0;
}

.post-password-required .post-password-form input[type="submit"]:active {
  transform: scale(0.99);
}

.post-password-required .post-password-form input[type="submit"]:focus-visible {
  outline: 3px solid #FFCD00;
  outline-offset: 2px;
}

/* Footnote */
.post-password-required .pwd-footnote {
  font-size: 12px;
  color: #6b7790;
  margin: 24px 0 0;
  line-height: 1.6;
}