/* Smart Fin Reports — Phase 4.7.1 platform-wide QA and dark-mode readability */
@media screen{
  body.dark-platform #sfr-platform-root{
    --sfr-audit-text:#dce7f4;
    --sfr-audit-heading:#edf4fc;
    --sfr-audit-muted:#b5c4d6;
    --sfr-audit-soft:#9fb1c6;
    --sfr-audit-border:#354a62;
    --sfr-audit-input:#eef5fd;
  }
  body.dark-platform #sfr-platform-root [data-sfr-module-root]{color:var(--sfr-audit-text)!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(h1,h2,h3,h4,legend){color:var(--sfr-audit-heading)!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(p,li,dd,figcaption){color:var(--sfr-audit-muted)!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] small{color:#aebed1!important;opacity:1!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(strong,b,em){color:#dce8f5!important;opacity:1!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] span:not([class*="bar"]):not([class*="dot"]):not([class*="progress"]){color:#b9c9da!important;opacity:1!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] [class*="eyebrow"]{background:#173254!important;border-color:#345a82!important;color:#d5e8ff!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] button:not(.primary):not([class*="primary"]):not(.danger):not([class*="danger"]){color:#d7e5f4!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(button.primary,button[class*="primary"]){background:#2563eb!important;border-color:#3b82f6!important;color:#fff!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(.good,.up) :is(strong,b,em),
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(strong,b,em).good,
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(strong,b,em).up{color:#6ee7b7!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(.watch,.warning) :is(strong,b,em),
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(strong,b,em).watch{color:#fcd34d!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(.risk,.down,.danger) :is(strong,b,em),
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(strong,b,em).risk,
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(strong,b,em).down{color:#fca5a5!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(
    label>span,
    label>small,
    header>span,
    header>small,
    [class*="eyebrow"],
    [class*="hint"],
    [class*="help-text"],
    [class*="field-note"],
    [class*="table-note"],
    [class*="grid-help"],
    [class*="builder-note"]
  ){color:var(--sfr-audit-muted)!important;opacity:1!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(
    input:not([type="checkbox"]):not([type="radio"]),select,textarea
  ){color:var(--sfr-audit-input)!important;border-color:var(--sfr-audit-border)!important;background-color:#07111f!important;caret-color:#fff}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(input,textarea)::placeholder{color:#8fa2b9!important;opacity:1}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] table th{color:#c4d2e2!important;background-color:#142033!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] table td{color:#d9e4f0!important;border-color:#2c3e53!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(
    [class*="panel"]>header,
    [class*="section-head"],
    [class*="table-head"]
  ){border-color:#2e435a!important}
  body.dark-platform #sfr-platform-root [data-sfr-module-root] :is(
    [class*="kpi"] span,
    [class*="metric"] span,
    [class*="summary"] span,
    [class*="forecast"] span,
    [class*="forecast"] small,
    [class*="decision"] small
  ){color:#b7c7da!important;opacity:1!important}
  body.dark-platform #sfr-platform-root .sfr-menu-label,
  body.dark-platform #sfr-platform-root .sfr-tool-title-copy,
  body.dark-platform #sfr-platform-root .sfr-sidebar small,
  body.dark-platform #sfr-platform-root .sfr-header-view-title{color:#bdcad9!important;opacity:1!important}
  body.dark-platform #sfr-platform-root :is(.sfr-rce-tool,.sfr-ape-tool){--rce-muted:#b5c4d6;--ape-muted:#b5c4d6}
  body.dark-platform #sfr-platform-root :is(.sfr-rce-tool,.sfr-ape-tool) :is(.good,.watch,.risk,.up,.down) strong{filter:brightness(1.18) saturate(.9)}
  body.dark-platform #sfr-platform-root .sfr-smx-panel header button{background:#17253a!important;color:#cbdcf0!important;border:1px solid #36506c!important}
  body.dark-platform #sfr-platform-root .sfr-smx-btn.soft{background:#142947!important;color:#c8dcf5!important;border-color:#345b86!important}
  body.dark-platform #sfr-platform-root .sfr-smx-decision-card span,
  body.dark-platform #sfr-platform-root .sfr-smx-decision-card small{color:#bdcce0!important}
}

/* 4.7.1 — remove remaining light islands inside dark mode */
@media screen{
  body.dark-platform #sfr-platform-root :is(.sfr-rce-steps,.sfr-ape-steps) b{
    background:#183454!important;border:1px solid #386187!important;color:#dbeafe!important;
  }
  body.dark-platform #sfr-platform-root :is(.sfr-rce-priority-list,.sfr-rce-validation-list,.sfr-ape-priority-list,.sfr-ape-validation-list) article.good b{
    background:#123d32!important;border:1px solid #287a62!important;color:#86efca!important;
  }
  body.dark-platform #sfr-platform-root :is(.sfr-rce-priority-list,.sfr-rce-validation-list,.sfr-ape-priority-list,.sfr-ape-validation-list) article.watch b{
    background:#493719!important;border:1px solid #8b681f!important;color:#fde68a!important;
  }
  body.dark-platform #sfr-platform-root :is(.sfr-rce-priority-list,.sfr-rce-validation-list,.sfr-ape-priority-list,.sfr-ape-validation-list) article.risk b{
    background:#4b2228!important;border:1px solid #8f3b48!important;color:#fecaca!important;
  }

  body.dark-platform #sfr-platform-root .sfr-cfl-btn.secondary{
    background:#173254!important;border-color:#3f6b98!important;color:#dbeafe!important;
  }
  body.dark-platform #sfr-platform-root .sfr-cfl-section-head>div>span{
    background:#173254!important;border:1px solid #345d86!important;color:#dbeafe!important;
  }
  body.dark-platform #sfr-platform-root .sfr-cfl-priority{
    background:linear-gradient(145deg,#10243b,#0e1d30)!important;border-color:#315579!important;
  }
  body.dark-platform #sfr-platform-root .sfr-cfl-priority>span{
    background:#173c63!important;border:1px solid #3d6e9e!important;color:#dbeafe!important;
  }

  body.dark-platform #sfr-platform-root :is(.sfr-cce-btn,.sfr-credit-btn,.sfr-eqa-btn){
    background:#14263d!important;border-color:#3a526d!important;color:#dbe7f4!important;
  }
  body.dark-platform #sfr-platform-root :is(.sfr-cce-btn-primary,.sfr-credit-btn.primary,.sfr-eqa-btn.primary){
    background:#2563eb!important;border-color:#3b82f6!important;color:#fff!important;
  }
  body.dark-platform #sfr-platform-root :is(.sfr-cce-btn-danger,.sfr-credit-btn.danger,.sfr-eqa-btn.danger){
    background:#442229!important;border-color:#87414d!important;color:#fecaca!important;
  }

  body.dark-platform #sfr-platform-root .sfr-credit-score-card>div:last-child>b,
  body.dark-platform #sfr-platform-root .sfr-credit-guide-grid b,
  body.dark-platform #sfr-platform-root .sfr-credit-condition>b{
    background:#173a50!important;border:1px solid #32716c!important;color:#99f6e4!important;
  }
  body.dark-platform #sfr-platform-root .sfr-credit-warning.good>b{
    background:#123d32!important;border:1px solid #287a62!important;color:#86efca!important;
  }
  body.dark-platform #sfr-platform-root .sfr-credit-warning.watch>b{
    background:#493719!important;border:1px solid #8b681f!important;color:#fde68a!important;
  }
  body.dark-platform #sfr-platform-root .sfr-credit-warning.risk>b{
    background:#4b2228!important;border:1px solid #8f3b48!important;color:#fecaca!important;
  }

  body.dark-platform #sfr-platform-root .sfr-eqa-strengths b,
  body.dark-platform #sfr-platform-root .sfr-eqa-alert-grid article.good>b{
    background:#123d32!important;border:1px solid #287a62!important;color:#86efca!important;
  }
  body.dark-platform #sfr-platform-root .sfr-eqa-alert-grid article.watch>b{
    background:#493719!important;border:1px solid #8b681f!important;color:#fde68a!important;
  }
  body.dark-platform #sfr-platform-root .sfr-eqa-alert-grid article.risk>b{
    background:#4b2228!important;border:1px solid #8f3b48!important;color:#fecaca!important;
  }

  body.dark-platform #sfr-platform-root .sfr-fsl-guide-grid b,
  body.dark-platform #sfr-platform-root .sfr-fsl-priority>b{
    background:#173a50!important;border:1px solid #32716c!important;color:#99f6e4!important;
  }
  body.dark-platform #sfr-platform-root .sfr-fsl-notice,
  body.dark-platform #sfr-platform-root .sfr-ff-notice{
    background:#342b16!important;border-color:#7c6625!important;color:#fde9a8!important;
  }
  body.dark-platform #sfr-platform-root :is(.sfr-fsl-notice,.sfr-ff-notice) :is(strong,span){
    color:#fde9a8!important;
  }
  body.dark-platform #sfr-platform-root :is(.sfr-fsl-panel>header>button,.sfr-ff-panel>header>button){
    background:#14263d!important;border-color:#3a526d!important;color:#dbe7f4!important;
  }
}
