/* Tutor LMS Theme Integration */

/* General Container */
.tutor-wrap, .tutor-container {
    color: var(--color-text-primary) !important;
}

.tutor-container {
    max-width: var(--max-width) !important;
    margin: 0 auto !important;
    padding: 0 var(--spacing-md) !important;
    width: 100% !important;
}

/* Headings */
.tutor-wrap h1, .tutor-wrap h2, .tutor-wrap h3, .tutor-wrap h4, .tutor-wrap h5, .tutor-wrap h6 {
    color: var(--color-text-heading) !important;
    font-family: var(--font-heading) !important;
}

/* Course Cards */
.tutor-course-card {
    background-color: var(--color-bg-secondary) !important;
    border: 1px solid var(--color-border) !important;
    border-radius: 4px !important;
    transition: all 0.3s ease !important;
}

.tutor-course-card:hover {
    border-color: var(--color-accent-primary) !important;
    box-shadow: 0 0 15px rgba(0, 243, 255, 0.1) !important;
}

.tutor-course-card h3 a {
    color: var(--color-text-heading) !important;
    text-decoration: none !important;
}

.tutor-course-card h3 a:hover {
    color: var(--color-accent-primary) !important;
    background-color: transparent !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

.tutor-meta-level, .tutor-meta-student, .tutor-course-loop-meta {
    color: var(--color-text-secondary) !important;
}

/* Buttons */
.tutor-btn, .tutor-button {
    background-color: var(--color-accent-primary) !important;
    color: var(--color-bg-primary) !important;
    border: none !important;
    font-family: var(--font-code) !important;
    text-transform: uppercase !important;
    font-weight: bold !important;
    border-radius: 2px !important;
    padding: 10px 20px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

.tutor-btn:hover, .tutor-button:hover {
    background-color: var(--color-accent-secondary) !important;
    color: #fff !important;
}

.tutor-btn-outline {
    background: transparent !important;
    border: 1px solid var(--color-accent-primary) !important;
    color: var(--color-accent-primary) !important;
}

.tutor-btn-outline:hover {
    background: var(--color-accent-primary) !important;
    color: var(--color-bg-primary) !important;
}

/* Inputs */
.tutor-form-control, .tutor-form-select, .tutor-input-field {
    background-color: var(--color-bg-tertiary) !important;
    border: 1px solid var(--color-border) !important;
    color: var(--color-text-primary) !important;
    font-family: var(--font-code) !important;
    padding: 10px !important;
}

.tutor-form-control:focus, .tutor-form-select:focus, .tutor-input-field:focus {
    border-color: var(--color-accent-primary) !important;
    outline: none !important;
}

/* Checkboxes & Radios */
.tutor-form-check-input {
    background-color: var(--color-bg-tertiary) !important;
    border: 1px solid var(--color-border) !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    cursor: pointer !important;
    position: relative !important;
}

.tutor-form-check-input:checked {
    background-color: var(--color-accent-primary) !important;
    border-color: var(--color-accent-primary) !important;
}

/* Specific fix for the completion circle */
.tutor-form-check-input.tutor-form-check-input {
    background-color: var(--color-bg-tertiary) !important;
    border: 1px solid var(--color-border) !important;
}

.tutor-form-check-input.tutor-form-check-input:checked {
    background-color: var(--color-accent-primary) !important;
    border-color: var(--color-accent-primary) !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e") !important;
}

/* Dashboard */
.tutor-dashboard-content {
    background-color: var(--color-bg-secondary) !important;
    border: 1px solid var(--color-border) !important;
    padding: 20px !important;
}

.tutor-dashboard-menu-item a {
    color: var(--color-text-primary) !important;
    text-decoration: none !important;
}

.tutor-dashboard-menu-item.active a, .tutor-dashboard-menu-item a:hover {
    color: var(--color-accent-primary) !important;
    background-color: rgba(0, 243, 255, 0.05) !important;
}

/* Pagination */
.tutor-pagination-wrap .page-numbers {
    background-color: var(--color-bg-secondary) !important;
    color: var(--color-text-primary) !important;
    border: 1px solid var(--color-border) !important;
    padding: 5px 10px !important;
    margin: 0 2px !important;
    text-decoration: none !important;
}

.tutor-pagination-wrap .page-numbers.current, .tutor-pagination-wrap .page-numbers:hover {
    background-color: var(--color-accent-primary) !important;
    color: var(--color-bg-primary) !important;
    border-color: var(--color-accent-primary) !important;
}

/* Ratings */
.tutor-star-rating-group {
    color: var(--color-accent-warning) !important;
}

/* Single Course */
.tutor-course-details-title {
    color: var(--color-text-heading) !important;
}

.tutor-course-details-content {
    background-color: var(--color-bg-secondary) !important;
    padding: 20px !important;
    border: 1px solid var(--color-border) !important;
}

.tutor-course-details-tab {
    background-color: var(--color-bg-secondary) !important;
    border: 1px solid var(--color-border) !important;
    border-radius: 4px !important;
    padding: 20px !important;
    margin-top: 32px !important;
}

.tutor-is-sticky {
    background-color: var(--color-bg-secondary) !important;
    border: 1px solid var(--color-border) !important;
    z-index: 99 !important;
    padding: 20px !important;
}

.tutor-course-topics-header {
    background-color: var(--color-bg-tertiary) !important;
    border-bottom: 1px solid var(--color-border) !important;
}

.tutor-course-topic {
    border: 1px solid var(--color-border) !important;
    margin-bottom: 10px !important;
}

.tutor-course-lesson h5 a {
    color: var(--color-text-primary) !important;
}

.tutor-course-lesson h5 a:hover {
    color: var(--color-accent-primary) !important;
}

/* Sidebar */
.tutor-course-sidebar-card {
    background-color: var(--color-bg-secondary) !important;
    border: 1px solid var(--color-border) !important;
    padding: 20px !important;
}

.tutor-single-course-sidebar .tutor-sidebar-card,
.tutor-single-course-sidebar .tutor-card {
    background-color: var(--color-bg-secondary) !important;
    border: 1px solid var(--color-border) !important;
    border-radius: 4px !important;
    margin-bottom: 20px !important;
}

.tutor-single-course-sidebar .tutor-sidebar-card .tutor-card-body,
.tutor-single-course-sidebar .tutor-card .tutor-card-body {
    background-color: transparent !important;
    color: var(--color-text-primary) !important;
    padding: 20px !important;
}

.tutor-price-preview-box .price {
    color: var(--color-accent-primary) !important;
    font-size: 24px !important;
    font-weight: bold !important;
}

/* Cards */
.tutor-card {
    background-color: var(--color-bg-secondary) !important;
    border: 1px solid var(--color-border) !important;
    border-radius: 4px !important;
}

/* Overrides for hardcoded colors */
.tutor-color-black {
    color: var(--color-text-heading) !important;
}

.tutor-color-secondary {
    color: var(--color-text-secondary) !important;
}

/* Progress Bar */
.tutor-progress-bar {
    background-color: var(--color-bg-tertiary) !important;
}

.tutor-progress-value {
    background-color: var(--color-accent-primary) !important;
}

/* Alerts */
.tutor-alert {
    background-color: var(--color-bg-secondary) !important;
    border: 1px solid var(--color-border) !important;
    color: var(--color-text-primary) !important;
    padding: 15px !important;
    border-radius: 4px !important;
    margin-bottom: 20px !important;
}

.tutor-alert-success {
    border-color: var(--color-accent-success) !important;
    color: var(--color-accent-success) !important;
}

.tutor-alert-warning {
    border-color: var(--color-accent-warning) !important;
    color: var(--color-accent-warning) !important;
}

.tutor-alert-danger, .tutor-alert-error {
    border-color: var(--color-accent-danger) !important;
    color: var(--color-accent-danger) !important;
}

.tutor-alert-info {
    border-color: var(--color-accent-primary) !important;
    color: var(--color-accent-primary) !important;
}

/* Single Course Content (Lessons, Quizzes, Assignments) */
.tutor-course-single-content-wrapper {
    background-color: transparent !important;
    color: var(--color-text-primary) !important;
}

.tutor-course-single-content-wrapper a {
    color: var(--color-accent-primary) !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.tutor-course-single-content-wrapper a:hover,
.tutor-course-single-content-wrapper a:focus {
    color: var(--color-accent-secondary) !important;
    text-decoration: underline !important;
}

.tutor-course-single-content-wrapper a:active {
    color: var(--color-accent-secondary) !important;
    opacity: 0.8 !important;
}

.tutor-course-single-sidebar-wrapper {
    background-color: var(--color-bg-secondary) !important;
    border-right: 1px solid var(--color-border) !important;
}

#tutor-single-entry-content,
.tutor-single-entry-content,
.tutor-quiz-single-entry-wrap {
    background-color: transparent !important;
}

/* Single Header */
.tutor-course-topic-single-header, .tutor-single-page-top-bar {
    background-color: var(--color-bg-secondary) !important;
    border-bottom: 1px solid var(--color-border) !important;
    color: var(--color-text-heading) !important;
}

.tutor-course-topic-single-header-title {
    color: var(--color-text-heading) !important;
}

/* Single Sidebar */
.tutor-course-single-sidebar-title {
    color: var(--color-text-heading) !important;
    border-bottom: 1px solid var(--color-border) !important;
    padding: 15px 20px !important;
    background-color: var(--color-bg-tertiary) !important;
}

.tutor-lesson-sidebar {
    background-color: var(--color-bg-secondary) !important;
    border-right: 1px solid var(--color-border) !important;
}

.tutor-course-topic-title {
    color: var(--color-text-primary) !important;
}

.tutor-course-topic-summary {
    color: var(--color-text-secondary) !important;
}

.tutor-accordion-item-header.is-active {
    background-color: var(--color-bg-tertiary) !important;
    border-left: 3px solid var(--color-accent-primary) !important;
}

/* Single Footer */
.tutor-course-topic-single-footer {
    background-color: var(--color-bg-secondary) !important;
    border-top: 1px solid var(--color-border) !important;
}

/* Spotlight Mode */
.tutor-spotlight-mode .tutor-course-single-content-wrapper {
    background-color: #000 !important; /* Deep black for spotlight */
}

.tutor-spotlight-mode #tutor-single-entry-content {
    color: #ccc !important;
}

/* Icons & Buttons in Single View */
.tutor-iconic-btn {
    color: var(--color-text-secondary) !important;
}

.tutor-iconic-btn:hover {
    color: var(--color-accent-primary) !important;
    background-color: rgba(0, 243, 255, 0.1) !important;
}

/* Quiz Wrapper */
.tutor-quiz-wrapper {
    background-color: var(--color-bg-secondary) !important;
    padding: 30px !important;
    border-radius: 4px !important;
    border: 1px solid var(--color-border) !important;
}

/* Text Colors */
.tutor-color-muted {
    color: var(--color-text-secondary) !important;
}

.tutor-color-primary-60 {
    color: var(--color-accent-primary) !important;
    opacity: 0.8 !important;
}

/* Tabs */
.tutor-tab {
    border-bottom: none !important;
}

.tutor-tab-item {
    color: var(--color-text-secondary) !important;
    padding: 10px 20px !important;
    cursor: pointer !important;
    font-family: var(--font-heading) !important;
}

.tutor-tab-item:hover, .tutor-tab-item.is-active {
    color: var(--color-accent-primary) !important;
    border-bottom: none !important;
    margin-bottom: -1px !important;
}

/* Button Variants */
.tutor-btn-primary {
    background-color: var(--color-accent-primary) !important;
    color: var(--color-bg-primary) !important;
}

.tutor-btn-primary:hover {
    background-color: var(--color-accent-secondary) !important;
    color: #fff !important;
}

.tutor-btn-secondary {
    background-color: var(--color-bg-tertiary) !important;
    color: var(--color-text-primary) !important;
    border: 1px solid var(--color-border) !important;
}

.tutor-btn-secondary:hover {
    background-color: var(--color-bg-secondary) !important;
    border-color: var(--color-accent-primary) !important;
    color: var(--color-accent-primary) !important;
}

.tutor-btn-ghost {
    background-color: transparent !important;
    color: var(--color-text-secondary) !important;
}

.tutor-btn-ghost:hover {
    color: var(--color-accent-primary) !important;
    background-color: rgba(0, 243, 255, 0.05) !important;
}

/* Forms */
.tutor-form-group label {
    color: var(--color-text-primary) !important;
    display: block !important;
    margin-bottom: 5px !important;
}

.tutor-form-row {
    margin-bottom: 15px !important;
}

/* Typography Utilities */
.tutor-fs-1, .tutor-fs-2, .tutor-fs-3, .tutor-fs-4, .tutor-fs-5, .tutor-fs-6, .tutor-fs-7 {
    font-family: var(--font-main) !important;
    color: var(--color-text-primary) !important;
}

.tutor-fw-medium, .tutor-fw-bold {
    font-weight: bold !important;
    color: var(--color-text-heading) !important;
}

/* Video Player */
.tutor-video-player {
    background-color: #000 !important;
    border: 1px solid var(--color-border) !important;
}

/* Login/Register Forms */
.tutor-login-form-wrap, .tutor-registration-form-wrap {
    background-color: var(--color-bg-secondary) !important;
    padding: 30px !important;
    border: 1px solid var(--color-border) !important;
    border-radius: 4px !important;
}

/* Dashboard Specifics */
.tutor-dashboard-header {
    background-color: var(--color-bg-secondary) !important;
    border-bottom: 1px solid var(--color-border) !important;
}

.tutor-dashboard-header-title {
    color: var(--color-text-heading) !important;
}

.tutor-dashboard-sidebar {
    background-color: var(--color-bg-secondary) !important;
    border-right: 1px solid var(--color-border) !important;
}

.tutor-dashboard-content-title {
    color: var(--color-text-heading) !important;
    border-bottom: 1px solid var(--color-border) !important;
    padding-bottom: 10px !important;
    margin-bottom: 20px !important;
}

/* Wishlist */
.tutor-course-wishlist-btn {
    color: var(--color-text-secondary) !important;
}

.tutor-course-wishlist-btn:hover, .tutor-course-wishlist-btn.is-active {
    color: var(--color-accent-danger) !important;
}

/* Navigation (Tabs & Menus) */
.tutor-nav {
    border-bottom: 1px solid var(--color-border) !important;
    margin-bottom: 20px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    list-style: none !important;
    padding: 0 !important;
    background-color: transparent !important;
}

.tutor-nav-item {
    margin-right: 20px !important;
    margin-bottom: -1px !important;
}

.tutor-nav-link {
    color: var(--color-text-secondary) !important;
    padding: 10px 15px !important;
    display: block !important;
    text-decoration: none !important;
    border-bottom: 2px solid transparent !important;
    transition: all 0.3s ease !important;
    font-family: var(--font-heading) !important;
    background-color: transparent !important;
}

.tutor-nav-link:hover, .tutor-nav-link.is-active {
    color: var(--color-accent-primary) !important;
    border-bottom-color: transparent !important;
    background-color: rgba(0, 243, 255, 0.05) !important;
}

/* Card Body */
.tutor-card-body {
    padding: 20px !important;
    color: var(--color-text-primary) !important;
}

/* Accordion Body (Course Topics) */
.tutor-accordion-item-body {
    background-color: var(--color-bg-primary) !important;
    border-top: 1px solid var(--color-border) !important;
}

.tutor-accordion-item-body-content {
    padding: 0 !important;
}

/* Course Topic Items */
.tutor-course-topic-item {
    background-color: var(--color-bg-primary) !important;
    border-bottom: 1px solid var(--color-border) !important;
    color: var(--color-text-primary) !important;
    transition: all 0.3s ease !important;
}

.tutor-course-topic-item:hover {
    background-color: rgba(0, 243, 255, 0.05) !important;
}

.tutor-course-topic-item.is-active {
    background-color: rgba(0, 243, 255, 0.1) !important;
    border-left: 3px solid var(--color-accent-primary) !important;
}

.tutor-course-single-sidebar-wrapper .tutor-course-topic-item.is-active a,
.tutor-course-single-sidebar-wrapper .tutor-course-topic-item.is-active .tutor-course-topic-item-title {
    color: var(--color-accent-primary) !important;
    font-weight: bold !important;
    text-decoration: none !important;
    background-color: transparent !important;
}

.tutor-course-single-sidebar-wrapper .tutor-course-topic-item.is-active a:hover {
    color: var(--color-accent-secondary) !important;
}

.tutor-course-single-sidebar-wrapper .tutor-course-topic-item a {
    color: var(--color-text-primary) !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    background-color: transparent !important;
}

.tutor-course-single-sidebar-wrapper .tutor-course-topic-item a .tutor-course-topic-item-title {
    color: var(--color-text-primary) !important;
}

.tutor-course-single-sidebar-wrapper .tutor-course-topic-item a:hover,
.tutor-course-single-sidebar-wrapper .tutor-course-topic-item a:focus {
    color: var(--color-accent-primary) !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

.tutor-course-single-sidebar-wrapper .tutor-course-topic-item a:hover .tutor-course-topic-item-title,
.tutor-course-single-sidebar-wrapper .tutor-course-topic-item a:focus .tutor-course-topic-item-title {
    color: var(--color-accent-primary) !important;
}

/* Overrides for light backgrounds (replacing #eff1f6) */
.tutor-accordion-item-header,
.tutor-course-topic-item,
.tutor-course-lesson,
.tutor-course-content-list-item,
.tutor-single-course-sidebar .tutor-card-body,
.tutor-course-topic-item-lesson {
    background-color: var(--color-bg-secondary) !important;
    border-color: var(--color-border) !important;
}

.tutor-accordion-item-header:hover {
    background-color: var(--color-bg-tertiary) !important;
}

.tutor-course-topic-item-lesson {
    padding: 12px 20px !important;
}

.tutor-course-topic-item-lesson.is-active {
    color: var(--color-accent-primary) !important;
    font-weight: bold !important;
}

.tutor-course-topic-item-title {
    color: inherit !important;
}

/* Course Content List Item */
.tutor-course-content-list-item {
    padding: 15px 20px !important;
    border-bottom: 1px solid var(--color-border) !important;
    display: flex !important;
    align-items: center !important;
    transition: background-color 0.2s ease !important;
    background-color: transparent !important;
}

.tutor-course-content-list-item:last-child {
    border-bottom: none !important;
}

.tutor-course-content-list-item:hover {
    background-color: rgba(0, 243, 255, 0.05) !important;
}

.tutor-course-content-list-item-title {
    color: var(--color-text-primary) !important;
    margin: 0 !important;
    font-size: 1rem !important;
    flex-grow: 1 !important;
}

.tutor-course-content-list-item-icon {
    color: var(--color-accent-primary) !important;
}

/* Instructors */
.tutor-course-details-instructors {
    background-color: var(--color-bg-secondary) !important;
    border: 1px solid var(--color-border) !important;
    padding: 20px !important;
    border-radius: 4px !important;
    margin-top: 30px !important;
}

.tutor-instructor-name h3, .tutor-instructor-name a {
    color: var(--color-text-heading) !important;
    text-decoration: none !important;
}

.tutor-instructor-name a:hover {
    color: var(--color-accent-primary) !important;
}

/* Dropdowns */
.tutor-dropdown {
    background-color: var(--color-bg-secondary) !important;
    border: 1px solid var(--color-border) !important;
    box-shadow: 0 5px 15px rgba(0,0,0,0.5) !important;
}

.tutor-dropdown .tutor-nav-link {
    padding: 10px 20px !important;
    border-bottom: 1px solid var(--color-border) !important;
}

.tutor-dropdown .tutor-nav-link:last-child {
    border-bottom: none !important;
}

.tutor-dropdown .tutor-nav-link:hover {
    background-color: var(--color-bg-tertiary) !important;
}

/* Remove footer top margin for Tutor lessons */
.single-lesson .site-footer,
.tutor-single-lesson .site-footer {
    margin-top: 0 !important;
}

/* Sidebar More Info Box */
.tutor-single-course-sidebar-more > div {
    background-color: var(--color-bg-secondary) !important;
    border: 1px solid var(--color-border) !important;
    padding: var(--spacing-md) !important;
    border-radius: 4px !important;
    margin-bottom: var(--spacing-md) !important;
}

.tutor-single-course-sidebar-more > div ul li {
    border-bottom: 1px solid var(--color-border-subtle) !important;
    color: var(--color-text-secondary) !important;
}

.tutor-single-course-sidebar-more > div ul li:last-child {
    border-bottom: none !important;
}

.tutor-single-course-sidebar-more > div .tutor-course-price {
    color: var(--color-accent-primary) !important;
    font-family: var(--font-code) !important;
    font-size: 1.5rem !important;
}

/* Fix instructor name visibility in course cards */
.tutor-meta.tutor-mt-auto,
.tutor-meta.tutor-mt-auto a,
.tutor-meta.tutor-mt-auto span {
    color: var(--color-text-primary) !important;
}

.tutor-meta.tutor-mt-auto a:hover {
    color: var(--color-accent-primary) !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

