/* Generated; edit tokens/ and src/components.css, then run scripts/build_theme.py. */
:where(.mf-theme) {
  --mft-font: Inter, 'Segoe UI', system-ui, sans-serif;
  --mft-space-1: 4px;
  --mft-space-2: 8px;
  --mft-space-3: 12px;
  --mft-space-4: 16px;
  --mft-space-6: 24px;
  --mft-space-8: 32px;
  --mft-radius-control: 8px;
  --mft-radius-panel: 16px;
  --mft-touch-target: 44px;
  --mft-content-width: 1120px;
  --mft-form-width: 720px;
  --mft-body-size: 16px;
  --mft-body-leading: 1.5;
  --mft-warning-bg: #ffffff;
  --mft-warning-text: #111111;
  --mft-warning-border: #b42318;
  --mft-font-mono: ui-monospace, 'Cascadia Code', Consolas, monospace;
  --mft-weight-normal: 400;
  --mft-weight-medium: 500;
  --mft-weight-semibold: 600;
  --mft-weight-bold: 700;
  --mft-text-h1: clamp(2rem, 1.5rem + 2vw, 2.75rem);
  --mft-text-h2: clamp(1.625rem, 1.35rem + 1vw, 2rem);
  --mft-text-h3: 1.5rem;
  --mft-text-h4: 1.25rem;
  --mft-text-h5: 1.0625rem;
  --mft-text-h6: 1rem;
  --mft-text-lead: 1.125rem;
  --mft-text-body: 1rem;
  --mft-text-note: .875rem;
  --mft-text-caption: .75rem;
  --mft-leading-heading: 1.2;
  --mft-leading-body: 1.6;
  --mft-leading-note: 1.5;
  --mft-tracking-heading: -.025em;
  --mft-tracking-eyebrow: .12em;
  --mft-space-5: 20px;
  --mft-space-10: 40px;
  --mft-space-12: 48px;
  --mft-space-16: 64px;
  --mft-radius-small: 4px;
  --mft-radius-pill: 999px;
  --mft-border-width: 1px;
  --mft-icon-small: 16px;
  --mft-icon-medium: 20px;
  --mft-icon-large: 24px;
  --mft-icon-stroke: 1.8;
  --mft-motion-fast: 160ms;
  --mft-motion-normal: 220ms;
  --mft-motion-slow: 4800ms;
  --mft-motion-spin: 1200ms;
  --mft-progress-height: 6px;
  --mft-spinner-size: 24px;
  --mft-spinner-width: 2px;
  --mft-chart-height: 260px;
  --mft-chart-stroke: 3px;
  --mft-modal-width: 560px;
  --mft-reading-width: 68ch;
  --mft-layer-sticky: 10;
  --mft-layer-toast: 30;
  --mft-layer-navigation: 1030;
  --mft-layer-skip-link: 1100;
  --mft-logo-width: 119px;
  --mft-logo-height: 37px;
  --mft-navigation-width: 620px;
  --mft-navigation-target: 56px;
  --mft-navigation-clearance: 104px;
  --mft-navigation-focus-clearance: 112px;
  --mft-backdrop: #07152499;
  --mft-motion-buffer: 2400ms;
  --mft-nav-surface: #102239;
  --mft-nav-text: #ffffff;
  --mft-nav-muted: #b9c9d9;
  --mft-button-surface-top: #1768AA;
  --mft-button-surface-bottom: #11568F;
  --mft-button-surface-foreground: #FFFFFF;
  --mft-button-surface-border: #357FB7;
  --mft-button-surface-topBorder: #78B9E4;
  --mft-button-surface-radiusPx: 12px;
  --mft-button-hover-border: #ACDFFF;
  --mft-button-hover-outerRing: #91CFFF;
  --mft-button-hover-outerRingWidthPx: 1px;
  --mft-button-hover-outerRingBlurPx: 0px;
  --mft-button-hover-sweepMs: 650ms;
  --mft-button-hover-sweepEasing: cubic-bezier(.22,.7,.25,1);
  --mft-button-hover-sweepOpacityMs: 180ms;
  --mft-button-pressed-light-border: #102239;
  --mft-button-pressed-light-outerRing: #102239;
  --mft-button-pressed-dark-border: #EDF6FF;
  --mft-button-pressed-dark-outerRing: #C4E8FF;
  --mft-button-pressed-outerRingWidthPx: 1px;
  --mft-button-pressed-outerRingBlurPx: 0px;
  --mft-button-pressed-transitionMs: 80ms;
  --mft-button-pressed-clickFeedbackMs: 160ms;
  --mft-button-recoveryMs: 220ms;
  --mft-button-geometryTransform: none;
  --mft-button-blur: none;
  --mft-button-referenceGeometry-minHeightPx: 56px;
  --mft-button-referenceGeometry-paddingVerticalPx: 16px;
  --mft-button-referenceGeometry-paddingHorizontalPx: 23px;
  --mft-button-referenceGeometry-labelPx: 14px;
  --mft-button-referenceGeometry-labelWeight: 600;
  --mft-button-focus-light: #146BC4;
  --mft-button-focus-dark: #91C6F5;
  --mft-button-focus-widthPx: 3px;
  --mft-button-focus-offsetPx: 5px;
}
:where(.mf-theme) {
  color-scheme: light;
  --mft-background: #f4f5f7;
  --mft-surface: #ffffff;
  --mft-text: #102239;
  --mft-muted: #526173;
  --mft-line: #d7dce3;
  --mft-field-border: #748296;
  --mft-focus: #146bc4;
  --mft-selected-bg: #e6f3f2;
  --mft-selected-text: #086b68;
  --mft-shadow: 0 2px 8px #1022390a;
  --mft-subtle: #edf0f4;
  --mft-info-bg: #edf5ff;
  --mft-info-text: #174b80;
  --mft-info-border: #3778b5;
  --mft-success-bg: #eef7f2;
  --mft-success-text: #176444;
  --mft-success-border: #328060;
  --mft-attention-bg: #fff6e5;
  --mft-attention-text: #784500;
  --mft-attention-border: #aa6b13;
  --mft-danger-bg: #b42318;
  --mft-danger-text: #ffffff;
  --mft-chart-1: #146bc4;
  --mft-chart-2: #087c78;
  --mft-chart-3: #8253a8;
  --mft-chart-4: #a45e0b;
  --mft-button-pressed-border: #102239;
  --mft-button-pressed-ring: #102239;
  --mft-button-focus: #146BC4;
}
:where(.mf-theme[data-mf-theme="dark"]) {
  color-scheme: dark;
  --mft-background: #0c1727;
  --mft-surface: #14273d;
  --mft-text: #edf6ff;
  --mft-muted: #a5bbd1;
  --mft-line: #354d67;
  --mft-field-border: #7892aa;
  --mft-focus: #91c6f5;
  --mft-selected-bg: #163b40;
  --mft-selected-text: #9ce0d7;
  --mft-shadow: 0 2px 8px #00000020;
  --mft-subtle: #1a3048;
  --mft-info-bg: #19334f;
  --mft-info-text: #badcff;
  --mft-info-border: #6ca8df;
  --mft-success-bg: #153b30;
  --mft-success-text: #b3e8ca;
  --mft-success-border: #65b991;
  --mft-attention-bg: #3c301a;
  --mft-attention-text: #ffe0a1;
  --mft-attention-border: #d9a75a;
  --mft-danger-bg: #ffc2bb;
  --mft-danger-text: #56130d;
  --mft-chart-1: #8dc8ff;
  --mft-chart-2: #75dace;
  --mft-chart-3: #d6b3ff;
  --mft-chart-4: #ffc879;
  --mft-button-pressed-border: #EDF6FF;
  --mft-button-pressed-ring: #C4E8FF;
  --mft-button-focus: #91C6F5;
}
/* Deliberately opt-in. No Bootstrap, body, :root or legacy --mf-* overrides. */
.mf-theme { font-family:var(--mft-font); font-size:var(--mft-body-size); line-height:var(--mft-body-leading); color:var(--mft-text); background:var(--mft-background); }
.mf-theme *, .mf-theme *::before, .mf-theme *::after { box-sizing:border-box; }
.mf-theme .mf-container { width:100%; max-width:var(--mft-content-width); margin-inline:auto; padding:var(--mft-space-6); }
.mf-theme .mf-stack { display:grid; align-content:start; gap:var(--mft-space-4); }
.mf-theme .mf-stack > * { margin-block:0; }
.mf-theme .mf-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); gap:var(--mft-space-6); }
.mf-theme .mf-card { min-width:0; padding:var(--mft-space-6); border:1px solid var(--mft-line); border-radius:var(--mft-radius-panel); background:var(--mft-surface); box-shadow:var(--mft-shadow); }
.mf-theme .mf-muted { color:var(--mft-muted); }
.mf-theme .mf-field { display:grid; gap:var(--mft-space-2); }
.mf-theme .mf-input { width:100%; min-width:0; min-height:var(--mft-touch-target); padding:var(--mft-space-3); border:1px solid var(--mft-field-border); border-radius:var(--mft-radius-control); background:var(--mft-surface); color:var(--mft-text); font:inherit; }
.mf-theme .mf-input[aria-invalid=true] { border-color:var(--mft-danger-bg); }
.mf-theme .mf-warning { padding:var(--mft-space-4); border:1px solid var(--mft-warning-border); border-radius:var(--mft-radius-control); background:var(--mft-warning-bg); color:var(--mft-warning-text); }
.mf-theme .mf-button { position:relative; isolation:isolate; display:inline-flex; align-items:center; justify-content:center; gap:var(--mft-space-3); min-height:var(--mft-button-referenceGeometry-minHeightPx); max-width:100%; padding:var(--mft-button-referenceGeometry-paddingVerticalPx) var(--mft-button-referenceGeometry-paddingHorizontalPx); font:inherit; font-size:var(--mft-button-referenceGeometry-labelPx); font-weight:var(--mft-button-referenceGeometry-labelWeight); border:1px solid var(--mft-line); border-radius:var(--mft-button-surface-radiusPx); background:var(--mft-surface); color:var(--mft-text); text-decoration:none; text-align:center; cursor:pointer; touch-action:manipulation; overflow:hidden; }
.mf-theme .mf-button--primary { border-color:var(--mft-button-surface-border); border-top-color:var(--mft-button-surface-topBorder); color:var(--mft-button-surface-foreground); background:linear-gradient(180deg,var(--mft-button-surface-top),var(--mft-button-surface-bottom)); box-shadow:inset 0 1px 0 #ffffff1c,0 2px 3px #06172520; transition:border-color var(--mft-button-recoveryMs) ease,box-shadow var(--mft-button-recoveryMs) ease; }
.mf-theme .mf-button--primary > * { position:relative; z-index:2; }
.mf-theme .mf-button--primary::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(110deg,transparent 22%,#e3f5ff24 44%,#ffffff30 48%,transparent 72%); background-size:250% 100%; background-position:100% 0; opacity:0; transition:background-position var(--mft-button-hover-sweepMs) var(--mft-button-hover-sweepEasing),opacity var(--mft-button-hover-sweepOpacityMs) ease; }
@media(hover:hover) and (pointer:fine) {
 .mf-theme .mf-button--primary:not(:disabled):not([aria-disabled=true]):hover { border-color:var(--mft-button-hover-border); box-shadow:0 0 0 var(--mft-button-hover-outerRingWidthPx) var(--mft-button-hover-outerRing),0 1px 2px #06172515; }
 .mf-theme .mf-button--primary:not(:disabled):not([aria-disabled=true]):hover::after { background-position:0 0; opacity:1; }
}
.mf-theme .mf-button--primary:not(:disabled):not([aria-disabled=true]):active { border-color:var(--mft-button-pressed-border); box-shadow:inset 0 2px 3px #031e3540,0 0 0 var(--mft-button-pressed-outerRingWidthPx) var(--mft-button-pressed-ring); transition-duration:var(--mft-button-pressed-transitionMs); }
.mf-theme .mf-button--primary:not(:disabled):not([aria-disabled=true]):active::after { opacity:0; transition-duration:var(--mft-button-pressed-transitionMs); }
.mf-theme .mf-button:disabled, .mf-theme .mf-button[aria-disabled=true] { cursor:not-allowed; opacity:.65; }
.mf-theme .mf-button[aria-busy=true] { cursor:wait; }
.mf-theme :is(.mf-button,.mf-input,.mf-link):focus-visible { outline:var(--mft-button-focus-widthPx) solid var(--mft-button-focus); outline-offset:var(--mft-button-focus-offsetPx); }
.mf-theme .mf-link { color:var(--mft-focus); text-underline-offset:3px; }
.mf-theme .mf-table-scroll { max-width:100%; overflow-x:auto; }
.mf-theme .mf-table { width:100%; border-collapse:collapse; text-align:left; }
.mf-theme .mf-table :is(th,td) { padding:var(--mft-space-3); border-bottom:1px solid var(--mft-line); }
.mf-theme .mf-progress { width:100%; height:4px; appearance:none; border:0; border-radius:2px; overflow:hidden; background:var(--mft-line); accent-color:var(--mft-focus); }
.mf-theme .mf-progress::-webkit-progress-bar { background:var(--mft-line); }
.mf-theme .mf-progress::-webkit-progress-value { background:var(--mft-focus); }
.mf-theme .mf-progress::-moz-progress-bar { background:var(--mft-focus); }
@media(max-width:480px) { .mf-theme .mf-container { padding:var(--mft-space-4); } .mf-theme .mf-card { padding:var(--mft-space-4); } }
@media(prefers-reduced-motion:reduce) { .mf-theme .mf-button, .mf-theme .mf-button::after { transition:none; } .mf-theme .mf-button--primary::after { display:none; } }
/* Shared library: classes convey appearance; native HTML conveys meaning. */
.mf-theme { -webkit-text-size-adjust:100%; overflow-wrap:break-word; }
.mf-theme :is(.mf-stack,.mf-section) { grid-template-columns:minmax(0,1fr); min-width:0; }
.mf-theme :is(.mf-stack,.mf-section) > * { min-width:0; }
.mf-theme figure.mf-card { margin:0; }
.mf-theme :is(h1,h2,h3,h4,h5,h6,.mf-h1,.mf-h2,.mf-h3,.mf-h4,.mf-h5,.mf-h6) { margin:0; color:inherit; font-weight:var(--mft-weight-semibold); line-height:var(--mft-leading-heading); letter-spacing:var(--mft-tracking-heading); }
.mf-theme :is(h1,.mf-h1) { font-size:var(--mft-text-h1); }
.mf-theme :is(h2,.mf-h2) { font-size:var(--mft-text-h2); }
.mf-theme :is(h3,.mf-h3) { font-size:var(--mft-text-h3); }
.mf-theme :is(h4,.mf-h4) { font-size:var(--mft-text-h4); }
.mf-theme :is(h5,.mf-h5) { font-size:var(--mft-text-h5); }
.mf-theme :is(h6,.mf-h6) { font-size:var(--mft-text-h6); }
.mf-theme :is(p,.mf-para) { margin:0; font-size:var(--mft-text-body); line-height:var(--mft-leading-body); }
.mf-theme .mf-lead { font-size:var(--mft-text-lead); line-height:var(--mft-leading-body); max-width:var(--mft-reading-width); }
.mf-theme .mf-note { font-size:var(--mft-text-note); line-height:var(--mft-leading-note); }
.mf-theme .mf-caption { font-size:var(--mft-text-caption); line-height:var(--mft-leading-note); }
.mf-theme .mf-eyebrow { font-size:var(--mft-text-caption); font-weight:var(--mft-weight-semibold); letter-spacing:var(--mft-tracking-eyebrow); text-transform:uppercase; color:var(--mft-muted); }
.mf-theme .mf-reading { max-width:var(--mft-reading-width); }
.mf-theme .mf-prose { max-width:var(--mft-reading-width); min-width:0; overflow-wrap:anywhere; }
.mf-theme .mf-prose > * + * { margin-top:var(--mft-space-4); }
.mf-theme .mf-prose :is(h1,h2,h3,h4,h5,h6) { scroll-margin-top:var(--mft-space-6); }
.mf-theme .mf-prose > :is(h1,h2,h3,h4,h5,h6):not(:first-child) { margin-top:var(--mft-space-8); }
.mf-theme .mf-prose :is(ul,ol) { padding-inline-start:var(--mft-space-6); margin-block:var(--mft-space-4); }
.mf-theme .mf-prose li + li { margin-top:var(--mft-space-2); }
.mf-theme .mf-prose a { color:var(--mft-focus); text-decoration:underline; text-underline-offset:3px; }
.mf-theme .mf-prose :is(blockquote,.kb-callout) { margin-inline:0; padding:var(--mft-space-4); border-inline-start:3px solid var(--mft-info-border); border-radius:var(--mft-radius-small); background:var(--mft-info-bg); color:var(--mft-info-text); }
.mf-theme .mf-prose :is(.kb-callout-warning,.kb-callout-danger) { border:1px solid var(--mft-warning-border); background:var(--mft-warning-bg); color:var(--mft-warning-text); }
.mf-theme .mf-prose .kb-callout-title { display:block; font-weight:var(--mft-weight-semibold); margin-bottom:var(--mft-space-2); }
.mf-theme .mf-prose :is(pre,code) { font-family:var(--mft-font-mono); font-size:var(--mft-text-note); }
.mf-theme .mf-prose pre { max-width:100%; overflow:auto; padding:var(--mft-space-4); border:1px solid var(--mft-line); border-radius:var(--mft-radius-control); background:var(--mft-subtle); }
.mf-theme .mf-prose figure { margin-inline:0; }
.mf-theme .mf-prose img { display:block; max-width:100%; height:auto; border-radius:var(--mft-radius-control); }
.mf-theme .mf-prose figcaption { color:var(--mft-muted); font-size:var(--mft-text-note); margin-top:var(--mft-space-2); }
.mf-theme .mf-prose table { display:block; max-width:100%; overflow:auto; border-collapse:collapse; }
.mf-theme .mf-prose :is(th,td) { padding:var(--mft-space-3); border:1px solid var(--mft-line); text-align:start; vertical-align:top; }
.mf-theme .mf-prose th { background:var(--mft-subtle); font-weight:var(--mft-weight-semibold); }
.mf-theme .mf-prose hr { border:0; border-top:1px solid var(--mft-line); margin-block:var(--mft-space-6); }
.mf-theme .mf-protected-content { user-select:none; -webkit-user-select:none; }
@media print { .mf-theme .mf-protected-content { display:none !important; } }
.mf-theme .mf-form-width { max-width:var(--mft-form-width); }
.mf-theme .mf-choice--card { padding:var(--mft-space-4); border:1px solid var(--mft-field-border); border-radius:var(--mft-radius-control); background:var(--mft-surface); }
.mf-theme .mf-choice--card:has(input:checked) { border-color:var(--mft-focus); background:var(--mft-selected-bg); color:var(--mft-selected-text); }
.mf-theme [data-mf-flow-controls] { padding-block:var(--mft-space-2); }
.mf-theme .mf-section { display:grid; gap:var(--mft-space-6); padding-block:var(--mft-space-10); scroll-margin-top:var(--mft-space-6); border-bottom:1px solid var(--mft-line); }
.mf-theme .mf-row { display:flex; align-items:center; flex-wrap:wrap; gap:var(--mft-space-3); }
.mf-theme .mf-row--between { justify-content:space-between; }
.mf-theme .mf-workspace { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:var(--mft-space-6); align-items:start; }
.mf-theme .mf-workspace > * { min-width:0; }
.mf-theme .mf-card--accent { border-top:2px solid var(--mft-focus); }
@media(max-width:800px) { .mf-theme .mf-workspace { grid-template-columns:minmax(0,1fr); } }
.mf-theme .mf-stack--small { gap:var(--mft-space-2); }
.mf-theme .mf-stack--large { gap:var(--mft-space-8); }
.mf-theme .mf-divider { width:100%; border:0; border-top:1px solid var(--mft-line); margin-block:var(--mft-space-4); }
.mf-theme .mf-icon { width:var(--mft-icon-medium); height:var(--mft-icon-medium); flex-shrink:0; fill:none; stroke:currentColor; stroke-width:var(--mft-icon-stroke); stroke-linecap:round; stroke-linejoin:round; }
.mf-theme .mf-button--small { min-height:var(--mft-touch-target); padding:var(--mft-space-2) var(--mft-space-4); }
.mf-theme .mf-button--quiet { border-color:transparent; background:transparent; color:var(--mft-focus); }
.mf-theme .mf-button--danger { color:var(--mft-danger-text); background:var(--mft-danger-bg); border-color:var(--mft-danger-bg); }
.mf-theme .mf-button--icon { padding:var(--mft-space-3); min-width:var(--mft-touch-target); min-height:var(--mft-touch-target); }
.mf-theme .mf-button[aria-busy=true] { opacity:1; }
.mf-theme .mf-badge { display:inline-flex; align-items:center; gap:var(--mft-space-2); width:fit-content; padding:var(--mft-space-1) var(--mft-space-2); border:1px solid var(--mft-line); border-radius:var(--mft-radius-pill); background:var(--mft-subtle); color:var(--mft-text); font-size:var(--mft-text-caption); font-weight:var(--mft-weight-semibold); }
.mf-theme .mf-badge--success { color:var(--mft-success-text); background:var(--mft-success-bg); border-color:var(--mft-success-border); }
.mf-theme .mf-badge--attention { color:var(--mft-attention-text); background:var(--mft-attention-bg); border-color:var(--mft-attention-border); }
.mf-theme .mf-badge--error { color:var(--mft-warning-text); background:var(--mft-warning-bg); border-color:var(--mft-warning-border); }
.mf-theme .mf-notice { display:flex; align-items:flex-start; gap:var(--mft-space-3); padding:var(--mft-space-4); border:1px solid var(--mft-line); border-radius:var(--mft-radius-control); background:var(--mft-subtle); color:var(--mft-text); }
.mf-theme .mf-notice .mf-icon { margin-top:2px; }
.mf-theme .mf-notice--info { background:var(--mft-info-bg); color:var(--mft-info-text); border-color:var(--mft-info-border); }
.mf-theme .mf-notice--success { background:var(--mft-success-bg); color:var(--mft-success-text); border-color:var(--mft-success-border); }
.mf-theme .mf-notice--attention { background:var(--mft-attention-bg); color:var(--mft-attention-text); border-color:var(--mft-attention-border); }
.mf-theme :is(.mf-notice--warning,.mf-notice--error) { background:var(--mft-warning-bg); color:var(--mft-warning-text); border-color:var(--mft-warning-border); }
.mf-theme .mf-label { font-size:var(--mft-text-note); font-weight:var(--mft-weight-semibold); }
.mf-theme .mf-input:disabled { background:var(--mft-subtle); color:var(--mft-muted); cursor:not-allowed; }
.mf-theme .mf-input[readonly] { background:var(--mft-subtle); }
.mf-theme .mf-fieldset { min-width:0; margin:0; padding:0; border:0; }
.mf-theme .mf-fieldset legend { margin-bottom:var(--mft-space-3); font-weight:var(--mft-weight-semibold); }
.mf-theme .mf-choice { display:flex; align-items:center; gap:var(--mft-space-3); min-height:var(--mft-touch-target); cursor:pointer; }
.mf-theme .mf-choice input { width:20px; height:20px; accent-color:var(--mft-focus); flex-shrink:0; }
.mf-theme .mf-error-text { color:var(--mft-danger-bg); font-size:var(--mft-text-note); }
.mf-theme textarea.mf-input { min-height:120px; resize:vertical; }
.mf-theme .mf-progress { display:block; height:var(--mft-progress-height); border-radius:var(--mft-radius-pill); }
.mf-theme .mf-progress-shell { position:relative; overflow:hidden; border-radius:var(--mft-radius-pill); }
.mf-theme .mf-progress-shell[data-mf-active=true]::after { content:""; position:absolute; inset:0; background:linear-gradient(100deg,transparent 15%,#ffffff66 50%,transparent 85%); width:40%; transform:translateX(-100%); animation:mf-sheen var(--mft-motion-slow) ease-in-out infinite; pointer-events:none; }
.mf-theme .mf-buffer { position:relative; overflow:hidden; height:var(--mft-progress-height); border-radius:var(--mft-radius-pill); background:var(--mft-line); }
.mf-theme .mf-buffer::after { content:""; display:block; width:40%; height:100%; border-radius:inherit; background:var(--mft-focus); animation:mf-sheen var(--mft-motion-buffer) ease-in-out infinite; }
.mf-theme .mf-spinner { display:inline-block; width:var(--mft-spinner-size); height:var(--mft-spinner-size); flex-shrink:0; border:var(--mft-spinner-width) solid currentColor; border-right-color:transparent; border-radius:50%; animation:mf-spin var(--mft-motion-spin) linear infinite; }
.mf-theme .mf-skeleton { height:1em; border-radius:var(--mft-radius-small); background:var(--mft-line); animation:mf-breathe var(--mft-motion-slow) ease-in-out infinite; }
.mf-theme .mf-skeleton--title { width:55%; height:1.5em; }
.mf-theme .mf-skeleton--short { width:75%; }
@keyframes mf-sheen { 0% { transform:translateX(-100%); opacity:.25; } 50% { opacity:1; } 100% { transform:translateX(350%); opacity:.25; } }
@keyframes mf-spin { to { transform:rotate(360deg); } }
@keyframes mf-breathe { 50% { opacity:.45; } }
.mf-theme .mf-stat { font-size:var(--mft-text-h1); line-height:var(--mft-leading-heading); font-weight:var(--mft-weight-semibold); font-variant-numeric:tabular-nums; }
.mf-theme .mf-chart { display:block; width:100%; height:var(--mft-chart-height); overflow:visible; }
.mf-theme [data-mf-chart]:not([data-mf-ready])::before { content:""; display:block; height:var(--mft-chart-height); }
.mf-theme .mf-chart-grid { stroke:var(--mft-line); stroke-width:1; }
.mf-theme .mf-chart-text { fill:var(--mft-muted); font-family:var(--mft-font); font-size:13px; }
.mf-theme .mf-chart-series { fill:none; stroke:var(--mft-chart-1); stroke-width:var(--mft-chart-stroke); stroke-linejoin:round; stroke-linecap:round; }
.mf-theme .mf-chart-series--second { stroke:var(--mft-chart-2); stroke-dasharray:7 5; }
.mf-theme .mf-chart-dot { fill:var(--mft-surface); stroke:var(--mft-chart-1); stroke-width:2; }
.mf-theme .mf-chart-dot--second { stroke:var(--mft-chart-2); stroke-dasharray:2 1; }
.mf-theme .mf-chart-bar { fill:var(--mft-chart-2); }
.mf-theme .mf-chart-key { display:inline-block; width:24px; border-top:3px solid var(--mft-chart-1); }
.mf-theme .mf-chart-key--second { border-color:var(--mft-chart-2); border-top-style:dashed; }
.mf-theme .mf-table th { font-size:var(--mft-text-note); color:var(--mft-muted); font-weight:var(--mft-weight-semibold); }
.mf-theme .mf-table caption { text-align:left; margin-bottom:var(--mft-space-3); color:var(--mft-muted); font-size:var(--mft-text-note); }
.mf-theme .mf-table td { font-variant-numeric:tabular-nums; }
.mf-theme .mf-nav { display:flex; gap:var(--mft-space-1); padding:var(--mft-space-2); border:1px solid var(--mft-line); border-radius:var(--mft-radius-panel); background:var(--mft-surface); }
.mf-theme .mf-nav a { display:flex; flex:1; flex-direction:column; align-items:center; justify-content:center; gap:var(--mft-space-1); min-width:0; min-height:var(--mft-navigation-target); padding:var(--mft-space-2) var(--mft-space-1); border-radius:var(--mft-radius-control); color:var(--mft-muted); text-decoration:none; font-size:var(--mft-text-caption); }
.mf-theme .mf-nav [aria-current=page] { color:var(--mft-selected-text); background:var(--mft-selected-bg); font-weight:var(--mft-weight-semibold); }
.mf-theme .mf-brandbar { display:flex; align-items:center; justify-content:space-between; gap:var(--mft-space-4); padding-block:var(--mft-space-5); }
.mf-theme .mf-skip-link:not(:focus) { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.mf-theme .mf-skip-link:focus { position:fixed; inset-block-start:var(--mft-space-3); inset-inline-start:var(--mft-space-3); z-index:var(--mft-layer-skip-link); padding:var(--mft-space-3); background:var(--mft-surface); color:var(--mft-focus); border:1px solid var(--mft-focus); border-radius:var(--mft-radius-control); }
.mf-theme .mf-brand { display:inline-flex; align-items:center; gap:var(--mft-space-4); min-height:var(--mft-touch-target); color:var(--mft-text); text-decoration:none; flex-shrink:0; }
.mf-theme .mf-brand-logo { width:var(--mft-logo-width); height:var(--mft-logo-height); object-fit:contain; filter:brightness(0); }
.mf-theme[data-mf-theme=dark] .mf-brand-logo { filter:none; }
.mf-theme .mf-brand-product { padding-left:var(--mft-space-4); border-left:1px solid var(--mft-line); font-size:var(--mft-text-note); color:var(--mft-muted); }
.mf-theme .mf-brand-centre { min-width:0; color:var(--mft-muted); font-size:var(--mft-text-note); text-align:right; overflow-wrap:anywhere; }
.mf-theme .mf-navigation-dock { position:fixed; z-index:var(--mft-layer-navigation); bottom:0; inset-inline:0; padding:var(--mft-space-3) var(--mft-space-4) calc(var(--mft-space-3) + env(safe-area-inset-bottom)); pointer-events:none; }
.mf-theme .mf-navigation-dock .mf-nav { max-width:var(--mft-navigation-width); margin-inline:auto; box-shadow:var(--mft-shadow); pointer-events:auto; }
.mf-theme.mf-customer-shell { padding-bottom:calc(var(--mft-navigation-clearance) + env(safe-area-inset-bottom)); }
.mf-theme.mf-customer-shell :is(a,button,input,textarea,select,[tabindex]) { scroll-margin-bottom:calc(var(--mft-navigation-focus-clearance) + env(safe-area-inset-bottom)); }
.mf-theme .mf-action-list { display:grid; gap:var(--mft-space-1); }
.mf-theme .mf-action-list a { display:flex; align-items:center; justify-content:space-between; gap:var(--mft-space-3); min-height:var(--mft-touch-target); padding:var(--mft-space-3) 0; color:var(--mft-focus); border-bottom:1px solid var(--mft-line); text-decoration:none; }
.mf-theme .mf-action-list a:hover { text-decoration:underline; }
.mf-theme .mf-footer { display:grid; gap:var(--mft-space-3); border-top:1px solid var(--mft-line); }
.mf-theme .mf-footer-links { display:flex; flex-wrap:wrap; gap:var(--mft-space-2) var(--mft-space-5); }
.mf-theme .mf-footer-links a { display:inline-flex; align-items:center; min-height:var(--mft-touch-target); color:var(--mft-muted); font-size:var(--mft-text-note); }
@media(max-width:600px) {
  .mf-theme .mf-brandbar { flex-wrap:wrap; padding-block:var(--mft-space-3); }
  .mf-theme .mf-brand-centre { flex-basis:100%; text-align:left; font-size:var(--mft-text-caption); }
  .mf-theme .mf-navigation-dock { padding:0 0 env(safe-area-inset-bottom); background:var(--mft-surface); border-top:1px solid var(--mft-line); }
  .mf-theme .mf-navigation-dock .mf-nav { border:0; border-radius:0; box-shadow:none; }
}
.mf-theme .mf-breadcrumb { display:flex; flex-wrap:wrap; gap:var(--mft-space-2); padding:0; margin:0; list-style:none; color:var(--mft-muted); font-size:var(--mft-text-note); }
.mf-theme .mf-breadcrumb li + li::before { content:"/"; margin-right:var(--mft-space-2); color:var(--mft-muted); }
.mf-theme .mf-tabs { display:flex; flex-wrap:wrap; gap:var(--mft-space-2); border-bottom:1px solid var(--mft-line); }
.mf-theme .mf-tabs [role=tab] { font:inherit; background:transparent; color:var(--mft-muted); min-height:var(--mft-touch-target); border:0; border-bottom:2px solid transparent; padding:var(--mft-space-3); cursor:pointer; }
.mf-theme .mf-tabs [aria-selected=true] { color:var(--mft-focus); border-bottom-color:var(--mft-focus); }
.mf-theme .mf-stepper { display:flex; gap:var(--mft-space-4); flex-wrap:wrap; padding:0; margin:0; list-style:none; counter-reset:step; }
.mf-theme .mf-stepper li { display:flex; align-items:center; gap:var(--mft-space-2); counter-increment:step; font-size:var(--mft-text-note); color:var(--mft-muted); }
.mf-theme .mf-stepper li::before { content:counter(step); display:grid; place-items:center; width:28px; height:28px; border:1px solid var(--mft-line); border-radius:50%; }
.mf-theme .mf-stepper [aria-current=step] { color:var(--mft-text); font-weight:var(--mft-weight-semibold); }
.mf-theme .mf-stepper [aria-current=step]::before { border-color:var(--mft-focus); background:var(--mft-info-bg); }
.mf-theme .mf-details { border:1px solid var(--mft-line); border-radius:var(--mft-radius-control); background:var(--mft-surface); padding:var(--mft-space-4); }
.mf-theme .mf-details summary { cursor:pointer; font-weight:var(--mft-weight-semibold); min-height:var(--mft-touch-target); align-content:center; }
.mf-theme .mf-details .mf-disclosure-summary { position:relative; list-style:none; padding-inline-end:var(--mft-space-6); }
.mf-theme .mf-disclosure-summary::-webkit-details-marker { display:none; }
.mf-theme .mf-disclosure-summary::after { content:"›"; position:absolute; inset-inline-end:0; top:50%; transform:translateY(-50%); font-size:var(--mft-text-h3); color:var(--mft-muted); }
.mf-theme .mf-details[open] > .mf-disclosure-summary::after { transform:translateY(-50%) rotate(90deg); }
.mf-theme .mf-details[open] > .mf-disclosure-summary { margin-bottom:var(--mft-space-4); }
.mf-theme .mf-code { white-space:pre-wrap; overflow-wrap:anywhere; margin:0; padding:var(--mft-space-4); background:var(--mft-subtle); border-radius:var(--mft-radius-control); font:var(--mft-text-note)/1.6 var(--mft-font-mono); color:var(--mft-text); }
.mf-theme .mf-empty { display:grid; justify-items:start; gap:var(--mft-space-3); padding:var(--mft-space-6); border:1px dashed var(--mft-field-border); border-radius:var(--mft-radius-panel); }
.mf-theme .mf-dialog { width:calc(100% - 32px); max-width:var(--mft-modal-width); max-height:calc(100% - 48px); overflow:auto; padding:var(--mft-space-6); border:1px solid var(--mft-line); border-radius:var(--mft-radius-panel); background:var(--mft-surface); color:var(--mft-text); font:inherit; }
.mf-theme .mf-dialog::backdrop { background:var(--mft-backdrop); }
.mf-theme .mf-toast { position:fixed; z-index:var(--mft-layer-toast); bottom:max(var(--mft-space-6),env(safe-area-inset-bottom)); right:var(--mft-space-4); max-width:min(420px,calc(100% - 32px)); box-shadow:var(--mft-shadow); }
.mf-theme .mf-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.mf-theme .mf-skip { position:absolute; top:8px; left:8px; transform:translateY(-160%); z-index:50; }
.mf-theme .mf-skip:focus { transform:none; }
.mf-theme :is(a,button,input,select,textarea,summary,[tabindex]):not(.mf-button):focus-visible { outline:3px solid var(--mft-focus); outline-offset:3px; }
.mf-theme [hidden] { display:none !important; }
.mf-theme[data-mf-motion=paused] *, .mf-theme[data-mf-motion=paused] *::after { animation-play-state:paused !important; transition:none !important; }
.mf-theme .mf-motion-paused, .mf-theme .mf-motion-paused::before, .mf-theme .mf-motion-paused::after { animation-play-state:paused !important; }
@media(prefers-reduced-motion:reduce) { .mf-theme :is(.mf-spinner,.mf-buffer::after,.mf-skeleton,.mf-progress-shell::after) { animation:none; } }
@media(forced-colors:active) { .mf-theme .mf-button { border:1px solid ButtonText; } .mf-theme .mf-spinner { border-color:CanvasText; border-right-color:transparent; } }

/* Generated legacy aliases; portal opt-in only. */
/* Deliberately opt-in. No Bootstrap, body, :root or legacy --mf-* overrides. */
.mf-theme.mf-portal { font-family:var(--mft-font); font-size:var(--mft-body-size); line-height:var(--mft-body-leading); color:var(--mft-text); background:var(--mft-background); }
.mf-theme.mf-portal *, .mf-theme.mf-portal *::before, .mf-theme.mf-portal *::after { box-sizing:border-box; }
.mf-theme.mf-portal .mf-container { width:100%; max-width:var(--mft-content-width); margin-inline:auto; padding:var(--mft-space-6); }
.mf-theme.mf-portal .mf-stack { display:grid; align-content:start; gap:var(--mft-space-4); }
.mf-theme.mf-portal .mf-stack > * { margin-block:0; }
.mf-theme.mf-portal .mf-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); gap:var(--mft-space-6); }
.mf-theme.mf-portal .mf-card { min-width:0; padding:var(--mft-space-6); border:1px solid var(--mft-line); border-radius:var(--mft-radius-panel); background:var(--mft-surface); box-shadow:var(--mft-shadow); }
.mf-theme.mf-portal :is(.mf-muted,:where(.text-muted)) { color:var(--mft-muted); }
.mf-theme.mf-portal .mf-field { display:grid; gap:var(--mft-space-2); }
.mf-theme.mf-portal :is(.mf-input,:where(.form-control,.form-select,.search-input,.te-input,.mf-account input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),.mf-account select,.mf-account textarea)) { width:100%; min-width:0; min-height:var(--mft-touch-target); padding:var(--mft-space-3); border:1px solid var(--mft-field-border); border-radius:var(--mft-radius-control); background:var(--mft-surface); color:var(--mft-text); font:inherit; }
.mf-theme.mf-portal :is(.mf-input,:where(.form-control,.form-select,.search-input,.te-input,.mf-account input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),.mf-account select,.mf-account textarea))[aria-invalid=true] { border-color:var(--mft-danger-bg); }
.mf-theme.mf-portal .mf-warning { padding:var(--mft-space-4); border:1px solid var(--mft-warning-border); border-radius:var(--mft-radius-control); background:var(--mft-warning-bg); color:var(--mft-warning-text); }
.mf-theme.mf-portal :is(.mf-button,:where(.ck-nav-next,.rc-btn-primary,.btn,.mfa-btn,.cm-btn,.cv-btn,.vd-btn,.vo-btn,.bl-btn,.sq-btn,.ad-btn,.sb-btn,.mfp-btn,.mfl-btn,.btnx,.quick-action-btn,.ad-quick-btn,.rc-action-btn,.btn-approve,.mf-account button[type=submit],.btn-upgrade,.btn-access,.btn-member-primary,.btn-member-secondary,.btn-member-cta,.btn-member-nav)) { position:relative; isolation:isolate; display:inline-flex; align-items:center; justify-content:center; gap:var(--mft-space-3); min-height:var(--mft-button-referenceGeometry-minHeightPx); max-width:100%; padding:var(--mft-button-referenceGeometry-paddingVerticalPx) var(--mft-button-referenceGeometry-paddingHorizontalPx); font:inherit; font-size:var(--mft-button-referenceGeometry-labelPx); font-weight:var(--mft-button-referenceGeometry-labelWeight); border:1px solid var(--mft-line); border-radius:var(--mft-button-surface-radiusPx); background:var(--mft-surface); color:var(--mft-text); text-decoration:none; text-align:center; cursor:pointer; touch-action:manipulation; overflow:hidden; }
.mf-theme.mf-portal :is(.mf-button--primary,:where(.ck-nav-next,.rc-btn-primary,.btn-primary,.mfa-btn--primary,.cm-btn-primary,.cv-btn-primary,.vd-btn-primary,.vo-btn-primary,.bl-btn-primary,.sq-btn-primary,.ad-btn-primary,.sb-btn-primary,.mfp-btn-primary,.mfl-btn-primary,.btnx-navy,.btn-login,.btn-approve,.mf-account button[type=submit],.mf-account .mf-button:not(.secondary),.btn-upgrade,.btn-member-primary,.btn-member-cta,.btn-member-nav)) { border-color:var(--mft-button-surface-border); border-top-color:var(--mft-button-surface-topBorder); color:var(--mft-button-surface-foreground); background:linear-gradient(180deg,var(--mft-button-surface-top),var(--mft-button-surface-bottom)); box-shadow:inset 0 1px 0 #ffffff1c,0 2px 3px #06172520; transition:border-color var(--mft-button-recoveryMs) ease,box-shadow var(--mft-button-recoveryMs) ease; }
.mf-theme.mf-portal :is(.mf-button--primary,:where(.ck-nav-next,.rc-btn-primary,.btn-primary,.mfa-btn--primary,.cm-btn-primary,.cv-btn-primary,.vd-btn-primary,.vo-btn-primary,.bl-btn-primary,.sq-btn-primary,.ad-btn-primary,.sb-btn-primary,.mfp-btn-primary,.mfl-btn-primary,.btnx-navy,.btn-login,.btn-approve,.mf-account button[type=submit],.mf-account .mf-button:not(.secondary),.btn-upgrade,.btn-member-primary,.btn-member-cta,.btn-member-nav)) > * { position:relative; z-index:2; }
.mf-theme.mf-portal :is(.mf-button--primary,:where(.ck-nav-next,.rc-btn-primary,.btn-primary,.mfa-btn--primary,.cm-btn-primary,.cv-btn-primary,.vd-btn-primary,.vo-btn-primary,.bl-btn-primary,.sq-btn-primary,.ad-btn-primary,.sb-btn-primary,.mfp-btn-primary,.mfl-btn-primary,.btnx-navy,.btn-login,.btn-approve,.mf-account button[type=submit],.mf-account .mf-button:not(.secondary),.btn-upgrade,.btn-member-primary,.btn-member-cta,.btn-member-nav))::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(110deg,transparent 22%,#e3f5ff24 44%,#ffffff30 48%,transparent 72%); background-size:250% 100%; background-position:100% 0; opacity:0; transition:background-position var(--mft-button-hover-sweepMs) var(--mft-button-hover-sweepEasing),opacity var(--mft-button-hover-sweepOpacityMs) ease; }
@media(hover:hover) and (pointer:fine) {
 .mf-theme.mf-portal :is(.mf-button--primary,:where(.ck-nav-next,.rc-btn-primary,.btn-primary,.mfa-btn--primary,.cm-btn-primary,.cv-btn-primary,.vd-btn-primary,.vo-btn-primary,.bl-btn-primary,.sq-btn-primary,.ad-btn-primary,.sb-btn-primary,.mfp-btn-primary,.mfl-btn-primary,.btnx-navy,.btn-login,.btn-approve,.mf-account button[type=submit],.mf-account .mf-button:not(.secondary),.btn-upgrade,.btn-member-primary,.btn-member-cta,.btn-member-nav)):not(:disabled):not([aria-disabled=true]):hover { border-color:var(--mft-button-hover-border); box-shadow:0 0 0 var(--mft-button-hover-outerRingWidthPx) var(--mft-button-hover-outerRing),0 1px 2px #06172515; }
 .mf-theme.mf-portal :is(.mf-button--primary,:where(.ck-nav-next,.rc-btn-primary,.btn-primary,.mfa-btn--primary,.cm-btn-primary,.cv-btn-primary,.vd-btn-primary,.vo-btn-primary,.bl-btn-primary,.sq-btn-primary,.ad-btn-primary,.sb-btn-primary,.mfp-btn-primary,.mfl-btn-primary,.btnx-navy,.btn-login,.btn-approve,.mf-account button[type=submit],.mf-account .mf-button:not(.secondary),.btn-upgrade,.btn-member-primary,.btn-member-cta,.btn-member-nav)):not(:disabled):not([aria-disabled=true]):hover::after { background-position:0 0; opacity:1; }
}
.mf-theme.mf-portal :is(.mf-button--primary,:where(.ck-nav-next,.rc-btn-primary,.btn-primary,.mfa-btn--primary,.cm-btn-primary,.cv-btn-primary,.vd-btn-primary,.vo-btn-primary,.bl-btn-primary,.sq-btn-primary,.ad-btn-primary,.sb-btn-primary,.mfp-btn-primary,.mfl-btn-primary,.btnx-navy,.btn-login,.btn-approve,.mf-account button[type=submit],.mf-account .mf-button:not(.secondary),.btn-upgrade,.btn-member-primary,.btn-member-cta,.btn-member-nav)):not(:disabled):not([aria-disabled=true]):active { border-color:var(--mft-button-pressed-border); box-shadow:inset 0 2px 3px #031e3540,0 0 0 var(--mft-button-pressed-outerRingWidthPx) var(--mft-button-pressed-ring); transition-duration:var(--mft-button-pressed-transitionMs); }
.mf-theme.mf-portal :is(.mf-button--primary,:where(.ck-nav-next,.rc-btn-primary,.btn-primary,.mfa-btn--primary,.cm-btn-primary,.cv-btn-primary,.vd-btn-primary,.vo-btn-primary,.bl-btn-primary,.sq-btn-primary,.ad-btn-primary,.sb-btn-primary,.mfp-btn-primary,.mfl-btn-primary,.btnx-navy,.btn-login,.btn-approve,.mf-account button[type=submit],.mf-account .mf-button:not(.secondary),.btn-upgrade,.btn-member-primary,.btn-member-cta,.btn-member-nav)):not(:disabled):not([aria-disabled=true]):active::after { opacity:0; transition-duration:var(--mft-button-pressed-transitionMs); }
.mf-theme.mf-portal :is(.mf-button,:where(.ck-nav-next,.rc-btn-primary,.btn,.mfa-btn,.cm-btn,.cv-btn,.vd-btn,.vo-btn,.bl-btn,.sq-btn,.ad-btn,.sb-btn,.mfp-btn,.mfl-btn,.btnx,.quick-action-btn,.ad-quick-btn,.rc-action-btn,.btn-approve,.mf-account button[type=submit],.btn-upgrade,.btn-access,.btn-member-primary,.btn-member-secondary,.btn-member-cta,.btn-member-nav)):disabled, .mf-theme.mf-portal :is(.mf-button,:where(.ck-nav-next,.rc-btn-primary,.btn,.mfa-btn,.cm-btn,.cv-btn,.vd-btn,.vo-btn,.bl-btn,.sq-btn,.ad-btn,.sb-btn,.mfp-btn,.mfl-btn,.btnx,.quick-action-btn,.ad-quick-btn,.rc-action-btn,.btn-approve,.mf-account button[type=submit],.btn-upgrade,.btn-access,.btn-member-primary,.btn-member-secondary,.btn-member-cta,.btn-member-nav))[aria-disabled=true] { cursor:not-allowed; opacity:.65; }
.mf-theme.mf-portal :is(.mf-button,:where(.ck-nav-next,.rc-btn-primary,.btn,.mfa-btn,.cm-btn,.cv-btn,.vd-btn,.vo-btn,.bl-btn,.sq-btn,.ad-btn,.sb-btn,.mfp-btn,.mfl-btn,.btnx,.quick-action-btn,.ad-quick-btn,.rc-action-btn,.btn-approve,.mf-account button[type=submit],.btn-upgrade,.btn-access,.btn-member-primary,.btn-member-secondary,.btn-member-cta,.btn-member-nav))[aria-busy=true] { cursor:wait; }
.mf-theme.mf-portal :is(:is(.mf-button,:where(.ck-nav-next,.rc-btn-primary,.btn,.mfa-btn,.cm-btn,.cv-btn,.vd-btn,.vo-btn,.bl-btn,.sq-btn,.ad-btn,.sb-btn,.mfp-btn,.mfl-btn,.btnx,.quick-action-btn,.ad-quick-btn,.rc-action-btn,.btn-approve,.mf-account button[type=submit],.btn-upgrade,.btn-access,.btn-member-primary,.btn-member-secondary,.btn-member-cta,.btn-member-nav)),:is(.mf-input,:where(.form-control,.form-select,.search-input,.te-input,.mf-account input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),.mf-account select,.mf-account textarea)),.mf-link):focus-visible { outline:var(--mft-button-focus-widthPx) solid var(--mft-button-focus); outline-offset:var(--mft-button-focus-offsetPx); }
.mf-theme.mf-portal .mf-link { color:var(--mft-focus); text-underline-offset:3px; }
.mf-theme.mf-portal :is(.mf-table-scroll,:where(.table-responsive,.table-scroll,.mfa-table-wrap)) { max-width:100%; overflow-x:auto; }
.mf-theme.mf-portal :is(.mf-table,:where(.table,.mfa-table,.cm-table,.cv-table,.vd-table,.signin-shell table)) { width:100%; border-collapse:collapse; text-align:left; }
.mf-theme.mf-portal :is(.mf-table,:where(.table,.mfa-table,.cm-table,.cv-table,.vd-table,.signin-shell table)) :is(th,td) { padding:var(--mft-space-3); border-bottom:1px solid var(--mft-line); }
.mf-theme.mf-portal .mf-progress { width:100%; height:4px; appearance:none; border:0; border-radius:2px; overflow:hidden; background:var(--mft-line); accent-color:var(--mft-focus); }
.mf-theme.mf-portal .mf-progress::-webkit-progress-bar { background:var(--mft-line); }
.mf-theme.mf-portal .mf-progress::-webkit-progress-value { background:var(--mft-focus); }
.mf-theme.mf-portal .mf-progress::-moz-progress-bar { background:var(--mft-focus); }
@media(max-width:480px) { .mf-theme.mf-portal .mf-container { padding:var(--mft-space-4); } .mf-theme.mf-portal .mf-card { padding:var(--mft-space-4); } }
@media(prefers-reduced-motion:reduce) { .mf-theme.mf-portal :is(.mf-button,:where(.ck-nav-next,.rc-btn-primary,.btn,.mfa-btn,.cm-btn,.cv-btn,.vd-btn,.vo-btn,.bl-btn,.sq-btn,.ad-btn,.sb-btn,.mfp-btn,.mfl-btn,.btnx,.quick-action-btn,.ad-quick-btn,.rc-action-btn,.btn-approve,.mf-account button[type=submit],.btn-upgrade,.btn-access,.btn-member-primary,.btn-member-secondary,.btn-member-cta,.btn-member-nav)), .mf-theme.mf-portal :is(.mf-button,:where(.ck-nav-next,.rc-btn-primary,.btn,.mfa-btn,.cm-btn,.cv-btn,.vd-btn,.vo-btn,.bl-btn,.sq-btn,.ad-btn,.sb-btn,.mfp-btn,.mfl-btn,.btnx,.quick-action-btn,.ad-quick-btn,.rc-action-btn,.btn-approve,.mf-account button[type=submit],.btn-upgrade,.btn-access,.btn-member-primary,.btn-member-secondary,.btn-member-cta,.btn-member-nav))::after { transition:none; } .mf-theme.mf-portal :is(.mf-button--primary,:where(.ck-nav-next,.rc-btn-primary,.btn-primary,.mfa-btn--primary,.cm-btn-primary,.cv-btn-primary,.vd-btn-primary,.vo-btn-primary,.bl-btn-primary,.sq-btn-primary,.ad-btn-primary,.sb-btn-primary,.mfp-btn-primary,.mfl-btn-primary,.btnx-navy,.btn-login,.btn-approve,.mf-account button[type=submit],.mf-account .mf-button:not(.secondary),.btn-upgrade,.btn-member-primary,.btn-member-cta,.btn-member-nav))::after { display:none; } }
/* Shared library: classes convey appearance; native HTML conveys meaning. */
.mf-theme.mf-portal { -webkit-text-size-adjust:100%; overflow-wrap:break-word; }
.mf-theme.mf-portal :is(.mf-stack,.mf-section) { grid-template-columns:minmax(0,1fr); min-width:0; }
.mf-theme.mf-portal :is(.mf-stack,.mf-section) > * { min-width:0; }
.mf-theme.mf-portal figure.mf-card { margin:0; }
.mf-theme.mf-portal :is(h1,h2,h3,h4,h5,h6,.mf-h1,.mf-h2,.mf-h3,.mf-h4,.mf-h5,.mf-h6) { margin:0; color:inherit; font-weight:var(--mft-weight-semibold); line-height:var(--mft-leading-heading); letter-spacing:var(--mft-tracking-heading); }
.mf-theme.mf-portal :is(h1,.mf-h1) { font-size:var(--mft-text-h1); }
.mf-theme.mf-portal :is(h2,.mf-h2) { font-size:var(--mft-text-h2); }
.mf-theme.mf-portal :is(h3,.mf-h3) { font-size:var(--mft-text-h3); }
.mf-theme.mf-portal :is(h4,.mf-h4) { font-size:var(--mft-text-h4); }
.mf-theme.mf-portal :is(h5,.mf-h5) { font-size:var(--mft-text-h5); }
.mf-theme.mf-portal :is(h6,.mf-h6) { font-size:var(--mft-text-h6); }
.mf-theme.mf-portal :is(p,.mf-para) { margin:0; font-size:var(--mft-text-body); line-height:var(--mft-leading-body); }
.mf-theme.mf-portal .mf-lead { font-size:var(--mft-text-lead); line-height:var(--mft-leading-body); max-width:var(--mft-reading-width); }
.mf-theme.mf-portal .mf-note { font-size:var(--mft-text-note); line-height:var(--mft-leading-note); }
.mf-theme.mf-portal .mf-caption { font-size:var(--mft-text-caption); line-height:var(--mft-leading-note); }
.mf-theme.mf-portal .mf-eyebrow { font-size:var(--mft-text-caption); font-weight:var(--mft-weight-semibold); letter-spacing:var(--mft-tracking-eyebrow); text-transform:uppercase; color:var(--mft-muted); }
.mf-theme.mf-portal .mf-reading { max-width:var(--mft-reading-width); }
.mf-theme.mf-portal .mf-prose { max-width:var(--mft-reading-width); min-width:0; overflow-wrap:anywhere; }
.mf-theme.mf-portal .mf-prose > * + * { margin-top:var(--mft-space-4); }
.mf-theme.mf-portal .mf-prose :is(h1,h2,h3,h4,h5,h6) { scroll-margin-top:var(--mft-space-6); }
.mf-theme.mf-portal .mf-prose > :is(h1,h2,h3,h4,h5,h6):not(:first-child) { margin-top:var(--mft-space-8); }
.mf-theme.mf-portal .mf-prose :is(ul,ol) { padding-inline-start:var(--mft-space-6); margin-block:var(--mft-space-4); }
.mf-theme.mf-portal .mf-prose li + li { margin-top:var(--mft-space-2); }
.mf-theme.mf-portal .mf-prose a { color:var(--mft-focus); text-decoration:underline; text-underline-offset:3px; }
.mf-theme.mf-portal .mf-prose :is(blockquote,.kb-callout) { margin-inline:0; padding:var(--mft-space-4); border-inline-start:3px solid var(--mft-info-border); border-radius:var(--mft-radius-small); background:var(--mft-info-bg); color:var(--mft-info-text); }
.mf-theme.mf-portal .mf-prose :is(.kb-callout-warning,.kb-callout-danger) { border:1px solid var(--mft-warning-border); background:var(--mft-warning-bg); color:var(--mft-warning-text); }
.mf-theme.mf-portal .mf-prose .kb-callout-title { display:block; font-weight:var(--mft-weight-semibold); margin-bottom:var(--mft-space-2); }
.mf-theme.mf-portal .mf-prose :is(pre,code) { font-family:var(--mft-font-mono); font-size:var(--mft-text-note); }
.mf-theme.mf-portal .mf-prose pre { max-width:100%; overflow:auto; padding:var(--mft-space-4); border:1px solid var(--mft-line); border-radius:var(--mft-radius-control); background:var(--mft-subtle); }
.mf-theme.mf-portal .mf-prose figure { margin-inline:0; }
.mf-theme.mf-portal .mf-prose img { display:block; max-width:100%; height:auto; border-radius:var(--mft-radius-control); }
.mf-theme.mf-portal .mf-prose figcaption { color:var(--mft-muted); font-size:var(--mft-text-note); margin-top:var(--mft-space-2); }
.mf-theme.mf-portal .mf-prose table { display:block; max-width:100%; overflow:auto; border-collapse:collapse; }
.mf-theme.mf-portal .mf-prose :is(th,td) { padding:var(--mft-space-3); border:1px solid var(--mft-line); text-align:start; vertical-align:top; }
.mf-theme.mf-portal .mf-prose th { background:var(--mft-subtle); font-weight:var(--mft-weight-semibold); }
.mf-theme.mf-portal .mf-prose hr { border:0; border-top:1px solid var(--mft-line); margin-block:var(--mft-space-6); }
.mf-theme.mf-portal .mf-protected-content { user-select:none; -webkit-user-select:none; }
@media print { .mf-theme.mf-portal .mf-protected-content { display:none !important; } }
.mf-theme.mf-portal .mf-form-width { max-width:var(--mft-form-width); }
.mf-theme.mf-portal .mf-choice--card { padding:var(--mft-space-4); border:1px solid var(--mft-field-border); border-radius:var(--mft-radius-control); background:var(--mft-surface); }
.mf-theme.mf-portal .mf-choice--card:has(input:checked) { border-color:var(--mft-focus); background:var(--mft-selected-bg); color:var(--mft-selected-text); }
.mf-theme.mf-portal [data-mf-flow-controls] { padding-block:var(--mft-space-2); }
.mf-theme.mf-portal .mf-section { display:grid; gap:var(--mft-space-6); padding-block:var(--mft-space-10); scroll-margin-top:var(--mft-space-6); border-bottom:1px solid var(--mft-line); }
.mf-theme.mf-portal .mf-row { display:flex; align-items:center; flex-wrap:wrap; gap:var(--mft-space-3); }
.mf-theme.mf-portal .mf-row--between { justify-content:space-between; }
.mf-theme.mf-portal .mf-workspace { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:var(--mft-space-6); align-items:start; }
.mf-theme.mf-portal .mf-workspace > * { min-width:0; }
.mf-theme.mf-portal .mf-card--accent { border-top:2px solid var(--mft-focus); }
@media(max-width:800px) { .mf-theme.mf-portal .mf-workspace { grid-template-columns:minmax(0,1fr); } }
.mf-theme.mf-portal .mf-stack--small { gap:var(--mft-space-2); }
.mf-theme.mf-portal .mf-stack--large { gap:var(--mft-space-8); }
.mf-theme.mf-portal .mf-divider { width:100%; border:0; border-top:1px solid var(--mft-line); margin-block:var(--mft-space-4); }
.mf-theme.mf-portal .mf-icon { width:var(--mft-icon-medium); height:var(--mft-icon-medium); flex-shrink:0; fill:none; stroke:currentColor; stroke-width:var(--mft-icon-stroke); stroke-linecap:round; stroke-linejoin:round; }
.mf-theme.mf-portal :is(.mf-button--small,:where(.btn-sm,.mfa-btn--sm,.cm-btn-sm,.sq-btn-xs)) { min-height:var(--mft-touch-target); padding:var(--mft-space-2) var(--mft-space-4); }
.mf-theme.mf-portal :is(.mf-button--quiet,:where(.btn-link,.btn-quiet)) { border-color:transparent; background:transparent; color:var(--mft-focus); }
.mf-theme.mf-portal :is(.mf-button--danger,:where(.btn-danger,.mfa-btn--danger,.cm-btn-danger,.vd-btn-danger)) { color:var(--mft-danger-text); background:var(--mft-danger-bg); border-color:var(--mft-danger-bg); }
.mf-theme.mf-portal .mf-button--icon { padding:var(--mft-space-3); min-width:var(--mft-touch-target); min-height:var(--mft-touch-target); }
.mf-theme.mf-portal :is(.mf-button,:where(.ck-nav-next,.rc-btn-primary,.btn,.mfa-btn,.cm-btn,.cv-btn,.vd-btn,.vo-btn,.bl-btn,.sq-btn,.ad-btn,.sb-btn,.mfp-btn,.mfl-btn,.btnx,.quick-action-btn,.ad-quick-btn,.rc-action-btn,.btn-approve,.mf-account button[type=submit],.btn-upgrade,.btn-access,.btn-member-primary,.btn-member-secondary,.btn-member-cta,.btn-member-nav))[aria-busy=true] { opacity:1; }
.mf-theme.mf-portal :is(.mf-badge,:where(.badge,.mfa-badge,.status-badge,.cm-badge,.cv-badge,.sq-badge)) { display:inline-flex; align-items:center; gap:var(--mft-space-2); width:fit-content; padding:var(--mft-space-1) var(--mft-space-2); border:1px solid var(--mft-line); border-radius:var(--mft-radius-pill); background:var(--mft-subtle); color:var(--mft-text); font-size:var(--mft-text-caption); font-weight:var(--mft-weight-semibold); }
.mf-theme.mf-portal :is(.mf-badge--success,:where(.badge-success,.cm-badge-green,.badge.bg-success,.mfa-badge--paid,.mfa-badge--complete,.status-badge.member)) { color:var(--mft-success-text); background:var(--mft-success-bg); border-color:var(--mft-success-border); }
.mf-theme.mf-portal :is(.mf-badge--attention,:where(.badge-warning,.cm-badge-amber,.badge.bg-warning,.mfa-badge--pending,.mfa-badge--draft)) { color:var(--mft-attention-text); background:var(--mft-attention-bg); border-color:var(--mft-attention-border); }
.mf-theme.mf-portal :is(.mf-badge--error,:where(.badge-danger,.badge.bg-danger,.mfa-badge--urgent,.mfa-badge--overdue)) { color:var(--mft-warning-text); background:var(--mft-warning-bg); border-color:var(--mft-warning-border); }
.mf-theme.mf-portal .mf-notice { display:flex; align-items:flex-start; gap:var(--mft-space-3); padding:var(--mft-space-4); border:1px solid var(--mft-line); border-radius:var(--mft-radius-control); background:var(--mft-subtle); color:var(--mft-text); }
.mf-theme.mf-portal .mf-notice .mf-icon { margin-top:2px; }
.mf-theme.mf-portal :is(.mf-notice--info,:where(.alert-info,.mf-account .notice,.approval-notice)) { background:var(--mft-info-bg); color:var(--mft-info-text); border-color:var(--mft-info-border); }
.mf-theme.mf-portal :is(.mf-notice--success,:where(.alert-success)) { background:var(--mft-success-bg); color:var(--mft-success-text); border-color:var(--mft-success-border); }
.mf-theme.mf-portal :is(.mf-notice--attention,:where(.alert-warning,.payment-info)) { background:var(--mft-attention-bg); color:var(--mft-attention-text); border-color:var(--mft-attention-border); }
.mf-theme.mf-portal :is(.mf-notice--warning,:is(.mf-notice--error,:where(.alert-danger,.error-alert))) { background:var(--mft-warning-bg); color:var(--mft-warning-text); border-color:var(--mft-warning-border); }
.mf-theme.mf-portal :is(.mf-label,:where(.form-label)) { font-size:var(--mft-text-note); font-weight:var(--mft-weight-semibold); }
.mf-theme.mf-portal :is(.mf-input,:where(.form-control,.form-select,.search-input,.te-input,.mf-account input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),.mf-account select,.mf-account textarea)):disabled { background:var(--mft-subtle); color:var(--mft-muted); cursor:not-allowed; }
.mf-theme.mf-portal :is(.mf-input,:where(.form-control,.form-select,.search-input,.te-input,.mf-account input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),.mf-account select,.mf-account textarea))[readonly] { background:var(--mft-subtle); }
.mf-theme.mf-portal .mf-fieldset { min-width:0; margin:0; padding:0; border:0; }
.mf-theme.mf-portal .mf-fieldset legend { margin-bottom:var(--mft-space-3); font-weight:var(--mft-weight-semibold); }
.mf-theme.mf-portal .mf-choice { display:flex; align-items:center; gap:var(--mft-space-3); min-height:var(--mft-touch-target); cursor:pointer; }
.mf-theme.mf-portal .mf-choice input { width:20px; height:20px; accent-color:var(--mft-focus); flex-shrink:0; }
.mf-theme.mf-portal :is(.mf-error-text,:where(.invalid-feedback)) { color:var(--mft-danger-bg); font-size:var(--mft-text-note); }
.mf-theme.mf-portal textarea:is(.mf-input,:where(.form-control,.form-select,.search-input,.te-input,.mf-account input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),.mf-account select,.mf-account textarea)) { min-height:120px; resize:vertical; }
.mf-theme.mf-portal .mf-progress { display:block; height:var(--mft-progress-height); border-radius:var(--mft-radius-pill); }
.mf-theme.mf-portal .mf-progress-shell { position:relative; overflow:hidden; border-radius:var(--mft-radius-pill); }
.mf-theme.mf-portal .mf-progress-shell[data-mf-active=true]::after { content:""; position:absolute; inset:0; background:linear-gradient(100deg,transparent 15%,#ffffff66 50%,transparent 85%); width:40%; transform:translateX(-100%); animation:mf-sheen var(--mft-motion-slow) ease-in-out infinite; pointer-events:none; }
.mf-theme.mf-portal .mf-buffer { position:relative; overflow:hidden; height:var(--mft-progress-height); border-radius:var(--mft-radius-pill); background:var(--mft-line); }
.mf-theme.mf-portal .mf-buffer::after { content:""; display:block; width:40%; height:100%; border-radius:inherit; background:var(--mft-focus); animation:mf-sheen var(--mft-motion-buffer) ease-in-out infinite; }
.mf-theme.mf-portal :is(.mf-spinner,:where(.spinner-border)) { display:inline-block; width:var(--mft-spinner-size); height:var(--mft-spinner-size); flex-shrink:0; border:var(--mft-spinner-width) solid currentColor; border-right-color:transparent; border-radius:50%; animation:mf-spin var(--mft-motion-spin) linear infinite; }
.mf-theme.mf-portal :is(.mf-skeleton,:where(.skeleton)) { height:1em; border-radius:var(--mft-radius-small); background:var(--mft-line); animation:mf-breathe var(--mft-motion-slow) ease-in-out infinite; }
.mf-theme.mf-portal .mf-skeleton--title { width:55%; height:1.5em; }
.mf-theme.mf-portal .mf-skeleton--short { width:75%; }
@keyframes mf-sheen { 0% { transform:translateX(-100%); opacity:.25; } 50% { opacity:1; } 100% { transform:translateX(350%); opacity:.25; } }
@keyframes mf-spin { to { transform:rotate(360deg); } }
@keyframes mf-breathe { 50% { opacity:.45; } }
.mf-theme.mf-portal .mf-stat { font-size:var(--mft-text-h1); line-height:var(--mft-leading-heading); font-weight:var(--mft-weight-semibold); font-variant-numeric:tabular-nums; }
.mf-theme.mf-portal .mf-chart { display:block; width:100%; height:var(--mft-chart-height); overflow:visible; }
.mf-theme.mf-portal [data-mf-chart]:not([data-mf-ready])::before { content:""; display:block; height:var(--mft-chart-height); }
.mf-theme.mf-portal .mf-chart-grid { stroke:var(--mft-line); stroke-width:1; }
.mf-theme.mf-portal .mf-chart-text { fill:var(--mft-muted); font-family:var(--mft-font); font-size:13px; }
.mf-theme.mf-portal .mf-chart-series { fill:none; stroke:var(--mft-chart-1); stroke-width:var(--mft-chart-stroke); stroke-linejoin:round; stroke-linecap:round; }
.mf-theme.mf-portal .mf-chart-series--second { stroke:var(--mft-chart-2); stroke-dasharray:7 5; }
.mf-theme.mf-portal .mf-chart-dot { fill:var(--mft-surface); stroke:var(--mft-chart-1); stroke-width:2; }
.mf-theme.mf-portal .mf-chart-dot--second { stroke:var(--mft-chart-2); stroke-dasharray:2 1; }
.mf-theme.mf-portal .mf-chart-bar { fill:var(--mft-chart-2); }
.mf-theme.mf-portal .mf-chart-key { display:inline-block; width:24px; border-top:3px solid var(--mft-chart-1); }
.mf-theme.mf-portal .mf-chart-key--second { border-color:var(--mft-chart-2); border-top-style:dashed; }
.mf-theme.mf-portal :is(.mf-table,:where(.table,.mfa-table,.cm-table,.cv-table,.vd-table,.signin-shell table)) th { font-size:var(--mft-text-note); color:var(--mft-muted); font-weight:var(--mft-weight-semibold); }
.mf-theme.mf-portal :is(.mf-table,:where(.table,.mfa-table,.cm-table,.cv-table,.vd-table,.signin-shell table)) caption { text-align:left; margin-bottom:var(--mft-space-3); color:var(--mft-muted); font-size:var(--mft-text-note); }
.mf-theme.mf-portal :is(.mf-table,:where(.table,.mfa-table,.cm-table,.cv-table,.vd-table,.signin-shell table)) td { font-variant-numeric:tabular-nums; }
.mf-theme.mf-portal .mf-nav { display:flex; gap:var(--mft-space-1); padding:var(--mft-space-2); border:1px solid var(--mft-line); border-radius:var(--mft-radius-panel); background:var(--mft-surface); }
.mf-theme.mf-portal .mf-nav a { display:flex; flex:1; flex-direction:column; align-items:center; justify-content:center; gap:var(--mft-space-1); min-width:0; min-height:var(--mft-navigation-target); padding:var(--mft-space-2) var(--mft-space-1); border-radius:var(--mft-radius-control); color:var(--mft-muted); text-decoration:none; font-size:var(--mft-text-caption); }
.mf-theme.mf-portal .mf-nav [aria-current=page] { color:var(--mft-selected-text); background:var(--mft-selected-bg); font-weight:var(--mft-weight-semibold); }
.mf-theme.mf-portal .mf-brandbar { display:flex; align-items:center; justify-content:space-between; gap:var(--mft-space-4); padding-block:var(--mft-space-5); }
.mf-theme.mf-portal .mf-skip-link:not(:focus) { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.mf-theme.mf-portal .mf-skip-link:focus { position:fixed; inset-block-start:var(--mft-space-3); inset-inline-start:var(--mft-space-3); z-index:var(--mft-layer-skip-link); padding:var(--mft-space-3); background:var(--mft-surface); color:var(--mft-focus); border:1px solid var(--mft-focus); border-radius:var(--mft-radius-control); }
.mf-theme.mf-portal .mf-brand { display:inline-flex; align-items:center; gap:var(--mft-space-4); min-height:var(--mft-touch-target); color:var(--mft-text); text-decoration:none; flex-shrink:0; }
.mf-theme.mf-portal .mf-brand-logo { width:var(--mft-logo-width); height:var(--mft-logo-height); object-fit:contain; filter:brightness(0); }
.mf-theme.mf-portal[data-mf-theme=dark] .mf-brand-logo { filter:none; }
.mf-theme.mf-portal .mf-brand-product { padding-left:var(--mft-space-4); border-left:1px solid var(--mft-line); font-size:var(--mft-text-note); color:var(--mft-muted); }
.mf-theme.mf-portal .mf-brand-centre { min-width:0; color:var(--mft-muted); font-size:var(--mft-text-note); text-align:right; overflow-wrap:anywhere; }
.mf-theme.mf-portal .mf-navigation-dock { position:fixed; z-index:var(--mft-layer-navigation); bottom:0; inset-inline:0; padding:var(--mft-space-3) var(--mft-space-4) calc(var(--mft-space-3) + env(safe-area-inset-bottom)); pointer-events:none; }
.mf-theme.mf-portal .mf-navigation-dock .mf-nav { max-width:var(--mft-navigation-width); margin-inline:auto; box-shadow:var(--mft-shadow); pointer-events:auto; }
.mf-theme.mf-portal.mf-customer-shell { padding-bottom:calc(var(--mft-navigation-clearance) + env(safe-area-inset-bottom)); }
.mf-theme.mf-portal.mf-customer-shell :is(a,button,input,textarea,select,[tabindex]) { scroll-margin-bottom:calc(var(--mft-navigation-focus-clearance) + env(safe-area-inset-bottom)); }
.mf-theme.mf-portal .mf-action-list { display:grid; gap:var(--mft-space-1); }
.mf-theme.mf-portal .mf-action-list a { display:flex; align-items:center; justify-content:space-between; gap:var(--mft-space-3); min-height:var(--mft-touch-target); padding:var(--mft-space-3) 0; color:var(--mft-focus); border-bottom:1px solid var(--mft-line); text-decoration:none; }
.mf-theme.mf-portal .mf-action-list a:hover { text-decoration:underline; }
.mf-theme.mf-portal .mf-footer { display:grid; gap:var(--mft-space-3); border-top:1px solid var(--mft-line); }
.mf-theme.mf-portal .mf-footer-links { display:flex; flex-wrap:wrap; gap:var(--mft-space-2) var(--mft-space-5); }
.mf-theme.mf-portal .mf-footer-links a { display:inline-flex; align-items:center; min-height:var(--mft-touch-target); color:var(--mft-muted); font-size:var(--mft-text-note); }
@media(max-width:600px) {
  .mf-theme.mf-portal .mf-brandbar { flex-wrap:wrap; padding-block:var(--mft-space-3); }
  .mf-theme.mf-portal .mf-brand-centre { flex-basis:100%; text-align:left; font-size:var(--mft-text-caption); }
  .mf-theme.mf-portal .mf-navigation-dock { padding:0 0 env(safe-area-inset-bottom); background:var(--mft-surface); border-top:1px solid var(--mft-line); }
  .mf-theme.mf-portal .mf-navigation-dock .mf-nav { border:0; border-radius:0; box-shadow:none; }
}
.mf-theme.mf-portal .mf-breadcrumb { display:flex; flex-wrap:wrap; gap:var(--mft-space-2); padding:0; margin:0; list-style:none; color:var(--mft-muted); font-size:var(--mft-text-note); }
.mf-theme.mf-portal .mf-breadcrumb li + li::before { content:"/"; margin-right:var(--mft-space-2); color:var(--mft-muted); }
.mf-theme.mf-portal .mf-tabs { display:flex; flex-wrap:wrap; gap:var(--mft-space-2); border-bottom:1px solid var(--mft-line); }
.mf-theme.mf-portal .mf-tabs [role=tab] { font:inherit; background:transparent; color:var(--mft-muted); min-height:var(--mft-touch-target); border:0; border-bottom:2px solid transparent; padding:var(--mft-space-3); cursor:pointer; }
.mf-theme.mf-portal .mf-tabs [aria-selected=true] { color:var(--mft-focus); border-bottom-color:var(--mft-focus); }
.mf-theme.mf-portal .mf-stepper { display:flex; gap:var(--mft-space-4); flex-wrap:wrap; padding:0; margin:0; list-style:none; counter-reset:step; }
.mf-theme.mf-portal .mf-stepper li { display:flex; align-items:center; gap:var(--mft-space-2); counter-increment:step; font-size:var(--mft-text-note); color:var(--mft-muted); }
.mf-theme.mf-portal .mf-stepper li::before { content:counter(step); display:grid; place-items:center; width:28px; height:28px; border:1px solid var(--mft-line); border-radius:50%; }
.mf-theme.mf-portal .mf-stepper [aria-current=step] { color:var(--mft-text); font-weight:var(--mft-weight-semibold); }
.mf-theme.mf-portal .mf-stepper [aria-current=step]::before { border-color:var(--mft-focus); background:var(--mft-info-bg); }
.mf-theme.mf-portal .mf-details { border:1px solid var(--mft-line); border-radius:var(--mft-radius-control); background:var(--mft-surface); padding:var(--mft-space-4); }
.mf-theme.mf-portal .mf-details summary { cursor:pointer; font-weight:var(--mft-weight-semibold); min-height:var(--mft-touch-target); align-content:center; }
.mf-theme.mf-portal .mf-details .mf-disclosure-summary { position:relative; list-style:none; padding-inline-end:var(--mft-space-6); }
.mf-theme.mf-portal .mf-disclosure-summary::-webkit-details-marker { display:none; }
.mf-theme.mf-portal .mf-disclosure-summary::after { content:"›"; position:absolute; inset-inline-end:0; top:50%; transform:translateY(-50%); font-size:var(--mft-text-h3); color:var(--mft-muted); }
.mf-theme.mf-portal .mf-details[open] > .mf-disclosure-summary::after { transform:translateY(-50%) rotate(90deg); }
.mf-theme.mf-portal .mf-details[open] > .mf-disclosure-summary { margin-bottom:var(--mft-space-4); }
.mf-theme.mf-portal .mf-code { white-space:pre-wrap; overflow-wrap:anywhere; margin:0; padding:var(--mft-space-4); background:var(--mft-subtle); border-radius:var(--mft-radius-control); font:var(--mft-text-note)/1.6 var(--mft-font-mono); color:var(--mft-text); }
.mf-theme.mf-portal :is(.mf-empty,:where(.mfa-empty,.empty-state)) { display:grid; justify-items:start; gap:var(--mft-space-3); padding:var(--mft-space-6); border:1px dashed var(--mft-field-border); border-radius:var(--mft-radius-panel); }
.mf-theme.mf-portal .mf-dialog { width:calc(100% - 32px); max-width:var(--mft-modal-width); max-height:calc(100% - 48px); overflow:auto; padding:var(--mft-space-6); border:1px solid var(--mft-line); border-radius:var(--mft-radius-panel); background:var(--mft-surface); color:var(--mft-text); font:inherit; }
.mf-theme.mf-portal .mf-dialog::backdrop { background:var(--mft-backdrop); }
.mf-theme.mf-portal .mf-toast { position:fixed; z-index:var(--mft-layer-toast); bottom:max(var(--mft-space-6),env(safe-area-inset-bottom)); right:var(--mft-space-4); max-width:min(420px,calc(100% - 32px)); box-shadow:var(--mft-shadow); }
.mf-theme.mf-portal .mf-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.mf-theme.mf-portal .mf-skip { position:absolute; top:8px; left:8px; transform:translateY(-160%); z-index:50; }
.mf-theme.mf-portal .mf-skip:focus { transform:none; }
.mf-theme.mf-portal :is(a,button,input,select,textarea,summary,[tabindex]):not(:is(.mf-button,:where(.ck-nav-next,.rc-btn-primary,.btn,.mfa-btn,.cm-btn,.cv-btn,.vd-btn,.vo-btn,.bl-btn,.sq-btn,.ad-btn,.sb-btn,.mfp-btn,.mfl-btn,.btnx,.quick-action-btn,.ad-quick-btn,.rc-action-btn,.btn-approve,.mf-account button[type=submit],.btn-upgrade,.btn-access,.btn-member-primary,.btn-member-secondary,.btn-member-cta,.btn-member-nav))):focus-visible { outline:3px solid var(--mft-focus); outline-offset:3px; }
.mf-theme.mf-portal [hidden] { display:none !important; }
.mf-theme.mf-portal[data-mf-motion=paused] *, .mf-theme.mf-portal[data-mf-motion=paused] *::after { animation-play-state:paused !important; transition:none !important; }
.mf-theme.mf-portal .mf-motion-paused, .mf-theme.mf-portal .mf-motion-paused::before, .mf-theme.mf-portal .mf-motion-paused::after { animation-play-state:paused !important; }
@media(prefers-reduced-motion:reduce) { .mf-theme.mf-portal :is(:is(.mf-spinner,:where(.spinner-border)),.mf-buffer::after,:is(.mf-skeleton,:where(.skeleton)),.mf-progress-shell::after) { animation:none; } }
@media(forced-colors:active) { .mf-theme.mf-portal :is(.mf-button,:where(.ck-nav-next,.rc-btn-primary,.btn,.mfa-btn,.cm-btn,.cv-btn,.vd-btn,.vo-btn,.bl-btn,.sq-btn,.ad-btn,.sb-btn,.mfp-btn,.mfl-btn,.btnx,.quick-action-btn,.ad-quick-btn,.rc-action-btn,.btn-approve,.mf-account button[type=submit],.btn-upgrade,.btn-access,.btn-member-primary,.btn-member-secondary,.btn-member-cta,.btn-member-nav)) { border:1px solid ButtonText; } .mf-theme.mf-portal :is(.mf-spinner,:where(.spinner-border)) { border-color:CanvasText; border-right-color:transparent; } }
/* Portal adapter: layout/behaviour stays with the application; paint comes from
   the shared tokens. Do not copy these rules into individual page templates. */
.mf-theme.mf-portal {
  --bs-body-font-family:var(--mft-font); --bs-body-color:var(--mft-text); --bs-body-bg:var(--mft-background);
  --bs-border-color:var(--mft-line); --bs-link-color:var(--mft-focus);
  --mf-font:var(--mft-font); --mf-ink:var(--mft-text); --mf-muted:var(--mft-muted); --mf-line:var(--mft-line);
  --mf-primary:var(--mft-button-surface-bottom); --mf-accent:var(--mft-selected-text);
  --mf-radius-panel:var(--mft-radius-panel); --mf-radius-control:var(--mft-radius-control);
  --mfa-font-body:var(--mft-font); --mfa-font-display:var(--mft-font);
  --mfa-bg:var(--mft-background); --mfa-white:var(--mft-surface); --mfa-soft:var(--mft-subtle);
  --mfa-text:var(--mft-text); --mfa-muted:var(--mft-muted); --mfa-border:var(--mft-line);
  --mfa-navy:var(--mft-nav-surface); --mfa-navy-2:var(--mft-nav-surface);
  --mfa-blue:var(--mft-focus); --mfa-blue-bg:var(--mft-info-bg); --mfa-blue-fg:var(--mft-info-text);
  --mfa-green:var(--mft-success-border); --mfa-green-bg:var(--mft-success-bg); --mfa-green-fg:var(--mft-success-text);
  --mfa-yellow:var(--mft-attention-border); --mfa-yellow-bg:var(--mft-attention-bg); --mfa-yellow-fg:var(--mft-attention-text);
  --mfa-orange:var(--mft-attention-text); --mfa-orange-bg:var(--mft-attention-bg); --mfa-orange-fg:var(--mft-attention-text);
  --mfa-red:var(--mft-danger-bg); --mfa-red-bg:var(--mft-warning-bg); --mfa-red-fg:var(--mft-warning-text);
  --mfa-grey-bg:var(--mft-subtle); --mfa-grey-fg:var(--mft-muted);
  --mfa-radius:var(--mft-radius-panel); --mfa-radius-sm:var(--mft-radius-control); --mfa-radius-lg:var(--mft-radius-panel); --mfa-radius-pill:var(--mft-radius-pill);
  --mfa-shadow:var(--mft-shadow); --mfa-shadow-lg:var(--mft-shadow);
  --ink:var(--mft-text); --muted:var(--mft-muted); --muted-2:var(--mft-muted); --line:var(--mft-line); --line-strong:var(--mft-field-border);
  --surface:var(--mft-surface); --surface-2:var(--mft-background); --surface-3:var(--mft-subtle);
  --navy-950:var(--mft-nav-surface); --navy-900:var(--mft-nav-surface); --navy-800:var(--mft-text);
  --blue-700:var(--mft-focus); --blue-600:var(--mft-focus); --blue-500:var(--mft-focus); --blue-100:var(--mft-info-bg); --blue-50:var(--mft-subtle);
  --success:var(--mft-success-text); --success-bg:var(--mft-success-bg); --warning:var(--mft-attention-text); --warning-bg:var(--mft-attention-bg);
  --danger:var(--mft-warning-text); --danger-bg:var(--mft-warning-bg); --radius:var(--mft-radius-panel); --radius-sm:var(--mft-radius-control);
  --shadow-sm:var(--mft-shadow); --shadow-md:var(--mft-shadow);
  --brand-navy:var(--mft-nav-surface); --brand-navy-light:var(--mft-nav-surface); --brand-accent:var(--mft-focus);
  --bg-app:var(--mft-background); --bg-surface:var(--mft-surface); --bg-subtle:var(--mft-subtle);
  --text-primary:var(--mft-text); --text-secondary:var(--mft-muted); --text-tertiary:var(--mft-muted);
  --navy:var(--mft-nav-surface); --navy2:var(--mft-nav-surface); --bg:var(--mft-background); --border:var(--mft-line); --text:var(--mft-text);
  --radius-md:var(--mft-radius-panel); --radius-lg:var(--mft-radius-panel); --shadow:var(--mft-shadow); --shadow-lg:var(--mft-shadow);
  margin:0; background:var(--mft-background) !important; color:var(--mft-text); font-family:var(--mft-font); scrollbar-gutter:stable;
}
.mf-theme.mf-portal :is(h1,h2,h3,h4,h5,h6) { font-family:var(--mft-font); font-weight:var(--mft-weight-semibold); text-shadow:none; }
.mf-theme.mf-portal :is(h1,h2,h3,h4,h5,h6) { margin-bottom:var(--mft-space-3); }
.mf-theme.mf-portal .mf-account form + p { margin-top:var(--mft-space-4); }
.mf-theme.mf-portal p { margin-bottom:var(--mft-space-4); }
.mf-theme.mf-portal :is(p:last-child,.card-text:last-child) { margin-bottom:0; }
.mf-theme.mf-portal :is(.text-muted,.form-text,.small.text-muted) { color:var(--mft-muted) !important; }
.mf-theme.mf-portal :is(.card,.shell-card,.metric-card,.stat-card,.dashboard-card,.section-card,.ticket-card,.mf-panel,.registration-section,.cm-card,.cm-summary-card,.cv-card,.vd-card,.vo-card,.bl-summary-card,.sq-sum-card,.ad-card,.ad-summary-card,.c360-card,.rc-card,.panelx,.pod-card,.chart-card,.benefit-card,.mfp-feat-card,.mfl-feat-card,.sb-inc-card) {
  min-width:0; border:1px solid var(--mft-line); border-radius:var(--mft-radius-panel); box-shadow:var(--mft-shadow); background:var(--mft-surface); color:var(--mft-text);
  transform:none; transition:border-color var(--mft-motion-fast) ease;
}
.mf-theme.mf-portal :is(.card,.dashboard-card,.metric-card,.stat-card,.benefit-card):hover { transform:none; box-shadow:var(--mft-shadow); }
.mf-theme.mf-portal :is(.card-header,.card-footer,.card-head,.cm-card-head,.vd-card-head,.vo-card-head,.ad-card-head,.rc-card-header) {
  padding:var(--mft-space-4) var(--mft-space-5); background:var(--mft-subtle); border-color:var(--mft-line); color:var(--mft-text);
}
.mf-theme.mf-portal :is(.card-body,.cm-card-body,.vd-card-body,.vo-card-body,.ad-card-body) { padding:var(--mft-space-5); }
.mf-theme.mf-portal :is(.card-header,.card-head) :is(h1,h2,h3,h4,h5,h6) { font-size:var(--mft-text-h5); line-height:var(--mft-leading-heading); margin:0; }
.mf-theme.mf-portal :is(.btn,.mfa-btn,.cm-btn,.cv-btn,.vd-btn,.vo-btn,.bl-btn,.sq-btn,.ad-btn,.sb-btn,.mfp-btn,.mfl-btn,.btnx,.quick-action-btn,.ad-quick-btn,.rc-action-btn,.btn-approve,.mf-account button[type=submit]) {
  min-height:var(--mft-touch-target); font-size:var(--mft-text-note); padding:var(--mft-space-2) var(--mft-space-4); text-transform:none; letter-spacing:normal;
  white-space:normal; transform:none !important; text-shadow:none; animation:none;
}
.mf-theme.mf-portal :is(.btn-primary,.btn-login,.btn-approve) { background:linear-gradient(180deg,var(--mft-button-surface-top),var(--mft-button-surface-bottom)) !important; color:var(--mft-button-surface-foreground) !important; }
.mf-theme.mf-portal :is(.btn-primary,.btn-login,.btn-approve) > * { color:inherit !important; }
.mf-theme.mf-portal :is(.btn,.mf-button,.mfa-btn,.cm-btn,.cv-btn,.vd-btn,.vo-btn,.bl-btn,.sq-btn,.ad-btn,.sb-btn,.mfp-btn,.mfl-btn,.btnx).disabled { opacity:.65; pointer-events:none; }
.mf-theme.mf-portal :is(.btn-success,.btn-outline-success) { background:var(--mft-success-bg); color:var(--mft-success-text); border-color:var(--mft-success-border); }
.mf-theme.mf-portal :is(.btn-warning,.btn-outline-warning) { background:var(--mft-attention-bg); color:var(--mft-attention-text); border-color:var(--mft-attention-border); }
.mf-theme.mf-portal :is(.btn-info,.btn-outline-info) { background:var(--mft-info-bg); color:var(--mft-info-text); border-color:var(--mft-info-border); }
.mf-theme.mf-portal .btn-outline-danger { color:var(--mft-danger-bg); border-color:var(--mft-danger-bg); }
.mf-theme.mf-portal .btn-close { min-width:24px; min-height:24px; padding:10px; background-size:12px; }
.mf-theme.mf-portal :is(.form-control,.form-select,.mf-account input,.mf-account select,.mf-account textarea) { font-size:var(--mft-text-body); box-shadow:none; }
.mf-theme.mf-portal :is(input,select,textarea):disabled { background-color:var(--mft-subtle); color:var(--mft-muted); }
.mf-theme.mf-portal :is(.form-control,.form-select).is-invalid { border-color:var(--mft-danger-bg); }
.mf-theme.mf-portal :is(.form-control,.form-select).is-valid { border-color:var(--mft-success-border); }
.mf-theme.mf-portal .form-check-input { accent-color:var(--mft-focus); }
.mf-theme.mf-portal .form-check-input:checked { background-color:var(--mft-focus); border-color:var(--mft-focus); }
.mf-theme.mf-portal .alert { padding:var(--mft-space-4); border-width:1px; border-style:solid; border-radius:var(--mft-radius-control); box-shadow:none; }
.mf-theme.mf-portal .alert-dismissible { padding-right:3.5rem; }
.mf-theme.mf-portal .alert :is(h1,h2,h3,h4,h5,h6,a) { color:inherit; }
.mf-theme.mf-portal :is(.table,.mfa-table,.cm-table,.cv-table,.vd-table) { --bs-table-bg:var(--mft-surface); --bs-table-color:var(--mft-text); --bs-table-border-color:var(--mft-line); --bs-table-striped-bg:var(--mft-subtle); --bs-table-striped-color:var(--mft-text); --bs-table-hover-bg:var(--mft-info-bg); --bs-table-hover-color:var(--mft-text); }
.mf-theme.mf-portal :is(.table thead,.table-light) { --bs-table-bg:var(--mft-subtle); --bs-table-color:var(--mft-muted); }
.mf-theme.mf-portal .table-responsive { border-radius:var(--mft-radius-control); }
.mf-theme.mf-portal :is(.modal-content,.dropdown-menu,.list-group-item,.accordion-item) { color:var(--mft-text); background-color:var(--mft-surface); border-color:var(--mft-line); }
.mf-theme.mf-portal .modal-content { border-radius:var(--mft-radius-panel); box-shadow:var(--mft-shadow); }
.mf-theme.mf-portal :is(.dropdown-item,.page-link) { color:var(--mft-text); min-height:var(--mft-touch-target); }
.mf-theme.mf-portal :is(.dropdown-item:hover,.dropdown-item:focus,.page-link:hover) { color:var(--mft-selected-text); background:var(--mft-selected-bg); }
.mf-theme.mf-portal :is(.nav-pills .nav-link.active,.page-item.active .page-link,.accordion-button:not(.collapsed)) { color:var(--mft-selected-text); background:var(--mft-selected-bg); border-color:var(--mft-line); box-shadow:none; }
.mf-theme.mf-portal .progress { height:var(--mft-progress-height); background:var(--mft-line); border-radius:var(--mft-radius-pill); }
.mf-theme.mf-portal .progress-bar { background:var(--mft-focus); }
.mf-theme.mf-portal .ck-progress-wrap { background:var(--mft-line); }
.mf-theme.mf-portal .ck-progress-bar { background:var(--mft-focus); }
/* Keep legacy entrances stationary: sliding alerts caused mobile overflow. */
.mf-theme.mf-portal :is(.alert,.form-group,.card,.pod-card,.dashboard-card) { animation:none !important; transform:none !important; }
.mf-theme.mf-portal .progress-bar-animated { animation:mf-breathe var(--mft-motion-slow) ease-in-out infinite; }
.mf-theme.mf-portal :is(.navigation-banner,.brand-header,.mobile-header,.login-header,.shell-sidebar,.admin-header,.admin-sidebar-desktop,.admin-sidebar-mobile) { background:var(--mft-nav-surface) !important; color:var(--mft-nav-text); text-shadow:none; }
/* Admin layout geometry stays in the portal; its surfaces share both themes. */
.mf-theme.mf-portal .admin-main-content { background:var(--mft-background); color:var(--mft-text); }
.mf-theme.mf-portal :is(.admin-breadcrumb,.sidebar-brand,.admin-sidebar-mobile .offcanvas-title) { color:var(--mft-nav-text); }
.mf-theme.mf-portal .admin-nav-link { color:var(--mft-nav-text) !important; }
.mf-theme.mf-portal .admin-nav-link:is(:hover,:focus-visible,.active) { color:var(--mft-selected-text) !important; background:var(--mft-selected-bg); border-left-color:var(--mft-selected-text); }
.mf-theme.mf-portal .admin-nav .nav-section-title { color:var(--mft-nav-muted); }
.mf-theme.mf-portal :is(.topbar,.navbar) { background:var(--mft-surface); color:var(--mft-text); border-bottom:1px solid var(--mft-line); backdrop-filter:none; }
.mf-theme.mf-portal .topbar .search-input { padding-left:46px; }
.mf-theme.mf-portal .workspace-nav-link.active { background:var(--mft-selected-bg); color:var(--mft-selected-text); box-shadow:inset 3px 0 0 var(--mft-selected-text); }
.mf-theme.mf-portal .workspace-filters a[aria-current=page] { background:var(--mft-selected-bg); color:var(--mft-selected-text); border-color:var(--mft-selected-text); }
.mf-theme.mf-portal :is(.navigation-banner,.brand-header,.mobile-header,.shell-sidebar) .text-muted { color:var(--mft-nav-muted) !important; }
.mf-theme.mf-portal :is(.shell-sidebar .nav-item.active,.shell-sidebar .nav-item:hover) { color:var(--mft-selected-text); background:var(--mft-selected-bg); }
.mf-theme.mf-portal :is(.sidebar-label,.brand-tag,.admin-mini span) { color:var(--mft-nav-muted); }
.mf-theme.mf-portal :is(.page-head h1,.mfa-page-head__title) { color:var(--mft-text); font-size:var(--mft-text-h2); }
.mf-theme.mf-portal :is(.page-head p,.eyebrow,.section-title) { color:var(--mft-muted); }
.mf-theme.mf-portal :is(.input-group,.btn-group) { max-width:100%; }
.mf-theme.mf-portal :is(.chart-container,.chart-card) { min-width:0; }
.mf-theme.mf-portal :is(.bg-primary,.bg-dark,.continue-learning-card,.navbar.navbar-dark) { background:var(--mft-nav-surface) !important; color:var(--mft-nav-text) !important; }
.mf-theme.mf-portal .bg-secondary { background:var(--mft-muted) !important; color:var(--mft-surface) !important; }
.mf-theme.mf-portal :is(.bg-light,.bg-white) { background:var(--mft-surface) !important; color:var(--mft-text) !important; }
.mf-theme.mf-portal .bg-info { background:var(--mft-info-bg) !important; color:var(--mft-info-text) !important; }
.mf-theme.mf-portal .bg-success { background:var(--mft-success-bg) !important; color:var(--mft-success-text) !important; }
.mf-theme.mf-portal .bg-warning { background:var(--mft-attention-bg) !important; color:var(--mft-attention-text) !important; }
.mf-theme.mf-portal .bg-danger { background:var(--mft-warning-bg) !important; color:var(--mft-warning-text) !important; border-color:var(--mft-warning-border); }
.mf-theme.mf-portal :is(.card-header,.card).bg-primary :is(h1,h2,h3,h4,h5,h6,p) { color:var(--mft-nav-text) !important; }
.mf-theme.mf-portal :is(.card-header,.card):is(.bg-info,.bg-success,.bg-warning,.bg-danger,.bg-light) :is(h1,h2,h3,h4,h5,h6,p,.text-white,.text-dark) { color:inherit !important; }
.mf-theme.mf-portal :is(.text-primary,.text-info) { color:var(--mft-focus) !important; }
.mf-theme.mf-portal .text-success { color:var(--mft-success-text) !important; }
.mf-theme.mf-portal .text-warning { color:var(--mft-attention-text) !important; }
.mf-theme.mf-portal .text-danger { color:var(--mft-danger-bg) !important; }
.mf-theme.mf-portal :is(.fast-btn,.note-tab,.back-button,.control-button) { min-height:var(--mft-touch-target); font-family:var(--mft-font); border-radius:var(--mft-radius-control); }
.mf-theme.mf-portal .preview-bar { background:var(--mft-attention-bg); color:var(--mft-attention-text); box-shadow:var(--mft-shadow); }
.mf-theme.mf-portal .security-notice { background:var(--mft-attention-bg); color:var(--mft-attention-text); border-color:var(--mft-attention-border); }
.mf-theme.mf-portal .document-header { background:var(--mft-nav-surface); color:var(--mft-nav-text); }
.mf-theme.mf-portal :is(.store-hero,.kb-training-hero,.rc-greeting,.support-hero,.profile-hero,.hero-section) { background:var(--mft-nav-surface); color:var(--mft-nav-text); text-shadow:none; }
.mf-theme.mf-portal :is(.store-hero,.kb-training-hero,.rc-greeting,.support-hero,.profile-hero,.hero-section) :is(h1,h2,p) { color:inherit; text-shadow:none; }
.mf-theme.mf-portal :is(.membership-benefits-banner,.access-card,.customer-savings-tag) { background:var(--mft-info-bg); color:var(--mft-info-text); border:1px solid var(--mft-info-border); border-radius:var(--mft-radius-panel); box-shadow:var(--mft-shadow); }
.mf-theme.mf-portal .access-card.pending { background:var(--mft-attention-bg); color:var(--mft-attention-text); border-color:var(--mft-attention-border); }
.mf-theme.mf-portal :is(.benefits-text h3,.benefits-text p,.benefits-list li,.benefits-note,.access-card h2,.access-card p) { color:inherit; }
.mf-theme.mf-portal .benefits-icon { color:var(--mft-focus); font-size:var(--mft-text-h1); animation:none; }
.mf-theme.mf-portal :is(.membership-benefits-banner,.navigation-banner)::before, .mf-theme.mf-portal .dashboard-card::after { display:none; }
.mf-theme.mf-portal :is(.btn-upgrade,.btn-member-primary,.btn-member-cta,.btn-member-nav) { transform:none !important; text-shadow:none; }
.mf-theme.mf-portal .status-badge.member { background:var(--mft-success-bg); color:var(--mft-success-text); border:1px solid var(--mft-success-border); backdrop-filter:none; }
.mf-theme.mf-portal :is(.navbar .btn-warning,.btn-upgrade) { border-radius:var(--mft-radius-control) !important; box-shadow:var(--mft-shadow); }
.mf-theme.mf-portal :is(.workspace-tools,.workspace-queue-links,.workspace-action) { border-color:var(--mft-line); }
.mf-theme.mf-portal .workspace-queue-links { background:var(--mft-subtle); }
.mf-theme.mf-portal .workspace-mobile-panel { background:var(--mft-nav-surface); }
.mf-theme.mf-portal :is(.navigation-banner,.brand-header,.mobile-header,.login-header) :is(h1,h2,h3,h4,h5,h6,p,.nav-btn,.nav-link) { color:var(--mft-nav-text); text-shadow:none; }
.mf-theme.mf-portal .navigation-banner .nav-link.active { background:var(--mft-selected-bg); color:var(--mft-selected-text); border-color:var(--mft-selected-text); }
.mf-theme.mf-portal .navigation-banner :is(.banner-title h1,.banner-title p) { animation:none; }
.mf-theme.mf-portal :is(.btn-upgrade,.btn-member-primary,.btn-member-cta,.btn-member-nav) { color:var(--mft-button-surface-foreground) !important; }
.mf-theme.mf-portal .navbar :is(.btn-warning,.btn-warning:hover) { background:var(--mft-attention-bg) !important; color:var(--mft-attention-text) !important; border-color:var(--mft-attention-border); }
.mf-theme.mf-portal :is(.btn-success,.btn-warning,.btn-info) { box-shadow:none; }
@media(max-width:600px) {
  .mf-theme.mf-portal :is(input,select,textarea) { font-size:var(--mft-text-body); }
  .mf-theme.mf-portal .hist-body { min-width:0; overflow-wrap:anywhere; }
  .mf-theme.mf-portal .hist-card { flex-wrap:wrap; }
  .mf-theme.mf-portal :is(.page-head,.mfa-page-head) { flex-wrap:wrap; }
  .mf-theme.mf-portal :is(.head-actions,.mfa-page-head__actions) { justify-content:flex-start; flex-wrap:wrap; }
  .mf-theme.mf-portal :is(.card-body,.cm-card-body,.vd-card-body,.vo-card-body,.ad-card-body,.card-header,.card-footer) { padding:var(--mft-space-4); }
}
@media(prefers-reduced-motion:reduce) {
  .mf-theme.mf-portal *, .mf-theme.mf-portal *::before, .mf-theme.mf-portal *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
