/* A205 — Budget uses the A200 checklist-list.css design master.
   Loaded after the original shell. Scope never targets another app page.
   Legacy sheets and their handlers remain; no shell structure is restyled. */
body.moveu-budget-design-lock { background: #f9fdfe; }
body.moveu-budget-design-lock > .mu-app { background: #f9fdfe; }
body.moveu-budget-design-lock .mu-budget-main {
  width: min(100%, 740px);
  padding: 16px 15px calc(var(--mu-dock-height, 88px) + 112px + env(safe-area-inset-bottom));
}
body.moveu-budget-design-lock :is(#muBudgetV2, .mu-budget-panel) {
  --mu-navy: #0b1948;
  --mu-ink: #0b1948;
  --mu-mint-active: #78d1c3;
  --mu-text-secondary: #6c7485;
  --mu-text-muted: #6c7485;
  --mu-mint-soft: #eefaf8;
  --mu-border: #e9eef2;
  color: #0b1948;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  overflow-wrap: anywhere;
}
body.moveu-budget-design-lock :is(#muBudgetV2, .mu-budget-panel) :is(button, input, select, textarea, summary) { font-family: inherit; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-intro { margin: 0 5px 16px; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-intro h1 {
  margin: 0 0 6px;
  color: #0b1948;
  font: 700 2.125rem/1.15 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing: -.035em;
}
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-intro p {
  margin: 0;
  color: #6c7485;
  font-size: .9375rem;
  font-weight: 400;
  line-height: 1.4;
}
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0;
}
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-content { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-content > * { order: initial; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-top-grid { display: block; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-plan {
  display: flex; flex-wrap: wrap; align-items: center; gap: 24px; margin: 0 5px -8px;
}
body.moveu-budget-design-lock #muBudgetV2 .mu-progress-ring {
  width: 5.625rem; height: 5.625rem; flex: 0 0 5.625rem;
}
body.moveu-budget-design-lock #muBudgetV2 .mu-progress-ring circle { stroke-width: 5; }
body.moveu-budget-design-lock #muBudgetV2 .mu-progress-ring__track { stroke: #d9f1ed; }
body.moveu-budget-design-lock #muBudgetV2 .mu-progress-ring__segment { stroke: #78d1c3; stroke-linecap: round; }
body.moveu-budget-design-lock #muBudgetV2 .mu-progress-ring strong { font-size: 1.65rem; line-height: 1.1; font-weight: 700; letter-spacing: -.04em; }
body.moveu-budget-design-lock #muBudgetV2 .mu-progress-ring span { margin-top: 3px; font-size: .75rem; font-weight: 400; line-height: 1.3; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-plan__copy { min-width: 0; flex: 1 1 9rem; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-plan__copy h2 { margin: 0 0 7px; font-size: 1.1875rem; font-weight: 600; line-height: 1.25; letter-spacing: -.02em; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-plan__copy p { max-width: 15rem; margin: 0; color: #6c7485; font-size: .9375rem; font-weight: 400; line-height: 1.4; }

/* Same white, light-bordered cards and 12px radius as checklist rows. */
body.moveu-budget-design-lock #muBudgetV2 :is(.mu-summary-card, .mu-category-row, .mu-tip, .mu-action-row, .mu-coach-card, .mu-upcoming-list) {
  border: 1px solid rgba(238,242,245,.85);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 4px 18px rgba(32,45,57,.025);
}
body.moveu-budget-design-lock #muBudgetV2 .mu-summary-card { padding: 6px 14px 10px; }
body.moveu-budget-design-lock #muBudgetV2 .mu-summary-card__main { display: block; min-height: 0; padding: 0 0 12px; }
body.moveu-budget-design-lock #muBudgetV2 .mu-summary-card__label { justify-content: space-between; gap: 12px; }
/* !important only where the old budget headings already use it. */
body.moveu-budget-design-lock #muBudgetV2 :is(.mu-section-header h2, .mu-summary-card__label h2, .mu-coach-card h2) {
  color: #0b1948 !important;
  font-size: 1.1875rem !important;
  line-height: 1.25 !important;
  font-weight: 600 !important;
  letter-spacing: -.025em !important;
  text-wrap: wrap;
}
body.moveu-budget-design-lock #muBudgetV2 .mu-summary-card__label h2 { min-width: 0; flex: 1; font-size: 1rem !important; }
body.moveu-budget-design-lock #muBudgetV2 .mu-summary-card__label .mu-quiet-icon-button { width: 44px; height: 44px; flex: 0 0 44px; }
body.moveu-budget-design-lock #muBudgetV2 .mu-summary-card__amount > strong { margin: 0; font-size: 2rem; font-weight: 700; line-height: 1.15; letter-spacing: -.035em; white-space: normal; overflow-wrap: anywhere; }
body.moveu-budget-design-lock #muBudgetV2 .mu-summary-card__amount .mu-text-button { min-height: 44px; }
body.moveu-budget-design-lock #muBudgetV2 .mu-summary-card__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 12px 0; }
body.moveu-budget-design-lock #muBudgetV2 .mu-metric-pair { padding: 0 10px; }
body.moveu-budget-design-lock #muBudgetV2 .mu-metric-pair:first-child { padding-left: 0; }
body.moveu-budget-design-lock #muBudgetV2 .mu-metric-pair:last-child { padding-right: 0; }
body.moveu-budget-design-lock #muBudgetV2 .mu-metric-pair span { gap: 7px; align-items: baseline; font-size: .8125rem; font-weight: 400; line-height: 1.4; }
body.moveu-budget-design-lock #muBudgetV2 .mu-metric-pair span b { overflow: visible; white-space: normal; text-overflow: clip; }
body.moveu-budget-design-lock #muBudgetV2 .mu-metric-pair i { width: 9px; height: 9px; background: #d9dfe7; }
body.moveu-budget-design-lock #muBudgetV2 .mu-metric-pair i.is-mint { background: #78d1c3; }
body.moveu-budget-design-lock #muBudgetV2 .mu-metric-pair strong { margin: 2px 0 0 16px; font-size: 1rem; font-weight: 600; line-height: 1.3; white-space: normal; overflow-wrap: anywhere; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-check { margin: 0 -5px; padding: 10px; gap: 10px; border: 0; border-radius: 10px; background: #eefaf8; grid-template-columns: 28px minmax(0, 1fr); }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-check__icon { width: 28px; height: 28px; background: transparent; color: #398d83; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-check strong { font-size: .84375rem; font-weight: 600; line-height: 1.4; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-check p { font-size: .8125rem; line-height: 1.4; font-weight: 400; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-check[data-tone="alert"] { background: #fff8f5; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-check[data-tone="alert"] .mu-budget-check__icon { color: var(--mu-danger); }

body.moveu-budget-design-lock #muBudgetV2 :is(.mu-budget-section, .mu-upcoming-card) { display: grid; gap: 10px; }
body.moveu-budget-design-lock #muBudgetV2 .mu-section-header { padding: 0 5px; align-items: center; gap: 12px; }
body.moveu-budget-design-lock #muBudgetV2 .mu-section-header h2 { margin: 0; }
body.moveu-budget-design-lock #muBudgetV2 .mu-section-header p { margin: 5px 0 0; color: #6c7485; font-size: .8125rem; font-weight: 400; line-height: 1.4; }
body.moveu-budget-design-lock #muBudgetV2 :is(.mu-category-list, .mu-tip-list) { display: grid; gap: 8px; overflow: visible; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body.moveu-budget-design-lock #muBudgetV2 .mu-category-row {
  display: grid; grid-template-columns: 46px minmax(0, 1fr) 14px;
  gap: 10px; min-height: 62px; padding: 8px 10px 8px 8px; margin: 0;
  font-size: .84375rem; font-weight: 500; line-height: 1.4; letter-spacing: -.015em;
}
body.moveu-budget-design-lock #muBudgetV2 :is(.mu-category-row__visual, .mu-tip-row__visual) { width: 46px; height: 46px; border: 0; border-radius: 9px; background: #eefaf8; box-shadow: none; }
body.moveu-budget-design-lock #muBudgetV2 :is(.mu-category-row__visual, .mu-tip-row__visual) img { transform: none; }
body.moveu-budget-design-lock #muBudgetV2 .mu-category-row__copy strong,
body.moveu-budget-design-lock #muBudgetV2 .mu-tip-row strong { display: block; overflow: visible; -webkit-line-clamp: unset; line-clamp: unset; font-size: .84375rem; font-weight: 500; line-height: 1.4; letter-spacing: -.015em; }
body.moveu-budget-design-lock #muBudgetV2 .mu-category-row__main { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; min-width: 0; }
body.moveu-budget-design-lock #muBudgetV2 .mu-category-row__copy { flex: 1 1 7rem; }
body.moveu-budget-design-lock #muBudgetV2 .mu-category-row__amount { max-width: 100%; padding: 0; font-size: .84375rem; font-weight: 600; line-height: 1.4; white-space: normal; overflow-wrap: anywhere; }
body.moveu-budget-design-lock #muBudgetV2 .mu-category-row__bar { height: 4px; margin-top: 6px; background: #eaf0f2; }
body.moveu-budget-design-lock #muBudgetV2 .mu-category-row__bar i { min-width: 0; background: #78d1c3; }
body.moveu-budget-design-lock #muBudgetV2 :is(.mu-category-row, .mu-tip-row, .mu-action-row) > .mu-line-icon { width: 14px; height: 14px; color: #6c7485; }
body.moveu-budget-design-lock #muBudgetV2 :is(.mu-category-row, .mu-action-row):is(:hover,:focus,:active) { background: #fff !important; box-shadow: 0 4px 18px rgba(32,45,57,.025) !important; border-color: rgba(238,242,245,.85) !important; }

body.moveu-budget-design-lock #muBudgetV2 .mu-upcoming-card { min-height: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body.moveu-budget-design-lock #muBudgetV2 .mu-upcoming-desktop-icon { display: none; }
body.moveu-budget-design-lock #muBudgetV2 .mu-upcoming-toggle { display: grid; place-items: center; width: 44px; height: 44px; flex: 0 0 44px; padding: 0; border: 0; background: transparent !important; box-shadow: none; }
body.moveu-budget-design-lock #muBudgetV2 .mu-upcoming-list { margin: 0; }
body.moveu-budget-design-lock #muBudgetV2 .mu-upcoming-card.is-collapsed .mu-upcoming-list { display: none; }
body.moveu-budget-design-lock #muBudgetV2 .mu-upcoming-card.is-collapsed .mu-upcoming-toggle .mu-line-icon { transform: rotate(-90deg); }
body.moveu-budget-design-lock #muBudgetV2 .mu-upcoming-row { min-height: 62px; padding: 12px 14px; grid-template-columns: minmax(0, 1fr) minmax(0, max-content); gap: 12px; }
body.moveu-budget-design-lock #muBudgetV2 .mu-upcoming-row :is(strong, b) { font-size: .84375rem; font-weight: 600; line-height: 1.4; white-space: normal; }
body.moveu-budget-design-lock #muBudgetV2 .mu-upcoming-row small { font-size: .75rem; line-height: 1.4; }
body.moveu-budget-design-lock #muBudgetV2 .mu-upcoming-row.is-overdue :is(small,b) { color: var(--mu-danger); }
body.moveu-budget-design-lock #muBudgetV2 .mu-tip { overflow: hidden; margin: 0; }
body.moveu-budget-design-lock #muBudgetV2 .mu-tip-row { min-height: 62px; padding: 8px 12px 8px 8px; grid-template-columns: 46px minmax(0, 1fr) 14px; gap: 12px; }
body.moveu-budget-design-lock #muBudgetV2 .mu-tip-row small { display: none; }
body.moveu-budget-design-lock #muBudgetV2 .mu-tip__body { padding: 0 14px 14px; font-size: .8125rem; line-height: 1.5; }
body.moveu-budget-design-lock #muBudgetV2 .mu-tip__body p { font-size: .8125rem; }
body.moveu-budget-design-lock #muBudgetV2 .mu-tip__actions { display: flex; flex-wrap: wrap; gap: 8px; }
body.moveu-budget-design-lock #muBudgetV2 .mu-tip__actions > :is(a,button) { flex: 1 1 9rem; min-height: 44px; width: auto; font-size: .8125rem; }
body.moveu-budget-design-lock #muBudgetV2 .mu-all-tips { min-height: 44px; font-size: .8125rem; font-weight: 500; }
body.moveu-budget-design-lock #muBudgetV2 .mu-tip-disclosure { margin: 0 5px; color: #6c7485; font-size: .75rem; line-height: 1.4; }
body.moveu-budget-design-lock #muBudgetV2 .mu-coach-card { max-width: none; padding: 14px; gap: 12px; grid-template-columns: 36px minmax(0, 1fr); border-color: #d9f1ed; background: #eefaf8; }
body.moveu-budget-design-lock #muBudgetV2 .mu-coach-card__icon { width: 36px; height: 36px; border-radius: 10px; background: #fff; }
body.moveu-budget-design-lock #muBudgetV2 .mu-coach-card p { margin: 5px 0; font-size: .8125rem; line-height: 1.4; }
body.moveu-budget-design-lock #muBudgetV2 .mu-coach-card a { display: inline-flex; align-items: center; min-height: 44px; font-size: .84375rem; font-weight: 600; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-secondary { max-width: none; }
body.moveu-budget-design-lock #muBudgetV2 .mu-action-row { padding: 12px 14px; min-height: 62px; grid-template-columns: 24px minmax(0, 1fr) 14px; gap: 12px; }
body.moveu-budget-design-lock #muBudgetV2 .mu-action-row > span:first-child { width: 24px; height: 24px; border-radius: 0; background: transparent; }
body.moveu-budget-design-lock #muBudgetV2 .mu-action-row strong { font-size: .84375rem; font-weight: 500; line-height: 1.4; }

/* Compact add action; reserve space at the end of the page and when focusing
   rows. Keep it below modal sheets and away from the original dock. */
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-floating-add {
  display: inline-flex; position: fixed !important; z-index: 70 !important;
  right: max(15px, calc((100vw - 710px) / 2)) !important;
  bottom: calc(var(--mu-dock-height, 88px) + 14px + env(safe-area-inset-bottom)) !important;
  width: auto !important; min-width: 44px !important; max-width: calc(100vw - 40px) !important;
  height: auto !important; min-height: 44px !important; padding: 11px 14px !important; gap: 7px !important;
  border: 1px solid #d9f1ed !important; border-radius: 12px !important;
  background: #eefaf8 !important; color: #0b1948 !important; -webkit-text-fill-color: #0b1948 !important;
  box-shadow: 0 4px 18px rgba(32,45,57,.06) !important;
  font-size: .8125rem !important; font-weight: 500 !important; line-height: 1.35 !important;
}
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-floating-add span { display: inline !important; max-width: none; overflow: visible; white-space: normal !important; text-overflow: clip; }
body.moveu-budget-design-lock #muBudgetV2 .mu-budget-floating-add .mu-line-icon { width: 18px !important; height: 18px !important; flex: 0 0 18px !important; }
body.moveu-budget-design-lock #muBudgetV2[aria-busy="true"] .mu-budget-floating-add { visibility: hidden; }
html.mu-budget-panel-open body.moveu-budget-design-lock .mu-budget-floating-add { visibility: hidden; }
body.moveu-budget-design-lock #muBudgetV2 :is(.mu-category-row,.mu-tip,.mu-budget-section,.mu-action-row) { scroll-margin-block-end: calc(var(--mu-dock-height, 88px) + 90px + env(safe-area-inset-bottom)); }
body.moveu-budget-design-lock :is(#muBudgetV2, .mu-budget-panel) :is(button,a,input,select,textarea,summary):focus-visible { outline: 2px solid #398d83 !important; outline-offset: 3px !important; }
body.moveu-budget-design-lock .mu-budget-panel :is(h2,h3) { font-weight: 600 !important; letter-spacing: -.025em !important; }
body.moveu-budget-design-lock .mu-budget-panel :is(.mu-quiet-icon-button,.mu-text-button,.mu-detail-row button,.mu-export-grid button) { min-width: 44px; min-height: 44px; }
@media (max-width: 899px) {
  body.moveu-budget-design-lock #muBudgetV2 .mu-budget-floating-add { right: max(6px, env(safe-area-inset-right)) !important; width: 44px !important; height: 44px !important; padding: 0 !important; border-radius: 50% !important; }
  body.moveu-budget-design-lock #muBudgetV2 .mu-budget-floating-add span { display: none !important; }
}
@media (max-width: 350px) {
  body.moveu-budget-design-lock .mu-budget-main { padding-inline: 14px; }
  body.moveu-budget-design-lock #muBudgetV2 .mu-budget-plan { gap: 16px; }
  body.moveu-budget-design-lock #muBudgetV2 .mu-category-row { grid-template-columns: 40px minmax(0, 1fr) 12px; gap: 7px; }
  body.moveu-budget-design-lock #muBudgetV2 .mu-category-row__visual { width: 40px; height: 40px; }
}
@media (min-width: 900px) {
  body.moveu-budget-design-lock #muBudgetV2 .mu-budget-floating-add { bottom: 24px !important; }
}
@media print {
  body.moveu-budget-design-lock #muBudgetV2 .mu-budget-floating-add { display: none !important; }
}
