/* Portal account shell — My Account + Sensei My Courses */

body.vp-portal-account-active {
    --vp-acct-brand: #3b2fd6;
    --vp-acct-brand-2: #8b2fe0;
    --vp-acct-blue: #2f6bff;
    --vp-acct-ink: #0f172a;
    --vp-acct-muted: #64748b;
    --vp-acct-border: #e2e8f0;
    --vp-acct-tint: #e5efff;
    --vp-acct-accent: #c4b5fd;
    --vp-acct-bar: #0b1020;
    --vp-acct-grad: linear-gradient(89deg, #000f31 0%, #410660 100%);
    --vp-acct-btn: linear-gradient(135deg, var(--vp-acct-brand), var(--vp-acct-brand-2));
    --vp-acct-ring: color-mix(in srgb, var(--vp-acct-brand) 50%, transparent);
    --vp-acct-sans: "Inter", system-ui, -apple-system, sans-serif;
    --vp-acct-display: "Poppins", var(--vp-acct-sans);
    --vp-acct-tab-font: "Open Sans", Arial, sans-serif;
    --vp-acct-radius: 0.625rem;
    --vp-acct-card-radius: 0.85rem;
}

/* ---------- Layout reset (Divi #left-area / old style.css widths) ---------- */

body.vp-portal-account-active #left-area {
    width: 100% !important;
    float: none !important;
    padding-right: 0 !important;
}

body.vp-portal-account-active #sidebar,
body.vp-portal-account-active #main-content .container:before {
    display: none !important;
}

body.vp-portal-account-active #main-content .container {
    padding-top: 0 !important;
}

/* Divi's own page title is replaced by the band */
body.vp-portal-account-active #left-area .main_title,
body.vp-portal-account-active #left-area .entry-title {
    display: none !important;
}

/* ---------- Title band ---------- */

body.vp-portal-account-active .vp-account-band {
    width: 100%;
    background: var(--vp-acct-grad);
    color: #fff;
}

body.vp-portal-account-active .vp-account-band__inner {
    width: 96%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 1.75rem 0;
}

body.vp-portal-account-active .vp-account-band__title {
    margin: 0;
    padding: 0;
    color: #fff !important;
    font-family: var(--vp-acct-display) !important;
    font-size: clamp(1.5rem, 2.4vw, 2rem) !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.01em;
}

/* ---------- Shell ---------- */

body.vp-portal-account-active .woocommerce,
body.vp-portal-account-active .vp-account-shell {
    margin-top: 2rem;
    margin-bottom: 3rem;
    font-family: var(--vp-acct-sans);
    color: var(--vp-acct-ink);
}

/* ---------- Tab bar ---------- */

body.vp-portal-account-active .woocommerce-MyAccount-navigation {
    display: block !important;
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    background: var(--vp-acct-bar);
    border-radius: var(--vp-acct-card-radius) var(--vp-acct-card-radius) 0 0;
    overflow: hidden;
}

body.vp-portal-account-active .vp-account-tabs {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body.vp-portal-account-active .vp-account-tabs::-webkit-scrollbar {
    display: none;
}

body.vp-portal-account-active .vp-account-tabs > li:last-child {
    padding-right: 0 !important;
}

body.vp-portal-account-active .vp-account-tabs > li {
    flex: 0 0 auto;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    list-style: none !important;
}

body.vp-portal-account-active .vp-account-tabs > li > a {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.9rem 0.75rem !important;
    border-bottom: 3px solid transparent;
    color: rgba(255, 255, 255, 0.85) !important;
    font-family: var(--vp-acct-tab-font) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em;
    line-height: 1.2 !important;
    text-transform: uppercase;
    text-decoration: none !important;
    white-space: nowrap;
    background: transparent !important;
    transition: color 0.15s ease, background-color 0.15s ease;
}

body.vp-portal-account-active .vp-account-tabs > li > a:hover {
    color: var(--vp-acct-accent) !important;
}

body.vp-portal-account-active .vp-account-tabs > li.is-active > a {
    color: var(--vp-acct-accent) !important;
    background: color-mix(in srgb, var(--vp-acct-brand) 22%, var(--vp-acct-bar)) !important;
}

/* gradient underline (border-image does not work with border-radius, so use a pseudo) */
body.vp-portal-account-active .vp-account-tabs > li.is-active > a:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -3px;
    height: 3px;
    background: var(--vp-acct-btn);
}

body.vp-portal-account-active .vp-account-tabs > li > a:focus-visible {
    outline: none;
    box-shadow: inset 0 0 0 3px var(--vp-acct-ring);
}

/* FontAwesome 4 icons (moved from style.css) */
body.vp-portal-account-active .vp-account-tabs > li > a:before {
    font: normal normal normal 14px/1 FontAwesome;
    opacity: 0.45;
    transition: opacity 0.15s ease;
}

body.vp-portal-account-active .vp-account-tabs > li > a:hover:before,
body.vp-portal-account-active .vp-account-tabs > li.is-active > a:before {
    opacity: 1;
}

body.vp-portal-account-active .woocommerce-MyAccount-navigation-link--dashboard a:before { content: "\f0e4"; }
body.vp-portal-account-active .woocommerce-MyAccount-navigation-link--my-courses a:before,
body.vp-portal-account-active .woocommerce-MyAccount-navigation-link--courses a:before { content: "\f02d"; }
body.vp-portal-account-active .woocommerce-MyAccount-navigation-link--orders a:before { content: "\f291"; }
body.vp-portal-account-active .woocommerce-MyAccount-navigation-link--subscriptions a:before { content: "\f09e"; }
body.vp-portal-account-active .woocommerce-MyAccount-navigation-link--downloads a:before { content: "\f1c6"; }
body.vp-portal-account-active .woocommerce-MyAccount-navigation-link--edit-address a:before { content: "\f015"; }
body.vp-portal-account-active .woocommerce-MyAccount-navigation-link--payment-methods a:before { content: "\f09d"; }
body.vp-portal-account-active .woocommerce-MyAccount-navigation-link--edit-account a:before { content: "\f007"; }
body.vp-portal-account-active .woocommerce-MyAccount-navigation-link--customer-logout a:before { content: "\f08b"; }

/* ---------- Content card ---------- */

body.vp-portal-account-active .woocommerce-MyAccount-content {
    display: block !important;
    float: none !important;
    clear: both;
    width: 100% !important;
    margin: 0 !important;
    padding: 2rem;
    box-sizing: border-box;
    background: #fff;
    border: 1px solid var(--vp-acct-border);
    border-top: 0;
    border-radius: 0 0 var(--vp-acct-card-radius) var(--vp-acct-card-radius);
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08);
    color: var(--vp-acct-ink);
}

body.vp-portal-account-active .woocommerce-MyAccount-content a:not(.button) {
    color: var(--vp-acct-brand);
}

body.vp-portal-account-active .woocommerce-MyAccount-content h2,
body.vp-portal-account-active .woocommerce-MyAccount-content h3 {
    color: var(--vp-acct-ink);
    font-family: var(--vp-acct-display);
    font-weight: 600;
}

/* ---------- Dashboard intro ---------- */

body.vp-portal-account-active .woocommerce-MyAccount-content > p:first-of-type,
body.vp-portal-account-active .woocommerce-MyAccount-content > p:first-of-type + p {
    margin: 0;
    padding: 1rem 1.25rem;
    background: var(--vp-acct-tint);
    box-shadow: inset 4px 0 0 var(--vp-acct-brand-2);
}

body.vp-portal-account-active .woocommerce-MyAccount-content > p:first-of-type {
    border-radius: var(--vp-acct-radius) var(--vp-acct-radius) 0 0;
}

body.vp-portal-account-active .woocommerce-MyAccount-content > p:first-of-type + p {
    margin-bottom: 1.5rem;
    border-radius: 0 0 var(--vp-acct-radius) var(--vp-acct-radius);
}

/* Single intro paragraph: it IS the whole card */
body.vp-portal-account-active .woocommerce-MyAccount-content > p:first-of-type:last-of-type {
    margin-bottom: 1.5rem;
    border-radius: var(--vp-acct-radius);
}

/* ---------- Buttons ---------- */

body.vp-portal-account-active .woocommerce-MyAccount-content .button,
body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-Button,
body.vp-portal-account-active .woocommerce-MyAccount-content button[type="submit"],
body.vp-portal-account-active #my-courses .button,
body.vp-portal-account-active #sensei-user-courses .button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 0.6rem 1.1rem !important;
    border: 0 !important;
    border-radius: var(--vp-acct-radius) !important;
    background: var(--vp-acct-btn) !important;
    color: #fff !important;
    font-family: var(--vp-acct-sans) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    letter-spacing: normal !important;
    text-transform: none !important;
    text-decoration: none !important;
    cursor: pointer;
    transition: filter 0.15s ease, box-shadow 0.15s ease;
}

/* Divi all_buttons_icon: no arrow, no hover padding shift */
body.vp-portal-account-active .woocommerce-MyAccount-content .button:after,
body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-Button:after,
body.vp-portal-account-active #my-courses .button:after,
body.vp-portal-account-active #sensei-user-courses .button:after {
    display: none !important;
    content: none !important;
}

body.vp-portal-account-active .woocommerce-MyAccount-content .button:hover,
body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-Button:hover,
body.vp-portal-account-active #my-courses .button:hover,
body.vp-portal-account-active #sensei-user-courses .button:hover {
    padding: 0.6rem 1.1rem !important;
    filter: brightness(1.08);
}

body.vp-portal-account-active .woocommerce-MyAccount-content .button:focus-visible,
body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-Button:focus-visible {
    outline: none;
    box-shadow: 0 0 0 4px var(--vp-acct-ring);
}

/* Destructive: delete payment method / cancel subscription.
   #main-content prefix beats the plugin's #post-XXXX a.button ID selector. */
body.vp-portal-account-active #main-content .woocommerce-MyAccount-content .button.delete,
body.vp-portal-account-active #main-content .woocommerce-MyAccount-content .button.cancel_subscription {
    border: 1px solid #fecaca !important;
    background: #fff5f5 !important;
    color: #b91c1c !important;
}

body.vp-portal-account-active #main-content .woocommerce-MyAccount-content .button.delete:hover,
body.vp-portal-account-active #main-content .woocommerce-MyAccount-content .button.cancel_subscription:hover {
    background: #fee2e2 !important;
    filter: none;
}

/* Subscription / order action buttons: spacing without changing cell display */
body.vp-portal-account-active .woocommerce-MyAccount-content td.order-actions,
body.vp-portal-account-active .woocommerce-MyAccount-content td.subscription-actions,
body.vp-portal-account-active .woocommerce-MyAccount-content td.woocommerce-orders-table__cell-order-actions {
    padding-right: 1rem;
    white-space: normal;
}

body.vp-portal-account-active .woocommerce-MyAccount-content td.order-actions .button,
body.vp-portal-account-active .woocommerce-MyAccount-content td.subscription-actions .button,
body.vp-portal-account-active .woocommerce-MyAccount-content td.woocommerce-orders-table__cell-order-actions .button {
    margin: 0.2rem 0.4rem 0.2rem 0 !important;
}

body.vp-portal-account-active button.single_add_to_cart_button,
body.vp-portal-account-active .single_add_to_cart_button {
    display: inline-block !important;
    white-space: normal;
    max-width: 100%;
    height: auto;
    min-height: 0;
    padding: 0.7rem 1.6rem !important;
    line-height: 1.35;
    text-align: center;
}

/* break the line after the price — pushes CTA text to line 2 */
body.vp-portal-account-active .single_add_to_cart_button ins::after {
    content: "";
    display: block;
}

body.vp-portal-account-active button.single_add_to_cart_button,
body.vp-portal-account-active .single_add_to_cart_button {
    min-width: min(360px, 100%);
}

body.vp-portal-account-active .single_add_to_cart_button del {
    font-size: 0.78em;
    font-weight: 400;
    opacity: 0.75;
}

body.vp-portal-account-active .single_add_to_cart_button ins {
    font-size: 1.15em;
    font-weight: 700;
    text-decoration: none !important;
    margin-right: 0.3rem;
}

/* ---------- Tables ---------- */

body.vp-portal-account-active .woocommerce-MyAccount-content table.shop_table,
body.vp-portal-account-active .woocommerce-MyAccount-content table.my_account_orders {
    width: 100%;
    margin: 0 0 1.5rem;
    border: 1px solid var(--vp-acct-border) !important;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: var(--vp-acct-radius);
    overflow: hidden;
}

body.vp-portal-account-active .woocommerce-MyAccount-content table thead tr,
body.vp-portal-account-active .woocommerce-MyAccount-content table thead th {
    background: var(--vp-acct-brand) !important;
}

body.vp-portal-account-active .woocommerce-MyAccount-content table thead th {
    padding: 0.75rem 1rem !important;
    border: 0 !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

body.vp-portal-account-active .woocommerce-MyAccount-content table thead th a {
    color: #fff !important;
}

body.vp-portal-account-active .woocommerce-MyAccount-content table td {
    padding: 0.75rem 1rem !important;
    border: 0 !important;
    border-top: 1px solid var(--vp-acct-border) !important;
    vertical-align: middle;
}

body.vp-portal-account-active .woocommerce-MyAccount-content table tbody tr:hover td {
    background: color-mix(in srgb, var(--vp-acct-tint) 40%, #fff);
}

body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-orders-table__cell ul {
    margin: 0;
    padding: 0;
    list-style: none;
    line-height: 1.4;
}

/* Status: the status cell has bare text, status class lives on the row */
body.vp-portal-account-active .woocommerce-orders-table__cell-order-status,
body.vp-portal-account-active td.subscription-status {
    font-size: 13px;
    font-weight: 600;
    color: var(--vp-acct-muted);
}

body.vp-portal-account-active .woocommerce-orders-table__row--status-completed .woocommerce-orders-table__cell-order-status,
body.vp-portal-account-active .woocommerce-orders-table__row--status-processing .woocommerce-orders-table__cell-order-status,
body.vp-portal-account-active .woocommerce-orders-table__row--status-active .woocommerce-orders-table__cell-order-status {
    color: var(--vp-acct-brand);
}

body.vp-portal-account-active .woocommerce-orders-table__row--status-on-hold .woocommerce-orders-table__cell-order-status,
body.vp-portal-account-active .woocommerce-orders-table__row--status-pending .woocommerce-orders-table__cell-order-status {
    color: #b45309;
}

body.vp-portal-account-active .woocommerce-orders-table__row--status-cancelled .woocommerce-orders-table__cell-order-status,
body.vp-portal-account-active .woocommerce-orders-table__row--status-failed .woocommerce-orders-table__cell-order-status,
body.vp-portal-account-active .woocommerce-orders-table__row--status-refunded .woocommerce-orders-table__cell-order-status {
    color: #64748b;
}

/* ---------- Forms ---------- */

body.vp-portal-account-active .woocommerce-MyAccount-content input.input-text,
body.vp-portal-account-active .woocommerce-MyAccount-content input[type="text"],
body.vp-portal-account-active .woocommerce-MyAccount-content input[type="email"],
body.vp-portal-account-active .woocommerce-MyAccount-content input[type="tel"],
body.vp-portal-account-active .woocommerce-MyAccount-content input[type="password"],
body.vp-portal-account-active .woocommerce-MyAccount-content textarea,
body.vp-portal-account-active .woocommerce-MyAccount-content select,
body.vp-portal-account-active .woocommerce-MyAccount-content .select2-container .select2-selection--single {
    padding: 10px 14px !important;
    border: 1px solid var(--vp-acct-border) !important;
    border-radius: var(--vp-acct-radius) !important;
    background: #fff !important;
    color: var(--vp-acct-ink) !important;
    font-family: var(--vp-acct-sans);
    font-size: 15px;
    box-shadow: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

body.vp-portal-account-active .woocommerce-MyAccount-content .select2-container .select2-selection--single {
    height: auto !important;
}

body.vp-portal-account-active .woocommerce-MyAccount-content input:focus,
body.vp-portal-account-active .woocommerce-MyAccount-content textarea:focus,
body.vp-portal-account-active .woocommerce-MyAccount-content select:focus,
body.vp-portal-account-active .woocommerce-MyAccount-content .select2-container--focus .select2-selection--single {
    outline: none;
    border-color: var(--vp-acct-brand) !important;
    box-shadow: 0 0 0 4px var(--vp-acct-ring) !important;
}

body.vp-portal-account-active .woocommerce-MyAccount-content label {
    color: var(--vp-acct-ink);
    font-weight: 600;
    font-size: 14px;
}

body.vp-portal-account-active .woocommerce-MyAccount-content fieldset {
    margin: 1.5rem 0;
    padding: 1.25rem;
    border: 1px solid var(--vp-acct-border);
    border-radius: var(--vp-acct-radius);
}

body.vp-portal-account-active .woocommerce-MyAccount-content fieldset legend {
    padding: 0 0.5rem;
    color: var(--vp-acct-brand);
    font-weight: 700;
}

/* ---------- Addresses: two cards side by side ---------- */

body.vp-portal-account-active .woocommerce-MyAccount-content .u-columns.addresses {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
    float: none;    /* undo style.css .col2-set float:left */
    width: auto;    /* undo style.css .col2-set width:50%  */
    clear: both;
}

body.vp-portal-account-active .woocommerce-MyAccount-content .u-columns.addresses:before,
body.vp-portal-account-active .woocommerce-MyAccount-content .u-columns.addresses:after {
    display: none;
}

body.vp-portal-account-active .woocommerce-MyAccount-content .u-columns.addresses > .u-column1,
body.vp-portal-account-active .woocommerce-MyAccount-content .u-columns.addresses > .u-column2,
/* Single address with no .u-columns wrapper (shipping disabled/billing-only) */
body.vp-portal-account-active .woocommerce-MyAccount-content > .woocommerce-Address {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    border: 1px solid var(--vp-acct-border);
    border-radius: var(--vp-acct-radius);
    overflow: hidden;
}

body.vp-portal-account-active .woocommerce-MyAccount-content > .woocommerce-Address {
    max-width: 36rem;
}

body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-Address .woocommerce-Address-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--vp-acct-tint);
}

body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-Address .woocommerce-Address-title:before,
body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-Address .woocommerce-Address-title:after {
    display: none;
}

body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-Address .woocommerce-Address-title h2,
body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-Address .woocommerce-Address-title h3 {
    margin: 0;
    padding: 0;
    font-size: 16px;
}

body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-Address .woocommerce-Address-title .edit {
    float: none;
    color: var(--vp-acct-brand) !important;
    font-weight: 600;
}

body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-Address address {
    padding: 1rem;
    font-style: normal;
    line-height: 1.6;
}

/* ---------- My Courses ---------- */

/* Strip Divi Builder chrome inside the account card.
   The My Courses page content renders through the builder:
   .et_pb_section > .et_pb_row > .et_pb_column > .et_pb_module */
body.vp-portal-account-active .woocommerce-MyAccount-content .et_pb_section,
body.vp-portal-account-active .woocommerce-MyAccount-content .et_pb_row,
body.vp-portal-account-active .woocommerce-MyAccount-content .et_pb_column,
body.vp-portal-account-active .woocommerce-MyAccount-content .et_pb_module,
body.vp-portal-account-active .woocommerce-MyAccount-content .et_pb_text_inner {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

/* Sensei shortcode list: reset default bullets, card each item */
body.vp-portal-account-active #sensei-user-courses ul.course-container,
body.vp-portal-account-active #my-courses ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.vp-portal-account-active #sensei-user-courses ul.course-container > li,
body.vp-portal-account-active #my-courses .course-container > article,
body.vp-portal-account-active .wp-block-sensei-lms-learner-courses .wp-block-sensei-lms-learner-courses__courses-list__item {
    margin: 0 0 1rem !important;
    padding: 1.25rem !important;
    background: #fff;
    border: 1px solid var(--vp-acct-border);
    border-radius: var(--vp-acct-card-radius);
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.05);
    list-style: none !important;
}

body.vp-portal-account-active #sensei-user-courses ul.course-container > li:before {
    display: none !important;
    content: none !important;
}

/* Sensei info/notice boxes inside the list ("no courses" message etc.) */
body.vp-portal-account-active #sensei-user-courses .sensei-message,
body.vp-portal-account-active .woocommerce-MyAccount-content .sensei-message {
    border: 1px solid var(--vp-acct-border) !important;
    box-shadow: inset 4px 0 0 var(--vp-acct-brand) !important;
    border-left: 1px solid var(--vp-acct-border) !important;
    border-radius: var(--vp-acct-radius) !important;
    background: var(--vp-acct-tint) !important;
    color: var(--vp-acct-ink) !important;
    padding: 1rem 1.25rem !important;
    font-family: var(--vp-acct-sans) !important;
}

body.vp-portal-account-active #sensei-user-courses .sensei-message,
body.vp-portal-account-active .woocommerce-MyAccount-content .sensei-message {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 1.25rem !important;
    background: var(--vp-acct-tint) !important;
}

/* Remove Sensei's notice icon chrome — the tinted box + accent border
   carry the meaning on their own */
body.vp-portal-account-active #sensei-user-courses .sensei-message:before,
body.vp-portal-account-active .woocommerce-MyAccount-content .sensei-message:before {
    content: "\24d8" !important;          /* ⓘ circled info */
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    float: none !important;
    width: 1.4rem !important;
    height: 1.4rem !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: var(--vp-acct-brand) !important;
    font-family: var(--vp-acct-sans) !important;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1;
    flex: 0 0 auto;
}

body.vp-portal-account-active #sensei-user-courses .sensei-message a,
body.vp-portal-account-active .woocommerce-MyAccount-content .sensei-message a {
    margin-left: auto;
    flex: 0 0 auto;
}

body.vp-portal-account-active #sensei-user-courses .sensei-message a,
body.vp-portal-account-active .woocommerce-MyAccount-content .sensei-message a {
    color: var(--vp-acct-brand) !important;
    font-weight: 600;
}

/* Progress meters */
body.vp-portal-account-active #sensei-user-courses .meter,
body.vp-portal-account-active .woocommerce-MyAccount-content .meter,
body.vp-portal-account-active .wp-block-sensei-lms-learner-courses .sensei-progress-bar__bar {
    background: var(--vp-acct-tint) !important;
    border-radius: 999px !important;
    overflow: hidden;
}

body.vp-portal-account-active #sensei-user-courses .meter > span,
body.vp-portal-account-active .woocommerce-MyAccount-content .meter > span,
body.vp-portal-account-active .wp-block-sensei-lms-learner-courses .sensei-progress-bar__progress {
    background: var(--vp-acct-btn) !important;
    border-radius: 999px !important;
}

/* All / Active / Completed filter links styled like the tab bar */
body.vp-portal-account-active #user-course-status-toggle,
body.vp-portal-account-active .wp-block-sensei-lms-learner-courses__filter {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    margin: 0 0 1.25rem !important;
    padding: 0.25rem !important;
    background: var(--vp-acct-bar);
    border-radius: var(--vp-acct-radius);
}

body.vp-portal-account-active #user-course-status-toggle a,
body.vp-portal-account-active .wp-block-sensei-lms-learner-courses__filter a {
    padding: 0.6rem 0.9rem !important;
    border-radius: calc(var(--vp-acct-radius) - 0.2rem);
    color: rgba(255, 255, 255, 0.85) !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    font-family: var(--vp-acct-tab-font);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    text-decoration: none !important;
}

body.vp-portal-account-active #user-course-status-toggle a:hover,
body.vp-portal-account-active .wp-block-sensei-lms-learner-courses__filter a:hover {
    color: var(--vp-acct-accent) !important;
}

body.vp-portal-account-active #user-course-status-toggle a.active,
body.vp-portal-account-active .wp-block-sensei-lms-learner-courses__filter a.active,
body.vp-portal-account-active .wp-block-sensei-lms-learner-courses__filter a[aria-current] {
    color: var(--vp-acct-accent) !important;
    background: color-mix(in srgb, var(--vp-acct-brand) 22%, var(--vp-acct-bar));
}

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

@media (max-width: 1119px) {
    body.vp-portal-account-active .vp-account-band__inner {
        width: 90%;
        padding: 1.25rem 0;
    }
}

@media (max-width: 768px) {
    body.vp-portal-account-active .woocommerce-MyAccount-content {
        padding: 1.25rem;
    }

    body.vp-portal-account-active .woocommerce-MyAccount-content .u-columns.addresses {
        grid-template-columns: 1fr;
    }

    /* WooCommerce shop_table_responsive stacks rows below 768px */
    body.vp-portal-account-active .woocommerce-MyAccount-content table.shop_table_responsive tbody tr {
        display: block;
        border-top: 1px solid var(--vp-acct-border);
    }

    body.vp-portal-account-active .woocommerce-MyAccount-content table.shop_table_responsive tbody td {
        border-top: 0 !important;
    }

    body.vp-portal-account-active .woocommerce-MyAccount-content table.shop_table_responsive tbody td:before {
        color: var(--vp-acct-muted);
        font-size: 12px;
        text-transform: uppercase;
        letter-spacing: 0.04em;
    }
}

body.vp-portal-account-active .vp-account-shell {
    width: 96%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

/* ---------- Catalog / product pages ---------- */

/* Woo breadcrumbs land inside the card — keep them quiet */
body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-breadcrumb {
    margin: 0 0 1rem;
    padding: 0;
    color: var(--vp-acct-muted);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-breadcrumb a {
    color: var(--vp-acct-brand);
}

/* Product grid */
body.vp-portal-account-active .woocommerce-MyAccount-content ul.products {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
    gap: 1.25rem;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

body.vp-portal-account-active .woocommerce-MyAccount-content ul.products li.product {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 1rem !important;
    border: 1px solid var(--vp-acct-border);
    border-radius: var(--vp-acct-card-radius);
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.05);
    text-align: center;
}

body.vp-portal-account-active .woocommerce-MyAccount-content ul.products li.product img {
    border-radius: var(--vp-acct-radius);
    margin-bottom: 0.75rem;
}

body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-loop-product__title,
body.vp-portal-account-active .woocommerce-MyAccount-content .product_title {
    color: var(--vp-acct-ink) !important;
    font-family: var(--vp-acct-display);
    font-weight: 600;
    font-size: 1.05rem;
    padding: 0 !important;
}

body.vp-portal-account-active .woocommerce-MyAccount-content .price,
body.vp-portal-account-active .woocommerce-MyAccount-content .price .amount {
    color: var(--vp-acct-brand) !important;
    font-weight: 700;
}

body.vp-portal-account-active .woocommerce-MyAccount-content .onsale {
    background: var(--vp-acct-btn) !important;
    border-radius: 999px !important;
    min-height: 0;
    padding: 0.35rem 0.8rem;
    line-height: 1.2;
}

/* Single product layout helpers */
body.vp-portal-account-active .woocommerce-MyAccount-content div.product .summary {
    font-family: var(--vp-acct-sans);
}

body.vp-portal-account-active .woocommerce-MyAccount-content div.product form.cart .quantity input {
    padding: 10px 8px !important;
    border: 1px solid var(--vp-acct-border) !important;
    border-radius: var(--vp-acct-radius) !important;
}

/* Sensei course archive items (courses-overview) */
body.vp-portal-account-active .woocommerce-MyAccount-content article.course,
body.vp-portal-account-active .woocommerce-MyAccount-content .course-container article.course {
    margin: 0 0 1rem !important;
    padding: 1.25rem !important;
    background: #fff;
    border: 1px solid var(--vp-acct-border);
    border-radius: var(--vp-acct-card-radius);
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.05);
}

/* ---------- Single course: lessons list ---------- */

body.vp-portal-account-active .course-lessons {
    margin: 0 0 1.5rem;
    font-family: var(--vp-acct-sans);
}

/* "Lessons" section header */
body.vp-portal-account-active .course-lessons > header h2,
body.vp-portal-account-active article.course > header h2 {
    font-family: var(--vp-acct-sans);
    font-size: 1.1rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    margin: 0 0 1rem;
    padding: 0 0 0.5rem;
    border-bottom: 1px solid var(--vp-acct-border);
    color: var(--vp-acct-bar);
}

/* Lesson cards: flex row with thumbnail left, no float weirdness */
body.vp-portal-account-active .course-lessons article.lesson {
    display: flex;
    align-items: center;
    gap: 1rem;
}

body.vp-portal-account-active .course-lessons article.lesson > a {
    flex: 0 0 auto;
    line-height: 0;
}

body.vp-portal-account-active .course-lessons article.lesson img {
    float: none !important;
    margin: 0 !important;
}

body.vp-portal-account-active .course-lessons .lesson-title {
    flex: 1 1 auto;
}

body.vp-portal-account-active .course-lessons .lesson-title h2 {
    font-family: var(--vp-acct-sans);
    font-size: 1rem;
    font-weight: 600;
    margin: 0;
    padding: 0;
    border: 0;
}

body.vp-portal-account-active .course-lessons .lesson-title h2 a {
    color: var(--vp-acct-brand) !important;
    text-decoration: none;
}

body.vp-portal-account-active .course-lessons .lesson-title h2 a:hover {
    color: var(--vp-acct-btn) !important;
}

body.vp-portal-account-active .course-lessons .lesson-meta {
    margin: 0.25rem 0 0;
    font-size: 0.85rem;
    color: #64748b;
}

/* ---------- Single course: prev/next navigation ---------- */

body.vp-portal-account-active .post-entries {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin: 1.5rem 0 0;
    padding: 1rem 0 0;
    border-top: 1px solid var(--vp-acct-border);
    font-family: var(--vp-acct-sans);
}

body.vp-portal-account-active .post-entries .nav-prev,
body.vp-portal-account-active .post-entries .nav-next {
    float: none !important;
    width: auto !important;
}

body.vp-portal-account-active .post-entries a {
    display: inline-block;
    padding: 0.6rem 1.1rem;
    background: var(--vp-acct-tint);
    border: 1px solid var(--vp-acct-border);
    border-radius: var(--vp-acct-radius);
    color: var(--vp-acct-brand) !important;
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none !important;
    transition: background 0.15s ease, color 0.15s ease;
}

body.vp-portal-account-active .post-entries a:hover {
    background: var(--vp-acct-brand);
    color: #fff !important;
}

/* ---------- Archive: Sensei pagination ---------- */

body.vp-portal-account-active .sensei-pagination {
    margin: 1.5rem 0 0;
    padding: 1rem 0 0;
    border-top: 1px solid var(--vp-acct-border);
    text-align: center;
}

body.vp-portal-account-active .sensei-pagination .page-numbers {
    display: inline-flex;
    gap: 0.35rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

body.vp-portal-account-active .sensei-pagination .page-numbers li {
    margin: 0;
    padding: 0;
}

body.vp-portal-account-active .sensei-pagination a.page-numbers,
body.vp-portal-account-active .sensei-pagination span.page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.2rem;
    height: 2.2rem;
    padding: 0 0.5rem;
    border: 1px solid var(--vp-acct-border);
    border-radius: var(--vp-acct-radius);
    background: #fff;
    color: var(--vp-acct-brand) !important;
    font-family: var(--vp-acct-sans);
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none !important;
}

body.vp-portal-account-active .sensei-pagination a.page-numbers:hover {
    background: var(--vp-acct-tint);
}

body.vp-portal-account-active .sensei-pagination span.page-numbers.current {
    background: var(--vp-acct-brand);
    border-color: var(--vp-acct-brand);
    color: #fff !important;
}

body.vp-portal-account-active .sensei-pagination span.page-numbers.dots {
    border: 0;
    background: transparent;
}

/* ---------- Single course: attached media + meta ---------- */

body.vp-portal-account-active #attached-media h2 {
    font-family: var(--vp-acct-sans);
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 0.5rem;
}

body.vp-portal-account-active #attached-media ul {
    list-style: none;
    margin: 0 0 1.25rem;
    padding: 0;
}

body.vp-portal-account-active #attached-media li {
    padding: 0.35rem 0;
}

body.vp-portal-account-active #attached-media a {
    color: var(--vp-acct-brand) !important;
    text-decoration: none;
}

body.vp-portal-account-active #attached-media a:hover {
    text-decoration: underline;
}

body.vp-portal-account-active .sensei-breadcrumb {
    margin-top: 1rem;
    font-family: var(--vp-acct-sans);
    font-size: 0.85rem;
}

body.vp-portal-account-active .sensei-breadcrumb a {
    color: var(--vp-acct-brand) !important;
    text-decoration: none;
}

body.vp-portal-account-active .sensei-breadcrumb a:hover {
    text-decoration: underline;
}

/* Course-ordering dropdown: stop it overflowing its toolbar row */
body.vp-portal-account-active select.orderby,
body.vp-portal-account-active .orderby select {
    height: auto !important;
    max-height: 38px;
    padding: 6px 32px 6px 12px !important;   /* right padding keeps text clear of the arrow */
    font-size: 14px;
    line-height: 1.4;
    margin: 0;
    border: 1px solid var(--vp-acct-border) !important;
    border-radius: var(--vp-acct-radius) !important;
    box-sizing: border-box;
}

body.vp-portal-account-active .single_add_to_cart_button del {
    text-decoration: none !important;
    border: 0 !important;
}

body.vp-portal-account-active .single_add_to_cart_button del .amount,
body.vp-portal-account-active .single_add_to_cart_button del span {
    text-decoration: line-through !important;
    text-decoration-color: currentColor;
}

body.vp-portal-account-active .single_add_to_cart_button ins,
body.vp-portal-account-active .single_add_to_cart_button ins .amount,
body.vp-portal-account-active .single_add_to_cart_button ins span {
    text-decoration: none !important;
    border: 0 !important;
}

body.vp-portal-account-active .course-lessons .lesson-title {
    flex: 0 0 auto;            /* was flex: 1 1 auto */
}

body.vp-portal-account-active .course-lessons article.lesson .entry {
    flex: 1 1 auto;
    margin: 0;
}

body.vp-portal-account-active .course-lessons .lesson-title {
    flex: 0 0 auto;            /* was flex: 1 1 auto */
}

body.vp-portal-account-active .course-lessons article.lesson .entry {
    flex: 1 1 auto;
    margin: 0;
}

body.vp-portal-account-active .single_add_to_cart_button,
body.vp-portal-account-active .single_add_to_cart_button .amount,
body.vp-portal-account-active .single_add_to_cart_button del,
body.vp-portal-account-active .single_add_to_cart_button del .amount,
body.vp-portal-account-active .single_add_to_cart_button ins,
body.vp-portal-account-active .single_add_to_cart_button ins .amount {
    color: #fff !important;
}

body.vp-portal-account-active .single_add_to_cart_button .amount {
    padding-right: 5px !important;
}

body.vp-portal-account-active .single_add_to_cart_button del .amount {
    padding-right: 5px !important;
}

body.vp-portal-account-active .single_add_to_cart_button ins .amount {
    padding-right: 0 !important;
}

/* Add to cart */
body.vp-portal-account-active .woocommerce-message,
body.vp-portal-account-active .woocommerce-info,
body.vp-portal-account-active .woocommerce-error {
    border: 1px solid var(--vp-acct-border);
    border-radius: var(--vp-acct-card-radius);
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.05);
    background: #fff;
    color: var(--vp-acct-ink) !important;
    font-family: var(--vp-acct-sans);
    padding: 0.9rem 1.1rem;
    margin: 0 0 1.25rem;
    font-size: 0.95rem;
    line-height: 1.5;
}

/* kill Woo's colored left-border stripe + ::before icon */
body.vp-portal-account-active .woocommerce-message::before,
body.vp-portal-account-active .woocommerce-info::before,
body.vp-portal-account-active .woocommerce-error::before {
    display: none;
}

/* keep a subtle status tint instead */
body.vp-portal-account-active .woocommerce-message { background: #f0fdf4; border-color: #bbf7d0 !important; }
body.vp-portal-account-active .woocommerce-error   { background: #fef2f2; border-color: #fecaca; }
body.vp-portal-account-active .woocommerce-info    { background: var(--vp-acct-tint) !important; }

body.vp-portal-account-active .woocommerce-message a.button.wc-forward,
body.vp-portal-account-active .woocommerce-info a.button.wc-forward,
body.vp-portal-account-active .woocommerce-error a.button.wc-forward {
    display: inline-block;
    margin-left: 0.75rem;
    padding: 0.45rem 0.9rem;
    border-radius: var(--vp-acct-radius);
    background: var(--vp-acct-btn) !important;
    color: #fff !important;
    font-weight: 600;
    font-size: 0.85rem;
    border: 0 !important;
    text-decoration: none;
}

body.vp-portal-account-active .vp-account-tabs > li {
    flex: 1 1 0;               /* equal-width tabs */
}

body.vp-portal-account-active .vp-account-tabs > li > a {
    justify-content: center;
}

/* billing/shipping columns side by side */
body.vp-portal-account-active .woocommerce-checkout .col2-set {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
}

body.vp-portal-account-active .woocommerce-checkout .col2-set .col-1,
body.vp-portal-account-active .woocommerce-checkout .col2-set .col-2 {
    float: none !important;
    width: auto !important;
    flex: 1 1 320px;
    padding: 0 !important;
}

/* order review + payment box */
body.vp-portal-account-active .woocommerce-checkout-review-order,
body.vp-portal-account-active #payment {
    border: 1px solid var(--vp-acct-border);
    border-radius: var(--vp-acct-card-radius);
    background: #fff;
    padding: 1.25rem;
}

body.vp-portal-account-active #payment {
    background: var(--vp-acct-tint);
    border-radius: var(--vp-acct-radius);
}

/* place-order button -> portal button style */
body.vp-portal-account-active #place_order {
    width: 100%;
    padding: 0.9rem 1.5rem !important;
    border: 0 !important;
    border-radius: var(--vp-acct-radius) !important;
    background: var(--vp-acct-btn) !important;
    color: #fff !important;
    font-weight: 600 !important;
    font-family: var(--vp-acct-sans);
}

/* out-specify style.css's #post-4698 notice rules */
body.vp-portal-account-active #post-4698 .woocommerce-message,
body.vp-portal-account-active #post-4698 .woocommerce-info,
body.vp-portal-account-active #post-4698 ul.woocommerce-error {
    background: #f0fdf4 !important;
    color: var(--vp-acct-ink) !important;
    border: 1px solid #bbf7d0;
    border-radius: var(--vp-acct-card-radius);
    padding: 0.9rem 1.1rem;
    font-family: var(--vp-acct-sans);
    font-size: 0.95rem;
    line-height: 1.5;
}

body.vp-portal-account-active #post-4698 .woocommerce-info {
    background: var(--vp-acct-tint) !important;
    border-color: var(--vp-acct-border);
}

body.vp-portal-account-active #post-4698 ul.woocommerce-error {
    background: #fef2f2 !important;
    border-color: #fecaca;
}

body.vp-portal-account-active #post-4698 .woocommerce-info a,
body.vp-portal-account-active #post-4698 .woocommerce-message a,
body.vp-portal-account-active #post-4698 .woocommerce-error a {
    color: var(--vp-acct-brand) !important;
    text-decoration: underline;
    font-weight: 600;
}

/* style.css also has a GLOBAL .woocommerce-message[role=alert] rule —
   out-specify it too (affects "added to cart" everywhere) */
body.vp-portal-account-active .woocommerce-message[role=alert],
body.vp-portal-account-active #post-4698 .woocommerce-message[role=alert] {
    background: #f0fdf4 !important;
    color: var(--vp-acct-ink) !important;
}

/* beat .woocommerce div.product form.cart .button (0,4,0) with (0,6,0) */
body.vp-portal-account-active .woocommerce div.product form.cart
button.single_add_to_cart_button,
body.vp-portal-account-active div.product form.cart
button.single_add_to_cart_button {
    background: var(--vp-acct-btn) !important;
    float: none !important;
    width: auto;
    max-width: 100% !important;
    text-transform: none !important;
}

/* breadcrumb */
body.vp-portal-account-active .woocommerce .woocommerce-breadcrumb,
body.vp-portal-account-active .woocommerce-breadcrumb {
    font-family: var(--vp-acct-sans) !important;
    font-size: 0.85rem !important;
    color: var(--vp-acct-muted) !important;
}

body.vp-portal-account-active .woocommerce-breadcrumb a {
    color: var(--vp-acct-brand) !important;
    text-decoration: none;
}

/* ---------- Empty-state notices (no orders / no subscriptions) ---------- */

/* Turn the Woo info strip into a neutral empty-state card.
   Scoping to .woocommerce-MyAccount-content keeps real info notices
   (checkout, order-received, etc.) on the existing tinted style. */
body.vp-portal-account-active .woocommerce-MyAccount-content p.no_subscriptions,
body.vp-portal-account-active .woocommerce-MyAccount-content .woocommerce-info[role=status] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.9rem;
    padding: 2.25rem 1.5rem;
    background: #f8fafc !important;
    border: 1px dashed #cbd5e1;
    border-radius: var(--vp-acct-card-radius);
    color: var(--vp-acct-muted) !important;
    font-size: 1rem;
    text-align: center;
}

/* ---------- Empty-state notices (no orders / no subscriptions) ---------- */

/* Neutral empty-state card. `p.no_subscriptions` is unique to the WCS
   empty state; `:has(.woocommerce-Button)` isolates "info notice that
   contains a CTA" (the empty-orders box) from plain info notices —
   checkout's coupon prompt etc. only contain .showcoupon links. */
body.vp-portal-account-active p.no_subscriptions,
body.vp-portal-account-active .woocommerce-info[role=status]:has(.woocommerce-Button) {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.9rem;
    padding: 2.25rem 1.5rem;
    background: #f8fafc !important;   /* !important: survives .woocommerce-message[role=alert] leftovers */
    border: 1px dashed #cbd5e1 !important;
    border-radius: var(--vp-acct-card-radius);
    color: var(--vp-acct-muted) !important;
    font-size: 1rem;
    text-align: center;
}

/* "Browse products" CTA — restore the portal button treatment and make
   it the focal point. */
body.vp-portal-account-active p.no_subscriptions .woocommerce-Button,
body.vp-portal-account-active .woocommerce-info[role=status]:has(.woocommerce-Button) .woocommerce-Button {
    margin: 0;
    padding: 0.7rem 1.4rem !important;
    border: 0 !important;
    border-radius: var(--vp-acct-radius) !important;
    background: var(--vp-acct-btn) !important;
    color: #fff !important;
    font-family: var(--vp-acct-sans) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    box-shadow: 0 4px 12px rgba(59, 47, 214, 0.25);
}

body.vp-portal-account-active p.no_subscriptions .woocommerce-Button:hover,
body.vp-portal-account-active .woocommerce-info[role=status]:has(.woocommerce-Button) .woocommerce-Button:hover {
    filter: brightness(1.08);
    box-shadow: 0 6px 16px rgba(59, 47, 214, 0.3);
}

/* ---------- View-subscription Actions row ---------- */

/* The td containing action buttons: flex column so stacked buttons get
   breathing room. :has() targets the cell regardless of which actions
   WCS decides to show (cancel / change_address / suspend / reactivate). */
body.vp-portal-account-active table.subscription_details td:has(a.woocommerce-button) {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
}

/* Keep the buttons their natural width instead of stretching to the cell. */
body.vp-portal-account-active table.subscription_details td:has(a.woocommerce-button) a.woocommerce-button {
    margin: 0;
    width: auto;
}

/* Space between the notice/intro line and the address cards */
body.vp-portal-account-active .woocommerce-MyAccount-content .u-columns.addresses,
body.vp-portal-account-active .woocommerce-MyAccount-content > .woocommerce-Address {
    margin-top: 1.5rem !important;
}

body.vp-portal-account-active #sensei-user-courses .meter,
body.vp-portal-account-active .woocommerce-MyAccount-content .meter,
body.vp-portal-account-active .wp-block-sensei-lms-learner-courses .sensei-progress-bar__bar {
    background: var(--vp-acct-tint) !important;
    border-radius: 999px !important;
    overflow: hidden;
}

body.vp-portal-account-active #sensei-user-courses .meter > span,
body.vp-portal-account-active .woocommerce-MyAccount-content .meter > span,
body.vp-portal-account-active .wp-block-sensei-lms-learner-courses .sensei-progress-bar__progress {
    background: var(--vp-acct-btn) !important;
    border-radius: 999px !important;
}

/* Sensei wrapper (.fullwidth is capped at 1080px in style.css) is too
   narrow for the tab bar — let the shell reach its own 96%/1200px. */
body.vp-portal-account-active #main.fullwidth {
    width: 100%;
    max-width: none;
}

body.vp-portal-account-active .woocommerce-MyAccount-content .status.completed,
body.vp-portal-account-active .woocommerce-MyAccount-content .lesson-status.complete {
    background: var(--vp-acct-btn) !important;   /* brand gradient */
    color: #fff !important;
    border: 0 !important;
    border-radius: var(--vp-acct-radius);
}