/**
 * CubeWeb / ScalpMann
 * Tutor LMS Pro 4.x single course skin
 *
 * Brand palette:
 *   deep ink  #031927
 *   teal      #20A5A1
 *   acid lime #C1FF72
 *   surface   #F4F8F7
 */

body.single-courses {
    --cw-course-ink: #031927;
    --cw-course-teal: #20a5a1;
    --cw-course-teal-dark: #178984;
    --cw-course-lime: #c1ff72;
    --cw-course-surface: #f4f8f7;
    --cw-course-card: #ffffff;
    --cw-course-border: rgba(3, 25, 39, 0.11);
    --cw-course-muted: #587078;
    --cw-course-shadow: 0 22px 60px rgba(3, 25, 39, 0.09);
    background: var(--cw-course-surface) !important;
    color: var(--cw-course-ink) !important;
}

body.single-courses .tutor-full-width-course-top,
body.single-courses .tutor-course-top-info,
body.single-courses .tutor-page-wrap,
body.single-courses .tutor-wrap-parent {
    background: transparent !important;
    color: var(--cw-course-ink) !important;
}

body.single-courses .tutor-course-details-page {
    max-width: 1500px !important;
    padding-top: 28px !important;
    padding-bottom: 90px !important;
    color: var(--cw-course-ink) !important;
}

/* -------------------------------------------------------------------------- */
/* Lead / hero                                                                */
/* -------------------------------------------------------------------------- */

body.single-courses .tutor-course-details-top {
    position: relative;
    overflow: hidden;
    margin: 0 0 34px !important;
    padding: clamp(28px, 4vw, 52px) clamp(26px, 5vw, 68px) !important;
    border: 1px solid rgba(193, 255, 114, 0.16) !important;
    border-radius: 34px !important;
    background:
        radial-gradient(circle at 87% 15%, rgba(193, 255, 114, 0.22), transparent 27%),
        radial-gradient(circle at 8% 115%, rgba(32, 165, 161, 0.48), transparent 34%),
        var(--cw-course-ink) !important;
    box-shadow: 0 26px 70px rgba(3, 25, 39, 0.15) !important;
    color: #fff !important;
}

body.single-courses .tutor-course-details-top::after {
    content: "";
    position: absolute;
    right: 34px;
    bottom: 30px;
    width: 88px;
    height: 9px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--cw-course-teal), var(--cw-course-lime));
    opacity: 0.95;
    pointer-events: none;
}

body.single-courses .tutor-course-details-title,
body.single-courses .tutor-course-details-page .tutor-course-details-title,
body.single-courses h1.tutor-course-details-title {
    max-width: 980px;
    margin-bottom: 18px !important;
    color: var(--cw-course-ink) !important;
    font-weight: 700 !important;
    letter-spacing: -0.035em !important;
    text-wrap: balance;
}

body.single-courses .tutor-course-details-ratings,
body.single-courses .tutor-course-details-top .tutor-ratings,
body.single-courses .tutor-course-details-top .tutor-ratings-stars,
body.single-courses .tutor-course-details-top [class*="tutor-icon-star"] {
    color: var(--cw-course-lime) !important;
}

body.single-courses .tutor-course-details-top .tutor-color-secondary,
body.single-courses .tutor-course-details-top .tutor-color-muted,
body.single-courses .tutor-course-details-top .tutor-color-black,
body.single-courses .tutor-course-details-top .tutor-meta,
body.single-courses .tutor-course-details-top span,
body.single-courses .tutor-course-details-top a {
    color: rgba(255, 255, 255, 0.82) !important;
}

/* If Tutor renders course meta, use compact branded chips instead of old ghost pills. */
body.single-courses .tutor-course-details-info {
    display: flex !important;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px !important;
}

body.single-courses .tutor-course-details-info > div,
body.single-courses .tutor-course-details-top .tutor-course-details-info > div {
    display: inline-flex !important;
    align-items: center;
    min-height: 38px;
    padding: 8px 13px !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: #ffffff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
}

body.single-courses .tutor-course-details-actions .tutor-btn-ghost {
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: #ffffff !important;
}

body.single-courses .tutor-course-details-actions .tutor-btn-ghost:hover {
    border-color: var(--cw-course-lime) !important;
    background: var(--cw-course-lime) !important;
    color: var(--cw-course-ink) !important;
}

/* -------------------------------------------------------------------------- */
/* Main media                                                                 */
/* -------------------------------------------------------------------------- */

body.single-courses .tutor-course-details-page main.tutor-col-xl-8 > .tutor-course-thumbnail,
body.single-courses .tutor-course-details-page main.tutor-col-xl-8 > .tutor-video-player,
body.single-courses .tutor-course-details-page main.tutor-col-xl-8 > .tutor-course-video,
body.single-courses .tutor-course-details-page main.tutor-col-xl-8 > [class*="tutor-course-thumbnail"] {
    overflow: hidden;
    border: 1px solid var(--cw-course-border) !important;
    border-radius: 28px !important;
    background: #eaf1ef !important;
    box-shadow: var(--cw-course-shadow) !important;
}

body.single-courses .tutor-course-details-page main img {
    border-radius: 24px;
}

/* -------------------------------------------------------------------------- */
/* Enrollment / purchase sidebar                                              */
/* -------------------------------------------------------------------------- */

body.single-courses .tutor-single-course-sidebar {
    position: relative;
}

body.single-courses .tutor-single-course-sidebar > .tutor-card,
body.single-courses .tutor-single-course-sidebar .tutor-sidebar-card,
body.single-courses .tutor-course-single-sidebar-wrapper,
body.single-courses .tutor-single-course-sidebar [class*="course-entry-box"] {
    overflow: hidden;
    border: 1px solid rgba(32, 165, 161, 0.18) !important;
    border-radius: 26px !important;
    background: var(--cw-course-card) !important;
    box-shadow: var(--cw-course-shadow) !important;
}

body.single-courses .tutor-single-course-sidebar .tutor-card-body,
body.single-courses .tutor-sidebar-card .tutor-card-body {
    padding: 28px !important;
}

body.single-courses .tutor-sidebar-card .tutor-course-price,
body.single-courses .tutor-sidebar-card .tutor-fs-4,
body.single-courses .tutor-single-course-sidebar .tutor-course-price,
body.single-courses .tutor-single-course-sidebar .price {
    color: var(--cw-course-ink) !important;
    font-weight: 700 !important;
    letter-spacing: -0.025em;
}

body.single-courses .tutor-single-course-sidebar .tutor-btn,
body.single-courses .tutor-single-course-sidebar .tutor-btn-lg,
body.single-courses .tutor-single-course-sidebar .tutor-btn-md,
body.single-courses .tutor-single-course-sidebar .tutor-add-to-cart-button,
body.single-courses .tutor-single-course-sidebar button[type="submit"],
body.single-courses .tutor-single-course-sidebar a.tutor-btn-primary {
    min-height: 54px !important;
    border: 0 !important;
    border-radius: 14px !important;
    background: var(--cw-course-teal) !important;
    box-shadow: 0 12px 28px rgba(32, 165, 161, 0.22) !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    transition: transform 0.18s ease, background 0.18s ease, box-shadow 0.18s ease !important;
}

body.single-courses .tutor-single-course-sidebar .tutor-btn:hover,
body.single-courses .tutor-single-course-sidebar .tutor-add-to-cart-button:hover,
body.single-courses .tutor-single-course-sidebar button[type="submit"]:hover,
body.single-courses .tutor-single-course-sidebar a.tutor-btn-primary:hover {
    transform: translateY(-1px);
    background: var(--cw-course-teal-dark) !important;
    box-shadow: 0 16px 32px rgba(32, 165, 161, 0.28) !important;
}

body.single-courses .tutor-single-course-sidebar .tutor-btn-outline-primary,
body.single-courses .tutor-single-course-sidebar .tutor-btn-secondary {
    border: 1px solid rgba(3, 25, 39, 0.15) !important;
    background: #ffffff !important;
    box-shadow: none !important;
    color: var(--cw-course-ink) !important;
}

body.single-courses .tutor-single-course-sidebar .tutor-card-footer,
body.single-courses .tutor-sidebar-card .tutor-card-footer {
    border-top: 1px solid var(--cw-course-border) !important;
    background: linear-gradient(180deg, #ffffff, #f7fbfa) !important;
}

body.single-courses .tutor-single-course-sidebar .tutor-card-footer *,
body.single-courses .tutor-sidebar-card .tutor-card-footer *,
body.single-courses .tutor-single-course-sidebar .tutor-color-black,
body.single-courses .tutor-single-course-sidebar .tutor-color-secondary,
body.single-courses .tutor-single-course-sidebar .tutor-color-muted,
body.single-courses .tutor-single-course-sidebar p,
body.single-courses .tutor-single-course-sidebar span,
body.single-courses .tutor-single-course-sidebar li {
    color: var(--cw-course-ink) !important;
}

body.single-courses .tutor-single-course-sidebar svg,
body.single-courses .tutor-single-course-sidebar i {
    color: var(--cw-course-teal) !important;
}

/* Instructor / requirements / tags underneath purchase box */
body.single-courses .tutor-single-course-sidebar-more > * {
    margin-top: 18px !important;
    padding: 24px !important;
    border: 1px solid var(--cw-course-border) !important;
    border-radius: 22px !important;
    background: #ffffff !important;
    box-shadow: 0 14px 38px rgba(3, 25, 39, 0.06) !important;
}

body.single-courses .tutor-single-course-sidebar-more .tutor-course-details-widget-title,
body.single-courses .tutor-course-details-instructors h3 {
    color: var(--cw-course-ink) !important;
    font-weight: 700 !important;
}

body.single-courses .tutor-single-course-sidebar-more *,
body.single-courses .tutor-course-details-instructors * {
    color: var(--cw-course-ink) !important;
}

body.single-courses .tutor-single-course-sidebar-more a,
body.single-courses .tutor-course-details-instructors a {
    color: var(--cw-course-teal-dark) !important;
}

/* -------------------------------------------------------------------------- */
/* Tabs                                                                       */
/* -------------------------------------------------------------------------- */

body.single-courses .tutor-course-details-tab {
    margin-top: 30px !important;
}

body.single-courses .tutor-course-details-tab > .tutor-is-sticky {
    top: 100px !important;
    z-index: 20 !important;
    padding: 8px !important;
    border: 1px solid var(--cw-course-border) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, 0.94) !important;
    box-shadow: 0 12px 34px rgba(3, 25, 39, 0.07) !important;
    backdrop-filter: blur(14px);
}

body.single-courses .tutor-course-details-tab .tutor-nav,
body.single-courses .tutor-course-details-tab .tutor-nav:not(.tutor-nav-pills) {
    gap: 6px !important;
    border: 0 !important;
}

body.single-courses .tutor-course-details-tab .tutor-nav-link {
    padding: 11px 18px !important;
    border: 0 !important;
    border-radius: 12px !important;
    color: var(--cw-course-muted) !important;
    font-weight: 700 !important;
    transition: background 0.18s ease, color 0.18s ease !important;
}

body.single-courses .tutor-course-details-tab .tutor-nav-link:hover {
    background: rgba(32, 165, 161, 0.08) !important;
    color: var(--cw-course-teal-dark) !important;
}

body.single-courses .tutor-course-details-tab .tutor-nav-link.is-active,
body.single-courses .tutor-course-details-tab .tutor-nav-link.active,
body.single-courses .tutor-course-details-tab .tutor-nav-item.active .tutor-nav-link {
    background: var(--cw-course-ink) !important;
    color: #ffffff !important;
}

body.single-courses .tutor-course-details-tab .tutor-tab {
    padding-top: 22px !important;
}

/* -------------------------------------------------------------------------- */
/* Course information / curriculum                                            */
/* -------------------------------------------------------------------------- */

body.single-courses .tutor-course-details-content,
body.single-courses .tutor-course-details-content p,
body.single-courses .tutor-course-details-content li,
body.single-courses .tutor-course-details-content span,
body.single-courses .tutor-course-details-content a,
body.single-courses .tutor-course-details-content h1,
body.single-courses .tutor-course-details-content h2,
body.single-courses .tutor-course-details-content h3,
body.single-courses .tutor-course-details-content h4,
body.single-courses .tutor-course-details-content .tutor-color-black,
body.single-courses .tutor-course-details-content .tutor-color-secondary,
body.single-courses .tutor-course-details-content .tutor-color-muted {
    color: var(--cw-course-ink) !important;
}

body.single-courses .tutor-course-details-content a {
    color: var(--cw-course-teal-dark) !important;
    text-decoration-color: rgba(32, 165, 161, 0.45) !important;
}

body.single-courses .tutor-course-details-content,
body.single-courses .tutor-course-details-widget,
body.single-courses .tutor-course-details-widget-col-2,
body.single-courses .tutor-course-details-instructors {
    border-color: var(--cw-course-border) !important;
}

body.single-courses .tutor-course-details-widget-col-2,
body.single-courses .tutor-course-details-widget-col-2 .tutor-course-details-widget-title,
body.single-courses .tutor-course-details-widget-col-2 h3,
body.single-courses .tutor-course-details-widget-col-2 .tutor-color-black,
body.single-courses .tutor-course-details-widget-col-2 .tutor-color-secondary,
body.single-courses .tutor-course-details-widget-col-2 .tutor-color-muted,
body.single-courses .tutor-course-details-widget-col-2 li span {
    color: var(--cw-course-ink) !important;
}

body.single-courses .tutor-course-details-widget-col-2 {
    padding: 28px !important;
    border: 1px solid rgba(32, 165, 161, 0.16) !important;
    border-radius: 24px !important;
    background: linear-gradient(135deg, rgba(32, 165, 161, 0.08), rgba(193, 255, 114, 0.14)) !important;
}

body.single-courses .tutor-course-details-widget-title,
body.single-courses .tutor-course-content-title,
body.single-courses .tutor-course-topic-title,
body.single-courses .tutor-tab-item h2,
body.single-courses .tutor-tab-item h3 {
    color: var(--cw-course-ink) !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em;
}

/* Curriculum accordions */
body.single-courses .tutor-course-topic {
    overflow: hidden;
    margin-bottom: 12px !important;
    border: 1px solid var(--cw-course-border) !important;
    border-radius: 18px !important;
    background: #ffffff !important;
}

body.single-courses .tutor-course-topic-header,
body.single-courses .tutor-course-topic-title {
    background: #ffffff !important;
    color: var(--cw-course-ink) !important;
}

body.single-courses .tutor-course-topic-header:hover {
    background: #f7fbfa !important;
}

body.single-courses .tutor-course-topic-item,
body.single-courses .tutor-course-topic-item a,
body.single-courses .tutor-course-topic-item span,
body.single-courses .tutor-course-topic-item i {
    color: var(--cw-course-ink) !important;
}

body.single-courses .tutor-course-topic-item {
    border-color: rgba(3, 25, 39, 0.08) !important;
    background: #ffffff !important;
}

body.single-courses .tutor-course-topic-item:hover {
    background: rgba(32, 165, 161, 0.055) !important;
}

body.single-courses .tutor-course-topic-item i,
body.single-courses .tutor-course-topic-item svg {
    color: var(--cw-course-teal) !important;
}

/* Show more button: old child forced white text because the old description was dark. */
body.single-courses .tutor-btn-show-more.tutor-btn {
    border: 1px solid rgba(32, 165, 161, 0.32) !important;
    background: rgba(32, 165, 161, 0.08) !important;
    color: var(--cw-course-teal-dark) !important;
}

body.single-courses .tutor-btn-show-more.tutor-btn:hover {
    border-color: var(--cw-course-teal) !important;
    background: var(--cw-course-teal) !important;
    color: #ffffff !important;
}

body.single-courses .tutor-course-details-content.tutor-toggle-more-collapsed,
body.single-courses .tutor-toggle-more-content.tutor-toggle-more-collapsed {
    border-bottom-color: rgba(32, 165, 161, 0.24) !important;
}

/* Generic Tutor buttons within course content */
body.single-courses .tutor-course-details-page main .tutor-btn-primary,
body.single-courses .tutor-course-details-page main button.tutor-btn-primary {
    border-color: var(--cw-course-teal) !important;
    background: var(--cw-course-teal) !important;
    color: #ffffff !important;
}

body.single-courses .tutor-course-details-page main .tutor-btn-outline-primary {
    border-color: var(--cw-course-teal) !important;
    background: transparent !important;
    color: var(--cw-course-teal-dark) !important;
}

/* Focus state belongs to the brand too. */
body.single-courses a:focus-visible,
body.single-courses button:focus-visible,
body.single-courses input:focus-visible {
    outline: 3px solid rgba(193, 255, 114, 0.95) !important;
    outline-offset: 3px;
}

/* -------------------------------------------------------------------------- */
/* Responsive                                                                 */
/* -------------------------------------------------------------------------- */

@media (min-width: 1200px) {
    body.single-courses .tutor-single-course-sidebar {
        position: sticky;
        top: 112px;
    }
}

@media (max-width: 1199px) {
    body.single-courses .tutor-course-details-top {
        border-radius: 28px !important;
    }

    body.single-courses .tutor-single-course-sidebar {
        margin-top: 28px !important;
    }
}

@media (max-width: 767px) {
    body.single-courses .tutor-course-details-page {
        padding-top: 14px !important;
        padding-bottom: 54px !important;
    }

    body.single-courses .tutor-course-details-top {
        margin-bottom: 22px !important;
        padding: 26px 22px 34px !important;
        border-radius: 22px !important;
    }

    body.single-courses .tutor-course-details-top::after {
        right: 22px;
        bottom: 18px;
        width: 64px;
        height: 7px;
    }

    body.single-courses .tutor-course-details-title {
        font-size: clamp(34px, 10vw, 46px) !important;
        line-height: 1.02 !important;
    }

    body.single-courses .tutor-course-details-tab > .tutor-is-sticky {
        top: 74px !important;
        overflow-x: auto;
        border-radius: 14px !important;
    }

    body.single-courses .tutor-course-details-tab .tutor-nav {
        flex-wrap: nowrap !important;
        min-width: max-content;
    }

    body.single-courses .tutor-single-course-sidebar > .tutor-card,
    body.single-courses .tutor-single-course-sidebar .tutor-sidebar-card,
    body.single-courses .tutor-single-course-sidebar-more > * {
        border-radius: 18px !important;
    }
}


/* -------------------------------------------------------------------------- */
/* CubeWeb 2.4.3: simplify Tutor 4 single-course header                       */
/* -------------------------------------------------------------------------- */

/* Tutor 4 puts category / wishlist / share controls in a separate decorative
 * top strip. ScalpMann does not use that strip on the public course page. */
body.single-courses .tutor-course-details-top {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* Defensive fallback in case Tutor changes the surrounding strip markup but
 * keeps the actions/components. */
body.single-courses .tutor-course-details-actions,
body.single-courses .tutor-course-wishlist-btn,
body.single-courses [class*="tutor-course-wishlist"],
body.single-courses [class*="tutor-course-share"],
body.single-courses .tutor-course-details-category,
body.single-courses [class*="course-category"] {
    display: none !important;
}

/* The title is OUTSIDE that strip in Tutor 4. Legacy pre-v4 child CSS used
 * white typography here, which is unreadable on ScalpMann's light surface. */
body.single-courses .tutor-course-details-page .tutor-course-details-title,
body.single-courses .tutor-course-details-page h1.tutor-course-details-title,
body.single-courses .tutor-course-details-title.tutor-fs-4,
body.single-courses .tutor-course-details-title.tutor-fs-5 {
    color: var(--cw-course-ink) !important;
    background: transparent !important;
    text-shadow: none !important;
}

/* Keep the title block compact now that the decorative strip is gone. */
body.single-courses .tutor-course-details-page > .tutor-course-details-title,
body.single-courses .tutor-course-details-page .tutor-course-details-ratings + .tutor-course-details-title {
    margin-top: 10px !important;
}
