/* Dashboard — Facebook-style overrides */
.dash-header { margin-bottom: 1rem; }
.dash-header h1 { font-size: 1.25rem; }
.user-email { color: var(--text-secondary); font-size: 0.9375rem; }
.sidebar-brand span { color: var(--text); }
.ref-input { width: 100%; max-width: 320px; padding: 0.5rem 0.75rem; background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); margin-right: 0.5rem; font-size: 0.9375rem; }
.btn-sm { padding: 0.5rem 1rem; background: var(--fb-blue); color: #fff; border-radius: var(--radius); font-weight: 600; font-size: 0.875rem; }
.btn-sm:hover { background: var(--fb-blue-hover); }
.muted { color: var(--text-secondary); font-size: 0.9375rem; margin-bottom: 1rem; }
.plan-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 1rem; }
.plan-card { background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 1rem; }
.plan-card h3 { font-size: 1rem; margin-bottom: 0.5rem; }
.plan-card .price { font-size: 1.25rem; font-weight: 700; color: var(--fb-blue); }
.plan-card button { margin-top: 0.75rem; width: 100%; padding: 0.5rem; border-radius: var(--radius); background: var(--fb-blue); color: #fff; font-weight: 600; }
.plan-card button:hover { background: var(--fb-blue-hover); }
.plan-card button:disabled { opacity: 0.5; cursor: not-allowed; }
.form-group .checkbox-label { display: flex; align-items: flex-start; gap: 0.5rem; font-weight: normal; cursor: pointer; }
.form-group .checkbox-label input[type="checkbox"] { margin-top: 0.25rem; flex-shrink: 0; }
.form-group .checkbox-label span { font-size: 0.9rem; color: var(--text); }
.form-group .checkbox-label a { color: var(--fb-blue); }
/* Connections: consent block — checkbox flush left, text next to it */
#shopifyConnectBox .consent-block,
#amazonConnectBox .consent-block { width: 100%; margin-top: 0.75rem; margin-bottom: 0.5rem; padding-left: 0; margin-left: 0; text-align: left; }
#shopifyConnectBox .consent-block .checkbox-label,
#amazonConnectBox .consent-block .checkbox-label { display: flex; flex-direction: row; justify-content: flex-start; align-items: flex-start; gap: 0.15rem; width: 100%; max-width: 100%; text-align: left; padding-left: 0; margin-left: 0; }
#shopifyConnectBox .consent-block .checkbox-label input[type="checkbox"],
#amazonConnectBox .consent-block .checkbox-label input[type="checkbox"] { margin-left: 0 !important; margin-right: 30 !important; flex-shrink: 5; align-self: flex-start; }
#shopifyConnectBox .consent-block .checkbox-label span,
#amazonConnectBox .consent-block .checkbox-label span { flex: 1 1 auto; min-width: 10em; max-width: 100%; text-align: left; white-space: normal; word-wrap: break-word; overflow-wrap: break-word; }
#shopifyConnectBox .consent-block + .btn-block,
#amazonConnectBox .consent-block + .btn-block { margin-top: 0.5rem; }
.cfo-section-block { margin-bottom: 2rem; padding: 1rem 0; border-bottom: 1px solid var(--border); }
.cfo-section-block:last-child { border-bottom: none; }
.cfo-section-shopify .cfo-section-title { color: #008060; font-size: 1.25rem; margin: 0 0 1rem 0; padding-bottom: 0.5rem; border-bottom: 2px solid #008060; }
.cfo-section-amazon .cfo-section-title { color: #ff9900; font-size: 1.25rem; margin: 0 0 1rem 0; padding-bottom: 0.5rem; border-bottom: 2px solid #ff9900; }
.cfo-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 1rem; }
.cfo-card { background: var(--bg); border: 1px solid var(--border); border-radius: var(--radius); padding: 1rem; }
.cfo-card h3 { font-size: 1rem; margin-bottom: 0.4rem; }
.cfo-card p { font-size: 0.9375rem; color: var(--text-secondary); margin-bottom: 0.75rem; }
.cfo-card.locked { opacity: 0.7; }
.cfo-card .result { margin-top: 0.75rem; padding: 0.75rem; background: var(--surface); border-radius: var(--radius); font-size: 0.875rem; border: 1px solid var(--border); }
.cfo-card .cfo-result .cfo-disclaimer-badge { background: #fef3cd; color: #856404; padding: 0.35rem 0.5rem; border-radius: var(--radius); font-size: 0.75rem; margin-bottom: 0.5rem; border: 1px solid #ffc107; }
.cfo-card .cfo-result .cfo-scope-block { margin-bottom: 0.5rem; font-size: 0.8125rem; }
.cfo-card .cfo-result .cfo-scope-block ul { margin: 0.2rem 0 0 1rem; padding: 0; }
.cfo-card .cfo-result .cfo-scope-block li { margin-bottom: 0.15rem; }
.cfo-card .cfo-result .cfo-scope-not { color: var(--text-secondary); }
.cfo-card .cfo-result .cfo-disclaimer-sub { background: #e7f1ff; color: #004085; border-color: #b3d7ff; }
.cfo-card .cfo-result .cfo-confidence, .cfo-card .cfo-result .cfo-range, .cfo-card .cfo-result .cfo-version { margin-bottom: 0.4rem; font-size: 0.8125rem; }
.cfo-card .cfo-result .cfo-risk { margin: 0.4rem 0; font-size: 0.8125rem; }
.cfo-card .cfo-result .cfo-advisory { margin-top: 0.5rem; padding-top: 0.5rem; border-top: 1px solid var(--border); font-size: 0.75rem; color: var(--text-secondary); }
.cfo-card .cfo-result .cfo-alert { margin: 0.35rem 0; padding: 0.35rem; background: #fff3cd; border-radius: var(--radius); font-size: 0.8125rem; }
.cfo-card .cfo-result .btn-verify { margin-left: 0.5rem; padding: 0.2rem 0.5rem; font-size: 0.75rem; background: var(--fb-blue); color: #fff; border: none; border-radius: var(--radius); cursor: pointer; }
.cfo-card .cfo-result .cfo-raw { margin-top: 0.5rem; font-size: 0.75rem; }
.cfo-card .cfo-result .cfo-raw summary { cursor: pointer; color: var(--fb-blue); }
.cfo-card .cfo-result .cfo-raw pre { margin: 0.35rem 0 0; padding: 0.5rem; background: var(--bg); border-radius: var(--radius); overflow-x: auto; white-space: pre-wrap; font-size: 0.7rem; }
.cfo-card .cfo-result .cfo-error { color: #dc3545; font-size: 0.875rem; }
.cfo-card .cfo-result .cfo-unit-economics-summary { margin-bottom: 0.75rem; font-size: 0.9375rem; }
.cfo-card .cfo-result .cfo-period { margin-bottom: 0.25rem; }
.cfo-card .cfo-result .cfo-total-profit { font-weight: 600; }
.cfo-card .cfo-result .cfo-table { width: 100%; border-collapse: collapse; font-size: 0.75rem; margin-top: 0.35rem; }
.cfo-card .cfo-result .cfo-table th, .cfo-card .cfo-result .cfo-table td { padding: 0.35rem 0.5rem; text-align: left; border: 1px solid var(--border); }
.cfo-card .cfo-result .cfo-table th { background: var(--surface); font-weight: 600; }
.cfo-card .cfo-result .cfo-sku-table { overflow-x: auto; display: block; }
.cfo-card .cfo-result .cfo-sku-table thead, .cfo-card .cfo-result .cfo-sku-table tbody { display: table; width: 100%; }
.cfo-card .cfo-result .cfo-margin-alerts { list-style: none; margin: 0.35rem 0 0; padding: 0; }
.cfo-card .cfo-result .cfo-margin-alerts li { margin-bottom: 0.35rem; padding: 0.35rem 0.5rem; border-radius: var(--radius); font-size: 0.8125rem; }
.cfo-card .cfo-result .cfo-alert-medium { background: #fff3cd; border: 1px solid #ffc107; color: #856404; }
.cfo-card .cfo-result .cfo-alert-high { background: #f8d7da; border: 1px solid #f5c6cb; color: #721c24; }
.cfo-card .cfo-result .cfo-threshold-note { color: var(--text-secondary); font-size: 0.75rem; }
.cfo-card .cfo-result .cfo-cashflow-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-cash-crunch-warning { margin-bottom: 0.5rem; padding: 0.5rem 0.75rem; background: #f8d7da; border: 1px solid #f5c6cb; color: #721c24; border-radius: var(--radius); font-weight: 600; font-size: 0.9375rem; }
.cfo-card .cfo-result .cfo-adbreakeven-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-scope-note { color: var(--text-secondary); font-size: 0.75rem; }
.cfo-card .cfo-result .cfo-adbreakeven-warning { margin-top: 0.35rem; }
.cfo-card .cfo-result .cfo-inventory-risk-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-inventory-warning { margin-top: 0.35rem; }
.cfo-card .cfo-result .cfo-tax-structuring-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-strategy-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-strategy-block .cfo-advisory { margin-top: 0.5rem; }
.cfo-card .cfo-result .cfo-funding-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-profitleak-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-supplier-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-currency-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-us-1099k-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-us-quarterly-tax-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-us-nexus-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-us-sba-block { margin-bottom: 0.75rem; }
.sba-document-template .sba-doc-header { margin-bottom: 0.75rem; }
.sba-document-template .sba-doc-title { font-size: 1.125rem; font-weight: 700; color: #1a237e; margin: 0 0 0.25rem 0; border-bottom: 2px solid #1a237e; padding-bottom: 0.35rem; }
.sba-document-template .sba-doc-date { font-size: 0.875rem; color: var(--text-secondary); }
.sba-document-template .sba-doc-advisory { background: #fff3cd; border: 1px solid #ffc107; padding: 0.5rem 0.75rem; margin-bottom: 0.75rem; font-size: 0.9rem; border-radius: 4px; }
.sba-document-template .cfo-sba-table { margin-top: 0.5rem; }
.cfo-card .cfo-result .cfo-india-gst-block { margin-bottom: 0.75rem; }
.cfo-result .cfo-gst-table { width: 100%; border-collapse: collapse; font-size: 0.875rem; margin-top: 0.5rem; }
.cfo-result .cfo-gst-table th, .cfo-result .cfo-gst-table td { padding: 0.5rem 0.75rem; text-align: left; border: 1px solid var(--border); }
.cfo-result .cfo-gst-table th { background: var(--surface); font-weight: 600; }
.cfo-result .cfo-gst-table tbody tr:hover { background: rgba(0,0,0,0.02); }
.cfo-card .cfo-result .cfo-india-einvoicing-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-einvoicing-table { margin-top: 0.5rem; }
.cfo-card .cfo-result .cfo-einvoicing-table tbody tr:last-child { border-bottom: 2px solid var(--border); }
.cfo-card .cfo-result .cfo-india-tcs-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-india-msme-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-europe-vat-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-europe-oss-block { margin-bottom: 0.75rem; }

/* VAT Reconciliation (Europe) — layout applies in card and full-page module view */
.cfo-europe-vat-layout { max-width: 100%; margin-bottom: 0.75rem; }
.cfo-europe-vat-disclaimer { background: #e8f4fd; color: #0d47a1; padding: 0.6rem 0.85rem; border-radius: 6px; font-size: 0.8125rem; margin-bottom: 1rem; border-left: 4px solid #1976d2; }
.cfo-europe-vat-estimate-card { display: flex; flex-direction: column; gap: 0.25rem; padding: 1rem 1.1rem; margin-bottom: 1rem; background: linear-gradient(135deg, #f5f9ff 0%, #e8f0fe 100%); border: 1px solid #90caf9; border-radius: 8px; }
.cfo-europe-vat-estimate-label { font-size: 0.8125rem; color: #5f6368; text-transform: uppercase; letter-spacing: 0.02em; }
.cfo-europe-vat-estimate-value { font-size: 1.5rem; font-weight: 700; color: #1565c0; }
.cfo-europe-vat-note { font-size: 0.8125rem; color: #5f6368; margin-bottom: 0.6rem; line-height: 1.4; }
.cfo-europe-vat-section { margin-top: 1rem; padding-top: 0.85rem; border-top: 1px solid #dadce0; }
.cfo-europe-vat-section-title { display: block; font-size: 0.8125rem; color: #202124; margin-bottom: 0.4rem; }
.cfo-europe-vat-list { margin: 0; padding-left: 1.25rem; font-size: 0.8125rem; line-height: 1.5; }
.cfo-europe-vat-list li { margin-bottom: 0.35rem; }
.cfo-europe-vat-list-not { color: #5f6368; }

/* OSS One-Stop Shop (Europe) — same format as VAT, applies in card and full-page view */
.cfo-europe-oss-layout { max-width: 100%; margin-bottom: 0.75rem; }
.cfo-europe-oss-disclaimer { background: #e8f4fd; color: #0d47a1; padding: 0.6rem 0.85rem; border-radius: 6px; font-size: 0.8125rem; margin-bottom: 1rem; border-left: 4px solid #1976d2; }
.cfo-europe-oss-summary-card { display: flex; flex-direction: column; gap: 0.25rem; padding: 1rem 1.1rem; margin-bottom: 1rem; background: linear-gradient(135deg, #f5f9ff 0%, #e8f0fe 100%); border: 1px solid #90caf9; border-radius: 8px; }
.cfo-europe-oss-summary-label { font-size: 0.8125rem; color: #5f6368; text-transform: uppercase; letter-spacing: 0.02em; }
.cfo-europe-oss-summary-value { font-size: 0.9375rem; font-weight: 500; color: #1565c0; line-height: 1.4; }
.cfo-europe-oss-note { font-size: 0.8125rem; color: #5f6368; margin-bottom: 0.6rem; line-height: 1.4; }
.cfo-europe-oss-section { margin-top: 1rem; padding-top: 0.85rem; border-top: 1px solid #dadce0; }
.cfo-europe-oss-section-title { display: block; font-size: 0.8125rem; color: #202124; margin-bottom: 0.4rem; }
.cfo-europe-oss-list { margin: 0; padding-left: 1.25rem; font-size: 0.8125rem; line-height: 1.5; }
.cfo-europe-oss-list li { margin-bottom: 0.35rem; }
.cfo-europe-oss-list-not { color: #5f6368; }
.cfo-europe-oss-table { width: 100%; border-collapse: collapse; font-size: 0.8125rem; margin-bottom: 1rem; }
.cfo-europe-oss-table th, .cfo-europe-oss-table td { padding: 0.5rem 0.75rem; text-align: left; border: 1px solid #dadce0; }
.cfo-europe-oss-table th { background: #f8f9fa; font-weight: 600; color: #202124; }
.cfo-europe-oss-table tbody tr:hover { background: rgba(0,0,0,0.02); }

/* Net Terms & Trade Credit — same format as Europe VAT/OSS, table layout, card and full-page view */
.cfo-net-terms-layout { max-width: 100%; margin-bottom: 0.75rem; }
.cfo-net-terms-disclaimer { background: #e8f4fd; color: #0d47a1; padding: 0.6rem 0.85rem; border-radius: 6px; font-size: 0.8125rem; margin-bottom: 1rem; border-left: 4px solid #1976d2; }
.cfo-net-terms-status-card { display: flex; flex-direction: column; gap: 0.25rem; padding: 1rem 1.1rem; margin-bottom: 1rem; background: linear-gradient(135deg, #f5f9ff 0%, #e8f0fe 100%); border: 1px solid #90caf9; border-radius: 8px; }
.cfo-net-terms-status-label { font-size: 0.8125rem; color: #5f6368; text-transform: uppercase; letter-spacing: 0.02em; }
.cfo-net-terms-status-value { font-size: 0.9375rem; font-weight: 600; color: #1565c0; }
.cfo-net-terms-next-steps { font-size: 0.8125rem; color: #5f6368; margin-top: 0.35rem; line-height: 1.4; }
.cfo-net-terms-table { width: 100%; border-collapse: collapse; font-size: 0.8125rem; margin-bottom: 1rem; }
.cfo-net-terms-table th, .cfo-net-terms-table td { padding: 0.5rem 0.75rem; text-align: left; border: 1px solid #dadce0; }
.cfo-net-terms-table th { background: #f8f9fa; font-weight: 600; color: #202124; }
.cfo-net-terms-table tbody tr:hover { background: rgba(0,0,0,0.02); }
.cfo-net-terms-list { margin: 0; padding-left: 1.25rem; line-height: 1.5; }
.cfo-net-terms-list li { margin-bottom: 0.25rem; }
.cfo-net-terms-list-not { color: #5f6368; }
.cfo-net-terms-actions { margin-top: 1rem; padding-top: 0.85rem; border-top: 1px solid #dadce0; }

.cfo-card .cfo-result .cfo-stress-block { margin-bottom: 0.75rem; }
.cfo-card .cfo-result .cfo-stress-warnings { margin: 0.35rem 0 0; padding-left: 1.25rem; }
.cfo-card .cfo-result .cfo-alert-green { color: #155724; font-weight: 600; }
.cfo-card .cfo-result .cfo-alert-yellow { color: #856404; font-weight: 600; }
.cfo-card .cfo-result .cfo-alert-red { color: #721c24; font-weight: 600; }
.cfo-card button { padding: 0.5rem 1rem; background: var(--fb-blue); color: #fff; border-radius: var(--radius); font-weight: 600; }
.cfo-card button:hover { background: var(--fb-blue-hover); }
.cfo-card button:disabled { opacity: 0.5; cursor: not-allowed; }

/* ——— Profit Health Badge (user-powered distribution) ——— */
.badge-section .badge-tagline { color: var(--text-secondary); font-size: 0.9375rem; margin-bottom: 1.25rem; }
.badge-score-area { margin-bottom: 1rem; }
.badge-score-big .score-num { font-size: 3rem; font-weight: 700; color: var(--fb-blue); }
.badge-score-big .score-of { font-size: 1.5rem; color: var(--text-secondary); }
.badge-achievement-area { margin: 1rem 0; }
.badge-top-text { font-size: 1.125rem; font-weight: 600; color: var(--text); margin-bottom: 0.35rem; }
.badge-tier { font-size: 1rem; margin-bottom: 1rem; padding: 0.35rem 0.75rem; display: inline-block; border-radius: var(--radius); font-weight: 600; }
.badge-tier-silver { background: #c0c0c0; color: #333; }
.badge-tier-gold { background: linear-gradient(135deg, #d4af37, #b8860b); color: #fff; }
.badge-tier-elite { background: linear-gradient(135deg, #1a237e, #283593); color: #fff; }
.btn-primary { padding: 0.65rem 1.25rem; background: var(--fb-blue); color: #fff; border: none; border-radius: var(--radius); font-weight: 600; font-size: 1rem; cursor: pointer; }
.btn-primary:hover { background: var(--fb-blue-hover); }
.badge-preview-area { margin-top: 1.5rem; padding-top: 1.5rem; border-top: 1px solid var(--border); }
.badge-preview-label { font-size: 0.9375rem; font-weight: 600; margin-bottom: 0.75rem; }
.badge-canvas-wrap { max-width: 100%; overflow: auto; border: 1px solid var(--border); border-radius: var(--radius); background: #1a237e; margin-bottom: 0.75rem; }
.badge-canvas-wrap canvas { display: block; max-width: 100%; height: auto; }
.badge-legal-footer { font-size: 0.75rem; color: var(--text-secondary); margin-bottom: 1rem; }
.badge-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem 1rem; margin-bottom: 1rem; }
.badge-actions .share-label { font-size: 0.875rem; color: var(--text-secondary); }
.btn-share { padding: 0.4rem 0.75rem; background: var(--fb-blue); color: #fff; border-radius: var(--radius); font-size: 0.875rem; text-decoration: none; }
.btn-share:hover { background: var(--fb-blue-hover); color: #fff; }
.share-instagram-hint { font-size: 0.8125rem; color: var(--text-secondary); }
.share-caption-wrap label { display: block; font-size: 0.875rem; margin-bottom: 0.35rem; }
.share-caption-wrap textarea { width: 100%; max-width: 480px; padding: 0.5rem; border: 1px solid var(--border); border-radius: var(--radius); font-size: 0.875rem; margin-bottom: 0.5rem; resize: vertical; }
.badge-cta-footer { font-size: 0.875rem; color: var(--text-secondary); margin-top: 1rem; }
.badge-cta-footer span { color: var(--fb-blue); font-weight: 600; }
.badge-incentives.card-sub { margin-top: 1rem; padding: 0.75rem 1rem; background: var(--bg); border-radius: var(--radius); border: 1px solid var(--border); }
.badge-incentives-title { font-size: 0.9375rem; font-weight: 600; margin-bottom: 0.5rem; }
.badge-incentives ul { margin: 0; padding-left: 1.25rem; font-size: 0.9375rem; color: var(--text-secondary); line-height: 1.6; }
.badge-incentives li { margin-bottom: 0.25rem; }

/* CFO module page: chart + export toolbar */
#cfoModulePageContent .cfo-module-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: center;
  margin-bottom: 0.75rem;
  padding: 0.65rem 0.75rem;
  background: linear-gradient(135deg, rgba(37, 99, 235, 0.06), rgba(16, 185, 129, 0.06));
  border: 1px solid var(--border);
  border-radius: 12px;
}
#cfoModulePageContent .cfo-toolbar-btn {
  padding: 0.45rem 0.85rem;
  border-radius: 10px;
  font-weight: 600;
  font-size: 0.8125rem;
  border: 1px solid var(--border);
  background: var(--fb-blue);
  color: #fff;
  cursor: pointer;
}
#cfoModulePageContent .cfo-toolbar-btn:hover { background: var(--fb-blue-hover); }
#cfoModulePageContent .cfo-toolbar-btn.cfo-toolbar-btn-secondary {
  background: var(--surface);
  color: var(--text);
  border-color: var(--border);
}
#cfoModulePageContent .cfo-toolbar-btn.cfo-toolbar-btn-accent {
  background: linear-gradient(135deg, #7c3aed, #2563eb);
  border-color: transparent;
}
#cfoModulePageContent .cfo-chart-panel {
  margin-bottom: 1rem;
  padding: 0.75rem 1rem;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 14px;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
}
#cfoModulePageContent .cfo-chart-heading {
  margin: 0 0 0.5rem 0;
  font-size: 0.9375rem;
  font-weight: 700;
  color: var(--text);
  letter-spacing: -0.02em;
}
#cfoModulePageContent .cfo-chart-canvas-wrap {
  position: relative;
  width: 100%;
  max-width: 920px;
  min-height: 220px;
  margin: 0 auto;
}
/* Do not set height:auto on Chart.js canvases — it overrides Chart's inline dimensions and leaves charts blank. */
#cfoModulePageContent .cfo-chart-canvas-wrap canvas {
  max-width: 100%;
  display: block;
}
#cfoModulePageContent .cfo-chart-hint {
  margin: 0.5rem 0 0 0;
  font-size: 0.78rem;
  line-height: 1.45;
}
@media print {
  #cfoModulePageContent .cfo-module-toolbar { break-inside: avoid; page-break-after: avoid; }
  #cfoModulePageContent .cfo-chart-panel { break-inside: avoid; }
}
