/* Compare pages — CRITICAL contrast fix 2026-09-23
   Root cause: html[data-theme=dark] flipped --cmp-ink to near-white while
   sections stay .shell-light (light bg). !important + var() painted white on mist.
   Fix: hard hex on .shell-light always (like features.css); never theme-flip light shells. */

/* Light shells: always dark ink — ignore global theme */
body.page-compare .shell-light,
body.page-compare .shell-light .wrap,
body.page-compare .shell-light p,
body.page-compare .shell-light li,
body.page-compare .shell-light td,
body.page-compare .shell-light th,
body.page-compare .shell-light h1,
body.page-compare .shell-light h2,
body.page-compare .shell-light h3,
body.page-compare .shell-light strong,
body.page-compare .shell-light .display,
body.page-compare .shell-light .section-head,
body.page-compare .shell-light .section-head h2,
body.page-compare .shell-light .section-head p,
body.page-compare .shell-light .lead,
body.page-compare .shell-light .cmp-list,
body.page-compare .shell-light .cmp-list li,
body.page-compare .shell-light .cmp-sources,
body.page-compare .shell-light .cmp-sources li,
body.page-compare .shell-light .cmp-checked,
body.page-compare .shell-light .cmp-table,
body.page-compare .shell-light .cmp-table th,
body.page-compare .shell-light .cmp-table td,
body.page-compare .shell-light .cmp-hub-card,
body.page-compare .shell-light .cmp-hub-card h2,
body.page-compare .shell-light .cmp-hub-card h2 a,
body.page-compare .shell-light .cmp-hub-card p{
  color:#0F172A !important;
}

body.page-compare .shell-light .lead,
body.page-compare .shell-light .section-head p,
body.page-compare .shell-light .cmp-checked,
body.page-compare .shell-light .cmp-hub-card p,
body.page-compare .shell-light .muted,
body.page-compare .shell-light .cta-band p{
  color:#334155 !important;
}

body.page-compare .shell-light .cmp-sources a,
body.page-compare .shell-light .cmp-hub-more a,
body.page-compare .shell-light a:not(.btn):not(.brand){
  color:#0B3D91 !important;
  text-decoration:underline !important;
  text-underline-offset:3px;
  font-weight:600;
}
body.page-compare .shell-light .cmp-sources a:hover,
body.page-compare .shell-light .cmp-hub-more a:hover{
  color:#0F172A !important;
}

body.page-compare .page-hero .eyebrow--lime,
body.page-compare .eyebrow--lime{
  display:inline-block;margin:0 0 12px;padding:6px 12px;border-radius:999px;
  background:#C8FF3D;color:#0F172A !important;font-weight:700;font-size:.85rem;
}
body.page-compare .shell-light .lead{max-width:46rem;}
body.page-compare .section-head{margin:0 0 18px;}
body.page-compare .section-head h2{margin:0 0 6px;}
body.page-compare .section-head p{margin:8px 0 0;}

body.page-compare .cmp-table-wrap{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  border:1px solid #E2E8F0;border-radius:var(--radius-card,14px);
  background:#fff;
}
body.page-compare .cmp-table{
  width:100%;border-collapse:collapse;min-width:520px;font-size:.95rem;
}
body.page-compare .shell-light .cmp-table th,
body.page-compare .shell-light .cmp-table td{
  padding:12px 14px;text-align:left;vertical-align:top;
  border-bottom:1px solid #E2E8F0;color:#0F172A !important;
}
body.page-compare .shell-light .cmp-table thead th{
  background:#F1F5F9;font-weight:700;font-size:.82rem;letter-spacing:.02em;
  text-transform:uppercase;color:#334155 !important;white-space:nowrap;
}
body.page-compare .cmp-table tbody th{font-weight:600;max-width:22rem;}
body.page-compare .cmp-table tbody tr:last-child th,
body.page-compare .cmp-table tbody tr:last-child td{border-bottom:0;}
body.page-compare .cmp-table tbody tr:hover td,
body.page-compare .cmp-table tbody tr:hover th{background:#FAFDF4;}

body.page-compare .cmp-badge{
  display:inline-block;padding:4px 10px;border-radius:999px;
  font-size:.82rem;font-weight:650;line-height:1.35;max-width:16rem;
}
body.page-compare .cmp-yes{background:#C8FF3D;color:#0F172A !important;}
body.page-compare .cmp-no{background:#FEE2E2;color:#7F1D1D !important;}
body.page-compare .cmp-partial{background:#FEF3C7;color:#78350F !important;}
body.page-compare .cmp-gated{background:#E0E7FF;color:#312E81 !important;}
body.page-compare .cmp-unknown{background:#F1F5F9;color:#334155 !important;}
body.page-compare .cmp-neutral{background:#F1F5F9;color:#0F172A !important;}

body.page-compare .cmp-list,
body.page-compare .cmp-sources{
  margin:0;padding:0 0 0 1.15rem;max-width:48rem;
}
body.page-compare .cmp-list li,
body.page-compare .cmp-sources li{
  margin:0 0 10px;line-height:1.5;
}
body.page-compare .cmp-sources a{word-break:break-all;}
body.page-compare .cmp-checked{
  margin:0 0 14px;font-size:.92rem;font-weight:600;
}

body.page-compare .cmp-hub-grid{display:grid;gap:14px;}
@media (min-width:720px){
  body.page-compare .cmp-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
}
body.page-compare .shell-light .cmp-hub-card{
  background:#fff;border:1px solid #E2E8F0;
  border-radius:var(--radius-card,14px);padding:18px 20px;
}
body.page-compare .cmp-hub-card h2{margin:0 0 8px;font-size:1.1rem;line-height:1.3;}
body.page-compare .cmp-hub-card h2 a{text-decoration:none;}
body.page-compare .cmp-hub-card h2 a:hover{text-decoration:underline;text-underline-offset:3px;}
body.page-compare .cmp-hub-card p{margin:0;font-size:.95rem;line-height:1.45;}
body.page-compare .cmp-hub-more{margin-top:12px !important;}

body.page-compare .cta-band .btn--primary{
  background:#C8FF3D;color:#0F172A !important;border-color:#C8FF3D;
}

/* Optional dark shells only — do NOT theme-flip .shell-light */
body.page-compare .shell-dark,
body.page-compare .shell-dark .wrap,
body.page-compare .shell-dark p,
body.page-compare .shell-dark li,
body.page-compare .shell-dark h2,
body.page-compare .shell-dark .display,
body.page-compare .shell-dark .lead{
  color:#F8FAFC !important;
}
body.page-compare .shell-dark .lead,
body.page-compare .shell-dark .section-head p,
body.page-compare .shell-dark .muted{
  color:#CBD5E1 !important;
}
body.page-compare .shell-dark a:not(.btn){
  color:#C8FF3D !important;
  text-decoration:underline !important;
}

@media (max-width:560px){
  body.page-compare .cmp-table{min-width:0;}
  body.page-compare .cmp-table thead{display:none;}
  body.page-compare .cmp-table,
  body.page-compare .cmp-table tbody,
  body.page-compare .cmp-table tr,
  body.page-compare .cmp-table th,
  body.page-compare .cmp-table td{display:block;width:100%;}
  body.page-compare .cmp-table tr{padding:12px 14px;border-bottom:1px solid #E2E8F0;}
  body.page-compare .cmp-table tbody tr:last-child{border-bottom:0;}
  body.page-compare .cmp-table tbody th{max-width:none;padding:0 0 8px;border:0;font-size:1rem;}
  body.page-compare .cmp-table td{
    border:0;padding:4px 0;display:flex;justify-content:space-between;gap:12px;align-items:flex-start;
  }
  body.page-compare .cmp-table td::before{
    content:attr(data-label);font-weight:650;color:#334155 !important;font-size:.82rem;flex:0 0 38%;
  }
}
