/*
 * JDS public course experience. Course templates opt in with jds-course-page.
 * Primitive → semantic → component aliases stay on that body, never :root.
 * Elementor documents retain their own authored containers and control values.
 */
body.jds-course-page {
    --jds-public-paper-50: #f5f8f9;
    --jds-public-white: #fff;
    --jds-public-ink-900: #142d36;
    --jds-public-ink-600: #536972;
    --jds-public-line-200: #dce5e9;
    --jds-public-night-950: #11242c;
    --jds-public-night-900: #172e37;
    --jds-public-night-700: #334e59;
    --jds-public-paper: var(--jds-public-paper-50);
    --jds-public-surface: var(--jds-public-white);
    --jds-public-ink: var(--jds-public-ink-900);
    --jds-public-muted: var(--jds-public-ink-600);
    --jds-public-line: var(--jds-public-line-200);
    --jds-public-accent: color-mix(in srgb, var(--jds-color-primary, #008a90) 60%, var(--jds-public-ink-900));
    --jds-public-on-accent: var(--jds-public-white);
    --jds-public-accent-soft: color-mix(in srgb, var(--jds-public-accent) 7%, var(--jds-public-surface));
    --jds-public-control-line: color-mix(in srgb, var(--jds-public-ink) 45%, var(--jds-public-surface));
    --jds-public-font: var(--jds-font-family, Abar, sans-serif);
    --jds-public-section-gap: clamp(2.5rem, 4.8vw, 4.5rem);
    --jds-public-container: 1240px;
    --jds-public-gutter: clamp(1.25rem, 3.5vw, 3rem);
    --jds-public-radius-control: var(--jds-radius-control, 12px);
    --jds-public-radius-group: var(--jds-radius-group, 18px);
    --jds-public-radius-button: var(--jds-radius-group, 18px);
    --jds-public-radius-media: 18px;
    --jds-public-purchase-bg: var(--jds-public-surface);
    --jds-public-purchase-radius: 20px;
    --jds-public-button-bg: var(--jds-public-accent);
    --jds-public-button-fg: var(--jds-public-on-accent);
    --jds-public-button-height: 52px;
    --jds-public-shadow: 0 12px 32px rgb(20 45 54 / 5%);
    /* The legacy body background is important; keep the full canvas on this page token. */
    background-color: var(--jds-color-page) !important;
}

body.jds-course-page:is(.dark-mode-shkrn,[data-jds-color-mode="dark"]) {
    --jds-public-paper: var(--jds-color-page);
    --jds-public-surface: var(--jds-color-surface);
    --jds-public-ink: var(--jds-color-text);
    --jds-public-muted: var(--jds-color-muted);
    --jds-public-line: var(--jds-color-border);
    --jds-public-accent: var(--jds-color-accent-text);
    --jds-public-on-accent: var(--jds-night-page);
    --jds-public-shadow: var(--jds-shadow-card);
}
body.jds-course-page.dark-mode-shkrn .jds-course-root { color-scheme: dark; }


body.jds-course-page .jds-course-root,
body.jds-course-page .jds-course-root * { box-sizing: border-box; }
body.jds-course-page .jds-course-root.product {
    display: block;
    float: none;
    width: auto;
    max-width: none;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: var(--jds-public-ink);
    font-family: var(--jds-public-font);
    text-align: start;
}
body.jds-course-page .jds-course-shell { padding-block: 26px 88px; background: var(--jds-public-paper); }
body.jds-course-page .jds-course-wrap {
    width: min(100% - var(--jds-public-gutter) * 2, var(--jds-public-container));
    margin-inline: auto;
}
body.jds-course-page .jds-course-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
    min-width: 0;
    margin-block-end: 36px;
    color: var(--jds-public-muted);
    font-size: .8125rem;
    line-height: 1.9;
}
body.jds-course-page .jds-course-breadcrumbs nav { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; min-width: 0; }
body.jds-course-page .jds-course-breadcrumbs a { display: inline-flex; align-items: center; min-height: 36px; color: inherit; }
body.jds-course-page .jds-course-breadcrumbs a:hover { color: var(--jds-public-accent); }
body.jds-course-page .jds-course-breadcrumbs svg { width: 14px; height: 14px; flex: 0 0 14px; }
body.jds-course-page .jds-course-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    align-items: start;
    gap: clamp(32px, 5vw, 76px);
}
body.jds-course-page .jds-course-main { min-width: 0; }
body.jds-course-page .jds-course-intro { margin-block-end: 30px; }
body.jds-course-page .jds-course-title {
    max-width: none;
    margin: 0;
    color: var(--jds-public-ink);
    font-family: var(--jds-public-font);
    font-size: clamp(2.25rem, 4.2vw, 3.5rem);
    font-weight: 800;
    line-height: 1.42;
    letter-spacing: -.035em;
    overflow-wrap: anywhere;
    text-wrap: wrap;
}
body.jds-course-page .jds-course-summary {
    max-width: 64ch;
    margin-block: 22px 26px;
    color: var(--jds-public-muted);
    font-size: 1.0625rem;
    line-height: 2.05;
    overflow-wrap: anywhere;
}
body.jds-course-page .jds-course-summary p { margin: 0; }
body.jds-course-page .jds-course-summary p + p { margin-block-start: 12px; }
body.jds-course-page .jds-course-identity { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
body.jds-course-page .jds-course-identity a { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; color: var(--jds-public-ink); font-size: .875rem; font-weight: 700; }
body.jds-course-page .jds-course-identity img { display: block; width: 40px; height: 40px; border: 1px solid var(--jds-public-line); border-radius: 50%; object-fit: cover; }
body.jds-course-page .jds-course-lead-facts { display: flex; flex-wrap: wrap; gap: 10px 20px; margin-block-start: 22px; color: var(--jds-public-muted); font-size: .8125rem; line-height: 1.9; }
body.jds-course-page .jds-course-lead-facts > span { display: inline-flex; align-items: center; gap: 7px; }
body.jds-course-page .jds-course-lead-facts svg { width: 18px; height: 18px; flex: 0 0 18px; color: var(--jds-public-accent); }

/* The native Woo gallery remains functional; the course owns only its frame. */
body.jds-course-page .jds-course-media { margin: 0; min-width: 0; border: 1px solid var(--jds-public-line); border-radius: var(--jds-public-radius-media); overflow: hidden; background: var(--jds-public-surface); }
body.jds-course-page .jds-course-root.product .jds-course-media div.images { float: none; width: 100%; margin: 0; }
body.jds-course-page .jds-course-media .woocommerce-product-gallery { max-width: 100%; }
body.jds-course-page .jds-course-media .woocommerce-product-gallery__wrapper { margin: 0; }
body.jds-course-page .jds-course-media .woocommerce-product-gallery__image img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 0; }
body.jds-course-page .jds-course-media > img,
body.jds-course-page .jds-course-media > video,
body.jds-course-page .jds-course-media > iframe { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; border: 0; object-fit: cover; }
body.jds-course-page .jds-course-media .flex-control-thumbs { display: flex; gap: 8px; padding: 12px; margin: 0; list-style: none; }
body.jds-course-page .jds-course-media .flex-control-thumbs li { float: none; width: 64px; max-width: 25%; }
body.jds-course-page .jds-course-media .flex-control-thumbs img { display: block; width: 100%; height: auto; border-radius: 6px; }
body.jds-course-page .jds-course-media figcaption { padding: 12px 18px; color: var(--jds-public-muted); font-size: .8125rem; line-height: 1.8; }

/* Section anchors share the JDS control geometry inside a defined group surface. */
body.jds-course-page .jds-course-nav { display: flex; align-items: stretch; gap: 8px; max-width: 100%; margin-block: 24px 0; padding: 8px; border: 1px solid var(--jds-public-line); border-radius: var(--jds-public-radius-group); background: var(--jds-public-surface); overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: thin; }
body.jds-course-page .jds-course-nav a { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; min-height: 44px; padding: 10px 16px; border: 1px solid var(--jds-public-line); border-radius: var(--jds-public-radius-button); background: var(--jds-public-accent-soft); color: var(--jds-public-ink); font-size: .875rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
body.jds-course-page .jds-course-nav a:hover,
body.jds-course-page .jds-course-nav a[aria-current] { color: var(--jds-public-on-accent); border-color: var(--jds-public-accent); background: var(--jds-public-accent); }
body.jds-course-page .jds-course-section { min-width: 0; margin: 0; padding-block: var(--jds-public-section-gap); border-block-end: 1px solid var(--jds-public-line); scroll-margin-top: 110px; }
body.jds-course-page .jds-course-section-heading { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px 20px; margin-block-end: 26px; }
body.jds-course-page .jds-course-section-heading h2 { margin: 0; color: var(--jds-public-ink); font-family: var(--jds-public-font); font-size: clamp(1.5rem, 2.25vw, 2rem); font-weight: 800; line-height: 1.6; letter-spacing: -.025em; }
body.jds-course-page .jds-course-section-heading > :is(p, span, a) { margin: 0; color: var(--jds-public-muted); font-size: .8125rem; line-height: 1.9; }
body.jds-course-page .jds-course-section-heading a { min-height: 44px; display: inline-flex; align-items: center; }
body.jds-course-page .jds-course-outcomes ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 30px; margin: 0; padding: 0; list-style: none; }
body.jds-course-page .jds-course-outcomes li { display: flex; align-items: flex-start; gap: 12px; color: var(--jds-public-ink); font-size: .9375rem; line-height: 2; }
body.jds-course-page .jds-course-outcomes li svg { width: 21px; height: 21px; flex: 0 0 21px; margin-block-start: 4px; color: var(--jds-public-accent); }
body.jds-course-page .jds-course-fit { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
body.jds-course-page .jds-course-fit > div + div { border-inline-start: 1px solid var(--jds-public-line); padding-inline-start: 32px; }
body.jds-course-page .jds-course-fit h3 { margin: 0 0 16px; color: var(--jds-public-ink); font-size: 1.0625rem; font-weight: 800; line-height: 1.8; }
body.jds-course-page .jds-course-fit ul { margin: 0; padding-inline-start: 20px; color: var(--jds-public-muted); font-size: .9375rem; line-height: 2; }
body.jds-course-page .jds-course-fit li + li { margin-block-start: 10px; }

/* Native text gets editorial rhythm; Elementor's own nodes are not targeted. */
body.jds-course-page .jds-course-prose { color: var(--jds-public-ink); font-size: 1rem; line-height: 2.15; overflow-wrap: anywhere; }
body.jds-course-page .jds-course-prose > :is(p, ul, ol, blockquote, figure, table) { margin-block: 0 24px; }
body.jds-course-page .jds-course-prose > :is(h2, h3, h4) { margin-block: 34px 16px; color: var(--jds-public-ink); font-weight: 800; line-height: 1.7; }
body.jds-course-page .jds-course-prose > h2 { font-size: 1.5rem; }
body.jds-course-page .jds-course-prose > h3 { font-size: 1.25rem; }
body.jds-course-page .jds-course-prose > :first-child { margin-block-start: 0; }
body.jds-course-page .jds-course-prose > :last-child { margin-block-end: 0; }
body.jds-course-page .jds-course-prose > :is(ul, ol) { padding-inline-start: 24px; }
body.jds-course-page .jds-course-prose > :is(ul, ol) > li + li { margin-block-start: 8px; }
body.jds-course-page .jds-course-prose > blockquote { padding: 4px 24px; border: 0; border-inline-start: 3px solid var(--jds-public-accent); color: var(--jds-public-muted); }
body.jds-course-page .jds-course-prose > :is(p, li) a { color: var(--jds-public-accent); text-decoration: underline; text-underline-offset: 4px; }
body.jds-course-page .jds-course-prose > figure img,
body.jds-course-page .jds-course-prose > p > img { max-width: 100%; height: auto; border-radius: var(--jds-public-radius-media); }
body.jds-course-page .jds-course-prose > table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; font-size: .875rem; }
body.jds-course-page .jds-course-prose > table :is(th, td) { padding: 12px 16px; border: 1px solid var(--jds-public-line); text-align: start; }

/* Preserve the Core curriculum renderer and permission-aware lesson actions. */
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum { padding: 0; margin: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum > header { display: none; }
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum > details { margin: 0; border: 0; border-block-start: 1px solid var(--jds-public-line); border-radius: 0; background: transparent; overflow: visible; }
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum > details:last-child { border-block-end: 1px solid var(--jds-public-line); }
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum summary { display: flex; align-items: center; gap: 16px; min-height: 76px; padding: 18px 0; color: var(--jds-public-ink); font-size: 1rem; font-weight: 800; line-height: 1.85; list-style: none; }
body.jds-course-page .jds-course-curriculum summary::-webkit-details-marker,
body.jds-course-page .jds-course-faq summary::-webkit-details-marker { display: none; }
body.jds-course-page .jds-course-curriculum summary::after,
body.jds-course-page .jds-course-faq summary::after { content: '+'; display: grid; place-items: center; width: 28px; height: 28px; flex: 0 0 28px; margin-inline-start: auto; color: var(--jds-public-accent); font-family: sans-serif; font-size: 24px; font-weight: 400; line-height: 1; }
body.jds-course-page .jds-course-curriculum details[open] > summary::after,
body.jds-course-page .jds-course-faq details[open] > summary::after { content: '−'; }
body.jds-course-page .jds-course-curriculum summary small { margin-inline-start: auto; color: var(--jds-public-muted); font-size: .8125rem; font-weight: 400; white-space: nowrap; }
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum ol { margin: 0 0 18px; padding: 0; list-style: none; }
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum li { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 16px 12px; border: 0; border-block-start: 1px solid var(--jds-public-line); background: var(--jds-public-surface); }
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum li:first-child { border-radius: 10px 10px 0 0; }
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum li:last-child { border-radius: 0 0 10px 10px; }
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum li > div { display: grid; min-width: 0; gap: 3px; }
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum li strong { color: var(--jds-public-ink); font-size: .875rem; font-weight: 700; line-height: 1.9; }
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum li small { color: var(--jds-public-muted); font-size: .75rem; line-height: 1.9; }
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum li > :is(a, span:last-child) { font-size: .75rem; line-height: 1.9; }
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum li > a { display: inline-flex; align-items: center; min-height: 44px; color: var(--jds-public-accent); font-weight: 700; }
body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum li > span:last-child { color: var(--jds-public-muted); }
body.jds-course-page .jds-course-curriculum .jaygah-lesson-state { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 8px; background: var(--jds-public-accent-soft); color: var(--jds-public-accent); }

body.jds-course-page .jds-course-teachers { display: grid; gap: 30px; }
body.jds-course-page .jds-course-teacher { display: grid; grid-template-columns: 112px minmax(0, 1fr); align-items: start; gap: 26px; }
body.jds-course-page .jds-course-teacher + .jds-course-teacher { padding-block-start: 30px; border-block-start: 1px solid var(--jds-public-line); }
body.jds-course-page .jds-course-teacher-image { display: block; width: 112px; height: 132px; border: 1px solid var(--jds-public-line); border-radius: 12px; object-fit: cover; background: var(--jds-public-surface); }
body.jds-course-page .jds-course-teacher h3 { margin: 0 0 10px; color: var(--jds-public-ink); font-size: 1.25rem; line-height: 1.7; font-weight: 800; }
body.jds-course-page .jds-course-teacher h3 a { color: inherit; }
body.jds-course-page .jds-course-teacher p { margin: 0 0 14px; color: var(--jds-public-muted); font-size: .9375rem; line-height: 2; }
body.jds-course-page .jds-course-teacher ul { display: flex; flex-wrap: wrap; gap: 8px 18px; margin: 0; padding: 0; list-style: none; color: var(--jds-public-muted); font-size: .8125rem; line-height: 1.9; }
body.jds-course-page .jds-course-teacher li { display: inline-flex; align-items: center; gap: 7px; }
body.jds-course-page .jds-course-teacher li svg { width: 17px; height: 17px; color: var(--jds-public-accent); }
body.jds-course-page .jds-course-faq details { margin: 0; border: 0; border-block-start: 1px solid var(--jds-public-line); border-radius: 0; background: transparent; }
body.jds-course-page .jds-course-faq details:last-child { border-block-end: 1px solid var(--jds-public-line); }
body.jds-course-page .jds-course-faq summary { display: flex; align-items: center; gap: 18px; min-height: 72px; padding-block: 18px; color: var(--jds-public-ink); font-size: .9375rem; font-weight: 700; line-height: 1.9; cursor: pointer; list-style: none; }
body.jds-course-page .jds-course-faq p { max-width: 68ch; margin: 0; padding-block: 0 24px; padding-inline-end: 42px; color: var(--jds-public-muted); font-size: .9375rem; line-height: 2.1; }

/* Only one purchasing form. All compact actions scroll to this surface. */
body.jds-course-page .jds-course-purchase { position: sticky; top: 104px; min-width: 0; scroll-margin-top: 110px; }
body.jds-course-page.admin-bar .jds-course-purchase { top: 136px; }
body.jds-course-page .jds-course-purchase-inner { padding: 28px; border: 1px solid var(--jds-public-line); border-radius: var(--jds-public-purchase-radius); background: var(--jds-public-purchase-bg); box-shadow: var(--jds-public-shadow); }
body.jds-course-page .jds-course-purchase-label { display: block; margin-block-end: 16px; color: var(--jds-public-muted); font-size: .875rem; font-weight: 400; line-height: 1.8; }
body.jds-course-page .jds-course-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 5px 10px; margin: 0 0 22px; color: var(--jds-public-ink); font-size: 2rem; font-weight: 800; line-height: 1.65; letter-spacing: -.025em; }
body.jds-course-page .jds-course-price del { width: 100%; color: var(--jds-public-muted); font-size: .9375rem; font-weight: 400; opacity: 1; }
body.jds-course-page .jds-course-price ins { padding: 0; background: transparent; color: inherit; text-decoration: none; }
body.jds-course-page .jds-course-price .woocommerce-Price-currencySymbol { font-size: .75rem; font-weight: 400; letter-spacing: 0; }
body.jds-course-page .jds-course-status { margin-block: 0 18px; color: var(--jds-public-muted); font-size: .8125rem; line-height: 1.9; }
body.jds-course-page .jds-course-status.is-enrolled { padding: 10px 12px; border-radius: var(--jds-public-radius-control); background: var(--jds-public-accent-soft); color: var(--jds-public-accent); }
body.jds-course-page .jds-public-button,
body.jds-course-page .jds-course-purchase form.cart .single_add_to_cart_button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: var(--jds-public-button-height);
    max-width: 100%;
    padding: 12px 22px;
    border: 1px solid transparent;
    border-radius: var(--jds-public-radius-button);
    background: var(--jds-public-button-bg);
    color: var(--jds-public-button-fg);
    box-shadow: none;
    font-family: var(--jds-public-font);
    font-size: .9375rem;
    font-weight: 800;
    line-height: 1.8;
    text-align: center;
    text-decoration: none;
    overflow-wrap: anywhere;
    cursor: pointer;
    transition: background-color var(--jds-duration-fast, 160ms), box-shadow var(--jds-duration-fast, 160ms);
}
body.jds-course-page .jds-public-button:hover,
body.jds-course-page .jds-course-purchase form.cart .single_add_to_cart_button:hover { background: color-mix(in srgb, var(--jds-public-button-bg) 88%, var(--jds-public-ink)); color: var(--jds-public-button-fg); box-shadow: 0 3px 10px rgb(20 45 54 / 10%); }
body.jds-course-page .jds-public-button--secondary { background: transparent; color: var(--jds-public-accent); border-color: var(--jds-public-line); }
body.jds-course-page .jds-public-button--secondary:hover { background: var(--jds-public-accent-soft); color: var(--jds-public-accent); box-shadow: none; }
body.jds-course-page .jds-public-button svg { width: 20px; height: 20px; flex: 0 0 20px; }
body.jds-course-page .jds-course-purchase :is(.jds-public-button, .single_add_to_cart_button) { width: 100%; }
body.jds-course-page .jds-course-purchase form.cart { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 0; padding: 0; border: 0; }
body.jds-course-page .jds-course-purchase form.cart .button:disabled,
body.jds-course-page .jds-course-purchase form.cart .button.disabled { opacity: .55; cursor: not-allowed; box-shadow: none; }
body.jds-course-page .jds-course-purchase form.variations_form { display: block; }
body.jds-course-page .jds-course-purchase .variations { width: 100%; margin: 0 0 18px; border: 0; border-collapse: collapse; }
body.jds-course-page .jds-course-purchase .variations :is(th, td) { display: block; padding: 0; border: 0; text-align: start; }
body.jds-course-page .jds-course-purchase .variations label { display: block; margin-block: 12px 8px; color: var(--jds-public-ink); font-size: .875rem; font-weight: 700; }
body.jds-course-page .jds-course-purchase .variations select { width: 100%; min-height: 48px; padding: 8px 12px; border: 1px solid var(--jds-public-control-line); border-radius: var(--jds-public-radius-control); background-color: var(--jds-public-surface); color: var(--jds-public-ink); font: inherit; font-size: 1rem; }
body.jds-course-page .jds-course-purchase .reset_variations { display: inline-flex; align-items: center; min-height: 44px; color: var(--jds-public-accent); font-size: .8125rem; }
body.jds-course-page .jds-course-purchase .woocommerce-variation-price { margin-block-end: 12px; color: var(--jds-public-ink); font-size: 1.25rem; font-weight: 700; }
body.jds-course-page .jds-course-purchase .woocommerce-variation-add-to-cart { display: flex; flex-wrap: wrap; gap: 12px; }
body.jds-course-page .jds-course-purchase .woocommerce-variation-add-to-cart > .button { flex: 1 1 150px; }
/* Woo still submits quantity=1. Keep the hidden input wrapper out of form layout,
 * including after Woo's variation script changes its inline display value. */
body.jds-course-page .jds-course-purchase .quantity:has(> .jds-course-quantity-one) { position: absolute; width: 0; height: 0; padding: 0; margin: 0; overflow: hidden; }
body.jds-course-page .jds-course-purchase .stock { color: var(--jds-public-muted); font-size: .8125rem; }
body.jds-course-page .jds-course-purchase .out-of-stock { color: var(--jds-color-danger-text, #b42338); }
body.jds-course-page .jds-course-purchase-facts { margin-block-start: 24px; padding-block-start: 20px; border-block-start: 1px solid var(--jds-public-line); }
body.jds-course-page .jds-course-purchase-facts dl { margin: 0; }
body.jds-course-page .jds-course-purchase-facts dl > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); align-items: start; gap: 12px; padding-block: 8px; font-size: .8125rem; line-height: 1.9; }
body.jds-course-page .jds-course-purchase-facts dt { display: inline-flex; align-items: flex-start; gap: 8px; color: var(--jds-public-muted); }
body.jds-course-page .jds-course-purchase-facts dd { margin: 0; color: var(--jds-public-ink); font-weight: 700; text-align: end; overflow-wrap: anywhere; }
body.jds-course-page .jds-course-purchase-facts svg { width: 18px; height: 18px; flex: 0 0 18px; margin-block-start: 3px; color: var(--jds-public-accent); }
body.jds-course-page .jds-course-purchase-note { margin-block: 18px 0; color: var(--jds-public-muted); font-size: .75rem; line-height: 1.9; }

body.jds-course-page .jds-course-finish { padding-block: var(--jds-public-section-gap) 0; scroll-margin-top: 110px; }
body.jds-course-page .jds-course-finish h2 { margin: 0; max-width: 22ch; color: var(--jds-public-ink); font-size: clamp(1.75rem, 3vw, 2.5rem); font-weight: 800; line-height: 1.6; letter-spacing: -.025em; }
body.jds-course-page .jds-course-finish p { max-width: 60ch; margin-block: 16px 24px; color: var(--jds-public-muted); line-height: 2; }
body.jds-course-page .jds-course-mobile-action { display: none; }
body.jds-course-page .jds-course-mobile-action.is-purchase-visible { visibility: hidden; pointer-events: none; }

/* Review fields are native WooCommerce, retaining their form names and handlers. */
body.jds-course-page .jds-course-reviews #reviews { color: var(--jds-public-ink); }
body.jds-course-page .jds-course-reviews #reviews :is(h2, h3) { color: var(--jds-public-ink); font-size: 1.25rem; line-height: 1.8; }
body.jds-course-page .jds-course-reviews #reviews ol.commentlist { margin: 0; padding: 0; list-style: none; }
body.jds-course-page .jds-course-reviews #reviews ol.commentlist li { padding-block: 22px; border-block-end: 1px solid var(--jds-public-line); }
body.jds-course-page .jds-course-reviews #reviews ol.commentlist li img.avatar { width: 40px; height: 40px; padding: 0; border: 0; border-radius: 50%; }
body.jds-course-page .jds-course-reviews #reviews ol.commentlist li .comment-text { border: 0; margin-inline: 56px 0; padding: 0; border-radius: 0; color: var(--jds-public-ink); }
body.jds-course-page .jds-course-reviews .meta { color: var(--jds-public-muted); font-size: .8125rem; }
body.jds-course-page .jds-course-reviews .description { line-height: 2.05; font-size: .9375rem; }
body.jds-course-page .jds-course-reviews #respond { margin-block-start: 30px; }
body.jds-course-page .jds-course-reviews #respond label { display: inline-block; margin-block-end: 8px; color: var(--jds-public-ink); }
body.jds-course-page .jds-course-reviews #respond :is(input[type=text], input[type=email], textarea) { width: 100%; max-width: 100%; min-height: 48px; padding: 12px; border: 1px solid var(--jds-public-control-line); border-radius: var(--jds-public-radius-control); background: var(--jds-public-surface); color: var(--jds-public-ink); font: inherit; font-size: 1rem; }
body.jds-course-page .jds-course-reviews #respond textarea { min-height: 140px; resize: vertical; }
/* Bridge native WooCommerce's ID selectors to the shared Clasor action tokens. */
body.jds-course-page .jds-course-root #reviews #respond .jaygah-discussion-submit { display: inline-flex; align-items: center; justify-content: center; min-height: var(--jds-control-height,48px); max-width: 100%; border: 1px solid transparent; border-radius: var(--jds-radius-control); background: var(--jds-action-background); color: var(--jds-action-text); font: var(--jds-weight-label,700) var(--jds-type-small,.875rem)/1.6 var(--jds-public-font); cursor: pointer; transition: box-shadow var(--jds-duration-fast) var(--jds-ease); }
body.jds-course-page .jds-course-root #reviews #respond .jaygah-discussion-submit:not(:disabled):hover { background: var(--jds-action-background); color: var(--jds-action-text); box-shadow: var(--jds-shadow-sm); }
body.jds-course-page .jds-course-root #reviews #respond .jaygah-discussion-submit:focus-visible { outline: var(--jds-focus-width,2px) solid var(--jds-focus-color); outline-offset: var(--jds-focus-offset,3px); }

/* Baseline geometry for owned dynamic widgets in an authored description only. */
body.jds-course-page .jds-course-prose .jaygah-course-piece { min-width: 0; overflow-wrap: anywhere; font-family: var(--jds-public-font); line-height: 2; }
body.jds-course-page .jds-course-prose .jaygah-course-piece img { max-width: 100%; height: auto; }
body.jds-course-page .jds-course-prose .jaygah-course-piece .jaygah-piece-grid { display: grid; grid-template-columns: repeat(var(--piece-columns, 3), minmax(0, 1fr)); gap: var(--jds-component-gap, 20px); }
body.jds-course-page .jds-course-prose .jaygah-course-piece summary { display: flex; align-items: center; min-height: 48px; cursor: pointer; }
body.jds-course-page .jds-course-prose .jaygah-course-piece .jaygah-piece-cta { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 22px; border-radius: var(--jds-public-radius-button); background: var(--jds-public-button-bg); color: var(--jds-public-button-fg); font-weight: 700; }
body.jds-course-page .jds-course-prose .jaygah-course-piece .jaygah-piece-price { display: block; margin-block: 18px; font-size: 1.5rem; font-weight: 800; }

body.jds-course-page .jds-course-root :is(a, button, input, select, textarea, summary):focus-visible { outline: 2px solid var(--jds-public-accent); outline-offset: 4px; }
body.jds-course-page .jds-course-root :is(a, button, summary) { -webkit-tap-highlight-color: transparent; }
body.jds-course-page .jds-course-root :is(.woocommerce-message, .woocommerce-info, .woocommerce-error) { max-width: 100%; margin-block-end: 24px; line-height: 1.9; }
body.jds-course-page .jds-course-root .woocommerce-message a.button { min-height: 44px; display: inline-flex; align-items: center; }

@media (max-width: 1000px) {
    body.jds-course-page .jds-course-wrap { width: min(100% - var(--jds-public-gutter) * 2, 760px); }
    body.jds-course-page .jds-course-layout { grid-template-columns: minmax(0, 1fr); gap: 0; }
    body.jds-course-page .jds-course-main { display: contents; }
    body.jds-course-page .jds-course-main > * { order: 5; }
    body.jds-course-page .jds-course-main > .jds-course-intro { order: 1; }
    body.jds-course-page .jds-course-main > .jds-course-media { order: 2; }
    body.jds-course-page .jds-course-main > .jds-course-nav { order: 4; }
    body.jds-course-page .jds-course-main > .jds-course-finish { order: 6; }
    body.jds-course-page .jds-course-layout > .jds-course-purchase { position: static; order: 3; margin-block-start: 24px; }
    body.jds-course-page .jds-course-purchase-inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 0 28px; padding: 28px; }
    body.jds-course-page .jds-course-purchase-inner > * { grid-column: 1; }
    body.jds-course-page .jds-course-purchase-inner > .jds-course-purchase-facts { grid-column: 2; grid-row: 1 / span 8; margin: 0; padding-block: 0; padding-inline-start: 28px; border: 0; border-inline-start: 1px solid var(--jds-public-line); }
    body.jds-course-page .jds-course-purchase-label { margin-block-end: 10px; }
    body.jds-course-page .jds-course-price { font-size: 1.875rem; margin-block-end: 18px; }
    body.jds-course-page .jds-course-shell { padding-block-end: 120px; }
    body.jds-course-page .jds-course-mobile-action { position: fixed; z-index: 60; inset-inline: 0; bottom: 0; display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 80px; padding: 12px max(20px, env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left)); border-block-start: 1px solid var(--jds-public-line); background: var(--jds-public-surface); box-shadow: 0 -4px 20px rgb(20 45 54 / 5%); }
    body.jds-course-page .jds-course-mobile-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 3px 6px; min-width: 0; color: var(--jds-public-ink); font-size: 1.125rem; font-weight: 800; line-height: 1.7; }
    body.jds-course-page .jds-course-mobile-price del { display: none; }
    body.jds-course-page .jds-course-mobile-price ins { background: transparent; text-decoration: none; }
    body.jds-course-page .jds-course-mobile-price .woocommerce-Price-currencySymbol { font-size: .6875rem; font-weight: 400; }
    body.jds-course-page .jds-course-mobile-action .jds-public-button { flex: 0 1 190px; min-height: 48px; font-size: .875rem; }
}

@media (max-width: 600px) {
    body.jds-course-page { --jds-public-section-gap: 36px; }
    body.jds-course-page .jds-course-shell { padding-block-start: 14px; }
    body.jds-course-page .jds-course-breadcrumbs { margin-block-end: 20px; gap: 4px 8px; font-size: .75rem; }
    body.jds-course-page .jds-course-breadcrumbs > span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    body.jds-course-page .jds-course-title { max-width: none; font-size: clamp(1.875rem, 8vw, 2.5rem); line-height: 1.55; letter-spacing: -.025em; }
    body.jds-course-page .jds-course-summary { margin-block: 16px 20px; font-size: .9375rem; line-height: 2.1; }
    body.jds-course-page .jds-course-intro { margin-block-end: 22px; }
    body.jds-course-page .jds-course-identity { gap: 8px 16px; }
    body.jds-course-page .jds-course-identity a { font-size: .8125rem; }
    body.jds-course-page .jds-course-lead-facts { gap: 8px 16px; font-size: .75rem; margin-block-start: 16px; }
    body.jds-course-page .jds-course-media { border-radius: 12px; }
    body.jds-course-page .jds-course-purchase-inner { display: block; padding: 22px; border-radius: 16px; }
    body.jds-course-page .jds-course-purchase-inner > .jds-course-purchase-facts { margin-block-start: 20px; padding-block-start: 16px; padding-inline-start: 0; border: 0; border-block-start: 1px solid var(--jds-public-line); }
    body.jds-course-page .jds-course-purchase-facts dl > div { padding-block: 6px; }
    body.jds-course-page .jds-course-nav { gap: 8px; margin-block-start: 16px; }
    body.jds-course-page .jds-course-nav a { min-height: 44px; padding-inline: 14px; font-size: .8125rem; }
    body.jds-course-page .jds-course-section-heading { gap: 6px 16px; margin-block-end: 20px; }
    body.jds-course-page .jds-course-section-heading h2 { font-size: 1.5rem; }
    body.jds-course-page .jds-course-outcomes ul { grid-template-columns: minmax(0, 1fr); gap: 16px; }
    body.jds-course-page .jds-course-outcomes li { font-size: .9375rem; }
    body.jds-course-page .jds-course-fit { grid-template-columns: minmax(0, 1fr); gap: 26px; }
    body.jds-course-page .jds-course-fit > div + div { border: 0; border-block-start: 1px solid var(--jds-public-line); padding: 24px 0 0; }
    body.jds-course-page .jds-course-prose { font-size: .9375rem; line-height: 2.15; }
    body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum summary { min-height: 70px; gap: 8px; font-size: .9375rem; }
    body.jds-course-page .jds-course-curriculum summary small { font-size: .75rem; }
    body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum li { grid-template-columns: 28px minmax(0, 1fr); gap: 8px 10px; padding: 14px 10px; }
    body.jds-course-page .jds-course-curriculum .jaygah-course-curriculum li > :is(a, span:last-child) { grid-column: 2; justify-self: start; }
    body.jds-course-page .jds-course-curriculum .jaygah-lesson-state { width: 28px; height: 28px; }
    body.jds-course-page .jds-course-teacher { grid-template-columns: 72px minmax(0, 1fr); gap: 16px; }
    body.jds-course-page .jds-course-teacher-image { width: 72px; height: 88px; border-radius: 10px; }
    body.jds-course-page .jds-course-teacher h3 { font-size: 1.125rem; margin-block-end: 8px; }
    body.jds-course-page .jds-course-teacher p { font-size: .875rem; }
    body.jds-course-page .jds-course-teacher ul { display: grid; font-size: .75rem; }
    body.jds-course-page .jds-course-faq summary { min-height: 68px; gap: 12px; font-size: .875rem; }
    body.jds-course-page .jds-course-faq p { padding-inline-end: 0; font-size: .875rem; }
    body.jds-course-page .jds-course-finish h2 { font-size: 1.875rem; }
    body.jds-course-page .jds-course-finish .jds-public-button { width: 100%; }
    body.jds-course-page .jds-course-prose .jaygah-course-piece .jaygah-piece-grid { grid-template-columns: minmax(0, 1fr); }
}

@media (prefers-reduced-motion: reduce) {
    body.jds-course-page .jds-course-root *,
    body.jds-course-page .jds-course-root *::before,
    body.jds-course-page .jds-course-root *::after { animation-duration: .01ms; animation-iteration-count: 1; transition-duration: .01ms; scroll-behavior: auto; }
}

/* Gemini course presentation. Keep every new token and rule inside the article:
 * approved header/footer and theme-wide settings continue to use their baseline.
 * Native commerce, authored Elementor content and permission logic own behavior.
 * Stored JDS color/radius settings win; Gemini values are fallback values only. */
body.jds-course-page .jds-course-root {
    --jds-public-paper: var(--jds-color-page);
    --jds-public-surface: #fff;
    --jds-public-surface-subtle: #f1f5f9;
    --jds-public-ink: #0f172a;
    --jds-public-muted: #475569;
    --jds-public-line: #e2e8f0;
    --jds-public-accent: var(--jds-color-primary, #1d4ed8);
    --jds-public-accent-hover: color-mix(in srgb, var(--jds-public-button-bg) 88%, #000);
    --jds-public-accent-soft: color-mix(in srgb, var(--jds-public-accent) 12%, var(--jds-public-surface));
    --jds-public-accent-text: color-mix(in srgb, var(--jds-public-accent) 20%, var(--jds-public-ink));
    --jds-public-on-accent: var(--jds-action-text, #fff);
    --jds-public-amber: #b45309;
    --jds-public-success: #0f766e;
    --jds-public-font: var(--jds-font-family, 'Abar', sans-serif);
    --jds-public-container: 1280px;
    --jds-public-gutter: clamp(16px, 3vw, 32px);
    --jds-public-section-gap: 64px;
    --jds-public-radius-card: var(--jds-radius-card, 20px);
    --jds-public-radius-group: var(--jds-radius-group, 14px);
    --jds-public-radius-button: var(--jds-radius-control, 8px);
    --jds-public-radius-control: var(--jds-radius-control, 8px);
    --jds-public-radius-media: var(--jds-radius-media, 20px);
    --jds-public-purchase-radius: var(--jds-public-radius-card);
    --jds-public-purchase-bg: var(--jds-public-surface);
    --jds-public-button-bg: var(--jds-action-start, var(--jds-public-accent));
    --jds-public-button-fg: var(--jds-action-text, #fff);
    --jds-public-shadow: none;
    font-feature-settings: "ss01" on, "tnum" on;
}
body.jds-course-page:is(.dark-mode-shkrn,[data-jds-color-mode="dark"]) .jds-course-root {
    --jds-public-paper: var(--jds-night-page);
    --jds-public-surface: var(--jds-night-surface);
    --jds-public-surface-subtle: var(--jds-night-elevated);
    --jds-public-ink: var(--jds-night-text);
    --jds-public-muted: var(--jds-night-muted);
    --jds-public-line: var(--jds-night-divider);
    --jds-public-accent: var(--jds-dark-primary);
    --jds-public-accent-text: var(--jds-dark-primary);
    --jds-public-amber: var(--jds-dark-warning);
    --jds-public-success: var(--jds-dark-success);
}
body.jds-course-page .jds-course-root .jds-course-shell { padding-block: 24px 80px; }
body.jds-course-page .jds-course-root .jds-course-breadcrumbs { margin-block-end: 24px; font-size: .875rem; }
body.jds-course-page .jds-course-root .jds-course-layout { grid-template-columns: minmax(0, 1fr) 390px; gap: clamp(28px, 4vw, 48px); }
body.jds-course-page .jds-course-root .jds-course-main { display: block; min-width: 0; }
body.jds-course-page .jds-course-root .jds-course-intro { margin-block-end: 28px; }
body.jds-course-page .jds-course-root .jds-course-title { font-size: clamp(2rem, 3.2vw, 3.25rem); font-weight: 900; line-height: 1.4; letter-spacing: -.02em; }
body.jds-course-page .jds-course-root .jds-course-summary { width: 100%; max-width: none; margin-block: 16px 24px; font-size: 1rem; line-height: 2; }
body.jds-course-page .jds-course-root .jds-course-summary :is(.woocommerce-product-details__short-description, p) { width: 100%; max-width: none; }
body.jds-course-page .jds-course-root .jds-course-proof { display: flex; align-items: center; flex-wrap: wrap; gap: 16px 20px; margin-block-start: 20px; padding: 16px 20px; border-radius: var(--jds-public-radius-group); background: var(--jds-public-surface); }
body.jds-course-page .jds-course-root .jds-course-identity { gap: 16px 20px; }
body.jds-course-page .jds-course-root .jds-course-identity:empty,
body.jds-course-page .jds-course-root .jds-course-lead-facts:empty { display: none; }
body.jds-course-page .jds-course-root .jds-course-byline > span { display: grid; gap: 2px; }
body.jds-course-page .jds-course-root .jds-course-byline strong { font-size: .875rem; font-weight: 700; }
body.jds-course-page .jds-course-root .jds-course-byline small { color: var(--jds-public-muted); font-size: .875rem; font-weight: 400; }
body.jds-course-page .jds-course-root .jds-course-identity img { width: 44px; height: 44px; border: 0; }
body.jds-course-page .jds-course-root .jds-course-rating { color: var(--jds-public-amber); font-size: .875rem; }
body.jds-course-page .jds-course-root .jds-course-rating svg { flex: 0 0 18px; }
body.jds-course-page .jds-course-root .jds-course-lead-facts { gap: 12px 16px; margin: 0; font-size: .875rem; }
body.jds-course-page .jds-course-root .jds-course-media { position: relative; border: 0; background: var(--jds-public-surface-subtle); }
body.jds-course-page .jds-course-root .jds-course-media .woocommerce-product-gallery__image img { aspect-ratio: 16 / 9; }
body.jds-course-page .jds-course-root .jds-course-media .woocommerce-product-gallery__trigger { z-index: 3; }
body.jds-course-page .jds-course-root .jds-course-preview-link { position: absolute; z-index: 2; inset-inline: 50%; bottom: 24px; translate: 50% 0; display: inline-flex; flex-direction: column; align-items: center; gap: 10px; width: max-content; max-width: calc(100% - 40px); padding: 10px 18px; border-radius: var(--jds-public-radius-group); background: rgb(9 13 22 / 88%); color: #fff; font-size: .875rem; font-weight: 700; text-align: center; text-decoration: none; }
body.jds-course-page .jds-course-root .jds-course-play { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: var(--jds-public-button-bg); color: var(--jds-public-button-fg); transition: transform 150ms ease; }
body.jds-course-page .jds-course-root .jds-course-play svg { width: 26px; height: 26px; fill: currentColor; }
body.jds-course-page .jds-course-root .jds-course-preview-link:hover .jds-course-play { transform: scale(1.08); }
body.jds-course-page .jds-course-root .jds-course-purchase { float: none; width: auto; margin: 0; top: 104px; }
body.jds-course-page.admin-bar .jds-course-root .jds-course-purchase { top: 136px; }
body.jds-course-page .jds-course-root .jds-course-purchase-inner { display: block; padding: 28px; border: 0; border-radius: var(--jds-public-radius-card); box-shadow: none; }
body.jds-course-page .jds-course-root .jds-course-purchase-label { margin-block: 0 16px; font-size: .875rem; font-weight: 600; }
body.jds-course-page .jds-course-root .jds-course-price { gap: 8px 12px; margin-block-end: 24px; font-size: clamp(1.875rem, 2.5vw, 2.25rem); font-weight: 900; line-height: 1.5; }
body.jds-course-page .jds-course-root .jds-course-price del { width: auto; font-size: .875rem; text-decoration-color: #be123c; }
body.jds-course-page .jds-course-root .jds-course-price ins { order: -1; }
body.jds-course-page .jds-course-root .jds-course-price .woocommerce-Price-currencySymbol { font-size: .875rem; }
/* Keep WooCommerce's values, decimals, discount markup and other currencies.
 * Toman follows the number in RTL reading order, including variation updates. */
body.jds-course-page .jds-course-root[data-course-currency="IRT"] :is(.jds-course-price, .woocommerce-variation-price, .jds-course-mobile-price) :is(.woocommerce-Price-amount, .woocommerce-Price-amount bdi) { display: inline-flex; align-items: baseline; gap: .25em; direction: rtl; unicode-bidi: isolate; white-space: nowrap; }
body.jds-course-page .jds-course-root[data-course-currency="IRT"] :is(.jds-course-price, .woocommerce-variation-price, .jds-course-mobile-price) .woocommerce-Price-currencySymbol { order: 1; letter-spacing: 0; }
body.jds-course-page .jds-course-root .jds-course-purchase-facts { margin-block-start: 24px; padding: 18px 20px; border: 0; border-radius: var(--jds-public-radius-group); background: var(--jds-public-surface-subtle); }
body.jds-course-page .jds-course-root .jds-course-purchase-facts dl > div { grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); padding-block: 6px; font-size: .875rem; }
body.jds-course-page .jds-course-root .jds-course-purchase-facts dt { gap: 7px; }
body.jds-course-page .jds-course-root .jds-course-purchase-facts svg { color: var(--jds-public-muted); }
body.jds-course-page .jds-course-root .jds-course-status { padding: 16px; border-radius: var(--jds-public-radius-control); background: var(--jds-public-accent-soft); color: var(--jds-public-ink); font-size: .875rem; }
body.jds-course-page .jds-course-root .jds-course-status p { margin: 8px 0 0; }
body.jds-course-page .jds-course-root .jds-public-button,
body.jds-course-page .jds-course-root .jds-course-purchase form.cart .single_add_to_cart_button { border: 0; border-radius: var(--jds-public-radius-control); background: var(--jds-public-button-bg); color: var(--jds-public-button-fg); font-size: 1rem; box-shadow: none; }
body.jds-course-page .jds-course-root .jds-public-button:hover,
body.jds-course-page .jds-course-root .jds-course-purchase form.cart .single_add_to_cart_button:hover { background: var(--jds-public-accent-hover); box-shadow: none; color: var(--jds-public-button-fg); }
body.jds-course-page .jds-course-root .jds-course-purchase .variations select { border-color: var(--jds-public-line); background-color: var(--jds-public-surface-subtle); }
body.jds-course-page .jds-course-root .jds-course-body { display: flex; flex-direction: column; gap: 64px; padding-block-start: 36px; min-width: 0; }
body.jds-course-page .jds-course-root .jds-course-nav { position: sticky; top: 84px; z-index: 12; flex-wrap: nowrap; gap: 8px; margin: 0 0 -24px; padding: 10px 0; border: 0; border-radius: 0; background: var(--jds-public-paper); scrollbar-width: thin; }
body.jds-course-page.admin-bar .jds-course-root .jds-course-nav { top: 116px; }
body.jds-course-page .jds-course-root .jds-course-nav a { padding: 8px 16px; border: 0; border-radius: var(--jds-public-radius-control); background: var(--jds-public-surface); color: var(--jds-public-muted); font-size: .875rem; font-weight: 600; }
body.jds-course-page .jds-course-root .jds-course-nav a:hover,
body.jds-course-page .jds-course-root .jds-course-nav a[aria-current] { background: var(--jds-public-button-bg); color: var(--jds-public-button-fg); }
body.jds-course-page .jds-course-root .jds-course-section { padding-block: 0; border: 0; scroll-margin-top: 170px; }
/* Native discussion/reply hashes target inner nodes rather than the section wrapper. */
body.jds-course-page .jds-course-root :is(#reviews, #respond, [id^="comment-"]) { scroll-margin-top: 170px; }
body.jds-course-page.admin-bar .jds-course-root :is(.jds-course-section, #reviews, #respond, [id^="comment-"]) { scroll-margin-top: 202px; }
body.jds-course-page .jds-course-root .jds-course-section-heading { margin-block-end: 24px; }
body.jds-course-page .jds-course-root .jds-course-section-heading h2,
body.jds-course-page .jds-course-root .jds-course-fit h2 { font-size: clamp(1.375rem, 2.5vw, 2rem); font-weight: 800; line-height: 1.4; letter-spacing: -.02em; }
body.jds-course-page .jds-course-root .jds-course-section-heading > :is(p, span, a) { font-size: .875rem; }
body.jds-course-page .jds-course-root .jds-course-toggle-all { min-height: 44px; padding: 8px 12px; border: 0; border-radius: var(--jds-public-radius-control); background: var(--jds-public-accent-soft); color: var(--jds-public-accent-text); font: inherit; font-size: .875rem; font-weight: 700; cursor: pointer; }
body.jds-course-page .jds-course-root .jds-course-toggle-all[hidden] { display: none; }
body.jds-course-page .jds-course-root .jds-course-outcomes ul { gap: 24px 36px; padding: 28px 32px; border-radius: var(--jds-public-radius-card); background: var(--jds-public-surface); }
body.jds-course-page .jds-course-root .jds-course-outcomes li { font-size: 1rem; line-height: 2; }
body.jds-course-page .jds-course-root .jds-course-outcomes li svg { color: var(--jds-public-success); }
body.jds-course-page .jds-course-root #course-description { padding: clamp(24px, 4vw, 48px); border-radius: var(--jds-public-radius-card); background: var(--jds-public-surface); }
body.jds-course-page .jds-course-root .jds-course-prose { color: var(--jds-public-muted); font-size: 1rem; line-height: 2; }
body.jds-course-page .jds-course-root .jds-course-prose > p { max-width: 58ch; }
body.jds-course-page .jds-course-root .jds-course-prose > :is(h2, h3, h4) { color: var(--jds-public-ink); }
body.jds-course-page .jds-course-root .jds-course-curriculum .jaygah-course-curriculum { padding: 16px 24px; border: 0 !important; border-radius: var(--jds-public-radius-card) !important; background: var(--jds-public-surface) !important; box-shadow: none !important; color: var(--jds-public-ink) !important; }
body.jds-course-page .jds-course-root .jds-course-curriculum .jaygah-course-curriculum > details { border: 0; border-radius: var(--jds-public-radius-control); }
body.jds-course-page .jds-course-root .jds-course-curriculum .jaygah-course-curriculum > details:last-child { border: 0; }
body.jds-course-page .jds-course-root .jds-course-curriculum .jaygah-course-curriculum summary { min-height: 72px; padding: 16px 12px; font-size: 1.25rem; }
body.jds-course-page .jds-course-root .jds-course-curriculum .jaygah-course-curriculum summary:hover { border-radius: var(--jds-public-radius-control); background: var(--jds-public-surface-subtle); }
body.jds-course-page .jds-course-root .jds-course-curriculum summary small { font-size: .875rem; }
body.jds-course-page .jds-course-root .jds-course-curriculum .jaygah-course-curriculum li { padding: 14px 12px; border-radius: 0; background: transparent; }
body.jds-course-page .jds-course-root .jds-course-curriculum .jaygah-course-curriculum li strong { font-size: .875rem; }
body.jds-course-page .jds-course-root .jds-course-curriculum .jaygah-course-curriculum li :is(small, a, span:last-child) { font-size: .875rem; }
body.jds-course-page .jds-course-root .jds-course-curriculum .jaygah-lesson-state { border: 0 !important; background: var(--jds-public-surface-subtle) !important; color: var(--jds-public-muted) !important; }
body.jds-course-page .jds-course-root .jds-course-curriculum .is-completed .jaygah-lesson-state { color: var(--jds-public-success) !important; }
body.jds-course-page .jds-course-root .jds-course-fit { gap: 24px; }
body.jds-course-page .jds-course-root .jds-course-fit > div { padding: 32px; border: 0; border-radius: var(--jds-public-radius-card); background: var(--jds-public-surface); }
body.jds-course-page .jds-course-root .jds-course-fit > div + div { padding-inline-start: 32px; border: 0; }
body.jds-course-page .jds-course-root .jds-course-fit h2 { margin: 0 0 20px; }
body.jds-course-page .jds-course-root .jds-course-fit ul { padding: 0; list-style: none; font-size: 1rem; }
body.jds-course-page .jds-course-root .jds-course-fit li { display: flex; align-items: flex-start; gap: 10px; }
body.jds-course-page .jds-course-root .jds-course-fit li svg { flex: 0 0 20px; margin-top: 6px; color: var(--jds-public-success); }
body.jds-course-page .jds-course-root .jds-course-teachers { gap: 24px; }
body.jds-course-page .jds-course-root .jds-course-teachers > .jds-course-section-heading { margin: 0; }
body.jds-course-page .jds-course-root .jds-course-teacher { grid-template-columns: 160px minmax(0, 1fr); gap: 32px; padding: 0; border: 0; border-radius: 0; background: transparent; }
body.jds-course-page .jds-course-root .jds-course-teacher + .jds-course-teacher { padding-block-start: 24px; border-block-start: 1px solid var(--jds-public-line); }
body.jds-course-page .jds-course-root .jds-course-teacher>div:last-child { min-width: 0; }
body.jds-course-page .jds-course-root .jds-course-teacher-image { width: 160px; height: 180px; border: 0; border-radius: var(--jds-public-radius-group); overflow: hidden; background: var(--jds-public-surface-subtle); }
body.jds-course-page .jds-course-root .jds-course-teacher-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
body.jds-course-page .jds-course-root .jds-course-teacher-image > span { display: grid; place-items: center; height: 100%; font-size: 3rem; color: var(--jds-public-accent-text); }
body.jds-course-page .jds-course-root .jds-course-teacher h3 { font-size: 1.25rem; }
body.jds-course-page .jds-course-root .jds-course-teacher-summary { width: 100%; max-width: none; color: var(--jds-public-muted); font-size: 1rem; line-height: 2; }
body.jds-course-page .jds-course-root .jds-course-teacher :is(p, ul) { font-size: .875rem; }
body.jds-course-page .jds-course-root .jds-course-faq details { margin-block: 12px 0; padding-inline: 20px; border: 0; border-radius: var(--jds-public-radius-group); background: var(--jds-public-surface); }
body.jds-course-page .jds-course-root .jds-course-faq details:last-child { border: 0; }
body.jds-course-page .jds-course-root .jds-course-faq summary { min-height: 72px; padding-block: 18px; font-size: 1rem; }
body.jds-course-page .jds-course-root .jds-course-faq p { max-width: 58ch; padding: 0 0 20px; font-size: 1rem; }
body.jds-course-page .jds-course-root .jds-course-finish { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px 32px; padding: clamp(32px, 5vw, 56px); border-radius: var(--jds-public-radius-card); background: var(--jds-public-button-bg); color: var(--jds-public-button-fg); }
body.jds-course-page .jds-course-root .jds-course-finish h2 { max-width: none; font-size: clamp(1.375rem, 2.5vw, 2rem); line-height: 1.4; color: var(--jds-public-button-fg); }
body.jds-course-page .jds-course-root .jds-course-finish p { max-width: 58ch; margin: 12px 0 0; color: var(--jds-public-button-fg); font-size: 1rem; }
body.jds-course-page .jds-course-root .jds-course-finish .jds-public-button { flex-shrink: 0; background: var(--jds-public-button-fg); color: var(--jds-public-button-bg); }
body.jds-course-page .jds-course-root .jds-course-finish .jds-public-button:hover { background: var(--jds-public-button-fg); color: var(--jds-public-button-bg); }
body.jds-course-page .jds-course-root .jds-course-extensions:empty { display: none; }

/* The existing discussion template, form fields, vote buttons and permissions stay
 * untouched. Presentation of both modes follows the same course surfaces. */
body.jds-course-page .jds-course-root .jaygah-course-discussions { --jds-color-primary: var(--jds-public-accent); --jds-color-text: var(--jds-public-ink); --jds-color-muted: var(--jds-public-muted); --jds-color-surface: var(--jds-public-surface); --jds-color-surface-soft: var(--jds-public-surface-subtle); --jds-color-border: var(--jds-public-line); }
body.jds-course-page .jds-course-root .jds-course-reviews #reviews h2 { font-size: clamp(1.375rem, 2.5vw, 2rem); }
body.jds-course-page .jds-course-root .jaygah-discussion-heading > div > span { font-size: .875rem; color: var(--jds-public-muted); }
body.jds-course-page .jds-course-root .jaygah-discussion-heading nav a,
body.jds-course-page .jds-course-root .jaygah-review-sort a { border: 0; border-radius: var(--jds-public-radius-control); background: var(--jds-public-surface); color: var(--jds-public-muted); box-shadow: none; }
body.jds-course-page .jds-course-root .jaygah-discussion-heading nav a.is-active,
body.jds-course-page .jds-course-root .jaygah-review-sort a.is-active { background: var(--jds-public-button-bg); color: var(--jds-public-button-fg); }
body.jds-course-page .jds-course-root .jaygah-discussion-card { padding: max(var(--jds-card-padding, 12px), var(--jds-space-8, 32px)) !important; border: 0 !important; border-radius: var(--jds-public-radius-card) !important; background: var(--jds-public-surface) !important; color: var(--jds-public-ink) !important; box-shadow: none !important; }
body.jds-course-page .jds-course-root .jaygah-discussion-form-card { border: 0; border-radius: var(--jds-public-radius-card); background: var(--jds-public-surface); box-shadow: none; }
body.jds-course-page .jds-course-root .jaygah-discussion-text { min-width: 0; max-width: none; overflow-wrap: anywhere; color: var(--jds-public-muted); font-size: 1rem; line-height: 2; }
/* Div-style WordPress threads nest replies directly inside the card grid. */
body.jds-course-page .jds-course-root .jaygah-discussion-card > :is(.jaygah-discussion-card, .children) { grid-column: 1 / -1; min-width: 0; }
body.jds-course-page .jds-course-root .jds-course-reviews #respond :is(input[type=text], input[type=email], textarea) { border-color: var(--jds-public-line); background: var(--jds-public-surface-subtle); }
body.jds-course-page .jds-course-root .jds-course-mobile-action { border: 0; background: var(--jds-public-surface); box-shadow: 0 -4px 20px rgb(15 23 42 / 8%); }

@media (max-width: 1080px) {
    body.jds-course-page .jds-course-root .jds-course-wrap { width: min(100% - var(--jds-public-gutter) * 2, 960px); }
    body.jds-course-page .jds-course-root .jds-course-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; }
    body.jds-course-page .jds-course-root .jds-course-layout > .jds-course-purchase { position: static; order: 0; margin: 0; }
    body.jds-course-page .jds-course-root .jds-course-purchase-inner { display: block; padding: 28px; }
    body.jds-course-page .jds-course-root .jds-course-purchase-inner > .jds-course-purchase-facts { margin-block-start: 24px; padding: 18px 20px; border: 0; }
    body.jds-course-page .jds-course-root .jds-course-purchase-facts dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 32px; }
    body.jds-course-page .jds-course-root .jds-course-nav { position: static; }
    body.jds-course-page .jds-course-root .jds-course-mobile-action { display: none; }
    body.jds-course-page .jds-course-root .jds-course-shell { padding-block-end: 80px; }
}
@media (max-width: 768px) {
    body.jds-course-page .jds-course-root .jaygah-discussion-card { padding: max(var(--jds-card-padding, 12px), var(--jds-space-6, 24px)) !important; }
    body.jds-course-page .jds-course-root .jds-course-shell { padding-block: 16px 112px; }
    body.jds-course-page .jds-course-root .jds-course-breadcrumbs { display: block; margin-block-end: 24px; overflow-x: auto; }
    body.jds-course-page .jds-course-root .jds-course-breadcrumbs nav { flex-wrap: nowrap; width: max-content; min-width: 100%; font-size: .875rem; }
    body.jds-course-page .jds-course-root .jds-course-breadcrumbs :is(a, span) { white-space: nowrap; }
    body.jds-course-page .jds-course-root .jds-course-title { font-size: clamp(2rem, 8.5vw, 2.5rem); line-height: 1.4; }
    body.jds-course-page .jds-course-root .jds-course-summary { margin-block: 16px 24px; font-size: 1rem; line-height: 2; }
    body.jds-course-page .jds-course-root .jds-course-proof { align-items: flex-start; padding: 16px; }
    body.jds-course-page .jds-course-root .jds-course-identity { gap: 16px; }
    body.jds-course-page .jds-course-root .jds-course-identity a { font-size: .875rem; }
    body.jds-course-page .jds-course-root .jds-course-lead-facts { gap: 12px 16px; font-size: .875rem; }
    body.jds-course-page .jds-course-root .jds-course-media { border-radius: var(--jds-public-radius-media); }
    body.jds-course-page .jds-course-root .jds-course-preview-link { bottom: 14px; gap: 8px; padding: 8px 14px; }
    body.jds-course-page .jds-course-root .jds-course-play { width: 44px; height: 44px; }
    body.jds-course-page .jds-course-root .jds-course-purchase-inner { padding: 24px; border-radius: var(--jds-public-radius-card); }
    body.jds-course-page .jds-course-root .jds-course-purchase-facts dl { display: block; }
    body.jds-course-page .jds-course-root .jds-course-body { gap: 40px; padding-block-start: 24px; }
    body.jds-course-page .jds-course-root .jds-course-nav { margin-block-end: -10px; }
    body.jds-course-page .jds-course-root .jds-course-nav a { font-size: .875rem; padding-inline: 14px; }
    body.jds-course-page .jds-course-root .jds-course-section { scroll-margin-top: 90px; }
    body.jds-course-page .jds-course-root :is(#reviews, #respond, [id^="comment-"]) { scroll-margin-top: 90px; }
    body.jds-course-page.admin-bar .jds-course-root :is(.jds-course-section, #reviews, #respond, [id^="comment-"]) { scroll-margin-top: 122px; }
    body.jds-course-page .jds-course-root .jds-course-outcomes ul { grid-template-columns: minmax(0, 1fr); gap: 20px; padding: 24px; }
    body.jds-course-page .jds-course-root .jds-course-fit { grid-template-columns: minmax(0, 1fr); gap: 20px; }
    body.jds-course-page .jds-course-root .jds-course-fit > div,
    body.jds-course-page .jds-course-root .jds-course-fit > div + div { padding: 24px; border: 0; }
    body.jds-course-page .jds-course-root .jds-course-curriculum .jaygah-course-curriculum { padding: 12px; }
    body.jds-course-page .jds-course-root .jds-course-curriculum .jaygah-course-curriculum summary { flex-wrap: wrap; gap: 8px; min-height: 72px; padding: 14px 8px; font-size: 1.25rem; }
    body.jds-course-page .jds-course-root .jds-course-curriculum summary small { margin-inline-start: 0; font-size: .875rem; }
    body.jds-course-page .jds-course-root .jds-course-curriculum .jaygah-course-curriculum li { grid-template-columns: 28px minmax(0, 1fr); gap: 8px 10px; padding: 14px 8px; }
    body.jds-course-page .jds-course-root .jds-course-curriculum .jaygah-course-curriculum li > :is(a, span:last-child) { grid-column: 2; justify-self: start; }
    body.jds-course-page .jds-course-root .jds-course-teacher { grid-template-columns: minmax(0, 1fr); gap: 24px; padding: 0; }
    body.jds-course-page .jds-course-root .jds-course-teacher + .jds-course-teacher { padding-block-start: 24px; }
    body.jds-course-page .jds-course-root .jds-course-teacher-image { width: 112px; height: 132px; }
    body.jds-course-page .jds-course-root .jds-course-finish .jds-public-button { width: 100%; }
    body.jds-course-page .jds-course-root .jds-course-mobile-action { display: flex; }
}

/* Review refinements: every selector stays inside the native course detail. */
body.jds-course-page .jds-course-root .jds-course-breadcrumbs{padding:12px 18px;border-radius:var(--jds-public-radius-group);background:var(--jds-public-surface);border:1px solid var(--jds-public-line)}
body.jds-course-page .jds-course-root .jds-course-summary,
body.jds-course-page .jds-course-root .jds-course-summary p{font-size:.875rem;line-height:1.95}
body.jds-course-page .jds-course-root .jds-course-price{display:block;text-align:center}
body.jds-course-page .jds-course-root .jds-course-price:has(>del):has(>ins){display:flex;flex-direction:column;align-items:center;gap:8px}
body.jds-course-page .jds-course-root .jds-course-price del{order:0;font-size:1rem;font-weight:900;text-decoration-color:var(--jds-color-primary);text-decoration-thickness:2px}
body.jds-course-page .jds-course-root .jds-course-price ins{order:1}
body.jds-course-page .jds-course-root .jds-course-price .woocommerce-Price-amount{font-weight:900}
body.jds-course-page .jds-course-root .jds-course-price .woocommerce-Price-currencySymbol{align-self:center;font-weight:500}
body.jds-course-page .jds-course-root .jds-course-purchase-facts dt svg{padding:5px;box-sizing:content-box;border-radius:8px;color:var(--jds-public-accent);background:var(--jds-public-accent-soft);stroke-width:2}
body.jds-course-page .jds-course-root .jds-course-fit li svg{display:none}
body.jds-course-page .jds-course-root .jds-course-fit li::before{content:"";flex:0 0 9px;width:9px;height:9px;margin-top:12px;border-radius:50%;background:var(--jds-color-primary)}
body.jds-course-page .jds-course-root .jds-course-nav{position:sticky;top:var(--jds-course-nav-top,0px);padding-block:0;min-height:64px;margin-top:0}
body.jds-course-page.admin-bar .jds-course-root .jds-course-nav{top:var(--jds-course-nav-top,32px)}
body.jds-course-page .jds-course-root :is(.jds-course-section,#reviews,#respond,[id^="comment-"]){scroll-margin-top:var(--jds-course-anchor-offset,110px)}
body.jds-course-page .jds-course-root .jds-course-description-part{background:var(--jds-public-surface);border:1px solid var(--jds-public-line);border-radius:var(--jds-public-radius-group);padding:clamp(22px,3vw,32px);margin-bottom:20px}
body.jds-course-page .jds-course-root .jds-course-description-part>:is(h2,h3,h4,h5,h6){display:flex;align-items:center;gap:12px;margin-top:0}
body.jds-course-page .jds-course-root .jds-course-description-part>:last-child{margin-bottom:0}
body.jds-course-page .jds-course-root .jds-course-description-part p{max-width:none}
body.jds-course-page .jds-course-root .jds-course-description-icon{display:inline-flex;flex:0 0 36px;align-items:center;justify-content:center;width:36px;height:36px;color:var(--jds-public-accent);background:var(--jds-public-accent-soft);border-radius:10px}
body.jds-course-page .jds-course-root .jds-course-description-icon svg{width:22px;height:22px}
body.jds-course-page .jds-course-root .jaygah-course-curriculum li>.jaygah-curriculum-action{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 14px}
body.jds-course-page .jds-course-root .jaygah-curriculum-action a{display:inline-flex;align-items:center;min-height:44px;color:var(--jds-public-accent);font-weight:700}
body.jds-course-page .jds-course-root .jaygah-curriculum-duration{white-space:nowrap;color:var(--jds-public-muted);font-weight:500}
body.jds-course-page .jds-course-root .jds-course-teacher-specialties{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
body.jds-course-page .jds-course-root .jds-course-teacher-specialties span{padding:6px 12px;border:1px solid var(--jds-public-line);border-radius:10px;background:var(--jds-public-surface-subtle);font-size:.8125rem;color:var(--jds-public-muted)}
body.jds-course-page .jds-course-root .jds-course-teacher-rating{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-block:16px 0;font-size:.8125rem;color:var(--jds-public-muted)}
body.jds-course-page .jds-course-root .jds-course-teacher-rating :is(svg,strong){color:var(--jds-public-accent)}
body.jds-course-page .jds-course-root .jds-course-review-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:28px;align-items:start}
body.jds-course-page .jds-course-root .jds-course-review-content{min-width:0}
body.jds-course-page .jds-course-root .jds-course-rating-summary{position:sticky;top:calc(var(--jds-course-anchor-offset,110px) - 4px);padding:28px 24px;border-radius:var(--jds-public-radius-group);background:var(--jds-public-surface);border:1px solid var(--jds-public-line);text-align:center}
body.jds-course-page .jds-course-root .jds-course-rating-summary h3{font-size:1rem;margin-block:12px}
body.jds-course-page .jds-course-root .jds-course-rating-summary p{font-size:.8125rem;color:var(--jds-public-muted)}
body.jds-course-page .jds-course-root .jds-course-rating-emblem{display:inline-flex;padding:12px;color:var(--jds-public-accent);background:var(--jds-public-accent-soft);border-radius:50%}
body.jds-course-page .jds-course-root .jds-course-rating-emblem svg{width:30px;height:30px}
body.jds-course-page .jds-course-root .jds-course-rating-total{display:flex;align-items:baseline;justify-content:center;gap:8px}
body.jds-course-page .jds-course-root .jds-course-rating-total strong{font-size:3rem;line-height:1.3}
body.jds-course-page .jds-course-root .jds-course-satisfaction{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:20px;color:var(--jds-public-accent)}
body.jds-course-page .jds-course-root .jds-course-satisfaction strong{font-size:1.5rem}
body.jds-course-page .jds-course-root .jds-course-rating-summary small{display:block;font-size:.6875rem;color:var(--jds-public-muted);margin-top:6px}
body.jds-course-page .jds-course-root .jds-course-rating-bars{display:grid;gap:8px;margin-top:24px}
body.jds-course-page .jds-course-root .jds-course-rating-bars>div{display:flex;gap:10px;align-items:center;font-size:.75rem}
body.jds-course-page .jds-course-root .jds-course-rating-bars progress{appearance:none;flex:1;width:0;min-width:0;height:7px;border:0;border-radius:8px;overflow:hidden;background:var(--jds-public-accent-soft);accent-color:var(--jds-public-accent)}
body.jds-course-page .jds-course-root .jds-course-rating-bars progress::-webkit-progress-bar{background:var(--jds-public-accent-soft)}
body.jds-course-page .jds-course-root .jds-course-rating-bars progress::-webkit-progress-value{background:var(--jds-public-accent)}
body.jds-course-page .jds-course-root .jaygah-discussion-card>footer .jaygah-discussion-actions{order:-1;margin-inline-end:auto;margin-inline-start:0}
@media(max-width:900px){
 body.jds-course-page .jds-course-root .jds-course-review-layout{grid-template-columns:minmax(0,1fr)}
 body.jds-course-page .jds-course-root .jds-course-rating-summary{position:static}
 body.jds-course-page .jds-course-root .jds-course-summary p{font-size:.8125rem}
}
@media(max-width:480px){
 body.jds-course-page .jds-course-root .jaygah-course-curriculum li>.jaygah-curriculum-action{grid-column:2/-1;justify-content:space-between}
}

body.jds-course-page .jds-course-mobile-action.is-footer-visible{visibility:hidden;pointer-events:none}

/* Latest review: clear price hierarchy and padded section cards. */
body.jds-course-page .jds-course-root .jds-course-price del .woocommerce-Price-amount{position:relative;color:var(--jds-price-original-text,var(--jds-public-muted));opacity:.62}
body.jds-course-page .jds-course-root .jds-course-price del .woocommerce-Price-amount::after{content:"";position:absolute;inset-inline:-3px;top:50%;height:2px;background:var(--jds-color-primary);transform:rotate(-5deg);pointer-events:none}
body.jds-course-page .jds-course-root .jds-course-nav{align-items:center;min-height:76px;padding:12px}
body.jds-course-page .jds-course-root .jds-course-nav a{min-height:52px}
body.jds-course-page .jds-course-root .jds-course-nav.is-stuck{min-height:60px;padding-block:8px}
body.jds-course-page .jds-course-root .jds-course-nav.is-stuck a{min-height:44px;padding-block:6px}
body.jds-course-page .jds-course-root .jds-course-body>.jds-course-section:not(#course-description):not(.jds-course-reviews){padding:32px;background:var(--jds-public-surface);border:1px solid var(--jds-public-line);border-radius:var(--jds-public-radius-card)}
body.jds-course-page .jds-course-root .jds-course-purchase-control .single_add_to_cart_button::after{content:"";display:inline-block;flex:0 0 20px;width:20px;height:20px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 12H4m6-6-6 6 6 6' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
body.jds-course-page .jds-course-root .jds-course-byline-avatar{width:44px;height:44px;flex:0 0 44px;object-fit:cover;border-radius:50%;background:var(--jds-public-surface-subtle)}
body.jds-course-page .jds-course-root .jds-course-verified{display:inline-flex;vertical-align:middle;align-items:center;justify-content:center;width:18px;height:18px;margin-inline-start:6px;border-radius:50%;background:#1683e8;color:#fff}
body.jds-course-page .jds-course-root .jds-course-verified svg{width:13px;height:13px;stroke-width:2.5}
@media(max-width:767px){body.jds-course-page .jds-course-root .jds-course-body>.jds-course-section:not(#course-description):not(.jds-course-reviews){padding:24px}}

/* Course feedback: clear lesson actions and an enrollment action while reading. */
body.jds-course-page .jds-course-root .jds-course-breadcrumbs{border:0;box-shadow:0 8px 28px rgb(20 45 54 / 6%)}
body.jds-course-page.dark-mode-shkrn .jds-course-root .jds-course-breadcrumbs{box-shadow:0 8px 28px rgb(0 0 0 / 16%)}
body.jds-course-page .jds-course-root .jds-course-media>.onsale{display:none!important}
body.jds-course-page .jds-course-root .jaygah-curriculum-action :is(a,button){display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 16px;border:1px solid transparent;border-radius:var(--jds-public-radius-control);background:var(--jds-public-accent-soft);color:var(--jds-public-accent);font:inherit;font-size:.8125rem;font-weight:700;line-height:1.6;text-decoration:none;white-space:nowrap}
body.jds-course-page .jds-course-root .jaygah-curriculum-action a:hover{background:var(--jds-public-button-bg);color:var(--jds-public-button-fg)}
body.jds-course-page .jds-course-root .jaygah-curriculum-action a:focus-visible{outline:2px solid var(--jds-public-accent);outline-offset:3px}
body.jds-course-page .jds-course-root .jaygah-curriculum-action button:disabled{background:var(--jds-public-surface-subtle);color:var(--jds-public-muted);border-color:var(--jds-public-line);cursor:not-allowed}
body.jds-course-page .jds-course-root .jds-course-nav{overflow:visible;gap:12px}
body.jds-course-page .jds-course-root .jds-course-nav-links{display:flex;align-items:center;flex:1;gap:8px;min-width:0;overflow-x:auto;scrollbar-width:thin}
body.jds-course-page .jds-course-root .jds-course-nav-links>a{flex:0 0 auto;white-space:nowrap}
body.jds-course-page .jds-course-root .jds-course-nav .jds-course-nav-enroll{display:none;flex:0 0 auto;align-items:center;justify-content:center;gap:8px;background:var(--jds-public-button-bg);color:var(--jds-public-button-fg);white-space:nowrap}
body.jds-course-page .jds-course-root .jds-course-nav.is-stuck .jds-course-nav-enroll{display:inline-flex}
body.jds-course-page .jds-course-root .jds-course-nav-enroll svg{width:18px;height:18px}
@keyframes jds-course-fact-motion{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-3px) rotate(-9deg)}65%{transform:translateY(-1px) rotate(7deg)}}
@keyframes jds-course-book-motion{0%,100%{transform:perspective(100px) rotateY(0)}35%{transform:perspective(100px) rotateY(-32deg) scale(1.12)}70%{transform:perspective(100px) rotateY(16deg)}}
@media(prefers-reduced-motion:no-preference){
 body.jds-course-page:not(.jaygah-reduced-motion) .jds-course-root .jds-course-purchase-facts dl>div:is(:hover,:focus-within,.is-icon-active) dt svg{animation:jds-course-fact-motion 700ms ease-in-out}
 body.jds-course-page:not(.jaygah-reduced-motion) .jds-course-root .jds-course-description-part:is(:hover,:focus-within,.is-icon-active) .jds-course-description-icon svg{animation:jds-course-book-motion 700ms ease-in-out}
}
@media(max-width:767px){body.jds-course-page .jds-course-root .jds-course-nav.is-stuck{gap:8px}body.jds-course-page .jds-course-root .jds-course-nav .jds-course-nav-enroll{padding-inline:12px;font-size:.75rem}body.jds-course-page .jds-course-root .jds-course-nav-enroll svg{display:none}}

/* Keep section selection quieter than enrollment. */
body.jds-course-page .jds-course-root .jds-course-nav-links>a:is(:hover,[aria-current]){background:var(--jds-public-accent-soft);color:var(--jds-public-accent)}
body.jds-course-page .jds-course-root :is(.jds-course-lesson-toggle,.jds-course-lesson-details)[hidden],
body.jds-course-page .jds-course-root .has-mobile-details>div>strong[hidden]{display:none!important}
@media(max-width:767px){
 body.jds-course-page .jds-course-root .jds-course-nav-links{scrollbar-width:none;-ms-overflow-style:none}
 body.jds-course-page .jds-course-root .jds-course-nav-links::-webkit-scrollbar{display:none;width:0;height:0}
 body.jds-course-page .jds-course-root .jds-course-curriculum .jaygah-course-curriculum{padding-inline:0}
 body.jds-course-page .jds-course-root .jaygah-course-curriculum li.has-mobile-details{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 12px;padding-block:16px}
 body.jds-course-page .jds-course-root .has-mobile-details>.jaygah-lesson-state{display:none}
 body.jds-course-page .jds-course-root .has-mobile-details>div:not(.jds-course-lesson-details){grid-column:1;grid-row:1;min-width:0}
 body.jds-course-page .jds-course-root .has-mobile-details>.jaygah-curriculum-action{grid-column:2;grid-row:1;gap:0}
 body.jds-course-page .jds-course-root .jds-course-lesson-toggle{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:8px 0;border:0;border-radius:4px;background:transparent;color:var(--jds-public-ink);font:inherit;font-size:.8125rem;font-weight:700;line-height:1.8;text-align:start;cursor:pointer}
 body.jds-course-page .jds-course-root .jds-course-lesson-toggle::after{content:"";flex:0 0 6px;width:6px;height:6px;border-right:1.5px solid var(--jds-public-accent);border-bottom:1.5px solid var(--jds-public-accent);transform:rotate(45deg);margin-inline-start:auto;align-self:center}
 body.jds-course-page .jds-course-root .jds-course-lesson-toggle[aria-expanded=true]::after{transform:rotate(225deg)}
 body.jds-course-page .jds-course-root .jds-course-lesson-toggle:focus-visible{outline:2px solid var(--jds-public-accent);outline-offset:3px}
 body.jds-course-page .jds-course-root .has-mobile-details>.jds-course-lesson-details{grid-column:1/-1;grid-row:2;display:grid;gap:6px;padding:4px 0 8px;color:var(--jds-public-muted);font-size:.8125rem;line-height:1.9}
 body.jds-course-page .jds-course-root .jds-course-lesson-details small{font:inherit}
 body.jds-course-page .jds-course-root .has-mobile-details>.jaygah-curriculum-action :is(a,button){padding-inline:12px;font-size:.75rem}
}

@media(prefers-color-scheme:dark) {
body.jds-course-page.system-mode-shkrn .jds-course-root {
    --jds-public-paper: var(--jds-night-page);
    --jds-public-surface: var(--jds-night-surface);
    --jds-public-surface-subtle: var(--jds-night-elevated);
    --jds-public-ink: var(--jds-night-text);
    --jds-public-muted: var(--jds-night-muted);
    --jds-public-line: var(--jds-night-divider);
    --jds-public-accent: var(--jds-dark-primary);
    --jds-public-accent-text: var(--jds-dark-primary);
    --jds-public-amber: var(--jds-dark-warning);
    --jds-public-success: var(--jds-dark-success);
}
}
