.boost-calculator-page {color-scheme: light;
  --page: #f5f7fb;
  --surface: #ffffff;
  --surface-soft: #f8faff;
  --ink: #12213a;
  --ink-soft: #52627a;
  --muted: #748197;
  --line: #e2e8f1;
  --line-strong: #ccd6e4;
  --blue: #1769e8;
  --blue-dark: #0f55c4;
  --blue-soft: #eaf2ff;
  --green: #16865a;
  --green-soft: #e9f8f1;
  --danger: #c43b3b;
  --footer: #0d1829;
  --footer-muted: #a8b4c7;
  --radius-sm: 12px;
  --radius: 18px;
  --radius-lg: 26px;
  --shadow: 0 18px 55px rgba(27, 49, 83, .08);
  --shell: 1240px;}
.boost-calculator-page, .boost-calculator-page * {box-sizing: border-box;}
.boost-calculator-page {margin: 0;
  min-width: 320px;
  background: var(--page);
  color: var(--ink);
  font-family: var(--font-sans);
  font-size: 16px;
  line-height: 1.55;
  text-rendering: optimizeLegibility;}
.boost-calculator-page button, .boost-calculator-page input {font: inherit;}
.boost-calculator-page a {color: inherit;}
.boost-calculator-page .shell {width: min(var(--shell), calc(100% - 40px)); margin-inline: auto;}
.boost-calculator-page .narrow-shell {max-width: 860px;}
.boost-calculator-page .sr-only {position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;}
.boost-calculator-page .button {min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid transparent;
  border-radius: 13px;
  padding: 0 20px;
  background: var(--blue);
  color: #fff;
  font-weight: 750;
  text-decoration: none;
  cursor: pointer;
  transition: background-color .18s ease, transform .18s ease, box-shadow .18s ease;}
.boost-calculator-page .button:hover {background: var(--blue-dark);}
.boost-calculator-page .button:active {transform: translateY(1px);}
.boost-calculator-page .button--small {min-height: 44px; padding-inline: 17px;}
.boost-calculator-page .button--wide {width: 100%;}
.boost-calculator-page .button--primary {box-shadow: 0 10px 24px rgba(23, 105, 232, .18);}
.boost-calculator-page .hero {padding: 58px 0 30px;
  background:
    radial-gradient(circle at 82% 18%, rgba(23, 105, 232, .08), transparent 30%),
    linear-gradient(180deg, #fff 0%, var(--page) 100%);}
.boost-calculator-page .breadcrumbs {display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin-bottom: 28px; color: var(--muted); font-size: 14px;}
.boost-calculator-page .breadcrumbs a {text-decoration: none;}
.boost-calculator-page .breadcrumbs a:hover {color: var(--blue);}
.boost-calculator-page .eyebrow, .boost-calculator-page .step-label {margin: 0 0 10px; color: var(--blue); font-size: 13px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase;}
.boost-calculator-page h1, .boost-calculator-page h2, .boost-calculator-page h3, .boost-calculator-page p {overflow-wrap: anywhere;}
.boost-calculator-page h1 {max-width: 820px; margin: 0; font-size: clamp(36px, 5vw, 60px); line-height: 1.06; letter-spacing: -.045em;}
.boost-calculator-page .hero__lead {max-width: 760px; margin: 22px 0 0; color: var(--ink-soft); font-size: clamp(18px, 2vw, 21px);}
.boost-calculator-page .calculator-section {padding: 24px 0 68px;}
.boost-calculator-page .calculator-grid {display: grid; grid-template-columns: minmax(360px, .78fr) minmax(0, 1.22fr); gap: 28px; align-items: start;}
.boost-calculator-page .card {min-width: 0; border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: var(--surface);
  box-shadow: var(--shadow);}
.boost-calculator-page .form-card, .boost-calculator-page .result-card {align-self: start; padding: clamp(24px, 3vw, 38px);}
.boost-calculator-page .card-heading h2, .boost-calculator-page .result-topline h2 {margin: 0; font-size: clamp(24px, 3vw, 32px); line-height: 1.2; letter-spacing: -.03em;}
.boost-calculator-page .card-heading > p:last-child {margin: 10px 0 0; color: var(--ink-soft);}
.boost-calculator-page form {margin-top: 30px;}
.boost-calculator-page .field {margin-bottom: 22px;}
.boost-calculator-page .field label, .boost-calculator-page .field legend {display: block; margin-bottom: 9px; color: var(--ink); font-weight: 720;}
.boost-calculator-page .level-fieldset {min-width: 0; padding: 0; border: 0;}
.boost-calculator-page input {width: 100%;
  min-height: 52px;
  border: 1px solid var(--line-strong);
  border-radius: 13px;
  padding: 0 15px;
  background: #fff;
  color: var(--ink);
  outline: none;
  transition: border-color .18s ease, box-shadow .18s ease;}
.boost-calculator-page input:hover {border-color: #aebcd0;}
.boost-calculator-page input:focus {border-color: var(--blue); box-shadow: 0 0 0 4px rgba(23, 105, 232, .13);}
.boost-calculator-page input[aria-invalid="true"] {border-color: var(--danger); box-shadow: 0 0 0 4px rgba(196, 59, 59, .1);}
.boost-calculator-page .field-hint, .boost-calculator-page .field-error {margin: 8px 0 0; font-size: 13px;}
.boost-calculator-page .field-hint {color: var(--muted);}
.boost-calculator-page .field-error, .boost-calculator-page .form-error {color: var(--danger);}
.boost-calculator-page .form-error {margin: -4px 0 18px; font-weight: 650;}
.boost-calculator-page .level-input-row {position: relative;}
.boost-calculator-page .level-input-row input {padding-right: 105px;}
.boost-calculator-page .input-suffix {position: absolute; top: 50%; right: 15px; transform: translateY(-50%); color: var(--muted); font-size: 14px; pointer-events: none;}
.boost-calculator-page .preset-row {display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; margin-top: 10px;}
.boost-calculator-page .preset-button {min-height: 44px;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: var(--surface-soft);
  color: var(--ink-soft);
  font-weight: 750;
  cursor: pointer;}
.boost-calculator-page .preset-button:hover {border-color: #b8c6d9; color: var(--ink);}
.boost-calculator-page .preset-button.is-active {border-color: var(--blue); background: var(--blue-soft); color: var(--blue-dark);}
.boost-calculator-page .result-card {position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 100% 0, rgba(23, 105, 232, .1), transparent 33%),
    #fff;}
.boost-calculator-page .result-card::before {content: ""; position: absolute; inset: 0 0 auto; height: 4px; background: var(--blue);}
.boost-calculator-page .result-topline {display: flex; justify-content: space-between; align-items: flex-start; gap: 20px;}
.boost-calculator-page .status-badge {display: inline-flex; min-height: 32px; align-items: center; border-radius: 999px; padding: 0 12px; background: var(--blue-soft); color: var(--blue-dark); font-size: 13px; font-weight: 780;}
.boost-calculator-page .status-badge.is-complete {background: var(--green-soft); color: var(--green);}
.boost-calculator-page .result-primary {margin: 34px 0 28px;}
.boost-calculator-page .result-primary strong {display: block; font-size: clamp(52px, 8vw, 80px); line-height: .96; letter-spacing: -.055em; color: var(--blue);}
.boost-calculator-page .result-primary span {display: block; margin-top: 12px; color: var(--ink-soft); font-size: 17px;}
.boost-calculator-page .result-metrics {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0;}
.boost-calculator-page .result-metrics div {padding: 15px 16px; border: 1px solid var(--line); border-radius: 14px; background: rgba(248, 250, 255, .78);}
.boost-calculator-page .result-metrics dt {color: var(--muted); font-size: 13px;}
.boost-calculator-page .result-metrics dd {margin: 4px 0 0; color: var(--ink); font-size: 22px; font-weight: 800;}
.boost-calculator-page .progress-block {margin-top: 24px;}
.boost-calculator-page .progress-labels {display: flex; justify-content: space-between; gap: 12px; margin-bottom: 9px; color: var(--ink-soft); font-size: 14px;}
.boost-calculator-page .progress-labels strong {color: var(--ink);}
.boost-calculator-page .progress {height: 10px; overflow: hidden; border-radius: 999px; background: #e7edf6;}
.boost-calculator-page .progress span {display: block; height: 100%; border-radius: inherit; background: var(--blue); transition: width .35s ease;}
.boost-calculator-page .feature-panel {margin-top: 24px; padding: 19px 20px; border-radius: 16px; background: var(--surface-soft); border: 1px solid var(--line);}
.boost-calculator-page .feature-panel__title {margin: 0; font-weight: 800;}
.boost-calculator-page .feature-panel ul {margin: 12px 0 0; padding-left: 20px; color: var(--ink-soft);}
.boost-calculator-page .feature-panel li + li {margin-top: 6px;}
.boost-calculator-page .calculation-example {margin: 20px 0 0; color: var(--ink); font-weight: 680;}
.boost-calculator-page .estimate-note {margin: 10px 0 0; color: var(--muted); font-size: 13px;}
.boost-calculator-page .copy-button {min-height: 44px; margin-top: 17px; border: 0; padding: 0; background: transparent; color: var(--blue); font-weight: 750; cursor: pointer;}
.boost-calculator-page .copy-button:hover {color: var(--blue-dark); text-decoration: underline;}
.boost-calculator-page .copy-status {min-height: 20px; margin: 0; color: var(--green); font-size: 13px;}
.boost-calculator-page .content-section {padding: 78px 0; background: #fff;}
.boost-calculator-page .content-section--muted {background: var(--page);}
.boost-calculator-page .section-heading {display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 420px); align-items: end; gap: 32px; max-width: none; margin-bottom: 30px;}
.boost-calculator-page .section-heading > div {min-width: 0; max-width: 760px;}
.boost-calculator-page .section-heading--single {grid-template-columns: minmax(0, 760px);}
.boost-calculator-page .section-heading h2, .boost-calculator-page .methodology-grid h2 {margin: 0; font-size: clamp(30px, 4vw, 44px); line-height: 1.12; letter-spacing: -.04em;}
.boost-calculator-page .section-heading > p:last-child {max-width: 420px; margin: 0 0 3px; color: var(--ink-soft);}
.boost-calculator-page .table-card {overflow-x: auto; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 12px 36px rgba(27, 49, 83, .05);}
.boost-calculator-page table {width: 100%; min-width: 720px; border-collapse: collapse; background: #fff;}
.boost-calculator-page th, .boost-calculator-page td {padding: 17px 20px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top;}
.boost-calculator-page thead th {background: var(--surface-soft); color: var(--muted); font-size: 13px; letter-spacing: .06em; text-transform: uppercase;}
.boost-calculator-page tbody th {width: 110px; color: var(--blue); font-size: 18px;}
.boost-calculator-page tbody td:nth-child(2) {width: 180px; font-size: 18px; font-weight: 800;}
.boost-calculator-page tbody tr:last-child th, .boost-calculator-page tbody tr:last-child td {border-bottom: 0;}
.boost-calculator-page .methodology-grid {display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr); gap: 44px; align-items: start;}
.boost-calculator-page .methodology-grid article > p:not(.eyebrow) {color: var(--ink-soft);}
.boost-calculator-page .formula-card {margin-top: 25px; padding: 22px; border: 1px solid #cbd9ee; border-radius: var(--radius); background: var(--blue-soft);}
.boost-calculator-page .formula-card p {margin: 0; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 14px;}
.boost-calculator-page .formula-card p + p {margin-top: 11px;}
.boost-calculator-page .source-card {padding: 26px; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: var(--shadow);}
.boost-calculator-page .source-card h3 {margin: 0; font-size: 23px; letter-spacing: -.025em;}
.boost-calculator-page .source-card ol {padding-left: 22px; color: var(--ink-soft);}
.boost-calculator-page .source-links {display: grid; gap: 9px; margin-top: 20px;}
.boost-calculator-page .source-links a {color: var(--blue); font-weight: 700; text-underline-offset: 3px;}
.boost-calculator-page .questions {border-top: 1px solid var(--line);}
.boost-calculator-page details {border-bottom: 1px solid var(--line);}
.boost-calculator-page summary {min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 18px; cursor: pointer; font-weight: 780; list-style: none;}
.boost-calculator-page summary::-webkit-details-marker {display: none;}
.boost-calculator-page summary::after {content: "+"; color: var(--blue); font-size: 24px; font-weight: 500;}
.boost-calculator-page details[open] summary::after {content: "−";}
.boost-calculator-page details p {margin: -2px 0 24px; color: var(--ink-soft);}
.boost-calculator-page .noscript-message {margin-bottom: 50px; padding: 16px 18px; border: 1px solid var(--line); border-radius: 12px; background: #fff;}
.boost-calculator-page :focus-visible {outline: 3px solid rgba(23, 105, 232, .42); outline-offset: 3px;}
@media (max-width: 980px) {
.boost-calculator-page .calculator-grid, .boost-calculator-page .methodology-grid {grid-template-columns: 1fr;}
.boost-calculator-page .section-heading {grid-template-columns: 1fr; align-items: start; gap: 14px;}
.boost-calculator-page .section-heading > p:last-child {max-width: 760px; margin: 0;}
}
@media (max-width: 660px) {
.boost-calculator-page .shell {width: min(100% - 28px, var(--shell));}
.boost-calculator-page .button--small {padding-inline: 12px; font-size: 14px;}
.boost-calculator-page .hero {padding-top: 42px;}
.boost-calculator-page .breadcrumbs {margin-bottom: 22px;}
.boost-calculator-page h1 {font-size: 39px;}
.boost-calculator-page .calculator-section {padding-bottom: 52px;}
.boost-calculator-page .form-card, .boost-calculator-page .result-card {padding: 22px; border-radius: 20px;}
.boost-calculator-page .result-topline {align-items: center;}
.boost-calculator-page .result-metrics {grid-template-columns: 1fr 1fr;}
.boost-calculator-page .result-metrics div {padding: 13px;}
.boost-calculator-page .result-primary strong {font-size: 55px;}
.boost-calculator-page .content-section {padding: 58px 0;}
.boost-calculator-page th, .boost-calculator-page td {padding: 14px 15px;}
}
@media (max-width: 390px) {
.boost-calculator-page .button--small {padding-inline: 10px;}
.boost-calculator-page .result-metrics {grid-template-columns: 1fr;}
}
@media (prefers-reduced-motion: reduce) {
.boost-calculator-page *, .boost-calculator-page *::before, .boost-calculator-page *::after {transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important;}
}
@media print {
.boost-calculator-page .copy-button, .boost-calculator-page .preset-row, .boost-calculator-page .button--primary, .boost-calculator-page .breadcrumbs {display: none !important;}
.boost-calculator-page {background: #fff;}
.boost-calculator-page .hero, .boost-calculator-page .content-section, .boost-calculator-page .calculator-section {padding: 20px 0; background: #fff;}
.boost-calculator-page .card, .boost-calculator-page .table-card, .boost-calculator-page .source-card {box-shadow: none; break-inside: avoid;}
}

/* Integrated CSP-safe progress and copy fallback. */
.boost-calculator-page .progress {
  display: block;
  width: 100%;
  height: 10px;
  overflow: hidden;
  appearance: none;
  border: 0;
  border-radius: 999px;
  background: #e7edf6;
}
.boost-calculator-page .progress::-webkit-progress-bar {
  background: #e7edf6;
  border-radius: 999px;
}
.boost-calculator-page .progress::-webkit-progress-value {
  background: var(--blue);
  border-radius: 999px;
  transition: width .35s ease;
}
.boost-calculator-page .progress::-moz-progress-bar {
  background: var(--blue);
  border-radius: 999px;
}
.boost-calculator-page .boost-copy-helper {
  position: fixed;
  inset: auto auto 0 0;
  width: 1px;
  height: 1px;
  padding: 0;
  opacity: 0;
  pointer-events: none;
}
.boost-calculator-page .boost-tool-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .8rem;
  margin-top: 1.5rem;
}
.boost-calculator-page .boost-tool-actions .button--secondary {
  background: transparent;
  color: var(--blue-dark);
  border-color: var(--line-strong);
  box-shadow: none;
}
.boost-calculator-page .boost-tool-actions .button--secondary:hover {
  background: var(--blue-soft);
  border-color: var(--blue);
}
