/* ==========================================================================
   CONVERSION OPPORTUNITY ENGINE — enterprise workspace for the CRO calculator
   --------------------------------------------------------------------------
   Scoped to .coe-workspace (wraps both calculator pages' content).

   NOTE (Phase 2 reconciliation): this file was originally written against
   a standalone --coe-* palette, under the assumption that the rest of the
   product was still dark-first and this workspace needed its own light
   "exception." That assumption is stale — Phase 1 already made light the
   only theme site-wide (see tokens.css), so a second parallel palette here
   duplicated the design system instead of diverging from it. The --coe-*
   custom properties below are now aliases onto the canonical global tokens
   rather than their own hardcoded hex values, so there is one source of
   truth for color/radius/shadow across the whole product. Every .coe-*
   component rule below is unchanged — only what the variables resolve to.
   ========================================================================== */

.coe-workspace{
  --coe-bg: var(--bg);
  --coe-surface: var(--surface);
  --coe-surface-2: var(--surface-2);
  --coe-surface-3: var(--surface-3);
  --coe-text: var(--text);
  --coe-text-secondary: var(--text-secondary);
  --coe-text-muted: var(--text-muted);
  --coe-border: var(--border);
  --coe-border-strong: var(--border-strong);
  --coe-primary: var(--accent);
  --coe-primary-ink: var(--accent-ink);
  --coe-primary-soft: var(--accent-tint);
  --coe-success: var(--success-text);
  --coe-success-soft: var(--success-tint);
  --coe-warning: var(--warning-text);
  --coe-warning-soft: var(--warning-tint);
  --coe-danger: var(--danger-text);
  --coe-danger-soft: var(--danger-tint);
  --coe-radius-sm: var(--radius-xs);
  --coe-radius-md: var(--radius-sm);
  --coe-radius-lg: var(--radius-lg);
  --coe-shadow-sm: var(--shadow-sm);
  --coe-shadow-md: var(--shadow-md);
  --coe-shadow-lg: var(--shadow-lg);
  --coe-font: var(--font-body);
  --coe-font-mono: var(--font-mono);

  background:var(--coe-bg);
  color:var(--coe-text);
  font-family:var(--coe-font);
  padding:28px 0 64px;
}
.coe-workspace *{ box-sizing:border-box; }
.coe-workspace a{ color:var(--coe-primary); }
.coe-workspace h1, .coe-workspace h2, .coe-workspace h3{ color:var(--coe-text); font-weight:600; letter-spacing:-.01em; }
.coe-workspace code{ font-family:var(--coe-font-mono); background:var(--coe-surface-2); padding:1px 6px; border-radius:5px; font-size:.85em; }

/* PAGE HEADER */
.coe-page-header{ margin-bottom:24px; }
.coe-eyebrow{ display:inline-flex; align-items:center; gap:6px; font-size:.78rem; font-weight:600; color:var(--coe-primary); text-transform:uppercase; letter-spacing:.04em; margin-bottom:6px; }
.coe-page-header h1{ font-size:1.7rem; }
.coe-page-header .coe-sub{ color:var(--coe-text-secondary); font-size:.95rem; margin-top:6px; max-width:70ch; }

/* CONTROL ROW */
.coe-control-row{ display:flex; flex-wrap:wrap; align-items:flex-end; gap:14px; padding:16px 18px; background:var(--coe-surface); border:1px solid var(--coe-border); border-radius:var(--coe-radius-lg); box-shadow:var(--coe-shadow-sm); margin-bottom:20px; }
.coe-control{ display:flex; flex-direction:column; gap:5px; }
.coe-control label{ font-size:.72rem; color:var(--coe-text-muted); text-transform:uppercase; letter-spacing:.03em; font-weight:600; }
.coe-control select, .coe-control input{
  font-family:var(--coe-font); font-size:.88rem; color:var(--coe-text);
  border:1px solid var(--coe-border); border-radius:var(--coe-radius-sm);
  padding:8px 12px; background:var(--coe-surface);
  transition:border-color .15s ease, box-shadow .15s ease;
}
.coe-control select:focus, .coe-control input:focus{ outline:none; border-color:var(--coe-primary); box-shadow:0 0 0 3px var(--coe-primary-soft); }
.coe-live-badge{ display:inline-flex; align-items:center; gap:6px; font-size:.8rem; font-weight:600; color:var(--coe-success); margin-left:auto; }
.coe-live-badge .dot{ width:7px; height:7px; border-radius:50%; background:var(--coe-success); animation:coe-pulse 2s ease-in-out infinite; }
@keyframes coe-pulse{ 0%,100%{ opacity:1; } 50%{ opacity:.35; } }

/* HERO METRICS ROW */
.coe-hero-metrics{ display:grid; grid-template-columns:repeat(3, 1fr); gap:1px; background:var(--coe-border); border:1px solid var(--coe-border); border-radius:var(--coe-radius-lg); overflow:hidden; margin-bottom:24px; box-shadow:var(--coe-shadow-sm); }
@media (max-width:820px){ .coe-hero-metrics{ grid-template-columns:1fr; } }
.coe-hero-metric{ background:var(--coe-surface); padding:22px 24px; }
.coe-hero-metric.is-highlight{ background:var(--coe-primary-soft); }
.coe-hero-metric .hm-label{ font-size:.78rem; color:var(--coe-text-muted); font-weight:600; }
.coe-hero-metric .hm-value{ font-family:var(--coe-font-mono); font-size:1.65rem; color:var(--coe-text); margin-top:6px; letter-spacing:-.02em; }
.coe-hero-metric.is-highlight .hm-value{ color:var(--coe-primary); }
.coe-hero-metric .hm-delta{ font-size:.8rem; margin-top:6px; font-weight:600; }
.coe-hero-metric .hm-delta.up{ color:var(--coe-success); }
.coe-hero-metric .hm-delta.down{ color:var(--coe-danger); }
.coe-hero-metric .hm-delta.neutral{ color:var(--coe-text-muted); }

/* PROVENANCE BADGES */
.coe-badge{ display:inline-flex; align-items:center; gap:4px; font-size:.65rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; padding:2px 8px; border-radius:999px; line-height:1.6; }
.coe-badge.actual{ background:var(--coe-success-soft); color:var(--coe-success); }
.coe-badge.modeled{ background:var(--coe-primary-soft); color:var(--coe-primary); }
.coe-badge.assumption{ background:var(--coe-surface-3); color:var(--coe-text-muted); }
.coe-badge.estimated{ background:var(--coe-warning-soft); color:var(--coe-warning); }
.coe-provenance-line{ font-size:.75rem; color:var(--coe-text-muted); margin-top:4px; display:flex; align-items:center; gap:6px; flex-wrap:wrap; }

/* PANELS */
.coe-panel{ background:var(--coe-surface); border:1px solid var(--coe-border); border-radius:var(--coe-radius-lg); box-shadow:var(--coe-shadow-sm); padding:22px 24px; margin-bottom:20px; }
.coe-panel-head{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px; flex-wrap:wrap; }
.coe-panel-head h2{ font-size:1.05rem; }
.coe-panel-head .coe-panel-note{ font-size:.82rem; color:var(--coe-text-muted); }

.cro-current-grid{ display:grid; grid-template-columns:repeat(4, 1fr); gap:1px; background:var(--coe-border); border:1px solid var(--coe-border); border-radius:var(--coe-radius-lg); overflow:hidden; margin-bottom:20px; }
@media (max-width:700px){ .cro-current-grid{ grid-template-columns:repeat(2, 1fr); } }
.cro-current-cell{ background:var(--coe-surface); padding:16px 18px; }
.cro-current-cell .label{ font-size:.72rem; color:var(--coe-text-muted); text-transform:uppercase; letter-spacing:.03em; font-weight:600; }
.cro-current-cell .value{ font-family:var(--coe-font-mono); font-size:1.2rem; color:var(--coe-text); margin-top:6px; }

/* HEADLINE OPPORTUNITY */
.cro-headline{ text-align:center; padding:32px 24px; border:1px solid var(--coe-border); border-radius:var(--coe-radius-lg); background:linear-gradient(180deg, var(--coe-primary-soft), var(--coe-surface) 70%); margin-bottom:20px; }
.cro-headline .coe-eyebrow{ justify-content:center; display:flex; }
.cro-headline-value{ font-family:var(--coe-font-mono); font-size:clamp(2rem, 5vw, 2.75rem); color:var(--coe-primary); line-height:1.1; margin-top:6px; letter-spacing:-.02em; }
.cro-headline-sub{ font-family:var(--coe-font-mono); font-size:1.05rem; color:var(--coe-text-secondary); margin-top:4px; }
.cro-headline-note{ font-size:.82rem; color:var(--coe-text-muted); margin-top:14px; }

/* MODE TOGGLE */
.cro-mode-toggle{ display:inline-flex; padding:3px; border:1px solid var(--coe-border); border-radius:var(--coe-radius-sm); background:var(--coe-surface-2); gap:2px; margin-bottom:16px; }
.cro-mode-toggle button{ border:none; background:transparent; padding:8px 16px; font-size:.85rem; font-weight:500; color:var(--coe-text-secondary); border-radius:7px; cursor:pointer; transition:all .15s ease; }
.cro-mode-toggle button.is-active{ background:var(--coe-surface); color:var(--coe-primary); box-shadow:var(--coe-shadow-sm); }
.cro-mode-toggle button:disabled{ opacity:.4; cursor:not-allowed; }

/* SCENARIO CARDS */
.cro-scenario-grid{ display:grid; grid-template-columns:repeat(4, 1fr); gap:14px; margin-bottom:20px; }
@media (max-width:980px){ .cro-scenario-grid{ grid-template-columns:repeat(2, 1fr); } }
@media (max-width:560px){ .cro-scenario-grid{ grid-template-columns:1fr; } }
.cro-scenario-card{ border:1px solid var(--coe-border); border-radius:var(--coe-radius-md); background:var(--coe-surface); padding:18px 20px; position:relative; transition:box-shadow .15s ease, border-color .15s ease; }
.cro-scenario-card:hover{ box-shadow:var(--coe-shadow-md); }
.cro-scenario-card.is-recommended{ border-color:var(--coe-primary); box-shadow:0 0 0 1px var(--coe-primary); }
.cro-scenario-card .cs-title{ font-size:.72rem; font-weight:700; color:var(--coe-text-muted); text-transform:uppercase; letter-spacing:.04em; }
.cro-scenario-card .cs-tier{ display:block; font-size:.95rem; font-weight:600; color:var(--coe-text); margin-top:2px; }
.cro-scenario-card .cs-badge{ position:absolute; top:-10px; right:16px; font-size:.65rem; font-weight:700; color:var(--coe-primary-ink); background:var(--coe-primary); border-radius:999px; padding:2px 10px; }
.cro-scenario-card .cs-rate{ font-family:var(--coe-font-mono); font-size:1rem; color:var(--coe-text); margin-top:12px; }
.cro-scenario-card .cs-row{ display:flex; justify-content:space-between; font-size:.83rem; color:var(--coe-text-secondary); margin-top:9px; }
.cro-scenario-card .cs-row strong{ color:var(--coe-text); font-family:var(--coe-font-mono); font-weight:600; }
.cro-scenario-card .cs-annual{ margin-top:12px; padding-top:12px; border-top:1px solid var(--coe-border); font-family:var(--coe-font-mono); font-size:1.25rem; color:var(--coe-primary); font-weight:600; }
.cro-scenario-card .cs-annual-label{ font-size:.7rem; color:var(--coe-text-muted); text-transform:uppercase; letter-spacing:.03em; margin-top:2px; }

.cro-range-strip{ display:flex; gap:1px; background:var(--coe-border); border:1px solid var(--coe-border); border-radius:var(--coe-radius-lg); overflow:hidden; margin-bottom:20px; }
.cro-range-cell{ flex:1; background:var(--coe-surface); padding:16px 18px; text-align:center; }
.cro-range-cell .rc-label{ font-size:.76rem; color:var(--coe-text-muted); font-weight:600; }
.cro-range-cell .rc-value{ font-family:var(--coe-font-mono); font-size:1.1rem; color:var(--coe-text); margin-top:6px; }

/* OPPORTUNITY SCORE */
.coe-score-panel{ display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
.coe-score-ring{ position:relative; width:88px; height:88px; flex-shrink:0; }
.coe-score-ring svg{ width:100%; height:100%; transform:rotate(-90deg); }
.coe-score-ring circle{ fill:none; stroke-width:8; }
.coe-score-ring .track{ stroke:var(--coe-surface-3); }
.coe-score-ring .fill{ stroke:var(--coe-primary); stroke-linecap:round; transition:stroke-dashoffset .6s ease; }
.coe-score-ring .score-num{ position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; font-family:var(--coe-font-mono); font-weight:700; font-size:1.3rem; color:var(--coe-text); }
.coe-score-ring .score-num small{ font-size:.6rem; font-weight:500; color:var(--coe-text-muted); }
.coe-score-breakdown{ flex:1; min-width:240px; display:flex; flex-direction:column; gap:8px; }
.coe-score-row{ display:flex; align-items:center; gap:10px; font-size:.82rem; }
.coe-score-row .sr-label{ flex:0 0 150px; color:var(--coe-text-secondary); }
.coe-score-row .sr-track{ flex:1; height:6px; border-radius:4px; background:var(--coe-surface-3); overflow:hidden; }
.coe-score-row .sr-fill{ height:100%; background:var(--coe-primary); border-radius:4px; }
.coe-score-row .sr-value{ font-family:var(--coe-font-mono); font-size:.78rem; color:var(--coe-text-muted); width:44px; text-align:right; }
.coe-score-why{ font-size:.78rem; color:var(--coe-primary); background:none; border:none; cursor:pointer; padding:0; text-decoration:underline; margin-top:10px; }

/* CUSTOM SCENARIO / REVERSE GOAL / EVIDENCE */
.cro-custom-box, .cro-goal-box{ border:1px solid var(--coe-border); border-radius:var(--coe-radius-lg); background:var(--coe-surface); padding:20px 22px; margin-bottom:20px; }
.cro-custom-box .cc-input-row{ display:flex; align-items:flex-end; gap:12px; flex-wrap:wrap; }
.cro-custom-result{ display:flex; gap:22px; flex-wrap:wrap; margin-top:16px; padding-top:16px; border-top:1px solid var(--coe-border); }
.cro-custom-result .ccr-item .l{ font-size:.74rem; color:var(--coe-text-muted); font-weight:600; }
.cro-custom-result .ccr-item .v{ font-family:var(--coe-font-mono); font-size:1rem; color:var(--coe-text); margin-top:2px; }
.cro-goal-result{ display:flex; gap:22px; flex-wrap:wrap; margin-top:16px; padding-top:16px; border-top:1px solid var(--coe-border); }

.cro-chart-wrap svg{ width:100%; height:160px; display:block; }
.cro-chart-wrap .chart-line{ fill:none; stroke:var(--coe-primary); stroke-width:2; }
.cro-chart-wrap .hp-chart-point{ fill:var(--coe-primary); }

.cro-evidence-toggle{ font-size:.82rem; color:var(--coe-primary); background:none; border:none; cursor:pointer; padding:0; font-weight:500; }
.cro-evidence-drawer{ display:none; margin-top:14px; padding:16px 18px; border:1px dashed var(--coe-border-strong); border-radius:var(--coe-radius-md); background:var(--coe-surface-2); }
.cro-evidence-drawer.is-open{ display:block; }
.cro-evidence-drawer dl{ display:grid; grid-template-columns:auto 1fr; gap:6px 16px; margin:0; }
.cro-evidence-drawer dt{ font-size:.76rem; color:var(--coe-text-muted); font-weight:600; }
.cro-evidence-drawer dd{ font-family:var(--coe-font-mono); font-size:.82rem; color:var(--coe-text); margin:0; }
.cro-evidence-drawer ul{ list-style:none; margin:12px 0 0; padding:12px 0 0; border-top:1px solid var(--coe-border); display:flex; flex-direction:column; gap:7px; }
.cro-evidence-drawer li{ font-family:var(--coe-font-mono); font-size:.8rem; color:var(--coe-text-secondary); }

/* DATA HEALTH */
.coe-health-score{ display:flex; align-items:center; gap:16px; margin-bottom:16px; }
.coe-health-score .hs-num{ font-family:var(--coe-font-mono); font-size:2rem; font-weight:700; color:var(--coe-text); }
.coe-health-score .hs-num small{ font-size:1rem; color:var(--coe-text-muted); font-weight:500; }
.coe-health-checks{ display:flex; flex-direction:column; gap:1px; background:var(--coe-border); border:1px solid var(--coe-border); border-radius:var(--coe-radius-md); overflow:hidden; }
.coe-health-check{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 16px; background:var(--coe-surface); font-size:.85rem; }
.coe-health-check .hc-status{ width:8px; height:8px; border-radius:50%; flex-shrink:0; }
.coe-health-check .hc-status.ok{ background:var(--coe-success); }
.coe-health-check .hc-status.warn{ background:var(--coe-warning); }
.coe-health-check .hc-status.fail{ background:var(--coe-danger); }
.coe-health-check .hc-label{ display:flex; align-items:center; gap:9px; font-weight:500; color:var(--coe-text); flex:0 0 200px; }
.coe-health-check .hc-detail{ color:var(--coe-text-muted); text-align:right; flex:1; }

/* OPPORTUNITY CENTER */
.coe-opp-table{ width:100%; border-collapse:collapse; }
.coe-opp-table th{ text-align:left; font-size:.72rem; font-weight:700; color:var(--coe-text-muted); text-transform:uppercase; letter-spacing:.03em; padding:10px 12px; border-bottom:1px solid var(--coe-border); }
.coe-opp-table td{ padding:12px; border-bottom:1px solid var(--coe-border); font-size:.85rem; color:var(--coe-text-secondary); vertical-align:middle; }
.coe-opp-table tr:last-child td{ border-bottom:none; }
.coe-opp-table .num{ font-family:var(--coe-font-mono); color:var(--coe-text); }
.coe-score-chip{ display:inline-flex; align-items:center; justify-content:center; min-width:34px; padding:3px 8px; border-radius:7px; font-family:var(--coe-font-mono); font-weight:700; font-size:.8rem; }
.coe-score-chip.high{ background:var(--coe-success-soft); color:var(--coe-success); }
.coe-score-chip.mid{ background:var(--coe-warning-soft); color:var(--coe-warning); }
.coe-score-chip.low{ background:var(--coe-surface-3); color:var(--coe-text-muted); }
.coe-conf-chip{ font-size:.72rem; font-weight:600; padding:2px 8px; border-radius:999px; }
.coe-conf-chip.high{ background:var(--coe-success-soft); color:var(--coe-success); }
.coe-conf-chip.medium{ background:var(--coe-warning-soft); color:var(--coe-warning); }
.coe-conf-chip.low, .coe-conf-chip.assumption{ background:var(--coe-surface-3); color:var(--coe-text-muted); }

/* RECOMMENDATION CARD */
.coe-recommendation{ border:1px solid var(--coe-primary); border-radius:var(--coe-radius-lg); background:var(--coe-primary-soft); padding:20px 22px; margin-bottom:20px; }
.coe-recommendation .rec-label{ font-size:.72rem; font-weight:700; color:var(--coe-primary); text-transform:uppercase; letter-spacing:.03em; }
.coe-recommendation h3{ font-size:1.05rem; margin-top:6px; }
.coe-recommendation p{ font-size:.88rem; color:var(--coe-text-secondary); margin-top:8px; }
.coe-recommendation .rec-actions{ display:flex; gap:10px; margin-top:16px; flex-wrap:wrap; }

/* BUTTONS (local — foundation.css buttons are dark-tuned) */
.coe-btn{ display:inline-flex; align-items:center; gap:6px; font-family:var(--coe-font); font-size:.85rem; font-weight:500; padding:9px 16px; border-radius:var(--coe-radius-sm); border:1px solid transparent; cursor:pointer; transition:all .15s ease; text-decoration:none; }
.coe-btn-primary{ background:var(--coe-primary); color:var(--coe-primary-ink); }
.coe-btn-primary:hover{ background:var(--btn-primary-hover); }
.coe-btn-secondary{ background:var(--coe-surface); color:var(--coe-text); border-color:var(--coe-border); }
.coe-btn-secondary:hover{ border-color:var(--coe-border-strong); background:var(--coe-surface-2); }
.coe-btn-ghost{ background:none; color:var(--coe-text-secondary); }
.coe-btn-ghost:hover{ color:var(--coe-text); background:var(--coe-surface-2); }
.coe-btn-sm{ padding:6px 12px; font-size:.8rem; }
.coe-btn:disabled{ opacity:.5; cursor:not-allowed; }

/* INTEGRATIONS PANEL (honest — no fake connections) */
.coe-integ-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(180px, 1fr)); gap:12px; }
.coe-integ-card{ border:1px solid var(--coe-border); border-radius:var(--coe-radius-md); padding:14px 16px; background:var(--coe-surface); }
.coe-integ-card .ic-name{ font-weight:600; font-size:.88rem; color:var(--coe-text); }
.coe-integ-card .ic-status{ font-size:.72rem; margin-top:6px; display:inline-block; padding:2px 8px; border-radius:999px; font-weight:600; }
.coe-integ-card .ic-status.connected{ background:var(--coe-success-soft); color:var(--coe-success); }
.coe-integ-card .ic-status.available{ background:var(--coe-surface-3); color:var(--coe-text-muted); }

/* EMPTY STATES */
.coe-empty{ text-align:center; padding:36px 24px; border:1px dashed var(--coe-border-strong); border-radius:var(--coe-radius-lg); color:var(--coe-text-secondary); }
.coe-empty h3{ font-size:1rem; color:var(--coe-text); margin-bottom:6px; }

/* SAVED ANALYSES */
.cro-saved-row{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 16px; border:1px solid var(--coe-border); border-radius:var(--coe-radius-md); margin-bottom:9px; background:var(--coe-surface); }
.cro-saved-row .sr-meta{ font-size:.78rem; color:var(--coe-text-muted); margin-top:2px; }

/* FIELDS (local overrides — app-wide .filter-bar/.field are dark-tuned) */
.coe-workspace .filter-bar{ display:flex; flex-wrap:wrap; gap:14px; align-items:flex-end; }
.coe-workspace .field{ display:flex; flex-direction:column; gap:5px; }
.coe-workspace .field label{ font-size:.72rem; color:var(--coe-text-muted); text-transform:uppercase; letter-spacing:.03em; font-weight:600; }
.coe-workspace .form-control{
  font-family:var(--coe-font); font-size:.88rem; color:var(--coe-text);
  border:1px solid var(--coe-border); border-radius:var(--coe-radius-sm);
  padding:9px 12px; background:var(--coe-surface); min-width:140px;
}
.coe-workspace .form-control:focus{ outline:none; border-color:var(--coe-primary); box-shadow:0 0 0 3px var(--coe-primary-soft); }
.coe-workspace .field-note{ font-size:.82rem; color:var(--coe-text-muted); }
.coe-workspace .field-hint{ font-size:.78rem; color:var(--coe-text-muted); margin-top:8px; }
.coe-workspace .alert{ padding:12px 16px; border-radius:var(--coe-radius-md); font-size:.85rem; }
.coe-workspace .alert-error{ background:var(--coe-danger-soft); color:var(--coe-danger); border:1px solid var(--danger); }
.coe-workspace .alert-info{ background:var(--coe-primary-soft); color:var(--coe-primary); border:1px solid var(--accent); }
.coe-workspace .data-table{ width:100%; border-collapse:collapse; }
.coe-workspace .data-table th{ text-align:left; font-size:.72rem; font-weight:700; color:var(--coe-text-muted); text-transform:uppercase; letter-spacing:.03em; padding:10px 12px; border-bottom:1px solid var(--coe-border); }
.coe-workspace .data-table td{ padding:12px; border-bottom:1px solid var(--coe-border); font-size:.85rem; color:var(--coe-text-secondary); }
.coe-workspace .data-table .num{ font-family:var(--coe-font-mono); color:var(--coe-text); }
[data-cro-error]{ display:none; margin-bottom:20px; }

@media (max-width:640px){
  .cro-current-grid, .cro-range-strip, .coe-hero-metrics{ grid-template-columns:1fr 1fr; }
  .coe-workspace .data-table{ display:block; overflow-x:auto; white-space:nowrap; }
  .coe-control-row{ flex-direction:column; align-items:stretch; }
  .coe-live-badge{ margin-left:0; }
}

/* Centered variants (used by the calculator's page header and closing CTA panel). */
.coe-page-header.is-centered{ text-align:center; }
.coe-eyebrow.is-centered{ justify-content:center; }
.coe-sub.is-centered{ margin-inline:auto; }
.coe-panel.is-centered{ text-align:center; }
.coe-success-text{ color:var(--coe-success); }
.coe-danger-text{ color:var(--coe-danger); }
