/* =====================================
   GLOBAL PRINT FOUNDATION
===================================== */

@media print {
  @page {
    margin: 0.5in;
    size: auto;
  }

  html,
  body,
  body.dark-mode {
    width: auto !important;
    min-width: 0 !important;
    min-height: auto !important;
    overflow: visible !important;
    background: #ffffff !important;
    color: #111111 !important;
  }

  *,
  *::before,
  *::after {
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
    filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    animation: none !important;
    transition: none !important;
    -webkit-print-color-adjust: economy !important;
    print-color-adjust: economy !important;
  }

  /* =====================================
     HARD RESET DECORATIVE PSEUDO ELEMENTS
  ===================================== */

  body::before,
  body::after,
  main::before,
  main::after,
  section::before,
  section::after,
  article::before,
  article::after,
  header::before,
  header::after,
  footer::before,
  footer::after,
  .card::before,
  .card::after,
  [class*="hero"]::before,
  [class*="hero"]::after,
  [class*="card"]::before,
  [class*="card"]::after,
  [class*="tile"]::before,
  [class*="tile"]::after,
  [class*="panel"]::before,
  [class*="panel"]::after,
  [class*="section"]::before,
  [class*="section"]::after,
  [class*="wallet"]::before,
  [class*="wallet"]::after,
  [class*="seo"]::before,
  [class*="seo"]::after,
  [class*="engine"]::before,
  [class*="engine"]::after,
  [class*="trust"]::before,
  [class*="trust"]::after,
  [class*="analysis"]::before,
  [class*="analysis"]::after,
  [class*="insight"]::before,
  [class*="insight"]::after,
  [class*="performance"]::before,
  [class*="performance"]::after,
  [class*="breakdown"]::before,
  [class*="breakdown"]::after,
  [class*="recommendation"]::before,
  [class*="recommendation"]::after,
  [class*="perk"]::before,
  [class*="perk"]::after,
  [class*="interest"]::before,
  [class*="interest"]::after,
  [class*="command"]::before,
  [class*="command"]::after {
    display: none !important;
    content: none !important;
    background: none !important;
    background-image: none !important;
  }

  /* =====================================
     REMOVE ALL DECORATIVE BACKGROUNDS
  ===================================== */

  [class*="hero"],
  [class*="card"],
  [class*="tile"],
  [class*="panel"],
  [class*="section"],
  [class*="wallet"],
  [class*="verdict"],
  [class*="seo"],
  [class*="engine"],
  [class*="review"],
  [class*="summary"],
  [class*="insight"],
  [class*="performance"],
  [class*="breakdown"],
  [class*="analysis"],
  [class*="recommendation"],
  [class*="perk"],
  [class*="interest"],
  [class*="command"],
  [class*="trust"] {
    background: #ffffff !important;
    background-image: none !important;
  }

  /* =====================================
     HIDE NAV / FLOATING / DECORATIVE UI
  ===================================== */

  #siteNav,
  nav,
  .site-nav,
  .site-footer,
  .footer-space,
  .site-assistant,
  .site-assistant *,
  .site-assistant-toggle,
  .site-assistant-panel,
  .cc-section-nav-wrapper,
  .cc-section-nav,
  .cc-section-nav-toggle,
  .cc-focus-toggle,
  .cc-focus-toggle-track,
  .cc-collapsible-icon,
  .cc-denarius-primary,
  .cc-mobile-results-preview,
  .cc-mobile-preview-card,
  .cc-mobile-performance-insights,
  .mobile-performance-toggles,
  .mobile-tool-back-button,
  .cc-mobile-tool-cta,
  [data-mobile-open-tool],
  .cc-hero-right,
  .cc-hero-three-wrap,
  #ccHeroSphere,
  .cc-hero-orbit-labels,
  .cc-orbit-node,
  .cc-orbit-link,
  .cc-three-label,
  .home-bg-system,
  .home-bg-grid,
  .home-bg-orb,
  .home-bg-orb-one,
  .home-bg-orb-two,
  .statement-upload-dropzone,
  .statement-upload-file-remove,
  .wallet-card-remove,
  canvas,
  video {
    display: none !important;
  }

  /* =====================================
     GLOBAL PAGE RESET
  ===================================== */

  main,
  .page,
  .site-main,
  .container,
  .section,
  section,
  article,
  header,
  footer {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    background: #ffffff !important;
    color: #111111 !important;
  }

  /* =====================================
     GLOBAL PRINT SURFACES
  ===================================== */

  .card,
  .home-hero,
  .home-section,
  .home-command-center,
  .engine-tile,
  .engine-tile-wide,
  .trust-card,
  .cc-hero,
  .cc-hero-inner,
  .cc-seo-duo,
  .cc-seo-inner,
  .cc-seo-duo-text,
  .cc-seo-duo-visual,
  .cc-collapsible-section,
  .cc-collapsible-header,
  .cc-collapsible-content,
  .wallet-card,
  .wallet-review-column,
  .wallet-review-summary,
  .wallet-review-item,
  .wallet-gap-item,
  .wallet-verdict-card,
  .wallet-verdict-score,
  .wallet-verdict-summary-card,
  .wallet-verdict-insight-card,
  .wallet-verdict-action-card,
  .perk-card,
  .recommendation-card {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;

    background: #ffffff !important;
    background-image: none !important;
    color: #111111 !important;
    border-color: rgba(0, 0, 0, 0.14) !important;
    box-shadow: none !important;
  }

  .card,
  .engine-tile,
  .engine-tile-wide,
  .trust-card,
  .cc-seo-duo-text,
  .cc-seo-duo-visual,
  .cc-collapsible-header,
  .wallet-card,
  .wallet-review-column,
  .wallet-verdict-card,
  .perk-card,
  .recommendation-card {
    border: 1px solid rgba(0, 0, 0, 0.14) !important;
    border-radius: 12px !important;
    padding: 14px !important;
  }

  /* =====================================
     TEXT RESET
  ===================================== */

  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  span,
  li,
  strong,
  small,
  label,
  div,
  button,
  input,
  select,
  textarea {
    color: #111111 !important;
  }

  p,
  li,
  small {
    line-height: 1.45 !important;
  }

  a {
    color: #111111 !important;
    text-decoration: none !important;
  }

  /* =====================================
     CREDIT CARD COLLAPSIBLES — FORCE OPEN
  ===================================== */

  #cc-wallet,
  #cc-spending,
  #cc-perks,
  #cc-performance,
  #cc-categories,
  #cc-interest,
  .cc-collapsible-section,
  .cc-collapsible-section.is-collapsed {
    display: block !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: visible !important;
    max-height: none !important;
    height: auto !important;
    transform: none !important;
  }

  #cc-wallet .cc-collapsible-content,
  #cc-spending .cc-collapsible-content,
  #cc-perks .cc-collapsible-content,
  #cc-performance .cc-collapsible-content,
  #cc-categories .cc-collapsible-content,
  #cc-interest .cc-collapsible-content,
  .cc-collapsible-content,
  .cc-collapsible-content > * {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: visible !important;
    max-height: none !important;
    height: auto !important;
    transform: none !important;
  }

  #cc-wallet.is-collapsed:not(.is-mobile-tool-active) .cc-collapsible-content,
  #cc-spending.is-collapsed:not(.is-mobile-tool-active) .cc-collapsible-content,
  #cc-perks.is-collapsed:not(.is-mobile-tool-active) .cc-collapsible-content,
  #cc-performance.is-collapsed:not(.is-mobile-tool-active) .cc-collapsible-content,
  #cc-categories.is-collapsed:not(.is-mobile-tool-active) .cc-collapsible-content,
  #cc-interest.is-collapsed:not(.is-mobile-tool-active) .cc-collapsible-content {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
  }

  /* =====================================
     DETAILS / DISCLOSURE CONTENT
  ===================================== */

  details,
  details > * {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .wallet-economics-details:not([open]) .wallet-economics-panel,
  .wallet-economics-details:not([open]) .card-gotchas,
  .point-value-engine-details:not([open]) .point-value-engine-guide {
    display: block !important;
  }

  /* =====================================
     LAYOUT SIMPLIFICATION
  ===================================== */

  .wallet-review-grid,
  .principles-layout,
  .cc-seo-duo,
  .home-hero-grid,
  .trust-grid,
  .tools-grid,
  .wallet-verdict-layout,
  .wallet-verdict-scoreboard {
    display: block !important;
    grid-template-columns: none !important;
  }

  .wallet-review-column,
  .cc-seo-duo-text,
  .cc-seo-duo-visual,
  .trust-card,
  .engine-tile,
  .engine-tile-wide,
  .wallet-verdict-score {
    margin-bottom: 14px !important;
  }

  /* =====================================
     FORM VALUES
  ===================================== */

  input,
  select,
  textarea {
    background: #ffffff !important;
    background-image: none !important;
    color: #111111 !important;
    border: 1px solid rgba(0, 0, 0, 0.25) !important;
    box-shadow: none !important;
  }

  /* =====================================
     PAGE BREAK CONTROL
  ===================================== */

  .card,
  .wallet-card,
  .wallet-review-column,
  .wallet-verdict-card,
  .perk-card,
  .wallet-gap-item,
  .wallet-review-item,
  .cc-seo-duo,
  .engine-tile,
  .engine-tile-wide,
  .trust-card,
  .recommendation-card {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  h1,
  h2,
  h3,
  h4 {
    break-after: avoid !important;
    page-break-after: avoid !important;
  }
}