/* FRA Prop HQ v9.2.0 — Bright fintech theme
   Light-by-default visual system for the v9 horizontal / calm layout.
   Keeps all existing functionality, ids and progressive-disclosure behaviour. */

:root{
  --v92-bg:#f4f7f3;
  --v92-bg-2:#edf2ed;
  --v92-surface:#ffffff;
  --v92-surface-2:#f8faf8;
  --v92-surface-3:#eef3ef;
  --v92-text:#111814;
  --v92-text-soft:#334039;
  --v92-muted:#6c7871;
  --v92-muted-2:#89948e;
  --v92-line:#dbe4dd;
  --v92-line-strong:#c9d5cc;
  --v92-green:#a8e635;
  --v92-green-strong:#78b913;
  --v92-green-soft:#eef8d7;
  --v92-deep:#173b2a;
  --v92-blue:#4f7cff;
  --v92-blue-soft:#edf2ff;
  --v92-danger:#dc5c64;
  --v92-warning:#e6a13a;
  --v92-shadow:0 16px 40px rgba(25,55,37,.07);
  --v92-shadow-soft:0 6px 18px rgba(25,55,37,.055);

  /* Map the current v9/v9.1 design tokens into the new palette. */
  --v9-bg:var(--v92-bg);
  --v9-surface:var(--v92-surface);
  --v9-surface-2:var(--v92-surface-2);
  --v9-line:var(--v92-line);
  --v9-line-strong:var(--v92-line-strong);
  --v9-text:var(--v92-text);
  --v9-muted:var(--v92-muted);
  --v9-accent:var(--v92-green);
  --v9-accent-soft:var(--v92-green-soft);
  --v9-danger:var(--v92-danger);

  --v91-line:var(--v92-line);
  --v91-line-strong:var(--v92-line-strong);
  --v91-muted:var(--v92-muted);
  --v91-text:var(--v92-text);
  --v91-accent:var(--v92-green-strong);
  --v91-soft:var(--v92-green-soft);

  /* Older app variables still used deep inside some views. */
  --bg:var(--v92-bg);
  --bg-2:var(--v92-bg-2);
  --panel:var(--v92-surface);
  --panel-2:var(--v92-surface-2);
  --panel-3:var(--v92-surface-3);
  --input:#ffffff;
  --hover:#f0f5f1;
  --border:var(--v92-line);
  --border-strong:var(--v92-line-strong);
  --text:var(--v92-text);
  --text-strong:var(--v92-text);
  --muted:var(--v92-muted);
  --muted-2:var(--v92-muted-2);
  --green:#2dad66;
  --red:var(--v92-danger);
  --amber:var(--v92-warning);
  --blue:var(--v92-blue);
  --purple:#7667e8;
  --teal:#20a98d;
  --accent:var(--v92-green-strong);
  --accent-soft:var(--v92-green-soft);
}

html,
body{
  background:var(--v92-bg)!important;
  color:var(--v92-text)!important;
}

/* --- APP FRAME --- */
body:not(.signed-out){
  background:
    radial-gradient(circle at 9% -5%, rgba(168,230,53,.15), transparent 26rem),
    radial-gradient(circle at 92% 8%, rgba(79,124,255,.08), transparent 30rem),
    var(--v92-bg)!important;
}
body:not(.signed-out) .app-shell{
  background:transparent!important;
  color:var(--v92-text)!important;
}
body:not(.signed-out) .app-shell > .main-content{
  background:transparent!important;
}
body:not(.signed-out) .app-shell .view{
  color:var(--v92-text)!important;
}

/* --- HORIZONTAL NAV --- */
body:not(.signed-out) .app-shell .topbar{
  background:rgba(255,255,255,.86)!important;
  border-bottom:1px solid rgba(193,207,197,.8)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.75), 0 10px 30px rgba(24,55,36,.045)!important;
  backdrop-filter:blur(22px) saturate(145%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(145%)!important;
}
body:not(.signed-out) .topbar-left:before{
  background:var(--v92-deep)!important;
  color:#f7ffe9!important;
  box-shadow:0 7px 20px rgba(23,59,42,.14)!important;
}
body:not(.signed-out) .topbar-left h1,
body:not(.signed-out) #pageTitle{
  color:var(--v92-text)!important;
}
.fra-v9-home,
.fra-v9-group-button{
  color:#66746b!important;
  border-radius:999px!important;
}
.fra-v9-home:hover,
.fra-v9-group-button:hover,
.fra-v9-group.open>.fra-v9-group-button{
  background:#f1f5f1!important;
  border-color:var(--v92-line)!important;
  color:var(--v92-text)!important;
}
.fra-v9-home.active,
.fra-v9-group-button.active{
  background:var(--v92-deep)!important;
  border-color:var(--v92-deep)!important;
  color:#f8ffe9!important;
  box-shadow:0 7px 18px rgba(23,59,42,.12)!important;
}
.fra-v9-menu{
  background:rgba(255,255,255,.98)!important;
  border-color:var(--v92-line)!important;
  box-shadow:0 22px 55px rgba(31,57,42,.15)!important;
}
.fra-v9-menu button{color:#5e6b63!important;}
.fra-v9-menu button:hover{background:#f2f6f3!important;color:var(--v92-text)!important;}
.fra-v9-menu button.active{background:var(--v92-green-soft)!important;color:var(--v92-deep)!important;}
.fra-v9-menu small{color:#98a39d!important;}

/* --- TYPOGRAPHY / PAGE CHROME --- */
body:not(.signed-out) .section-head h2,
body:not(.signed-out) .panel-head h2,
body:not(.signed-out) .panel-head h3,
body:not(.signed-out) .view h1,
body:not(.signed-out) .view h2,
body:not(.signed-out) .view h3,
body:not(.signed-out) .view h4{
  color:var(--v92-text)!important;
}
body:not(.signed-out) .section-head p,
body:not(.signed-out) .panel-head p,
body:not(.signed-out) .panel-sub,
body:not(.signed-out) .muted{
  color:var(--v92-muted)!important;
}
body:not(.signed-out) .section-kicker,
body:not(.signed-out) .dashboard-eyebrow{
  color:var(--v92-green-strong)!important;
}

/* --- CALM PAGE TABS --- */
.fra-v91-tabs{border-color:var(--v92-line)!important;}
.fra-v91-tab{color:#7c8881!important;}
.fra-v91-tab:hover{color:var(--v92-deep)!important;}
.fra-v91-tab.active{color:var(--v92-deep)!important;}
.fra-v91-tab.active::after{background:var(--v92-green-strong)!important;}

/* --- SURFACES --- */
body:not(.signed-out) .panel,
body:not(.signed-out) .kpi-card,
body:not(.signed-out) .modern-card,
body:not(.signed-out) .summary-card,
body:not(.signed-out) .metric-card,
body:not(.signed-out) .stat-card,
body:not(.signed-out) .workspace-card,
body:not(.signed-out) .provider-card,
body:not(.signed-out) .account-card{
  color:var(--v92-text)!important;
}

/* Most v9.1 top-level content remains flat; secondary boxes get only a soft surface. */
body:not(.signed-out) .view .panel:not(.fra-v91-flat-panel),
body:not(.signed-out) .view .modern-card,
body:not(.signed-out) .view .summary-card,
body:not(.signed-out) .view .metric-card,
body:not(.signed-out) .view .stat-card,
body:not(.signed-out) .view .workspace-card{
  border-color:var(--v92-line)!important;
}

/* --- KPI RAIL --- */
body:not(.signed-out) .view .kpi-grid{
  border-color:var(--v92-line)!important;
}
body:not(.signed-out) .view .kpi-card{
  border-right-color:var(--v92-line)!important;
}
body:not(.signed-out) .view .kpi-card span{
  color:#7c8881!important;
}
body:not(.signed-out) .view .kpi-card strong{
  color:var(--v92-text)!important;
}
body:not(.signed-out) .view .kpi-card strong.positive,
body:not(.signed-out) .positive{color:#22995b!important;}
body:not(.signed-out) .view .kpi-card strong.negative,
body:not(.signed-out) .negative{color:var(--v92-danger)!important;}

/* --- BUTTONS --- */
body:not(.signed-out) .button.primary{
  background:var(--v92-deep)!important;
  border-color:var(--v92-deep)!important;
  color:#f8ffe9!important;
  box-shadow:0 8px 18px rgba(23,59,42,.12)!important;
}
body:not(.signed-out) .button.primary:hover{
  background:#214a36!important;
  border-color:#214a36!important;
}
body:not(.signed-out) .view .button.secondary,
body:not(.signed-out) .view .button.ghost,
body:not(.signed-out) .button.secondary,
body:not(.signed-out) .button.ghost{
  background:transparent!important;
  color:#58665e!important;
  border-color:transparent!important;
}
body:not(.signed-out) .view .button.secondary:hover,
body:not(.signed-out) .view .button.ghost:hover,
body:not(.signed-out) .button.secondary:hover,
body:not(.signed-out) .button.ghost:hover{
  color:var(--v92-deep)!important;
  background:#edf3ee!important;
}
body:not(.signed-out) .button.danger{
  background:#fff2f2!important;
  border-color:#f2cccc!important;
  color:#b8464d!important;
}

/* --- FORMS --- */
body:not(.signed-out) .control,
body:not(.signed-out) input,
body:not(.signed-out) select,
body:not(.signed-out) textarea{
  background:#ffffff!important;
  color:var(--v92-text)!important;
  border-color:var(--v92-line)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.8)!important;
}
body:not(.signed-out) .control:focus,
body:not(.signed-out) input:focus,
body:not(.signed-out) select:focus,
body:not(.signed-out) textarea:focus{
  border-color:#9bc86c!important;
  box-shadow:0 0 0 3px rgba(168,230,53,.15)!important;
  outline:none!important;
}
body:not(.signed-out) input::placeholder,
body:not(.signed-out) textarea::placeholder{color:#a4ada8!important;}

/* --- TABLES --- */
body:not(.signed-out) .view .table-wrap{
  background:rgba(255,255,255,.72)!important;
  border-color:var(--v92-line)!important;
  box-shadow:0 8px 24px rgba(28,54,38,.035)!important;
}
body:not(.signed-out) .view .data-table,
body:not(.signed-out) .data-table{background:transparent!important;color:var(--v92-text)!important;}
body:not(.signed-out) .view .data-table th,
body:not(.signed-out) .data-table th{
  background:#f4f7f4!important;
  color:#758079!important;
  border-color:var(--v92-line)!important;
}
body:not(.signed-out) .view .data-table td,
body:not(.signed-out) .data-table td{
  color:var(--v92-text-soft)!important;
  border-color:#e8eeea!important;
  background:transparent!important;
}
body:not(.signed-out) .data-table tbody tr:hover td{background:#f8fbf8!important;}

/* --- DASHBOARD --- */
#view-dashboard .v801-command-hero{
  border-bottom-color:var(--v92-line)!important;
  background:transparent!important;
}
#view-dashboard .v801-hero-copy h2{color:var(--v92-text)!important;}
#view-dashboard .v801-hero-copy p{color:var(--v92-muted)!important;}
#view-dashboard .dashboard-terminal-strip{
  border-bottom-color:var(--v92-line)!important;
  color:var(--v92-text-soft)!important;
}
#view-dashboard .v801-dashboard-rail{border-color:var(--v92-line)!important;}
#view-dashboard .v801-dashboard-rail > *{border-color:var(--v92-line)!important;}
#view-dashboard #onboardingChecklist{border-bottom-color:var(--v92-line)!important;}

/* --- COPY DESK --- */
#view-copier{--copier-accent:var(--v92-green-strong)!important;}
#view-copier .copier-safety-banner{
  border-bottom-color:#d9e7c8!important;
  background:transparent!important;
}
#view-copier .copier-kpis{
  border-color:var(--v92-line)!important;
  background:rgba(255,255,255,.56)!important;
}
#view-copier .copier-kpis .kpi-card{border-right-color:var(--v92-line)!important;}
#view-copier .copier-worker-strip,
#view-copier .copier-beta-badge,
#view-copier .copier-mode-chip{
  background:#f5f8f5!important;
  border-color:var(--v92-line)!important;
  color:#6d7972!important;
}
#view-copier .copier-mode-switch{
  background:#eef3ef!important;
  border-color:var(--v92-line)!important;
}
#view-copier .copier-log{
  background:#f8faf8!important;
  border-color:var(--v92-line)!important;
  color:#354239!important;
}
#view-copier .copier-table th{background:#f4f7f4!important;color:#7a867f!important;}

/* --- NEWS / PSYCHOLOGY / GUARDRAILS / CONNECTIONS --- */
#view-news .squawk-hero,
#view-news .news-bias-card,
#view-guardrails .guardrail-hero,
#view-guardrails .v7-rule-command,
#view-connections .provider-review-panel,
#view-connections .partner-program-banner,
#view-connections .partner-core-grid,
#view-connections .single-connection-legacy{
  color:var(--v92-text)!important;
  border-color:var(--v92-line)!important;
}

/* Psychology used a lot of dark color-mix values; normalize its working surfaces. */
#view-psychology .psychology-tool-card,
#view-psychology .psychology-overview-status,
#view-psychology .v790-state-card,
#view-psychology .v790-plan-item,
#view-psychology .v790-history article,
#view-psychology .v790-pref-row,
#view-psychology .v790-form-section,
#view-psychology .v790-check-list label{
  background:#ffffff!important;
  border-color:var(--v92-line)!important;
  color:var(--v92-text)!important;
  box-shadow:none!important;
}

/* --- BADGES / STATUS --- */
body:not(.signed-out) .badge,
body:not(.signed-out) .status-pill,
body:not(.signed-out) .chip{
  background:#f2f6f3!important;
  border-color:var(--v92-line)!important;
  color:#647168!important;
}
body:not(.signed-out) .badge.green,
body:not(.signed-out) .status-pill.online,
body:not(.signed-out) .status-pill.connected{
  background:#eaf7ee!important;
  border-color:#c9e8d2!important;
  color:#24764a!important;
}

/* --- MODALS / TOASTS --- */
body:not(.signed-out) .modal-card,
body:not(.signed-out) .wide-modal,
body:not(.signed-out) .v790-modal-card{
  background:#ffffff!important;
  color:var(--v92-text)!important;
  border-color:var(--v92-line)!important;
  box-shadow:0 28px 80px rgba(27,55,38,.18)!important;
}
body:not(.signed-out) .modal-backdrop{background:rgba(31,48,38,.28)!important;backdrop-filter:blur(5px)!important;}
body:not(.signed-out) .toast{
  background:#ffffff!important;
  color:var(--v92-text)!important;
  border-color:var(--v92-line)!important;
  box-shadow:var(--v92-shadow)!important;
}

/* --- AMBIENT BACKGROUND: make it subtle on light mode --- */
#fraAmbientWash{
  background:
    radial-gradient(circle at 12% 6%, rgba(168,230,53,.16), transparent 42%),
    radial-gradient(circle at 88% 84%, rgba(79,124,255,.09), transparent 46%)!important;
}
body.fra-ambient-active .app-shell > .main-content{background:transparent!important;backdrop-filter:none!important;}
body.fra-ambient-active .app-shell .topbar{background:rgba(255,255,255,.86)!important;}
body.fra-ambient-active .app-shell .panel{background:transparent!important;}
body.fra-ambient-active .app-shell .kpi-card,
body.fra-ambient-active .app-shell .table-wrap,
body.fra-ambient-active .app-shell .data-table{background-color:transparent!important;}

/* --- PUBLIC LANDING: brighter but still recognisably FRA --- */
body.signed-out,
body.signed-out .public-landing,
body.signed-out .fra-landing{
  background:
    radial-gradient(circle at 10% 0%, rgba(168,230,53,.18), transparent 30rem),
    radial-gradient(circle at 92% 8%, rgba(79,124,255,.10), transparent 32rem),
    var(--v92-bg)!important;
  color:var(--v92-text)!important;
}
body.signed-out .landing-nav{
  background:rgba(255,255,255,.62)!important;
  border-color:var(--v92-line)!important;
  backdrop-filter:blur(18px)!important;
}
body.signed-out .landing-nav-links a,
body.signed-out .public-nav-links a{color:#5f6c64!important;}
body.signed-out .landing-nav-links a:hover,
body.signed-out .public-nav-links a:hover{color:var(--v92-deep)!important;}
body.signed-out .landing-hero h1,
body.signed-out .public-hero h1,
body.signed-out .public-section h2{color:var(--v92-text)!important;}
body.signed-out .landing-hero p,
body.signed-out .public-hero p,
body.signed-out .public-section p,
body.signed-out .public-pricing-note{color:var(--v92-muted)!important;}
body.signed-out .public-terminal-preview,
body.signed-out .public-feature-grid article,
body.signed-out .public-price-card,
body.signed-out .hero-art-panel{
  background:rgba(255,255,255,.82)!important;
  border-color:var(--v92-line)!important;
  box-shadow:var(--v92-shadow)!important;
}
body.signed-out .preview-topline,
body.signed-out .preview-head{
  background:#f2f6f2!important;
  color:#7d8982!important;
  border-color:var(--v92-line)!important;
}
body.signed-out .preview-row,
body.signed-out .preview-kpis{border-color:var(--v92-line)!important;color:var(--v92-text)!important;}
body.signed-out .preview-kpis strong,
body.signed-out .public-feature-grid strong,
body.signed-out .public-price-name,
body.signed-out .public-price strong{color:var(--v92-text)!important;}
body.signed-out .button.primary{
  background:var(--v92-deep)!important;
  border-color:var(--v92-deep)!important;
  color:#f8ffe9!important;
}
body.signed-out .button.secondary{
  background:rgba(255,255,255,.72)!important;
  border-color:var(--v92-line)!important;
  color:var(--v92-deep)!important;
}
body.signed-out .public-footer{border-color:var(--v92-line)!important;color:var(--v92-muted)!important;}
body.signed-out .public-footer a{color:#657169!important;}

/* --- MOBILE --- */
@media(max-width:760px){
  body:not(.signed-out) .app-shell .topbar{
    background:rgba(255,255,255,.92)!important;
  }
  .fra-v9-nav{
    mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 14px),transparent 100%);
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 14px),transparent 100%);
  }
}

/* v9.2 uses one deliberate visual system. Hide the old dark-theme chooser so
   Settings does not offer options that fight the new product design. */
#appearanceSettingsPanel{display:none!important;}
