/* JW Digital — visual workspace. Existing component classes keep their behaviors. */
:root {
  --bg:#f4f5f7; --surface:#fff; --surface-2:#eef1f5; --line:#dce1e8;
  --text:#202b3b; --muted:#4b596b; --teal:#254e80; --purple:#6c7f98;
  --danger:#af303b; --warning:#895715; --shadow:0 2px 6px rgba(24,39,59,.025);
  font-family:Inter,system-ui,sans-serif;
}
body { background:var(--bg); font-size:14px; }
button,input,select,textarea { border-radius:6px; }
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible { outline:3px solid #6796d5; outline-offset:3px; }
button { touch-action:manipulation; }
h1,h2,h3,.brand { font-family:Inter,system-ui,sans-serif; }
h1,h2,h3 { color:var(--text); }
.eyebrow { color:var(--muted)!important; font-size:10px!important; letter-spacing:.1em; font-weight:650; }
.workspace-app .topbar { position:sticky; top:0; z-index:30; min-height:78px; padding:14px 28px; background:#fff; backdrop-filter:none; }
.brand { font-size:15px; font-weight:700; gap:12px; }
.brand small { display:block; color:var(--muted); font-size:10px; font-weight:450; margin-top:4px; letter-spacing:.04em; }
.brand-mark { background:#243f63; color:white; border-radius:6px; width:38px; height:38px; font-size:13px; font-weight:600; letter-spacing:-.08em; }
.brand b { color:var(--text); }
.top-actions { gap:10px; }
.workspace-app .secure-badge { display:none; }
.live-badge { background:var(--surface-2); color:var(--muted); border:0; box-shadow:none; }
.user-menu-button { color:var(--text); border:1px solid var(--line); border-radius:6px; background:#fff; font-weight:550; }
.workspace-app .tabs { position:fixed; top:78px; bottom:0; left:0; width:220px; padding:24px 14px; background:#fff; border-right:1px solid var(--line); border-bottom:0; display:flex; flex-direction:column; gap:4px; overflow-y:auto; overflow-x:hidden; }
.workspace-app .tabs::before { content:'ÁREA DE TRABALHO'; font-size:9px; letter-spacing:.12em; color:#778395; padding:0 12px 14px; }
.tab { text-align:left; white-space:normal; min-height:42px; border-radius:5px; padding:11px 12px; font-size:12px; font-weight:500; }
.tab.active { color:#244873; background:#eaf0f7; box-shadow:inset 3px 0 #254e80; font-weight:650; }
.tab:hover { background:#f1f4f8; color:#203e62; }
.tab-count { background:#e2e8f1; color:#254e80; }
.workspace-app .shell { width:auto; max-width:1600px; margin:0 0 0 220px; padding:32px 36px 64px; }
.hero,.page-title { align-items:center; gap:24px; margin-bottom:24px; }
.hero h1,.page-title h1 { font-size:30px; line-height:1.2; letter-spacing:-.035em; font-weight:650; margin-bottom:8px; }
.hero p,.page-title p { font-size:13px; line-height:1.6; margin-bottom:0; }
.period-box { border:0; background:transparent; box-shadow:none; border-radius:0; padding:0; width:auto; max-width:480px; }
.period-box > label { font-size:11px; margin-bottom:6px; }
.period-fields { display:flex; }
.period-fields input { width:144px; min-width:0; }
#syncStatus { max-width:440px; display:block; font-size:10px; line-height:1.5; margin-top:7px; }
input,select,textarea { background:#fff; color:var(--text); border:1px solid #c9d1dc; border-radius:6px; color-scheme:light; }
input::placeholder,textarea::placeholder { color:#7a8595; }
.button { border-radius:6px; min-height:40px; font-weight:600; font-size:12px; box-shadow:none; }
.button:hover { transform:none; }
.button-primary { color:#fff; background:#254e80; }
.button-primary:hover { background:#1c406d; }
.button-secondary { background:#fff; border-color:#ccd5e0; }
.button:disabled { cursor:not-allowed; }
.text-button { color:#254e80; font-size:12px; font-weight:600; }
.section-card,.metric-card,.table-card,.form-card,.integration-card,.column-picker,.financial-details,.saved-funnel,.template-card,.funnel-builder { border:1px solid var(--line); background:#fff; border-radius:8px; box-shadow:none; }
.section-card { padding:24px; margin-top:20px; }
.section-heading { gap:16px; align-items:center; }
.section-heading h2,.plain-result h2 { font-size:17px; font-weight:650; letter-spacing:-.025em; }
.section-heading p { font-size:12px; line-height:1.6; }
.data-condition { margin:0 0 20px; border:1px solid var(--line); border-left:3px solid #a6b8cf; background:#edf1f6; border-radius:5px; padding:13px 16px; color:var(--muted); font-size:12px; line-height:1.6; }
.data-condition summary { color:var(--text); cursor:pointer; font-size:12px; font-weight:550; }
.data-condition summary span { margin-left:12px; font-size:10px; font-weight:400; }
.data-condition > strong,.data-condition > span,.data-condition > small { display:block; margin-top:10px; }
.plain-result,.plain-result[data-result="negative"],.plain-result[data-result="attention"] { padding:24px; background:#fff; border:1px solid var(--line); border-radius:8px; box-shadow:none; }
.plain-result-badge,.source-badge,.status-chip { background:#eef2f6; color:#495c72; border-color:var(--line); font-size:10px; font-weight:550; }
.money-flow { gap:0; grid-template-columns:1fr 24px 1fr 24px 1.1fr; margin-top:22px; }
.money-flow article { background:transparent; border:0; border-radius:0; padding:8px 16px; min-height:100px; }
.money-flow article:first-child { padding-left:0; }
.money-flow article > span { font-size:12px; color:var(--muted); }
.money-flow article > strong { font:650 clamp(26px,2.6vw,39px)/1.3 Inter,system-ui,sans-serif; color:var(--text); letter-spacing:-.045em; margin:10px 0 6px; font-variant-numeric:tabular-nums; }
.money-flow article > small { font-size:11px; line-height:1.5; }
.money-flow .money-result { border-left:1px solid var(--line); }
.money-flow .money-result > strong { color:#17674e; }
.plain-result[data-result="negative"] .money-result > strong { color:var(--danger); }
.plain-result[data-result="attention"] .money-result > strong { color:var(--muted); }
.money-definition { display:none; }
.plain-explanation { background:transparent; border:0; border-top:1px solid var(--line); border-radius:0; padding:18px 0 0; margin-top:16px; }
.plain-explanation > div:first-child { display:none; }
.simple-order-math { margin-top:0; gap:16px; }
.simple-order-math > span { padding:0; background:transparent; font-size:11px; }
.simple-order-math strong { font-size:17px; font-weight:600; color:var(--text); }
.simple-formula { display:none; }
.simple-decision,.plain-result[data-result="negative"] .simple-decision,.plain-result[data-result="attention"] .simple-decision { margin-top:18px; background:#f5f7fa; border:0; border-radius:4px; color:var(--muted); font-size:11px; }
.recommendations { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.recommendation { padding:0 20px 0 0; border:0; border-right:1px solid var(--line); border-radius:0; background:transparent; }
.recommendation:last-child { padding-right:0; border-right:0; }
.analysis-label { color:#6b7b8e; font-size:9px; letter-spacing:.08em; font-weight:650; }
.recommendation h3 { font-size:14px; margin:10px 0; font-weight:600; }
.recommendation p { font-size:12px; line-height:1.75; }
.recommendation .text-button { margin-top:14px; padding-left:0; }
.question-options { display:flex; flex-wrap:wrap; gap:9px; }
.question-options button { min-height:42px; padding:10px 14px; background:#fff; color:var(--text); border:1px solid #cbd5e2; font-size:12px; }
.question-options button[aria-pressed="true"] { background:#254e80; border-color:#254e80; color:white; }
.analysis-context { font-size:12px; color:var(--muted); border-left:3px solid #b9c7d9; padding:10px 14px; line-height:1.7; }
.analysis-answer { background:#f5f7fa; padding:24px; border-radius:6px; margin-top:22px; }
.analysis-answer h3 { font-size:20px; font-weight:600; letter-spacing:-.02em; margin:10px 0 14px; }
.analysis-answer > p { font-size:14px; line-height:1.9; max-width:880px; }
.analysis-evidence { margin-top:20px; font-size:12px; }
.analysis-evidence summary { color:#254e80; cursor:pointer; font-weight:600; padding:4px 0; }
.analysis-evidence p,.analysis-evidence small { color:var(--muted); line-height:1.7; }
.analysis-evidence > div,.change-bridge > div { display:flex; justify-content:space-between; align-items:baseline; gap:18px; padding:12px 0; border-bottom:1px solid var(--line); font-size:13px; }
.analysis-evidence > div strong,.change-bridge strong { white-space:nowrap; font-weight:600; font-variant-numeric:tabular-nums; }
.analysis-evidence > small { display:block; margin-top:12px; }
.change-bridge small { display:block; margin-top:4px; color:var(--muted); font-size:11px; }
.change-bridge .bridge-total { border:0; font-weight:650; padding-top:18px; }
.positive,.positive-text { color:#17674e; }.negative,.negative-text { color:var(--danger); }
.analysis-footnote,#marginHelp { color:var(--muted); font-size:12px; line-height:1.7; margin:16px 0 0; }
.scenario-form { display:flex; align-items:end; gap:12px; flex-wrap:wrap; }
.scenario-form label { font-size:12px; font-weight:550; color:var(--muted); }
.percent-input { display:flex; align-items:center; gap:8px; margin-top:8px; }
.percent-input input { width:100px; min-height:40px; }
.scenario-values { display:grid; grid-template-columns:1fr 1fr; gap:24px; padding:22px 0; margin-top:18px; border-top:1px solid var(--line); }
.scenario-values span,.scenario-values small { display:block; font-size:12px; color:var(--muted); line-height:1.6; }
.scenario-values strong { display:block; font-size:28px; font-weight:650; margin:8px 0; letter-spacing:-.03em; }
#marginScenario > p { font-size:13px; line-height:1.8; }
.scenario-card > small { font-size:11px; color:var(--muted); line-height:1.7; }
.beta-advanced { margin-top:20px; background:transparent; border:0; padding:0; }
.beta-advanced > summary { font-size:12px; color:#254e80; padding:8px 0; }
.beta-advanced[open] > summary { margin-bottom:16px; }
.analysis-scope,.recommended-history,.future-card,.funnel-builder,.funnel-wizard-panel,.funnel-step-row,.financial-details-heading,.metric-card.featured,.metric-card.featured[data-result="negative"],.plain-explanation,.funnel .funnel-step { background:#fff; }
.metric-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.metric-card { min-height:128px; border-color:var(--line); }
.metric-card.featured,.metric-card.featured[data-result="negative"] { border-color:var(--line); }
.metric-card.featured strong { color:#17674e; }.metric-card.featured[data-result="negative"] strong { color:var(--danger); }
.metric-card strong { font-family:Inter,system-ui,sans-serif; font-size:27px; font-weight:650; }
.metric-card small { font-size:11px; line-height:1.5; }
.info-button { display:inline-grid; place-items:center; width:20px; height:20px; min-width:20px; padding:0; font-size:11px; border:1px solid #bbc7d6; color:#4d6380; background:transparent; border-radius:50%; vertical-align:middle; }
.integration-grid,.two-columns { gap:20px; }
.integration-card { padding:24px; }
.integration-card p,.integration-note p,.credential-path p,.platform-purpose p,.integration-steps li,.connected-account,.onboarding-strip p { font-size:12px; line-height:1.7; }
.status-chip.positive { color:#17674e; background:#edf5f0; }
.recommended-history,.credential-path,.platform-purpose,.hotmart-difference,.webhook-box,.fee-policy,.scope-note,.cost-rule-note { background:#f5f7fa; border-color:var(--line); }
.recommended-badge { background:#e7edf5; color:#244873; border-radius:4px; font-size:9px; }
.onboarding-strip { background:#fff; border:1px solid var(--line); border-radius:8px; margin-top:20px; grid-template-columns:1fr; }
.onboarding-steps button { background:#f5f7fa; border-radius:5px; }
.onboarding-steps b.done { background:#e0efe8; color:#17674e; }
.tab-guide { border-radius:6px; background:#edf1f6; border-color:var(--line); box-shadow:none; }
.tab-guide p,.tab-guide small { font-size:11px; line-height:1.6; }
.funnel > div,.funnel-progress button,.template-card { background:#f0f3f7; }
.funnel-step-row { border-radius:6px; }
.saved-funnel p,.dictionary-card p { font-size:12px; line-height:1.7; }
.dictionary-card { background:#fff; border-radius:6px; border-color:var(--line); }
.funnel-template-grid { gap:16px; }
.plan-options .recommended,.plan-banner { background:#edf2f8; border-color:#b5c7dc; }
.budget-value { color:var(--text); }
.calculation { font-size:13px; }
.calculation .total { color:#17674e; }
.bar.revenue { background:#52799e; }.bar.spend { background:#c0ccda; }
.chart-legend { display:flex; gap:20px; font-size:11px; color:var(--muted); }
.chart-legend span::before { content:''; display:inline-block; width:8px; height:8px; margin-right:6px; background:#52799e; }
.chart-legend span:last-child::before { background:#c0ccda; }
#dailyChart .day-column { min-width:65px; }
.day-column b { font-size:10px; }
.data-warning { background:#faf5e9; border-color:#e4d3b1; color:#74501e; }
.feedback-launcher { background:#fff; color:#254e80; border:1px solid #c6d2e1; box-shadow:0 3px 12px #192b4312; border-radius:6px; font-size:11px; bottom:16px; right:20px; }
dialog { background:#fff; color:var(--text); border:1px solid var(--line); border-radius:10px; box-shadow:0 20px 70px #14243b30; }
dialog::backdrop { background:#19273866; backdrop-filter:blur(2px); }
.dialog-block,.auth-tabs { background:#f0f3f7; }
.dialog-block strong { line-height:1.8; font-size:13px; }
.toast { background:#243f63; color:white; border-radius:6px; }
th { background:#edf1f6; color:#46576b; font-size:11px; position:sticky; top:0; }
td { font-size:12px; }.table-info { color:#46576b; font-size:11px; }
.table-scroll { scrollbar-color:#bac7d7 #eef1f5; }
.auth-notice { background:#fff8e9; color:#684915; }.auth-notice strong { color:#684915; }
.auth-shell { max-width:1050px; }.auth-story h1 { font-size:40px; letter-spacing:-.04em; }.auth-story { background:transparent; }
.auth-card { background:white; border:1px solid var(--line); border-radius:10px; box-shadow:var(--shadow); }
.auth-tabs button.active { background:white; color:#254e80; }.auth-text-button { color:#254e80; }
@media (min-width:1800px) { .workspace-app .shell { margin-right:auto; margin-left:250px; } }
@media (max-width:1200px) {
  .workspace-app .shell { padding:26px 24px 60px; margin-left:195px; }
  .workspace-app .tabs { width:195px; }
  .workspace-app .topbar { padding:14px 22px; }
  .top-actions { gap:6px; }.top-actions .workspace-switcher > span { display:none; }
  .hero { align-items:start; flex-direction:column; gap:16px; }
  .period-box { width:100%; max-width:none; }
  .recommendations { gap:14px; }.recommendation { padding-right:14px; }
  .money-flow article { padding-inline:12px; }.money-flow article > strong { font-size:29px; }
}
@media (max-width:900px) {
  .workspace-app .topbar { position:relative; flex-wrap:wrap; min-height:76px; gap:16px; }
  .top-actions { flex-wrap:wrap; width:100%; gap:8px; }
  .top-actions .workspace-switcher { flex:1; }.workspace-switcher select { width:100%; max-width:210px; }
  .workspace-app .tabs { position:sticky; top:0; width:auto; height:auto; bottom:auto; flex-direction:row; padding:8px 16px; border-right:0; border-bottom:1px solid var(--line); overflow-x:auto; overflow-y:hidden; }
  .workspace-app .tabs::before { display:none; }.tab { white-space:nowrap; min-height:40px; flex-shrink:0; }
  .tab.active { box-shadow:inset 0 -2px #254e80; }
  .workspace-app .shell { margin:0; padding:24px 20px 70px; }
  .recommendations { grid-template-columns:1fr; gap:18px; }.recommendation { padding:0 0 18px; border-right:0; border-bottom:1px solid var(--line); }.recommendation:last-child { border-bottom:0; padding:0; }
  .metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .section-card { padding:20px; }.section-heading { flex-wrap:wrap; }
  .integration-grid,.two-columns { grid-template-columns:1fr; }
}
@media (max-width:560px) {
  .workspace-app .shell { padding:22px 14px 72px; }.workspace-app .topbar { padding:16px; }
  .hero h1,.page-title h1 { font-size:27px; }
  .brand { font-size:14px; }.live-badge { font-size:10px; }.top-actions .button { font-size:11px; }
  .period-fields { display:grid; grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr); gap:6px; }
  .period-fields input { width:100%; font-size:12px; padding:9px 7px; }
  .period-fields .button { grid-column:1 / -1; }
  .plain-result { padding:19px; }.plain-result-heading { align-items:start; gap:10px; }
  .plain-result h2 { font-size:16px; }.plain-result-badge { white-space:normal; max-width:100px; line-height:1.6; }
  .money-flow { display:grid; grid-template-columns:1fr; margin-top:12px; }
  .money-flow > i { display:none; }.money-flow article,.money-flow article:first-child { padding:15px 0; min-height:0; border:0; border-bottom:1px solid var(--line); }
  .money-flow .money-result { border:0; padding-bottom:0; }.money-flow article > strong { font-size:33px; margin:6px 0; }
  .simple-order-math { gap:10px; grid-template-columns:1fr; }.simple-order-math > span { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:6px; }.simple-order-math strong { margin:0; font-size:16px; }
  .simple-order-math .info-button { margin-right:auto; }
  .data-condition summary span { display:block; margin-left:0; }
  .analysis-answer { padding:18px; }.analysis-answer h3 { font-size:18px; }.analysis-answer > p { font-size:13px; }
  .analysis-evidence > div,.change-bridge > div { font-size:12px; gap:12px; }
  .question-options { display:grid; grid-template-columns:1fr; }.question-options button { text-align:left; }
  .scenario-values { grid-template-columns:1fr; gap:20px; }.scenario-form label { width:100%; }
  .metric-grid { grid-template-columns:1fr; }.number-audit { grid-template-columns:1fr 1fr; }
  .financial-details-heading { flex-direction:column; align-items:start; }.financial-details-heading small { margin-left:0; }
  .chart { height:240px; }.section-heading h2 { font-size:16px; }.chart-legend { gap:12px; }
  .feedback-launcher { right:14px; bottom:12px; }
  .auth-story h1 { font-size:30px; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
/* Explicit semantic states override the legacy component color rules. */
.plain-result[data-result="positive"] { border-color:var(--line); }
.plain-result[data-result="positive"] .money-result strong { color:#17674e; }
.plain-result[data-result="positive"] .plain-result-badge { color:#17674e; background:#edf5f0; border-color:#d4e7dd; }
.plain-result[data-result="negative"] .plain-result-badge { color:#96313d; background:#fbf0f2; border-color:#efd8dd; }
.plain-result[data-result="attention"] .plain-result-badge { color:#785417; background:#faf5e9; border-color:#e9dcbd; }
.workspace-switcher select { background:#f1f4f8; color:#263c59; border-color:#cdd6e2; font-weight:550; }
@media (max-width:560px) {
 .period-fields { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 .period-fields span { display:none; }
}
.decision-note-form { display:grid; grid-template-columns:180px 1fr; gap:16px; }
.decision-note-form label { display:grid; gap:8px; color:var(--muted); font-size:12px; }
.decision-note-form .wide { grid-column:1 / -1; }.decision-note-form textarea { width:100%; resize:vertical; padding:12px; line-height:1.7; }
.decision-note-form > button { justify-self:start; grid-column:1 / -1; }
.decision-notes { margin-top:22px; }
.decision-notes article { display:flex; justify-content:space-between; align-items:start; gap:18px; padding:18px 0; border-top:1px solid var(--line); }
.decision-notes time { color:var(--muted); font-size:11px; }.decision-notes h3 { font-size:14px; font-weight:600; margin:8px 0; }
.decision-notes p { white-space:pre-wrap; overflow-wrap:anywhere; font-size:12px; color:var(--muted); line-height:1.7; margin-bottom:0; }
.product-id { display:block; font-size:10px; color:var(--muted); margin-top:5px; }
@media(max-width:560px){.decision-note-form { grid-template-columns:1fr; }}
.auth-page { background:#f4f5f7; color:var(--text); }
.auth-story > p { color:var(--muted); font-size:16px; }
.auth-story li { color:var(--muted); font-size:13px; }.auth-story li::before { color:#254e80; }
.auth-card label { color:var(--muted); font-size:12px; font-weight:550; }
.auth-card input { background:white; color:var(--text); border-color:#c6d0dd; border-radius:6px; }
.auth-card .button { font-size:13px; }.auth-message { color:var(--danger); }
.plan-dialog,.feedback-dialog { background:white; color:var(--text); border-color:var(--line); border-radius:10px; }
.feedback-dialog > p,.feedback-dialog label { color:var(--muted); }
.feedback-dialog select,.feedback-dialog textarea,.admin-actions select,#adminCustomers select,.feedback-admin-item select,.account-settings-row select { background:#fff; color:var(--text); border-color:#c7d1de; border-radius:6px; }
.workspace-item,.workspace-item.active,.decision-alert,.feedback-admin-item { background:#fff; border-color:var(--line); border-radius:6px; }
.workspace-item.active { border-left:3px solid #52799e; }
.workspace-item small,.usage-meter div,.decision-alert p,.decision-alert small,.feedback-admin-item p,.feedback-admin-item small,#adminCustomers small,.account-settings-row label { color:var(--muted); }
.plan-card > strong { color:#254e80; font-family:Inter,system-ui,sans-serif; font-weight:600; }
.usage-meter progress { accent-color:#52799e; }
.admin-summary article { background:#f5f7fa; border-color:var(--line); border-radius:6px; }
.access-pill,.access-pill.active { background:#edf5f0; color:#17674e; }.access-pill.blocked { background:#fbf0f2; color:#96313d; }
.decision-alert i { background:#edf1f6; color:#254e80; }.decision-alert.warning { border-color:#dfd4be; }.decision-alert.critical { border-color:#e6c7cd; }
.consent-check a,.legal-card a { color:#254e80; }
@media(max-width:800px){.feedback-launcher::before { content:'?'; font-size:18px; font-weight:600; }}
.direct-connect-box { background:#f1f5fa; border-color:#c7d5e6; border-radius:6px; }
.direct-connect-box p,.direct-connect-box small { color:var(--muted); font-size:12px; line-height:1.7; }
.plan-options article { background:#f5f7fa; border-color:var(--line); border-radius:6px; }
.plan-options article.recommended { background:#edf2f8; border-color:#b5c7dc; }
.meta-oauth-account { border-color:var(--line); border-radius:6px; }.meta-oauth-account small { color:var(--muted); }
.monthly-goal .section-heading { align-items:start; }
.goal-month-label { display:grid; gap:6px; color:var(--muted); font-size:11px; }
.goal-month-label input { width:180px; }
.goal-head { display:flex; justify-content:space-between; align-items:center; gap:18px; margin-top:18px; }
.goal-head > div > span { color:var(--muted); font-size:12px; }
.goal-head strong { display:block; font-size:27px; font-weight:650; letter-spacing:-.03em; margin-top:8px; }
.goal-head strong small { font-size:14px; font-weight:450; color:var(--muted); letter-spacing:0; }
.goal-badge { color:var(--muted); background:var(--surface-2); border:1px solid var(--line); border-radius:5px; font-size:11px; padding:8px 10px; }
.goal-badge[data-reached="true"] { color:#17674e; background:#edf5f0; border-color:#bddbcd; }
.goal-track { height:10px; border-radius:3px; background:var(--surface-2); overflow:hidden; margin-top:20px; border:1px solid var(--line); }
.goal-track > span { display:block; height:100%; background:var(--teal); }
.goal-caption { display:flex; justify-content:space-between; gap:16px; margin-top:10px; font-size:12px; color:var(--muted); }
.goal-milestones { list-style:none; display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin:18px 0 0; padding:0; }
.goal-milestones li { border-top:2px solid var(--line); padding-top:8px; font-size:11px; color:var(--muted); }
.goal-milestones li.reached { border-color:var(--teal); color:var(--teal); font-weight:600; }
.goal-empty { padding:10px 0; }.goal-empty strong { font-size:15px; }.goal-empty p { font-size:12px; color:var(--muted); margin:8px 0; line-height:1.7; }
#goalEditor { margin-top:20px; border-top:1px solid var(--line); padding-top:14px; }
#goalEditor > summary { color:var(--teal); font-size:12px; font-weight:550; cursor:pointer; }
.goal-form { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(160px,1fr); gap:16px; margin-top:16px; }
.goal-form label { display:grid; gap:8px; font-size:12px; color:var(--muted); }.goal-form input,.goal-form select { min-width:0; width:100%; }
.goal-actions { display:flex; gap:12px; flex-wrap:wrap; grid-column:1 / -1; }
@media(max-width:560px){.goal-head{align-items:start;flex-direction:column;}.goal-head strong{font-size:24px;}.goal-caption{flex-direction:column;gap:6px;}.goal-form{grid-template-columns:1fr;}.goal-month-label{width:100%;}.goal-month-label input{width:100%;}}
.goal-count-details { margin-top:16px; font-size:12px; color:var(--muted); }
.goal-count-details summary { color:var(--teal); cursor:pointer; font-weight:550; }
.funnel-list { grid-template-columns:minmax(0,1fr); }
.saved-funnel,.saved-funnel-head > div,.visual-journey { min-width:0; max-width:100%; }
@media(max-width:560px){.saved-funnel-head{flex-wrap:wrap;}.saved-funnel-head .item-actions{flex-wrap:wrap;max-width:100%;}.saved-funnel h2{overflow-wrap:anywhere;}}

/* Trial is global; the monthly goal remains a separate panel. */
.sales-trial-notice { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:20px; }
.sales-trial-notice[hidden] { display:none; }
.sales-trial-notice p { margin:8px 0; }
.sales-trial-notice small { display:block; line-height:1.6; }
.sales-trial-notice button { flex-shrink:0; }
@media(max-width:700px) { .sales-trial-notice { flex-direction:column; align-items:stretch; } }

.home-campaign-filter { margin-bottom:20px; }
.home-campaign-filter .scope-toolbar label { min-width:0; }
.home-campaign-filter select { width:100%; min-width:0; text-overflow:ellipsis; }

/* Readable light and dark themes: never inherit pale text from legacy tables. */
td { color:var(--text); font-size:14px; line-height:1.6; }
th { color:var(--text); font-size:13px; line-height:1.5; }
.table-info { font-size:13px; }
.product-id { font-size:12px; line-height:1.5; }
#productEvidence td:first-child { white-space:normal; min-width:240px; max-width:520px; overflow-wrap:anywhere; }
.section-heading p,.analysis-footnote,#marginHelp,.scope-note,.data-condition,
.simple-decision,.tab-guide p,.tab-guide small,.decision-notes p,.integration-card p,
.integration-note p,.credential-path p,.platform-purpose p,.integration-steps li,
.connected-account,.onboarding-strip p,.saved-funnel p,.dictionary-card p,
.scenario-values span,.scenario-values small,.goal-count-details { font-size:14px; line-height:1.7; }
.section-heading h2 { font-size:18px; }
.tab,.button,.text-button { font-size:13px; }
.scope-toolbar label,.decision-note-form label,.scenario-form label,.goal-form label,
.auth-card label,.goal-month-label,.metric-card small,.chart-legend,.scope-note strong,
#syncStatus,.change-bridge small,.decision-notes time { font-size:13px; }
.workspace-switcher > span,.workspace-app .tabs::before { color:var(--muted); }
