/* ==========================================================================
   GraphicBidu Earlier-Edition Learner Feedback v1
   Deliberately separate from native GraphicBidu purchase reviews.
   ========================================================================== */

.course-earlier-feedback-section {
    padding-block: clamp(2.9rem, 5vw, 4.7rem);
    border-top: 1px solid var(--gb-line);
    background: var(--gb-paper-soft);
}

.course-earlier-feedback-shell {
    display: grid;
    grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr);
    align-items: start;
    gap: clamp(1.4rem, 4vw, 4.4rem);
}

.course-earlier-feedback-heading {
    min-width: 0;
    max-width: 31rem;
}

.course-earlier-feedback-heading .eyebrow,
.course-earlier-feedback-heading h2,
.course-earlier-feedback-heading p {
    margin-top: 0;
}

.course-earlier-feedback-heading h2 {
    margin-bottom: .7rem;
    max-width: 15ch;
    font-size: clamp(1.72rem, 3vw, 2.55rem);
    line-height: 1.08;
    letter-spacing: -.048em;
}

.course-earlier-feedback-heading > p {
    color: var(--gb-text-secondary);
    line-height: 1.58;
}

.course-earlier-feedback-score {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: .8rem;
    margin: 1.2rem 0;
    padding: 1rem;
    border: 1px solid var(--gb-line);
    border-radius: 14px;
    background: var(--gb-paper);
}

.course-earlier-feedback-score__rating {
    color: var(--gb-text);
    font-size: clamp(1.65rem, 3vw, 2.15rem);
    font-weight: 800;
    letter-spacing: -.05em;
    line-height: 1;
}

.course-earlier-feedback-score strong,
.course-earlier-feedback-score small {
    display: block;
}

.course-earlier-feedback-score strong {
    color: var(--gb-text);
    font-size: .88rem;
    line-height: 1.35;
}

.course-earlier-feedback-score small {
    margin-top: .2rem;
    color: var(--gb-text-muted);
    font-size: .77rem;
    line-height: 1.4;
}

.course-earlier-feedback-disclosure {
    padding-left: .95rem;
    border-left: 2px solid var(--gb-line);
    color: var(--gb-text-muted);
    font-size: .8rem;
    line-height: 1.55;
}

.course-earlier-feedback-body {
    min-width: 0;
}

.course-earlier-feedback-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.course-earlier-feedback-card {
    display: grid;
    min-width: 0;
    min-height: 100%;
    align-content: start;
    gap: .72rem;
    padding: clamp(1.1rem, 2vw, 1.4rem);
    border-radius: 16px;
}

.course-earlier-feedback-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .7rem;
}

.course-earlier-feedback-card__stars {
    color: #b7791f;
    font-size: .94rem;
    font-weight: 800;
    letter-spacing: .06em;
    white-space: nowrap;
}

.course-earlier-feedback-card__source {
    color: var(--gb-text-muted);
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.course-earlier-feedback-card__body {
    margin: 0;
    color: var(--gb-text);
    font-size: .92rem;
    line-height: 1.6;
}

.course-earlier-feedback-card__rating-only {
    margin: 0;
    color: var(--gb-text-secondary);
    font-size: .88rem;
    font-style: italic;
    line-height: 1.55;
}

.course-earlier-feedback-card__name {
    color: var(--gb-text-secondary);
    font-size: .82rem;
    font-weight: 750;
}

.course-earlier-feedback-more {
    margin-top: 1rem;
    border: 1px solid var(--gb-line);
    border-radius: 16px;
    background: var(--gb-paper);
}

.course-earlier-feedback-more > summary {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 3.6rem;
    padding: .9rem 3.2rem .9rem 1.1rem;
    color: var(--gb-text);
    cursor: pointer;
    font-size: .9rem;
    font-weight: 800;
    list-style: none;
}

.course-earlier-feedback-more > summary::-webkit-details-marker {
    display: none;
}

.course-earlier-feedback-more > summary::after {
    position: absolute;
    right: 1.15rem;
    content: "+";
    color: var(--gb-text);
    font-size: 1.35rem;
    font-weight: 400;
    line-height: 1;
}

.course-earlier-feedback-more[open] > summary::after {
    content: "−";
}

.course-earlier-feedback-more__content {
    padding: 0 1rem 1rem;
}

.course-earlier-feedback-more__content .course-earlier-feedback-grid {
    padding-top: .15rem;
}

html[data-theme="dark"] .course-earlier-feedback-section {
    border-top-color: rgba(226,232,240,.16);
    background: #111827;
}

html[data-theme="dark"] .course-earlier-feedback-score,
html[data-theme="dark"] .course-earlier-feedback-more {
    border-color: rgba(226,232,240,.17);
    background: #161b27;
}

html[data-theme="dark"] .course-earlier-feedback-card__stars {
    color: #f6c453;
}

@media (max-width: 900px) {
    .course-earlier-feedback-shell {
        grid-template-columns: minmax(0, 1fr);
        gap: 1.4rem;
    }

    .course-earlier-feedback-heading h2 {
        max-width: 20ch;
    }
}

@media (max-width: 680px) {
    .course-earlier-feedback-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .course-earlier-feedback-score {
        grid-template-columns: minmax(0, 1fr);
        gap: .55rem;
    }
}
/* ==========================================================================
   GraphicBidu Earlier-Edition Feedback Upgrade v2
   Rating discovery at course-page top + feedback section hierarchy.
   ========================================================================== */

#earlier-learner-feedback {
    scroll-margin-top: 6.75rem;
}

@media (prefers-reduced-motion: no-preference) {
    html {
        scroll-behavior: smooth;
    }
}

/* This is inserted directly beneath the Program Snapshot heading at page top. */
.course-earlier-feedback-jump {
    display: grid;
    gap: .4rem;
    width: 100%;
    margin: .9rem 0 1.05rem;
    padding: .92rem 1rem;
    border: 1px solid rgba(17,24,39,.16);
    border-radius: 13px;
    background: #f7f5ed;
    color: #111827;
    text-decoration: none;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.course-earlier-feedback-jump:hover,
.course-earlier-feedback-jump:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(17,24,39,.42);
    box-shadow: 0 10px 20px rgba(17,24,39,.09);
    color: #111827;
}

.course-earlier-feedback-jump:focus-visible {
    outline: 3px solid rgba(59,130,246,.35);
    outline-offset: 3px;
}

.course-earlier-feedback-jump__eyebrow {
    color: #656a73;
    font-size: .67rem;
    font-weight: 800;
    letter-spacing: .09em;
    line-height: 1.2;
    text-transform: uppercase;
}

.course-earlier-feedback-jump__line {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: .8rem;
}

.course-earlier-feedback-jump__rating {
    color: #111827;
    font-size: 1.34rem;
    font-weight: 850;
    letter-spacing: -.045em;
    line-height: 1;
}

.course-earlier-feedback-jump__action {
    color: #111827;
    font-size: .76rem;
    font-weight: 800;
    white-space: nowrap;
}

.course-earlier-feedback-jump__source {
    color: #656a73;
    font-size: .74rem;
    line-height: 1.35;
}

html[data-theme="dark"] .course-earlier-feedback-jump {
    border-color: rgba(226,232,240,.18);
    background: #202837;
    color: #f8fafc;
}

html[data-theme="dark"] .course-earlier-feedback-jump:hover,
html[data-theme="dark"] .course-earlier-feedback-jump:focus-visible {
    border-color: rgba(226,232,240,.45);
    box-shadow: 0 10px 20px rgba(0,0,0,.24);
    color: #fff;
}

html[data-theme="dark"] .course-earlier-feedback-jump__rating,
html[data-theme="dark"] .course-earlier-feedback-jump__action {
    color: #fff;
}

html[data-theme="dark"] .course-earlier-feedback-jump__eyebrow,
html[data-theme="dark"] .course-earlier-feedback-jump__source {
    color: #c6cfdf;
}

/* Feedback section refinement: more compact heading and a clearer reading flow. */
.course-earlier-feedback-section {
    background: #f8f8f6;
}

.course-earlier-feedback-shell {
    grid-template-columns: minmax(15rem, .55fr) minmax(0, 1.45fr);
    gap: clamp(1.6rem, 4.5vw, 5rem);
}

.course-earlier-feedback-heading h2 {
    max-width: 16ch;
    font-size: clamp(1.58rem, 2.45vw, 2.18rem);
    line-height: 1.1;
}

.course-earlier-feedback-score {
    margin: 1rem 0;
    box-shadow: 0 8px 20px rgba(15,23,42,.045);
}

.course-earlier-feedback-card {
    border-color: rgba(17,24,39,.13);
    box-shadow: 0 8px 20px rgba(15,23,42,.035);
}

.course-earlier-feedback-card__body {
    color: #3f4652;
}

.course-earlier-feedback-card__name {
    color: #111827;
}

.course-earlier-feedback-more {
    overflow: hidden;
    box-shadow: 0 8px 20px rgba(15,23,42,.035);
}

.course-earlier-feedback-more > summary {
    min-height: 3.8rem;
}

html[data-theme="dark"] .course-earlier-feedback-section {
    background: #111827;
}

html[data-theme="dark"] .course-earlier-feedback-card {
    border-color: rgba(226,232,240,.16);
    box-shadow: none;
}

html[data-theme="dark"] .course-earlier-feedback-card__body,
html[data-theme="dark"] .course-earlier-feedback-card__name {
    color: #eef2f7;
}

@media (max-width: 900px) {
    .course-earlier-feedback-shell {
        grid-template-columns: minmax(0, 1fr);
        gap: 1.45rem;
    }
}

@media (max-width: 620px) {
    #earlier-learner-feedback {
        scroll-margin-top: 5.3rem;
    }

    .course-earlier-feedback-jump {
        margin-top: .8rem;
    }

    .course-earlier-feedback-jump__line {
        align-items: flex-start;
        flex-direction: column;
        gap: .3rem;
    }
}
/* ==========================================================================
   GraphicBidu Earlier-Edition Actual CSV Refinement v4
   Source: owner-provided Udemy export. Snapshot and feedback hierarchy only.
   ========================================================================== */
.course-sales-v2-snapshot-card {
    align-self: start;
    min-height: 0;
}
.course-sales-v2-snapshot-card .course-sales-v2-definition-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    margin-top: 1.35rem;
    border-top: 1px solid var(--gb-line);
}
.course-sales-v2-snapshot-card .course-sales-v2-definition-list li {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-content: start;
    gap: .38rem;
    min-height: 0;
    margin: 0;
    padding: .9rem .82rem;
    border-right: 1px solid var(--gb-line);
    border-bottom: 1px solid var(--gb-line);
}
.course-sales-v2-snapshot-card .course-sales-v2-definition-list li:nth-child(2n) { border-right: 0; }
.course-sales-v2-snapshot-card .course-sales-v2-definition-list li:nth-child(3),
.course-sales-v2-snapshot-card .course-sales-v2-definition-list li:last-child {
    grid-column: 1 / -1;
    border-right: 0;
}
.course-sales-v2-snapshot-card .course-sales-v2-definition-list li:last-child { border-bottom: 0; }
.course-sales-v2-snapshot-card .course-sales-v2-definition-list span {
    color: var(--gb-text-muted);
    font-size: .72rem;
    font-weight: 750;
    letter-spacing: .015em;
}
.course-sales-v2-snapshot-card .course-sales-v2-definition-list strong {
    max-width: none;
    color: var(--gb-text);
    font-size: .95rem;
    line-height: 1.42;
    text-align: left;
}
.course-sales-v2-snapshot-card .course-earlier-feedback-jump {
    margin: 1rem 0 .15rem;
    padding: .86rem .92rem;
    border-left: 3px solid #a87813;
    border-radius: 12px;
    background: #f8f5e9;
}
.course-sales-v2-snapshot-card .course-earlier-feedback-jump__line { align-items: center; }
.course-sales-v2-snapshot-card .course-earlier-feedback-jump__rating { font-size: 1.42rem; }
.course-sales-v2-snapshot-card .course-earlier-feedback-jump__action {
    text-decoration: underline;
    text-underline-offset: .2em;
}
.course-earlier-feedback-heading h2 { max-width: 14ch; }
.course-earlier-feedback-heading > p { max-width: 34ch; }
.course-earlier-feedback-card__source {
    display: inline-flex;
    align-items: center;
    min-height: 1.45rem;
    padding: 0 .5rem;
    border: 1px solid var(--gb-line);
    border-radius: 999px;
    color: var(--gb-text-muted);
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .065em;
    line-height: 1;
    text-transform: uppercase;
    white-space: nowrap;
}
.course-earlier-feedback-card__name { color: var(--gb-text); }
html[data-theme="dark"] .course-sales-v2-snapshot-card .course-earlier-feedback-jump {
    border-left-color: #f6c453;
    background: #232719;
}
html[data-theme="dark"] .course-sales-v2-snapshot-card .course-sales-v2-definition-list,
html[data-theme="dark"] .course-sales-v2-snapshot-card .course-sales-v2-definition-list li,
html[data-theme="dark"] .course-earlier-feedback-card__source {
    border-color: rgba(226,232,240,.17);
}
@media (max-width: 720px) {
    .course-sales-v2-snapshot-card .course-sales-v2-definition-list { grid-template-columns: 1fr; }
    .course-sales-v2-snapshot-card .course-sales-v2-definition-list li,
    .course-sales-v2-snapshot-card .course-sales-v2-definition-list li:nth-child(2n),
    .course-sales-v2-snapshot-card .course-sales-v2-definition-list li:nth-child(3),
    .course-sales-v2-snapshot-card .course-sales-v2-definition-list li:last-child {
        grid-column: auto;
        border-right: 0;
    }
}