/**
 * RH embeddable widgets — scoped styles (layout + range + assumptions popover).
 * Pair with rh-page-builder-2026-base + utilities for design tokens / utility classes.
 */

/* --------------------------------------------------------------------------
   Shared widget tokens
   -------------------------------------------------------------------------- */

.rh-widget--payersync-calculator,
.rh-widget--surcharging-roi,
.rh-widget--increase-cashflow {
    --rh-widget-black: #002244;
    --rh-widget-blue: #006dc2;
    --rh-widget-orange: #cd4104;
    --rh-widget-gray: #e5e7eb;
    --rh-widget-surface: #f5faff;
    --rh-widget-thumb-size: 0.75rem;
    color: var(--rh-widget-black);
    max-width: 26rem;
    margin: 0 auto;
}

/* --------------------------------------------------------------------------
   Shared card, header, fields, slider, results
   -------------------------------------------------------------------------- */

.rh-widget--payersync-calculator .rh-payersync-card,
.rh-widget--surcharging-roi .rh-surcharging-roi-card {
    background: #fff;
    border: 1px solid var(--rh-widget-gray);
    border-radius: 0.75rem;
    box-shadow: 0 8px 24px rgba(0, 34, 68, 0.08);
    padding: 1.5rem;
}

.rh-widget--payersync-calculator .rh-payersync-card {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.rh-widget--payersync-calculator h2.heading.heading-md,
.rh-widget--surcharging-roi h2.heading.heading-md {
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-style: normal;
    margin-top: 0;
    margin-bottom: 0;
    line-height: 1.2;
    font-size: clamp(1.25rem, 1.5vw + 0.875rem, 1.5rem);
    font-weight: 600;
    letter-spacing: 0;
}

.rh-widget--payersync-calculator .rh-payersync-header p,
.rh-widget--surcharging-roi .rh-surcharging-roi-header p {
    margin-top: 0.375rem;
    opacity: 0.85;
}

.rh-widget--payersync-calculator .rh-payersync-fields,
.rh-widget--surcharging-roi .rh-surcharging-roi-fields {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.rh-widget--payersync-calculator .rh-payersync-field {
    padding: 0.875rem 0;
    border-bottom: 1px solid var(--rh-widget-gray);
}

.rh-widget--surcharging-roi .rh-surcharging-roi-field {
    padding: 0.875rem 0;
}

.rh-widget--payersync-calculator .rh-payersync-field:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-field:last-child {
    padding-bottom: 0;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-mix-head {
    align-items: flex-end;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-mix-side {
    display: inline-flex;
    align-items: baseline;
    gap: 0.4rem;
    color: var(--rh-widget-black);
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.3;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-mix-side--debit {
    text-align: right;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-mix-note {
    margin-top: 0.5rem;
    opacity: 0.7;
    font-size: 0.75rem;
}

.rh-widget--payersync-calculator .rh-payersync-field-head,
.rh-widget--surcharging-roi .rh-surcharging-roi-field-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.625rem;
}

.rh-widget--payersync-calculator .rh-payersync-field-head > label,
.rh-widget--surcharging-roi .rh-surcharging-roi-field-head > label {
    color: var(--rh-widget-black);
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.3;
    flex: 1;
    min-width: 0;
}

.rh-widget--payersync-calculator .rh-payersync-value,
.rh-widget--surcharging-roi .rh-surcharging-roi-value {
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-size: clamp(1rem, 0.5vw + 0.875rem, 1.125rem);
    font-weight: 600;
    line-height: 1.2;
    color: var(--rh-widget-black);
    flex-shrink: 0;
    transition: color 0.15s ease;
}

.rh-widget--payersync-calculator .rh-payersync-value.is-updated,
.rh-widget--surcharging-roi .rh-surcharging-roi-value.is-updated {
    color: var(--rh-widget-blue);
}

.rh-widget--payersync-calculator .rh-payersync-slider-wrap,
.rh-widget--surcharging-roi .rh-surcharging-roi-slider-wrap {
    --range-progress: 0%;
    display: grid;
    grid-template-rows: var(--rh-widget-thumb-size) auto;
    row-gap: 0.375rem;
    align-items: center;
}

.rh-widget--payersync-calculator .rh-payersync-slider-rail,
.rh-widget--surcharging-roi .rh-surcharging-roi-slider-rail {
    grid-row: 1;
    grid-column: 1;
    position: relative;
    align-self: center;
    width: 100%;
    height: 0.375rem;
    background: var(--rh-widget-gray);
    border-radius: 9999px;
    overflow: hidden;
    pointer-events: none;
    z-index: 0;
}

.rh-widget--payersync-calculator .rh-payersync-slider-fill,
.rh-widget--surcharging-roi .rh-surcharging-roi-slider-fill {
    height: 100%;
    width: var(--range-progress);
    background: var(--rh-widget-blue);
    border-radius: 9999px;
    transition: width 0.08s ease;
}

.rh-widget--payersync-calculator .rh-payersync-range,
.rh-widget--surcharging-roi .rh-surcharging-roi-range {
    grid-row: 1;
    grid-column: 1;
    position: relative;
    z-index: 1;
    width: 100%;
    height: var(--rh-widget-thumb-size);
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    outline: none;
    box-shadow: none;
    align-self: center;
}

.rh-widget--payersync-calculator .rh-payersync-range:focus,
.rh-widget--surcharging-roi .rh-surcharging-roi-range:focus {
    outline: none;
}

.rh-widget--payersync-calculator .rh-payersync-range:focus-visible::-webkit-slider-thumb,
.rh-widget--surcharging-roi .rh-surcharging-roi-range:focus-visible::-webkit-slider-thumb {
    box-shadow: 0 0 0 3px rgba(0, 109, 194, 0.25);
}

.rh-widget--payersync-calculator .rh-payersync-range:focus-visible::-moz-range-thumb,
.rh-widget--surcharging-roi .rh-surcharging-roi-range:focus-visible::-moz-range-thumb {
    box-shadow: 0 0 0 3px rgba(0, 109, 194, 0.25);
}

.rh-widget--payersync-calculator .rh-payersync-range::-webkit-slider-runnable-track,
.rh-widget--surcharging-roi .rh-surcharging-roi-range::-webkit-slider-runnable-track {
    height: 0.375rem;
    background: transparent;
    border: none;
    box-shadow: none;
}

.rh-widget--payersync-calculator .rh-payersync-range::-moz-range-track,
.rh-widget--surcharging-roi .rh-surcharging-roi-range::-moz-range-track {
    height: 0.375rem;
    background: transparent;
    border: none;
    box-shadow: none;
}

.rh-widget--payersync-calculator .rh-payersync-range::-moz-range-progress,
.rh-widget--surcharging-roi .rh-surcharging-roi-range::-moz-range-progress {
    background: transparent;
    border: none;
}

.rh-widget--payersync-calculator .rh-payersync-range::-webkit-slider-thumb,
.rh-widget--surcharging-roi .rh-surcharging-roi-range::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
    width: var(--rh-widget-thumb-size);
    height: var(--rh-widget-thumb-size);
    margin-top: calc((0.375rem - var(--rh-widget-thumb-size)) / 2);
    border: 2px solid var(--rh-widget-blue);
    border-radius: 9999px;
    background-color: #fff;
    box-shadow: 0 2px 5px rgba(0, 34, 68, 0.12);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.rh-widget--payersync-calculator .rh-payersync-range:active::-webkit-slider-thumb,
.rh-widget--surcharging-roi .rh-surcharging-roi-range:active::-webkit-slider-thumb {
    transform: scale(1.1);
    box-shadow: 0 3px 8px rgba(0, 34, 68, 0.18);
}

.rh-widget--payersync-calculator .rh-payersync-range::-moz-range-thumb,
.rh-widget--surcharging-roi .rh-surcharging-roi-range::-moz-range-thumb {
    box-sizing: border-box;
    width: var(--rh-widget-thumb-size);
    height: var(--rh-widget-thumb-size);
    border: 2px solid var(--rh-widget-blue);
    border-radius: 9999px;
    background-color: #fff;
    box-shadow: 0 2px 5px rgba(0, 34, 68, 0.12);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.rh-widget--payersync-calculator .rh-payersync-range:active::-moz-range-thumb,
.rh-widget--surcharging-roi .rh-surcharging-roi-range:active::-moz-range-thumb {
    transform: scale(1.1);
}

.rh-widget--payersync-calculator .rh-payersync-slider-labels,
.rh-widget--surcharging-roi .rh-surcharging-roi-slider-labels {
    grid-row: 2;
    grid-column: 1;
    display: flex;
    justify-content: space-between;
    font-size: 0.6875rem;
    color: var(--rh-widget-black);
    opacity: 0.6;
    margin-top: 0;
}

.rh-widget--payersync-calculator .rh-payersync-results-body,
.rh-widget--surcharging-roi .rh-surcharging-roi-results-body {
    background: var(--rh-widget-surface);
    border: 1px solid var(--rh-widget-gray);
    border-radius: 0.625rem;
    padding: 1.25rem;
}

.rh-widget--payersync-calculator .rh-payersync-hero,
.rh-widget--surcharging-roi .rh-surcharging-roi-hero {
    text-align: center;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid var(--rh-widget-gray);
}

.rh-widget--payersync-calculator .rh-payersync-hero-label,
.rh-widget--surcharging-roi .rh-surcharging-roi-hero-label {
    margin: 0 0 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--rh-widget-black);
    opacity: 0.85;
}

.rh-widget--payersync-calculator .rh-payersync-hero-value,
.rh-widget--surcharging-roi .rh-surcharging-roi-hero-value {
    margin: 0;
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-size: clamp(1.75rem, 2.5vw + 1rem, 2.25rem);
    font-weight: 600;
    line-height: 1.15;
    color: var(--rh-widget-blue);
    letter-spacing: -0.02em;
}

.rh-widget--payersync-calculator .rh-payersync-metrics,
.rh-widget--surcharging-roi .rh-surcharging-roi-metrics {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}

.rh-widget--payersync-calculator .rh-payersync-metric,
.rh-widget--surcharging-roi .rh-surcharging-roi-metric {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.rh-widget--payersync-calculator .rh-payersync-metric-label,
.rh-widget--surcharging-roi .rh-surcharging-roi-metric-label {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--rh-widget-black);
    opacity: 0.75;
    line-height: 1.3;
}

.rh-widget--payersync-calculator .rh-payersync-metric-value,
.rh-widget--surcharging-roi .rh-surcharging-roi-metric-value {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--rh-widget-black);
    line-height: 1.2;
}

.rh-widget--payersync-calculator .rh-payersync-disclaimer,
.rh-widget--surcharging-roi .rh-surcharging-roi-disclaimer {
    margin-top: 0;
    opacity: 0.65;
    font-size: 0.75rem;
    text-align: center;
}

.rh-widget--payersync-calculator .rh-payersync-results-links,
.rh-widget--surcharging-roi .rh-surcharging-roi-results-links {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    align-items: flex-start;
}

.rh-widget--payersync-calculator .rh-payersync-foot,
.rh-widget--surcharging-roi .rh-surcharging-roi-foot {
    position: relative;
}

.rh-widget--payersync-calculator .rh-payersync-assumptions-toggle,
.rh-widget--surcharging-roi .rh-surcharging-roi-assumptions-toggle {
    cursor: pointer;
    border: none;
    background: none;
    padding: 0;
    font: inherit;
    font-weight: 400;
    font-size: 0.8125rem;
    text-align: left;
    text-decoration: none;
    text-underline-offset: 2px;
    color: inherit;
    display: inline-flex;
    align-items: center;
}

.rh-widget--payersync-calculator .rh-payersync-assumptions-toggle:hover,
.rh-widget--payersync-calculator .rh-payersync-assumptions-toggle:focus-visible,
.rh-widget--surcharging-roi .rh-surcharging-roi-assumptions-toggle:hover,
.rh-widget--surcharging-roi .rh-surcharging-roi-assumptions-toggle:focus-visible {
    text-decoration: underline;
    color: var(--rh-widget-blue);
}

.rh-widget--payersync-calculator .rh-payersync-assumptions-toggle:focus-visible,
.rh-widget--surcharging-roi .rh-surcharging-roi-assumptions-toggle:focus-visible {
    outline: 2px solid var(--rh-widget-blue);
    outline-offset: 2px;
}

.rh-widget--payersync-calculator .rh-payersync-info-icon,
.rh-widget--surcharging-roi .rh-surcharging-roi-info-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.125rem;
    height: 1.125rem;
    margin-left: 0.25rem;
    border-radius: 9999px;
    border: 2px solid currentColor;
    font-size: 0.65rem;
    font-weight: 700;
    line-height: 1;
    flex-shrink: 0;
}

.rh-widget--payersync-calculator .rh-payersync-assumptions-panel,
.rh-widget--surcharging-roi .rh-surcharging-roi-assumptions-panel {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 100%;
    margin-bottom: 0.5rem;
    z-index: 20;
    padding: 1rem;
    background: #fff;
    border: 1px solid var(--rh-widget-gray);
    border-radius: 0.5rem;
    box-shadow: 0 8px 24px rgba(0, 34, 68, 0.12);
    line-height: 1.5;
    text-align: left;
    overflow: visible;
}

.rh-widget--payersync-calculator .rh-payersync-assumptions-panel[data-open="1"],
.rh-widget--surcharging-roi .rh-surcharging-roi-assumptions-panel[data-open="1"] {
    display: block;
}

.rh-widget--payersync-calculator .rh-payersync-assumptions-panel ul,
.rh-widget--payersync-calculator .rh-payersync-assumptions-panel ol,
.rh-widget--surcharging-roi .rh-surcharging-roi-assumptions-panel ol {
    margin: 0.5rem 0 0 1.25rem;
    padding: 0;
}

.rh-widget--payersync-calculator .rh-payersync-assumptions-panel li,
.rh-widget--surcharging-roi .rh-surcharging-roi-assumptions-panel li {
    margin-bottom: 0.5rem;
}

.rh-widget--payersync-calculator .rh-payersync-assumptions-panel p,
.rh-widget--surcharging-roi .rh-surcharging-roi-assumptions-panel p {
    margin: 0 0 0.5rem;
}

/* --------------------------------------------------------------------------
   Surcharging ROI — calculator-specific (steps, transitions, CTA)
   -------------------------------------------------------------------------- */

.rh-widget--surcharging-roi .rh-surcharging-roi-steps {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-step-dot {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 9999px;
    background: var(--rh-widget-gray);
    transition: background-color 0.25s ease, transform 0.25s ease;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-step-dot.is-active {
    background: var(--rh-widget-blue);
    transform: scale(1.25);
}

.rh-widget--surcharging-roi .rh-surcharging-roi-step-line {
    width: 2.5rem;
    height: 2px;
    background: var(--rh-widget-gray);
    border-radius: 1px;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-stage {
    position: relative;
    min-height: 22rem;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-panel {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    opacity: 0;
    transform: translateX(0.75rem);
    transition: opacity 0.26s ease, transform 0.26s ease;
    pointer-events: none;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-panel.is-active {
    opacity: 1;
    transform: translateX(0);
    pointer-events: auto;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-panel--results:not(.is-active) {
    position: absolute;
    inset: 0;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-layout[data-step="results"] .rh-surcharging-roi-panel--inputs:not(.is-active) {
    position: absolute;
    inset: 0;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-layout[data-step="inputs"] .rh-surcharging-roi-panel--results,
.rh-widget--surcharging-roi .rh-surcharging-roi-panel--results[hidden] {
    display: none !important;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-layout[data-step="results"] .rh-surcharging-roi-panel--inputs[hidden] {
    display: none !important;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.875rem 1rem;
    border: none;
    border-radius: 0.5rem;
    background: var(--rh-widget-blue);
    color: #fff;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-btn:hover:not(:disabled) {
    background: #005a9e;
    color: #fff;
    text-decoration: none;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 109, 194, 0.3);
}

.rh-widget--surcharging-roi .rh-surcharging-roi-btn:active:not(:disabled) {
    transform: translateY(0);
    box-shadow: none;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-btn:disabled {
    opacity: 0.75;
    cursor: wait;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-btn.is-loading .rh-surcharging-roi-btn-text {
    opacity: 0.7;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-btn.is-loading .rh-surcharging-roi-btn-arrow::after {
    animation: rh-surcharging-roi-pulse 0.6s ease infinite;
}

@keyframes rh-surcharging-roi-pulse {
    0%, 100% { opacity: 1; transform: translateX(0); }
    50% { opacity: 0.5; transform: translateX(3px); }
}

.rh-widget--surcharging-roi .rh-surcharging-roi-btn-arrow::after {
    content: '';
    display: inline-block;
    width: 0.5625rem;
    height: 0.875rem;
    background-image: url('data:image/svg+xml,%3Csvg width="9" height="14" viewBox="0 0 9 14" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M8.125 7.40625L2.0625 13.5C1.75 13.7812 1.28125 13.7812 1 13.5L0.28125 12.7812C0 12.5 0 12.0312 0.28125 11.7188L5.09375 6.875L0.28125 2.0625C0 1.75 0 1.28125 0.28125 1L1 0.28125C1.28125 0 1.75 0 2.0625 0.28125L8.125 6.375C8.40625 6.65625 8.40625 7.125 8.125 7.40625Z" fill="%23ffffff"/%3E%3C/svg%3E');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: transform 0.2s ease;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-btn:hover:not(:disabled) .rh-surcharging-roi-btn-arrow::after {
    transform: translateX(3px);
}

.rh-widget--surcharging-roi .rh-surcharging-roi-back {
    cursor: pointer;
    border: none;
    background: none;
    padding: 0;
    font: inherit;
    font-weight: 400;
    font-size: 0.8125rem;
    text-align: left;
    text-decoration: none;
    text-underline-offset: 2px;
    color: inherit;
}

.rh-widget--surcharging-roi .rh-surcharging-roi-back:hover,
.rh-widget--surcharging-roi .rh-surcharging-roi-back:focus-visible {
    text-decoration: underline;
    color: var(--rh-widget-blue);
}

.rh-widget--surcharging-roi .rh-surcharging-roi-back:focus-visible {
    outline: 2px solid var(--rh-widget-blue);
    outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
    .rh-widget--payersync-calculator .rh-payersync-slider-fill,
    .rh-widget--payersync-calculator .rh-payersync-value,
    .rh-widget--surcharging-roi .rh-surcharging-roi-panel,
    .rh-widget--surcharging-roi .rh-surcharging-roi-slider-fill,
    .rh-widget--surcharging-roi .rh-surcharging-roi-btn,
    .rh-widget--surcharging-roi .rh-surcharging-roi-step-dot,
    .rh-widget--surcharging-roi .rh-surcharging-roi-value {
        transition: none;
    }

    .rh-widget--surcharging-roi .rh-surcharging-roi-btn.is-loading .rh-surcharging-roi-btn-arrow::after {
        animation: none;
    }
}

/* --------------------------------------------------------------------------
   Increase Cashflow — same card/slider/results patterns as PayerSync
   -------------------------------------------------------------------------- */

.rh-widget--increase-cashflow .rh-cashflow-card {
    background: #fff;
    border: 1px solid var(--rh-widget-gray);
    border-radius: 0.75rem;
    box-shadow: 0 8px 24px rgba(0, 34, 68, 0.08);
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.rh-widget--increase-cashflow h2.heading.heading-md {
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-style: normal;
    margin-top: 0;
    margin-bottom: 0;
    line-height: 1.2;
    font-size: clamp(1.25rem, 1.5vw + 0.875rem, 1.5rem);
    font-weight: 600;
    letter-spacing: 0;
}

.rh-widget--increase-cashflow .rh-cashflow-eyebrow {
    margin: 0 0 0.35rem;
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--rh-widget-blue);
}

.rh-widget--increase-cashflow .rh-cashflow-header p {
    margin-top: 0.375rem;
    opacity: 0.85;
}

.rh-widget--increase-cashflow .rh-cashflow-fields {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.rh-widget--increase-cashflow .rh-cashflow-field {
    padding: 0.875rem 0;
    border-bottom: 1px solid var(--rh-widget-gray);
}

.rh-widget--increase-cashflow .rh-cashflow-field:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.rh-widget--increase-cashflow .rh-cashflow-field-head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.625rem;
}

.rh-widget--increase-cashflow .rh-cashflow-field-head > label {
    color: var(--rh-widget-black);
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.3;
    flex: 1;
    min-width: 0;
}

.rh-widget--increase-cashflow .rh-cashflow-value {
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-size: clamp(1rem, 0.5vw + 0.875rem, 1.125rem);
    font-weight: 600;
    line-height: 1.2;
    color: var(--rh-widget-black);
    flex-shrink: 0;
    transition: color 0.15s ease;
}

.rh-widget--increase-cashflow .rh-cashflow-value.is-updated {
    color: var(--rh-widget-blue);
}

.rh-widget--increase-cashflow .rh-cashflow-slider-wrap {
    --range-progress: 0%;
    display: grid;
    grid-template-rows: var(--rh-widget-thumb-size) auto;
    row-gap: 0.375rem;
    align-items: center;
}

.rh-widget--increase-cashflow .rh-cashflow-slider-rail {
    grid-row: 1;
    grid-column: 1;
    position: relative;
    align-self: center;
    width: 100%;
    height: 0.375rem;
    background: var(--rh-widget-gray);
    border-radius: 9999px;
    overflow: hidden;
    pointer-events: none;
    z-index: 0;
}

.rh-widget--increase-cashflow .rh-cashflow-slider-fill {
    height: 100%;
    width: var(--range-progress);
    background: var(--rh-widget-blue);
    border-radius: 9999px;
    transition: width 0.08s ease;
}

.rh-widget--increase-cashflow .rh-cashflow-range {
    grid-row: 1;
    grid-column: 1;
    position: relative;
    z-index: 1;
    width: 100%;
    height: var(--rh-widget-thumb-size);
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    outline: none;
    box-shadow: none;
    align-self: center;
}

.rh-widget--increase-cashflow .rh-cashflow-range:focus {
    outline: none;
}

.rh-widget--increase-cashflow .rh-cashflow-range:focus-visible::-webkit-slider-thumb {
    box-shadow: 0 0 0 3px rgba(0, 109, 194, 0.25);
}

.rh-widget--increase-cashflow .rh-cashflow-range:focus-visible::-moz-range-thumb {
    box-shadow: 0 0 0 3px rgba(0, 109, 194, 0.25);
}

.rh-widget--increase-cashflow .rh-cashflow-range::-webkit-slider-runnable-track {
    height: 0.375rem;
    background: transparent;
    border: none;
    box-shadow: none;
}

.rh-widget--increase-cashflow .rh-cashflow-range::-moz-range-track {
    height: 0.375rem;
    background: transparent;
    border: none;
    box-shadow: none;
}

.rh-widget--increase-cashflow .rh-cashflow-range::-moz-range-progress {
    background: transparent;
    border: none;
}

.rh-widget--increase-cashflow .rh-cashflow-range::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
    width: var(--rh-widget-thumb-size);
    height: var(--rh-widget-thumb-size);
    margin-top: calc((0.375rem - var(--rh-widget-thumb-size)) / 2);
    border: 2px solid var(--rh-widget-blue);
    border-radius: 9999px;
    background-color: #fff;
    box-shadow: 0 2px 5px rgba(0, 34, 68, 0.12);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.rh-widget--increase-cashflow .rh-cashflow-range:active::-webkit-slider-thumb {
    transform: scale(1.1);
    box-shadow: 0 3px 8px rgba(0, 34, 68, 0.18);
}

.rh-widget--increase-cashflow .rh-cashflow-range::-moz-range-thumb {
    box-sizing: border-box;
    width: var(--rh-widget-thumb-size);
    height: var(--rh-widget-thumb-size);
    border: 2px solid var(--rh-widget-blue);
    border-radius: 9999px;
    background-color: #fff;
    box-shadow: 0 2px 5px rgba(0, 34, 68, 0.12);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.rh-widget--increase-cashflow .rh-cashflow-range:active::-moz-range-thumb {
    transform: scale(1.1);
}

.rh-widget--increase-cashflow .rh-cashflow-slider-labels {
    grid-row: 2;
    grid-column: 1;
    display: flex;
    justify-content: space-between;
    font-size: 0.6875rem;
    color: var(--rh-widget-black);
    opacity: 0.6;
    margin-top: 0;
}

.rh-widget--increase-cashflow .rh-cashflow-results-body {
    background: var(--rh-widget-surface);
    border: 1px solid var(--rh-widget-gray);
    border-radius: 0.625rem;
    padding: 1.25rem;
}

.rh-widget--increase-cashflow .rh-cashflow-hero {
    text-align: center;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid var(--rh-widget-gray);
}

.rh-widget--increase-cashflow .rh-cashflow-hero-label {
    margin: 0 0 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--rh-widget-black);
    opacity: 0.85;
}

.rh-widget--increase-cashflow .rh-cashflow-hero-value {
    margin: 0;
    font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-size: clamp(1.75rem, 2.5vw + 1rem, 2.25rem);
    font-weight: 600;
    line-height: 1.15;
    color: var(--rh-widget-blue);
    letter-spacing: -0.02em;
}

.rh-widget--increase-cashflow .rh-cashflow-metrics {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}

.rh-widget--increase-cashflow .rh-cashflow-metric {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.rh-widget--increase-cashflow .rh-cashflow-metric-label {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--rh-widget-black);
    opacity: 0.75;
    line-height: 1.3;
}

.rh-widget--increase-cashflow .rh-cashflow-metric-value {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--rh-widget-black);
    line-height: 1.2;
}

.rh-widget--increase-cashflow .rh-cashflow-disclaimer {
    margin-top: 0;
    opacity: 0.65;
    font-size: 0.75rem;
    text-align: center;
}

.rh-widget--increase-cashflow .rh-cashflow-results-links {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    align-items: flex-start;
}

.rh-widget--increase-cashflow .rh-cashflow-foot {
    position: relative;
}

.rh-widget--increase-cashflow .rh-cashflow-assumptions-toggle {
    cursor: pointer;
    border: none;
    background: none;
    padding: 0;
    font: inherit;
    font-weight: 400;
    font-size: 0.8125rem;
    text-align: left;
    text-decoration: none;
    text-underline-offset: 2px;
    color: inherit;
    display: inline-flex;
    align-items: center;
}

.rh-widget--increase-cashflow .rh-cashflow-assumptions-toggle:hover,
.rh-widget--increase-cashflow .rh-cashflow-assumptions-toggle:focus-visible {
    text-decoration: underline;
    color: var(--rh-widget-blue);
}

.rh-widget--increase-cashflow .rh-cashflow-assumptions-toggle:focus-visible {
    outline: 2px solid var(--rh-widget-blue);
    outline-offset: 2px;
}

.rh-widget--increase-cashflow .rh-cashflow-info-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.125rem;
    height: 1.125rem;
    margin-left: 0.25rem;
    border-radius: 9999px;
    border: 2px solid currentColor;
    font-size: 0.65rem;
    font-weight: 700;
    line-height: 1;
    flex-shrink: 0;
}

.rh-widget--increase-cashflow .rh-cashflow-assumptions-panel {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 100%;
    margin-bottom: 0.5rem;
    z-index: 20;
    padding: 1rem;
    background: #fff;
    border: 1px solid var(--rh-widget-gray);
    border-radius: 0.5rem;
    box-shadow: 0 8px 24px rgba(0, 34, 68, 0.12);
    line-height: 1.5;
    text-align: left;
    overflow: visible;
}

.rh-widget--increase-cashflow .rh-cashflow-assumptions-panel[data-open="1"] {
    display: block;
}

.rh-widget--increase-cashflow .rh-cashflow-assumptions-panel ul,
.rh-widget--increase-cashflow .rh-cashflow-assumptions-panel ol {
    margin: 0.5rem 0 0 1.25rem;
    padding: 0;
}

.rh-widget--increase-cashflow .rh-cashflow-assumptions-panel li {
    margin-bottom: 0.5rem;
}

.rh-widget--increase-cashflow .rh-cashflow-assumptions-panel p {
    margin: 0 0 0.5rem;
}

