/* MyoMed's shared learner experience. Product accents remain product-owned.
   Load after the application's existing styles; no framework migration. */
:root {
  --mm-page: 78rem;
  --mm-reading: 68ch;
  --mm-gutter: clamp(1rem, 3vw, 2.5rem);
  --mm-title: clamp(1.5rem, 1.15rem + 1.2vw, 2rem);
  --mm-hero: clamp(2rem, 1.4rem + 2.5vw, 3.5rem);
  --mm-label: .75rem;
  --mm-small: .875rem;
  --mm-body: 1rem;
  --mm-section: 1.125rem;
  --mm-ink: var(--ink, #222b31);
  --mm-muted: var(--muted, #59636a);
  --mm-line: var(--line, #e2e5e5);
  --mm-paper: var(--card, #fff);
  --mm-canvas: var(--bg, #faf8f6);
  --mm-accent: var(--product-accent, #0e7c86);
  --mm-on-accent: var(--product-accent-ink, #fff);
  --mm-soft: color-mix(in srgb, var(--mm-accent) 7%, var(--mm-paper));
}
html[data-mm-text-size="large"] { font-size: 112.5%; }
html[data-mm-text-size="larger"] { font-size: 125%; }
html[data-mm-width="narrow"] { --mm-reading: 58ch; }
html[data-mm-width="wide"] { --mm-reading: 80ch; }
html[data-mm-spacing="relaxed"] { --leading-body: 1.85; }
html[data-mm-spacing="relaxed"] :is(main p, main li) { line-height: 1.85; letter-spacing: .015em; word-spacing: .06em; }
html[data-mm-contrast="high"] { --muted: #414b50; --line: #7a858b; --mm-muted: #414b50; --mm-line: #7a858b; }
html[data-theme="dark"][data-mm-contrast="high"] { --muted: #d4dbe0; --line: #929ca4; --mm-muted: #d4dbe0; --mm-line: #929ca4; }
html[data-mm-motion="reduced"] *, html[data-mm-motion="reduced"] *::before, html[data-mm-motion="reduced"] *::after {
  animation: none !important; transition: none !important; scroll-behavior: auto !important;
}
body.mm-experience { font-family: var(--font, "Inter", sans-serif); font-size: var(--mm-body); line-height: 1.6; }
.mm-experience :is(h1,h2,h3,p,li,button,a,label,summary) { overflow-wrap: anywhere; }
.mm-experience :is(h1,h2,h3) { letter-spacing: -.025em; text-wrap: balance; }
.mm-experience main h1 { font-size: var(--mm-title); line-height: 1.2; font-weight: 680; }
.mm-experience main h2 { font-size: var(--mm-section); line-height: 1.4; font-weight: 650; color: var(--heading); }
.mm-experience main h3 { font-size: var(--mm-body); line-height: 1.4; font-weight: 650; }
.mm-experience :is(button,.btn,input:not([type="checkbox"]):not([type="radio"]),select,textarea) {
  min-height: 2.75rem; max-width: 100%; font-family: inherit; font-size: var(--mm-small);
}
.mm-experience :is(input,select,textarea) { border-radius: var(--radius-sm); }
.mm-experience input:not([type="checkbox"]):not([type="radio"]), .mm-experience select { width: 100%; }
.mm-experience input[type="checkbox"], .mm-experience input[type="radio"] { width: 1.25rem; height: 1.25rem; flex: 0 0 auto; accent-color: var(--mm-accent); }
.mm-experience :is(button,.btn) { border-radius: var(--radius-sm); font-weight: 600; line-height: 1.4; white-space: normal; text-align: center; }
.mm-experience :is(.btn,.mm-button) { display: inline-flex; align-items: center; justify-content: center; gap: var(--space-2); padding: var(--space-3) var(--space-5); text-decoration: none; }
.mm-experience .btn-primary, .mm-experience .mm-button-primary { background: var(--mm-accent); border: 1px solid var(--mm-accent); color: var(--mm-on-accent); box-shadow: none; }
.mm-experience .btn-primary:hover, .mm-experience .mm-button-primary:hover { background: var(--product-accent-strong); color: var(--mm-on-accent); }
.mm-button { color: var(--mm-ink); background: var(--mm-paper); border: 1px solid var(--mm-line); cursor: pointer; }
.mm-button:hover { background: var(--surface-1); }
.mm-button:disabled { cursor: wait; opacity: .65; }
.mm-experience :focus-visible { outline: 2px solid var(--mm-accent); outline-offset: 4px; }
.mm-experience :is(.card,.panel,.stat,.widget) { border-radius: var(--radius); box-shadow: none; }
.mm-experience :is(.card,.panel,.stat,.widget):hover { transform: none; }
.mm-experience a.card:hover, .mm-experience .card.clickable:hover { border-color: var(--mm-accent); box-shadow: var(--elev-1); }
.mm-experience :is(main,.grid,.card-grid,.home-grid,.card,.panel,.content,.topbar-inner) { min-width: 0; }
.mm-experience .feature-grid { gap: var(--space-4); }
.mm-experience .feature-grid .feature-card { display: flex; flex-direction: column; }
.mm-experience .feature-grid :is(.feature-card-art,.feature-card-img,.feature-art) { max-height: 8rem; object-fit: contain; }
.mm-experience .feature-grid img { object-fit: contain; }
.mm-experience .hero { background: var(--mm-paper); color: var(--mm-ink); border: 1px solid var(--mm-line); border-radius: var(--radius-lg); padding: clamp(1.5rem, 4vw, 3rem); }
.mm-experience .hero :is(h1,h2,p,strong) { color: inherit; }
.mm-experience .hero h1 { max-width: 20ch; margin: var(--space-3) 0 var(--space-5); }
.mm-experience .hero p { max-width: var(--mm-reading); margin: 0 0 var(--space-6); line-height: 1.7; }
.mm-experience .hero .btn-secondary, .mm-experience .hero .btn-ghost {
  color: var(--mm-ink); background: var(--mm-paper); border: 1px solid var(--mm-line); opacity: 1;
}
.mm-experience .hero .btn-secondary:hover, .mm-experience .hero .btn-ghost:hover { background: var(--surface-1); }
.mm-experience .hero .hero-lockup { width: min(16rem, 100%); height: auto; margin-bottom: var(--space-6); border-radius: var(--radius-sm); }
.mm-experience .hero .actions, .mm-experience .hero .hero-actions { display: flex; flex-wrap: wrap; gap: var(--space-3); margin: var(--space-6) 0 0 !important; }
.mm-kicker { display: block; margin-bottom: var(--space-3); color: var(--mm-accent); font-size: var(--mm-label); font-weight: 650; letter-spacing: .1em; text-transform: uppercase; }
.mm-muted { color: var(--mm-muted); }
.mm-eyebrow-row, .mm-section-heading { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); flex-wrap: wrap; }
.mm-section-heading { margin: var(--space-8) 0 var(--space-4); }
.mm-section-heading h2, .mm-section-heading p { margin: 0; }
.mm-pill { display: inline-flex; align-items: center; gap: var(--space-2); padding: var(--space-1) var(--space-3); border: 1px solid var(--mm-line); border-radius: var(--radius-pill); font-size: var(--mm-label); color: var(--mm-muted); background: var(--mm-paper); }
.mm-workspace { width: 100%; max-width: var(--mm-page); margin-inline: auto; padding: var(--space-6) var(--mm-gutter) 0; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-4); }
.mm-workspace p { margin: 0; font-size: var(--mm-small); color: var(--mm-muted); }
.mm-workspace strong { color: var(--mm-ink); font-weight: 600; }
.mm-context { display: flex; align-items: center; gap: var(--space-3); min-width: 0; }
.mm-context::before { content: ""; width: .5rem; height: .5rem; border-radius: var(--radius-pill); background: var(--mm-accent); flex: 0 0 auto; }
.mm-context span { display: block; font-size: var(--mm-label); color: var(--mm-muted); }
.mm-workspace-actions { display: flex; flex: 0 0 auto; align-items: center; gap: var(--space-2); }
.mm-workspace-actions a, .mm-workspace-actions button { min-height: 2.75rem; }
.mm-quiet-button { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; gap: var(--space-1); padding: var(--space-2) var(--space-3); font-size: var(--mm-small); color: var(--mm-ink); border: 1px solid var(--mm-line); border-radius: var(--radius-sm); background: var(--mm-paper); text-decoration: none; cursor: pointer; white-space: nowrap; overflow-wrap: normal; }
.mm-quiet-button:hover { background: var(--surface-1); }
.mm-primary-nav { display: flex; flex-shrink: 0; align-items: center; gap: var(--space-1); }
.mm-primary-nav a { flex-shrink: 0; min-height: 2.75rem; padding: var(--space-3); display: flex; align-items: center; gap: var(--space-2); color: var(--mm-muted); font-size: var(--mm-small); font-weight: 550; text-decoration: none; border-radius: var(--radius-sm); white-space: nowrap; overflow-wrap: normal; }
.mm-primary-nav a:hover { color: var(--mm-ink); background: var(--surface-1); }
.mm-primary-nav a[aria-current="page"] { color: var(--mm-accent); background: var(--mm-soft); font-weight: 650; }
.mm-primary-nav svg { width: 1.125rem; height: 1.125rem; flex: 0 0 auto; }
.mm-bottom-nav { display: none; }
.mm-experience.mm-learner { padding-left: 0; }
.mm-experience.mm-learner .app-sidebar,
.mm-experience.mm-learner .sidebar { display: none !important; }
.mm-experience.mm-learner .burger { display: none !important; }
.mm-experience.mm-learner .topbar .main-nav, .mm-experience.mm-learner .topbar .nav-toggle { display: none !important; }
.mm-experience.mm-learner .topbar { padding-inline: 0; padding-bottom: 0; }
.mm-experience.mm-learner .topbar-inner { max-width: var(--mm-page); padding: var(--space-3) var(--mm-gutter); gap: var(--space-3); margin: 0 auto; flex-wrap: wrap; width: 100%; flex: 1; }
.mm-experience.mm-learner .topbar .brand { flex: 0 1 auto; max-width: 13rem; min-width: 0; padding: 0; border: 0; }
.mm-experience.mm-learner .topbar .brand :is(img,.brand-logo) { max-width: 10.5rem; height: 2.75rem; object-fit: contain; }
.mm-experience.mm-learner .topbar .brand img.brand-mark { width: 2.75rem; }
.mm-experience.mm-learner .topbar .brand :is(.brand-tag,.brand-sub,.brand-subtitle,small) { display: none; }
.mm-experience.mm-learner .topbar .brand .brand-name { font-size: var(--mm-small); }
.mm-experience.mm-learner .topbar-right { margin-left: auto; gap: var(--space-2); }
.mm-experience.mm-learner .topbar-right :is(.network-menu,.session-timer,.theme-toggle,.notif-wrap) { display: none; }
.mm-experience.mm-learner :is(.view,main#main) { width: 100%; max-width: var(--mm-page); margin-inline: auto; padding: var(--space-6) var(--mm-gutter) var(--space-12); }
.mm-experience.mm-learner :is(.view,.footer,.review-banner,#review-banner) { grid-column: 1 / -1; margin-left: 0; }
.mm-experience.mm-learner .sidebar > nav:not(.mm-primary-nav), .mm-experience.mm-learner .sidebar .sidebar-net { display: none; }
.mm-experience.mm-learner .sidebar .mm-primary-nav { flex-direction: column; align-items: stretch; padding: var(--space-4) var(--space-3); }
.mm-experience.mm-learner .sidebar { width: 13.5rem; flex-basis: 13.5rem; }
.mm-experience.mm-learner .sidebar .brand { padding: var(--space-6) var(--space-4); }
.mm-experience.mm-learner .sidebar .brand img { max-height: 2.75rem; width: 100%; object-fit: contain; }
.mm-experience.mm-learner .topbar-search { min-width: 0; max-width: 32rem; }
.mm-experience.mm-learner .topbar-search input { min-width: 0; text-overflow: clip; background: var(--mm-paper); color: var(--mm-ink); }
.mm-experience.mm-learner .topbar-net { display: none; }
.mm-experience.mm-learner .hero { display: block; }
.mm-experience .hero p.mm-rescue-preview { margin: var(--space-5) 0 0; font-size: var(--mm-small); }
.mm-path-steps li::before { flex: 0 0 auto; white-space: nowrap; }
.mm-experience[data-mm-product="company"] .hero-home h1 { font-size: var(--mm-hero); max-width: 24ch; }
.mm-experience[data-mm-product="company"] .hero-home .slogan { color: var(--mm-muted); font-weight: 500; font-size: var(--mm-body); }
.mm-rad-intro { padding: clamp(1.5rem,4vw,3rem); border: 1px solid var(--mm-line); border-radius: var(--radius-lg); background: var(--mm-paper); }
.mm-rad-intro h1 { margin: var(--space-3) 0 var(--space-5); }
.mm-rad-intro > p:not(.job-jump) { max-width: var(--mm-reading); margin: 0 0 var(--space-5); color: var(--mm-muted); }
.mm-experience.mm-learner .foot, .mm-experience.mm-learner .footer { font-size: var(--mm-small); margin-top: var(--space-8); }
.mm-experience .mm-learning-path { margin: var(--space-6) 0; padding: var(--space-6); border: 1px solid var(--mm-line); background: var(--mm-paper); border-radius: var(--radius); }
.mm-path-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--space-6); margin: var(--space-5) 0 0; padding: 0; list-style: none; counter-reset: learning; }
.mm-path-steps li { display: flex; align-items: flex-start; gap: var(--space-3); margin: 0; counter-increment: learning; }
.mm-path-steps li::before { content: "0" counter(learning); color: var(--mm-accent); font-size: var(--mm-label); font-variant-numeric: tabular-nums; padding-top: var(--space-1); }
.mm-path-steps a { color: var(--mm-ink); font-size: var(--mm-small); font-weight: 600; }
.mm-path-steps p { margin: var(--space-1) 0 0; color: var(--mm-muted); font-size: var(--mm-small); }
.mm-hub-head { margin-bottom: var(--space-8); }
.mm-hub-head h1 { margin: 0 0 var(--space-4); }
.mm-hub-head p { max-width: var(--mm-reading); color: var(--mm-muted); margin: 0; }
.mm-hub-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-top: 1px solid var(--mm-line); }
.mm-hub-link { min-width: 0; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: var(--space-2) var(--space-4); padding: var(--space-6) var(--space-4); border-bottom: 1px solid var(--mm-line); color: var(--mm-ink); text-decoration: none; }
.mm-hub-link:nth-child(odd) { border-right: 1px solid var(--mm-line); }
.mm-hub-link:hover { background: var(--mm-soft); text-decoration: none; }
.mm-hub-link strong { font-weight: 650; color: var(--heading); }
.mm-hub-link p { grid-column: 1; margin: 0; color: var(--mm-muted); font-size: var(--mm-small); }
.mm-hub-link span { grid-column: 2; grid-row: 1 / 3; align-self: center; color: var(--mm-accent); }
.mm-note { display: block; padding: var(--space-4) var(--space-5); background: var(--surface-1); border: 1px solid var(--mm-line); border-radius: var(--radius-sm); color: var(--mm-muted); font-size: var(--mm-small); }
.mm-note a { text-decoration: underline; }
.mm-account { max-width: var(--mm-page); margin: 0 auto; padding: var(--space-8) var(--mm-gutter) var(--space-12); }
.mm-account-title { margin-bottom: var(--space-8); }
.mm-account-title h1 { margin: var(--space-2) 0; }
.mm-account-title p { margin: 0; color: var(--mm-muted); }
.mm-account-layout { display: grid; grid-template-columns: 14rem minmax(0,1fr); gap: var(--space-10); align-items: start; }
.mm-account-sidebar { position: sticky; top: 6rem; }
.mm-field { display: grid; gap: var(--space-2); font-size: var(--mm-small); color: var(--mm-ink); font-weight: 550; min-width: 0; }
.mm-field small { color: var(--mm-muted); font-weight: 400; font-size: var(--mm-label); }
.mm-field input, .mm-field select, .mm-field textarea { min-width: 0; padding: var(--space-3); background: var(--input-bg, var(--mm-paper)); color: var(--mm-ink); border: 1px solid var(--mm-line); border-radius: var(--radius-sm); font-weight: 400; }
.mm-account-nav { display: grid; gap: var(--space-1); margin-top: var(--space-4); }
.mm-account-nav a { display: block; padding: var(--space-3); border-radius: var(--radius-sm); min-height: 2.75rem; text-decoration: none; color: var(--mm-muted); font-size: var(--mm-small); }
.mm-account-nav a[aria-current="page"] { color: var(--mm-accent); background: var(--mm-soft); font-weight: 650; }
.mm-account-nav a:hover { background: var(--surface-1); color: var(--mm-ink); }
.mm-account-content { min-width: 0; }
.mm-account-content > h2 { margin: 0 0 var(--space-2); font-size: var(--mm-title); }
.mm-account-content > p { color: var(--mm-muted); margin-bottom: var(--space-6); max-width: var(--mm-reading); }
.mm-settings-card { background: var(--mm-paper); border: 1px solid var(--mm-line); border-radius: var(--radius); padding: clamp(1.25rem, 3vw, 2rem); margin-bottom: var(--space-5); min-width: 0; }
.mm-settings-card > h3 { margin: 0 0 var(--space-3); }
.mm-settings-card > p { margin: var(--space-2) 0 var(--space-5); color: var(--mm-muted); font-size: var(--mm-small); max-width: var(--mm-reading); }
.mm-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--space-5); margin-block: var(--space-5); }
.mm-form-grid .mm-full { grid-column: 1 / -1; }
.mm-checkbox { display: flex; align-items: flex-start; gap: var(--space-3); min-height: 2.75rem; padding-block: var(--space-3); font-size: var(--mm-small); cursor: pointer; }
.mm-checkbox input { margin-top: .15rem; }
.mm-checkbox small { display: block; color: var(--mm-muted); margin-top: var(--space-1); }
.mm-form-actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3); border-top: 1px solid var(--mm-line); padding-top: var(--space-5); margin-top: var(--space-6); }
.mm-status { color: var(--mm-muted); font-size: var(--mm-small); overflow-wrap: anywhere; }
.mm-status[data-error="true"] { color: var(--bad); }
.mm-status:empty { display: none; }
.mm-account-summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--space-4); }
.mm-summary-item { padding: var(--space-5); border: 1px solid var(--mm-line); border-radius: var(--radius); background: var(--mm-paper); min-width: 0; }
.mm-summary-item strong { display: block; font-size: var(--mm-body); margin-block: var(--space-2); overflow-wrap: anywhere; }
.mm-summary-item > span { color: var(--mm-muted); font-size: var(--mm-label); }
.mm-summary-item a { display: inline-flex; align-items: center; min-height: 2.75rem; font-size: var(--mm-small); text-decoration: underline; }
.mm-settings-preview { background: var(--mm-soft); border-radius: var(--radius-sm); padding: var(--space-5); margin-block: var(--space-5); }
.mm-settings-preview h3 { margin: 0 0 var(--space-2); }
.mm-settings-preview p { margin: 0; max-width: var(--mm-reading); }
.mm-definition-list { margin: 0; }
.mm-definition-list > div { display: grid; grid-template-columns: 10rem minmax(0,1fr); gap: var(--space-4); padding-block: var(--space-3); border-bottom: 1px solid var(--mm-line); font-size: var(--mm-small); }
.mm-definition-list dt { color: var(--mm-muted); }
.mm-definition-list dd { margin: 0; overflow-wrap: anywhere; }
.mm-session { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: var(--space-3); padding-block: var(--space-4); border-bottom: 1px solid var(--mm-line); }
.mm-session p { margin: 0; font-size: var(--mm-small); }
.mm-session small { color: var(--mm-muted); display: block; overflow-wrap: anywhere; }
.mm-receipts { width: 100%; border-collapse: collapse; font-size: var(--mm-small); }
.mm-receipts th, .mm-receipts td { text-align: left; padding: var(--space-3); border-bottom: 1px solid var(--mm-line); }
.mm-receipts th { color: var(--mm-muted); font-weight: 550; }
.mm-table-scroll { overflow-x: auto; max-width: 100%; }
.mm-install-dialog { color: var(--mm-ink); background: var(--mm-paper); border: 1px solid var(--mm-line); border-radius: var(--radius-lg); width: min(31rem,calc(100vw - 2rem)); max-height: calc(100dvh - 2rem); padding: var(--space-6); overflow-y: auto; box-shadow: var(--elev-4); }
.mm-install-dialog::backdrop { background: rgb(10 22 30 / .55); }
.mm-install-dialog h2 { margin: var(--space-3) 0; font-size: var(--mm-title); }
.mm-install-dialog p, .mm-install-dialog li { color: var(--mm-muted); font-size: var(--mm-small); }
.mm-install-dialog ol { padding-left: var(--space-6); margin-block: var(--space-6); }
.mm-install-dialog li { margin-bottom: var(--space-3); }
.mm-install-dialog .mm-form-actions { justify-content: flex-end; }
.mm-update-notice { position: relative; z-index: 11; padding: var(--space-3) var(--mm-gutter); color: var(--mm-ink); background: var(--mm-soft); border-bottom: 1px solid var(--mm-line); display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: var(--space-3); font-size: var(--mm-small); }
.mm-experience [hidden] { display: none !important; }
.mm-experience[data-mm-product="foundations"] { --mm-accent: #15803d; --mm-on-accent: #fff; --mm-soft:color-mix(in srgb,var(--mm-accent) 5%,var(--mm-paper)); }
html[data-theme="dark"] .mm-experience[data-mm-product="foundations"] { --mm-accent: #4ade80; --mm-on-accent: #052e16; }
.mm-experience[data-mm-product="foundations"] :is(.fa-hero,.prehealth-hero) { padding: var(--space-6); background: var(--mm-paper); color: var(--mm-ink); border: 1px solid var(--mm-line); border-radius: var(--radius); }
.mm-experience[data-mm-product="foundations"] :is(.fa-hero,.prehealth-hero) :is(h1,p,strong) { color: var(--mm-ink); }
.mm-experience[data-mm-product="foundations"] :is(.fa-hero-logo,.fa-logo,.ph-hero-logo,.prehealth-logo) { max-width: 18rem; max-height: 8rem; object-fit: contain; }
html[data-mm-density="compact"] .mm-hub-link, html[data-mm-density="compact"] .mm-settings-card { padding: var(--space-4); }
html[data-mm-density="compact"] .mm-form-grid { gap: var(--space-3); }
@media (max-width: 1100px) {
  .mm-experience.mm-learner .topbar-inner { gap: var(--space-3); }
  .mm-primary-nav a { padding-inline: var(--space-3); }
  .mm-primary-nav a svg { display: none; }
}
@media (max-width: 900px) {
  .mm-experience.mm-learner .topbar .mm-primary-nav { display: none; }
  .mm-bottom-nav { display: flex; position: fixed; inset: auto 0 0; z-index: 12; align-items: stretch; justify-content: space-around; gap: 0; padding: var(--space-2) var(--space-2) max(var(--space-2),env(safe-area-inset-bottom)); border-top: 1px solid var(--mm-line); background: var(--mm-paper); }
  .mm-bottom-nav a { flex: 1; justify-content: center; flex-direction: column; gap: var(--space-1); padding: var(--space-2) var(--space-1); font-size: var(--mm-label); min-width: 0; }
  .mm-bottom-nav a svg { display: block; width: 1.125rem; height: 1.125rem; }
  .mm-experience.mm-learner { padding-bottom: calc(5rem + env(safe-area-inset-bottom)); }
  .mm-experience.mm-learner .sidebar { display: none !important; }
  .mm-experience.mm-learner .topbar #menu-toggle { display: none; }
  .mm-experience.mm-learner .topbar { position: sticky; top: 0; }
  .mm-experience.mm-learner .topbar-search { max-width: none; }
  .mm-account-layout { grid-template-columns: 1fr; gap: var(--space-6); }
  .mm-account-sidebar { position: static; }
  .mm-account-nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: var(--space-1); padding-bottom: var(--space-4); border-bottom: 1px solid var(--mm-line); }
  .mm-account-nav a { border: 1px solid var(--mm-line); font-size: var(--mm-label); }
}
@media (max-width: 600px) {
  .mm-workspace { align-items: flex-start; padding-top: var(--space-4); gap: var(--space-2); }
  .mm-workspace-actions { width: 100%; gap: var(--space-2); }
  .mm-workspace-actions > :is(a,button) { flex: 1 0 auto; }
  .mm-workspace-actions .mm-install-label { display: none; }
  .mm-workspace-actions button[data-pwa-install] { font-size: var(--mm-label); padding-inline: var(--space-2); }
  .mm-workspace-actions a { font-size: var(--mm-label); padding-inline: var(--space-2); }
  .mm-workspace .mm-context { gap: var(--space-2); }
  .mm-context strong { font-size: var(--mm-small); }
  .mm-context span { font-size: var(--mm-label); }
  .mm-path-steps { grid-template-columns: 1fr; gap: var(--space-4); }
  .mm-hub-list, .mm-form-grid, .mm-account-summary { grid-template-columns: 1fr; }
  .mm-hub-link:nth-child(odd) { border-right: 0; }
  .mm-experience.mm-learner .hero { padding: var(--space-6); margin-bottom: var(--space-5); }
  .mm-experience.mm-learner .hero h1 { max-width: none; font-size: var(--mm-title); }
  .mm-experience.mm-learner .hero .hero-lockup { width: 12rem; }
  .mm-experience.mm-learner .topbar .brand { max-width: 11rem; }
  .mm-experience.mm-learner .topbar .brand :is(img,.brand-logo) { max-width: 9rem; }
  .mm-experience.mm-learner .topbar .brand .brand-mark { max-width: 2.5rem; }
  .mm-experience.mm-learner :is(.grid-3,.grid-2,.card-grid,.home-grid,.stats,.stat-row) { grid-template-columns: 1fr; }
  .mm-experience.mm-learner .topbar-search input { font-size: 1rem; }
  .mm-experience[data-mm-product="rescue"] .topbar .brand-switcher,
  .mm-experience[data-mm-product="rescue"] .topbar .brand-name { display: none; }
  .mm-experience[data-mm-product="rescue"] .topbar .brand { flex: 0 0 auto; }
  .mm-definition-list > div { grid-template-columns: 1fr; gap: var(--space-1); }
  .mm-session { grid-template-columns: 1fr; }
  .mm-session button { justify-self: start; }
  .mm-form-actions { align-items: stretch; }
  .mm-form-actions .mm-status { flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .mm-experience *, .mm-experience *::before, .mm-experience *::after { scroll-behavior: auto !important; }
}
@media (display-mode: standalone) {
  .mm-experience .topbar { padding-top: env(safe-area-inset-top); }
  .mm-experience .mm-workspace { padding-left: max(var(--mm-gutter),env(safe-area-inset-left)); padding-right: max(var(--mm-gutter),env(safe-area-inset-right)); }
}
@media print {
  .mm-primary-nav,.mm-workspace,.mm-bottom-nav,.mm-account-sidebar,.mm-update-notice,[data-pwa-install] { display: none !important; }
  .mm-account-layout { display: block; }
}

/* Account-center components share the same paper, ink and product accents. */
.mm-workspace { grid-column: 1 / -1; }
.mm-account-header { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--space-6); padding-block:var(--space-8); margin-bottom:var(--space-5); border-bottom:1px solid var(--mm-line); }
.mm-account-header > div:first-child { flex:1 1 22rem; min-width:0; }
.mm-account-title-row { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:var(--space-3); }
.mm-account-header h1 { margin:var(--space-2) 0 var(--space-3); font-size:var(--mm-title); }
.mm-account-header p { color:var(--mm-muted); margin:0; max-width:var(--mm-reading); }
.mm-account-identity { display:flex; align-items:center; gap:var(--space-3); min-width:0; }
.mm-account-identity > div { min-width:0; }
.mm-account-identity strong,.mm-account-identity span:not(.mm-avatar) { display:block; font-size:var(--mm-small); overflow-wrap:anywhere; }
.mm-account-identity span:not(.mm-avatar) { color:var(--mm-muted); }
.mm-avatar { width:2.75rem; height:2.75rem; display:grid; place-items:center; background:var(--mm-soft); color:var(--mm-accent); border:1px solid var(--mm-line); border-radius:50%; font-weight:650; flex:0 0 auto; }
.mm-settings-nav { position:sticky; top:6rem; min-width:0; }
.mm-mobile-setting { display:none; }
.mm-settings-nav nav { display:grid; gap:var(--space-1); margin:var(--space-4) 0; }
.mm-settings-nav nav a { display:flex; align-items:center; min-height:2.75rem; padding:var(--space-3); font-size:var(--mm-small); border-radius:var(--radius-sm); color:var(--mm-muted); text-decoration:none; }
.mm-settings-nav nav a:hover { color:var(--mm-ink); background:var(--surface-1); }
.mm-settings-nav nav a[aria-current="page"] { color:var(--mm-accent); background:var(--mm-soft); font-weight:650; }
.mm-settings-panel { min-width:0; }
.mm-panel-heading { margin-bottom:var(--space-6); }
.mm-panel-heading h2 { font-size:var(--mm-title); margin:0 0 var(--space-3); }
.mm-panel-heading p { margin:0; color:var(--mm-muted); font-size:var(--mm-small); }
.mm-setting-card { background:var(--mm-paper); border:1px solid var(--mm-line); border-radius:var(--radius); padding:clamp(1.25rem,3vw,2rem); margin-bottom:var(--space-5); min-width:0; }
.mm-setting-card > p { margin:var(--space-3) 0; }
.mm-setting-title { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:var(--space-2); margin-bottom:var(--space-4); }
.mm-setting-title h2 { font-size:var(--mm-body); margin:0; color:var(--mm-ink); }
.mm-scope { font-size:var(--mm-label); color:var(--mm-muted); }
.mm-setting-card p { max-width:var(--mm-reading); font-size:var(--mm-small); color:var(--mm-muted); }
.mm-button { display:inline-flex; align-items:center; justify-content:center; gap:var(--space-2); min-height:2.75rem; max-width:100%; padding:var(--space-3) var(--space-4); border:1px solid var(--mm-line); border-radius:var(--radius-sm); background:var(--mm-paper); color:var(--mm-ink); font:550 var(--mm-small)/1.5 var(--font); text-align:center; text-decoration:none; cursor:pointer; white-space:normal; overflow-wrap:anywhere; }
.mm-button:hover { background:var(--surface-1); color:var(--mm-ink); text-decoration:none; }
.mm-button-primary { background:var(--mm-accent); color:var(--mm-on-accent); border-color:var(--mm-accent); }
.mm-button-primary:hover { background:var(--product-accent-strong,var(--teal-hover)); color:var(--mm-on-accent); }
.mm-button:disabled { opacity:.65; cursor:not-allowed; }
.mm-save-status,.mm-form-message { font-size:var(--mm-small); color:var(--mm-muted); overflow-wrap:anywhere; }
.mm-save-status[role="alert"] { color:var(--bad); }
.mm-check { display:flex; align-items:flex-start; gap:var(--space-3); font-size:var(--mm-small); padding-block:var(--space-3); cursor:pointer; }
.mm-check input { width:1.25rem; height:1.25rem; min-height:1.25rem; margin:var(--space-1) 0 0; flex:0 0 auto; }
.mm-reading-preview { background:var(--surface-1); border:1px solid var(--mm-line); padding:var(--space-5); border-radius:var(--radius-sm); margin-block:var(--space-5); }
.mm-reading-preview h3 { margin:var(--space-2) 0; }
.mm-account-facts { margin:0; }
.mm-account-facts > div { display:grid; grid-template-columns:minmax(8rem,1fr) minmax(0,2fr); gap:var(--space-3); padding-block:var(--space-3); border-bottom:1px solid var(--mm-line); font-size:var(--mm-small); }
.mm-account-facts dt { color:var(--mm-muted); }
.mm-account-facts dd { margin:0; overflow-wrap:anywhere; }
.mm-session-list { margin:0 0 var(--space-4); padding:0; list-style:none; }
.mm-session-list li { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:var(--space-3); padding-block:var(--space-4); border-bottom:1px solid var(--mm-line); }
.mm-session-list li > div { flex:1 1 14rem; min-width:0; }
.mm-session-list :is(strong,span,small) { display:block; font-size:var(--mm-small); overflow-wrap:anywhere; }
.mm-session-list :is(span,small) { color:var(--mm-muted); }
.mm-sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.mm-experience .foundations-logo.hub { width:12rem; max-width:70%; height:auto; max-height:5.5rem; object-fit:contain; object-position:left center; margin-bottom:var(--space-5); }
.mm-experience .feature-card-media { display:none; }
.mm-experience .feature-card { padding:var(--space-6); border-top:2px solid var(--product-accent,var(--teal)); }
.mm-experience .feature-card .card-title { font-size:var(--mm-body); }
.mm-experience .feature-card .card-sub { margin-top:var(--space-2); font-size:var(--mm-small); line-height:1.7; color:var(--mm-muted); }
.mm-experience[data-mm-product="foundations"] { --product-accent:#15803d; --product-accent-ink:#fff; --product-accent-soft:color-mix(in srgb,#15803d 10%,var(--card)); }
html[data-theme="dark"] .mm-experience[data-mm-product="foundations"] { --product-accent:#4ade80; --product-accent-ink:#052e16; }
html[data-mm-density="compact"] .mm-setting-card { padding:var(--space-4); }
@media(max-width:900px) {
  .mm-settings-nav { position:static; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:var(--space-3); }
  .mm-settings-nav > label:first-child,.mm-settings-nav > [data-search-empty] { grid-column:1 / -1; }
  .mm-settings-nav nav { display:none; grid-column:1 / -1; grid-template-columns:repeat(2,minmax(0,1fr)); padding-bottom:var(--space-4); border-bottom:1px solid var(--mm-line); margin:0; }
  .mm-settings-nav[data-mm-searching="true"] nav { display:grid; }
  .mm-settings-nav nav a { border:1px solid var(--mm-line); font-size:var(--mm-label); }
  .mm-settings-nav .mm-mobile-setting { display:grid; grid-column:1 / -1; grid-row:2; }
  .mm-settings-nav[data-mm-searching="true"] .mm-mobile-setting { grid-row:3; }
  .mm-experience #offline-banner {
    bottom:calc(6rem + env(safe-area-inset-bottom));
    width:max-content;
    max-width:calc(100vw - 2 * var(--mm-gutter));
    font-size:var(--mm-small);
  }
}
.mm-pledge { display:grid; gap:var(--space-3, .75rem); margin:1rem 0; padding:0; border:0; min-width:0; }
.mm-pledge > legend, .mm-pledge-tracks > legend { font-weight:650; color:var(--mm-ink, inherit); }
.mm-pledge-lead, .mm-pledge-field, .mm-pledge-accept, .mm-pledge-track { font-size:var(--mm-small, .875rem); font-weight:400; }
.mm-pledge-field, .mm-pledge-accept { display:grid; gap:.35rem; }
.mm-pledge-field input, .mm-pledge-tracks { width:100%; max-width:100%; }
.mm-pledge-optional { color:var(--mm-muted, #59636a); font-weight:400; }
.mm-pledge-tracks { display:grid; gap:.35rem; margin:0; padding:.6rem .75rem; border:1px solid var(--mm-line, #e2e5e5); border-radius:8px; }
.mm-pledge-track, .mm-pledge-accept { display:flex; gap:.5rem; align-items:flex-start; font-weight:400; }
.mm-pledge-track input, .mm-pledge-accept input { width:auto; margin-top:.2rem; flex:0 0 auto; }
.mm-pledge-frame { display:block; width:100%; min-height:16rem; height:40vh; border:1px solid var(--mm-line, #e2e5e5); border-radius:8px; background:#fff; }
.mm-pledge-error { color:var(--bad, #b42318); margin:.5rem 0 0; }
.mm-pledge-actions { margin:1rem 0 0; }
.mm-pledge-backdrop { position:fixed; inset:0; z-index:200; background:rgba(10, 25, 33, .55); display:grid; place-items:center; padding:1rem; }
.mm-pledge-modal { background:var(--card, #fff); color:var(--ink, inherit); width:100%; max-width:40rem; max-height:92vh; overflow:auto; padding:1.5rem 1.6rem; border-radius:14px; box-shadow:0 16px 40px rgba(10, 25, 33, .2); }
.mm-pledge-modal h2 { margin-top:0; }
@media(max-width:600px) {
  .mm-workspace .mm-context span { display:none; }
  html[data-myomed-product="nexgen"] .mm-experience.mm-learner .topbar { display:none; }
  .mm-account-header { padding-block:var(--space-3); gap:var(--space-3); margin-bottom:var(--space-4); }
  .mm-account-header > div > p { display:none; }
  .mm-account-facts > div { grid-template-columns:1fr; gap:var(--space-1); }
  .mm-setting-card { padding:var(--space-5); }
  .mm-save-status { flex-basis:100%; }
}
