.spending-trend{gap:var(--spacing-3,.75rem);flex-direction:column;display:flex}.spending-trend__header{justify-content:space-between;align-items:center;gap:var(--spacing-3,.75rem);flex-wrap:wrap;display:flex}.spending-trend__header .chart-title{margin:0}.spending-trend__controls{align-items:center;gap:var(--spacing-2,.5rem);flex-wrap:wrap;display:flex}.spending-trend__period-selector,.spending-trend__view-toggle{gap:var(--spacing-1,.25rem);display:inline-flex}.spending-trend__period-selector{flex-wrap:wrap}.spending-trend__period-btn,.spending-trend__view-btn{border:1px solid var(--semantic-border-default,#e5e7eb);border-radius:var(--border-radius-md,.375rem);background:var(--semantic-background-elevated,#fff);height:2rem;color:var(--semantic-text-secondary,#6b7280);cursor:pointer;transition:background-color var(--duration-fast,.12s) ease, color var(--duration-fast,.12s) ease, border-color var(--duration-fast,.12s) ease;justify-content:center;align-items:center;font-family:inherit;line-height:1;display:inline-flex}.spending-trend__period-btn{min-width:2.25rem;padding:0 var(--spacing-2,.5rem);font-size:var(--type-scale-caption-font-size,.8125rem);font-weight:var(--font-weight-medium,500)}.spending-trend__view-btn{width:2rem;padding:0}.spending-trend__period-btn:hover,.spending-trend__view-btn:hover{background:var(--semantic-background-secondary,#f3f4f6);color:var(--semantic-text-primary,#111827)}.spending-trend__period-btn:focus-visible,.spending-trend__view-btn:focus-visible{outline:2px solid var(--semantic-border-focus,#2563eb);outline-offset:2px}.spending-trend__period-btn--active,.spending-trend__view-btn--active{background:var(--semantic-interactive-default,#2563eb);border-color:var(--semantic-interactive-default,#2563eb);color:var(--semantic-text-inverse,#fff)}.spending-trend__period-btn--active:hover,.spending-trend__view-btn--active:hover{background:var(--semantic-interactive-hover,#1d4ed8);border-color:var(--semantic-interactive-hover,#1d4ed8);color:var(--semantic-text-inverse,#fff)}.spending-trend__view-btn svg{width:1rem;height:1rem;display:block}.spending-trend__annotations{align-items:center;gap:var(--spacing-1,.25rem) var(--spacing-3,.75rem);flex-wrap:wrap;min-height:1.25rem;display:flex}.spending-trend__rate{color:var(--semantic-text-secondary,#6b7280);font-size:var(--type-scale-caption-font-size,.8125rem);font-weight:var(--font-weight-medium,500)}.spending-trend__comparison{align-items:center;gap:var(--spacing-1,.25rem);padding:var(--spacing-1,.25rem) var(--spacing-2,.5rem);border-radius:var(--border-radius-sm,.25rem);font-size:var(--type-scale-caption-font-size,.8125rem);font-weight:var(--font-weight-semibold,600);display:inline-flex}.spending-trend__comparison--up{color:var(--semantic-status-negative,#b91c1c);background:color-mix(in srgb, var(--semantic-status-negative,#b91c1c) 12%, transparent)}.spending-trend__comparison--down{color:var(--semantic-status-positive,#15803d);background:color-mix(in srgb, var(--semantic-status-positive,#15803d) 12%, transparent)}.spending-trend__empty{min-height:8rem;padding:var(--spacing-4,1rem);border:1px dashed var(--semantic-border-default,#e5e7eb);border-radius:var(--border-radius-md,.375rem);color:var(--semantic-text-secondary,#6b7280);font-size:var(--type-scale-body-font-size,.875rem);text-align:center;justify-content:center;align-items:center;display:flex}@media (prefers-reduced-motion:reduce){.spending-trend__period-btn,.spending-trend__view-btn{transition:none}}@media (prefers-contrast:more){.spending-trend__period-btn,.spending-trend__view-btn,.spending-trend__empty{border-width:2px}}.share-celebration__trigger{align-items:center;gap:var(--spacing-1);display:inline-flex}.share-celebration__preview{background:var(--semantic-background-secondary,var(--semantic-background-primary));border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-lg,var(--border-radius-md));padding:var(--spacing-4);margin-bottom:var(--spacing-4);gap:var(--spacing-2);flex-direction:column;display:flex}.share-celebration__preview-title{font-size:var(--type-scale-headline-font-size,var(--type-scale-title-font-size));font-weight:var(--font-weight-semibold);color:var(--semantic-text-primary);margin:0}.share-celebration__preview-message{color:var(--semantic-text-primary);margin:0}.share-celebration__amount{font-weight:var(--font-weight-semibold);color:var(--semantic-text-primary);margin:0}.share-celebration__hashtags{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);margin:0}.share-celebration__track{height:var(--spacing-2);border-radius:var(--border-radius-full,var(--border-radius-md));background:var(--semantic-background-tertiary,var(--semantic-border-default));position:relative;overflow:hidden}.share-celebration__fill{background:var(--semantic-accent-default,var(--semantic-text-primary));border-radius:inherit;height:100%;transition:width var(--duration-normal,.2s) var(--easing-out,ease-out)}.share-celebration__option{align-items:flex-start;gap:var(--spacing-2);margin-bottom:var(--spacing-4);color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);display:flex}.share-celebration__option input{margin-top:var(--spacing-1)}.share-celebration__status{margin:0 0 var(--spacing-3);color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size)}.share-celebration__status--success{color:var(--semantic-positive-default,var(--semantic-text-primary));align-items:center;gap:var(--spacing-1);display:inline-flex}.share-celebration__actions{justify-content:flex-end;gap:var(--spacing-2);flex-wrap:wrap;display:flex}@media (prefers-reduced-motion:reduce){.share-celebration__fill{transition:none}}.bills-summary__grid{gap:var(--spacing-4);grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;display:grid}.bills-summary__metric{overflow-wrap:anywhere;min-width:0}@media (max-width:639px){.bills-summary__grid{gap:var(--spacing-3);grid-template-columns:repeat(2,minmax(0,1fr))}.bills-summary__metric:last-child{grid-column:1/-1}}@media (max-width:375px){.bills-summary__grid{grid-template-columns:1fr}.bills-summary__metric:last-child{grid-column:auto}}.bills-view-toggle{gap:var(--spacing-1);margin-bottom:var(--spacing-4);padding:var(--spacing-1);border-radius:var(--radius-md,8px);background-color:var(--semantic-surface-secondary,#f3f4f6);flex-wrap:wrap;display:inline-flex}.bills-view-toggle .form-button{min-height:44px}.bills-filter{margin-bottom:var(--spacing-4);gap:var(--spacing-2);flex-wrap:wrap;display:flex}@media (max-width:375px){.bills-view-toggle{width:100%;display:flex}.bills-view-toggle .form-button{flex:auto}.bills-filter{width:100%}.bills-filter select{width:100%;min-height:44px}}.bill-period-card__header{justify-content:space-between;align-items:baseline;gap:var(--spacing-2);flex-wrap:wrap;display:flex}.bill-risk-badge{align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm,4px);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold,600);white-space:nowrap;border:1px solid;display:inline-flex}.bill-risk-badge--shortfall{color:var(--semantic-negative,#b91c1c);background-color:var(--semantic-negative-bg,#fee2e2)}.bill-risk-badge--tight{color:var(--semantic-warning,#92400e);background-color:var(--semantic-warning-bg,#fef3c7)}.bill-onetime-badge{align-items:center;gap:var(--spacing-1);padding:0 var(--spacing-1);border-radius:var(--radius-sm,4px);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-medium,500);color:var(--semantic-text-secondary);border:1px solid var(--semantic-border,#d1d5db);white-space:nowrap;display:inline-flex}.bill-period-card__onetime{align-items:center;gap:var(--spacing-1);margin:0 0 var(--spacing-3) 0;display:flex}@media (forced-colors:active){.bill-risk-badge,.bill-onetime-badge{border:1px solid canvastext}}.gig-combined{align-items:baseline;gap:var(--spacing-2);margin:0 0 var(--spacing-4) 0;flex-wrap:wrap;display:flex}.gig-combined__label{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}.gig-combined__value{font-size:var(--type-scale-headline-font-size);font-weight:var(--font-weight-semibold);color:var(--semantic-text-primary)}.gig-combined__meta{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}.gig-controls{align-items:flex-end;gap:var(--spacing-4);margin-bottom:var(--spacing-4);flex-wrap:wrap;display:flex}.gig-field{gap:var(--spacing-1);flex-direction:column;display:flex}.gig-field__label{font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-medium);color:var(--semantic-text-secondary)}.gig-select,.gig-input{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-sm);background:var(--semantic-background-elevated);color:var(--semantic-text-primary);font-size:var(--type-scale-body-font-size);min-height:40px}.gig-input{text-align:right;width:9rem}.gig-empty{font-size:var(--type-scale-body-font-size);color:var(--semantic-text-secondary);margin:0}.gig-table-wrapper{overflow-x:auto}.gig-table{border-collapse:collapse;width:100%;font-size:var(--type-scale-body-font-size)}.gig-table caption{text-align:left;font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);margin-bottom:var(--spacing-2)}.gig-table th,.gig-table td{padding:var(--spacing-2) var(--spacing-3);border-bottom:1px solid var(--semantic-border-default);text-align:left}.gig-table th[scope=col]{font-weight:var(--font-weight-semibold);color:var(--semantic-text-secondary)}.gig-table td.gig-num,.gig-table th.gig-num{text-align:right;font-variant-numeric:tabular-nums}.gig-status{align-items:center;gap:var(--spacing-1);padding:2px var(--spacing-2);border-radius:var(--border-radius-sm);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-medium);border:1px solid var(--semantic-border-default);display:inline-flex}.gig-status__symbol{font-weight:var(--font-weight-bold)}.gig-status--matched{color:var(--semantic-status-positive);border-color:var(--semantic-status-positive)}.gig-status--over{color:var(--semantic-status-info,var(--semantic-text-primary));border-color:var(--semantic-border-strong,var(--semantic-border-default))}.gig-status--under{color:var(--semantic-status-negative);border-color:var(--semantic-status-negative)}.gig-status--pending{color:var(--semantic-text-secondary);border-color:var(--semantic-border-default)}.gig-rules{margin-top:var(--spacing-4)}.gig-rules__summary{cursor:pointer;font-weight:var(--font-weight-medium);color:var(--semantic-text-primary)}.gig-rule-list{margin:var(--spacing-3) 0;gap:var(--spacing-2);flex-direction:column;padding:0;list-style:none;display:flex}.gig-rule-item{align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-sm);background:var(--semantic-background-elevated);flex-wrap:wrap;display:flex}.gig-rule-item__name{font-weight:var(--font-weight-semibold);color:var(--semantic-text-primary)}.gig-rule-item__meta{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);flex:1;min-width:0}.gig-rule-form{align-items:flex-end;gap:var(--spacing-3);padding:var(--spacing-3);border:1px dashed var(--semantic-border-default);border-radius:var(--border-radius-sm);flex-wrap:wrap;display:flex}.gig-btn{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-sm);background:var(--semantic-background-elevated);color:var(--semantic-text-primary);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-medium);cursor:pointer;min-height:36px}.gig-btn:hover{background:var(--semantic-background-secondary)}.gig-btn--primary{background:var(--semantic-action-primary,var(--semantic-text-primary));color:var(--semantic-on-action-primary,var(--semantic-background-default));border-color:#0000}.gig-toggle{align-items:center;gap:var(--spacing-1);font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);display:inline-flex}@media (prefers-reduced-motion:reduce){.gig-btn,.gig-status{transition:none}}.analytics-page{max-width:900px;margin:0 auto}.analytics-page__header{justify-content:space-between;align-items:center;gap:var(--spacing-3);margin-bottom:var(--spacing-6);flex-wrap:wrap;display:flex}.analytics-page__title{font-size:var(--type-scale-headline-font-size);font-weight:var(--type-scale-headline-font-weight);color:var(--semantic-text-primary);margin:0}.analytics-page__actions{gap:var(--spacing-2);align-items:center;display:flex}.analytics-page__loading{padding:var(--spacing-8) 0;justify-content:center;display:flex}.analytics-period-selector{gap:var(--spacing-1);background:var(--semantic-background-secondary);border-radius:var(--border-radius-md);padding:var(--spacing-1);display:flex}.analytics-period-selector__btn{padding:var(--spacing-2) var(--spacing-3);border-radius:var(--border-radius-sm);color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-medium);cursor:pointer;background:0 0;border:none;transition:background-color .15s,color .15s}.analytics-period-selector__btn:hover{background:var(--semantic-background-elevated);color:var(--semantic-text-primary)}.analytics-period-selector__btn--active{background:var(--semantic-background-elevated);color:var(--semantic-text-primary);font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-sm)}.analytics-section{margin-bottom:var(--spacing-6)}.analytics-section__title{font-size:var(--type-scale-title-font-size);font-weight:var(--type-scale-title-font-weight);color:var(--semantic-text-primary);margin-bottom:var(--spacing-4)}.analytics-metrics-grid{gap:var(--spacing-4);margin-bottom:var(--spacing-6);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.analytics-metric-card{padding:var(--spacing-4);background:var(--semantic-background-elevated);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md)}.analytics-metric-card__label{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);margin:0 0 var(--spacing-1) 0}.analytics-metric-card__value{font-size:var(--type-scale-title-font-size);font-weight:var(--font-weight-semibold);color:var(--semantic-text-primary);margin:0}.analytics-metric-card__value--positive{color:var(--semantic-status-positive)}.analytics-metric-card__value--negative{color:var(--semantic-status-negative)}.analytics-metric-card__change{font-size:var(--type-scale-caption-font-size);margin:var(--spacing-1) 0 0 0}.analytics-bar-chart{align-items:flex-end;gap:var(--spacing-2);height:200px;padding:var(--spacing-2) 0;display:flex}.analytics-bar-chart__group{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:2px;min-width:0;height:100%;display:flex}.analytics-bar-chart__bars{flex:1;justify-content:center;align-items:flex-end;gap:2px;width:100%;display:flex}.analytics-bar-chart__bar{border-radius:2px 2px 0 0;width:50%;max-width:20px;min-height:2px;transition:height .3s}.analytics-bar-chart__bar--income{background:var(--semantic-status-positive)}.analytics-bar-chart__bar--expense{background:var(--semantic-status-negative)}.analytics-bar-chart__label{color:var(--semantic-text-secondary);text-align:center;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:10px;overflow:hidden}.analytics-trend-line{align-items:flex-end;gap:var(--spacing-1);height:120px;padding:var(--spacing-2) 0;display:flex}.analytics-trend-line__point{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex}.analytics-trend-line__dot{background:var(--semantic-interactive-default);border-radius:50%;width:8px;height:8px}.analytics-trend-line__dot--positive{background:var(--semantic-status-positive)}.analytics-trend-line__dot--negative{background:var(--semantic-status-negative)}.analytics-breakdown{gap:var(--spacing-3);flex-direction:column;display:flex}.analytics-breakdown__item{align-items:center;gap:var(--spacing-3);display:flex}.analytics-breakdown__bar-wrapper{flex:1;min-width:0}.analytics-breakdown__header{margin-bottom:var(--spacing-1);justify-content:space-between;align-items:center;display:flex}.analytics-breakdown__name{font-size:var(--type-scale-body-font-size);font-weight:var(--font-weight-medium);color:var(--semantic-text-primary)}.analytics-breakdown__amount{font-size:var(--type-scale-body-font-size);color:var(--semantic-text-secondary)}.analytics-breakdown__track{background:var(--semantic-background-secondary);border-radius:4px;height:8px;overflow:hidden}.analytics-breakdown__fill{border-radius:4px;height:100%;transition:width .3s}.analytics-breakdown__percent{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);text-align:right;min-width:36px}.analytics-milestones{gap:var(--spacing-3);flex-wrap:wrap;display:flex}.analytics-milestone{align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);background:var(--semantic-background-elevated);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);font-size:var(--type-scale-caption-font-size);display:flex}.analytics-milestone--reached{border-color:var(--semantic-status-positive);background:var(--semantic-background-elevated)}.analytics-milestone__icon{font-size:1.25rem}.analytics-milestone__label{color:var(--semantic-text-primary);font-weight:var(--font-weight-medium)}.analytics-milestone--pending .analytics-milestone__label{color:var(--semantic-text-secondary)}.analytics-subscription-list{gap:var(--spacing-3);flex-direction:column;display:flex}.analytics-subscription-card{align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);background:var(--semantic-background-elevated);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);transition:border-color .15s;display:flex}.analytics-subscription-card--flagged{border-left:3px solid var(--semantic-status-warning)}.analytics-subscription-card--cancelled{opacity:.5;border-left:3px solid var(--semantic-text-secondary)}.analytics-subscription-card__info{flex:1;min-width:0}.analytics-subscription-card__name{font-size:var(--type-scale-body-font-size);font-weight:var(--font-weight-semibold);color:var(--semantic-text-primary);margin:0 0 var(--spacing-1) 0}.analytics-subscription-card__meta{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);margin:0}.analytics-subscription-card__cost{text-align:right;flex-shrink:0}.analytics-subscription-card__monthly{font-size:var(--type-scale-body-font-size);font-weight:var(--font-weight-semibold);color:var(--semantic-text-primary);display:block}.analytics-subscription-card__annual{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);display:block}.analytics-subscription-card__actions{flex-shrink:0}.analytics-status-btn{padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-sm);background:var(--semantic-background-elevated);color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);cursor:pointer;white-space:nowrap}.analytics-status-btn:hover{border-color:var(--semantic-interactive-default);color:var(--semantic-interactive-default)}.analytics-status-btn--flagged{color:var(--semantic-status-warning);border-color:var(--semantic-status-warning)}.analytics-status-btn--cancelled{color:var(--semantic-text-secondary);text-decoration:line-through}.analytics-export-btn{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-sm);background:var(--semantic-background-elevated);color:var(--semantic-text-primary);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color .15s}.analytics-export-btn:hover{background:var(--semantic-background-secondary)}.invoices-page{max-width:1100px}.invoice-subtitle{margin:var(--spacing-1) 0 0;color:var(--semantic-text-secondary)}.invoice-form{gap:var(--spacing-3);padding:var(--spacing-4);background:var(--semantic-background-elevated);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.invoice-form__field,.invoice-card__status-label{gap:var(--spacing-1);font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);flex-direction:column;display:flex}.invoice-form__field input,.invoice-form__field select,.invoice-card__status-label select{min-height:40px;padding:var(--spacing-2);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-sm);background:var(--semantic-background-primary);color:var(--semantic-text-primary);font:inherit}.invoice-form__preview{padding:var(--spacing-2) 0;color:var(--semantic-text-secondary);align-self:end}.invoice-form__error{color:var(--semantic-status-negative);grid-column:1/-1;margin:0}.invoice-form__submit{align-self:end}.invoice-form__cancel{background:var(--semantic-background-primary);align-self:end}.invoice-card--editing{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.invoice-followup__subtitle{margin:0 0 var(--spacing-3);color:var(--semantic-text-secondary);font-size:var(--type-scale-body-sm-font-size)}.invoice-followup-list{gap:var(--spacing-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.invoice-followup-row{justify-content:space-between;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3);background:var(--semantic-background-elevated);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);flex-wrap:wrap;display:flex}.invoice-followup-row__info{gap:var(--spacing-1);flex-direction:column;min-width:0;display:flex}.invoice-followup-row__client{color:var(--semantic-text-primary);font-weight:var(--font-weight-medium)}.invoice-followup-row__meta{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size)}.invoice-followup-row__action{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-sm);background:var(--semantic-background-elevated);color:var(--semantic-text-primary);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color .15s}.invoice-followup-row__action:hover{background:var(--semantic-background-secondary)}.invoice-forecast-list{gap:var(--spacing-3);flex-direction:column;display:flex}.invoice-forecast-row{padding:var(--spacing-3);background:var(--semantic-background-elevated);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md)}.invoice-forecast-row__header{justify-content:space-between;gap:var(--spacing-3);margin-bottom:var(--spacing-2);color:var(--semantic-text-primary);display:flex}.invoice-forecast-row__track{background:var(--semantic-background-secondary);border-radius:999px;height:8px;overflow:hidden}.invoice-forecast-row__fill{background:var(--semantic-status-positive);border-radius:inherit;height:100%;transition:width .3s}.invoice-pipeline-grid{gap:var(--spacing-4);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.invoice-pipeline-group{min-width:0;padding:var(--spacing-3);background:var(--semantic-background-elevated);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md)}.invoice-pipeline-group__header{justify-content:space-between;gap:var(--spacing-3);margin-bottom:var(--spacing-3);display:flex}.invoice-pipeline-group__header h3,.invoice-pipeline-group__header p{margin:0}.invoice-pipeline-group__header p,.invoice-pipeline-group__empty{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size)}.invoice-pipeline-group__list{gap:var(--spacing-3);flex-direction:column;display:flex}.invoice-card{padding:var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-sm);background:var(--semantic-background-primary)}.invoice-card--overdue{border-left:3px solid var(--semantic-status-negative)}.invoice-card--paid{opacity:.72}.invoice-card__main,.invoice-card__actions{justify-content:space-between;gap:var(--spacing-3);display:flex}.invoice-card__actions{margin-top:var(--spacing-3);align-items:flex-end}.invoice-card__client{margin:0 0 var(--spacing-1);color:var(--semantic-text-primary);font-size:var(--type-scale-body-font-size)}.invoice-card__meta{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);margin:0}.invoice-card__payment{margin:var(--spacing-2) 0 0;color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size)}.invoice-card__amount{align-items:flex-end;gap:var(--spacing-1);font-weight:var(--font-weight-semibold);flex-direction:column;display:flex}.invoice-status-badge{font-size:var(--type-scale-caption-font-size);border:1px solid var(--semantic-border-default);color:var(--semantic-text-secondary);border-radius:999px;padding:.125rem .5rem}.invoice-status-badge--sent{color:var(--semantic-interactive-default);border-color:var(--semantic-interactive-default)}.invoice-status-badge--paid{color:var(--semantic-status-positive);border-color:var(--semantic-status-positive)}.invoice-status-badge--overdue{color:var(--semantic-status-negative);border-color:var(--semantic-status-negative)}@media (prefers-reduced-motion:reduce){.analytics-bar-chart__bar,.analytics-breakdown__fill,.analytics-subscription-card,.analytics-period-selector__btn,.invoice-forecast-row__fill{transition:none}}@media (prefers-contrast:more){.analytics-metric-card,.analytics-subscription-card,.analytics-milestone,.invoice-card,.invoice-pipeline-group,.invoice-forecast-row{border-width:2px}}@media (max-width:480px){.analytics-metrics-grid{grid-template-columns:1fr 1fr}.analytics-page__header{flex-direction:column;align-items:flex-start}.analytics-bar-chart{height:140px;overflow-x:auto}.analytics-subscription-card{flex-direction:column;align-items:flex-start}.analytics-subscription-card__cost{text-align:left}.invoice-card__main,.invoice-card__actions,.invoice-forecast-row__header{flex-direction:column}.invoice-card__amount{align-items:flex-start}}.debt-page{max-width:1200px;padding:var(--spacing-4,1rem);margin:0 auto}.debt-page__header{margin-bottom:var(--spacing-6,1.5rem)}.debt-page__header h1{font-size:var(--font-size-2xl,1.5rem);font-weight:var(--font-weight-bold,700);color:var(--semantic-text-primary,#111);margin:0 0 var(--spacing-2,.5rem)}.debt-page__subtitle{color:var(--semantic-text-secondary,#666);font-size:var(--font-size-sm,.875rem);margin:0}.debt-page__tab-list{margin:0 0 var(--spacing-6,1.5rem);border-bottom:1px solid var(--semantic-border,#e5e7eb);gap:var(--spacing-1,.25rem);-webkit-overflow-scrolling:touch;padding:0;list-style:none;display:flex;overflow-x:auto}.debt-page__tab{padding:var(--spacing-3,.75rem) var(--spacing-4,1rem);cursor:pointer;font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);color:var(--semantic-text-secondary,#666);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;transition:color .15s,border-color .15s}.debt-page__tab:hover{color:var(--semantic-text-primary,#111)}.debt-page__tab--active{color:var(--semantic-primary,#2563eb);border-bottom-color:var(--semantic-primary,#2563eb)}.debt-page__panel{min-height:300px}.debt-list{margin:0 0 var(--spacing-4,1rem);padding:0;list-style:none}.debt-list__item{padding:var(--spacing-3,.75rem) var(--spacing-4,1rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);margin-bottom:var(--spacing-2,.5rem);background:var(--semantic-background-primary,#fff);justify-content:space-between;align-items:center;display:flex}.debt-list__name{font-weight:var(--font-weight-medium,500)}.debt-list__details{gap:var(--spacing-4,1rem);font-size:var(--font-size-sm,.875rem);color:var(--semantic-text-secondary,#666);align-items:center;display:flex}.debt-list__rate{font-variant-numeric:tabular-nums}.strategy-comparison{gap:var(--spacing-4,1rem);margin-bottom:var(--spacing-4,1rem);grid-template-columns:1fr 1fr;display:grid}.strategy-card{border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-lg,.75rem);padding:var(--spacing-4,1rem);background:var(--semantic-background-primary,#fff)}.strategy-card--recommended{border-color:var(--semantic-primary,#2563eb);box-shadow:0 0 0 1px var(--semantic-primary,#2563eb)}.strategy-card h3{font-size:var(--font-size-lg,1.125rem);margin:0 0 var(--spacing-3,.75rem)}.strategy-card__badge{margin-left:var(--spacing-2,.5rem);padding:var(--spacing-1,.25rem) var(--spacing-2,.5rem);font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-bold,700);color:var(--semantic-primary,#2563eb);background:var(--semantic-primary-bg,#dbeafe);border-radius:var(--radius-full,9999px);display:inline-block}.strategy-card__stats{gap:var(--spacing-2,.5rem) var(--spacing-4,1rem);font-size:var(--font-size-sm,.875rem);grid-template-columns:auto 1fr;display:grid}.strategy-card__stats dt{color:var(--semantic-text-secondary,#666)}.strategy-savings{text-align:center;font-weight:var(--font-weight-medium,500);color:var(--semantic-positive,#059669);padding:var(--spacing-3,.75rem);background:var(--semantic-positive-bg,#d1fae5);border-radius:var(--radius-md,.5rem)}.risk-badge{align-items:center;gap:var(--spacing-2,.5rem);padding:var(--spacing-2,.5rem) var(--spacing-4,1rem);border-radius:var(--radius-full,9999px);font-weight:var(--font-weight-bold,700);margin-bottom:var(--spacing-4,1rem);display:inline-flex}.risk-badge--low{color:var(--semantic-positive,#059669);background:var(--semantic-positive-bg,#d1fae5)}.risk-badge--moderate{color:var(--semantic-warning,#d97706);background:var(--semantic-warning-bg,#fef3c7)}.risk-badge--high{color:var(--semantic-negative,#dc2626);background:var(--semantic-negative-bg,#fee2e2)}.risk-badge--critical{color:#fff;background:var(--semantic-negative,#dc2626)}.risk-badge__score{font-size:var(--font-size-xl,1.25rem)}.bnpl-alerts{margin:0 0 var(--spacing-4,1rem);padding:0;list-style:none}.bnpl-alert{padding:var(--spacing-3,.75rem) var(--spacing-4,1rem);border-radius:var(--radius-md,.5rem);margin-bottom:var(--spacing-2,.5rem)}.bnpl-alert--warning{background:var(--semantic-warning-bg,#fef3c7);border-left:3px solid var(--semantic-warning,#d97706)}.bnpl-alert--critical{background:var(--semantic-negative-bg,#fee2e2);border-left:3px solid var(--semantic-negative,#dc2626)}.bnpl-alert--info{background:var(--semantic-info-bg,#dbeafe);border-left:3px solid var(--semantic-info,#2563eb)}.bnpl-summary{gap:var(--spacing-2,.5rem) var(--spacing-4,1rem);font-size:var(--font-size-sm,.875rem);margin-bottom:var(--spacing-4,1rem);grid-template-columns:auto 1fr;display:grid}.bnpl-list{padding:0;list-style:none}.bnpl-list__item{padding:var(--spacing-3,.75rem) var(--spacing-4,1rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);margin-bottom:var(--spacing-2,.5rem);justify-content:space-between;align-items:center;display:flex}.bnpl-list__merchant{font-weight:var(--font-weight-medium,500)}.bnpl-list__details{gap:var(--spacing-4,1rem);font-size:var(--font-size-sm,.875rem);color:var(--semantic-text-secondary,#666);display:flex}.student-loan-dashboard{gap:var(--spacing-5,1.25rem);flex-direction:column;display:flex}.student-loan-summary-grid{gap:var(--spacing-4,1rem);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.student-loan-stat-card,.student-loan-card,.student-loan-form,.student-loan-what-if{border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-lg,.75rem);background:var(--semantic-background-primary,#fff)}.student-loan-stat-card{padding:var(--spacing-4,1rem)}.student-loan-stat-card--wide{grid-column:1/-1}.student-loan-stat-card h3,.student-loan-card h3,.student-loan-what-if h2{margin:0 0 var(--spacing-2,.5rem)}.student-loan-stat-card__value{font-size:var(--font-size-xl,1.25rem);font-weight:var(--font-weight-bold,700);margin:0}.student-loan-stat-card__hint,.student-loan-card__servicer,.student-loan-what-if__result{margin:var(--spacing-2,.5rem) 0 0;color:var(--semantic-text-secondary,#666)}.student-loan-progress{background:var(--semantic-border,#e5e7eb);border-radius:var(--radius-full,9999px);height:12px;overflow:hidden}.student-loan-progress__bar{background:linear-gradient(90deg, var(--semantic-primary,#2563eb), #60a5fa);border-radius:var(--radius-full,9999px);height:100%;transition:width .3s}.student-loan-what-if{padding:var(--spacing-4,1rem)}.student-loan-what-if input{margin-top:var(--spacing-2,.5rem);max-width:220px}.student-loan-card-grid{gap:var(--spacing-4,1rem);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin:0;padding:0;list-style:none;display:grid}.student-loan-card{padding:var(--spacing-4,1rem);height:100%}.student-loan-card__header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-3,.75rem);margin-bottom:var(--spacing-4,1rem);display:flex}.student-loan-card__stats{gap:var(--spacing-2,.5rem) var(--spacing-4,1rem);margin:0 0 var(--spacing-4,1rem);font-size:var(--font-size-sm,.875rem);grid-template-columns:auto 1fr;display:grid}.student-loan-status{padding:var(--spacing-1,.25rem) var(--spacing-2,.5rem);border-radius:var(--radius-full,9999px);font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-bold,700);white-space:nowrap;align-items:center;display:inline-flex}.student-loan-status--in-repayment{color:var(--semantic-positive,#059669);background:var(--semantic-positive-bg,#d1fae5)}.student-loan-status--in-grace,.student-loan-status--deferred{color:var(--semantic-info,#2563eb);background:var(--semantic-info-bg,#dbeafe)}.student-loan-status--forbearance{color:var(--semantic-warning,#d97706);background:var(--semantic-warning-bg,#fef3c7)}.student-loan-form{gap:var(--spacing-4,1rem);padding:var(--spacing-4,1rem);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.student-loan-form label{gap:var(--spacing-2,.5rem);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);flex-direction:column;display:flex}.student-loan-form input,.student-loan-form select,.student-loan-what-if input{width:100%;padding:var(--spacing-3,.75rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);background:var(--semantic-background-primary,#fff);color:inherit;box-sizing:border-box}.student-loan-form__actions{gap:var(--spacing-3,.75rem);flex-wrap:wrap;grid-column:1/-1;display:flex}.balance-summary{gap:var(--spacing-2,.5rem) var(--spacing-4,1rem);font-size:var(--font-size-sm,.875rem);padding:var(--spacing-4,1rem);background:var(--semantic-background-secondary,#f9fafb);border-radius:var(--radius-lg,.75rem);margin-bottom:var(--spacing-4,1rem);grid-template-columns:auto 1fr;display:grid}.payment-alerts{margin:0 0 var(--spacing-4,1rem);padding:0;list-style:none}.payment-alert{padding:var(--spacing-3,.75rem) var(--spacing-4,1rem);border-radius:var(--radius-md,.5rem);margin-bottom:var(--spacing-2,.5rem);justify-content:space-between;align-items:center;display:flex}.payment-alert--overdue{background:var(--semantic-negative-bg,#fee2e2);border-left:3px solid var(--semantic-negative,#dc2626)}.payment-alert--due_today{background:var(--semantic-warning-bg,#fef3c7);border-left:3px solid var(--semantic-warning,#d97706)}.payment-alert--due_soon{background:var(--semantic-info-bg,#dbeafe);border-left:3px solid var(--semantic-info,#2563eb)}.reservation-list{padding:0;list-style:none}.reservation-list__item{padding:var(--spacing-3,.75rem) var(--spacing-4,1rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);margin-bottom:var(--spacing-2,.5rem);justify-content:space-between;align-items:center;display:flex}.reservation-list__card{font-weight:var(--font-weight-medium,500)}.reservation-list__details{gap:var(--spacing-4,1rem);font-size:var(--font-size-sm,.875rem);color:var(--semantic-text-secondary,#666);display:flex}.reservation-list__type{font-style:italic}@media (max-width:480px){.strategy-comparison{grid-template-columns:1fr}.debt-list__item,.bnpl-list__item,.reservation-list__item,.student-loan-card__header{align-items:flex-start;gap:var(--spacing-2,.5rem);flex-direction:column}.debt-list__details,.bnpl-list__details,.reservation-list__details,.student-loan-form__actions{flex-wrap:wrap}.student-loan-form{grid-template-columns:1fr}}@media (prefers-color-scheme:dark){.strategy-card,.debt-list__item,.bnpl-list__item,.reservation-list__item,.student-loan-stat-card,.student-loan-card,.student-loan-form,.student-loan-what-if{background:var(--semantic-background-primary,#1f2937);border-color:var(--semantic-border,#374151)}}[data-theme=dark] .strategy-card,[data-theme=dark] .debt-list__item,[data-theme=dark] .bnpl-list__item,[data-theme=dark] .reservation-list__item,[data-theme=dark] .student-loan-stat-card,[data-theme=dark] .student-loan-card,[data-theme=dark] .student-loan-form,[data-theme=dark] .student-loan-what-if,[data-theme=dark] .debt-whatif{background:var(--semantic-background-primary,#1f2937);border-color:var(--semantic-border,#374151)}[data-theme=dark] .debt-whatif__result{background:var(--semantic-background-secondary,#111827)}@media (prefers-reduced-motion:reduce){.pslf-progress__bar,.debt-page__tab{transition:none}}@media (prefers-contrast:more){.debt-list__item,.bnpl-list__item,.reservation-list__item,.strategy-card,.student-loan-stat-card,.student-loan-card,.student-loan-form,.student-loan-what-if,.debt-whatif{border-width:2px}.bnpl-alert,.payment-alert{border-left-width:4px}}.payoff-planner{gap:var(--spacing-5,1.25rem);flex-direction:column;display:flex}.debt-hero,.debt-milestones,.dti-card,.imported-debts,.payoff-controls,.debt-entry-form,.student-loan-scenarios{border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-lg,.75rem);background:var(--semantic-background-primary,#fff);padding:var(--spacing-4,1rem)}.debt-hero{justify-content:space-between;gap:var(--spacing-4,1rem);background:linear-gradient(135deg, var(--semantic-positive-bg,#d1fae5), var(--semantic-info-bg,#dbeafe));display:flex}.debt-hero__eyebrow,.debt-hero__savings span{margin:0 0 var(--spacing-1,.25rem);color:var(--semantic-text-secondary,#666);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-bold,700);text-transform:uppercase;letter-spacing:.04em}.debt-hero h2,.debt-milestones h2,.dti-card h2,.imported-debts h2,.payoff-controls h2,.student-loan-scenarios h2{margin:0 0 var(--spacing-2,.5rem)}.debt-hero__savings{text-align:right;min-width:190px}.debt-hero__savings strong{font-size:var(--font-size-2xl,1.5rem);color:var(--semantic-positive,#059669);display:block}.debt-hero--warning{background:linear-gradient(135deg, var(--semantic-negative-bg,#fee2e2), var(--semantic-warning-bg,#fef3c7))}.debt-hero--warning h2{color:var(--semantic-negative,#b91c1c)}.debt-hero__underwater{min-width:190px;padding-left:var(--spacing-4,1rem);font-size:var(--font-size-sm,.875rem);color:var(--semantic-text-primary,#111);margin:0}.debt-hero__underwater li+li{margin-top:var(--spacing-1,.25rem)}.debt-hero__underwater-name{font-weight:var(--font-weight-bold,700)}.debt-milestones{justify-content:space-between;gap:var(--spacing-4,1rem);align-items:center;display:flex}.debt-milestones__badges{gap:var(--spacing-2,.5rem);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.debt-milestone{min-width:76px;padding:var(--spacing-2,.5rem);border-radius:var(--radius-md,.5rem);background:var(--semantic-background-secondary,#f9fafb);color:var(--semantic-text-secondary,#666);font-size:var(--font-size-xs,.75rem);flex-direction:column;align-items:center;display:inline-flex}.debt-milestone--reached{background:var(--semantic-positive-bg,#d1fae5);color:var(--semantic-positive,#059669)}.dti-card__header,.payoff-controls{justify-content:space-between;gap:var(--spacing-4,1rem);flex-wrap:wrap;display:flex}.dti-card label,.payoff-controls label,.debt-entry-form label,.debt-import-list__item label,.student-loan-scenario-form label{gap:var(--spacing-2,.5rem);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);flex-direction:column;display:flex}.dti-card input,.payoff-controls input,.payoff-controls select,.debt-entry-form input,.debt-entry-form select,.debt-import-list__item input,.student-loan-scenario-form input,.student-loan-scenario-form select{width:100%;padding:var(--spacing-3,.75rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);background:var(--semantic-background-primary,#fff);color:inherit;box-sizing:border-box}.dti-card__stats,.student-loan-scenario-card dl{gap:var(--spacing-2,.5rem) var(--spacing-4,1rem);grid-template-columns:auto 1fr;display:grid}.dti-trend{gap:var(--spacing-2,.5rem);margin:var(--spacing-3,.75rem) 0 0;font-size:var(--font-size-sm,.875rem);flex-wrap:wrap;padding:0;list-style:none;display:flex}.dti-trend li{padding:var(--spacing-1,.25rem) var(--spacing-2,.5rem);border-radius:var(--radius-full,9999px);background:var(--semantic-info-bg,#dbeafe)}.debt-import-list{gap:var(--spacing-3,.75rem);margin:0;padding:0;list-style:none;display:grid}.debt-import-list__item,.debt-entry-form,.student-loan-scenario-form{gap:var(--spacing-3,.75rem);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.debt-import-list__item h3,.debt-entry-form button,.debt-entry-form__error,.debt-import-list__hint{grid-column:1/-1}.student-loan-scenario-grid{gap:var(--spacing-4,1rem);margin-top:var(--spacing-4,1rem);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.student-loan-scenario-card{border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-lg,.75rem);padding:var(--spacing-4,1rem);background:var(--semantic-background-secondary,#f9fafb)}.student-loan-scenario-card h3,.student-loan-scenario-card p{margin:0 0 var(--spacing-2,.5rem)}.student-loan-checkbox{justify-content:center}.student-loan-checkbox input{width:auto}.strategy-recommendation,.extra-payment-impact,.credit-utilization-overview,.credit-card-form-section{border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-lg,.75rem);background:var(--semantic-background-primary,#fff);padding:var(--spacing-4,1rem);margin-bottom:var(--spacing-4,1rem)}.debt-milestones__summary{gap:var(--spacing-3,.75rem);flex-direction:column;display:flex}.debt-milestones__summary label,.dti-card__inputs label,.extra-payment-impact__header label,.credit-card-form label{gap:var(--spacing-2,.5rem);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);flex-direction:column;display:flex}.debt-milestones__summary input,.dti-card__inputs input,.extra-payment-impact__header input,.credit-card-form input{width:100%;padding:var(--spacing-3,.75rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);background:var(--semantic-background-primary,#fff);color:inherit;box-sizing:border-box}.debt-milestones__interest{gap:var(--spacing-2,.5rem) var(--spacing-4,1rem);grid-template-columns:auto 1fr;margin:0;display:grid}.debt-milestones__celebration{color:var(--semantic-positive,#059669);font-weight:var(--font-weight-bold,700);margin-top:0}.dti-card__inputs,.extra-payment-impact__header{gap:var(--spacing-3,.75rem);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;display:grid}.dti-table-wrap,.extra-payment-impact__table-wrap{margin-top:var(--spacing-4,1rem);overflow-x:auto}.dti-table,.extra-payment-impact__table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm,.875rem)}.dti-table caption,.extra-payment-impact__table caption{text-align:left;font-weight:var(--font-weight-bold,700);margin-bottom:var(--spacing-2,.5rem)}.dti-table th,.dti-table td,.extra-payment-impact__table th,.extra-payment-impact__table td{border-bottom:1px solid var(--semantic-border,#e5e7eb);padding:var(--spacing-2,.5rem);text-align:left;vertical-align:top}.debt-whatif{border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-lg,.75rem);background:var(--semantic-background-primary,#fff);padding:var(--spacing-4,1rem);margin-bottom:var(--spacing-4,1rem)}.debt-whatif__header h2{margin:0 0 var(--spacing-1,.25rem);font-size:var(--font-size-lg,1.125rem)}.debt-whatif__header p{margin:0 0 var(--spacing-3,.75rem);color:var(--semantic-text-secondary,#6b7280);font-size:var(--font-size-sm,.875rem)}.debt-whatif__controls{gap:var(--spacing-3,.75rem);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;display:grid}.debt-whatif label{gap:var(--spacing-2,.5rem);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);flex-direction:column;display:flex}.debt-whatif input{width:100%;padding:var(--spacing-3,.75rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);background:var(--semantic-background-primary,#fff);color:inherit;box-sizing:border-box}.debt-whatif__result{margin:var(--spacing-3,.75rem) 0 0;padding:var(--spacing-3,.75rem);border-radius:var(--radius-md,.5rem);background:var(--semantic-background-secondary,#f9fafb);font-size:var(--font-size-sm,.875rem);line-height:var(--line-height-relaxed,1.6)}.credit-card-form{gap:var(--spacing-3,.75rem);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.credit-card-form button{grid-column:1/-1}.credit-utilization-list{gap:var(--spacing-2,.5rem);margin:0;padding:0;list-style:none;display:grid}.credit-utilization{gap:var(--spacing-3,.75rem);padding:var(--spacing-3,.75rem);border-radius:var(--radius-md,.5rem);background:var(--semantic-background-secondary,#f9fafb);grid-template-columns:minmax(140px,1fr) repeat(3,minmax(120px,1fr));display:grid}.credit-utilization--warning{background:var(--semantic-warning-bg,#fef3c7)}.debt-entry-form input[aria-invalid=true]{border-color:var(--semantic-negative,#dc2626);outline-color:var(--semantic-negative,#dc2626)}.debt-entry-form__error{color:var(--semantic-negative,#dc2626);font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-regular,400)}.debt-entry-form__error-summary{padding:var(--spacing-3,.75rem);border-radius:var(--radius-md,.5rem);background:var(--semantic-negative-bg,#fee2e2);border-left:3px solid var(--semantic-negative,#dc2626);color:var(--semantic-negative,#b91c1c);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500)}.credit-utilization--high,.credit-utilization--critical{background:var(--semantic-negative-bg,#fee2e2)}.credit-utilization--low{background:var(--semantic-positive-bg,#d1fae5)}@media (max-width:480px){.credit-utilization{grid-template-columns:1fr}}@media (prefers-color-scheme:dark){.strategy-recommendation,.extra-payment-impact,.credit-utilization-overview,.credit-card-form-section{background:var(--semantic-background-primary,#1f2937);border-color:var(--semantic-border,#374151)}}[data-theme=dark] .strategy-recommendation,[data-theme=dark] .extra-payment-impact,[data-theme=dark] .credit-utilization-overview,[data-theme=dark] .credit-card-form-section{background:var(--semantic-background-primary,#1f2937);border-color:var(--semantic-border,#374151)}.debt-beta-panel,.debt-progress-ring-card{border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-lg,.75rem);background:var(--semantic-background-primary,#fff);padding:var(--spacing-4,1rem);margin-bottom:var(--spacing-4,1rem)}.debt-beta-form{gap:var(--spacing-3,.75rem);margin-bottom:var(--spacing-4,1rem);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));display:grid}.debt-beta-form label,.debt-checkbox-list label{gap:var(--spacing-2,.5rem);font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);flex-direction:column;display:flex}.debt-beta-form input,.debt-beta-form select{width:100%;padding:var(--spacing-3,.75rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);background:var(--semantic-background-primary,#fff);color:inherit;box-sizing:border-box}.debt-beta-form button{grid-column:1/-1}.debt-beta-stats{gap:var(--spacing-2,.5rem) var(--spacing-4,1rem);padding:var(--spacing-3,.75rem);border-radius:var(--radius-md,.5rem);background:var(--semantic-background-secondary,#f9fafb);grid-template-columns:auto 1fr;display:grid}.debt-beta-list{gap:var(--spacing-2,.5rem);padding-left:var(--spacing-5,1.25rem);display:grid}.debt-checkbox-list{gap:var(--spacing-3,.75rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);margin:0 0 var(--spacing-4,1rem);padding:var(--spacing-3,.75rem);flex-wrap:wrap;display:flex}.debt-checkbox-list label,.student-loan-checkbox{flex-direction:row;align-items:center}.debt-progress-ring-card{gap:var(--spacing-4,1rem);align-items:center;display:flex}.debt-progress-ring{flex:none;width:120px;height:120px;transform:rotate(-90deg)}.debt-progress-ring text{transform-origin:50%;fill:var(--semantic-text-primary,#111);font-weight:var(--font-weight-bold,700);transform:rotate(90deg)}.debt-progress-ring__track,.debt-progress-ring__value{fill:none;stroke-width:12px}.debt-progress-ring__track{stroke:var(--semantic-border,#e5e7eb)}.debt-progress-ring__value{stroke:var(--semantic-primary,#2563eb);stroke-linecap:round;transition:stroke-dashoffset .3s}.debt-progress-ring-card__primary{font-size:var(--font-size-xl,1.25rem);font-weight:var(--font-weight-bold,700);margin:0}@media (prefers-reduced-motion:reduce){.debt-progress-ring__value{transition:none}}@media (prefers-color-scheme:dark){.debt-beta-panel,.debt-progress-ring-card{background:var(--semantic-background-primary,#1f2937);border-color:var(--semantic-border,#374151)}}[data-theme=dark] .debt-beta-panel,[data-theme=dark] .debt-progress-ring-card{background:var(--semantic-background-primary,#1f2937);border-color:var(--semantic-border,#374151)}.payoff-timeline{margin-top:var(--spacing-5,1.5rem)}.payoff-timeline__intro{color:var(--semantic-text-secondary,#666);margin:0 0 var(--spacing-3,.75rem)}.payoff-timeline__list{gap:var(--spacing-2,.5rem);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.payoff-timeline__item{align-items:center;gap:var(--spacing-1,.25rem) var(--spacing-3,.75rem);padding:var(--spacing-3,.75rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);background:var(--semantic-background-primary,#fff);grid-template-columns:auto 1fr auto;display:grid}.payoff-timeline__index{border-radius:var(--radius-full,9999px);background:var(--semantic-primary-bg,#dbeafe);width:1.75rem;height:1.75rem;color:var(--semantic-primary,#2563eb);font-weight:var(--font-weight-bold,700);font-size:var(--font-size-sm,.875rem);justify-content:center;align-items:center;display:inline-flex}.payoff-timeline__name{font-weight:var(--font-weight-medium,500);color:var(--semantic-text-primary,#111)}.payoff-timeline__date{font-weight:var(--font-weight-bold,700);color:var(--semantic-positive,#059669)}.payoff-timeline__months{font-size:var(--font-size-sm,.875rem);color:var(--semantic-text-secondary,#666);grid-column:2/-1}[data-theme=dark] .payoff-timeline__item{background:var(--semantic-background-primary,#1f2937);border-color:var(--semantic-border,#374151)}.debt-payoff-rings{gap:var(--spacing-6,1.5rem);flex-direction:column;display:flex}.debt-payoff-rings__header h2{margin:0 0 var(--spacing-1,.25rem);font-size:var(--font-size-xl,1.25rem);font-weight:var(--font-weight-bold,700);color:var(--semantic-text-primary,#111827)}.debt-payoff-rings__subtitle{color:var(--semantic-text-secondary,#4b5563);font-size:var(--font-size-sm,.875rem);margin:0}.debt-payoff-rings__selector{gap:var(--spacing-1,.25rem);flex-direction:column;max-width:24rem;display:flex}.debt-payoff-rings__selector label,.debt-payoff-rings__whatif-input label{font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);color:var(--semantic-text-primary,#111827)}.debt-payoff-rings__selector select,.debt-payoff-rings__whatif-input input{padding:var(--spacing-2,.5rem) var(--spacing-3,.75rem);border:1px solid var(--semantic-border,#d1d5db);border-radius:var(--radius-md,.375rem);background:var(--semantic-background-primary,#fff);color:var(--semantic-text-primary,#111827);font-size:var(--font-size-base,1rem)}.debt-payoff-rings__selector select:focus-visible,.debt-payoff-rings__whatif-input input:focus-visible{outline:2px solid var(--semantic-primary,#2563eb);outline-offset:2px}.debt-payoff-rings__card{align-items:center;gap:var(--spacing-6,1.5rem);padding:var(--spacing-6,1.5rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-lg,.5rem);background:var(--semantic-background-primary,#fff);flex-wrap:wrap;display:flex}.debt-payoff-ring{flex:none;width:140px;height:140px;position:relative}.debt-payoff-ring__svg{width:100%;height:100%;transform:rotate(-90deg)}.debt-payoff-ring__track,.debt-payoff-ring__value{fill:none;stroke-width:12px}.debt-payoff-ring__track{stroke:var(--semantic-border,#e5e7eb)}.debt-payoff-ring__value{stroke:var(--semantic-primary,#2563eb);stroke-linecap:round;transition:stroke-dashoffset .4s}.debt-payoff-ring__percent{font-size:var(--font-size-xl,1.5rem);font-weight:var(--font-weight-bold,700);color:var(--semantic-text-primary,#111827);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.debt-payoff-rings__summary{flex:16rem;min-width:14rem}.debt-payoff-rings__progress-text{margin:0 0 var(--spacing-3,.75rem);font-size:var(--font-size-lg,1.125rem);font-weight:var(--font-weight-medium,500);color:var(--semantic-text-primary,#111827)}.debt-payoff-rings__stats,.debt-payoff-rings__savings-stats{gap:var(--spacing-3,.75rem);grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));margin:0;display:grid}.debt-payoff-rings__stat dt{font-size:var(--font-size-xs,.75rem);text-transform:uppercase;letter-spacing:.04em;color:var(--semantic-text-secondary,#6b7280)}.debt-payoff-rings__stat dd{font-size:var(--font-size-base,1rem);font-weight:var(--font-weight-bold,700);color:var(--semantic-text-primary,#111827);margin:0}.debt-payoff-rings__milestones h3,.debt-payoff-rings__whatif h3{margin:0 0 var(--spacing-3,.75rem);font-size:var(--font-size-lg,1.125rem);font-weight:var(--font-weight-bold,700);color:var(--semantic-text-primary,#111827)}.debt-milestone-list{gap:var(--spacing-2,.5rem);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.debt-milestone{align-items:center;gap:var(--spacing-3,.75rem);padding:var(--spacing-3,.75rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.375rem);background:var(--semantic-background-secondary,#f9fafb);display:flex}.debt-milestone__icon{border-radius:var(--radius-full,9999px);width:1.75rem;height:1.75rem;font-weight:var(--font-weight-bold,700);border:2px solid var(--semantic-border,#d1d5db);color:var(--semantic-text-secondary,#6b7280);justify-content:center;align-items:center;display:inline-flex}.debt-milestone__label{color:var(--semantic-text-primary,#111827);flex:auto}.debt-milestone__status{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-medium,500);text-transform:uppercase;letter-spacing:.04em;color:var(--semantic-text-secondary,#6b7280)}.debt-milestone[data-reached=true]{border-color:var(--semantic-positive,#16a34a);background:var(--semantic-positive-bg,#f0fdf4)}.debt-milestone[data-reached=true] .debt-milestone__icon{border-color:var(--semantic-positive,#16a34a);background:var(--semantic-positive,#16a34a);color:var(--semantic-background-primary,#fff)}.debt-milestone[data-reached=true] .debt-milestone__status{color:var(--semantic-positive,#16a34a)}.debt-payoff-rings__whatif{padding:var(--spacing-6,1.5rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-lg,.5rem);background:var(--semantic-background-primary,#fff)}.debt-payoff-rings__whatif-input{gap:var(--spacing-1,.25rem);max-width:20rem;margin-bottom:var(--spacing-4,1rem);flex-direction:column;display:flex}.debt-payoff-rings__savings{margin:0 0 var(--spacing-3,.75rem);color:var(--semantic-text-primary,#111827)}@media (prefers-reduced-motion:reduce){.debt-payoff-ring__value{transition:none}}@media (prefers-color-scheme:dark){.debt-payoff-rings__card,.debt-payoff-rings__whatif{background:var(--semantic-background-primary,#1f2937);border-color:var(--semantic-border,#374151)}.debt-milestone{background:var(--semantic-background-secondary,#111827);border-color:var(--semantic-border,#374151)}}[data-theme=dark] .debt-payoff-rings__card,[data-theme=dark] .debt-payoff-rings__whatif{background:var(--semantic-background-primary,#1f2937);border-color:var(--semantic-border,#374151)}[data-theme=dark] .debt-milestone{background:var(--semantic-background-secondary,#111827);border-color:var(--semantic-border,#374151)}.joint-debt{gap:var(--spacing-5,1.25rem);flex-direction:column;display:flex}.joint-debt__header h2{font-size:var(--font-size-xl,1.25rem);font-weight:var(--font-weight-bold,700);color:var(--semantic-text-primary,#111);margin:0 0 var(--spacing-2,.5rem)}.joint-debt__subtitle{color:var(--semantic-text-secondary,#666);font-size:var(--font-size-sm,.875rem);margin:0}.joint-debt__partners,.joint-debt__strategy{gap:var(--spacing-4,1rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);padding:var(--spacing-3,.75rem) var(--spacing-4,1rem);flex-wrap:wrap;display:flex}.joint-debt__partners legend,.joint-debt__strategy legend{font-size:var(--font-size-sm,.875rem);font-weight:var(--font-weight-medium,500);color:var(--semantic-text-secondary,#666);padding:0 var(--spacing-2,.5rem)}.joint-debt__strategy label{align-items:center;gap:var(--spacing-2,.5rem);font-size:var(--font-size-sm,.875rem);display:inline-flex}.joint-debt__controls{gap:var(--spacing-4,1rem);flex-wrap:wrap;align-items:flex-end;display:flex}.joint-debt__field{gap:var(--spacing-1,.25rem);font-size:var(--font-size-sm,.875rem);flex-direction:column;display:flex}.joint-debt__field label{font-weight:var(--font-weight-medium,500);color:var(--semantic-text-secondary,#666)}.joint-debt__field input,.joint-debt__field select,.joint-debt__ownership select{padding:var(--spacing-2,.5rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);background:var(--semantic-background-primary,#fff);color:var(--semantic-text-primary,#111);font-size:var(--font-size-sm,.875rem);min-height:2.25rem}.joint-debt__mode label{align-items:center;gap:var(--spacing-2,.5rem);color:var(--semantic-text-primary,#111);display:inline-flex}.joint-debt__recommendation{border:1px solid var(--semantic-border,#e5e7eb);border-left:4px solid var(--semantic-info,#2563eb);border-radius:var(--radius-lg,.75rem);background:var(--semantic-info-bg,#eff6ff);padding:var(--spacing-4,1rem)}.joint-debt__recommendation--balanced{border-left-color:var(--semantic-warning,#d97706);background:var(--semantic-warning-bg,#fef3c7)}.joint-debt__recommendation h3{font-size:var(--font-size-lg,1.125rem);font-weight:var(--font-weight-bold,700);color:var(--semantic-text-primary,#111);margin:0 0 var(--spacing-2,.5rem)}.joint-debt__rec-headline{font-weight:var(--font-weight-medium,500);color:var(--semantic-text-primary,#111);margin:0 0 var(--spacing-2,.5rem)}.joint-debt__rec-list{padding-left:var(--spacing-5,1.25rem);color:var(--semantic-text-secondary,#444);font-size:var(--font-size-sm,.875rem);gap:var(--spacing-1,.25rem);flex-direction:column;margin:0;display:flex}.joint-debt__section{gap:var(--spacing-3,.75rem);flex-direction:column;display:flex}.joint-debt__section h3{font-size:var(--font-size-lg,1.125rem);font-weight:var(--font-weight-bold,700);color:var(--semantic-text-primary,#111);margin:0}.joint-debt__table{border-collapse:collapse;width:100%;font-size:var(--font-size-sm,.875rem)}.joint-debt__caption{caption-side:top;text-align:left;color:var(--semantic-text-secondary,#666);margin-bottom:var(--spacing-2,.5rem)}.joint-debt__table th,.joint-debt__table td{text-align:left;padding:var(--spacing-2,.5rem) var(--spacing-3,.75rem);border-bottom:1px solid var(--semantic-border,#e5e7eb);vertical-align:middle}.joint-debt__table thead th{color:var(--semantic-text-secondary,#666);font-weight:var(--font-weight-medium,500);border-bottom:2px solid var(--semantic-border,#e5e7eb)}.joint-debt__table tbody th[scope=row]{font-weight:var(--font-weight-medium,500);color:var(--semantic-text-primary,#111)}.joint-debt__badge{font-size:var(--font-size-xs,.75rem);font-weight:var(--font-weight-bold,700);color:var(--semantic-positive,#047857)}.joint-debt__ownership{align-items:center;gap:var(--spacing-2,.5rem);display:inline-flex}.joint-debt__ownership-icon{font-size:var(--font-size-sm,.875rem);line-height:1}.joint-debt__hint{color:var(--semantic-text-secondary,#666);font-size:var(--font-size-sm,.875rem);margin:0}.joint-debt__summary{gap:var(--spacing-3,.75rem);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:0;display:grid}.joint-debt__summary div{border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);padding:var(--spacing-3,.75rem);background:var(--semantic-background-secondary,#f9fafb)}.joint-debt__summary dt{font-size:var(--font-size-xs,.75rem);color:var(--semantic-text-secondary,#666);margin-bottom:var(--spacing-1,.25rem)}.joint-debt__summary dd{font-weight:var(--font-weight-bold,700);color:var(--semantic-text-primary,#111);margin:0}.joint-debt__goals-editor h4{font-size:var(--font-size-base,1rem);font-weight:var(--font-weight-medium,500);margin:var(--spacing-3,.75rem) 0 var(--spacing-2,.5rem);color:var(--semantic-text-primary,#111)}.joint-debt__goal-list{gap:var(--spacing-3,.75rem);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.joint-debt__goal{align-items:flex-end;gap:var(--spacing-3,.75rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);padding:var(--spacing-3,.75rem);flex-wrap:wrap;display:flex}.joint-debt__add,.joint-debt__remove{padding:var(--spacing-2,.5rem) var(--spacing-3,.75rem);border:1px solid var(--semantic-border,#e5e7eb);border-radius:var(--radius-md,.5rem);background:var(--semantic-background-primary,#fff);color:var(--semantic-text-primary,#111);font-size:var(--font-size-sm,.875rem);cursor:pointer;align-self:flex-end;min-height:2.25rem}.joint-debt__add{margin-top:var(--spacing-3,.75rem);align-self:flex-start}.joint-debt__add:hover,.joint-debt__remove:hover{background:var(--semantic-background-secondary,#f3f4f6)}.joint-debt__footnote{color:var(--semantic-text-secondary,#666);font-size:var(--font-size-xs,.75rem);margin:0}.joint-debt__visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.joint-debt__add,.joint-debt__remove{transition:none}}.trend-chart__legend{gap:var(--spacing-4,1rem);margin:var(--spacing-2,.5rem) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.trend-chart__legend-item{align-items:center;gap:var(--spacing-2,.5rem);font-size:var(--font-size-sm,.875rem);color:var(--semantic-text-secondary,#6b7280);display:inline-flex}.trend-chart__legend-swatch{flex:none}.shared-goal{margin-bottom:var(--spacing-6)}.shared-goal__header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-3);margin-bottom:var(--spacing-3);flex-wrap:wrap;display:flex}.shared-goal__title{font-weight:var(--font-weight-semibold);margin:0}.shared-goal__subtitle{margin:var(--spacing-1) 0 0;font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}.shared-goal__visibility{border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md,8px);padding:var(--spacing-2) var(--spacing-3);margin:0}.shared-goal__visibility-legend{font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold);color:var(--semantic-text-secondary);padding:0 var(--spacing-1)}.shared-goal__visibility-options{gap:var(--spacing-3);flex-wrap:wrap;display:flex}.shared-goal__radio{align-items:center;gap:var(--spacing-1);cursor:pointer;display:inline-flex}.shared-goal__list{gap:var(--spacing-3);margin:0;padding:0;list-style:none;display:grid}.shared-goal__contributor{gap:var(--spacing-2);display:grid}.shared-goal__contributor-head{justify-content:space-between;align-items:baseline;gap:var(--spacing-2);flex-wrap:wrap;display:flex}.shared-goal__name{font-weight:var(--font-weight-semibold)}.shared-goal__effort{align-items:center;gap:var(--spacing-1);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-full);padding:0 var(--spacing-2);color:var(--semantic-text-secondary);display:inline-flex}.shared-goal__meta{justify-content:space-between;gap:var(--spacing-2);font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);flex-wrap:wrap;display:flex}.shared-goal__milestones{gap:var(--spacing-3);margin:0;padding:0;list-style:none;display:grid}.shared-goal__milestone{gap:var(--spacing-2);display:grid}.shared-goal__milestone-head{align-items:center;gap:var(--spacing-2);flex-wrap:wrap;display:flex}.shared-goal__milestone-status{align-items:center;gap:var(--spacing-1);font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold);display:inline-flex}.shared-goal__milestone-label{font-weight:var(--font-weight-semibold)}.shared-goal__milestone-amount{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);margin-left:auto}.shared-goal__editor{border:1px dashed var(--semantic-border-default);border-radius:var(--border-radius-md,8px);padding:var(--spacing-3);margin-top:var(--spacing-3);gap:var(--spacing-3);display:grid}.shared-goal__field{gap:var(--spacing-1);display:grid}.shared-goal__field-label{font-size:var(--type-scale-caption-font-size);font-weight:var(--font-weight-semibold);color:var(--semantic-text-secondary)}.shared-goal__editor-row{gap:var(--spacing-3);flex-wrap:wrap;display:flex}.shared-goal__editor-row .shared-goal__field{flex:8rem;min-width:7rem}.shared-goal__row-actions{gap:var(--spacing-2);flex-wrap:wrap;display:flex}.shared-goal__toggle{align-items:center;gap:var(--spacing-2);font-size:var(--type-scale-caption-font-size);display:inline-flex}.shared-goal__empty{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);margin:0}.shared-goal-badge{gap:var(--spacing-1) var(--spacing-2);margin-top:var(--spacing-2);font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);flex-wrap:wrap;align-items:center;display:flex}.shared-goal-badge__chip{align-items:center;gap:var(--spacing-1);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-full);padding:0 var(--spacing-2);display:inline-flex}.planning-page{max-width:960px;padding:var(--spacing-4);margin:0 auto}.planning-page__title{font-size:var(--type-scale-headline-font-size);font-weight:var(--type-scale-headline-font-weight);color:var(--semantic-text-primary);margin-bottom:var(--spacing-2)}.planning-page__subtitle{font-size:var(--type-scale-body-font-size);color:var(--semantic-text-secondary);margin-bottom:var(--spacing-6)}.planning-tabs{gap:var(--spacing-2);border-bottom:1px solid var(--semantic-border-default);margin-bottom:var(--spacing-6);display:flex;overflow-x:auto}.planning-tab{padding:var(--spacing-3) var(--spacing-4);color:var(--semantic-text-secondary);font-size:var(--type-scale-body-font-size);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;font-weight:500;transition:color .15s,border-color .15s}.planning-tab:hover{color:var(--semantic-text-primary)}.planning-tab--active{color:var(--semantic-interactive-default);border-bottom-color:var(--semantic-interactive-default)}.planning-tab:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:-2px;border-radius:var(--border-radius-sm)}.planning-section{margin-bottom:var(--spacing-6)}.planning-section__title{font-size:var(--type-scale-title-font-size);font-weight:var(--type-scale-title-font-weight);color:var(--semantic-text-primary);margin-bottom:var(--spacing-4)}.planning-card{padding:var(--spacing-5);background:var(--semantic-background-elevated);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-4)}.planning-card__header{margin-bottom:var(--spacing-3);justify-content:space-between;align-items:center;display:flex}.planning-card__title{font-size:var(--type-scale-title-font-size);color:var(--semantic-text-primary);margin:0;font-weight:600}.readiness-score{align-items:center;gap:var(--spacing-6);padding:var(--spacing-5);display:flex}.readiness-score__circle{flex-shrink:0;width:120px;height:120px;position:relative}.readiness-score__svg{transform:rotate(-90deg)}.readiness-score__bg{fill:none;stroke:var(--semantic-border-default);stroke-width:8px}.readiness-score__fill{fill:none;stroke-width:8px;stroke-linecap:round;transition:stroke-dashoffset .6s}.readiness-score__fill--excellent{stroke:var(--semantic-status-positive)}.readiness-score__fill--good{stroke:var(--color-green-400,var(--semantic-status-positive))}.readiness-score__fill--fair{stroke:var(--semantic-status-warning)}.readiness-score__fill--poor{stroke:var(--color-orange-500,var(--semantic-status-warning))}.readiness-score__fill--critical{stroke:var(--semantic-status-negative)}.readiness-score__number{font-size:var(--type-scale-headline-font-size);color:var(--semantic-text-primary);font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.readiness-score__details{flex:1}.readiness-score__rating{font-size:var(--type-scale-title-font-size);margin-bottom:var(--spacing-2);text-transform:capitalize;font-weight:600}.readiness-score__gap{font-size:var(--type-scale-body-font-size);color:var(--semantic-text-secondary);margin-bottom:var(--spacing-3)}.rmd-tracker__empty,.rmd-tracker__note,.rmd-account__detail{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size)}.rmd-alert{align-items:center;gap:var(--spacing-2);padding:var(--spacing-3);margin:var(--spacing-3) 0;border:1px solid var(--semantic-status-warning);border-radius:var(--border-radius-md);background:color-mix(in srgb, var(--semantic-status-warning) 12%, transparent);color:var(--semantic-text-primary);font-weight:600;display:flex}.rmd-list{gap:var(--spacing-3);margin-top:var(--spacing-3);display:grid}.rmd-account{padding:var(--spacing-4);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-primary)}.rmd-account--due-soon{border-color:var(--semantic-status-warning)}.rmd-account--overdue{border-color:var(--semantic-status-negative)}.rmd-account__header{justify-content:space-between;align-items:center;gap:var(--spacing-3);margin-bottom:var(--spacing-3);display:flex}.rmd-account__name{color:var(--semantic-text-primary);font-size:var(--type-scale-body-font-size);margin:0}.rmd-account__badge{padding:var(--spacing-1) var(--spacing-2);font-size:var(--type-scale-caption-font-size);background:var(--semantic-border-default);color:var(--semantic-text-primary);border-radius:999px;font-weight:600}.rmd-account__badge--due-soon{background:var(--semantic-status-warning);color:var(--semantic-text-inverse)}.rmd-account__badge--overdue{background:var(--semantic-status-negative);color:var(--semantic-text-inverse)}.rmd-account__metrics{gap:var(--spacing-3);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:0;display:grid}.rmd-account__metrics dt{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}.rmd-account__metrics dd{margin:var(--spacing-1) 0 0;color:var(--semantic-text-primary);font-weight:700}.retirement-income-answer{border-left:4px solid var(--semantic-interactive-default)}.retirement-income-answer--success{border-left-color:var(--semantic-status-positive)}.retirement-income-answer--warning{border-left-color:var(--semantic-status-warning)}.retirement-income-answer__text{font-size:var(--type-scale-title-font-size);color:var(--semantic-text-primary);margin:var(--spacing-3) 0;font-weight:600}.retirement-income-answer__depletion{padding:var(--spacing-3);background:var(--semantic-background-default);border:1px solid var(--semantic-status-warning);border-radius:var(--border-radius-md);color:var(--semantic-text-primary)}.factor-list{margin:0;padding:0;list-style:none}.factor-item{align-items:flex-start;gap:var(--spacing-2);padding:var(--spacing-2) 0;font-size:var(--type-scale-body-font-size);display:flex}.factor-icon{text-align:center;flex-shrink:0;width:20px}.factor-item__label{color:var(--semantic-text-primary);font-weight:500}.factor-item__desc{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size)}.planning-slider{margin-bottom:var(--spacing-4)}.planning-slider__header{margin-bottom:var(--spacing-2);justify-content:space-between;display:flex}.planning-slider__label{font-size:var(--type-scale-body-font-size);color:var(--semantic-text-primary);font-weight:500}.planning-slider__value{font-size:var(--type-scale-body-font-size);color:var(--semantic-interactive-default);font-weight:600}.planning-slider__input{width:100%;accent-color:var(--semantic-interactive-default)}.projection-chart{width:100%;height:280px;margin:var(--spacing-4) 0}.projection-chart__svg{width:100%;height:100%}.projection-chart__axis-label{font-size:var(--type-scale-caption-font-size);fill:var(--semantic-text-secondary)}.projection-chart__line{fill:none;stroke-width:2px}.projection-chart__line--baseline{stroke:var(--semantic-text-secondary);stroke-dasharray:4 4}.projection-chart__line--scenario{stroke:var(--semantic-interactive-default)}.projection-chart__line--p10{stroke:var(--semantic-status-negative);opacity:.4}.projection-chart__line--p90{stroke:var(--semantic-status-positive);opacity:.4}.projection-chart__area{fill:var(--semantic-interactive-default);opacity:.08}.goal-progress{margin-bottom:var(--spacing-4)}.goal-progress__header{margin-bottom:var(--spacing-2);justify-content:space-between;align-items:center;display:flex}.goal-progress__name{color:var(--semantic-text-primary);font-weight:500}.goal-progress__percent{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}.goal-progress__bar{background:var(--semantic-border-default);border-radius:var(--border-radius-sm);height:8px;overflow:hidden}.goal-progress__fill{background:var(--semantic-interactive-default);border-radius:var(--border-radius-sm);height:100%;transition:width .3s}.goal-progress__fill--complete{background:var(--semantic-status-positive)}.goal-progress__meta{margin-top:var(--spacing-1);font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);justify-content:space-between;display:flex}.milestone-list{gap:var(--spacing-3);margin-top:var(--spacing-3);display:flex}.milestone{align-items:center;gap:var(--spacing-1);flex-direction:column;display:flex}.milestone__icon{background:var(--semantic-border-default);width:28px;height:28px;color:var(--semantic-text-secondary);border-radius:50%;justify-content:center;align-items:center;font-size:14px;display:flex}.milestone__icon--reached{background:var(--semantic-status-positive);color:var(--semantic-text-inverse)}.milestone__label{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}.sweep-rule{align-items:center;gap:var(--spacing-3);padding:var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-3);display:flex}.sweep-rule--disabled{opacity:.5}.sweep-rule__toggle{flex-shrink:0}.sweep-rule__info{flex:1;min-width:0}.sweep-rule__name{color:var(--semantic-text-primary);font-weight:500}.sweep-rule__type{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);text-transform:capitalize}.sweep-rule__amount{color:var(--semantic-interactive-default);text-align:right;font-weight:600}.sweep-rule__actions{gap:var(--spacing-2);display:flex}.sweep-eval{padding:var(--spacing-3);background:var(--semantic-background-elevated);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-2)}.sweep-eval--infeasible{border-color:var(--semantic-border-error);opacity:.7}.sweep-eval__row{font-size:var(--type-scale-body-font-size);justify-content:space-between;display:flex}.sweep-eval__amount{color:var(--semantic-status-positive);font-weight:600}.sweep-eval__reason{font-size:var(--type-scale-caption-font-size);color:var(--semantic-status-negative);margin-top:var(--spacing-1)}.sweep-log{max-height:300px;overflow-y:auto}.sweep-log__entry{padding:var(--spacing-2);border-bottom:1px solid var(--semantic-border-default);font-size:var(--type-scale-caption-font-size);justify-content:space-between;display:flex}.sweep-log__mode{padding:var(--spacing-1) var(--spacing-2);border-radius:var(--border-radius-sm);font-size:11px;font-weight:500}.sweep-log__mode--simulated{background:var(--semantic-status-info);color:var(--semantic-text-inverse)}.sweep-log__mode--executed{background:var(--semantic-status-positive);color:var(--semantic-text-inverse)}.planning-card__description{color:var(--semantic-text-secondary);font-size:var(--type-scale-body-font-size);margin:var(--spacing-2) 0 var(--spacing-4)}.life-events-form{align-items:end;gap:var(--spacing-3);margin-bottom:var(--spacing-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.life-events-field{gap:var(--spacing-1);color:var(--semantic-text-primary);font-size:var(--type-scale-caption-font-size);font-weight:600;display:grid}.life-events-template-list{gap:var(--spacing-2);flex-wrap:wrap;display:flex}.life-events-timeline{gap:var(--spacing-4);padding:var(--spacing-5) 0 var(--spacing-2);display:flex;position:relative;overflow-x:auto}.life-events-timeline:before{content:"";background:var(--semantic-border-default);height:2px;position:absolute;top:35px;left:0;right:0}.life-event{min-width:240px;padding:var(--spacing-4);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-primary);position:relative}.life-event__marker{top:-19px;left:var(--spacing-4);border:3px solid var(--semantic-background-elevated);border-radius:50%;width:18px;height:18px;position:absolute}.life-event__marker--positive{background:var(--semantic-status-positive)}.life-event__marker--negative{background:var(--semantic-status-warning)}.life-event__date,.life-event__cash-flow,.life-event__guidance-title,.life-events-cash-flow-list{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size)}.life-event__name{margin:var(--spacing-1) 0;color:var(--semantic-text-primary);font-size:var(--type-scale-body-font-size)}.life-event__delta{margin-bottom:var(--spacing-2);font-weight:700}.life-event__delta--positive{color:var(--semantic-status-positive)}.life-event__delta--negative{color:var(--semantic-status-negative)}.life-event__guidance ul,.life-events-cash-flow-list{margin:var(--spacing-2) 0 var(--spacing-3);padding-left:var(--spacing-5)}.life-event__guidance li,.life-events-cash-flow-list li{margin-bottom:var(--spacing-1)}.scenario-list{gap:var(--spacing-3);display:grid}.scenario-item{padding:var(--spacing-4);background:var(--semantic-background-elevated);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);cursor:pointer;transition:border-color .15s}.scenario-item:hover{border-color:var(--semantic-interactive-default)}.scenario-item--selected{border-color:var(--semantic-interactive-default);box-shadow:0 0 0 1px var(--semantic-interactive-default)}.scenario-item__name{color:var(--semantic-text-primary);margin-bottom:var(--spacing-1);font-weight:600}.scenario-item__adjustments{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}.scenario-item__delta{margin-top:var(--spacing-2);font-weight:600}.scenario-item__delta--positive{color:var(--semantic-status-positive)}.scenario-item__delta--negative{color:var(--semantic-status-negative)}.planning-actions{gap:var(--spacing-3);margin-bottom:var(--spacing-4);flex-wrap:wrap;display:flex}.planning-btn{padding:var(--spacing-2) var(--spacing-4);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-elevated);color:var(--semantic-text-primary);font-size:var(--type-scale-body-font-size);cursor:pointer;transition:background .15s,border-color .15s}.planning-btn:hover{background:var(--semantic-interactive-hover);color:var(--semantic-text-inverse)}.planning-btn:focus-visible{outline:2px solid var(--semantic-border-focus);outline-offset:2px}.planning-btn--primary{background:var(--semantic-interactive-default);color:var(--semantic-text-inverse);border-color:var(--semantic-interactive-default)}.planning-btn--primary:hover{background:var(--semantic-interactive-hover)}.planning-btn--danger{color:var(--semantic-status-negative);border-color:var(--semantic-status-negative)}.planning-btn--danger:hover{background:var(--semantic-status-negative);color:var(--semantic-text-inverse)}.planning-btn--small{padding:var(--spacing-1) var(--spacing-2);font-size:var(--type-scale-caption-font-size)}.planning-metrics{gap:var(--spacing-4);margin-bottom:var(--spacing-6);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.planning-metric{padding:var(--spacing-4);background:var(--semantic-background-elevated);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md)}.planning-metric__label{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);margin-bottom:var(--spacing-1)}.planning-metric__value{font-size:var(--type-scale-title-font-size);color:var(--semantic-text-primary);font-weight:700}.healthcare-projection__subtitle,.healthcare-projection__footnote{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);margin-top:var(--spacing-1)}.healthcare-projection__gap{padding:var(--spacing-3);background:var(--semantic-background-subtle,var(--semantic-background-default));border-left:3px solid var(--semantic-status-warning);border-radius:var(--border-radius-sm);color:var(--semantic-text-primary);margin-bottom:var(--spacing-4)}.healthcare-projection__components{margin-bottom:var(--spacing-4)}.healthcare-projection__heading{font-size:var(--type-scale-body-font-size);color:var(--semantic-text-primary);margin-bottom:var(--spacing-2)}.healthcare-projection__component-list{gap:var(--spacing-3);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin:0;display:grid}.healthcare-projection__component-list div{padding:var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-sm)}.healthcare-projection__component-list dt{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}.healthcare-projection__component-list dd{margin:var(--spacing-1) 0 0;color:var(--semantic-text-primary);font-weight:600}.healthcare-projection__table-wrapper{margin-bottom:var(--spacing-3);overflow-x:auto}.healthcare-projection__table{border-collapse:collapse;width:100%;font-size:var(--type-scale-caption-font-size)}.healthcare-projection__table caption{text-align:left;color:var(--semantic-text-secondary);margin-bottom:var(--spacing-2)}.healthcare-projection__table th,.healthcare-projection__table td{padding:var(--spacing-2);border-bottom:1px solid var(--semantic-border-default);text-align:left}.healthcare-projection__table th{color:var(--semantic-text-primary);font-weight:600}.planning-empty{text-align:center;padding:var(--spacing-8);color:var(--semantic-text-secondary)}.planning-empty__icon{margin-bottom:var(--spacing-3);font-size:48px}.planning-empty__text{font-size:var(--type-scale-body-font-size);margin-bottom:var(--spacing-4)}.wedding-controls{align-items:end;gap:var(--spacing-3);margin-bottom:var(--spacing-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.wedding-announce{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);margin:0}.wedding-budget-bar{background:var(--semantic-border-default);border-radius:var(--border-radius-md);width:100%;height:12px;margin-bottom:var(--spacing-3);overflow:hidden}.wedding-budget-bar__fill{background:var(--semantic-status-positive);height:100%;transition:width .3s;display:block}.wedding-budget-bar__fill--over{background:var(--semantic-status-negative)}.wedding-status{align-items:center;gap:var(--spacing-2);margin:0 0 var(--spacing-3);font-size:var(--type-scale-body-font-size);font-weight:600;display:flex}.wedding-status--ok{color:var(--semantic-status-positive)}.wedding-status--over{color:var(--semantic-status-negative)}.wedding-badge{align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--border-radius-md);border:1px solid var(--semantic-border-default);font-size:var(--type-scale-caption-font-size);font-weight:600;display:inline-flex}.wedding-badge--overdue,.wedding-badge--paid,.wedding-badge--due-soon,.wedding-badge--upcoming{border-style:solid;border-width:1px}.wedding-badge--overdue{color:var(--semantic-status-negative);border-color:var(--semantic-status-negative)}.wedding-badge--due-soon{color:var(--semantic-status-warning);border-color:var(--semantic-status-warning)}.wedding-badge--upcoming{color:var(--semantic-text-secondary)}.education-planner{gap:var(--spacing-6);flex-direction:column;display:flex}.education-announce{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);margin:0}.education-coverage-bar{background:var(--semantic-border-default);border-radius:var(--border-radius-md);width:100%;height:12px;margin-bottom:var(--spacing-3);overflow:hidden}.education-coverage-bar__fill{background:var(--semantic-status-positive);height:100%;transition:width .3s;display:block}.education-coverage-bar__fill--gap{background:var(--semantic-status-warning)}.education-status{align-items:center;gap:var(--spacing-2);margin:0 0 var(--spacing-3);font-size:var(--type-scale-body-font-size);font-weight:600;display:flex}.education-status--ok{color:var(--semantic-status-positive)}.education-status--gap{color:var(--semantic-status-warning)}.education-allocation{gap:var(--spacing-4);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin:0;display:grid}.education-allocation__item{padding:var(--spacing-4);background:var(--semantic-background-elevated);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);text-align:center}.education-allocation__item dt{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);margin-bottom:var(--spacing-1)}.education-allocation__item dd{font-size:var(--type-scale-title-font-size);color:var(--semantic-text-primary);margin:0;font-weight:700}.home-planner{gap:var(--spacing-6);flex-direction:column;display:flex}.home-announce{color:var(--semantic-text-secondary);font-size:var(--type-scale-caption-font-size);margin:0}.home-coverage-bar{background:var(--semantic-border-default);border-radius:var(--border-radius-md);width:100%;height:12px;margin-bottom:var(--spacing-3);overflow:hidden}.home-coverage-bar__fill{background:var(--semantic-status-positive);height:100%;transition:width .3s;display:block}.home-coverage-bar__fill--gap{background:var(--semantic-status-warning)}.home-status{align-items:center;gap:var(--spacing-2);margin:0 0 var(--spacing-3);font-size:var(--type-scale-body-font-size);font-weight:600;display:flex}.home-guideline{align-items:center;gap:var(--spacing-2);margin:var(--spacing-3) 0 0;font-size:var(--type-scale-body-font-size);font-weight:500;display:flex}.home-status--ok,.home-guideline--ok{color:var(--semantic-status-positive)}.home-status--gap,.home-guideline--warn{color:var(--semantic-status-warning)}.wedding-badge--paid{color:var(--semantic-status-positive);border-color:var(--semantic-status-positive)}.wedding-due-list,.wedding-vendor-list{gap:var(--spacing-3);margin:0;padding:0;list-style:none;display:grid}.wedding-due-item{justify-content:space-between;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-primary);flex-wrap:wrap;display:flex}.wedding-due-item__main{align-items:center;gap:var(--spacing-2);display:flex}.wedding-due-item__name{color:var(--semantic-text-primary);font-weight:600}.wedding-due-item__meta{flex-direction:column;align-items:flex-end;display:flex}.wedding-due-item__amount{color:var(--semantic-text-primary);font-weight:700}.wedding-due-item__date{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}.wedding-vendor{padding:var(--spacing-4);border:1px solid var(--semantic-border-default);border-radius:var(--border-radius-md);background:var(--semantic-background-primary)}.wedding-vendor__header{justify-content:space-between;align-items:center;gap:var(--spacing-2);margin-bottom:var(--spacing-2);flex-wrap:wrap;display:flex}.wedding-vendor__name{color:var(--semantic-text-primary);font-weight:600}.wedding-vendor__per-guest{align-items:center;gap:var(--spacing-1);font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary);display:inline-flex}.wedding-vendor__figures{gap:var(--spacing-2);margin:0 0 var(--spacing-3);grid-template-columns:repeat(auto-fit,minmax(110px,1fr));display:grid}.wedding-vendor__figure{gap:var(--spacing-1);display:grid}.wedding-vendor__figure dt{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}.wedding-vendor__figure dd{color:var(--semantic-text-primary);margin:0;font-weight:700}.wedding-vendor__footer{justify-content:space-between;align-items:center;gap:var(--spacing-2);flex-wrap:wrap;display:flex}.wedding-vendor__due{align-items:center;gap:var(--spacing-2);flex-wrap:wrap;display:inline-flex}.wedding-vendor__due-date{font-size:var(--type-scale-caption-font-size);color:var(--semantic-text-secondary)}@media (max-width:480px){.planning-page{padding:var(--spacing-3)}.readiness-score{text-align:center;flex-direction:column;align-items:center}.planning-metrics{grid-template-columns:1fr}.planning-tabs{gap:0}.planning-tab{padding:var(--spacing-2) var(--spacing-3);font-size:var(--type-scale-caption-font-size)}.sweep-rule{flex-direction:column;align-items:stretch}.life-events-form{grid-template-columns:1fr}.life-events-timeline{padding-top:var(--spacing-6)}.wedding-controls,.wedding-vendor__figures{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.readiness-score__fill,.goal-progress__fill,.wedding-budget-bar__fill,.education-coverage-bar__fill,.home-coverage-bar__fill,.planning-btn,.scenario-item{transition:none}}@media (prefers-contrast:more){.planning-card,.sweep-rule,.scenario-item,.wedding-vendor,.wedding-due-item,.wedding-badge{border-width:2px}.planning-tab--active{border-bottom-width:3px}}
