/**
 * Solide App — surcouche mode clair (body.solide-app--light)
 * Complète app-auth.css pour les outils modules (.app-mod-*, .app-life-*)
 */

body.solide-app--light {
  --app-light-surface: linear-gradient(165deg, rgba(255, 255, 255, 0.98) 0%, rgba(248, 250, 254, 0.96) 100%);
  --app-light-surface-border: rgba(18, 24, 38, 0.1);
  --app-light-surface-shadow: 0 12px 32px rgba(18, 24, 38, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.95);
  --app-light-input-bg: #fff;
  --app-light-input-border: rgba(18, 24, 38, 0.14);
  --app-light-text-muted: rgba(26, 34, 51, 0.62);
  --app-light-text-subtle: rgba(26, 34, 51, 0.48);
}

/* ── Champs globaux ── */

body.solide-app--light .app-mod-input,
body.solide-app--light .app-mod-select,
body.solide-app--light textarea.app-mod-input,
body.solide-app--light .app-life-input,
body.solide-app--light .app-life-textarea,
body.solide-app--light select.app-life-input {
  border-color: var(--app-light-input-border);
  background: var(--app-light-input-bg);
  color: #121826;
}

body.solide-app--light .app-mod-input::placeholder,
body.solide-app--light .app-life-input::placeholder,
body.solide-app--light .app-life-textarea::placeholder {
  color: rgba(26, 34, 51, 0.38);
}

body.solide-app--light .app-mod-input:focus,
body.solide-app--light .app-mod-select:focus,
body.solide-app--light .app-life-input:focus,
body.solide-app--light .app-life-textarea:focus {
  border-color: rgba(140, 100, 40, 0.45);
  box-shadow: 0 0 0 3px rgba(140, 100, 40, 0.1);
}

body.solide-app--light .app-mod-field__l {
  color: rgba(26, 34, 51, 0.72);
}

body.solide-app--light .app-mod-bud2-class__pie-pct {
  color: rgba(26, 34, 51, 0.82);
}

/* ── Modales ── */

body.solide-app--light .app-life-dialog {
  border-color: rgba(18, 24, 38, 0.12);
  background: var(--app-light-surface);
  color: #121826;
  box-shadow: 0 28px 72px rgba(18, 24, 38, 0.16);
}

body.solide-app--light .app-life-dialog::backdrop {
  background: rgba(18, 24, 38, 0.42);
}

body.solide-app--light .app-life-dialog__title {
  color: #121826;
}

body.solide-app--light .app-life-dialog .btn-secondary,
body.solide-app--light .app-life-dialog__foot .btn-secondary {
  color: rgba(26, 34, 51, 0.82);
  border-color: rgba(18, 24, 38, 0.14);
  background: rgba(255, 255, 255, 0.85);
}

body.solide-app--light .app-life-dialog .btn-secondary:hover {
  color: #121826;
  background: #fff;
}

body.solide-app--light .app-life-catalog-pick {
  border-color: var(--app-light-surface-border);
  background: rgba(255, 255, 255, 0.88);
}

body.solide-app--light .app-life-catalog-pick:hover {
  border-color: rgba(32, 138, 152, 0.35);
  background: rgba(32, 138, 152, 0.06);
}

body.solide-app--light .app-life-catalog-pick--on {
  border-color: rgba(32, 138, 152, 0.45);
  background: linear-gradient(145deg, rgba(32, 138, 152, 0.1) 0%, rgba(255, 255, 255, 0.96) 100%);
}

body.solide-app--light .app-life-catalog-pick__t {
  color: #121826;
}

body.solide-app--light .app-life-catalog-pick__d,
body.solide-app--light .app-life-suggestions__hint {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-life-suggestions__title {
  color: rgba(120, 82, 32, 0.92);
}

/* ── Objectifs de vie / vision board ── */

body.solide-app--light .app-life-main {
  border-color: var(--app-light-surface-border);
  background: var(--app-light-surface);
  box-shadow: var(--app-light-surface-shadow);
}

body.solide-app--light .app-life-toolbar__title,
body.solide-app--light .app-life-bucket-head__title {
  color: #121826;
}

body.solide-app--light .app-life-bucket-head {
  border-top-color: rgba(18, 24, 38, 0.08);
}

body.solide-app--light .app-life-cat {
  border-color: var(--app-light-surface-border);
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.98) 0%, rgba(246, 248, 252, 0.94) 100%);
  box-shadow: 0 8px 24px rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-life-cat__title {
  color: #121826;
}

body.solide-app--light .app-life-cat__desc {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-life-icon-btn {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.9);
  color: rgba(26, 34, 51, 0.78);
}

body.solide-app--light .app-life-icon-btn:hover {
  border-color: rgba(18, 24, 38, 0.18);
  background: #fff;
  color: #121826;
}

body.solide-app--light .app-life-moodboard__empty,
body.solide-app--light .app-life__fine,
body.solide-app--light .app-life__fine p {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-life-global-empty__d {
  color: var(--app-light-text-subtle);
}

/* ── Suivi patrimoine ── */

body.solide-app--light .app-mod-pat2-hero-dash,
body.solide-app--light .app-mod-pat2-portfolio,
body.solide-app--light .app-mod-pat2-rep,
body.solide-app--light .app-mod-pat2-hero,
body.solide-app--light .app-mod-pat2-mattress {
  border-color: var(--app-light-surface-border);
  background: var(--app-light-surface);
  box-shadow: var(--app-light-surface-shadow);
}

body.solide-app--light .app-mod-pat2-hero-dash__kicker,
body.solide-app--light .app-mod-pat2-portfolio__kicker,
body.solide-app--light .app-mod-pat2-rep__title,
body.solide-app--light .app-mod-pat2-mattress__kicker {
  color: rgba(120, 82, 32, 0.9);
}

body.solide-app--light .app-mod-pat2-hero-dash__title,
body.solide-app--light .app-mod-pat2-portfolio__title,
body.solide-app--light .app-mod-pat2-mattress__title,
body.solide-app--light .app-mod-pat2-hero__num,
body.solide-app--light .app-mod-pat2-hero-dash__num {
  color: #121826;
  text-shadow: none;
}

body.solide-app--light .app-mod-pat2-hero-dash__vlab,
body.solide-app--light .app-mod-pat2-hero__k,
body.solide-app--light .app-mod-pat2-hero__hint,
body.solide-app--light .app-mod-pat2-mattress__row,
body.solide-app--light .app-mod-pat2-mattress__lab {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-pat2-mattress__disclaimer {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-pat2-strip__cell {
  border-color: var(--app-light-surface-border);
  background: rgba(255, 255, 255, 0.82);
}

body.solide-app--light .app-mod-pat2-portfolio__metric {
  border-color: rgba(18, 24, 38, 0.08);
  background: rgba(255, 255, 255, 0.72);
}

body.solide-app--light .app-mod-pat2-portfolio__metric-k,
body.solide-app--light .app-mod-pat2-portfolio__filter,
body.solide-app--light .app-mod-pat2-portfolio__foot,
body.solide-app--light .app-mod-pat2-rep__pct {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-pat2-portfolio__metric-v,
body.solide-app--light .app-mod-pat2-rep__name,
body.solide-app--light .app-mod-pat2-rep__money {
  color: rgba(18, 24, 38, 0.88);
}

body.solide-app--light .app-mod-pat2-portfolio__month-nav,
body.solide-app--light .app-mod-pat2-portfolio__month-cell {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.85);
  color: rgba(26, 34, 51, 0.82);
}

body.solide-app--light .app-mod-pat2-pill {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(255, 255, 255, 0.78);
  color: rgba(26, 34, 51, 0.72);
}

body.solide-app--light .app-mod-pat2-pill--on {
  color: #121826;
}

body.solide-app--light .app-mod-pat2-class {
  border-color: var(--app-light-surface-border);
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.98) 0%, rgba(246, 248, 252, 0.95) 100%);
  box-shadow: 0 10px 28px rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-mod-pat2-class--immo {
  border-color: rgba(232, 132, 74, 0.35);
  background: linear-gradient(168deg, rgba(232, 132, 74, 0.08) 0%, rgba(255, 255, 255, 0.96) 52%);
}

body.solide-app--light .app-mod-pat2-class--bourse {
  border-color: rgba(32, 138, 152, 0.35);
  background: linear-gradient(168deg, rgba(32, 138, 152, 0.08) 0%, rgba(255, 255, 255, 0.96) 52%);
}

body.solide-app--light .app-mod-pat2-class--crypto {
  border-color: rgba(140, 100, 200, 0.35);
  background: linear-gradient(168deg, rgba(140, 100, 200, 0.08) 0%, rgba(255, 255, 255, 0.96) 52%);
}

body.solide-app--light .app-mod-pat2-class--liq {
  border-color: rgba(60, 170, 120, 0.35);
  background: linear-gradient(168deg, rgba(60, 170, 120, 0.08) 0%, rgba(255, 255, 255, 0.96) 52%);
}

body.solide-app--light .app-mod-pat2-class--autre {
  border-color: rgba(18, 24, 38, 0.12);
  background: linear-gradient(168deg, rgba(18, 24, 38, 0.04) 0%, rgba(255, 255, 255, 0.96) 52%);
}

body.solide-app--light .app-mod-pat2-class__name {
  color: #121826;
}

body.solide-app--light .app-mod-pat2-class__alloc,
body.solide-app--light .app-mod-pat2-class__sum {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-pat2-class__ring-pct {
  color: rgba(26, 34, 51, 0.82);
}

body.solide-app--light .app-mod-pat2-assets-table-wrap {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(255, 255, 255, 0.72);
}

body.solide-app--light .app-mod-pat2-assets-table__head {
  border-bottom-color: rgba(18, 24, 38, 0.08);
  background: rgba(248, 250, 254, 0.95);
}

body.solide-app--light .app-mod-pat2-assets-table__th {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-pat2-asset-row {
  color: rgba(18, 24, 38, 0.88);
}

body.solide-app--light .app-mod-pat2-asset-row:hover {
  background: rgba(32, 138, 152, 0.05);
}

body.solide-app--light .app-mod-pat2-panel__hint {
  color: var(--app-light-text-muted);
}

/* ── Simulateurs ── */

body.solide-app--light .app-mod-sim-tab {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.82);
  color: rgba(26, 34, 51, 0.72);
}

body.solide-app--light .app-mod-sim-tab:hover {
  border-color: rgba(18, 24, 38, 0.18);
  color: #121826;
}

body.solide-app--light .app-mod-sim-tab[aria-selected='true'] {
  border-color: rgba(32, 138, 152, 0.42);
  background: linear-gradient(165deg, rgba(32, 138, 152, 0.12) 0%, rgba(255, 255, 255, 0.96) 100%);
  color: #121826;
  box-shadow: 0 8px 22px rgba(18, 24, 38, 0.08);
}

body.solide-app--light .app-mod-sim-tabs[data-sim-tab='passive'] .app-mod-sim-tab[aria-selected='true'] {
  border-color: rgba(140, 100, 40, 0.42);
  background: linear-gradient(165deg, rgba(140, 100, 40, 0.1) 0%, rgba(255, 255, 255, 0.96) 100%);
}

body.solide-app--light .app-mod-sim-card--compound .app-mod-sim-card__body,
body.solide-app--light .app-mod-sim-card--passive .app-mod-sim-card__body {
  border-color: var(--app-light-surface-border);
  background: var(--app-light-surface);
  box-shadow: var(--app-light-surface-shadow);
}

body.solide-app--light .app-mod-sim-compound__form {
  border-color: rgba(32, 138, 152, 0.22);
  background: linear-gradient(165deg, rgba(32, 138, 152, 0.06) 0%, rgba(255, 255, 255, 0.92) 100%);
}

body.solide-app--light .app-mod-sim-compound__form-hint,
body.solide-app--light .app-mod-sim-compound__infl-hint {
  border-bottom-color: rgba(18, 24, 38, 0.08) !important;
  color: var(--app-light-text-muted) !important;
}

body.solide-app--light .app-mod-sim-compound__prefill {
  color: rgba(120, 82, 32, 0.95);
  background: rgba(140, 100, 40, 0.08);
  border-color: rgba(140, 100, 40, 0.32);
}

body.solide-app--light .app-mod-sim-compound__prefill:hover {
  color: #121826;
  background: rgba(140, 100, 40, 0.14);
}

body.solide-app--light .app-mod-sim__stat {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(255, 255, 255, 0.82);
}

body.solide-app--light .app-mod-sim__stat-k {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-sim__stat-v {
  color: #121826;
}

body.solide-app--light .app-mod-sim-snap {
  border-color: var(--app-light-surface-border);
  background: rgba(248, 250, 254, 0.95);
}

body.solide-app--light .app-mod-sim-snap__name,
body.solide-app--light .app-mod-sim-snap__hist-title {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-sim-snap__empty {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-sim-snap__save {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.9);
  color: rgba(26, 34, 51, 0.82);
}

body.solide-app--light .app-mod-sim__legend-title {
  color: rgba(120, 82, 32, 0.88);
}

body.solide-app--light .app-mod-sim__legend,
body.solide-app--light .app-mod-sim__legend .app-mod-sim__leg {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-sim__axis-y,
body.solide-app--light .app-mod-sim__axis-x {
  fill: rgba(26, 34, 51, 0.52);
}

body.solide-app--light .app-mod-sim__axis-y--right {
  fill: rgba(120, 82, 32, 0.72);
}

body.solide-app--light .app-mod-sim-card--compound .app-mod-sim__svg,
body.solide-app--light .app-mod-sim-card--passive .app-mod-sim__svg {
  background: rgba(248, 250, 254, 0.95);
  border-color: rgba(18, 24, 38, 0.08);
}

body.solide-app--light .app-mod-sim-card--compound .app-mod-sim__svg line,
body.solide-app--light .app-mod-sim-card--passive .app-mod-sim__svg line {
  stroke: rgba(18, 24, 38, 0.1) !important;
}

body.solide-app--light .app-mod-sim__chart-block--compound .app-mod-sim__legend-title {
  color: rgba(26, 34, 51, 0.52);
}

body.solide-app--light .app-mod-sim-compound__form-section-title {
  border-bottom-color: rgba(18, 24, 38, 0.08);
}

body.solide-app--light .app-mod-sim-compound__form-section-title--finance {
  color: rgba(32, 100, 140, 0.92);
}

body.solide-app--light .app-mod-sim-compound__form-section-title--immo {
  color: rgba(120, 82, 32, 0.92);
  border-bottom-color: rgba(140, 100, 40, 0.18);
}

body.solide-app--light .app-mod-sim-compound__form-section-title--projection {
  color: rgba(80, 70, 140, 0.88);
}

body.solide-app--light .app-mod-sim-compound-field {
  border-bottom-color: rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-mod-sim-compound-field__label {
  color: rgba(26, 34, 51, 0.58);
}

body.solide-app--light .app-mod-sim-compound-field__row,
body.solide-app--light .app-mod-sim-compound__form > .app-mod-field:not(.app-mod-field--check) {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.88);
}

body.solide-app--light .app-mod-sim-compound-field:hover .app-mod-sim-compound-field__row,
body.solide-app--light .app-mod-sim-compound-field:focus-within .app-mod-sim-compound-field__row,
body.solide-app--light .app-mod-sim-compound__form > .app-mod-field:not(.app-mod-field--check):focus-within {
  border-color: rgba(32, 138, 152, 0.35);
  background: rgba(32, 138, 152, 0.05);
  box-shadow: 0 0 0 1px rgba(32, 138, 152, 0.08);
}

body.solide-app--light .app-mod-sim-compound-field__input {
  color: #121826 !important;
  caret-color: rgba(32, 138, 152, 0.95);
}

body.solide-app--light .app-mod-sim-compound-field__unit {
  color: rgba(26, 34, 51, 0.48);
}

body.solide-app--light .app-mod-sim-compound-field__info {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.92);
  color: rgba(26, 34, 51, 0.62);
}

body.solide-app--light .app-mod-sim-compound__hero-k,
body.solide-app--light .app-mod-sim-compound__hero-unit,
body.solide-app--light .app-mod-sim-compound__hero-fisc,
body.solide-app--light .app-mod-sim-compound__hero-sub,
body.solide-app--light .app-mod-sim-compound__immo-hint {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-sim-compound__hero-v {
  color: #121826;
}

body.solide-app--light .app-mod-sim-compound__estimate-passive {
  border-color: rgba(32, 138, 152, 0.28);
  background: rgba(255, 255, 255, 0.92);
  color: rgba(32, 100, 130, 0.95);
}

body.solide-app--light .app-mod-sim-compound__estimate-passive:hover {
  border-color: rgba(32, 138, 152, 0.42);
  background: rgba(32, 138, 152, 0.06);
  color: #121826;
}

body.solide-app--light .app-mod-sim-compound__story {
  border-color: rgba(32, 138, 152, 0.22);
  background: linear-gradient(155deg, rgba(32, 138, 152, 0.06) 0%, rgba(255, 255, 255, 0.96) 58%);
}

body.solide-app--light .app-mod-sim-compound__story-lead,
body.solide-app--light .app-mod-sim-compound__story-p,
body.solide-app--light .app-mod-sim-compound__story-p--disclaimer {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-sim-compound__immo-block {
  border-color: rgba(18, 24, 38, 0.08);
  background: rgba(248, 250, 254, 0.72);
}

body.solide-app--light .app-mod-pass__story {
  border-color: rgba(140, 100, 40, 0.22);
  background: linear-gradient(155deg, rgba(140, 100, 40, 0.06) 0%, rgba(255, 255, 255, 0.96) 58%);
}

body.solide-app--light .app-mod-pass__ff-lead,
body.solide-app--light .app-mod-pass__ff-p,
body.solide-app--light .app-mod-pass__ff-p--disclaimer {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-pass__hero-k,
body.solide-app--light .app-mod-pass__hero-u {
  color: var(--app-light-text-subtle);
}

/* ── Simulateur FIRE ── */

body.solide-app--light .app-mod-fire__theory,
body.solide-app--light .app-mod-fire__simulate {
  border-color: var(--app-light-surface-border);
  background: var(--app-light-surface);
  box-shadow: var(--app-light-surface-shadow);
}

body.solide-app--light .app-mod-fire__section-title,
body.solide-app--light .app-mod-fire__section-lead,
body.solide-app--light .app-mod-fire__detail-mini {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-fire__section-title {
  color: #121826;
}

body.solide-app--light .app-mod-fire__profile {
  border-color: rgba(18, 24, 38, 0.1);
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.98) 0%, rgba(246, 248, 252, 0.95) 100%);
}

body.solide-app--light .app-mod-fire__profile-desc,
body.solide-app--light .app-mod-fire__profile-num,
body.solide-app--light .app-mod-fire__profile-pitch {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-fire__profile-kpi {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(255, 255, 255, 0.82);
}

body.solide-app--light .app-mod-fire__profile-chip {
  color: rgba(26, 34, 51, 0.82);
}

body.solide-app--light .app-mod-fire__focus-chip {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.85);
  color: rgba(26, 34, 51, 0.78);
}

body.solide-app--light .app-mod-fire__vision {
  border-color: var(--app-light-input-border);
  background: var(--app-light-input-bg);
  color: #121826;
}

body.solide-app--light .app-mod-fire__field-label,
body.solide-app--light .app-mod-fire__field-suffix,
body.solide-app--light .app-mod-fire__detail-rule {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-fire__sub {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-fire__title {
  color: #121826;
}

/* ── Budget ── */

body.solide-app--light .app-mod-bud2-sec,
body.solide-app--light .app-mod-bud2-aside,
body.solide-app--light .app-mod-bud2-funnel-band {
  border-color: var(--app-light-surface-border);
  background: var(--app-light-surface);
  box-shadow: var(--app-light-surface-shadow);
}

body.solide-app--light .app-mod-bud2-sec__title,
body.solide-app--light .app-mod-bud2-funnel__title {
  color: rgba(120, 82, 32, 0.9);
}

body.solide-app--light .app-mod-bud2-topbar__income,
body.solide-app--light .app-mod-bud2-topbar__cashflow,
body.solide-app--light .app-mod-bud2-kpi {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(255, 255, 255, 0.82);
}

body.solide-app--light .app-mod-bud2-topbar__lab,
body.solide-app--light .app-mod-bud2-kpi__k,
body.solide-app--light .app-mod-bud2-calc__k,
body.solide-app--light .app-mod-bud2-calc__meta,
body.solide-app--light .app-mod-bud2-line__mini {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-bud2-kpi__v,
body.solide-app--light .app-mod-bud2-topbar__cf-v,
body.solide-app--light .app-mod-bud2-calc__v {
  color: #121826;
}

body.solide-app--light .app-mod-bud2-calc__cell {
  border-color: rgba(18, 24, 38, 0.08);
  background: rgba(255, 255, 255, 0.78);
}

body.solide-app--light .app-mod-bud2-calc__income-edit {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.9);
}

body.solide-app--light .app-mod-bud2-pill {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(255, 255, 255, 0.78);
  color: rgba(26, 34, 51, 0.72);
}

body.solide-app--light .app-mod-bud2-pill--on {
  color: #121826;
}

body.solide-app--light .app-mod-bud2-class {
  border-color: var(--app-light-surface-border);
  background: linear-gradient(168deg, rgba(255, 255, 255, 0.98) 0%, rgba(246, 248, 252, 0.95) 100%);
  box-shadow: 0 10px 28px rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-mod-bud2-class--logement {
  border-color: rgba(232, 132, 74, 0.35);
  background: linear-gradient(168deg, rgba(232, 132, 74, 0.08) 0%, rgba(255, 255, 255, 0.96) 52%);
}

body.solide-app--light .app-mod-bud2-class--alimentation {
  border-color: rgba(80, 170, 110, 0.35);
  background: linear-gradient(168deg, rgba(80, 170, 110, 0.08) 0%, rgba(255, 255, 255, 0.96) 52%);
}

body.solide-app--light .app-mod-bud2-class--transport {
  border-color: rgba(32, 138, 152, 0.35);
  background: linear-gradient(168deg, rgba(32, 138, 152, 0.08) 0%, rgba(255, 255, 255, 0.96) 52%);
}

body.solide-app--light .app-mod-bud2-class--loisirs {
  border-color: rgba(140, 100, 200, 0.35);
  background: linear-gradient(168deg, rgba(140, 100, 200, 0.08) 0%, rgba(255, 255, 255, 0.96) 52%);
}

body.solide-app--light .app-mod-bud2-class--voyage {
  border-color: rgba(60, 170, 120, 0.35);
  background: linear-gradient(168deg, rgba(60, 170, 120, 0.08) 0%, rgba(255, 255, 255, 0.96) 52%);
}

body.solide-app--light .app-mod-bud2-class--sante {
  border-color: rgba(220, 100, 130, 0.35);
  background: linear-gradient(168deg, rgba(220, 100, 130, 0.08) 0%, rgba(255, 255, 255, 0.96) 52%);
}

body.solide-app--light .app-mod-bud2-class--abonnements {
  border-color: rgba(180, 140, 40, 0.35);
  background: linear-gradient(168deg, rgba(180, 140, 40, 0.08) 0%, rgba(255, 255, 255, 0.96) 52%);
}

body.solide-app--light .app-mod-bud2-class--autre {
  border-color: rgba(18, 24, 38, 0.12);
  background: linear-gradient(168deg, rgba(18, 24, 38, 0.04) 0%, rgba(255, 255, 255, 0.96) 52%);
}

body.solide-app--light .app-mod-bud2-class__name {
  color: #121826;
}

body.solide-app--light .app-mod-bud2-class__sub,
body.solide-app--light .app-mod-bud2-class__cat-hint,
body.solide-app--light .app-mod-bud2-class__pie-lab {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-bud2-line__del {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.9);
  color: rgba(26, 34, 51, 0.62);
}

body.solide-app--light .app-mod-bud2-sankey-legend-row {
  border-bottom-color: rgba(18, 24, 38, 0.08);
}

body.solide-app--light .app-mod-bud2-sankey-legend-row__k,
body.solide-app--light .app-mod-bud2-sankey-legend-row__v,
body.solide-app--light .app-mod-bud2-legend-row {
  color: rgba(26, 34, 51, 0.82);
}

body.solide-app--light .app-mod-bud2-sankey-legend-row--income {
  border-color: rgba(140, 100, 40, 0.28);
  background: linear-gradient(120deg, rgba(140, 100, 40, 0.1) 0%, rgba(255, 255, 255, 0.88) 70%);
}

/* ── Habitudes ── */

body.solide-app--light .app-mod-hab__toolbar,
body.solide-app--light .app-mod-hab__stats,
body.solide-app--light .app-mod-hab__card {
  border-color: var(--app-light-surface-border);
  background: var(--app-light-surface);
  box-shadow: var(--app-light-surface-shadow);
}

body.solide-app--light .app-mod-hab__month,
body.solide-app--light .app-mod-hab__stat-n {
  color: #121826;
}

body.solide-app--light .app-mod-hab__stat-l,
body.solide-app--light .app-mod-hab__stat-prog-lab {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-hab__nav {
  border: 1px solid rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.9);
  color: rgba(26, 34, 51, 0.82);
}

body.solide-app--light .app-mod-hab__th-section {
  background: rgba(248, 250, 254, 0.98);
  color: #121826;
}

body.solide-app--light .app-mod-hab__tr-week th {
  background: rgba(18, 24, 38, 0.04);
  color: var(--app-light-text-muted);
  border-bottom-color: rgba(18, 24, 38, 0.1);
}

body.solide-app--light .app-mod-hab__tr-habit:hover {
  background: rgba(32, 138, 152, 0.05);
}

body.solide-app--light .app-mod-hab__inp-name,
body.solide-app--light .app-mod-hab__inp-obj {
  border-color: var(--app-light-input-border);
  background: var(--app-light-input-bg);
  color: #121826;
}

body.solide-app--light .app-mod-hab__actions .btn-secondary {
  color: rgba(26, 34, 51, 0.82);
  background: rgba(255, 255, 255, 0.9);
}

/* ── Notes ── */

body.solide-app--light .app-mod-notes__sidebar,
body.solide-app--light .app-mod-notes__main {
  border-color: var(--app-light-surface-border);
  background: rgba(255, 255, 255, 0.92);
}

body.solide-app--light .app-mod-notes__sb-title {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-notes__list-empty {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-notes__row:hover {
  background: rgba(18, 24, 38, 0.04);
}

body.solide-app--light .app-mod-notes__row--active {
  border-color: rgba(140, 100, 40, 0.28);
  background: rgba(140, 100, 40, 0.08);
}

body.solide-app--light .app-mod-notes__row-title {
  color: rgba(18, 24, 38, 0.9);
}

body.solide-app--light .app-mod-notes__row-ic,
body.solide-app--light .app-mod-notes__back,
body.solide-app--light .app-mod-notes__head-del,
body.solide-app--light .app-mod-notes__tb {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.9);
  color: rgba(26, 34, 51, 0.72);
}

body.solide-app--light .app-mod-notes__editor-wrap {
  border-top-color: rgba(18, 24, 38, 0.08);
}

body.solide-app--light .app-mod-notes__editor,
body.solide-app--light .app-mod-notes__editor p,
body.solide-app--light .app-mod-notes__editor li {
  color: rgba(18, 24, 38, 0.88);
}

body.solide-app--light .app-mod__fine--notes {
  color: var(--app-light-text-muted);
}

/* ── Cashflow immobilier ── */

body.solide-app--light .app-mod-cf__prop-bar,
body.solide-app--light .app-mod-cf__kpi,
body.solide-app--light .app-mod-cf__card {
  border-color: var(--app-light-surface-border);
  background: var(--app-light-surface);
  box-shadow: var(--app-light-surface-shadow);
}

body.solide-app--light .app-mod-cf__kpi--gold {
  border-color: rgba(140, 100, 40, 0.28);
  background: linear-gradient(160deg, rgba(140, 100, 40, 0.06) 0%, rgba(255, 255, 255, 0.96) 100%);
}

body.solide-app--light .app-mod-cf__prop-label,
body.solide-app--light .app-mod-cf__kpi-label,
body.solide-app--light .app-mod-cf__kpi-unit,
body.solide-app--light .app-mod-cf__field-label,
body.solide-app--light .app-mod-cf__field-label small,
body.solide-app--light .app-mod-cf__field-unit {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-cf__kpi-val {
  color: #121826;
}

body.solide-app--light .app-mod-cf__card-head {
  border-bottom-color: rgba(18, 24, 38, 0.08);
  background: rgba(248, 250, 254, 0.95);
  color: #121826;
}

body.solide-app--light .app-mod-cf__field {
  border-bottom-color: rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-mod-cf__field-computed {
  color: rgba(18, 24, 38, 0.88);
}

/* ── Boutons secondaires dans les panneaux sombres restants ── */

body.solide-app--light .app-mod-btn-sm,
body.solide-app--light .app-mod-btn-ghost {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.88);
  color: rgba(26, 34, 51, 0.78);
}

/* ═══════════════════════════════════════════════════════
   Règles transversales — restes dark mode (tour général)
   ═══════════════════════════════════════════════════════ */

body.solide-app--light .app-auth {
  color: #121826;
}

/* Objectifs de vie — navigation & suggestions */
body.solide-app--light .app-life-chip {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.88);
  color: rgba(26, 34, 51, 0.82);
}

body.solide-app--light .app-life-chip:hover {
  border-color: rgba(32, 138, 152, 0.35);
  background: rgba(32, 138, 152, 0.06);
}

body.solide-app--light .app-life-tab {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.82);
  color: rgba(26, 34, 51, 0.78);
}

body.solide-app--light .app-life-tab[aria-selected='true'],
body.solide-app--light .app-life-tab.is-active {
  border-color: rgba(140, 100, 40, 0.35);
  background: rgba(140, 100, 40, 0.08);
  color: #121826;
}

body.solide-app--light .app-life-vstep__title,
body.solide-app--light .app-life-vstep__end-date {
  color: #121826;
}

body.solide-app--light .app-life-vstep__head-lead,
body.solide-app--light .app-life-empty {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-life-btn--danger {
  color: rgba(180, 50, 70, 0.92);
  border-color: rgba(180, 50, 70, 0.28);
}

body.solide-app--light .app-life-item-pie__sub,
body.solide-app--light .app-life-step-pie__sub {
  color: var(--app-light-text-subtle);
}

/* Simulateurs — tooltip & revenus passifs */
body.solide-app--light .app-mod-sim__chart-tip {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.98);
  color: #121826;
  box-shadow: 0 12px 32px rgba(18, 24, 38, 0.12);
}

body.solide-app--light .app-mod-sim__chart-tip__k,
body.solide-app--light .app-mod-sim__chart-tip__v {
  color: rgba(26, 34, 51, 0.82);
}

body.solide-app--light .app-mod-sim__chart-tip__ann {
  color: rgba(120, 82, 32, 0.9);
}

body.solide-app--light .app-mod-pass__hero-v {
  color: rgba(90, 60, 160, 0.95);
}

body.solide-app--light .app-mod-pass__stats,
body.solide-app--light .app-mod-pass__stat {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(255, 255, 255, 0.82);
}

body.solide-app--light .app-mod-pass__stat-k {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-pass__stat-v {
  color: #121826;
}

body.solide-app--light .app-mod-sim-compound__story-title {
  color: rgba(120, 82, 32, 0.92);
}

body.solide-app--light .app-mod-sim-compound__example,
body.solide-app--light .app-mod-sim-compound__example-table {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(255, 255, 255, 0.88);
}

body.solide-app--light .app-mod-sim-compound__example-th,
body.solide-app--light .app-mod-sim-compound__example-rowhead,
body.solide-app--light .app-mod-sim-compound__example-td {
  border-color: rgba(18, 24, 38, 0.08);
  color: rgba(26, 34, 51, 0.82);
}

body.solide-app--light .app-mod-sim-compound__example-note {
  color: var(--app-light-text-muted);
}

/* Patrimoine — blocs secondaires */
body.solide-app--light .app-mod-pat2-kpi,
body.solide-app--light .app-mod-pat2-bar__income,
body.solide-app--light .app-mod-pat2-bar__net {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(255, 255, 255, 0.82);
}

body.solide-app--light .app-mod-pat2-kpi__k,
body.solide-app--light .app-mod-pat2-bar__lab,
body.solide-app--light .app-mod-pat2-bar__net-k,
body.solide-app--light .app-mod-pat2-bar__net-h,
body.solide-app--light .app-mod-pat2-details-k {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-pat2-kpi__v,
body.solide-app--light .app-mod-pat2-bar__net-v,
body.solide-app--light .app-mod-pat2-synopsis-kpis .app-mod-pat2-kpi-op {
  color: rgba(18, 24, 38, 0.88);
}

body.solide-app--light .app-mod-pat2-income {
  border-color: rgba(140, 100, 40, 0.28);
  background: linear-gradient(135deg, rgba(140, 100, 40, 0.08) 0%, rgba(255, 255, 255, 0.96) 55%);
  box-shadow: 0 8px 22px rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-mod-pat2-income__lab {
  color: rgba(120, 82, 32, 0.9);
}

body.solide-app--light .app-mod-pat2-hero-spark__svg {
  background: rgba(248, 250, 254, 0.95);
  border-color: rgba(18, 24, 38, 0.08);
}

body.solide-app--light .app-mod-pat2-hero-spark__cap {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-pat2-rep__track {
  background: rgba(18, 24, 38, 0.06);
  border-color: rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-mod-pat2-rep__total {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-pat2-assets-table__row,
body.solide-app--light .app-mod-pat2-asset-row__name,
body.solide-app--light .app-mod-pat2-asset-row__ticker {
  color: rgba(18, 24, 38, 0.88);
}

/* Budget — barres & saisie */
body.solide-app--light .app-mod-bud2-stack {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-mod-bud2-stack__empty {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-bud2-entry-grid,
body.solide-app--light .app-mod-bud2-aside {
  color: rgba(26, 34, 51, 0.82);
}

body.solide-app--light .app-mod-bud2-pie-legend-details__sum,
body.solide-app--light .app-mod-bud2-sankey-legend-details__sum {
  color: var(--app-light-text-muted);
}

/* Habitudes — corps du tableau */
body.solide-app--light .app-mod-hab__tr-habit {
  border-bottom-color: rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-mod-hab__tr-habit:hover {
  background: rgba(32, 138, 152, 0.04);
}

body.solide-app--light .app-mod-hab__td-name {
  color: rgba(18, 24, 38, 0.88);
}

body.solide-app--light .app-mod-hab__td-obj {
  background: rgba(32, 138, 152, 0.06);
  border-color: rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-mod-hab__td-check {
  border-right-color: rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-mod-hab__del {
  color: rgba(26, 34, 51, 0.42);
}

body.solide-app--light .app-mod-hab__add {
  color: rgba(32, 138, 152, 0.92);
}

body.solide-app--light .app-mod-hab__dlg-lead {
  color: var(--app-light-text-muted);
}

/* Cashflow — chat widget si présent */
body.solide-app--light .app-mod-cf__chat,
body.solide-app--light .app-mod-cf__chat-toggle {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.96);
  color: rgba(26, 34, 51, 0.82);
}

/* FIRE — champs numériques (héritent des inputs globaux) */
body.solide-app--light .app-mod-fire__field input,
body.solide-app--light .app-mod-fire__field select {
  border-color: var(--app-light-input-border);
  background: var(--app-light-input-bg);
  color: #121826;
}

body.solide-app--light .app-mod-fire__results,
body.solide-app--light .app-mod-fire__result-row {
  color: rgba(26, 34, 51, 0.82);
}

/* Textes atténués récurrents dans les outils */
body.solide-app--light .app-mod__fine,
body.solide-app--light .app-mod-reset,
body.solide-app--light .app-psych-play__fine {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-reset:hover {
  color: #121826;
}

/* Boutons icône discrets */
body.solide-app--light .app-life-icon-btn--danger:hover {
  color: rgba(180, 50, 70, 0.95);
  border-color: rgba(180, 50, 70, 0.35);
  background: rgba(180, 50, 70, 0.06);
}

/* ═══════════════════════════════════════════════════════
   Corrections ciblées — captures juillet 2026
   ═══════════════════════════════════════════════════════ */

/* Éducation — « Marquer comme lu » + liste des leçons */
body.solide-app--light .app-mod-edu2-read-check {
  color: rgba(26, 34, 51, 0.88);
}

body.solide-app--light .app-mod-edu2-read-check:hover {
  color: #121826;
  background: rgba(18, 24, 38, 0.04);
}

body.solide-app--light .app-mod-edu2-read-check__ring {
  border-color: rgba(32, 138, 152, 0.45);
  background: rgba(255, 255, 255, 0.92);
  box-shadow: inset 0 0 0 1px rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-mod-edu2-read-check__tick {
  color: rgba(32, 138, 152, 0.95);
}

body.solide-app--light .app-mod-edu2-read-check--on .app-mod-edu2-read-check__ring {
  border-color: rgba(140, 100, 40, 0.45);
  background: linear-gradient(150deg, rgba(32, 138, 152, 0.12) 0%, rgba(140, 100, 40, 0.08) 100%);
  box-shadow: 0 0 0 1px rgba(32, 138, 152, 0.12);
}

body.solide-app--light .app-mod-edu2-read-check__label,
body.solide-app--light .app-mod-edu2-read-check--on .app-mod-edu2-read-check__label {
  color: rgba(26, 34, 51, 0.88);
}

body.solide-app--light .app-mod-edu2-read-check--on .app-mod-edu2-read-check__label {
  color: rgba(120, 82, 32, 0.92);
}

body.solide-app--light .app-mod-edu2-reader__foot {
  border-top-color: rgba(18, 24, 38, 0.08);
}

body.solide-app--light .app-mod-edu2-lessons__btn {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(255, 255, 255, 0.88);
  color: rgba(26, 34, 51, 0.82);
}

body.solide-app--light .app-mod-edu2-lessons__btn--read {
  border-color: rgba(32, 138, 152, 0.22);
  background: rgba(32, 138, 152, 0.06);
}

body.solide-app--light .app-mod-edu2-lessons__t,
body.solide-app--light .app-mod-edu2-lessons__btn--active .app-mod-edu2-lessons__t {
  color: rgba(18, 24, 38, 0.88);
}

body.solide-app--light .app-mod-edu2-lessons__item--current .app-mod-edu2-lessons__btn,
body.solide-app--light .app-mod-edu2-lessons__btn--active {
  border-color: rgba(32, 138, 152, 0.35);
  background: linear-gradient(128deg, rgba(32, 138, 152, 0.12) 0%, rgba(140, 100, 40, 0.06) 52%, rgba(255, 255, 255, 0.96) 100%);
  box-shadow: 0 4px 16px rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-mod-edu2-lessons__btn--active.app-mod-edu2-lessons__btn--read {
  background: linear-gradient(128deg, rgba(32, 138, 152, 0.14) 0%, rgba(255, 255, 255, 0.96) 100%);
}

/* Patrimoine — tableau actifs (valeurs numériques) */
body.solide-app--light .app-mod-pat2-asset-row__cell-v,
body.solide-app--light .app-mod-pat2-asset-row__cell--value .app-mod-pat2-asset-row__cell-v,
body.solide-app--light .app-mod-pat2-asset-row__amt {
  color: rgba(18, 24, 38, 0.88);
}

body.solide-app--light .app-mod-pat2-asset-row__cell-sub,
body.solide-app--light .app-mod-pat2-asset-row__sub {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-pat2-asset-row__pnl--pos .app-mod-pat2-asset-row__pnl-amt,
body.solide-app--light .app-mod-pat2-asset-row__pnl--pos .app-mod-pat2-asset-row__pnl-pct {
  color: rgba(22, 120, 58, 0.95);
}

body.solide-app--light .app-mod-pat2-asset-row__pnl--pos .app-mod-pat2-asset-row__pnl-pct {
  background: rgba(22, 120, 58, 0.1);
}

body.solide-app--light .app-mod-pat2-asset-row__pnl--neg .app-mod-pat2-asset-row__pnl-amt,
body.solide-app--light .app-mod-pat2-asset-row__pnl--neg .app-mod-pat2-asset-row__pnl-pct {
  color: rgba(180, 50, 60, 0.95);
}

body.solide-app--light .app-mod-pat2-asset-row__pnl--neg .app-mod-pat2-asset-row__pnl-pct {
  background: rgba(180, 50, 60, 0.1);
}

/* Patrimoine — onglets Actifs / Dettes */
body.solide-app--light .app-mod-pat2-mtab {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.85);
  color: rgba(26, 34, 51, 0.72);
}

body.solide-app--light .app-mod-pat2-mtab:hover {
  border-color: rgba(32, 138, 152, 0.35);
  color: rgba(26, 34, 51, 0.88);
}

body.solide-app--light .app-mod-pat2-mtab--on {
  border-color: rgba(32, 138, 152, 0.4);
  background: rgba(32, 138, 152, 0.1);
  color: #121826;
}

body.solide-app--light .app-mod-pat2-panel__hint {
  color: var(--app-light-text-muted);
}

/* Patrimoine — graphique évolution portefeuille */
body.solide-app--light .app-mod-pat2-spark__rng {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.85);
  color: rgba(26, 34, 51, 0.72);
}

body.solide-app--light .app-mod-pat2-spark__rng--on {
  border-color: rgba(32, 138, 152, 0.45);
  background: rgba(32, 138, 152, 0.12);
  color: #121826;
}

body.solide-app--light .app-mod-pat2-portfolio__plot {
  border-color: rgba(18, 24, 38, 0.08);
  background: linear-gradient(180deg, rgba(248, 250, 254, 0.98) 0%, rgba(255, 255, 255, 0.96) 100%);
}

body.solide-app--light .app-mod-pat2-portfolio__pick-k {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-pat2-portfolio__pick-in {
  border-color: rgba(18, 24, 38, 0.14);
  background: rgba(255, 255, 255, 0.92);
  color: rgba(26, 34, 51, 0.82);
  color-scheme: light;
}

body.solide-app--light .app-mod-pat2-portfolio__pick-in.is-active,
body.solide-app--light .app-mod-pat2-portfolio__pick-in:focus-visible {
  border-color: rgba(32, 138, 152, 0.45);
  background: rgba(32, 138, 152, 0.08);
  color: #121826;
}

body.solide-app--light .app-mod-pat2-portfolio__pick-in::-webkit-calendar-picker-indicator {
  filter: none;
}

body.solide-app--light .app-mod-pat2-portfolio__month-pop {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 16px 40px rgba(18, 24, 38, 0.12);
}

body.solide-app--light .app-mod-pat2-portfolio__month-year {
  color: #121826;
}

body.solide-app--light .app-mod-pat2-portfolio__filter.is-checked {
  color: rgba(18, 24, 38, 0.88);
}

body.solide-app--light .app-mod-pat2-portfolio__foot,
body.solide-app--light .app-mod-pat2-portfolio__edge {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-pat2-portfolio__state {
  color: var(--app-light-text-muted);
  background: rgba(255, 255, 255, 0.88);
}

/* Patrimoine — matelas de sécurité */
body.solide-app--light .app-mod-pat2-mattress__val {
  color: rgba(32, 138, 152, 0.95);
}

body.solide-app--light .app-mod-pat2-mattress__times,
body.solide-app--light .app-mod-pat2-mattress__equals,
body.solide-app--light .app-mod-pat2-mattress__unit,
body.solide-app--light .app-mod-pat2-mattress__muted {
  color: rgba(26, 34, 51, 0.62);
}

body.solide-app--light .app-mod-pat2-mattress__target {
  color: rgba(120, 82, 32, 0.95);
}

body.solide-app--light .app-mod-pat2-mattress__check-lab {
  color: rgba(26, 34, 51, 0.82);
}

body.solide-app--light .app-mod-pat2-mattress__disclaimer {
  border-top-color: rgba(18, 24, 38, 0.08);
}

/* ═══════════════════════════════════════════════════════
   Corrections light mode — tour 2 (juillet 2026)
   ═══════════════════════════════════════════════════════ */

/* Patrimoine — barre d’actions (devise, PDF, masquer) */
body.solide-app--light .app-mod-pat-ccy {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.92);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95);
}

body.solide-app--light .app-mod-pat-ccy__btn {
  color: rgba(26, 34, 51, 0.62);
}

body.solide-app--light .app-mod-pat-ccy__btn:hover {
  color: rgba(26, 34, 51, 0.88);
  background: rgba(32, 138, 152, 0.08);
}

body.solide-app--light .app-mod-pat-ccy__btn.is-active {
  color: #121826;
  background: rgba(32, 138, 152, 0.18);
}

body.solide-app--light .app-mod-pat-export-pdf {
  color: rgba(26, 34, 51, 0.82);
  border-color: rgba(32, 138, 152, 0.35);
  background: rgba(32, 138, 152, 0.1);
}

body.solide-app--light .app-mod-pat-export-pdf:hover {
  color: #121826;
  border-color: rgba(32, 138, 152, 0.5);
  background: rgba(32, 138, 152, 0.16);
}

body.solide-app--light .app-mod-pat-toggle-values {
  color: rgba(26, 34, 51, 0.72);
  border-color: rgba(18, 24, 38, 0.14);
  background: rgba(255, 255, 255, 0.92);
}

body.solide-app--light .app-mod-pat-toggle-values:hover,
body.solide-app--light .app-mod-pat-toggle-values:focus-visible {
  color: #121826;
  border-color: rgba(32, 138, 152, 0.4);
  background: rgba(32, 138, 152, 0.08);
}

body.solide-app--light .app-mod-pat-toggle-values.is-values-hidden {
  color: rgba(32, 100, 130, 0.95);
  border-color: rgba(32, 138, 152, 0.35);
  background: rgba(32, 138, 152, 0.1);
}

/* Patrimoine — tableau actifs */
body.solide-app--light .app-mod-pat2-asset-row__act {
  border-color: rgba(18, 24, 38, 0.14);
  background: rgba(255, 255, 255, 0.92);
  color: rgba(26, 34, 51, 0.72);
}

body.solide-app--light .app-mod-pat2-asset-row__act:hover:not(:disabled) {
  border-color: rgba(18, 24, 38, 0.22);
  background: rgba(248, 250, 254, 0.98);
  color: #121826;
}

body.solide-app--light .app-mod-pat2-asset-row__act--del {
  border-color: rgba(180, 50, 70, 0.45);
  color: rgba(150, 40, 58, 0.92);
}

body.solide-app--light .app-mod-pat2-asset-row__act--del:hover:not(:disabled) {
  border-color: rgba(180, 50, 70, 0.6);
  background: rgba(180, 50, 70, 0.08);
  color: rgba(130, 30, 48, 0.98);
}

body.solide-app--light .app-mod-pat2-asset-row__rp-badge {
  color: rgba(120, 82, 32, 0.95);
  background: rgba(140, 100, 40, 0.1);
  border-color: rgba(140, 100, 40, 0.32);
}

body.solide-app--light .app-mod-pat2-asset-row__sub {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-pat2-line__del {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.9);
  color: rgba(26, 34, 51, 0.55);
}

body.solide-app--light .app-mod-pat2-line__del:hover {
  border-color: rgba(180, 50, 70, 0.4);
  color: rgba(150, 40, 58, 0.95);
}

body.solide-app--light .app-mod-pat2-mini-field__l,
body.solide-app--light .app-mod-pat2-line__manual-l,
body.solide-app--light .app-mod-pat2-line__microhint {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-pat2-line__derived {
  color: rgba(120, 82, 32, 0.92);
}

body.solide-app--light .app-mod-pat2-line__spot {
  color: rgba(32, 100, 130, 0.92);
}

/* Historique simulations / analyses */
body.solide-app--light .app-mod-sim-snap__item {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(255, 255, 255, 0.88);
}

body.solide-app--light .app-mod-sim-snap__item-name {
  color: rgba(18, 24, 38, 0.88);
}

body.solide-app--light .app-mod-sim-snap__item-date {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-sim-snap__load,
body.solide-app--light .app-mod-sim-snap__remove {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.92);
}

body.solide-app--light .app-mod-sim-snap__load {
  color: rgba(32, 100, 130, 0.95);
}

body.solide-app--light .app-mod-sim-snap__load:hover {
  border-color: rgba(32, 138, 152, 0.4);
  background: rgba(32, 138, 152, 0.08);
  color: #121826;
}

body.solide-app--light .app-mod-sim-snap__remove {
  color: rgba(26, 34, 51, 0.55);
}

body.solide-app--light .app-mod-sim-snap__remove:hover {
  color: rgba(150, 40, 58, 0.95);
  border-color: rgba(180, 50, 70, 0.35);
  background: rgba(180, 50, 70, 0.06);
}

body.solide-app--light .app-mod-cf__snap-link {
  color: rgba(32, 100, 130, 0.95);
}

/* Archives objectifs de vie */
body.solide-app--light .app-life-archives__meta,
body.solide-app--light .app-life-archives__meta-line {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-life-archives__det-sum {
  color: rgba(32, 100, 130, 0.95);
}

body.solide-app--light .app-life-archives__det-body {
  border-top-color: rgba(18, 24, 38, 0.08);
}

body.solide-app--light .app-life-archives__cat-t {
  color: rgba(120, 82, 32, 0.92);
}

body.solide-app--light .app-life-archives__items {
  color: rgba(26, 34, 51, 0.78);
}

body.solide-app--light .app-life-archives__item--done {
  color: rgba(22, 120, 58, 0.92);
}

/* Forum — composer / réponse */
body.solide-app--light .app-forum__label {
  color: rgba(18, 24, 38, 0.82);
}

body.solide-app--light .app-forum__counter {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-forum__reply-actions {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-forum__rich-wrap--notes .app-forum__editor-wrap {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.96);
}

body.solide-app--light .app-forum__rich-wrap--notes .app-mod-notes__toolbar,
body.solide-app--light .app-mod-notes__toolbar {
  border-bottom-color: rgba(18, 24, 38, 0.08);
  background: rgba(248, 250, 254, 0.98);
}

body.solide-app--light .app-forum__tb,
body.solide-app--light .app-mod-notes__tb {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.92);
  color: rgba(26, 34, 51, 0.72);
}

body.solide-app--light .app-forum__tb:hover,
body.solide-app--light .app-mod-notes__tb:hover {
  border-color: rgba(32, 138, 152, 0.35);
  color: #121826;
}

/* Budget — entonnoir Sankey & besoins/plaisirs */
body.solide-app--light .app-mod-bud2-funnel-band {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(248, 250, 254, 0.96) 100%);
  box-shadow: var(--app-light-surface-shadow);
}

body.solide-app--light .app-mod-bud2-split {
  border-color: var(--app-light-surface-border);
  background: var(--app-light-surface);
  box-shadow: var(--app-light-surface-shadow);
}

body.solide-app--light .app-mod-bud2-split__title {
  color: rgba(120, 82, 32, 0.92);
}

body.solide-app--light .app-mod-bud2-split__lab,
body.solide-app--light .app-mod-bud2-split__txt {
  color: rgba(26, 34, 51, 0.72);
}

body.solide-app--light .app-mod-bud2-split__amt {
  color: rgba(18, 24, 38, 0.88);
}

body.solide-app--light .app-mod-bud2-split__bar {
  border-color: rgba(18, 24, 38, 0.1);
}

body.solide-app--light .app-mod-bud2-funnel__step-k,
body.solide-app--light .app-mod-bud2-funnel__pct,
body.solide-app--light .app-mod-bud2-funnel__ar,
body.solide-app--light .app-mod-bud2-funnel__hint {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-bud2-funnel__step-v {
  color: #121826;
}

body.solide-app--light .app-mod-bud2-sankey__lbl {
  fill: rgba(26, 34, 51, 0.72);
}

body.solide-app--light .app-mod-bud2-sankey__lbl--compact {
  fill: rgba(26, 34, 51, 0.55);
}

body.solide-app--light .app-mod-bud2-sankey__income-lab {
  fill: rgba(120, 82, 32, 0.78);
}

body.solide-app--light .app-mod-bud2-sankey__income-val {
  fill: rgba(18, 24, 38, 0.88);
}

body.solide-app--light .app-mod-bud2-sankey__empty {
  fill: rgba(26, 34, 51, 0.48);
}

body.solide-app--light .app-mod-bud2-sankey__src {
  stroke: rgba(18, 24, 38, 0.12);
}

body.solide-app--light .app-mod-bud2-sankey__axis {
  stroke: rgba(18, 24, 38, 0.08);
}

body.solide-app--light .app-mod-bud2-aside {
  background: rgba(255, 255, 255, 0.88);
}

body.solide-app--light .app-mod-bud2-income {
  border-color: rgba(140, 100, 40, 0.28);
  background: linear-gradient(125deg, rgba(140, 100, 40, 0.1) 0%, rgba(255, 255, 255, 0.96) 52%);
  box-shadow: 0 8px 22px rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-mod-bud2-income__lab {
  color: rgba(120, 82, 32, 0.92);
}

body.solide-app--light .app-mod-bud2-income__val {
  color: #121826;
  text-shadow: none;
}

/* Habitudes — cases à cocher & totaux */
body.solide-app--light .app-mod-hab__check {
  border-color: rgba(18, 24, 38, 0.18);
  background: rgba(255, 255, 255, 0.92);
}

body.solide-app--light .app-mod-hab__check:hover {
  border-color: rgba(32, 138, 152, 0.45);
  background: rgba(32, 138, 152, 0.06);
}

body.solide-app--light .app-mod-hab__check--on {
  border-color: rgba(32, 100, 140, 0.55);
  background: rgba(32, 100, 140, 0.88);
  color: #fff;
}

body.solide-app--light .app-mod-hab__th-total,
body.solide-app--light .app-mod-hab__td-total {
  background: rgba(18, 24, 38, 0.04) !important;
}

body.solide-app--light .app-mod-hab__th-week-sub {
  color: var(--app-light-text-subtle);
  opacity: 1;
}

body.solide-app--light .app-mod-hab__total-n {
  color: rgba(18, 24, 38, 0.88);
}

body.solide-app--light .app-mod-hab__total-d {
  color: var(--app-light-text-subtle);
}

body.solide-app--light .app-mod-hab__progress {
  background: rgba(18, 24, 38, 0.08);
}

body.solide-app--light .app-mod-hab__progress-fill {
  background: linear-gradient(90deg, rgba(32, 100, 140, 0.85), rgba(32, 138, 152, 0.75));
}

body.solide-app--light .app-mod-hab__stat-n {
  color: rgba(120, 82, 32, 0.95);
}

/* Simulateur FIRE — dashboard & profils */
body.solide-app--light .app-mod-fire__access {
  color: rgba(120, 82, 32, 0.92);
}

body.solide-app--light .app-mod-fire__label {
  color: rgba(120, 82, 32, 0.88);
}

body.solide-app--light .app-mod-fire__detail {
  border-color: rgba(18, 24, 38, 0.1);
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.98) 0%, rgba(246, 248, 252, 0.95) 100%);
}

body.solide-app--light .app-mod-fire__detail-vibe,
body.solide-app--light .app-mod-fire__detail-block {
  color: rgba(26, 34, 51, 0.78);
}

body.solide-app--light .app-mod-fire__detail-label {
  color: rgba(26, 34, 51, 0.52);
}

body.solide-app--light .app-mod-fire__detail-rule {
  border-top-color: rgba(18, 24, 38, 0.08);
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-fire__overview,
body.solide-app--light .app-mod-fire__kpi,
body.solide-app--light .app-mod-fire__compare,
body.solide-app--light .app-mod-fire__targets,
body.solide-app--light .app-mod-fire__chart-wrap {
  border-color: rgba(18, 24, 38, 0.1);
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.98) 0%, rgba(246, 248, 252, 0.95) 100%);
  box-shadow: var(--app-light-surface-shadow);
}

body.solide-app--light .app-mod-fire__overview-ring {
  background:
    radial-gradient(farthest-side, rgba(255, 255, 255, 0.98) 72%, transparent 73%) center / 100% 100%,
    conic-gradient(from 0deg, var(--fire-accent, rgba(140, 100, 40, 0.85)) var(--fire-pct), rgba(18, 24, 38, 0.08) 0);
}

body.solide-app--light .app-mod-fire__overview-title {
  color: #121826;
}

body.solide-app--light .app-mod-fire__overview-desc,
body.solide-app--light .app-mod-fire__kpi-label,
body.solide-app--light .app-mod-fire__kpi-sub,
body.solide-app--light .app-mod-fire__compare-title,
body.solide-app--light .app-mod-fire__chart-title,
body.solide-app--light .app-mod-fire__compare-intro,
body.solide-app--light .app-mod-fire__compare-k,
body.solide-app--light .app-mod-fire__compare-col-label,
body.solide-app--light .app-mod-fire__compare-gap,
body.solide-app--light .app-mod-fire__targets-title {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-fire__kpi-value,
body.solide-app--light .app-mod-fire__compare-col-v--cur {
  color: rgba(18, 24, 38, 0.88);
}

body.solide-app--light .app-mod-fire__compare-col-v--tgt,
body.solide-app--light .app-mod-fire__compare-info-v {
  color: rgba(120, 82, 32, 0.95);
}

body.solide-app--light .app-mod-fire__compare-card {
  border-color: rgba(18, 24, 38, 0.08);
  background: rgba(255, 255, 255, 0.82);
}

body.solide-app--light .app-mod-fire__compare-track {
  background: rgba(18, 24, 38, 0.08);
}

body.solide-app--light .app-mod-fire__target-row {
  border-color: rgba(18, 24, 38, 0.08);
  background: rgba(255, 255, 255, 0.78);
}

body.solide-app--light .app-mod-fire__target-k,
body.solide-app--light .app-mod-fire__target-s {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-fire__target-v {
  color: rgba(120, 82, 32, 0.95);
}

body.solide-app--light .app-mod-fire__objectif {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(255, 255, 255, 0.88);
}

body.solide-app--light .app-mod-fire__objectif-range,
body.solide-app--light .app-mod-fire__objectif-annual {
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-fire__check-text {
  color: rgba(26, 34, 51, 0.78);
}

body.solide-app--light .app-mod-fire__disclaimer {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(248, 250, 254, 0.95);
  color: var(--app-light-text-muted);
}

body.solide-app--light .app-mod-fire__chart-inner {
  background: rgba(248, 250, 254, 0.95);
  border-radius: 8px;
}

/* Dashboard — outils secondaires */
body.solide-app--light .app-dash-tools-secondary__label {
  color: rgba(26, 34, 51, 0.52);
}

/* Objectifs de vie — détail objectif (tâches, titre) */
body.solide-app--light .app-life-detail__title {
  color: #121826;
}

body.solide-app--light .app-life-detail__h {
  color: rgba(120, 82, 32, 0.92);
}

body.solide-app--light .app-life-detail-tasks__item {
  border-color: rgba(18, 24, 38, 0.08);
  background: rgba(255, 255, 255, 0.88);
}

body.solide-app--light .app-life-detail-tasks__text {
  color: rgba(18, 24, 38, 0.88);
}

body.solide-app--light .app-life-detail-hero-pie__pct {
  color: rgba(32, 138, 152, 0.95);
}

/* Cashflow — tableau d'amortissement */
body.solide-app--light .app-mod-cf__table-title {
  color: #121826;
}

body.solide-app--light .app-mod-cf__toggle {
  border-color: rgba(18, 24, 38, 0.12);
  background: rgba(255, 255, 255, 0.85);
  color: rgba(26, 34, 51, 0.72);
}

body.solide-app--light .app-mod-cf__toggle--active {
  border-color: rgba(140, 100, 40, 0.35);
  background: rgba(140, 100, 40, 0.1);
  color: rgba(120, 82, 32, 0.95);
}

body.solide-app--light .app-mod-cf__amort {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(255, 255, 255, 0.96);
}

body.solide-app--light .app-mod-cf__table thead {
  background: rgba(248, 250, 254, 0.98);
}

body.solide-app--light .app-mod-cf__table th {
  color: var(--app-light-text-subtle);
  border-bottom-color: rgba(18, 24, 38, 0.1);
}

body.solide-app--light .app-mod-cf__table td {
  color: rgba(26, 34, 51, 0.72);
  border-bottom-color: rgba(18, 24, 38, 0.06);
}

body.solide-app--light .app-mod-cf__table tr:hover td {
  background: rgba(32, 138, 152, 0.04);
}

body.solide-app--light .app-mod-cf__year-row td {
  background: rgba(140, 100, 40, 0.08) !important;
  color: rgba(120, 82, 32, 0.95) !important;
}

body.solide-app--light .app-mod-cf__total-row td {
  background: rgba(18, 24, 38, 0.04);
  color: rgba(18, 24, 38, 0.88) !important;
  border-top-color: rgba(18, 24, 38, 0.1);
}

body.solide-app--light .app-mod-cf__td-bal {
  color: rgba(18, 24, 38, 0.88) !important;
}

body.solide-app--light .app-mod-cf__td-int {
  color: rgba(180, 50, 60, 0.92) !important;
}

body.solide-app--light .app-mod-cf__td-cap {
  color: rgba(22, 120, 58, 0.92) !important;
}

body.solide-app--light .app-mod-cf__td-cf-pos {
  color: rgba(22, 120, 58, 0.95) !important;
}

body.solide-app--light .app-mod-cf__td-cf-neg {
  color: rgba(180, 50, 60, 0.95) !important;
}

body.solide-app--light .app-mod-cf__disc {
  color: var(--app-light-text-muted);
}
