/**
 * Scoped styles for the Future Value Calculator.
 *
 * To prevent conflicts with your WordPress theme, copy only the necessary styles
 * from the Falcon theme CSS file and prefix each rule with the wrapper ID:
 * #future-value-calculator-wrapper
 *
 * Example:
 * .card { ... } becomes #future-value-calculator-wrapper .card { ... }
 */

/* Import Bootstrap Reboot and Grid for basic layout, as these are less likely to cause major conflicts. */








@import url("https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap-grid.min.css");
@import url("https://fonts.googleapis.com/css2?family=Public+Sans:wght@300;400;500;600;700&display=swap");

#future-value-calculator-wrapper {
    /* Establish a font stack that matches Falcon to contain font styles. */
    font-family: 'Public Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    color: #5e6e82; /* var(--falcon-700) */
    background-color: #f9fafc; /* var(--falcon-gray-100) */
    padding: 1rem;
    border-radius: 0.375rem;
    border: 1px solid #d8e2ef; /* var(--falcon-300) */
}

/* --- Scoped Component Styles (Examples) --- */

#future-value-calculator-wrapper .card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid #d8e2ef; /* var(--falcon-300) */
    border-radius: 0.375rem;
    margin-bottom: 1.5rem;
}

#future-value-calculator-wrapper .card-body {
    flex: 1 1 auto;
    padding: 1.5rem;
}

#future-value-calculator-wrapper .card-header {
    padding: 1.5rem;
    margin-bottom: 0;
    background-color: #fff;
    border-bottom: 1px solid #d8e2ef;
}

#future-value-calculator-wrapper .bg-light {
    background-color: #f9fafc !important; /* var(--falcon-gray-100) */
}

#future-value-calculator-wrapper h2, #future-value-calculator-wrapper .h2 {
    font-size: 1.5rem;
}
#future-value-calculator-wrapper h5, #future-value-calculator-wrapper .h5 {
    font-size: 1.09375rem;
}
#future-value-calculator-wrapper h6, #future-value-calculator-wrapper .h6 {
    font-size: .9375rem;
}
#future-value-calculator-wrapper .fs-3 {
    font-size: 1.953125rem !important;
}

#future-value-calculator-wrapper .text-700 {
    color: #5e6e82 !important;
}
#future-value-calculator-wrapper .text-primary {
    color: #2c7be5 !important;
}

#future-value-calculator-wrapper .form-label {
    margin-bottom: .5rem;
    font-size: .8125rem;
    font-weight: 700;
}

#future-value-calculator-wrapper .form-control {
    display: block;
    width: 100%;
    padding: .5rem 1rem;
    font-size: .9375rem;
    font-weight: 400;
    line-height: 1.5;
    color: #344050;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #d8e2ef;
    appearance: none;
    border-radius: .375rem;
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

#future-value-calculator-wrapper .form-select {
    display: block;
    width: 100%;
    padding: .5rem 2.25rem .5rem 1rem;
    font-size: .9375rem;
    font-weight: 400;
    line-height: 1.5;
    color: #344050;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343d46' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 16px 12px;
    border: 1px solid #d8e2ef;
    border-radius: .375rem;
    appearance: none;
}





#future-value-calculator-wrapper .btn {
    display: inline-block;
    font-weight: 700;
    line-height: 1.5;
    color: #344050;
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: .5rem 1rem;
    font-size: .9375rem;
    border-radius: .375rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

#future-value-calculator-wrapper .btn-primary {
    color: #fff;
    background-color: #2c7be5;
    border-color: #2c7be5;
}

#future-value-calculator-wrapper .btn-primary:hover {
    color: #fff;
    background-color: #2466bf;
    border-color: #2260b2;
}

.fullwidthcalc{
    max-width: 1200px !important;
}


[data-bs-theme=dark] .form-select {
    --falcon-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%234d5969' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}

.form-check {
    display: block;
    min-height: 1.5rem;
    padding-left: 1.5em;
    margin-bottom: 0.34375rem;
}
.form-check .form-check-input {
    float: left;
    margin-left: -1.5em;
}

.form-check-reverse {
    padding-right: 1.5em;
    padding-left: 0;
    text-align: right;
}
.form-check-reverse .form-check-input {
    float: right;
    margin-right: -1.5em;
    margin-left: 0;
}

.form-check-input {
    --falcon-form-check-bg: transparent;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 1em;
    height: 1em;
    margin-top: 0.25em;
    vertical-align: top;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: var(--falcon-form-check-bg);
    background-image: var(--falcon-form-check-bg-image);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: 1px solid rgb(182, 193, 210);
    print-color-adjust: exact;
}
.form-check-input[type=checkbox] {
    border-radius: 0.25em;
}
.form-check-input[type=radio] {
    border-radius: 50%;
}
.form-check-input:active {
    -webkit-filter: brightness(90%);
    filter: brightness(90%);
}
.form-check-input:focus {
    border-color: var(--falcon-input-focus-border-color-global);
    outline: 0;
    -webkit-box-shadow: 0 0 0 0.25rem rgba(44, 123, 229, 0.25);
    box-shadow: 0 0 0 0.25rem rgba(44, 123, 229, 0.25);
}
.form-check-input:checked {
    background-color: #2c7be5;
    border-color: #2c7be5;
}
.form-check-input:checked[type=checkbox] {
    --falcon-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
}
.form-check-input:checked[type=radio] {
    --falcon-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
}
.form-check-input[type=checkbox]:indeterminate {
    background-color: #2c7be5;
    border-color: #2c7be5;
    --falcon-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}
.form-check-input:disabled {
    pointer-events: none;
    -webkit-filter: none;
    filter: none;
    opacity: 0.5;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
    cursor: default;
    opacity: 0.5;
}

.form-switch {
    padding-left: 2.5em;
}
.form-switch .form-check-input {
    --falcon-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%239da9bb'/%3e%3c/svg%3e");
    width: 2em;
    margin-left: -2.5em;
    background-image: var(--falcon-form-switch-bg);
    background-position: left center;
    border-radius: 2em;
    -webkit-transition: background-position 0.15s ease-in-out;
    transition: background-position 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
    .form-switch .form-check-input {
        -webkit-transition: none;
        transition: none;
    }
}
.form-switch .form-check-input:focus {
    --falcon-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%239da9bb'/%3e%3c/svg%3e");
}
.form-switch .form-check-input:checked {
    background-position: right center;
    --falcon-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
.form-switch.form-check-reverse {
    padding-right: 2.5em;
    padding-left: 0;
}
.form-switch.form-check-reverse .form-check-input {
    margin-right: -2.5em;
    margin-left: 0;
}

.form-check-inline {
    display: inline-block;
    margin-right: 1rem;
}

.btn-check {
    position: absolute;
    clip: rect(0, 0, 0, 0);
    pointer-events: none;
}
.btn-check[disabled] + .btn, .falcon-data-table .paging_full_numbers .btn-check[disabled] + .page-link,
.falcon-data-table .paging_first_last_numbers .btn-check[disabled] + .page-link,
.falcon-data-table .paging_full .btn-check[disabled] + .page-link,
.falcon-data-table .paging_numbers .btn-check[disabled] + .page-link,
.falcon-data-table .paging_simple_numbers .btn-check[disabled] + .page-link, [data-list] .btn-check[disabled] + .page, .table-list .btn-check[disabled] + .page, .tox .tox-menu__footer .btn-check[disabled] + .tox-button:last-child,
.tox .tox-dialog__footer .btn-check[disabled] + .tox-button:last-child, .tox .tox-menu__footer .btn-check[disabled] + .tox-button--secondary,
.tox .tox-dialog__footer .btn-check[disabled] + .tox-button--secondary, .btn-check:disabled + .btn, .falcon-data-table .paging_full_numbers .btn-check:disabled + .page-link,
.falcon-data-table .paging_first_last_numbers .btn-check:disabled + .page-link,
.falcon-data-table .paging_full .btn-check:disabled + .page-link,
.falcon-data-table .paging_numbers .btn-check:disabled + .page-link,
.falcon-data-table .paging_simple_numbers .btn-check:disabled + .page-link, [data-list] .btn-check:disabled + .page, .table-list .btn-check:disabled + .page, .tox .tox-menu__footer .btn-check:disabled + .tox-button:last-child,
.tox .tox-dialog__footer .btn-check:disabled + .tox-button:last-child, .tox .tox-menu__footer .btn-check:disabled + .tox-button--secondary,
.tox .tox-dialog__footer .btn-check:disabled + .tox-button--secondary {
    pointer-events: none;
    -webkit-filter: none;
    filter: none;
    opacity: 0.5;
}

[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {
    --falcon-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%239da9bb'/%3e%3c/svg%3e");
}