.commerce-body { background:#fbfdfc; color:var(--f-navy,#0e1b35); }
.commerce-body .topbar { background:#fff!important; border-bottom:1px solid #e4ece8!important; }
.commerce-body.site-header-light-text .topbar :is(.site-brand,.site-brand:hover,.topbar-navigation-link),.commerce-body .topbar :is(.site-brand,.topbar-navigation-link) { color:#536075!important; text-shadow:none!important; }
.commerce-body.site-header-light-text .topbar .topbar-navigation-link.active { color:#00866e!important; }
.commerce-body .site-main { width:100%; max-width:none; padding:0; }
.commerce-body.site-header-overlay .site-main>.commerce-shell { margin-top:0!important; padding-top:28px!important; }
.commerce-shell { --commerce-green:var(--academy-blue-ink,#0076a8); --commerce-mint:var(--academy-blue-soft,#eaf8fe); --commerce-ink:var(--f-navy,#0e1b35); --commerce-border:var(--f-border,#e5e5df); max-width:1200px; margin:0 auto; padding:28px 24px 72px; font-size:15px; line-height:1.9; }
.commerce-shell * { box-sizing:border-box; }
.commerce-shell h1,.commerce-shell h2,.commerce-shell h3,.commerce-shell p { margin-top:0; }
.commerce-shell a { color:var(--commerce-green); text-underline-offset:4px; }
.commerce-nav { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:24px; padding:5px; background:#eef3f5; border-radius:15px; width:fit-content; }
.commerce-nav a { color:#526371; padding:8px 18px; text-decoration:none; border-radius:11px; font-weight:700; }
.commerce-nav a[aria-current],.commerce-nav a:hover { background:white; color:var(--commerce-green); box-shadow:0 2px 5px #10213e08; }
.commerce-heading { margin:26px 0 30px; max-width:800px; }
.commerce-heading h1 { font-size:clamp(25px,3.7vw,39px); line-height:1.65; letter-spacing:-.5px; margin:8px 0 12px; }
.commerce-heading p { color:#586e7b; max-width:720px; }
.commerce-heading-compact h1 { font-size:clamp(25px,3vw,33px); }
.commerce-eyebrow { display:inline-block; color:var(--commerce-green); font-size:13px; font-weight:700; }
.commerce-panel,.commerce-pack { background:#fff; border:1px solid var(--commerce-border); border-radius:20px; padding:26px; margin-bottom:22px; box-shadow:0 5px 0 #e5e7e4; }
.commerce-panel h2 { font-size:19px; margin-bottom:20px; }
.commerce-packs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:24px 0; }
.commerce-pack { margin:0; padding:25px; display:flex; align-items:flex-start; flex-direction:column; transition:border-color .2s,transform .2s; }
.commerce-pack:hover { border-color:#8fd8c1; transform:translateY(-3px); }
.commerce-pack h2 { font-size:17px; margin:16px 0 4px; }
.commerce-pack-symbol { width:47px; height:47px; display:grid; place-items:center; background:var(--commerce-mint); color:var(--commerce-green); border-radius:14px; }
.commerce-key { width:27px; height:27px; display:block; }
.commerce-pack-count { color:#5c6d7a; margin-bottom:16px; }
.commerce-pack-count strong { font-size:32px; line-height:1.4; color:var(--commerce-ink); }
.commerce-discount-area { display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end; gap:5px; min-height:65px; width:100%; margin-bottom:9px; }
.commerce-discount-badge { display:inline-flex; align-items:center; gap:4px; width:fit-content; padding:2px 9px; border-radius:8px; background:var(--commerce-mint); color:var(--commerce-green); font-size:12px; font-weight:700; line-height:1.8; white-space:nowrap; }
.commerce-comparison-price { display:flex; align-items:baseline; flex-wrap:wrap; gap:2px 8px; margin:0; color:#6c7c85; font-size:12px; }
.commerce-comparison-label { font-size:11px; }
.commerce-comparison-price s { white-space:nowrap; text-decoration-thickness:1px; }
.commerce-price { display:flex; align-items:baseline; gap:6px; margin-bottom:0; white-space:nowrap; }
.commerce-price b { font-size:26px; letter-spacing:-.5px; }
.commerce-price span { color:#5c6d7a; font-size:13px; }
.commerce-pack-savings { min-height:25px; margin:2px 0 0; color:var(--commerce-green); font-size:12px; }
.commerce-money { white-space:nowrap; }
.commerce-visually-hidden { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.commerce-pack .commerce-button { width:100%; margin-top:15px; }
.commerce-pack small { width:100%; text-align:center; color:#6c7c85; font-size:11px; margin-top:12px; }
.commerce-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; background:var(--commerce-green); color:#fff!important; border:1px solid var(--commerce-green); border-radius:13px; padding:11px 20px; font:inherit; font-weight:700; text-decoration:none!important; cursor:pointer; min-height:47px; text-align:center; box-shadow:0 4px 0 #00516f; }
.commerce-button:hover { background:#006b93; border-color:#006b93; }
.commerce-button:disabled,.commerce-button:disabled:hover { background:#e9eef1; border-color:#d8e1e6; color:#657986!important; box-shadow:none; cursor:not-allowed; }
.commerce-payment-steps { max-width:720px; margin-inline:auto; }
.commerce-actions.commerce-payment-actions { flex-direction:column; align-items:stretch; }
.commerce-payment-actions .commerce-button,.commerce-payment-actions form { width:100%; }
.commerce-payment-actions>p { text-align:center; margin:0; }
.commerce-payment-actions>a:not(.commerce-button) { align-self:center; }
.commerce-button-secondary { color:var(--commerce-ink)!important; background:#fff; border-color:var(--commerce-border); box-shadow:none; }
.commerce-button-secondary:hover { background:#edf8f3; border-color:#9bd8c6; }
.commerce-shell :is(a,button,input):focus-visible { outline:3px solid #65cdb0; outline-offset:4px; }
.commerce-muted { font-size:13px; color:#617682; }
.commerce-balance-line { display:flex; flex-wrap:wrap; gap:12px; align-items:center; color:#617682; font-size:14px; }
.commerce-balance-line strong { color:var(--commerce-green); }
.commerce-balance-line a { margin-inline-start:auto; }
.commerce-notice { background:#f2f8f6; border:1px solid #d7e7df; border-radius:14px; padding:15px 18px; margin:16px 0 22px; font-size:13px; }
.commerce-notice p { margin:5px 0 0; color:#536a72; }
.commerce-notice strong { color:#244c41; }
.commerce-three { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.commerce-three p { color:#617682; font-size:13px; margin-top:10px; margin-bottom:0; }
.commerce-empty { grid-column:1/-1; max-width:none; text-align:center; padding:40px 24px; }
.commerce-empty p { color:#617682; max-width:600px; margin-inline:auto; }
.commerce-steps { display:flex; list-style:none; padding:0; margin:0 0 24px; gap:10px; color:#6b7d84; font-size:13px; }
.commerce-steps li { padding:7px 12px; border-radius:10px; }
.commerce-steps li[aria-current] { background:var(--commerce-mint); color:var(--commerce-green); font-weight:700; }
.commerce-steps .is-complete { color:var(--commerce-green); }
.commerce-two-columns { display:grid; grid-template-columns:1fr 1fr; gap:22px; align-items:start; }
.commerce-summary { margin:0 0 20px; }
.commerce-summary>div { display:flex; justify-content:space-between; align-items:baseline; gap:20px; padding:13px 0; border-bottom:1px solid #edf1ef; }
.commerce-summary dt { color:#617682; font-size:13px; }
.commerce-summary dd { margin:0; font-size:15px; text-align:left; overflow-wrap:anywhere; }
.commerce-summary dd.commerce-money { flex-shrink:0; overflow-wrap:normal; }
.commerce-summary-savings dt { display:flex; align-items:center; flex-wrap:wrap; gap:5px 8px; }
.commerce-summary-savings dd { color:var(--commerce-green); }
.commerce-summary .commerce-total { margin-top:8px; border:0; font-weight:700; }
.commerce-total dd { color:var(--commerce-green); font-size:20px; }
.commerce-check { display:flex; align-items:flex-start; gap:10px; font-size:13px; margin:18px 0 22px; cursor:pointer; }
.commerce-check input { flex:0 0 auto; margin:5px 0 0; width:20px; height:20px; accent-color:var(--commerce-green); }
.commerce-form .commerce-button { width:100%; }
.commerce-form .commerce-muted { margin:15px 0 0; }
.commerce-error,.commerce-field-error { color:#9c2d37; background:#fff1f1; padding:12px 15px; border-radius:12px; font-size:13px; margin-bottom:15px; }
.commerce-error ul,.commerce-field-error ul { margin:0; padding:0 17px 0 0; }
.commerce-receipt,.commerce-purchase-panel { max-width:720px; margin:0 auto 24px; }
.commerce-receipt h1 { font-size:27px; line-height:1.75; margin:15px 0 12px; }
.commerce-receipt>p { color:#617682; }
.commerce-status { display:inline-block; background:#eef3f1; color:#536a72; padding:5px 10px; border-radius:9px; font-size:12px; font-weight:700; }
.commerce-status-success { background:#e6f7ee; color:#007a52; }
.commerce-status-warning { background:#fff2e6; color:#996025; }
.commerce-order-id { font-size:12px!important; }
.commerce-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top:26px; }
.commerce-actions form { margin:0; }
.commerce-back { display:block; margin-top:20px; width:fit-content; font-size:13px; }
.commerce-ai-offer { padding:20px; border:1px solid #b8e6d6; background:#f3fbf7; border-radius:15px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; margin-bottom:18px; }
.commerce-ai-offer span { color:var(--commerce-green); font-weight:700; }
.commerce-wallet-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.commerce-wallet-card { display:flex; flex-direction:column; align-items:flex-start; }
.commerce-wallet-card h2 { margin-top:14px; margin-bottom:12px; }
.commerce-big-number { font-size:39px; line-height:1.5; margin-bottom:17px; font-weight:700; }
.commerce-big-number small { font-size:14px; font-weight:400; color:#617682; }
.commerce-wallet-card .commerce-muted { margin:15px 0 0; }
.commerce-meter { height:9px; border-radius:20px; background:#e8f2ee; width:100%; overflow:hidden; }
.commerce-meter span { display:block; height:100%; background:#12b98b; border-radius:inherit; }
.commerce-wallet-card .commerce-button-secondary { margin-top:auto; }
.commerce-section-title { display:flex; justify-content:space-between; gap:12px; align-items:baseline; }
.commerce-history-row { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; border-top:1px solid #edf1ef; padding:16px 0; font-size:13px; }
.commerce-history-row strong { font-size:14px; }
.commerce-history-row>div { min-width:0; overflow-wrap:anywhere; }
.commerce-history-row time { color:#74858e; display:block; font-size:11px; margin-top:3px; }
.commerce-history-deltas { display:flex; gap:12px; font-weight:700; color:var(--commerce-green); }
.commerce-history-deltas span { font-size:11px; font-weight:400; }
.commerce-order-link { text-decoration:none; color:var(--commerce-ink)!important; }
.commerce-order-link:hover { background:#f5faf7; }
.commerce-view-receipt { color:var(--commerce-green); font-size:12px; }
.commerce-empty-copy { color:#617682; margin:0; padding:18px 0 5px; font-size:14px; }
.commerce-policy { max-width:850px; margin-inline:auto; padding:35px; }
.commerce-policy h1 { font-size:30px; margin:12px 0 28px; }
.commerce-policy h2 { font-size:18px; margin:28px 0 12px; }
.commerce-policy p { color:#4d6573; font-size:14px; line-height:2.15; }
.commerce-footer { display:flex; justify-content:center; flex-wrap:wrap; gap:12px 24px; padding:25px 0 0; border-top:1px solid var(--commerce-border); margin-top:35px; font-size:12px; }
.commerce-footer a { color:#617682; }
@media(max-width:760px) { .commerce-packs { grid-template-columns:1fr; gap:14px; } .commerce-pack { display:grid; grid-template-columns:auto minmax(0,1fr); gap:0 18px; align-items:center; } .commerce-pack-symbol { grid-row:1/3; } .commerce-pack h2 { margin:0; } .commerce-pack-count { margin:0; } .commerce-pack .commerce-discount-area,.commerce-pack .commerce-price,.commerce-pack>.commerce-pack-savings,.commerce-pack>.commerce-muted,.commerce-pack>.commerce-button,.commerce-pack>small { grid-column:1/-1; } .commerce-discount-area { margin-top:16px; } .commerce-price { margin-top:0; } .commerce-two-columns { grid-template-columns:1fr; gap:0; } .commerce-three { grid-template-columns:1fr; gap:20px; } .commerce-wallet-grid { grid-template-columns:1fr; gap:0; } }
@media(max-width:480px) { .commerce-shell { padding:18px 16px 85px; font-size:14px; } .commerce-heading { margin:22px 0; } .commerce-nav { width:100%; gap:0; margin-bottom:20px; } .commerce-nav a { flex:1; text-align:center; padding:8px 4px; font-size:12px; } .commerce-panel,.commerce-pack { padding:20px; border-radius:19px; } .commerce-steps { font-size:11px; gap:0; justify-content:space-between; } .commerce-steps li { padding:5px; } .commerce-summary>div { gap:14px; } .commerce-summary dd { font-size:14px; } .commerce-receipt h1 { font-size:23px; } .commerce-actions { align-items:stretch; } .commerce-actions .commerce-button,.commerce-actions form { width:100%; } .commerce-actions form button { width:100%; } .commerce-history-row { gap:10px; } .commerce-history-deltas { width:100%; } .commerce-policy h1 { font-size:25px; } .commerce-policy { padding:23px; } .commerce-footer { gap:12px 18px; } }
@media(max-width:480px) { .commerce-summary>.commerce-summary-price { flex-wrap:wrap; gap:6px 14px; } .commerce-summary-price dt { flex:1 1 125px; } .commerce-summary-price dd { margin-inline-start:auto; } }
@media(prefers-reduced-motion:reduce) { .commerce-pack { transition:none; } .commerce-pack:hover { transform:none; } }

/* One shared heading and one plan summary; avoid nested duplicate cards. */
.commerce-assistant-heading { grid-template-columns:auto minmax(0,1fr); gap:18px; max-width:none; margin:18px 0 28px; --chapter-accent:#00b894; }
.commerce-assistant-heading .catalog-heading-copy { min-width:0; }
.commerce-assistant-heading .catalog-heading-copy h1 { margin:0 0 8px; line-height:1.6; }
.commerce-assistant-heading .catalog-heading-copy p { line-height:1.9; max-width:760px; margin-bottom:0; }
.commerce-assistant-symbol.featured-course-icon { width:80px; height:80px; }
.commerce-assistant-symbol.featured-course-icon i { width:80px; }
.commerce-assistant-symbol.featured-course-icon b { width:62px; height:62px; border-radius:20px; }
.commerce-assistant-symbol svg { display:block; width:38px; height:38px; }
.commerce-assistant-layout { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(265px,.8fr); gap:22px; align-items:start; }
.commerce-assistant-plan { min-width:0; }
.commerce-assistant-offer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px 18px; padding-bottom:18px; margin-bottom:18px; border-bottom:1px solid #edf1ef; }
.commerce-assistant-offer h2 { margin:0; font-size:clamp(19px,2vw,24px); line-height:1.7; }
.commerce-assistant-price { flex:none; color:var(--commerce-green); font-size:13px; white-space:nowrap; }
.commerce-assistant-price b { font-size:25px; }
.commerce-plan-footnote { margin:22px 0 0; padding-top:18px; border-top:1px solid #edf1ef; }
.commerce-assistant-status h2 { margin:0 0 16px; }
.commerce-assistant-status .commerce-status { margin-bottom:8px; }
.commerce-assistant-status .commerce-summary { margin:12px 0 0; }
.commerce-assistant-status .commerce-summary>div { flex-wrap:wrap; gap:5px 14px; }
.commerce-assistant-status .commerce-summary dd { font-size:13px; }
.commerce-assistant-status .commerce-summary:last-child>div:last-child { border-bottom:0; padding-bottom:0; }
.commerce-subscription-label { font-size:27px; }
.commerce-activity .commerce-section-title h2 { margin:0; }
.commerce-activity-group { margin-top:20px; }
.commerce-activity-group+.commerce-activity-group { border-top:1px solid var(--commerce-border); padding-top:22px; }
.commerce-activity-group h3 { font-size:14px; margin:0 0 10px; }
.commerce-activity-group .commerce-history-row:last-child { padding-bottom:0; }
.commerce-activity>.commerce-empty-copy { padding:10px 0 0; }
.commerce-packs-footnote { margin:0 0 24px; }
.commerce-explainer .commerce-three { grid-template-columns:repeat(4,minmax(0,1fr)); }
.commerce-explainer>.commerce-muted { margin:20px 0 0; }
.commerce-explainer>.commerce-muted+.commerce-muted { margin-top:8px; }
@media(max-width:900px) {
  .commerce-explainer .commerce-three { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
  .commerce-assistant-layout { grid-template-columns:minmax(0,1fr); gap:18px; }
  .commerce-assistant-status { grid-row:1; margin-bottom:0; }
  .commerce-assistant-heading { gap:12px; margin-bottom:22px; }
  .commerce-assistant-heading .catalog-heading-copy h1 { font-size:1.55rem; }
  .commerce-assistant-symbol.featured-course-icon { width:64px; height:74px; }
  .commerce-assistant-symbol.featured-course-icon b { width:52px; height:52px; border-radius:16px; }
  .commerce-assistant-symbol.featured-course-icon i { width:68px; height:3px; }
  .commerce-assistant-symbol svg { width:33px; height:33px; }
  .commerce-pack .commerce-pack-symbol { grid-row:auto; }
  .commerce-pack h2 { font-size:20px; }
  .commerce-activity>.commerce-section-title { flex-wrap:wrap; }
}
@media(max-width:480px) {
  .commerce-explainer .commerce-three { grid-template-columns:minmax(0,1fr); gap:16px; }
}
