/* ---- calcutools-theme-fix.css ---- */
/* CalcuTools universal header + theme repair, 2026-09-08 */
:root{
  --ct-dark-bg:#0b1220;
  --ct-dark-surface:#111827;
  --ct-dark-surface-2:#1e293b;
  --ct-dark-border:#334155;
  --ct-dark-text:#e5e7eb;
  --ct-dark-muted:#94a3b8;
  --ct-dark-primary:#60a5fa;
}

/* Header: never wrap on desktop/tablet, and keep the brand crisp. */
.ct-nav{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  min-width:0!important;
  width:100%!important;
  box-sizing:border-box!important;
}
.ct-logo{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex:0 0 auto!important;
  white-space:nowrap!important;
  text-decoration:none!important;
  border:0!important;
  line-height:1!important;
  font-weight:850!important;
  letter-spacing:-.035em!important;
}
.ct-logo:hover,.ct-logo:focus{text-decoration:none!important;}
.ct-logo svg{display:block!important;flex:0 0 auto!important;width:34px!important;height:34px!important;}
.ct-nav-links{display:flex!important;align-items:center!important;flex:0 1 auto!important;min-width:0!important;overflow:hidden!important;white-space:nowrap!important;}
.ct-nav-links a{flex:0 0 auto!important;white-space:nowrap!important;}
.ct-nav-right{display:flex!important;align-items:center!important;gap:8px!important;flex:0 0 auto!important;margin-left:auto!important;min-width:0!important;}
#ct-fav-btn,.ct-dark-btn,.ct-dark-toggle,.ct-nav-right button[aria-label*="dark" i],.ct-nav-right button[title*="dark" i]{flex:0 0 auto!important;}
#ct-fav-btn{min-height:34px!important;padding:7px 12px!important;border-radius:9px!important;font-weight:750!important;}

/* Universal theme foundations. */
html[data-theme="dark"]{color-scheme:dark;}
html[data-theme="dark"],html[data-theme="dark"] body{
  background:var(--ct-dark-bg)!important;
  color:var(--ct-dark-text)!important;
}
html[data-theme="dark"] body{background-image:none!important;}
html[data-theme="dark"] .ct-nav{
  background:rgba(15,23,42,.97)!important;
  border-bottom-color:var(--ct-dark-border)!important;
  box-shadow:0 1px 12px rgba(0,0,0,.28)!important;
  color:var(--ct-dark-text)!important;
}
html[data-theme="dark"] .ct-logo{color:var(--ct-dark-text)!important;}
html[data-theme="dark"] .ct-logo em{color:#60a5fa!important;}
html[data-theme="dark"] .ct-nav-links a{color:#cbd5e1!important;}
html[data-theme="dark"] .ct-nav-links a:hover{background:#1e293b!important;color:#f8fafc!important;}
html[data-theme="dark"] .ct-back{background:#172554!important;border-color:#334155!important;color:#93c5fd!important;}
html[data-theme="dark"] .ct-back:hover{background:#2563eb!important;color:#fff!important;}
html[data-theme="dark"] #ct-fav-btn{background:#1e293b!important;border-color:#334155!important;color:#cbd5e1!important;}
html[data-theme="dark"] #ct-fav-btn.ct-fav-saved{background:#3b2f0b!important;color:#fde68a!important;border-color:#92400e!important;}
html[data-theme="dark"] .ct-dark-btn,
html[data-theme="dark"] .ct-dark-toggle,
html[data-theme="dark"] .ct-nav-right button[aria-label*="dark" i]{background:#1e293b!important;border-color:#475569!important;color:#e2e8f0!important;}

/* Common surfaces and text. */
html[data-theme="dark"] .card,
html[data-theme="dark"] .calc-card,
html[data-theme="dark"] .quick-summary,
html[data-theme="dark"] .action-panel,
html[data-theme="dark"] .related-section,
html[data-theme="dark"] .faq-section,
html[data-theme="dark"] .ct-decision-panel,
html[data-theme="dark"] .ct-seo-links,
html[data-theme="dark"] .seo-article,
html[data-theme="dark"] .seo-section,
html[data-theme="dark"] .results-box,
html[data-theme="dark"] .result-metric,
html[data-theme="dark"] .final-total,
html[data-theme="dark"] .food-detail,
html[data-theme="dark"] .nutrition-taskbar,
html[data-theme="dark"] .bmr-box,
html[data-theme="dark"] .macro-box,
html[data-theme="dark"] .meal-item,
html[data-theme="dark"] .ct-table-wrap,
html[data-theme="dark"] table,
html[data-theme="dark"] .table-wrap,
html[data-theme="dark"] .info-box,
html[data-theme="dark"] .guide-box,
html[data-theme="dark"] .trust-bar,
html[data-theme="dark"] .action-item,
html[data-theme="dark"] .ct-decision-card{
  background:var(--ct-dark-surface)!important;
  border-color:var(--ct-dark-border)!important;
  color:var(--ct-dark-text)!important;
}
html[data-theme="dark"] .results-box,
html[data-theme="dark"] .ct-decision-card,
html[data-theme="dark"] .action-item{background:#0f172a!important;}
html[data-theme="dark"] .final-total{background:linear-gradient(135deg,#172554,#111827)!important;border-color:#334155!important;}
html[data-theme="dark"] .result-metric,
html[data-theme="dark"] .bmr-box,
html[data-theme="dark"] .macro-box,
html[data-theme="dark"] .meal-item{background:#111827!important;}

html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4,
html[data-theme="dark"] h5,
html[data-theme="dark"] h6,
html[data-theme="dark"] .card-title,
html[data-theme="dark"] .final-total .val,
html[data-theme="dark"] .metric-val,
html[data-theme="dark"] .bmr-val,
html[data-theme="dark"] .food-name-big,
html[data-theme="dark"] .mi-name,
html[data-theme="dark"] .qs-val,
html[data-theme="dark"] .action-title,
html[data-theme="dark"] .related-title,
html[data-theme="dark"] .quick-summary-title,
html[data-theme="dark"] .ct-decision-head h2,
html[data-theme="dark"] .ct-decision-card h3,
html[data-theme="dark"] .ct-seo-links h2{color:#f8fafc!important;}
html[data-theme="dark"] p,
html[data-theme="dark"] li,
html[data-theme="dark"] dd,
html[data-theme="dark"] .header-text p,
html[data-theme="dark"] .hero p,
html[data-theme="dark"] .seo-article,
html[data-theme="dark"] .seo-section,
html[data-theme="dark"] .action-sub,
html[data-theme="dark"] .action-note,
html[data-theme="dark"] .faq-a,
html[data-theme="dark"] .ct-seo-links>p,
html[data-theme="dark"] .related-card-desc,
html[data-theme="dark"] .metric-label,
html[data-theme="dark"] .bmr-lbl,
html[data-theme="dark"] .macro-lbl,
html[data-theme="dark"] .mi-macros{color:#cbd5e1!important;}
html[data-theme="dark"] .breadcrumb,
html[data-theme="dark"] .breadcrumb span{color:#94a3b8!important;}
html[data-theme="dark"] a{color:#93c5fd;}
html[data-theme="dark"] .related-card,
html[data-theme="dark"] .ct-seo-link,
html[data-theme="dark"] .task-link,
html[data-theme="dark"] .food-chip,
html[data-theme="dark"] .cat-tab,
html[data-theme="dark"] .qs-row,
html[data-theme="dark"] .action-row,
html[data-theme="dark"] .ct-decision-table,
html[data-theme="dark"] th,
html[data-theme="dark"] td{border-color:var(--ct-dark-border)!important;}
html[data-theme="dark"] .related-card,
html[data-theme="dark"] .ct-seo-link{background:#0f172a!important;color:#e5e7eb!important;}
html[data-theme="dark"] .task-link{background:#1e293b!important;color:#e2e8f0!important;}
html[data-theme="dark"] .task-link.primary{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;}

/* Form controls: readable and consistent in dark mode. */
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea,
html[data-theme="dark"] .search-wrap input,
html[data-theme="dark"] #fdQty{
  background:#0b1220!important;
  color:#f8fafc!important;
  border-color:#475569!important;
  color-scheme:dark;
}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder{color:#64748b!important;}
html[data-theme="dark"] option{background:#0f172a!important;color:#f8fafc!important;}
html[data-theme="dark"] input:focus,
html[data-theme="dark"] select:focus,
html[data-theme="dark"] textarea:focus{border-color:#60a5fa!important;box-shadow:0 0 0 4px rgba(96,165,250,.16)!important;}

/* Buttons/chips that otherwise remain white due to inline or page-specific styling. */
html[data-theme="dark"] .btn-secondary,
html[data-theme="dark"] .secondary-btn,
html[data-theme="dark"] .calc-btn-secondary,
html[data-theme="dark"] .cat-tab:not(.active),
html[data-theme="dark"] .show-more-btn{background:#1e293b!important;color:#e2e8f0!important;border-color:#475569!important;}
html[data-theme="dark"] .food-grid,
html[data-theme="dark"] .bmr-results{background:transparent!important;}

/* Tables */
html[data-theme="dark"] th{background:#1e293b!important;color:#cbd5e1!important;}
html[data-theme="dark"] td{background:#0f172a!important;color:#e5e7eb!important;}
html[data-theme="dark"] tr.current td{background:#172554!important;}

/* Dynamic recent/favourites UI injected by shared code. */
html[data-theme="dark"] #ct-recent-bar,
html[data-theme="dark"] #ct-fav-panel{background:#111827!important;border-color:#334155!important;color:#e5e7eb!important;}
html[data-theme="dark"] #ct-recent-bar a,
html[data-theme="dark"] #ct-fav-panel a{background:#0f172a!important;border-color:#334155!important;color:#e2e8f0!important;}
html[data-theme="dark"] #ct-fav-panel button{background:#1e293b!important;color:#cbd5e1!important;}

/* Mobile: prioritize the brand + tools, never create a broken second header row. */
@media (max-width: 900px){
  .ct-nav{gap:10px!important;padding-left:14px!important;padding-right:14px!important;}
  .ct-nav-links{display:none!important;}
  .ct-logo{font-size:18px!important;}
  .ct-nav-right{gap:6px!important;}
}
@media (max-width: 520px){
  .ct-logo svg{width:30px!important;height:30px!important;}
  .ct-logo{font-size:17px!important;gap:6px!important;}
  #ct-fav-btn{padding:7px 9px!important;font-size:12px!important;}
  .ct-back{font-size:12px!important;padding:8px 9px!important;}
}

/* Result clarity pass: high-contrast numbers, stable wrapping, and mobile-safe metrics. */
.result-metric,.metric-box,.final-total,.results-box,.result-hero,.result-box,.result-section,.results-wrap,.inv-totals-box,.conv-result,.ct-stat-results,.all-results{
  text-rendering:optimizeLegibility!important;
}
.metric-val,.res-value,.result-val,.result-num,.res-value,.res-num,.result-score,.score-value,.size-value,.conv-result .value,.ct-mode-value,.ct-result-topline,.final-total .val,.final-total .value,.result-hero .res-value,.metric .value,.metric .metric-value,.metric-box .metric-value,.metric-box .res-value,.result-metric .metric-val,.result-metric .value{
  color:#0f172a!important;
  font-weight:850!important;
  font-variant-numeric:tabular-nums lining-nums!important;
  letter-spacing:-.02em!important;
  opacity:1!important;
  text-shadow:none!important;
  -webkit-text-fill-color:#0f172a!important;
  max-width:100%!important;
  overflow-wrap:anywhere!important;
}
.metric-label,.metric-lbl,.result-head,.result-sub,.result-compare,.final-total .label,.results-title,.results-header,.size-label,.ct-result-badge{
  color:#475569!important;
  opacity:1!important;
}
.result-metric,.metric-box,.final-total,.results-box,.result-hero,.result-box,.result-section,.results-wrap{
  isolation:isolate;
}
input[type="number"],input[inputmode="decimal"],input[inputmode="numeric"]{
  font-variant-numeric:tabular-nums lining-nums!important;
  opacity:1!important;
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
}
input[type="number"]::placeholder{opacity:1!important;color:#64748b!important;-webkit-text-fill-color:#64748b!important;}

/* Nutrition-specific readability. */
.fc-name,.food-name-big,.macro-val,.bmr-val,.mi-name,.mt-val,#fdQty,#resBMR,#resTDEE,#resGoal,#resBMI,#fdCal,#fdProt,#fdCarb,#fdFat,#totCal,#totProt,#totCarb,#totFat{
  color:#0f172a!important;
  opacity:1!important;
  font-variant-numeric:tabular-nums lining-nums!important;
  -webkit-text-fill-color:#0f172a!important;
}
.fc-cal,.macro-lbl,.bmr-lbl,.mi-macros,.meal-empty,.qty-row label{color:#475569!important;opacity:1!important;}
.macro-box,.bmr-box,.food-chip,.meal-item{opacity:1!important;}

html[data-theme="dark"] .metric-val,
html[data-theme="dark"] .res-value,
html[data-theme="dark"] .result-val,
html[data-theme="dark"] .result-num,
html[data-theme="dark"] .res-num,
html[data-theme="dark"] .result-score,
html[data-theme="dark"] .score-value,
html[data-theme="dark"] .size-value,
html[data-theme="dark"] .conv-result .value,
html[data-theme="dark"] .ct-mode-value,
html[data-theme="dark"] .ct-result-topline,
html[data-theme="dark"] .final-total .val,
html[data-theme="dark"] .final-total .value,
html[data-theme="dark"] .result-hero .res-value,
html[data-theme="dark"] .metric .value,
html[data-theme="dark"] .metric .metric-value,
html[data-theme="dark"] .metric-box .metric-value,
html[data-theme="dark"] .metric-box .res-value,
html[data-theme="dark"] .result-metric .metric-val,
html[data-theme="dark"] .result-metric .value,
html[data-theme="dark"] input[type="number"],
html[data-theme="dark"] input[inputmode="decimal"],
html[data-theme="dark"] input[inputmode="numeric"],
html[data-theme="dark"] .fc-name,
html[data-theme="dark"] .food-name-big,
html[data-theme="dark"] .macro-val,
html[data-theme="dark"] .bmr-val,
html[data-theme="dark"] .mi-name,
html[data-theme="dark"] #fdQty,
html[data-theme="dark"] #resBMR,
html[data-theme="dark"] #resTDEE,
html[data-theme="dark"] #resGoal,
html[data-theme="dark"] #resBMI,
html[data-theme="dark"] #fdCal,
html[data-theme="dark"] #fdProt,
html[data-theme="dark"] #fdCarb,
html[data-theme="dark"] #fdFat,
html[data-theme="dark"] #totCal,
html[data-theme="dark"] #totProt,
html[data-theme="dark"] #totCarb,
html[data-theme="dark"] #totFat{
  color:#f8fafc!important;
  -webkit-text-fill-color:#f8fafc!important;
  opacity:1!important;
}
html[data-theme="dark"] .metric-label,
html[data-theme="dark"] .metric-lbl,
html[data-theme="dark"] .result-head,
html[data-theme="dark"] .result-sub,
html[data-theme="dark"] .final-total .label,
html[data-theme="dark"] .results-title,
html[data-theme="dark"] .results-header,
html[data-theme="dark"] .size-label,
html[data-theme="dark"] .fc-cal,
html[data-theme="dark"] .macro-lbl,
html[data-theme="dark"] .bmr-lbl,
html[data-theme="dark"] .mi-macros,
html[data-theme="dark"] .meal-empty,
html[data-theme="dark"] .qty-row label{color:#cbd5e1!important;opacity:1!important;}

@media (max-width:700px){
  .metric-val,.res-value,.result-val,.result-num,.res-num,.final-total .val,.metric-box .metric-value{font-size:clamp(18px,5.6vw,28px)!important;line-height:1.15!important;}
  .result-metric,.metric-box,.final-total{padding:15px!important;}
  .result-metric .metric-val,.metric-box .metric-value{min-height:1.25em;display:block;}
}
@media (max-width:380px){
  .result-grid{grid-template-columns:1fr!important;}
  .macro-val,.bmr-val{font-size:21px!important;}
}

/* CalcuTools professional dark-mode hardening v2, 2026-09-14
   This block intentionally comes last so page-specific light styles cannot
   reintroduce white text on white surfaces or dark text on dark surfaces. */
html[data-theme="dark"] body,
html[data-theme="dark"] main,
html[data-theme="dark"] #main-content,
html[data-theme="dark"] .container,
html[data-theme="dark"] .page-wrap,
html[data-theme="dark"] .main-container{background:var(--ct-dark-bg)!important;color:var(--ct-dark-text)!important;}
html[data-theme="dark"] [style*="background:#fff"],
html[data-theme="dark"] [style*="background: #fff"],
html[data-theme="dark"] [style*="background:#ffffff"],
html[data-theme="dark"] [style*="background: #ffffff"],
html[data-theme="dark"] [style*="background:white"],
html[data-theme="dark"] [style*="background: white"]{background:#111827!important;color:#e5e7eb!important;border-color:#334155!important;}
html[data-theme="dark"] [style*="color:#0f172a"],
html[data-theme="dark"] [style*="color: #0f172a"],
html[data-theme="dark"] [style*="color:#102143"],
html[data-theme="dark"] [style*="color: #102143"],
html[data-theme="dark"] [style*="color:#243653"],
html[data-theme="dark"] [style*="color: #243653"],
html[data-theme="dark"] [style*="color:#111827"],
html[data-theme="dark"] [style*="color: #111827"]{color:#e5e7eb!important;-webkit-text-fill-color:#e5e7eb!important;}
html[data-theme="dark"] [style*="color:#64748b"],
html[data-theme="dark"] [style*="color: #64748b"],
html[data-theme="dark"] [style*="color:#687891"],
html[data-theme="dark"] [style*="color: #687891"],
html[data-theme="dark"] [style*="color:#52617f"],
html[data-theme="dark"] [style*="color: #52617f"]{color:#aebbd0!important;-webkit-text-fill-color:#aebbd0!important;}
html[data-theme="dark"] label,
html[data-theme="dark"] legend,
html[data-theme="dark"] .label,
html[data-theme="dark"] .form-label,
html[data-theme="dark"] .input-label{color:#dbe5f2!important;}
html[data-theme="dark"] small,
html[data-theme="dark"] .muted,
html[data-theme="dark"] .subtle,
html[data-theme="dark"] .hint,
html[data-theme="dark"] .note,
html[data-theme="dark"] .help-text{color:#9fb0c8!important;}
html[data-theme="dark"] hr{border-color:#334155!important;background:#334155!important;}
html[data-theme="dark"] button:not(.ct-primary-btn):not(.food-add-btn):not(.add-btn){color:#e5e7eb;}
html[data-theme="dark"] button:disabled{opacity:.65!important;}
html[data-theme="dark"] ::selection{background:#2563eb!important;color:#fff!important;}
html[data-theme="dark"] .result-metric .metric-val,
html[data-theme="dark"] .metric-val,
html[data-theme="dark"] .res-value,
html[data-theme="dark"] .result-val,
html[data-theme="dark"] .result-num,
html[data-theme="dark"] .res-num,
html[data-theme="dark"] .result-score,
html[data-theme="dark"] .score-value,
html[data-theme="dark"] .size-value,
html[data-theme="dark"] .conv-result .value,
html[data-theme="dark"] .ct-mode-value,
html[data-theme="dark"] .ct-result-topline,
html[data-theme="dark"] .final-total .val,
html[data-theme="dark"] .final-total .value,
html[data-theme="dark"] .result-hero .res-value,
html[data-theme="dark"] .metric .value,
html[data-theme="dark"] .metric .metric-value,
html[data-theme="dark"] .metric-box .metric-value,
html[data-theme="dark"] .metric-box .res-value,
html[data-theme="dark"] .result-metric .value{color:#f8fafc!important;-webkit-text-fill-color:#f8fafc!important;}
html[data-theme="dark"] .metric-label,
html[data-theme="dark"] .metric-lbl,
html[data-theme="dark"] .result-head,
html[data-theme="dark"] .result-sub,
html[data-theme="dark"] .result-compare,
html[data-theme="dark"] .final-total .label,
html[data-theme="dark"] .results-title,
html[data-theme="dark"] .results-header,
html[data-theme="dark"] .size-label{color:#cbd5e1!important;-webkit-text-fill-color:#cbd5e1!important;}
html[data-theme="dark"] .ct-dark-toggle{min-width:36px!important;min-height:36px!important;}
/* Preserve the intentionally dark footer rather than applying surface rules to it. */
html[data-theme="dark"] footer,
html[data-theme="dark"] footer *{background-color:#0b1220!important;color:#cbd5e1!important;border-color:#1e293b!important;}
html[data-theme="dark"] footer a{color:#93c5fd!important;}

/* CalcuTools universal surface + legacy-header hardening v3, 2026-09-15
   Covers legacy page-specific classes as well as the newer shared shell. */
html[data-theme="dark"] .nav-logo,
html[data-theme="dark"] .nav-links a,
html[data-theme="dark"] .nav-icon-btn,
html[data-theme="dark"] .nav-fav-btn,
html[data-theme="dark"] .dropdown-menu,
html[data-theme="dark"] .hero,
html[data-theme="dark"] .goal-card,
html[data-theme="dark"] .pop-card,
html[data-theme="dark"] .cat-card,
html[data-theme="dark"] .trend-item,
html[data-theme="dark"] .guide-card,
html[data-theme="dark"] .calc-item,
html[data-theme="dark"] .show-more-btn,
html[data-theme="dark"] .trust-bar,
html[data-theme="dark"] .all-calcs-bg,
html[data-theme="dark"] #searchResults {
  color:var(--ct-dark-text)!important;
  border-color:var(--ct-dark-border)!important;
}
html[data-theme="dark"] .nav-logo{color:#f8fafc!important;}
html[data-theme="dark"] .nav-logo em{color:#60a5fa!important;}
html[data-theme="dark"] .nav-logo-icon{background:#2563eb!important;color:#fff!important;}
html[data-theme="dark"] .nav-links a{color:#cbd5e1!important;}
html[data-theme="dark"] .nav-links a:hover{color:#f8fafc!important;background:#1e293b!important;}
html[data-theme="dark"] .nav-icon-btn{background:#1e293b!important;color:#cbd5e1!important;}
html[data-theme="dark"] .nav-fav-btn{background:#1e293b!important;color:#cbd5e1!important;}
html[data-theme="dark"] .dropdown-menu{background:#111827!important;}
html[data-theme="dark"] .dropdown-menu a{color:#cbd5e1!important;}
html[data-theme="dark"] .dropdown-menu a:hover{background:#1e293b!important;color:#f8fafc!important;}
html[data-theme="dark"] .hero{background:linear-gradient(135deg,#0f1b31 0%,#111827 55%,#0f172a 100%)!important;}
html[data-theme="dark"] .hero h1,
html[data-theme="dark"] .sec-title,
html[data-theme="dark"] .goal-title,
html[data-theme="dark"] .pop-name,
html[data-theme="dark"] .cat-label,
html[data-theme="dark"] .trend-name,
html[data-theme="dark"] .guide-title,
html[data-theme="dark"] .calc-item-name{color:#f8fafc!important;}
html[data-theme="dark"] .hero-tagline,
html[data-theme="dark"] .hero-tagline strong,
html[data-theme="dark"] .sec-sub,
html[data-theme="dark"] .goal-desc,
html[data-theme="dark"] .pop-desc,
html[data-theme="dark"] .cat-count,
html[data-theme="dark"] .trend-desc,
html[data-theme="dark"] .guide-summary,
html[data-theme="dark"] .guide-meta,
html[data-theme="dark"] .calc-item-desc,
html[data-theme="dark"] .trust-item-desc{color:#aebbd0!important;}
html[data-theme="dark"] .hero-search input{background:#111827!important;color:#f8fafc!important;border-color:#475569!important;}
html[data-theme="dark"] .hero-search input::placeholder{color:#94a3b8!important;}
html[data-theme="dark"] .goal-card,
html[data-theme="dark"] .pop-card,
html[data-theme="dark"] .cat-card,
html[data-theme="dark"] .trend-item,
html[data-theme="dark"] .guide-card,
html[data-theme="dark"] .calc-item{background:#111827!important;}
html[data-theme="dark"] .goal-tag{background:#1e293b!important;border-color:#334155!important;color:#aebbd0!important;}
html[data-theme="dark"] .show-more-btn{background:#111827!important;color:#cbd5e1!important;}
html[data-theme="dark"] .trust-bar,
html[data-theme="dark"] .all-calcs-bg{background:#0b1220!important;}
html[data-theme="dark"] #searchResults{background:#111827!important;}
html[data-theme="dark"] .sr-item{color:#e5e7eb!important;}
html[data-theme="dark"] .sr-item:hover{background:#1e293b!important;}

/* Common light surfaces that were previously able to survive the dark theme. */
html[data-theme="dark"] .calc-card,
html[data-theme="dark"] .card,
html[data-theme="dark"] .product-showcase,
html[data-theme="dark"] .seo-article,
html[data-theme="dark"] .related-section,
html[data-theme="dark"] .results-box,
html[data-theme="dark"] .result-metric,
html[data-theme="dark"] .final-total,
html[data-theme="dark"] .info-box,
html[data-theme="dark"] .guide-box,
html[data-theme="dark"] .ct-sprint2-related,
html[data-theme="dark"] .ct-sprint2-intro{background:#111827!important;color:#e5e7eb!important;border-color:#334155!important;}
html[data-theme="dark"] .fd-card{background:#1e293b!important;color:#e5e7eb!important;border-color:#334155!important;}
html[data-theme="dark"] .seo-article,
html[data-theme="dark"] .seo-article p,
html[data-theme="dark"] .seo-article li{color:#cbd5e1!important;}
html[data-theme="dark"] .seo-article h2,
html[data-theme="dark"] .seo-article h3,
html[data-theme="dark"] .product-showcase h3{color:#f8fafc!important;}

/* Inline legacy backgrounds are common in the older calculators. */
html[data-theme="dark"] [style*="background:#fff"],
html[data-theme="dark"] [style*="background: #fff"],
html[data-theme="dark"] [style*="background:#ffffff"],
html[data-theme="dark"] [style*="background: #ffffff"],
html[data-theme="dark"] [style*="background:white"],
html[data-theme="dark"] [style*="background: white"],
html[data-theme="dark"] [style*="background:#f8fafc"],
html[data-theme="dark"] [style*="background: #f8fafc"],
html[data-theme="dark"] [style*="background:#f9fafb"],
html[data-theme="dark"] [style*="background: #f9fafb"],
html[data-theme="dark"] [style*="background:#eff6ff"],
html[data-theme="dark"] [style*="background: #eff6ff"],
html[data-theme="dark"] [style*="background:#f0f7ff"],
html[data-theme="dark"] [style*="background: #f0f7ff"],
html[data-theme="dark"] [style*="background:#fafcff"],
html[data-theme="dark"] [style*="background: #fafcff"]{
  background:#111827!important;color:#e5e7eb!important;border-color:#334155!important;
}
html[data-theme="dark"] [style*="color:#334155"],
html[data-theme="dark"] [style*="color: #334155"],
html[data-theme="dark"] [style*="color:#475569"],
html[data-theme="dark"] [style*="color: #475569"]{
  color:#cbd5e1!important;-webkit-text-fill-color:#cbd5e1!important;
}

/* Text-only legacy logos get the same mark as the shared SVG brand. */
html[data-theme="dark"] .ct-logo.ct-logo-text-only,
html[data-theme="dark"] .logo.ct-logo-text-only{color:#f8fafc!important;}
.ct-logo.ct-logo-text-only::before,
.logo.ct-logo-text-only::before{
  content:"";display:inline-block;width:30px;height:30px;flex:0 0 30px;border-radius:8px;
  background:#2563eb;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);
}

/* Brand normalization for the remaining legacy .logo headers. */
.logo{
  display:flex!important;align-items:center!important;gap:8px!important;flex:0 0 auto!important;
  white-space:nowrap!important;text-decoration:none!important;font-family:'Sora',ui-sans-serif,sans-serif!important;
  font-size:19px!important;font-weight:850!important;letter-spacing:-.035em!important;line-height:1!important;
  color:#0f172a!important;
}
.logo em{color:#2563eb!important;font-style:normal!important;}
html[data-theme="dark"] .logo{color:#f8fafc!important;}
html[data-theme="dark"] .logo em{color:#60a5fa!important;}
.ct-logo.ct-logo-text-only::before,
.logo.ct-logo-text-only::before{
  background-color:#2563eb!important;
  background-image:linear-gradient(rgba(255,255,255,.92),rgba(255,255,255,.92)),linear-gradient(#fbbf24,#fbbf24)!important;
  background-size:20px 7px,8px 8px!important;
  background-position:7px 7px,19px 17px!important;
  background-repeat:no-repeat!important;
}


/* CalcuTools Design v1.4: one invariant brand + dark-mode text safety net. */
.ct-v7-brand-mark,.ct-brand-mark{display:block!important;flex:0 0 auto!important;width:34px!important;height:34px!important;color:initial!important;forced-color-adjust:auto!important;}
.ct-v7-brand-mark rect,.ct-brand-mark rect{fill:#2563eb!important;}
.ct-v7-brand-mark path,.ct-brand-mark path{vector-effect:non-scaling-stroke!important;}
.ct-v7-brand-text,.ct-brand-text{font-family:'Sora','Plus Jakarta Sans',system-ui,sans-serif!important;font-weight:800!important;letter-spacing:-.035em!important;line-height:1!important;}
.ct-v7-brand-text span,.ct-brand-text span{color:#2563eb!important;}
.ct-v7-brand{display:flex!important;align-items:center!important;gap:8px!important;color:#0f172a!important;text-decoration:none!important;white-space:nowrap!important;}
html[data-theme="dark"] .ct-v7-brand{color:#f8fafc!important;}
html[data-theme="dark"] .ct-v7-brand-text{color:#f8fafc!important;}
html[data-theme="dark"] .ct-v7-brand-text span{color:#60a5fa!important;}

/* Footer uses exactly the same mark and wordmark. */
.ct-footer-brand{display:inline-flex!important;align-items:center!important;gap:8px!important;text-decoration:none!important;line-height:1!important;}
.ct-footer-brand .ct-brand-mark{width:34px!important;height:34px!important;}
.footer-logo.ct-footer-brand{font-family:'Sora','Plus Jakarta Sans',system-ui,sans-serif!important;font-size:22px!important;font-weight:800!important;color:#fff!important;}
.ct-footer-brand .ct-brand-text{color:#fff!important;}
.ct-footer-brand .ct-brand-text span{color:#60a5fa!important;}

/* Prevent the old calculator-logo rules from recolouring the invariant mark. */
.ct-logo.ct-footer-brand svg,.footer-logo.ct-footer-brand svg{color:initial!important;}

/* Dark mode: explicit inline light-theme colors are a common source of disappearing text. */
html[data-theme="dark"] [style*="color:#0f172a"],
html[data-theme="dark"] [style*="color: #0f172a"],
html[data-theme="dark"] [style*="color:#0F172A"],
html[data-theme="dark"] [style*="color: #0F172A"]{color:#f8fafc!important;-webkit-text-fill-color:#f8fafc!important;}
html[data-theme="dark"] [style*="color:#334155"],
html[data-theme="dark"] [style*="color: #334155"],
html[data-theme="dark"] [style*="color:#374151"],
html[data-theme="dark"] [style*="color: #374151"]{color:#e2e8f0!important;-webkit-text-fill-color:#e2e8f0!important;}
html[data-theme="dark"] [style*="color:#475569"],
html[data-theme="dark"] [style*="color: #475569"],
html[data-theme="dark"] [style*="color:#64748b"],
html[data-theme="dark"] [style*="color: #64748b"],
html[data-theme="dark"] [style*="color:#6b7280"],
html[data-theme="dark"] [style*="color: #6b7280"]{color:#cbd5e1!important;-webkit-text-fill-color:#cbd5e1!important;}
html[data-theme="dark"] [style*="color:#9ca3af"],
html[data-theme="dark"] [style*="color: #9ca3af"]{color:#94a3b8!important;-webkit-text-fill-color:#94a3b8!important;}

/* Semantic text classes used across the older calculator templates. */
html[data-theme="dark"] .label,
html[data-theme="dark"] .desc,
html[data-theme="dark"] .description,
html[data-theme="dark"] .muted,
html[data-theme="dark"] .hint,
html[data-theme="dark"] .help,
html[data-theme="dark"] .subtitle,
html[data-theme="dark"] .subtext,
html[data-theme="dark"] .small,
html[data-theme="dark"] .caption,
html[data-theme="dark"] .info-text,
html[data-theme="dark"] .form-desc,
html[data-theme="dark"] .calc-card-desc,
html[data-theme="dark"] .calc-item-desc,
html[data-theme="dark"] .page-desc,
html[data-theme="dark"] .step-desc,
html[data-theme="dark"] .sec-desc,
html[data-theme="dark"] .cc-desc,
html[data-theme="dark"] .rc-desc,
html[data-theme="dark"] .trust-desc,
html[data-theme="dark"] .goal-desc,
html[data-theme="dark"] .action-note,
html[data-theme="dark"] .action-sub,
html[data-theme="dark"] .check-text,
html[data-theme="dark"] .check-label,
html[data-theme="dark"] .info-label,
html[data-theme="dark"] .setting-label,
html[data-theme="dark"] .rate-label,
html[data-theme="dark"] .s-label,
html[data-theme="dark"] .res-label,
html[data-theme="dark"] .tb-label,
html[data-theme="dark"] .cat-label{color:#cbd5e1!important;-webkit-text-fill-color:#cbd5e1!important;opacity:1!important;}

/* Text inside cards that used generic div/span elements with no semantic class. */
html[data-theme="dark"] .calc-item,
html[data-theme="dark"] .calc-item *{border-color:var(--ct-dark-border);}
html[data-theme="dark"] .calc-item-name{color:#f8fafc!important;-webkit-text-fill-color:#f8fafc!important;}
html[data-theme="dark"] .ct-v7-search-label{color:#e2e8f0!important;}
html[data-theme="dark"] .ct-v7-search-kbd{color:#94a3b8!important;}

/* Never allow the theme switch to recolour brand SVG internals. */
html[data-theme="dark"] .ct-v7-brand-mark rect:first-child,
html[data-theme="dark"] .ct-brand-mark rect:first-child{fill:#2563eb!important;}
html[data-theme="dark"] .ct-v7-brand-mark path:first-of-type,
html[data-theme="dark"] .ct-brand-mark path:first-of-type{stroke:#fff!important;}
html[data-theme="dark"] .ct-v7-brand-mark path:last-of-type,
html[data-theme="dark"] .ct-brand-mark path:last-of-type{stroke:#60a5fa!important;}

@media(max-width:520px){
  .ct-v7-brand-mark,.ct-brand-mark{width:30px!important;height:30px!important;}
  .ct-v7-brand,.ct-footer-brand{gap:6px!important;}
  .ct-v7-brand-text,.ct-brand-text{font-size:17px!important;}
}


/* ---- calcutools-design-v1.css ---- */
/* CalcuTools Design System v1 • responsive product shell • Sep 2026 */
:root{
  --ct-brand:#2563eb;
  --ct-brand-dark:#1d4ed8;
  --ct-ink:#0f172a;
  --ct-muted:#64748b;
  --ct-subtle:#94a3b8;
  --ct-bg:#f6f8fc;
  --ct-surface:#ffffff;
  --ct-border:#e2e8f0;
  --ct-soft:#eff6ff;
  --ct-success:#059669;
  --ct-warning:#d97706;
  --ct-radius:18px;
  --ct-radius-sm:12px;
  --ct-shadow:0 10px 35px rgba(15,23,42,.07);
  --ct-shadow-sm:0 4px 18px rgba(15,23,42,.06);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--ct-bg)}

/* ---------- UNIVERSAL HEADER ---------- */
.ct-v7-nav{position:sticky;top:0;z-index:2000;height:68px;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(226,232,240,.9);box-shadow:0 1px 10px rgba(15,23,42,.04)}
.ct-v7-nav-inner{width:min(100% - 32px,1220px);height:100%;margin:0 auto;display:flex;align-items:center;gap:14px;min-width:0}
.ct-v7-brand{display:inline-flex;align-items:center;gap:10px;color:var(--ct-ink)!important;text-decoration:none!important;flex:0 0 auto;min-width:0}
.ct-v7-brand-mark{width:38px;height:38px;display:block;flex:0 0 auto}
.ct-v7-brand-text{font-family:ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:20px;font-weight:850;letter-spacing:-.045em;line-height:1}
.ct-v7-brand-text span{color:var(--ct-brand)}
.ct-v7-nav-links{display:flex;align-items:center;gap:4px;margin-left:8px;min-width:0;white-space:nowrap}
.ct-v7-nav-links a{color:#475569!important;text-decoration:none!important;font-size:13px;font-weight:750;padding:9px 11px;border-radius:10px;transition:.16s ease}
.ct-v7-nav-links a:hover,.ct-v7-nav-links a:focus-visible{color:var(--ct-brand)!important;background:var(--ct-soft)}
.ct-v7-nav-spacer{flex:1 1 auto;min-width:8px}
.ct-v7-search-btn,.ct-v7-icon-btn,.ct-v7-menu-btn{font:inherit;border:1px solid var(--ct-border);background:#fff;color:#475569;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:.16s ease}
.ct-v7-search-btn{height:40px;padding:0 13px;border-radius:11px;gap:8px;font-size:13px;font-weight:800;min-width:170px;justify-content:flex-start}
.ct-v7-search-btn:hover,.ct-v7-icon-btn:hover,.ct-v7-menu-btn:hover{border-color:#bfdbfe;background:var(--ct-soft);color:var(--ct-brand)}
.ct-v7-search-kbd{margin-left:auto;font-size:10px;font-weight:800;color:#94a3b8;border:1px solid #dbe2ea;border-bottom-width:2px;padding:2px 5px;border-radius:5px;background:#fff}
.ct-v7-icon-btn{width:40px;height:40px;border-radius:11px;font-size:17px}
.ct-v7-menu-btn{display:none;width:40px;height:40px;border-radius:11px;font-size:20px}
.ct-v7-back{height:40px;padding:0 12px;border-radius:11px;background:var(--ct-soft);border:1px solid #bfdbfe;color:var(--ct-brand)!important;text-decoration:none!important;display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:800;white-space:nowrap}
.ct-v7-mobile-panel{display:none}

/* ---------- UNIVERSAL LOGO EMBED FALLBACK ---------- */
.ct-v7-brand svg{overflow:visible}

/* ---------- CALCULATOR PRODUCT SHELL ---------- */
body.ct-v7-tool #main-content,
body.ct-v7-tool .container,
body.ct-v7-tool .pg-wrap{max-width:1180px}
body.ct-v7-tool #main-content{margin-left:auto;margin-right:auto}
body.ct-v7-tool .breadcrumb{max-width:1180px;margin-left:auto;margin-right:auto;padding-top:22px;margin-bottom:8px;font-size:12px;color:var(--ct-subtle)}
body.ct-v7-tool .breadcrumb a{font-weight:700}
body.ct-v7-tool .header-text,
body.ct-v7-tool .page-hero:not(.ct-v7-keep-hero),
body.ct-v7-tool .hero:not(.ct-home-hero){max-width:1180px;margin-left:auto;margin-right:auto}
body.ct-v7-tool .header-text h1,
body.ct-v7-tool .page-hero h1,
body.ct-v7-tool .hero h1{font-size:clamp(31px,4vw,48px)!important;line-height:1.08!important;letter-spacing:-.045em!important;font-weight:850!important;color:var(--ct-ink)!important;text-wrap:balance}
body.ct-v7-tool .header-text p,
body.ct-v7-tool .page-hero p,
body.ct-v7-tool .hero p{font-size:16px!important;line-height:1.6!important;color:var(--ct-muted)!important;max-width:760px}
body.ct-v7-tool .calc-card,
body.ct-v7-tool .card,
body.ct-v7-tool .results-box,
body.ct-v7-tool .seo-article,
body.ct-v7-tool .seo-section,
body.ct-v7-tool .faq-section,
body.ct-v7-tool .related-section{border-radius:var(--ct-radius)!important}
body.ct-v7-tool .calc-card{box-shadow:var(--ct-shadow-sm);border-color:var(--ct-border)}
body.ct-v7-tool .input-group input,
body.ct-v7-tool .input-group select,
body.ct-v7-tool .inp-grp input,
body.ct-v7-tool .inp-grp select,
body.ct-v7-tool .field input,
body.ct-v7-tool .field select,
body.ct-v7-tool textarea{min-height:48px;border-radius:11px;font-size:16px}
body.ct-v7-tool .btn{min-height:46px;border-radius:11px;font-weight:800}
body.ct-v7-tool .final-total{box-shadow:0 10px 28px rgba(37,99,235,.12);border-radius:16px!important}
body.ct-v7-tool .metric-val,
body.ct-v7-tool .final-total .val{letter-spacing:-.045em}
body.ct-v7-tool .related-card{transition:.16s ease}
body.ct-v7-tool .related-card:hover{transform:translateY(-2px);box-shadow:var(--ct-shadow-sm)}

/* Keep long content readable and make tool-to-decision journey clearer */
.ct-v7-next-step{display:grid;grid-template-columns:1.2fr repeat(2,1fr);gap:10px;margin:16px 0}
.ct-v7-next-step a{min-height:58px;padding:12px 14px;border:1px solid var(--ct-border);border-radius:13px;background:var(--ct-surface);color:var(--ct-ink);text-decoration:none;display:flex;align-items:center;gap:10px;font-size:13px;font-weight:800;box-shadow:0 2px 10px rgba(15,23,42,.03)}
.ct-v7-next-step a:first-child{background:var(--ct-brand);border-color:var(--ct-brand);color:#fff}
.ct-v7-next-step a span:last-child{margin-left:auto;opacity:.7}

/* ---------- HOMEPAGE ---------- */
.ct-home-hero{background:radial-gradient(circle at 75% 24%,rgba(96,165,250,.12),transparent 28%),linear-gradient(180deg,#f7fbff 0%,#f7f9fd 100%)!important;padding:56px 20px 42px!important;border-bottom:1px solid #eaf0f7}
.ct-home-hero .hero-inner{width:min(100%,1220px);grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:58px;max-width:none}
.ct-home-hero .hero-badge{margin-bottom:16px}
.ct-home-hero h1{font-size:clamp(39px,5.1vw,67px)!important;line-height:1.02!important;letter-spacing:-.055em!important;max-width:760px}
.ct-home-hero h1 span{color:var(--ct-brand)}
.ct-home-hero .hero-tagline{font-size:18px;max-width:640px;margin-bottom:22px}
.ct-home-search-label{font-size:12px;font-weight:850;color:#334155;margin:0 0 7px;display:block}
.ct-home-hero .hero-search{max-width:650px;margin-bottom:16px}
.ct-home-hero .hero-search input{height:58px;padding:0 60px 0 18px;border-radius:16px;border:1.5px solid #cbd5e1;box-shadow:0 8px 28px rgba(37,99,235,.09);font-size:16px}
.ct-home-quicklinks{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.ct-home-quicklinks a{padding:7px 10px;border-radius:999px;background:#fff;border:1px solid #dbe4ee;color:#475569;text-decoration:none;font-size:11px;font-weight:800}
.ct-home-quicklinks a:hover{border-color:#bfdbfe;color:var(--ct-brand);background:var(--ct-soft)}
.ct-home-hero .hero-trust{gap:8px;margin-top:12px}
.ct-home-hero .trust-chip{font-size:11px}
.ct-home-product-card{background:rgba(255,255,255,.88);border:1px solid #dce6f2;border-radius:24px;padding:20px;box-shadow:0 24px 70px rgba(37,99,235,.12);backdrop-filter:blur(10px)}
.ct-home-product-card .ct-mini-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#64748b;font-weight:800;margin-bottom:13px}
.ct-home-product-card .ct-mini-main{border:1px solid #e2e8f0;border-radius:18px;padding:16px;background:#fbfdff}
.ct-home-product-card .ct-mini-label{font-size:11px;font-weight:800;color:#64748b}
.ct-home-product-card .ct-mini-value{font-size:29px;font-weight:900;letter-spacing:-.04em;color:#0f172a;margin:4px 0 14px}
.ct-home-product-card .ct-mini-bars{display:grid;gap:9px}
.ct-home-product-card .ct-mini-bar{display:grid;grid-template-columns:86px 1fr 62px;gap:8px;align-items:center;font-size:10px;color:#64748b}
.ct-home-product-card .ct-mini-track{height:9px;border-radius:999px;background:#e8eef6;overflow:hidden}
.ct-home-product-card .ct-mini-track i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#60a5fa,#2563eb)}
.ct-home-product-card .ct-mini-footer{display:flex;gap:8px;margin-top:13px}
.ct-home-product-card .ct-mini-btn{flex:1;text-align:center;padding:9px;border-radius:10px;font-size:11px;font-weight:800;border:1px solid #dbe4ee;background:#fff;color:#475569}
.ct-home-product-card .ct-mini-btn.primary{background:var(--ct-brand);border-color:var(--ct-brand);color:#fff}
.ct-home-subnav{position:relative;z-index:3;margin-top:-18px}
.ct-home-intent{width:min(100% - 32px,1180px);margin:0 auto;background:#fff;border:1px solid #dde6f0;border-radius:18px;padding:13px 15px;box-shadow:var(--ct-shadow-sm);display:flex;align-items:center;gap:12px;overflow:auto}
.ct-home-intent strong{font-size:12px;white-space:nowrap;color:#0f172a}
.ct-home-intent a{white-space:nowrap;padding:7px 11px;border-radius:999px;background:#f8fafc;color:#475569;text-decoration:none;font-size:11px;font-weight:800;border:1px solid #e5eaf1}
.ct-home-intent a:hover{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}
.home-section-title{letter-spacing:-.035em!important}

/* ---------- DARK MODE ---------- */
html[data-theme="dark"] body{background:#09111f!important;color:#e5e7eb}
html[data-theme="dark"] .ct-v7-nav{background:rgba(9,17,31,.92);border-color:#203047;box-shadow:0 1px 12px rgba(0,0,0,.24)}
html[data-theme="dark"] .ct-v7-brand{color:#f8fafc!important}
html[data-theme="dark"] .ct-v7-nav-links a{color:#cbd5e1!important}
html[data-theme="dark"] .ct-v7-nav-links a:hover,html[data-theme="dark"] .ct-v7-nav-links a:focus-visible{background:#142033;color:#93c5fd!important}
html[data-theme="dark"] .ct-v7-search-btn,html[data-theme="dark"] .ct-v7-icon-btn,html[data-theme="dark"] .ct-v7-menu-btn{background:#111c2e;color:#cbd5e1;border-color:#304159}
html[data-theme="dark"] .ct-v7-back{background:#13284b;border-color:#315b9d;color:#93c5fd!important}
html[data-theme="dark"] .ct-v7-search-kbd{background:#0f172a;border-color:#334155;color:#94a3b8}
html[data-theme="dark"] body.ct-v7-tool .header-text h1,html[data-theme="dark"] body.ct-v7-tool .page-hero h1,html[data-theme="dark"] body.ct-v7-tool .hero h1{color:#f8fafc!important}
html[data-theme="dark"] body.ct-v7-tool .header-text p,html[data-theme="dark"] body.ct-v7-tool .page-hero p{color:#b8c4d5!important}
html[data-theme="dark"] body.ct-v7-tool .calc-card,html[data-theme="dark"] body.ct-v7-tool .card,html[data-theme="dark"] body.ct-v7-tool .results-box,html[data-theme="dark"] body.ct-v7-tool .seo-article,html[data-theme="dark"] body.ct-v7-tool .seo-section,html[data-theme="dark"] body.ct-v7-tool .faq-section,html[data-theme="dark"] body.ct-v7-tool .related-section{background:#101b2d!important;border-color:#2b3a52!important;color:#e5e7eb!important;box-shadow:none}
html[data-theme="dark"] body.ct-v7-tool .input-group input,html[data-theme="dark"] body.ct-v7-tool .input-group select,html[data-theme="dark"] body.ct-v7-tool .inp-grp input,html[data-theme="dark"] body.ct-v7-tool .inp-grp select,html[data-theme="dark"] body.ct-v7-tool .field input,html[data-theme="dark"] body.ct-v7-tool .field select,html[data-theme="dark"] body.ct-v7-tool textarea{background:#0b1422!important;color:#f8fafc!important;border-color:#40516a!important}
html[data-theme="dark"] .ct-v7-next-step a{background:#111c2e;border-color:#2b3a52;color:#e5e7eb}
html[data-theme="dark"] .ct-home-hero{background:radial-gradient(circle at 75% 24%,rgba(59,130,246,.12),transparent 28%),linear-gradient(180deg,#0d1727,#0b1320)!important;border-color:#1e2d41}
html[data-theme="dark"] .ct-home-product-card{background:rgba(13,24,41,.88);border-color:#2b3a52;box-shadow:0 24px 70px rgba(0,0,0,.28)}
html[data-theme="dark"] .ct-home-product-card .ct-mini-main{background:#0d1726;border-color:#29384e}
html[data-theme="dark"] .ct-home-product-card .ct-mini-value{color:#f8fafc}
html[data-theme="dark"] .ct-home-intent{background:#101b2d;border-color:#2b3a52}
html[data-theme="dark"] .ct-home-intent strong{color:#f8fafc}
html[data-theme="dark"] .ct-home-intent a,html[data-theme="dark"] .ct-home-quicklinks a{background:#111c2e;color:#cbd5e1;border-color:#2b3a52}
html[data-theme="dark"] .ct-home-quicklinks a:hover,html[data-theme="dark"] .ct-home-intent a:hover{background:#13284b;color:#93c5fd;border-color:#315b9d}

/* ---------- MOBILE ---------- */
@media(max-width:900px){
  .ct-v7-nav-inner{width:min(100% - 20px,1220px)}
  .ct-v7-nav-links{display:none}
  .ct-v7-menu-btn{display:inline-flex}
  .ct-v7-search-btn{min-width:0;width:40px;padding:0;justify-content:center;font-size:0}
  .ct-v7-search-btn svg{display:block!important}
  .ct-v7-search-kbd{display:none}
  .ct-v7-search-label{display:none}
  .ct-v7-back{display:none}
  .ct-home-hero{padding:38px 14px 30px!important}
  .ct-home-hero .hero-inner{grid-template-columns:1fr;gap:24px}
  .ct-home-hero .hero-visual{display:block!important}
  .ct-home-hero h1{font-size:clamp(35px,9.5vw,54px)!important}
  .ct-home-product-card{max-width:620px;margin:0 auto;width:100%}
  .ct-home-subnav{margin-top:-8px}
}
@media(max-width:640px){
  .ct-v7-nav{height:62px}
  .ct-v7-brand-mark{width:34px;height:34px}
  .ct-v7-brand-text{font-size:18px}
  .ct-v7-nav-inner{gap:7px}
  .ct-v7-search-btn,.ct-v7-icon-btn,.ct-v7-menu-btn{width:40px;height:40px}
  .ct-home-hero .hero-inner{gap:18px}
  .ct-home-hero .hero-tagline{font-size:15px;line-height:1.55}
  .ct-home-hero .hero-search input{height:54px;font-size:16px}
  .ct-home-quicklinks{gap:6px}
  .ct-home-quicklinks a{font-size:10px;padding:6px 9px}
  .ct-home-hero .hero-trust{gap:6px}
  .ct-home-hero .trust-chip{font-size:10px}
  body.ct-v7-tool .breadcrumb{padding-top:16px;margin-bottom:4px}
  body.ct-v7-tool .header-text h1,body.ct-v7-tool .page-hero h1{font-size:31px!important}
  body.ct-v7-tool .header-text p,body.ct-v7-tool .page-hero p{font-size:14px!important}
  body.ct-v7-tool .calc-card,body.ct-v7-tool .card{border-radius:15px!important}
  body.ct-v7-tool .input-group input,body.ct-v7-tool .input-group select,body.ct-v7-tool .inp-grp input,body.ct-v7-tool .inp-grp select,body.ct-v7-tool .field input,body.ct-v7-tool .field select{min-height:50px}
  .ct-v7-next-step{grid-template-columns:1fr}
  .ct-home-product-card{padding:14px;border-radius:18px}
  .ct-home-product-card .ct-mini-value{font-size:25px}
  .ct-home-product-card .ct-mini-bar{grid-template-columns:75px 1fr 56px}
  .ct-home-intent{width:calc(100% - 20px);padding:10px 11px}
  .ct-home-intent strong{display:none}
}
@media(max-width:420px){
  .ct-v7-brand-text{font-size:17px}
  .ct-home-hero h1{font-size:34px!important}
  .ct-home-product-card .ct-mini-bar{grid-template-columns:68px 1fr 48px;font-size:9px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ct-v7-nav *,.ct-v7-brand *{transition:none!important}}


/* Mobile menu + favourites compatibility */
.ct-v7-mobile-panel{position:fixed;top:68px;left:0;right:0;z-index:1999;background:rgba(255,255,255,.98);border-bottom:1px solid #dbe4ee;box-shadow:0 14px 30px rgba(15,23,42,.10)}
.ct-v7-mobile-panel a{color:#0f172a;text-decoration:none;font-size:14px;font-weight:800;padding:13px 12px;border:1px solid #e2e8f0;border-radius:11px;background:#f8fafc}
.ct-v7-mobile-panel a:hover{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}
.nav-fav-btn{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 11px;border-radius:11px;background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe;font:inherit;font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap}
.nav-fav-btn:hover{background:#2563eb;color:#fff;border-color:#2563eb}
html[data-theme="dark"] .nav-fav-btn{background:#13284b;color:#93c5fd;border-color:#315b9d}
html[data-theme="dark"] .nav-fav-btn:hover{background:#2563eb;color:#fff}
@media(max-width:900px){.ct-v7-mobile-panel{top:62px}.nav-fav-btn{display:none}}

/* ---------- v1.1 INTERACTION + MOBILE DARK HARDENING ---------- */
.ct-v7-search-btn{cursor:pointer;text-decoration:none!important}
.ct-v7-search-btn:focus-visible,.ct-v7-icon-btn:focus-visible,.ct-v7-menu-btn:focus-visible{outline:3px solid rgba(37,99,235,.28);outline-offset:2px}
.ct-home-intent a{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
html[data-theme="dark"] .ct-home-hero .hero-search input{background:#0b1422!important;color:#f8fafc!important;border-color:#40516a!important}
html[data-theme="dark"] .ct-home-hero .hero-search input::placeholder{color:#8ea0b6!important}
html[data-theme="dark"] .ct-home-search-label{color:#cbd5e1!important}
html[data-theme="dark"] .ct-home-quicklinks a{background:#111c2e!important;border-color:#2b3a52!important;color:#cbd5e1!important}
html[data-theme="dark"] .ct-home-intent{background:#101b2d!important;border-color:#2b3a52!important}
html[data-theme="dark"] .ct-home-intent a{background:#111c2e!important;border-color:#2b3a52!important;color:#e2e8f0!important}
html[data-theme="dark"] .ct-v7-mobile-panel{background:#0b1422!important;border-color:#2b3a52!important}
html[data-theme="dark"] .ct-v7-mobile-panel a{background:#111c2e!important;color:#e2e8f0!important;border-color:#2b3a52!important}
@media(max-width:640px){
  .ct-v7-nav-inner{width:calc(100% - 12px);gap:6px}
  .ct-v7-brand-text{font-size:17px}
  .ct-v7-search-btn,.ct-v7-icon-btn,.ct-v7-menu-btn{width:42px!important;height:42px!important;min-width:42px!important;border-radius:11px!important}
  .ct-v7-mobile-panel{position:sticky;top:62px;z-index:1999;background:rgba(255,255,255,.98);border-bottom:1px solid var(--ct-border);box-shadow:0 8px 20px rgba(15,23,42,.08)}
  .ct-v7-mobile-panel .ct-v7-nav-inner{display:grid!important;grid-template-columns:1fr 1fr!important;height:auto!important;padding:12px 10px 14px!important}
  .ct-v7-mobile-panel a{min-height:44px;display:flex;align-items:center;padding:10px 12px;border:1px solid var(--ct-border);border-radius:11px;background:#fff;color:var(--ct-ink);text-decoration:none;font-size:13px;font-weight:800}
  .ct-home-intent{width:calc(100% - 20px);padding:10px 12px;gap:8px}
  .ct-home-intent strong{position:sticky;left:0;background:inherit;padding-right:4px}
  body.ct-v7-tool .header-text h1,body.ct-v7-tool .page-hero h1{font-size:clamp(28px,8vw,34px)!important}
  body.ct-v7-tool .header-text p,body.ct-v7-tool .page-hero p{font-size:14px!important;line-height:1.55!important}
}


/* ---- calcutools-design-v1.3.css ---- */
/* CalcuTools Design System v1.3 • mobile + interaction polish • Sep 2026 */
html{scroll-padding-top:78px}
body{overflow-x:hidden}

/* Search: reserve space for the action button so text never sits underneath it. */
.ct-home-hero .hero-search{width:100%;max-width:650px}
.ct-home-hero .hero-search input{padding-left:18px!important;padding-right:74px!important;min-width:0;overflow:hidden;text-overflow:ellipsis}
.ct-home-hero .hero-search-btn{right:7px;width:50px;height:50px;border-radius:13px;z-index:4;touch-action:manipulation}
.ct-home-hero .hero-search-btn:focus-visible{outline:3px solid rgba(37,99,235,.3);outline-offset:2px}
#searchResults{max-width:100%;z-index:2100}

/* Intent rail: desktop stays compact, mobile becomes a real two-column decision grid. */
.ct-home-subnav{margin-top:-8px!important}
.ct-home-intent{overflow:visible!important;flex-wrap:wrap!important}
.ct-home-intent strong{flex:0 0 auto}
.ct-home-intent a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}

/* Mobile goal cards: entire card can be targeted, tags remain individual links. */
.goal-card{touch-action:manipulation}
.goal-card:focus-within{border-color:#93c5fd;box-shadow:0 0 0 3px rgba(37,99,235,.10)}
.goal-card .goal-tag{position:relative;z-index:3}

/* Home preview: never clip calculated values. */
.ct-home-product-card .ct-mini-bar{min-width:0}
.ct-home-product-card .ct-mini-bar>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ct-home-product-card .ct-mini-bar strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}

/* Dark mode contrast. */
html[data-theme="dark"] .ct-home-hero .hero-tagline,
html[data-theme="dark"] .ct-home-hero .hero-tagline strong{color:#d0d9e6!important}
html[data-theme="dark"] .ct-home-hero .hero-badge{color:#d1fae5!important}
html[data-theme="dark"] .ct-home-hero .trust-chip{color:#cbd5e1!important}
html[data-theme="dark"] .ct-home-intent{box-shadow:0 8px 24px rgba(0,0,0,.18)}
html[data-theme="dark"] .goal-card{background:#101b2d!important;border-color:#2b3a52!important;color:#e5e7eb}
html[data-theme="dark"] .goal-title{color:#f8fafc!important}
html[data-theme="dark"] .goal-desc{color:#c2ccda!important}
html[data-theme="dark"] .goal-tag{background:#172235!important;border-color:#34445b!important;color:#d5deea!important}
html[data-theme="dark"] .goal-card:hover .goal-tag{background:#13284b!important;color:#93c5fd!important;border-color:#315b9d!important}
html[data-theme="dark"] .ct-home-product-card .ct-mini-top,
html[data-theme="dark"] .ct-home-product-card .ct-mini-label,
html[data-theme="dark"] .ct-home-product-card .ct-mini-bar{color:#b9c5d6!important}
html[data-theme="dark"] .ct-home-product-card .ct-mini-bar strong{color:#e5edf7!important}

/* Dynamic browser chrome / mobile safe areas. */
.ct-v7-nav{padding-top:env(safe-area-inset-top);height:calc(68px + env(safe-area-inset-top))}
.ct-v7-nav-inner{height:68px}
@media(max-width:900px){
  .ct-v7-nav{height:calc(62px + env(safe-area-inset-top))}
  .ct-v7-nav-inner{height:62px}
}

@media(max-width:640px){
  .ct-home-hero{padding-left:16px!important;padding-right:16px!important}
  .ct-home-hero .hero-search input{height:56px!important;padding-left:16px!important;padding-right:70px!important;font-size:16px!important}
  .ct-home-hero .hero-search-btn{width:48px;height:48px;right:6px}
  .ct-home-intent{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;width:calc(100% - 20px)!important;padding:12px!important;overflow:visible!important}
  .ct-home-intent strong{grid-column:1/-1;display:block!important;font-size:12px;padding:0 2px 2px}
  .ct-home-intent a{width:100%;min-height:44px;display:flex;align-items:center;justify-content:center;text-align:center;padding:9px 8px;font-size:12px;white-space:normal;line-height:1.25}
  .ct-home-product-card .ct-mini-bar{grid-template-columns:72px minmax(0,1fr) 58px!important;gap:7px!important}
  .ct-home-product-card .ct-mini-bar strong{font-size:10px}
  .ct-home-hero .hero-trust{align-items:flex-start}
  .ct-v7-nav-inner{width:calc(100% - 16px)!important}
}
@media(max-width:360px){
  .ct-home-intent{grid-template-columns:1fr!important}
  .ct-home-intent strong{grid-column:auto}
  .ct-home-product-card .ct-mini-bar{grid-template-columns:65px minmax(0,1fr) 52px!important;font-size:9px}
  .ct-home-product-card .ct-mini-value{font-size:24px}
}

/* Calculator pages: keep important result values visible on narrow screens. */
@media(max-width:640px){
  body.ct-v7-tool .final-total .val,body.ct-v7-tool .metric-val{overflow-wrap:anywhere}
  body.ct-v7-tool .calc-card,body.ct-v7-tool .card{padding:18px!important}
  body.ct-v7-tool .breadcrumb{padding-left:2px;padding-right:2px}
  body.ct-v7-tool input,body.ct-v7-tool select,body.ct-v7-tool textarea{max-width:100%;}
}

/* Menu panel must sit below the safe-area-aware header. */
.ct-v7-mobile-panel{top:calc(68px + env(safe-area-inset-top))!important}
@media(max-width:900px){.ct-v7-mobile-panel{top:calc(62px + env(safe-area-inset-top))!important}}

/* Respect reduced-motion users. */
@media(prefers-reduced-motion:reduce){.goal-card{transition:none!important}.ct-home-product-card *{animation:none!important}}


/* ---- calcutools-design-v1.5.css ---- */
/* CalcuTools Design v1.5 - FINAL THEME CONTRAST + BRAND CONSISTENCY
   Fixes light surfaces with dark-theme text, variable leakage, and footer brand mismatch. */

html[data-theme="dark"] {
  --bg:#0b1220 !important;
  --white:#111827 !important;
  --text:#f8fafc !important;
  --muted:#cbd5e1 !important;
  --border:#334155 !important;
  --primary-light:#172554 !important;
  --ct-bg:#0b1220 !important;
  --ct-surface:#111827 !important;
  --ct-text:#f8fafc !important;
  --ct-muted:#cbd5e1 !important;
  --ct-border:#334155 !important;
}

/* The homepage uses shared variables. Keep every section readable in dark mode. */
html[data-theme="dark"] .section,
html[data-theme="dark"] .trust-bar,
html[data-theme="dark"] .inner,
html[data-theme="dark"] .goal-card,
html[data-theme="dark"] .pop-card,
html[data-theme="dark"] .cat-card,
html[data-theme="dark"] .trend-item,
html[data-theme="dark"] .guide-card {
  color:#f8fafc !important;
}
html[data-theme="dark"] .goal-card,
html[data-theme="dark"] .pop-card,
html[data-theme="dark"] .cat-card,
html[data-theme="dark"] .trend-item,
html[data-theme="dark"] .guide-card {
  background:#111827 !important;
  border-color:#334155 !important;
}
html[data-theme="dark"] .sec-title,
html[data-theme="dark"] .goal-title,
html[data-theme="dark"] .pop-name,
html[data-theme="dark"] .cat-label,
html[data-theme="dark"] .trend-name,
html[data-theme="dark"] .guide-title {
  color:#f8fafc !important;
}
html[data-theme="dark"] .sec-sub,
html[data-theme="dark"] .goal-desc,
html[data-theme="dark"] .pop-desc,
html[data-theme="dark"] .cat-count,
html[data-theme="dark"] .trend-desc,
html[data-theme="dark"] .guide-summary,
html[data-theme="dark"] .guide-meta,
html[data-theme="dark"] .trust-item-desc {
  color:#cbd5e1 !important;
}
html[data-theme="dark"] .goal-tag,
html[data-theme="dark"] .show-more-btn {
  background:#1e293b !important;
  border-color:#475569 !important;
  color:#e2e8f0 !important;
}

/* Neutralise common hard-coded white surfaces that otherwise inherit dark text rules. */
html[data-theme="dark"] [style*="background:#fff"],
html[data-theme="dark"] [style*="background: #fff"],
html[data-theme="dark"] [style*="background:white"],
html[data-theme="dark"] [style*="background: white"] {
  background:#111827 !important;
  color:#e5e7eb !important;
  border-color:#334155 !important;
}

/* If an element explicitly declares dark/light text inline, preserve readability in dark mode. */
html[data-theme="dark"] [style*="color:#0f172a"],
html[data-theme="dark"] [style*="color: #0f172a"],
html[data-theme="dark"] [style*="color:#111827"],
html[data-theme="dark"] [style*="color: #111827"],
html[data-theme="dark"] [style*="color:#1e293b"],
html[data-theme="dark"] [style*="color: #1e293b"],
html[data-theme="dark"] [style*="color:#475569"],
html[data-theme="dark"] [style*="color: #475569"],
html[data-theme="dark"] [style*="color:#64748b"],
html[data-theme="dark"] [style*="color: #64748b"] {
  color:#cbd5e1 !important;
}

/* Footer and header are the same CalcuTools brand, not two logo systems. */
.ct-footer-brand {
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  text-decoration:none !important;
  border:0 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}
.ct-footer-brand .ct-brand-mark,
.ct-v7-brand .ct-brand-mark {
  width:34px !important;
  height:34px !important;
  display:block !important;
  flex:0 0 auto !important;
}
.ct-footer-brand .ct-brand-text,
.ct-v7-brand .ct-v7-brand-text {
  font-family:'Sora',ui-sans-serif,system-ui,sans-serif !important;
  font-size:19px !important;
  font-weight:850 !important;
  letter-spacing:-.035em !important;
  color:#fff !important;
}
.ct-footer-brand .ct-brand-text span,
.ct-v7-brand .ct-v7-brand-text span { color:#60a5fa !important; }
html[data-theme="dark"] .ct-footer-brand .ct-brand-text,
html[data-theme="dark"] .ct-v7-brand .ct-v7-brand-text { color:#f8fafc !important; }
html[data-theme="dark"] .ct-footer-brand .ct-brand-text span,
html[data-theme="dark"] .ct-v7-brand .ct-v7-brand-text span { color:#60a5fa !important; }

@media(max-width:520px){
  .ct-footer-brand .ct-brand-mark, .ct-v7-brand .ct-brand-mark { width:30px !important; height:30px !important; }
  .ct-footer-brand .ct-brand-text, .ct-v7-brand .ct-v7-brand-text { font-size:17px !important; }
}


/* ---- calcutools-design-v1.7.css ---- */
/* CalcuTools Design v1.6 • DARK MODE ROOT FIX + BRAND LOCK + PRODUCT PREVIEW
   Final override intentionally loaded after every earlier inline/external style. */

/* ---------- DARK THEME ROOT ---------- */
html[data-theme="dark"] {
  color-scheme: dark !important;
  --bg:#0b1220 !important;
  --white:#111827 !important;
  --text:#f8fafc !important;
  --muted:#cbd5e1 !important;
  --border:#334155 !important;
  --primary-light:#172554 !important;
  --ct-bg:#0b1220 !important;
  --ct-surface:#111827 !important;
  --ct-text:#f8fafc !important;
  --ct-muted:#cbd5e1 !important;
  --ct-border:#334155 !important;
}

html[data-theme="dark"],
html[data-theme="dark"] body {
  background:#0b1220 !important;
  color:#f8fafc !important;
}

/* Homepage surfaces must actually switch theme. This is the root cause of the
   disappearing subtitle/section text: old rules kept white/light surfaces. */
html[data-theme="dark"] .hero,
html[data-theme="dark"] .section,
html[data-theme="dark"] .all-calcs-bg {
  background:#0b1220 !important;
  color:#f8fafc !important;
}

html[data-theme="dark"] .hero {
  background:linear-gradient(135deg,#0b1220 0%,#101a2e 58%,#0b1220 100%) !important;
}

html[data-theme="dark"] .trust-bar {
  background:#0f172a !important;
  color:#f8fafc !important;
  border-top:1px solid #1e293b !important;
  border-bottom:1px solid #1e293b !important;
}

/* ---------- TEXT CONTRAST ---------- */
html[data-theme="dark"] .sec-title,
html[data-theme="dark"] .sec-sub,
html[data-theme="dark"] .view-all,
html[data-theme="dark"] .goal-title,
html[data-theme="dark"] .goal-desc,
html[data-theme="dark"] .pop-name,
html[data-theme="dark"] .pop-desc,
html[data-theme="dark"] .cat-label,
html[data-theme="dark"] .cat-count,
html[data-theme="dark"] .trend-name,
html[data-theme="dark"] .trend-desc,
html[data-theme="dark"] .guide-title,
html[data-theme="dark"] .guide-summary,
html[data-theme="dark"] .guide-meta,
html[data-theme="dark"] .trust-item-desc,
html[data-theme="dark"] .calc-item-name,
html[data-theme="dark"] .calc-item-desc,
html[data-theme="dark"] .hero-tagline,
html[data-theme="dark"] .hero-tagline strong,
html[data-theme="dark"] .ct-home-search-label,
html[data-theme="dark"] .trust-chip {
  color:#f8fafc !important;
}

html[data-theme="dark"] .sec-sub,
html[data-theme="dark"] .goal-desc,
html[data-theme="dark"] .pop-desc,
html[data-theme="dark"] .cat-count,
html[data-theme="dark"] .trend-desc,
html[data-theme="dark"] .guide-summary,
html[data-theme="dark"] .guide-meta,
html[data-theme="dark"] .trust-item-desc,
html[data-theme="dark"] .calc-item-desc,
html[data-theme="dark"] .hero-tagline,
html[data-theme="dark"] .trust-chip,
html[data-theme="dark"] .cat-count {
  color:#cbd5e1 !important;
}

/* Hard-coded text colors from legacy/inline styles. */
html[data-theme="dark"] [style*="color:#0f172a"],
html[data-theme="dark"] [style*="color: #0f172a"],
html[data-theme="dark"] [style*="color:#111827"],
html[data-theme="dark"] [style*="color: #111827"],
html[data-theme="dark"] [style*="color:#1e293b"],
html[data-theme="dark"] [style*="color: #1e293b"],
html[data-theme="dark"] [style*="color:#334155"],
html[data-theme="dark"] [style*="color: #334155"],
html[data-theme="dark"] [style*="color:#475569"],
html[data-theme="dark"] [style*="color: #475569"],
html[data-theme="dark"] [style*="color:#64748b"],
html[data-theme="dark"] [style*="color: #64748b"] {
  color:#cbd5e1 !important;
}

/* ---------- LIGHT SURFACES THAT WERE LEFT BEHIND ---------- */
html[data-theme="dark"] .goal-card,
html[data-theme="dark"] .pop-card,
html[data-theme="dark"] .cat-card,
html[data-theme="dark"] .trend-item,
html[data-theme="dark"] .guide-card,
html[data-theme="dark"] .calc-item,
html[data-theme="dark"] #searchResults {
  background:#111827 !important;
  border-color:#334155 !important;
  color:#f8fafc !important;
}

html[data-theme="dark"] .goal-tag,
html[data-theme="dark"] .show-more-btn {
  background:#1e293b !important;
  border-color:#475569 !important;
  color:#e2e8f0 !important;
}

html[data-theme="dark"] .goal-tag:hover,
html[data-theme="dark"] .show-more-btn:hover {
  background:#172554 !important;
  color:#bfdbfe !important;
  border-color:#3b82f6 !important;
}

html[data-theme="dark"] .badge-hot {background:#3b1d22 !important;color:#fecaca !important;border-color:#7f1d1d !important;}
html[data-theme="dark"] .badge-new {background:#123323 !important;color:#bbf7d0 !important;border-color:#166534 !important;}
html[data-theme="dark"] .badge-trending {background:#3b2a0f !important;color:#fde68a !important;border-color:#854d0e !important;}

/* Generic inline white backgrounds should not create light islands. */
html[data-theme="dark"] [style*="background:#fff"],
html[data-theme="dark"] [style*="background: #fff"],
html[data-theme="dark"] [style*="background:white"],
html[data-theme="dark"] [style*="background: white"] {
  background:#111827 !important;
  border-color:#334155 !important;
}

/* Search field: dark background + readable input and placeholder. */
html[data-theme="dark"] .hero-search input,
html[data-theme="dark"] .search-wrap input,
html[data-theme="dark"] input,
html[data-theme="dark"] select,
html[data-theme="dark"] textarea {
  background:#111827 !important;
  border-color:#475569 !important;
  color:#f8fafc !important;
}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder {
  color:#94a3b8 !important;
  opacity:1 !important;
}

/* ---------- HERO VERIFICATION BADGE ---------- */
html[data-theme="dark"] .hero-badge {
  background:#123323 !important;
  color:#dcfce7 !important;
  border:1px solid #166534 !important;
}
html[data-theme="dark"] .hero-badge::before {
  background:#22c55e !important;
  color:#062e16 !important;
}

/* ---------- NAVIGATION ---------- */
html[data-theme="dark"] .ct-v7-nav,
html[data-theme="dark"] .ct-nav {
  background:#0f172a !important;
  border-bottom-color:#243244 !important;
  box-shadow:0 1px 10px rgba(0,0,0,.24) !important;
}
html[data-theme="dark"] .ct-v7-nav-links a,
html[data-theme="dark"] .ct-nav-links a {
  color:#cbd5e1 !important;
}
html[data-theme="dark"] .ct-v7-nav-links a:hover,
html[data-theme="dark"] .ct-nav-links a:hover {
  color:#f8fafc !important;
  background:#1e293b !important;
}
html[data-theme="dark"] .ct-v7-search-btn {
  color:#cbd5e1 !important;
  border-color:#334155 !important;
  background:#111827 !important;
}

/* ---------- ONE LOGO SYSTEM, BOTH LIGHT AND DARK ---------- */
.ct-v7-brand,
.ct-footer-brand {
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  text-decoration:none !important;
  white-space:nowrap !important;
}

.ct-v7-brand .ct-brand-mark,
.ct-footer-brand .ct-brand-mark {
  width:34px !important;
  height:34px !important;
  flex:0 0 34px !important;
  display:block !important;
  color:#2563eb !important;
}

/* SVG attributes are fixed in v1.6 JS, and these rules also protect the mark
   if another page still injects the old currentColor variant. */
.ct-v7-brand .ct-brand-mark rect,
.ct-footer-brand .ct-brand-mark rect {
  fill:#2563eb !important;
}
.ct-v7-brand .ct-brand-mark path:first-of-type,
.ct-footer-brand .ct-brand-mark path:first-of-type {
  stroke:#fff !important;
}
.ct-v7-brand .ct-brand-mark path:last-of-type,
.ct-footer-brand .ct-brand-mark path:last-of-type {
  stroke:#60a5fa !important;
}

.ct-v7-brand .ct-v7-brand-text,
.ct-footer-brand .ct-v7-brand-text,
.ct-footer-brand .ct-brand-text {
  font-family:'Sora',ui-sans-serif,system-ui,sans-serif !important;
  font-size:19px !important;
  font-weight:850 !important;
  line-height:1 !important;
  letter-spacing:-.035em !important;
  color:#0f172a !important;
}
.ct-v7-brand .ct-v7-brand-text span,
.ct-footer-brand .ct-v7-brand-text span,
.ct-footer-brand .ct-brand-text span {
  color:#2563eb !important;
}
html[data-theme="dark"] .ct-v7-brand .ct-v7-brand-text,
html[data-theme="dark"] .ct-footer-brand .ct-v7-brand-text,
html[data-theme="dark"] .ct-footer-brand .ct-brand-text {
  color:#f8fafc !important;
}
html[data-theme="dark"] .ct-v7-brand .ct-v7-brand-text span,
html[data-theme="dark"] .ct-footer-brand .ct-v7-brand-text span,
html[data-theme="dark"] .ct-footer-brand .ct-brand-text span {
  color:#60a5fa !important;
}

/* ---------- CALCUTOOLS RESULT PREVIEW: MAKE IT A REAL PRODUCT SIGNAL ---------- */
.ct-home-product-card {
  width:min(100%,560px) !important;
  border-radius:24px !important;
}
.ct-home-product-card .ct-mini-top {
  gap:10px !important;
  flex-wrap:wrap !important;
}
.ct-home-product-card .ct-mini-top span {
  border-radius:999px !important;
  padding:5px 9px !important;
  line-height:1.2 !important;
}
.ct-home-product-card .ct-mini-top span:first-child {
  background:#eff6ff !important;
  color:#1d4ed8 !important;
  border:1px solid #bfdbfe !important;
}
.ct-home-product-card .ct-mini-top span:last-child {
  background:#ecfdf5 !important;
  color:#047857 !important;
  border:1px solid #a7f3d0 !important;
}

.ct-home-product-card .ct-mini-workflow {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:7px !important;
  margin:13px 0 2px !important;
}
.ct-home-product-card .ct-mini-step {
  min-width:0 !important;
  padding:8px 7px !important;
  border:1px solid #dbe4ee !important;
  border-radius:10px !important;
  background:#fff !important;
  color:#475569 !important;
  text-align:center !important;
  font-size:9px !important;
  font-weight:800 !important;
  line-height:1.25 !important;
}
.ct-home-product-card .ct-mini-step.is-active {
  border-color:#93c5fd !important;
  background:#eff6ff !important;
  color:#1d4ed8 !important;
}

html[data-theme="dark"] .ct-home-product-card {
  background:#0d1829 !important;
  border-color:#2b3a52 !important;
  box-shadow:0 24px 70px rgba(0,0,0,.28) !important;
}
html[data-theme="dark"] .ct-home-product-card .ct-mini-main {
  background:#101b2d !important;
  border-color:#2b3a52 !important;
}
html[data-theme="dark"] .ct-home-product-card .ct-mini-top span:first-child {
  background:#172554 !important;
  color:#bfdbfe !important;
  border-color:#315b9d !important;
}
html[data-theme="dark"] .ct-home-product-card .ct-mini-top span:last-child {
  background:#123323 !important;
  color:#bbf7d0 !important;
  border-color:#166534 !important;
}
html[data-theme="dark"] .ct-home-product-card .ct-mini-step {
  background:#111827 !important;
  border-color:#334155 !important;
  color:#cbd5e1 !important;
}
html[data-theme="dark"] .ct-home-product-card .ct-mini-step.is-active {
  background:#172554 !important;
  border-color:#3b82f6 !important;
  color:#bfdbfe !important;
}

/* ---------- MOBILE SAFETY ---------- */
@media(max-width:640px){
  .ct-v7-brand .ct-brand-mark,
  .ct-footer-brand .ct-brand-mark { width:30px !important; height:30px !important; flex-basis:30px !important; }
  .ct-v7-brand .ct-v7-brand-text,
  .ct-footer-brand .ct-v7-brand-text,
  .ct-footer-brand .ct-brand-text { font-size:17px !important; }
  .ct-home-product-card .ct-mini-workflow { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media(max-width:360px){
  .ct-home-product-card .ct-mini-workflow { grid-template-columns:1fr 1fr !important; }
  .ct-home-product-card .ct-mini-step { font-size:8px !important; }
}


/* =========================================================
   CalcuTools Design v1.7 • PRODUCT DEMO + THEME HARDENING
   ========================================================= */

/* A final semantic layer for common legacy surfaces. */
html[data-theme="dark"] {
  --ct-surface-2:#162033 !important;
  --ct-surface-3:#1b2940 !important;
  --ct-text-soft:#d7e1ee !important;
  --ct-primary-soft:#1a2e5a !important;
}
html[data-theme="dark"] .hero-badge,
html[data-theme="dark"] .hero-badge * {
  color:#dcfce7 !important;
}
html[data-theme="dark"] .sec-sub,
html[data-theme="dark"] .footer-desc,
html[data-theme="dark"] .footer-bottom,
html[data-theme="dark"] .footer-bottom-links a,
html[data-theme="dark"] .footer-col a {
  color:#cbd5e1 !important;
}
html[data-theme="dark"] .section[style*="background:var(--bg)"],
html[data-theme="dark"] .section[style*="background: var(--bg)"] {
  background:#0b1220 !important;
}

/* ---------- PRODUCT DEMO ---------- */
.ct-home-product-card {
  position:relative !important;
  overflow:hidden !important;
}
.ct-home-product-card::after {
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:-80px;
  top:-80px;
  border-radius:50%;
  background:rgba(37,99,235,.06);
  pointer-events:none;
}
.ct-mini-top .ct-mini-kicker {
  font-size:10px !important;
  font-weight:800 !important;
  letter-spacing:.02em !important;
  color:#64748b !important;
}
.ct-mini-top .ct-mini-example {
  margin-left:auto !important;
  background:#f8fafc !important;
  border:1px solid #dbe4ee !important;
  color:#64748b !important;
  border-radius:999px !important;
  padding:4px 8px !important;
  font-size:9px !important;
  font-weight:800 !important;
}
.ct-mini-context {
  margin:-5px 0 12px !important;
  font-size:10px !important;
  line-height:1.45 !important;
  color:#64748b !important;
}
.ct-mini-inputs {
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;
  margin:-3px 0 10px !important;
}
.ct-mini-input-chip {
  border:1px solid #dbe4ee !important;
  background:#f8fafc !important;
  color:#475569 !important;
  border-radius:8px !important;
  padding:4px 7px !important;
  font-size:9px !important;
  font-weight:750 !important;
}
.ct-home-product-card .ct-mini-workflow {
  margin:12px 0 10px !important;
}
.ct-home-product-card .ct-mini-step {
  appearance:none !important;
  -webkit-appearance:none !important;
  font:inherit !important;
  cursor:pointer !important;
  transition:background .15s ease,border-color .15s ease,transform .15s ease !important;
}
.ct-home-product-card .ct-mini-step:hover { transform:translateY(-1px) !important; }
.ct-home-product-card .ct-mini-step:focus-visible {
  outline:3px solid rgba(37,99,235,.28) !important;
  outline-offset:2px !important;
}
.ct-home-product-card .ct-mini-step.is-selected {
  background:#eff6ff !important;
  border-color:#60a5fa !important;
  color:#1d4ed8 !important;
}
.ct-mini-status {
  min-height:38px !important;
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:9px 10px !important;
  margin:2px 0 10px !important;
  border-radius:10px !important;
  background:#f8fafc !important;
  border:1px solid #e2e8f0 !important;
  color:#475569 !important;
  font-size:10px !important;
  line-height:1.4 !important;
}
.ct-mini-status b { color:#0f172a !important; }
.ct-mini-links {
  display:flex !important;
  gap:8px !important;
  margin-top:12px !important;
}
.ct-mini-links a {
  flex:1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:38px !important;
  text-align:center !important;
  padding:9px 10px !important;
  border-radius:10px !important;
  font-size:10px !important;
  font-weight:800 !important;
  border:1px solid #dbe4ee !important;
  background:#fff !important;
  color:#475569 !important;
  text-decoration:none !important;
}
.ct-mini-links a.primary {
  background:#2563eb !important;
  color:#fff !important;
  border-color:#2563eb !important;
}
html[data-theme="dark"] .ct-mini-top .ct-mini-kicker,
html[data-theme="dark"] .ct-mini-context,
html[data-theme="dark"] .ct-mini-top .ct-mini-example { color:#cbd5e1 !important; }
html[data-theme="dark"] .ct-mini-top .ct-mini-example,
html[data-theme="dark"] .ct-mini-input-chip {
  background:#172033 !important;
  border-color:#334155 !important;
}
html[data-theme="dark"] .ct-mini-input-chip { color:#d7e1ee !important; }
html[data-theme="dark"] .ct-mini-status {
  background:#172033 !important;
  border-color:#334155 !important;
  color:#cbd5e1 !important;
}
html[data-theme="dark"] .ct-mini-status b { color:#f8fafc !important; }
html[data-theme="dark"] .ct-home-product-card .ct-mini-step.is-selected {
  background:#172554 !important;
  border-color:#3b82f6 !important;
  color:#bfdbfe !important;
}
html[data-theme="dark"] .ct-mini-links a {
  background:#111827 !important;
  border-color:#334155 !important;
  color:#d7e1ee !important;
}
html[data-theme="dark"] .ct-mini-links a.primary {
  background:#2563eb !important;
  color:#fff !important;
  border-color:#2563eb !important;
}

/* Show the product proof on small screens too, without making the hero huge. */
@media(max-width:768px){
  .hero-visual{display:block !important; margin:6px auto 0 !important; width:100% !important;}
  .ct-home-product-card{max-width:100% !important; padding:14px !important; border-radius:18px !important;}
  .ct-home-product-card .ct-mini-main{padding:14px !important;}
  .ct-home-product-card .ct-mini-value{font-size:25px !important;}
  .ct-mini-links{margin-top:10px !important;}
}
@media(max-width:420px){
  .ct-home-product-card .ct-mini-value{font-size:23px !important;}
  .ct-home-product-card .ct-mini-top{gap:6px !important;}
  .ct-mini-context{font-size:9px !important;}
  .ct-mini-input-chip{font-size:8px !important;}
  .ct-mini-links a{font-size:9px !important;min-height:36px !important;}
}

/* ---------- BRAND LOCK ---------- */
.ct-v7-brand,.ct-footer-brand { text-rendering:geometricPrecision !important; }
.ct-v7-brand .ct-v7-brand-text,.ct-footer-brand .ct-v7-brand-text {
  font-family:'Sora',ui-sans-serif,system-ui,sans-serif !important;
  font-weight:800 !important;
}


/* ---- calcutools-search-v22.css ---- */
/* CalcuTools Universal Search v2.0 */
.ct-search-modal{position:fixed;inset:0;z-index:100000;display:none;align-items:flex-start;justify-content:center;padding:10vh 16px 24px;box-sizing:border-box}
.ct-search-modal.is-open{display:flex}
.ct-search-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(3px)}
.ct-search-dialog{position:relative;width:min(720px,100%);max-height:80vh;display:flex;flex-direction:column;background:#fff;border:1px solid #dbe4ee;border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,.24);overflow:hidden;color:#0f172a}
.ct-search-head{display:flex;align-items:flex-start;justify-content:space-between;padding:22px 22px 12px;gap:16px}
.ct-search-kicker{font-size:10px;font-weight:900;letter-spacing:1.2px;color:#2563eb;margin-bottom:5px}
.ct-search-head h2{margin:0;font-size:20px;line-height:1.25;font-weight:850;color:#0f172a}
.ct-search-head p{margin:5px 0 0;color:#64748b;font-size:12px;line-height:1.45}
.ct-search-close{width:36px;height:36px;border-radius:10px;border:1px solid #e2e8f0;background:#f8fafc;color:#64748b;font-size:25px;line-height:1;cursor:pointer}
.ct-search-field{margin:0 22px;border:2px solid #2563eb;border-radius:14px;height:52px;display:flex;align-items:center;gap:10px;padding:0 12px;background:#fff;box-shadow:0 5px 18px rgba(37,99,235,.10)}
.ct-search-field>span{font-size:18px;color:#2563eb}
.ct-search-field input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#0f172a;font:600 14px/1.2 inherit}
.ct-search-field kbd{font:700 10px/1 inherit;padding:5px 7px;border:1px solid #dbe4ee;border-bottom-width:2px;border-radius:7px;color:#64748b;background:#f8fafc}
.ct-search-suggestions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:11px 22px 8px;font-size:10px;color:#94a3b8}
.ct-search-suggestions button{border:1px solid #e2e8f0;border-radius:999px;background:#f8fafc;color:#475569;padding:6px 9px;font:700 10px inherit;cursor:pointer}
.ct-search-suggestions button:hover{border-color:#93c5fd;color:#1d4ed8;background:#eff6ff}
.ct-universal-results{overflow:auto;padding:4px 12px 12px}
.ct-search-meta{padding:8px 10px;color:#64748b;font-size:10px;font-weight:700}
.ct-search-result{display:flex!important;align-items:center;gap:11px;text-decoration:none;border:1px solid transparent!important;border-radius:12px;padding:10px!important;margin:1px 0;background:transparent!important;transition:.15s}
.ct-search-result:hover,.ct-search-result.is-current{background:#f8fafc!important;border-color:#e2e8f0!important}
.ct-search-result .sr-icon{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:9px;background:#eff6ff;font-size:17px;flex:none}
.ct-search-copy{min-width:0;flex:1}
.ct-search-result .sr-name{color:#0f172a;font-size:13px;font-weight:800;line-height:1.25}
.ct-search-result .sr-cat{color:#64748b;font-size:9px;font-weight:750;margin-top:3px}
.ct-search-desc{color:#94a3b8;font-size:10px;line-height:1.35;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ct-search-arrow{font-size:18px;color:#94a3b8}
.ct-search-empty{padding:34px 18px;text-align:center;color:#64748b;display:grid;gap:5px}
.ct-search-empty-icon{font-size:34px;color:#94a3b8}
.ct-search-empty strong{font-size:14px;color:#0f172a}
.ct-search-empty span{font-size:11px}
.ct-search-foot{display:flex;justify-content:space-between;gap:8px;padding:10px 22px;border-top:1px solid #edf2f7;color:#94a3b8;font-size:9px;font-weight:700}
.ct-search-lock{overflow:hidden!important}
.ct-home-search-label{display:block!important;color:var(--muted)!important}
#searchResults{background:var(--ct-surface,#fff)!important;border-color:var(--ct-border,#e2e8f0)!important;color:var(--ct-text,#0f172a)!important}
.ct-search-meta strong{color:var(--ct-text,#0f172a)}
@media(max-width:640px){
 .ct-search-modal{padding:12vh 10px 18px}
 .ct-search-dialog{max-height:84vh;border-radius:18px}
 .ct-search-head{padding:18px 16px 10px}.ct-search-head h2{font-size:18px}.ct-search-field{margin:0 16px}.ct-search-suggestions{padding-left:16px;padding-right:16px}.ct-search-foot{padding-left:16px;padding-right:16px;flex-wrap:wrap;justify-content:flex-start}
 .ct-search-desc{display:none}.ct-search-result{padding:9px 8px!important}
}
html[data-theme="dark"] .ct-search-backdrop{background:rgba(2,6,23,.74)}
html[data-theme="dark"] .ct-search-dialog{background:#0f172a;border-color:#334155;color:#e2e8f0}
html[data-theme="dark"] .ct-search-head h2{color:#f8fafc}
html[data-theme="dark"] .ct-search-head p{color:#94a3b8}
html[data-theme="dark"] .ct-search-close{background:#1e293b;border-color:#334155;color:#cbd5e1}
html[data-theme="dark"] .ct-search-field{background:#111827;border-color:#60a5fa}
html[data-theme="dark"] .ct-search-field input{color:#f8fafc}
html[data-theme="dark"] .ct-search-field kbd{background:#172033;border-color:#334155;color:#cbd5e1}
html[data-theme="dark"] .ct-search-suggestions button{background:#172033;border-color:#334155;color:#cbd5e1}
html[data-theme="dark"] .ct-search-suggestions button:hover{background:#172554;border-color:#3b82f6;color:#bfdbfe}
html[data-theme="dark"] .ct-search-result:hover,html[data-theme="dark"] .ct-search-result.is-current{background:#172033!important;border-color:#334155!important}
html[data-theme="dark"] .ct-search-result .sr-icon{background:#172554}
html[data-theme="dark"] .ct-search-result .sr-name{color:#f8fafc}
html[data-theme="dark"] .ct-search-result .sr-cat{color:#94a3b8}
html[data-theme="dark"] .ct-search-desc{color:#64748b}
html[data-theme="dark"] .ct-search-meta,.ct-search-empty{color:#94a3b8}
html[data-theme="dark"] .ct-search-empty strong{color:#f8fafc}
html[data-theme="dark"] .ct-search-foot{border-color:#1e293b;color:#64748b}
html[data-theme="dark"] #searchResults{background:#0f172a!important;border-color:#334155!important}
html[data-theme="dark"] #searchResults .sr-name{color:#f8fafc}
html[data-theme="dark"] #searchResults .sr-cat{color:#94a3b8}


/* ---- calcutools-result-intelligence-v2.1.css ---- */
/* CalcuTools Result Intelligence v2.1 */
.ct-ri{--ri-bg:var(--ct-surface,#fff);--ri-text:var(--ct-text,#0f172a);--ri-muted:var(--ct-muted,#64748b);--ri-border:var(--ct-border,#e2e8f0);--ri-primary:var(--ct-primary,#2563eb);--ri-soft:#eff6ff;--ri-soft-border:#bfdbfe;position:relative;margin:18px 0 22px;padding:18px;border:1px solid var(--ri-border);border-radius:16px;background:var(--ri-bg);box-shadow:0 8px 26px rgba(15,23,42,.07);color:var(--ri-text);overflow:hidden}
.ct-ri *{box-sizing:border-box}
.ct-ri-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.ct-ri-kicker{font-size:11px;line-height:1.2;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--ri-primary);margin-bottom:4px}
.ct-ri-title{font-size:19px!important;line-height:1.25!important;font-weight:900!important;color:var(--ri-text)!important;margin:0!important}
.ct-ri-badge{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:999px;background:var(--ri-soft);border:1px solid var(--ri-soft-border);color:var(--ri-primary);font-size:11px;font-weight:850;white-space:nowrap}
.ct-ri-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:12px 0 14px}
.ct-ri-step{min-width:0;padding:9px 8px;border:1px solid var(--ri-border);border-radius:10px;background:color-mix(in srgb,var(--ri-bg) 92%,var(--ri-soft));font-size:11px;font-weight:850;text-align:center;color:var(--ri-muted)}
.ct-ri-step.is-active{background:var(--ri-soft);border-color:var(--ri-soft-border);color:var(--ri-primary)}
.ct-ri-summary{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,.85fr));gap:10px;margin-bottom:12px}
.ct-ri-primary{padding:14px;border-radius:12px;background:linear-gradient(135deg,var(--ri-soft),color-mix(in srgb,var(--ri-bg) 76%,var(--ri-soft)));border:1px solid var(--ri-soft-border)}
.ct-ri-primary .label{font-size:11px;font-weight:800;color:var(--ri-muted);margin-bottom:3px}
.ct-ri-primary .value{font-size:28px;line-height:1.08;font-weight:950;letter-spacing:-.04em;color:var(--ri-text);overflow-wrap:anywhere}
.ct-ri-metric{padding:12px;border-radius:12px;border:1px solid var(--ri-border);background:var(--ri-bg)}
.ct-ri-metric .label{font-size:10px;font-weight:850;color:var(--ri-muted);line-height:1.35}
.ct-ri-metric .value{margin-top:4px;font-size:17px;font-weight:900;color:var(--ri-text);overflow-wrap:anywhere}
.ct-ri-meaning{padding:13px 14px;border:1px solid var(--ri-border);border-radius:12px;background:color-mix(in srgb,var(--ri-bg) 94%,var(--ri-soft));margin-bottom:12px}
.ct-ri-meaning strong{display:block;font-size:12px;font-weight:900;color:var(--ri-text);margin-bottom:4px}
.ct-ri-meaning p{margin:0;font-size:13px;line-height:1.65;color:var(--ri-muted)}
.ct-ri-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ct-ri-verify{font-size:11px;line-height:1.5;color:var(--ri-muted);max-width:62ch}
.ct-ri-actions{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}
.ct-ri-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 12px;border-radius:10px;text-decoration:none!important;font-size:12px!important;font-weight:900!important;cursor:pointer;border:1px solid var(--ri-border);background:var(--ri-bg);color:var(--ri-text)!important}
.ct-ri-btn.primary{background:var(--ri-primary);border-color:var(--ri-primary);color:#fff!important}
.ct-ri-btn:hover{transform:translateY(-1px)}
.ct-ri-next{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}
.ct-ri-next a{display:block;padding:12px;border:1px solid var(--ri-border);border-radius:11px;background:var(--ri-bg);text-decoration:none!important;color:var(--ri-text)!important}
.ct-ri-next a strong{display:block;font-size:12px;line-height:1.35;font-weight:900}
.ct-ri-next a span{display:block;margin-top:4px;font-size:10.5px;line-height:1.45;color:var(--ri-muted)}
.ct-ri-live{font-size:10px;font-weight:800;color:var(--ri-muted);margin-top:8px}
.ct-ri-disclaimer{font-size:10px!important;line-height:1.45!important;color:var(--ri-muted)!important;margin:8px 0 0!important}
@media(max-width:760px){.ct-ri{padding:15px;border-radius:15px}.ct-ri-head{display:block}.ct-ri-badge{margin-top:8px}.ct-ri-steps{grid-template-columns:repeat(2,1fr)}.ct-ri-summary{grid-template-columns:1fr 1fr}.ct-ri-primary{grid-column:1/-1}.ct-ri-next{grid-template-columns:1fr}.ct-ri-foot{align-items:flex-start}.ct-ri-actions{width:100%;margin-left:0}.ct-ri-btn{flex:1;min-width:0}.ct-ri-title{font-size:18px!important}.ct-ri-primary .value{font-size:26px}}
@media(max-width:420px){.ct-ri-summary{grid-template-columns:1fr}.ct-ri-primary{grid-column:auto}.ct-ri-actions .ct-ri-btn{flex:1 1 100%}.ct-ri-steps{gap:6px}}
[data-theme="dark"] .ct-ri{--ri-bg:#111c2d;--ri-text:#e8eef7;--ri-muted:#a9b8cd;--ri-border:#2c3b50;--ri-primary:#60a5fa;--ri-soft:#182c46;--ri-soft-border:#335d8d;box-shadow:0 12px 30px rgba(0,0,0,.24)}
[data-theme="dark"] .ct-ri-primary{background:linear-gradient(135deg,#172d49,#132238);border-color:#335d8d}
[data-theme="dark"] .ct-ri-step{background:#142236}
[data-theme="dark"] .ct-ri-step.is-active{background:#182c46}
[data-theme="dark"] .ct-ri-btn{background:#152337;border-color:#33445c}
[data-theme="dark"] .ct-ri-btn.primary{background:#2563eb;border-color:#2563eb;color:#fff!important}
@media(prefers-reduced-motion:reduce){.ct-ri-btn:hover{transform:none}}


/* ---- calcutools-trust-v2.3.css ---- */
/* CalcuTools Trust & Freshness v2.3.1 | self-contained */
.ct-trust{--trust-bg:var(--ct-surface,#fff);--trust-text:var(--ct-text,#0f172a);--trust-muted:var(--ct-muted,#64748b);--trust-border:var(--ct-border,#e2e8f0);--trust-accent:var(--ct-primary,#2563eb);margin:18px 0 22px;padding:16px;border:1px solid var(--trust-border);border-radius:15px;background:var(--trust-bg);color:var(--trust-text);box-shadow:0 6px 22px rgba(15,23,42,.05)}
.ct-trust *{box-sizing:border-box}.ct-trust-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:11px}.ct-trust-title{font-size:16px;font-weight:900;line-height:1.25;margin:0;color:var(--trust-text)}.ct-trust-kicker{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--trust-accent);margin-bottom:4px}.ct-trust-status{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:color-mix(in srgb,var(--trust-accent) 10%,var(--trust-bg));border:1px solid color-mix(in srgb,var(--trust-accent) 35%,var(--trust-border));color:var(--trust-accent);font-size:10px;font-weight:900;white-space:nowrap}
.ct-trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.ct-trust-item{min-width:0;padding:10px 11px;border:1px solid var(--trust-border);border-radius:11px;background:color-mix(in srgb,var(--trust-bg) 96%,var(--trust-accent))}.ct-trust-item small{display:block;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.06em;color:var(--trust-muted);margin-bottom:3px}.ct-trust-item strong{display:block;font-size:11px;line-height:1.4;color:var(--trust-text);overflow-wrap:anywhere}.ct-trust-source{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px;align-items:center}.ct-trust-source-label{font-size:10.5px;color:var(--trust-muted);font-weight:800}.ct-trust-source a{font-size:10.5px;color:var(--trust-accent)!important;text-decoration:none!important;font-weight:850}.ct-trust-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:11px}.ct-trust-btn{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:8px 11px;border-radius:9px;border:1px solid var(--trust-border);background:var(--trust-bg);color:var(--trust-text)!important;font-size:11px;text-decoration:none!important;font-weight:900}.ct-trust-btn.primary{background:var(--trust-accent);border-color:var(--trust-accent);color:#fff!important}.ct-trust-note{margin-top:9px;font-size:10px;line-height:1.55;color:var(--trust-muted)}
html[data-theme="dark"] .ct-trust{--trust-bg:#111c2d;--trust-text:#e8eef7;--trust-muted:#a9b8cd;--trust-border:#2c3b50;--trust-accent:#60a5fa;background:#111c2d;color:#e8eef7;box-shadow:0 12px 30px rgba(0,0,0,.24)}
html[data-theme="dark"] .ct-trust-item{background:#142236}.ct-trust-btn:focus-visible{outline:3px solid var(--trust-accent);outline-offset:2px}.ct-trust-source a:focus-visible{outline:2px solid var(--trust-accent);outline-offset:2px}
@media(max-width:760px){.ct-trust{padding:14px;border-radius:14px}.ct-trust-head{display:block}.ct-trust-status{margin-top:8px}.ct-trust-grid{grid-template-columns:1fr 1fr}.ct-trust-actions .ct-trust-btn{flex:1 1 100%;min-width:0}}
@media(max-width:420px){.ct-trust-grid{grid-template-columns:1fr}.ct-trust-title{font-size:15px}}
.ct-trust-grid-v23{grid-template-columns:repeat(4,minmax(0,1fr))}.ct-trust-status.historical{background:#eef2f7;color:#475569;border-color:#cbd5e1}.ct-trust-status.mixed{background:#fff7db;color:#92400e;border-color:#fcd34d}.ct-trust-status.rate{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.ct-trust-status.current{background:#dcfce7;color:#166534;border-color:#bbf7d0}.ct-trust-status.evergreen{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}
html[data-theme="dark"] .ct-trust-status.historical{background:#1c2838;color:#b8c4d3;border-color:#405169}html[data-theme="dark"] .ct-trust-status.mixed{background:#382b14;color:#f7c76b;border-color:#77571e}html[data-theme="dark"] .ct-trust-status.rate{background:#17304f;color:#9cc7ff;border-color:#33577e}html[data-theme="dark"] .ct-trust-status.current{background:#163322;color:#8be0ab;border-color:#2d7048}
@media(max-width:760px){.ct-trust-grid-v23{grid-template-columns:1fr 1fr}}@media(max-width:420px){.ct-trust-grid-v23{grid-template-columns:1fr}}
.ct-trust-grid-v23{display:grid;gap:8px;}


/* ---- calcutools-year-intelligence-v2.3.css ---- */
/* CalcuTools Content & Year Intelligence v2.3 */
.ct-year-context{display:flex;align-items:flex-start;gap:10px;margin:12px 0 16px;padding:11px 13px;border:1px solid #dbe4ee;border-radius:12px;background:#f8fafc;color:#0f172a;max-width:920px}
.ct-year-badge{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:4px 8px;border-radius:999px;background:#e0ecff;border:1px solid #bfdbfe;color:#1d4ed8;font-size:9px;font-weight:900;letter-spacing:.055em;line-height:1.2;white-space:nowrap}
.ct-year-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.ct-year-copy strong{font-size:12px;font-weight:900;color:#0f172a;line-height:1.35}.ct-year-copy span{font-size:11px;color:#64748b;line-height:1.5}
.ct-year-historical{background:#f8fafc}.ct-year-historical .ct-year-badge{background:#eef2f7;border-color:#cbd5e1;color:#475569}
.ct-year-mixed{background:#fffaf0;border-color:#fde68a}.ct-year-mixed .ct-year-badge{background:#fff7db;border-color:#fcd34d;color:#92400e}
.ct-year-rate-sensitive{background:#f8fbff}.ct-year-rate-sensitive .ct-year-badge{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}
.ct-year-tax-sensitive{background:#f8fbff}
@media(max-width:640px){.ct-year-context{display:block;padding:11px 12px}.ct-year-badge{margin-bottom:7px;white-space:normal}.ct-year-copy span{font-size:10.5px}}
html[data-theme="dark"] .ct-year-context{background:#101b2c;border-color:#2b3a4e;color:#edf3fb}.ct-year-copy strong{color:#edf3fb}.ct-year-copy span{color:#a7b6ca}.ct-year-historical{background:#101b2c}.ct-year-historical .ct-year-badge{background:#1c2838;border-color:#405169;color:#b8c4d3}.ct-year-mixed{background:#251f16;border-color:#5b4522}.ct-year-mixed .ct-year-badge{background:#382b14;border-color:#77571e;color:#f7c76b}.ct-year-rate-sensitive,.ct-year-tax-sensitive{background:#101b2c}


/* ---- calcutools-decision-journey-v2.3.css ---- */
/* CalcuTools Decision Journey v2.3 */
.ct-journey-v23{margin:18px 0 22px;padding:18px;border:1px solid #dbe4ee;border-radius:15px;background:#fff;color:#0f172a}.ct-journey-kicker{font-size:10px;font-weight:900;letter-spacing:.08em;color:#2563eb;margin-bottom:5px}.ct-journey-v23 h2{font-size:17px;line-height:1.3;margin:0 0 5px;color:#0f172a}.ct-journey-v23 p{font-size:12px;color:#64748b;line-height:1.55;margin:0 0 12px}.ct-journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.ct-journey-card{display:flex;flex-direction:column;gap:5px;padding:12px;border:1px solid #dbe4ee;border-radius:11px;background:#f8fafc;color:#0f172a;text-decoration:none;min-width:0}.ct-journey-card:hover{border-color:#93c5fd;background:#eff6ff}.ct-journey-card strong{font-size:12px;font-weight:900;color:#1d4ed8}.ct-journey-card strong span{float:right}.ct-journey-card span{font-size:11px;color:#64748b;line-height:1.45}
html[data-theme="dark"] .ct-journey-v23{background:#101b2c;border-color:#2b3a4e;color:#edf3fb}.ct-journey-v23 h2{color:#edf3fb}.ct-journey-v23 p{color:#a7b6ca}.ct-journey-card{background:#142236;border-color:#2b3a4e;color:#edf3fb}.ct-journey-card strong{color:#8dbbff}.ct-journey-card span{color:#a7b6ca}.ct-journey-card:hover{background:#19304f;border-color:#42658e}
@media(max-width:680px){.ct-journey-grid{grid-template-columns:1fr}.ct-journey-v23{padding:15px}}


/* ---- calcutools-unified-v2.5.css ---- */
/* CalcuTools Unified UI v2.4 | Site-wide consistency + dark-mode hardening | 17 Sep 2026 */
:root{
  --ct24-bg:#f5f8fc;--ct24-surface:#fff;--ct24-surface-2:#f8fafc;--ct24-surface-3:#eef3f9;
  --ct24-text:#0f172a;--ct24-text-2:#334155;--ct24-muted:#64748b;--ct24-border:#dbe4ee;
  --ct24-primary:#2563eb;--ct24-primary-soft:#eff6ff;--ct24-success:#059669;--ct24-warning:#d97706;--ct24-danger:#dc2626;
  --ct24-radius:16px;--ct24-content:1120px;--ct24-read:920px;
}
*,*::before,*::after{box-sizing:border-box}
html{background:var(--ct24-bg);-webkit-text-size-adjust:100%;}
body{margin:0;min-width:0;overflow-x:hidden;background:var(--ct24-bg);color:var(--ct24-text);}
img,svg,video,canvas,iframe{max-width:100%;}
button,input,select,textarea{font:inherit;}
button{max-width:100%;}
input,select,textarea{min-width:0;max-width:100%;}
pre,code{max-width:100%;overflow:auto;}

/* ---------- canonical navigation ---------- */
.ct-v7-nav,.ct-nav{width:100%!important;position:sticky!important;top:0!important;z-index:3000!important;background:rgba(255,255,255,.96)!important;border-bottom:1px solid #e2e8f0!important;box-shadow:0 1px 14px rgba(15,23,42,.07)!important;backdrop-filter:blur(14px)!important;}
.ct-v7-nav-inner{width:min(var(--ct24-content),calc(100% - 32px))!important;min-height:64px!important;margin:0 auto!important;padding:0!important;display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important;}
.ct-v7-brand{flex:0 0 auto!important;min-width:0!important;}
.ct-v7-nav-links{display:flex!important;align-items:center!important;gap:2px!important;min-width:0!important;flex:0 1 auto!important;}
.ct-v7-nav-links a{padding:8px 11px!important;border-radius:9px!important;color:#475569!important;font-size:13px!important;font-weight:750!important;white-space:nowrap!important;}
.ct-v7-nav-links a:hover{background:#f1f5f9!important;color:#0f172a!important;}
.ct-v7-nav-spacer{flex:1 1 auto!important;min-width:8px!important;}
.ct-v7-search-btn{min-height:40px!important;padding:8px 10px 8px 14px!important;border:1px solid #dbe4ee!important;border-radius:12px!important;background:#fff!important;color:#334155!important;display:flex!important;align-items:center!important;gap:8px!important;white-space:nowrap!important;box-shadow:none!important;}
.ct-v7-search-btn:hover{border-color:#93c5fd!important;background:#f8fbff!important;color:#1d4ed8!important;}
.ct-v7-search-kbd{font-size:9px!important;line-height:1!important;padding:5px 6px!important;border:1px solid #dbe4ee!important;border-bottom-width:2px!important;border-radius:6px!important;color:#64748b!important;background:#f8fafc!important;}
.nav-fav-btn{min-height:40px!important;padding:8px 12px!important;border:1px solid #bfdbfe!important;border-radius:12px!important;background:#eff6ff!important;color:#1d4ed8!important;font-weight:800!important;white-space:nowrap!important;}
.ct-v7-icon-btn,.ct-dark-btn,.ct-dark-toggle{width:40px!important;height:40px!important;min-width:40px!important;border-radius:11px!important;border:1px solid #dbe4ee!important;background:#fff!important;color:#334155!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;}
.ct-v7-menu-btn{display:none!important;width:40px!important;height:40px!important;border-radius:11px!important;border:1px solid #dbe4ee!important;background:#fff!important;color:#334155!important;align-items:center!important;justify-content:center!important;}
.ct-v7-mobile-panel{width:100%!important;background:#fff!important;border-bottom:1px solid #dbe4ee!important;box-shadow:0 8px 20px rgba(15,23,42,.08)!important;}

/* ---------- common page canvas ---------- */
.ct-v24-tool,.ct-v24-home{min-width:0;}
.ct-v24-tool .container,.ct-v24-tool .page-wrap,.ct-v24-tool .pg-wrap,.ct-v24-tool .pg-wrap-wide,.ct-v24-tool .page-container,.ct-v24-tool main{
  width:min(var(--ct24-content),calc(100% - 32px));max-width:var(--ct24-content);margin-left:auto!important;margin-right:auto!important;min-width:0;
}
.ct-v24-tool .container,.ct-v24-tool .page-wrap,.ct-v24-tool .pg-wrap,.ct-v24-tool .pg-wrap-wide{padding-top:28px!important;padding-bottom:56px!important;}
.ct-v24-tool main{padding-top:28px;padding-bottom:56px;}
.ct-v24-tool .breadcrumb{max-width:var(--ct24-read);margin:0 auto 14px!important;color:var(--ct24-muted)!important;font-size:12px!important;overflow-wrap:anywhere;}
.ct-v24-tool .header-text,.ct-v24-tool .page-title,.ct-v24-tool .page-desc,.ct-v24-tool .page-hero,.ct-v24-tool .hero-tag{max-width:var(--ct24-read);margin-left:auto;margin-right:auto;}
.ct-v24-tool .header-text h1,.ct-v24-tool .page-title,.ct-v24-tool .page-hero h1{font-size:clamp(28px,4vw,42px)!important;line-height:1.14!important;letter-spacing:-.035em!important;margin-bottom:10px!important;overflow-wrap:anywhere;}
.ct-v24-tool .header-text p,.ct-v24-tool .page-desc,.ct-v24-tool .page-hero p{max-width:var(--ct24-read);font-size:14px!important;line-height:1.65!important;color:var(--ct24-muted)!important;margin-bottom:18px!important;}
.ct-v24-tool .page-hero{border-radius:18px!important;padding:28px!important;background:linear-gradient(135deg,#0f172a,#1e3a5f)!important;}
.ct-v24-tool .calc-card,.ct-v24-tool .card,.ct-v24-tool .seo-article,.ct-v24-tool .related-section,.ct-v24-tool .quick-summary,.ct-v24-tool .action-panel,.ct-v24-tool .faq-section,.ct-v24-tool .ct-sprint2-related,.ct-v24-tool .ct-sprint2-intro,.ct-v24-tool .ct-growth-sprint,.ct-v24-tool .ct-ri,.ct-v24-tool .ct-trust,.ct-v24-tool .ct-year-context,.ct-v24-tool .ct-journey-v23,.ct-v24-tool .ct-decision-panel,.ct-v24-tool .results-box,.ct-v24-tool .result-section,.ct-v24-tool .results-wrap{
  border-radius:var(--ct24-radius)!important;border-color:var(--ct24-border)!important;
}
.ct-v24-tool .calc-card,.ct-v24-tool .card,.ct-v24-tool .seo-article,.ct-v24-tool .related-section,.ct-v24-tool .quick-summary,.ct-v24-tool .action-panel,.ct-v24-tool .faq-section,.ct-v24-tool .ct-sprint2-related,.ct-v24-tool .ct-growth-sprint,.ct-v24-tool .ct-ri,.ct-v24-tool .ct-trust,.ct-v24-tool .ct-year-context,.ct-v24-tool .ct-journey-v23,.ct-v24-tool .ct-decision-panel,.ct-v24-tool .results-box{
  background:var(--ct24-surface)!important;color:var(--ct24-text)!important;
}
.ct-v24-tool .seo-article,.ct-v24-tool .content-section{max-width:var(--ct24-read);margin-left:auto!important;margin-right:auto!important;}
.ct-v24-tool .seo-article p,.ct-v24-tool .content-section p{color:var(--ct24-text-2);line-height:1.8;overflow-wrap:anywhere;}
.ct-v24-tool h1,.ct-v24-tool h2,.ct-v24-tool h3,.ct-v24-tool h4,.ct-v24-tool h5,.ct-v24-tool h6{overflow-wrap:anywhere;}
.ct-v24-tool label,.ct-v24-tool legend{color:var(--ct24-text-2);font-weight:700;}
.ct-v24-tool .field label,.ct-v24-tool .input-group label,.ct-v24-tool .input-label{color:var(--ct24-muted);}

/* ---------- inputs/results ---------- */
.ct-v24-tool .calc-card input,.ct-v24-tool .calc-card select,.ct-v24-tool .calc-card textarea,.ct-v24-tool .inp,.ct-v24-tool .input-group input,.ct-v24-tool .input-group select,.ct-v24-tool .input-group textarea{
  background:#f8fafc!important;color:var(--ct24-text)!important;border:1px solid var(--ct24-border)!important;border-radius:11px!important;min-height:44px!important;
}
.ct-v24-tool .calc-card input:focus,.ct-v24-tool .calc-card select:focus,.ct-v24-tool .calc-card textarea:focus,.ct-v24-tool .inp:focus{border-color:#60a5fa!important;box-shadow:0 0 0 4px rgba(37,99,235,.10)!important;outline:none!important;}
.ct-v24-tool .calc-btn,.ct-v24-tool .btn,.ct-v24-tool button.primary,.ct-v24-tool .ct-primary-btn{min-height:44px!important;border-radius:11px!important;font-weight:800!important;}
.ct-v24-tool .result-hero,.ct-v24-tool .final-total{overflow:hidden!important;}
.ct-v24-tool .res-value,.ct-v24-tool .metric-val,.ct-v24-tool .result-val,.ct-v24-tool .result-num,.ct-v24-tool .result-score,.ct-v24-tool .score-value{overflow-wrap:anywhere!important;word-break:break-word!important;}
.ct-v24-tool table{max-width:100%;border-color:var(--ct24-border)!important;}
.ct-v24-tool th,.ct-v24-tool td{overflow-wrap:anywhere;}
.ct-v24-tool .table-wrap,.ct-v24-tool .ct-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}

/* ---------- ads/partner modules ---------- */
.ct-v24-tool .affiliate-section,.ct-v24-tool .affiliate-banner,.ct-v24-tool .ad-wrap,.ct-v24-tool .ad-container,.ct-v24-tool .ad-slot,.ct-v24-tool .partner-card{
  max-width:var(--ct24-read);margin:20px auto!important;border-radius:14px!important;overflow:hidden!important;
}

/* ---------- consistent footer ---------- */
.ct-v24-footer{margin-top:0!important;padding:44px 0 0!important;background:#0b1220!important;color:#cbd5e1!important;border-top:1px solid #1e293b!important;}
.ct-v24-footer-inner{width:min(var(--ct24-content),calc(100% - 32px));margin:0 auto;}
.ct-v24-footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:28px;padding-bottom:30px;border-bottom:1px solid #1e293b;}
.ct-v24-footer-brand{display:inline-flex;align-items:center;gap:8px;color:#fff!important;text-decoration:none!important;font:800 20px/1 'Sora',system-ui,sans-serif!important;letter-spacing:-.035em!important;}
.ct-v24-footer-brand svg{width:34px!important;height:34px!important;flex:0 0 34px!important;display:block!important;}
.ct-v24-footer-brand span span{color:#60a5fa!important;}
.ct-v24-footer-desc{margin:10px 0 0;max-width:280px;color:#94a3b8;font-size:12px;line-height:1.65;}
.ct-v24-footer h3{margin:0 0 11px;color:#f8fafc;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:850;}
.ct-v24-footer a{color:#aebbd0;text-decoration:none;font-size:12px;line-height:1.5;}
.ct-v24-footer-col{display:grid;align-content:start;gap:7px;}
.ct-v24-footer a:hover{color:#fff;}
.ct-v24-footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding:18px 0 22px;color:#8493a8;font-size:11px;}
.ct-v24-footer-bottom-links{display:flex;gap:14px;flex-wrap:wrap;}

/* ---------- hardening for legacy inline light surfaces ---------- */
html[data-theme="dark"] .ct-v24-tool .calc-card [style*="background:#fff"],
html[data-theme="dark"] .ct-v24-tool .calc-card [style*="background: #fff"],
html[data-theme="dark"] .ct-v24-tool .calc-card [style*="background:#ffffff"],
html[data-theme="dark"] .ct-v24-tool .calc-card [style*="background: #ffffff"],
html[data-theme="dark"] .ct-v24-tool .calc-card [style*="background:#f8fafc"],
html[data-theme="dark"] .ct-v24-tool .calc-card [style*="background: #f8fafc"],
html[data-theme="dark"] .ct-v24-tool .seo-article [style*="background:#fff"],
html[data-theme="dark"] .ct-v24-tool .seo-article [style*="background: #fff"],
html[data-theme="dark"] .ct-v24-tool .seo-article [style*="background:#f8fafc"],
html[data-theme="dark"] .ct-v24-tool .seo-article [style*="background: #f8fafc"],
html[data-theme="dark"] .ct-v24-tool .ct-growth-sprint [style*="background:#fff"],
html[data-theme="dark"] .ct-v24-tool .ct-growth-sprint [style*="background: #fff"],
html[data-theme="dark"] .ct-v24-tool .ct-sprint2-related [style*="background:#fff"],
html[data-theme="dark"] .ct-v24-tool .ct-sprint2-related [style*="background: #fff"],
html[data-theme="dark"] .ct-v24-tool section[style*="background:#fff"],
html[data-theme="dark"] .ct-v24-tool section[style*="background: #fff"]{
  background:#111c2d!important;border-color:#2c3b50!important;color:#e5edf8!important;
}
html[data-theme="dark"] .ct-v24-tool .calc-card [style*="color:#fff"],
html[data-theme="dark"] .ct-v24-tool .calc-card [style*="color: #fff"],
html[data-theme="dark"] .ct-v24-tool .calc-card [style*="color:rgba(255,255,255"],
html[data-theme="dark"] .ct-v24-tool .seo-article [style*="color:#fff"],
html[data-theme="dark"] .ct-v24-tool .seo-article [style*="color: #fff"],
html[data-theme="dark"] .ct-v24-tool .seo-article [style*="color:rgba(255,255,255"],
html[data-theme="dark"] .ct-v24-tool .ct-growth-sprint [style*="color:#fff"],
html[data-theme="dark"] .ct-v24-tool .ct-growth-sprint [style*="color: #fff"],
html[data-theme="dark"] .ct-v24-tool .ct-sprint2-related [style*="color:#fff"],
html[data-theme="dark"] .ct-v24-tool .ct-sprint2-related [style*="color: #fff"]{
  color:#dbe5f2!important;-webkit-text-fill-color:#dbe5f2!important;
}
html[data-theme="dark"] .ct-v24-tool [style*="color:#0f172a"],
html[data-theme="dark"] .ct-v24-tool [style*="color: #0f172a"],
html[data-theme="dark"] .ct-v24-tool [style*="color:#111827"],
html[data-theme="dark"] .ct-v24-tool [style*="color: #111827"],
html[data-theme="dark"] .ct-v24-tool [style*="color:#334155"],
html[data-theme="dark"] .ct-v24-tool [style*="color: #334155"],
html[data-theme="dark"] .ct-v24-tool [style*="color:#475569"],
html[data-theme="dark"] .ct-v24-tool [style*="color: #475569"],
html[data-theme="dark"] .ct-v24-tool [style*="color:#64748b"],
html[data-theme="dark"] .ct-v24-tool [style*="color: #64748b"]{
  color:#cbd5e1!important;-webkit-text-fill-color:#cbd5e1!important;
}
html[data-theme="dark"] .ct-v24-tool .ct-growth-sprint,
html[data-theme="dark"] .ct-v24-tool .ct-sprint2-related,
html[data-theme="dark"] .ct-v24-tool .ct-sprint2-intro,
html[data-theme="dark"] .ct-v24-tool .ct-ri,
html[data-theme="dark"] .ct-v24-tool .ct-trust,
html[data-theme="dark"] .ct-v24-tool .ct-year-context,
html[data-theme="dark"] .ct-v24-tool .ct-journey-v23,
html[data-theme="dark"] .ct-v24-tool .faq-item,
html[data-theme="dark"] .ct-v24-tool .related-card,
html[data-theme="dark"] .ct-v24-tool .action-item,
html[data-theme="dark"] .ct-v24-tool .info-box,
html[data-theme="dark"] .ct-v24-tool .guide-box{
  background:#101b2c!important;color:#e5edf8!important;border-color:#2c3b50!important;
}
html[data-theme="dark"] .ct-v24-tool .ct-growth-sprint p,
html[data-theme="dark"] .ct-v24-tool .ct-sprint2-intro,
html[data-theme="dark"] .ct-v24-tool .ct-sprint2-card span,
html[data-theme="dark"] .ct-v24-tool .related-card .rc-desc,
html[data-theme="dark"] .ct-v24-tool .faq-a,
html[data-theme="dark"] .ct-v24-tool .field-hint,
html[data-theme="dark"] .ct-v24-tool .page-desc{color:#aebbd0!important;}
html[data-theme="dark"] .ct-v24-tool .ct-growth-links a,
html[data-theme="dark"] .ct-v24-tool .ct-sprint2-card,
html[data-theme="dark"] .ct-v24-tool .related-card{
  background:#142236!important;border-color:#334155!important;color:#dce7f3!important;
}
html[data-theme="dark"] .ct-v24-tool .calc-card,
html[data-theme="dark"] .ct-v24-tool .card,
html[data-theme="dark"] .ct-v24-tool .seo-article,
html[data-theme="dark"] .ct-v24-tool .content-section,
html[data-theme="dark"] .ct-v24-tool .results-box,
html[data-theme="dark"] .ct-v24-tool .final-total,
html[data-theme="dark"] .ct-v24-tool .result-metric,
html[data-theme="dark"] .ct-v24-tool .metric-box,
html[data-theme="dark"] .ct-v24-tool .result-hero,
html[data-theme="dark"] .ct-v24-tool .ad-wrap,
html[data-theme="dark"] .ct-v24-tool .ad-container,
html[data-theme="dark"] .ct-v24-tool .affiliate-section,
html[data-theme="dark"] .ct-v24-tool .affiliate-banner{
  background:#111c2d!important;color:#e5edf8!important;border-color:#2c3b50!important;
}
html[data-theme="dark"] .ct-v24-tool input,
html[data-theme="dark"] .ct-v24-tool select,
html[data-theme="dark"] .ct-v24-tool textarea,
html[data-theme="dark"] .ct-v24-tool .inp{
  background:#0b1220!important;color:#f8fafc!important;border-color:#475569!important;color-scheme:dark;
}
html[data-theme="dark"] .ct-v24-tool input::placeholder,
html[data-theme="dark"] .ct-v24-tool textarea::placeholder{color:#94a3b8!important;opacity:1!important;}
html[data-theme="dark"] .ct-v24-tool h1,
html[data-theme="dark"] .ct-v24-tool h2,
html[data-theme="dark"] .ct-v24-tool h3,
html[data-theme="dark"] .ct-v24-tool h4,
html[data-theme="dark"] .ct-v24-tool h5,
html[data-theme="dark"] .ct-v24-tool h6{color:#f8fafc!important;}
html[data-theme="dark"] .ct-v24-tool p,
html[data-theme="dark"] .ct-v24-tool li,
html[data-theme="dark"] .ct-v24-tool dd{color:#cbd5e1;}
html[data-theme="dark"] .ct-v24-tool a{color:#93c5fd;}
html[data-theme="dark"] .ct-v24-tool a:hover{color:#bfdbfe;}
html[data-theme="dark"] .ct-v24-tool table th{background:#1a2a40!important;color:#dbe5f2!important;}
html[data-theme="dark"] .ct-v24-tool table td{background:#101b2c!important;color:#dbe5f2!important;border-color:#2c3b50!important;}
html[data-theme="dark"] .ct-v24-tool table tr:nth-child(even) td{background:#0e1828!important;}

/* ---------- dark navigation/footer ---------- */
html[data-theme="dark"] .ct-v7-nav,html[data-theme="dark"] .ct-nav{background:rgba(11,18,32,.96)!important;border-color:#27374c!important;box-shadow:0 1px 16px rgba(0,0,0,.30)!important;}
html[data-theme="dark"] .ct-v7-nav-links a{color:#cbd5e1!important;}
html[data-theme="dark"] .ct-v7-nav-links a:hover{background:#162033!important;color:#fff!important;}
html[data-theme="dark"] .ct-v7-search-btn,html[data-theme="dark"] .nav-fav-btn,html[data-theme="dark"] .ct-v7-icon-btn,html[data-theme="dark"] .ct-dark-btn,html[data-theme="dark"] .ct-dark-toggle,html[data-theme="dark"] .ct-v7-menu-btn{background:#111c2d!important;border-color:#334155!important;color:#dbe5f2!important;}
html[data-theme="dark"] .ct-v7-search-kbd{background:#172236!important;border-color:#334155!important;color:#9fb0c8!important;}
html[data-theme="dark"] .ct-v24-footer{background:#080f1b!important;border-color:#1f2c3e!important;}

/* ---------- brand invariant ---------- */
.ct-v7-brand-mark,.ct-brand-mark,.ct-v24-footer-brand svg{width:34px!important;height:34px!important;display:block!important;}
.ct-v7-brand-mark rect,.ct-brand-mark rect,.ct-v24-footer-brand svg rect{fill:#2563eb!important;}
.ct-v7-brand-mark path:first-of-type,.ct-brand-mark path:first-of-type,.ct-v24-footer-brand svg path:first-of-type{stroke:#fff!important;}
.ct-v7-brand-mark path:last-of-type,.ct-brand-mark path:last-of-type,.ct-v24-footer-brand svg path:last-of-type{stroke:#60a5fa!important;}

/* ---------- homepage alignment ---------- */
.ct-v24-home .hero-inner{width:min(var(--ct24-content),calc(100% - 32px))!important;margin:0 auto!important;}
.ct-v24-home .section>.inner,.ct-v24-home .inner{width:min(var(--ct24-content),calc(100% - 32px))!important;margin:0 auto!important;}
.ct-v24-home .ct-home-subnav{width:min(var(--ct24-content),calc(100% - 32px))!important;margin:0 auto!important;}
.ct-v24-home .goal-grid,.ct-v24-home .pop-grid{min-width:0;}
html[data-theme="dark"] .ct-v24-home .hero{background:linear-gradient(135deg,#0b1220,#101a2e 58%,#0b1220)!important;color:#f8fafc!important;}
html[data-theme="dark"] .ct-v24-home .hero-tagline,html[data-theme="dark"] .ct-v24-home .ct-home-search-label{color:#cbd5e1!important;}
html[data-theme="dark"] .ct-v24-home .section,html[data-theme="dark"] .ct-v24-home .all-calcs-bg{background:#0b1220!important;color:#f8fafc!important;}
html[data-theme="dark"] .ct-v24-home .goal-card,html[data-theme="dark"] .ct-v24-home .pop-card,html[data-theme="dark"] .ct-v24-home .cat-card,html[data-theme="dark"] .ct-v24-home .trend-item,html[data-theme="dark"] .ct-v24-home .guide-card,html[data-theme="dark"] .ct-v24-home .calc-item{background:#111c2d!important;border-color:#334155!important;color:#e5edf8!important;}
html[data-theme="dark"] .ct-v24-home .goal-desc,html[data-theme="dark"] .ct-v24-home .pop-desc,html[data-theme="dark"] .ct-v24-home .cat-count,html[data-theme="dark"] .ct-v24-home .trend-desc,html[data-theme="dark"] .ct-v24-home .guide-summary,html[data-theme="dark"] .ct-v24-home .guide-meta,html[data-theme="dark"] .ct-v24-home .calc-item-desc{color:#aebbd0!important;}

/* ---------- mobile ---------- */
@media(max-width:900px){
 .ct-v7-nav-inner{min-height:60px!important;}
 .ct-v7-nav-links{display:none!important;}
 .ct-v7-menu-btn{display:inline-flex!important;}
 .ct-v7-search-label{display:none!important;}
 .ct-v7-search-btn{padding:9px!important;min-width:40px!important;justify-content:center!important;}
 .ct-v24-tool .container,.ct-v24-tool .page-wrap,.ct-v24-tool .pg-wrap,.ct-v24-tool .pg-wrap-wide,.ct-v24-tool main{width:min(100% - 24px,var(--ct24-content))!important;}
 .ct-v24-footer-grid{grid-template-columns:1fr 1fr;gap:22px;}
}
@media(max-width:560px){
 .ct-v7-nav-inner{width:calc(100% - 20px)!important;gap:6px!important;}
 .ct-v24-home .hero-inner{width:calc(100% - 24px)!important;}
 .ct-v24-home .section>.inner,.ct-v24-home .inner{width:calc(100% - 24px)!important;}
 .ct-v24-footer-inner{width:calc(100% - 24px);}
 .ct-v24-footer{padding-top:34px!important;}
 .ct-v24-footer-grid{grid-template-columns:1fr;}
 .ct-v24-tool .container,.ct-v24-tool .page-wrap,.ct-v24-tool .pg-wrap,.ct-v24-tool .pg-wrap-wide,.ct-v24-tool main{width:calc(100% - 20px)!important;padding-top:20px!important;padding-bottom:40px!important;}
 .ct-v24-tool .page-hero{padding:20px!important;border-radius:14px!important;}
 .ct-v24-tool .header-text h1,.ct-v24-tool .page-title,.ct-v24-tool .page-hero h1{font-size:28px!important;}
 .ct-v24-tool .calc-card{padding:16px!important;}
}
@media(max-width:380px){
 .ct-v7-brand-text{font-size:16px!important;}
 .ct-v7-brand-mark,.ct-brand-mark{width:30px!important;height:30px!important;}
 .nav-fav-btn{min-width:40px!important;padding:8px!important;}
}

/* CalcuTools Unified UI v2.4.1 | all-page hardening | 17 Sep 2026 */

/* Legacy navigation cleanup */
body.ct-v24-page > header:has(> nav:not(.ct-v7-nav)),
body.ct-v24-page > nav.nav,
body.ct-v24-page > nav.nav-bg{font-family:inherit;}

/* Legacy inline light surfaces: dark mode must win even over inline styles. */
html[data-theme="dark"] .ct-v24-page [style*="background:#fff"],
html[data-theme="dark"] .ct-v24-page [style*="background: #fff"],
html[data-theme="dark"] .ct-v24-page [style*="background:#ffffff"],
html[data-theme="dark"] .ct-v24-page [style*="background: #ffffff"],
html[data-theme="dark"] .ct-v24-page [style*="background-color:#fff"],
html[data-theme="dark"] .ct-v24-page [style*="background-color: #fff"],
html[data-theme="dark"] .ct-v24-page [style*="background-color:#ffffff"],
html[data-theme="dark"] .ct-v24-page [style*="background-color: #ffffff"],
html[data-theme="dark"] .ct-v24-page [style*="background:#f8fafc"],
html[data-theme="dark"] .ct-v24-page [style*="background: #f8fafc"],
html[data-theme="dark"] .ct-v24-page [style*="background:#f1f5f9"],
html[data-theme="dark"] .ct-v24-page [style*="background: #f1f5f9"]{
  background:#111c2d!important; color:#e5edf8!important; border-color:#2c3b50!important;
}

html[data-theme="dark"] .ct-v24-page [style*="color:#0f172a"],
html[data-theme="dark"] .ct-v24-page [style*="color: #0f172a"],
html[data-theme="dark"] .ct-v24-page [style*="color:#111827"],
html[data-theme="dark"] .ct-v24-page [style*="color: #111827"],
html[data-theme="dark"] .ct-v24-page [style*="color:#1e293b"],
html[data-theme="dark"] .ct-v24-page [style*="color: #1e293b"],
html[data-theme="dark"] .ct-v24-page [style*="color:#334155"],
html[data-theme="dark"] .ct-v24-page [style*="color: #334155"],
html[data-theme="dark"] .ct-v24-page [style*="color:#475569"],
html[data-theme="dark"] .ct-v24-page [style*="color: #475569"],
html[data-theme="dark"] .ct-v24-page [style*="color:#64748b"],
html[data-theme="dark"] .ct-v24-page [style*="color: #64748b"]{
  color:#cbd5e1!important; -webkit-text-fill-color:#cbd5e1!important;
}

html[data-theme="dark"] .ct-v24-page [style*="border:1px solid #e2e8f0"],
html[data-theme="dark"] .ct-v24-page [style*="border: 1px solid #e2e8f0"],
html[data-theme="dark"] .ct-v24-page [style*="border:1px solid #dbe4ee"],
html[data-theme="dark"] .ct-v24-page [style*="border: 1px solid #dbe4ee"]{
  border-color:#2c3b50!important;
}

/* Common page shells */
.ct-v24-tool > #main-content,
.ct-v24-tool > .pg-wrap,
.ct-v24-tool > .wrap,
.ct-v24-tool > .main-wrap,
.ct-v24-tool > .blog-container,
.ct-v24-tool > .page-wrap,
.ct-v24-tool > .page-container{
  width:min(var(--ct24-content),calc(100% - 32px))!important;
  max-width:var(--ct24-content)!important;
  margin-left:auto!important; margin-right:auto!important;
  min-width:0!important;
}

.ct-v24-tool > #main-content,
.ct-v24-tool > .pg-wrap,
.ct-v24-tool > .wrap,
.ct-v24-tool > .main-wrap{
  padding-left:0!important; padding-right:0!important;
}

/* Keep readable text measure without forcing calculator grids narrow. */
.ct-v24-tool .seo-article,
.ct-v24-tool .content-section,
.ct-v24-tool .methodology-content,
.ct-v24-tool .article-content,
.ct-v24-tool .faq-section{
  width:100%; max-width:var(--ct24-read); margin-left:auto!important; margin-right:auto!important;
}

/* Common calculator containers that were not part of the older class system. */
html[data-theme="dark"] .ct-v24-tool .calculator-box,
html[data-theme="dark"] .ct-v24-tool .calculator-container,
html[data-theme="dark"] .ct-v24-tool .input-card,
html[data-theme="dark"] .ct-v24-tool .form-card,
html[data-theme="dark"] .ct-v24-tool .result-card,
html[data-theme="dark"] .ct-v24-tool .tool-panel,
html[data-theme="dark"] .ct-v24-tool .panel-card{
  background:#111c2d!important; color:#e5edf8!important; border-color:#2c3b50!important;
}

html[data-theme="dark"] .ct-v24-tool .calculator-box p,
html[data-theme="dark"] .ct-v24-tool .calculator-container p,
html[data-theme="dark"] .ct-v24-tool .input-card p,
html[data-theme="dark"] .ct-v24-tool .form-card p,
html[data-theme="dark"] .ct-v24-tool .result-card p,
html[data-theme="dark"] .ct-v24-tool .tool-panel p,
html[data-theme="dark"] .ct-v24-tool .panel-card p{color:#aebbd0!important;}

/* Mobile: one predictable gutter across every shell. */
@media(max-width:900px){
  .ct-v24-tool > #main-content,.ct-v24-tool > .pg-wrap,.ct-v24-tool > .wrap,.ct-v24-tool > .main-wrap,.ct-v24-tool > .blog-container,.ct-v24-tool > .page-wrap,.ct-v24-tool > .page-container{width:calc(100% - 24px)!important;}
}
@media(max-width:560px){
  .ct-v24-tool > #main-content,.ct-v24-tool > .pg-wrap,.ct-v24-tool > .wrap,.ct-v24-tool > .main-wrap,.ct-v24-tool > .blog-container,.ct-v24-tool > .page-wrap,.ct-v24-tool > .page-container{width:calc(100% - 20px)!important;}
}

/* CalcuTools Unified UI v2.5 | canonical all-page shell + theme contract | 17 Sep 2026 */

/* Theme contract. Page content now inherits one set of semantic variables. */
body.ct-v24-page{
  --bg:#f5f8fc!important;
  --surface:#ffffff!important;
  --surface2:#f8fafc!important;
  --surface-2:#f8fafc!important;
  --surface3:#eef3f9!important;
  --surface-3:#eef3f9!important;
  --nav:#ffffff!important;
  --primary:#2563eb!important;
  --primary-d:#1d4ed8!important;
  --primary-l:#eff6ff!important;
  --green:#059669!important;
  --green-l:#ecfdf5!important;
  --amber:#d97706!important;
  --amber-l:#fffbeb!important;
  --red:#dc2626!important;
  --red-l:#fef2f2!important;
  --purple:#7c3aed!important;
  --purple-l:#f5f3ff!important;
  --text:#0f172a!important;
  --text2:#334155!important;
  --muted:#64748b!important;
  --border:#dbe4ee!important;
  --white:#ffffff!important;
  --ct-bg:#f5f8fc!important;
  --ct-surface:#ffffff!important;
  --ct-surface-2:#f8fafc!important;
  --ct-text:#0f172a!important;
  --ct-muted:#64748b!important;
  --ct-border:#dbe4ee!important;
  --font-body:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  --font-head:Sora,Inter,ui-sans-serif,system-ui,sans-serif!important;
}

html[data-theme="dark"] body.ct-v24-page{
  --bg:#0b1220!important;
  --surface:#111c2d!important;
  --surface2:#142236!important;
  --surface-2:#142236!important;
  --surface3:#172236!important;
  --surface-3:#172236!important;
  --nav:#0b1220!important;
  --primary:#60a5fa!important;
  --primary-d:#3b82f6!important;
  --primary-l:#17304f!important;
  --green:#34d399!important;
  --green-l:#163322!important;
  --amber:#fbbf24!important;
  --amber-l:#382b14!important;
  --red:#f87171!important;
  --red-l:#3a171a!important;
  --purple:#a78bfa!important;
  --purple-l:#27203a!important;
  --text:#f8fafc!important;
  --text2:#cbd5e1!important;
  --muted:#aebbd0!important;
  --border:#334155!important;
  --white:#111c2d!important;
  --ct-bg:#0b1220!important;
  --ct-surface:#111c2d!important;
  --ct-surface-2:#142236!important;
  --ct-text:#f8fafc!important;
  --ct-muted:#aebbd0!important;
  --ct-border:#334155!important;
}

/* A single canvas everywhere. */
body.ct-v24-page{font-family:var(--font-body);background:var(--bg)!important;color:var(--text)!important;}
body.ct-v24-page h1,body.ct-v24-page h2,body.ct-v24-page h3,body.ct-v24-page h4,body.ct-v24-page h5,body.ct-v24-page h6{font-family:var(--font-head);}
body.ct-v24-page > .hub-banner{width:100%!important;border-radius:0!important;margin:0!important;box-sizing:border-box!important;}

/* Inline legacy colors now resolve to semantic variables before dark-mode safety rules run. */
body.ct-v24-page [style*="background:#fff"],
body.ct-v24-page [style*="background: #fff"],
body.ct-v24-page [style*="background:#ffffff"],
body.ct-v24-page [style*="background: #ffffff"]{background-color:var(--surface)!important;}
body.ct-v24-page [style*="background:#f8fafc"],
body.ct-v24-page [style*="background: #f8fafc"]{background-color:var(--surface2)!important;}
body.ct-v24-page [style*="background:#f1f5f9"],
body.ct-v24-page [style*="background: #f1f5f9"]{background-color:var(--surface3)!important;}
body.ct-v24-page [style*="color:#0f172a"],
body.ct-v24-page [style*="color: #0f172a"],
body.ct-v24-page [style*="color:#111827"],
body.ct-v24-page [style*="color: #111827"],
body.ct-v24-page [style*="color:#1e293b"],
body.ct-v24-page [style*="color: #1e293b"]{color:var(--text)!important;-webkit-text-fill-color:var(--text)!important;}
body.ct-v24-page [style*="color:#334155"],
body.ct-v24-page [style*="color: #334155"]{color:var(--text2)!important;-webkit-text-fill-color:var(--text2)!important;}
body.ct-v24-page [style*="color:#475569"],
body.ct-v24-page [style*="color: #475569"],
body.ct-v24-page [style*="color:#64748b"],
body.ct-v24-page [style*="color: #64748b"]{color:var(--muted)!important;-webkit-text-fill-color:var(--muted)!important;}
body.ct-v24-page [style*="border:1px solid #e2e8f0"],
body.ct-v24-page [style*="border: 1px solid #e2e8f0"],
body.ct-v24-page [style*="border:1px solid #dbe4ee"],
body.ct-v24-page [style*="border: 1px solid #dbe4ee"]{border-color:var(--border)!important;}

/* Dark-mode surface contract for legacy page components that never received a modern class. */
html[data-theme="dark"] body.ct-v24-page .calculator-box,
html[data-theme="dark"] body.ct-v24-page .calculator-container,
html[data-theme="dark"] body.ct-v24-page .input-card,
html[data-theme="dark"] body.ct-v24-page .form-card,
html[data-theme="dark"] body.ct-v24-page .result-card,
html[data-theme="dark"] body.ct-v24-page .tool-panel,
html[data-theme="dark"] body.ct-v24-page .panel,
html[data-theme="dark"] body.ct-v24-page .panel-card,
html[data-theme="dark"] body.ct-v24-page .content-card,
html[data-theme="dark"] body.ct-v24-page .article-card{
  background:#111c2d!important;color:#e5edf8!important;border-color:#334155!important;
}

/* Protect readable labels inside the modern dark shell. */
html[data-theme="dark"] body.ct-v24-page .calculator-box p,
html[data-theme="dark"] body.ct-v24-page .calculator-container p,
html[data-theme="dark"] body.ct-v24-page .input-card p,
html[data-theme="dark"] body.ct-v24-page .form-card p,
html[data-theme="dark"] body.ct-v24-page .result-card p,
html[data-theme="dark"] body.ct-v24-page .panel p,
html[data-theme="dark"] body.ct-v24-page .content-card p,
html[data-theme="dark"] body.ct-v24-page .article-card p{color:#aebbd0!important;}

/* Mobile: never let a legacy fixed width punch outside the viewport. */
body.ct-v24-page,.ct-v24-page *{max-width:100%;}
body.ct-v24-page .container,body.ct-v24-page .pg-wrap,body.ct-v24-page .pg-wrap-wide,body.ct-v24-page .page-wrap,body.ct-v24-page .page-container,body.ct-v24-page .main-wrap,body.ct-v24-page .wrap{min-width:0!important;}
@media(max-width:700px){
  body.ct-v24-page .input-grid,body.ct-v24-page .two-col,body.ct-v24-page .result-grid,body.ct-v24-page .tools-grid{min-width:0!important;}
  body.ct-v24-page table{display:block!important;overflow-x:auto!important;white-space:normal;}
}
@media(max-width:560px){
  body.ct-v24-page .ct-v7-brand-text{font-size:17px!important;}
  body.ct-v24-page .ct-v24-footer-bottom{align-items:flex-start!important;}
}

/* Advance Tax is now structurally aligned with every other calculator page. */
.ct-v24-page-h1{max-width:var(--ct24-read);margin:8px auto 8px;font-size:clamp(28px,4vw,42px);line-height:1.14;letter-spacing:-.035em;color:var(--text);}
.ct-v24-page-lede{max-width:var(--ct24-read);margin:0 auto 18px;color:var(--muted);line-height:1.65;font-size:14px;}
html[data-theme="dark"] .ct-v24-page-h1{color:#f8fafc;}


/* ================================================================
   CalcuTools Unified UI v2.6 · final technical hardening
   ================================================================ */
*,*::before,*::after{box-sizing:border-box}
html{color-scheme:light}
html[data-theme="dark"],html.dark{color-scheme:dark}
html,body{max-width:100%;overflow-x:hidden}
body{margin:0;min-width:0;background:var(--ct-bg,#f6f8fc);color:var(--ct-text,#0f172a)}
img,svg,video,canvas,iframe{max-width:100%}
.ct-v7-nav{width:100%;min-width:0}
.ct-v7-nav-inner{width:min(100%,1180px);margin:0 auto;min-width:0}
.ct-v7-brand,.ct-v24-footer-brand{color:inherit!important;text-decoration:none!important}
.ct-v7-brand-mark,.ct-v24-footer-brand svg{flex:0 0 auto}
.ct-v24-page .container{width:min(100% - 32px,920px)!important;max-width:920px!important;margin-inline:auto!important}
.ct-v24-page .seo-article,.ct-v24-page .seo-section{max-width:920px!important;margin-inline:auto!important}
.ct-v24-page .calc-card,.ct-v24-page .card,.ct-v24-page .calculator-box,.ct-v24-page .calculator-container,.ct-v24-page .input-card,.ct-v24-page .result-card,.ct-v24-page .tool-panel,.ct-v24-page .panel-card{min-width:0;max-width:100%}
.ct-v24-page table{max-width:100%;display:block;overflow-x:auto}
.ct-v24-page input,.ct-v24-page select,.ct-v24-page textarea{max-width:100%}
.ct-v24-page button,.ct-v24-page a{word-break:normal}
/* Strong dark-mode contract, including pages with legacy inline light-theme values. */
html[data-theme="dark"] body,html.dark body{background:#0b1220!important;color:#e8eef7!important}
html[data-theme="dark"] .ct-v24-page .container,html.dark .ct-v24-page .container{color:#e8eef7}
html[data-theme="dark"] .ct-v24-page :where(.calc-card,.card,.calculator-box,.calculator-container,.input-card,.form-card,.result-card,.tool-panel,.panel-card,.seo-article,.seo-section,.info-box,.guide-box,.related-section){background-color:#111c2d!important;border-color:#2c3b50!important;color:#e8eef7!important}
html[data-theme="dark"] .ct-v24-page :where(h1,h2,h3,h4,h5,h6,.header-text h1,.hero h1,.card-title,.calc-card-title,.metric-val,.final-total .val){color:#f3f7fc!important}
html[data-theme="dark"] .ct-v24-page :where(p,.header-text p,.hero p,.seo-article p,.seo-section p,.card-desc,.calc-card-desc,.metric-label,.muted,.small,.hint){color:#b8c7d9!important}
html[data-theme="dark"] .ct-v24-page :where(input,select,textarea){background:#0f1a2b!important;color:#f3f7fc!important;border-color:#3b4d64!important}
html[data-theme="dark"] .ct-v24-page :where(.results-box,.result-grid,.result-metric,.final-total){background:#142236!important;border-color:#33465f!important;color:#e8eef7!important}
html[data-theme="dark"] .ct-v24-page :where(.related-card,.trend-item,.goal-card,.pop-card,.cat-card,.ct-sprint2-card,.ct-growth-v4-card){background:#111c2d!important;border-color:#33465f!important;color:#e8eef7!important}
html[data-theme="dark"] .ct-v24-page :where(.ct-trust){--trust-bg:#111c2d;--trust-text:#e8eef7;--trust-muted:#a9b8cd;--trust-border:#2c3b50;background:#111c2d!important;color:#e8eef7!important}
html[data-theme="dark"] .ct-v24-page :where(.ct-trust-item){background:#142236!important}
html[data-theme="dark"] .ct-v24-page :where([style*="background:#fff"],[style*="background: #fff"],[style*="background-color:#fff"],[style*="background-color: #fff"],[style*="background:white"],[style*="background: white"],[style*="background-color:white"],[style*="background-color: white"]){background:#111c2d!important;border-color:#33465f!important}
html[data-theme="dark"] .ct-v24-page :where([style*="color:#0f172a"],[style*="color: #0f172a"],[style*="color:#111827"],[style*="color: #111827"],[style*="color:#1e293b"],[style*="color: #1e293b"],[style*="color:#334155"],[style*="color: #334155"],[style*="color:#475569"],[style*="color: #475569"],[style*="color:#64748b"],[style*="color: #64748b"]){color:#cbd5e1!important;-webkit-text-fill-color:#cbd5e1!important}
/* Prevent trust/freshness raw-text appearance if a stale stylesheet is cached. */
.ct-trust{display:block!important;position:relative;z-index:1}
/* Mobile alignment */
@media(max-width:700px){.ct-v24-page .container{width:min(100% - 24px,920px)!important}.ct-v7-nav-inner{width:100%}.ct-trust-grid{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.ct-trust-grid{grid-template-columns:1fr}.ct-v24-page .calc-card,.ct-v24-page .card{padding:18px!important}}


/* CalcuTools Product Layer v3.1 */
.ct-v31-actions{max-width:920px;margin:18px auto 24px;padding:14px 16px;border:1px solid var(--border,#e2e8f0);border-radius:16px;background:var(--surface,#fff);display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.ct-v31-actions-copy{display:flex;flex-direction:column;gap:2px;min-width:180px}.ct-v31-actions-copy strong{font-size:14px;color:var(--text,#0f172a)}.ct-v31-actions-copy span{font-size:12px;color:var(--muted,#64748b)}
.ct-v31-actions-buttons{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.ct-v31-actions-buttons button{border:1px solid var(--border,#cbd5e1);background:var(--surface2,#f8fafc);color:var(--text,#0f172a);min-height:40px;padding:9px 12px;border-radius:10px;font-weight:750;cursor:pointer}.ct-v31-actions-buttons button:hover{border-color:#2563eb;color:#2563eb}.ct-v31-actions-buttons button:first-child{background:#2563eb;color:#fff;border-color:#2563eb}.ct-v31-actions-buttons button:first-child:hover{background:#1d4ed8;color:#fff}
.ct-v31-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,16px);opacity:0;pointer-events:none;background:#0f172a;color:#fff;padding:10px 14px;border-radius:10px;font-size:13px;font-weight:700;z-index:99999;transition:opacity .18s,transform .18s}.ct-v31-toast.show{opacity:1;transform:translate(-50%,0)}
html[data-theme="dark"] .ct-v31-actions{background:#0f172a;border-color:#334155;box-shadow:0 10px 30px rgba(0,0,0,.22)}html[data-theme="dark"] .ct-v31-actions-copy strong{color:#f8fafc}html[data-theme="dark"] .ct-v31-actions-buttons button{background:#111827;border-color:#475569;color:#e2e8f0}html[data-theme="dark"] .ct-v31-actions-buttons button:hover{border-color:#60a5fa;color:#93c5fd}
@media(max-width:760px){.ct-v31-actions{margin:14px 12px 20px;padding:14px;display:block}.ct-v31-actions-copy{margin-bottom:10px}.ct-v31-actions-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ct-v31-actions-buttons button{width:100%}}

