body {
    font-family: "Inter", sans-serif !important; /* Google font */
}


.body-admin-pages {
    
}
.body-quote-pages {    
    color: #494949;
}
    .body-quote-pages label {
        
    }
    .body-quote-pages select {
        border-color: #217c6c;
        color: #494949;
    }
        .body-quote-pages select:focus {
            border-color: #217c6c !important;
        }
        .body-quote-pages select option {
            
        }
    .body-quote-pages input,
    .body-quote-pages textarea,
    .body-quote-pages .input-group-text {
        border-color: #217c6c;
        color: #494949;
    }
        .body-quote-pages input:focus,
        .body-quote-pages textarea:focus {
            /* background-color: #2c5577 !important; */
            border-color: #217c6c !important;
            color: #494949 !important;
        }
        .body-quote-pages input::placeholder,
        .body-quote-pages textarea::placeholder {
            color: #767474;
        }

    .body-quote-pages .input-group-text {
        
    }


    /* checkbox styling */
    .body-quote-pages .fee-item {
        
    }

        .body-quote-pages .fee-item:hover {
            
        }

        .body-quote-pages .fee-item:last-child {
            
        }

    .body-quote-pages .fee-item-checkbox {
        
    }

    .body-quote-pages .fee-item-label {
        
    }
        .body-quote-pages .fee-item-label .label-sub-text {
            
        }


    .body-quote-pages .card {
        color: #494949; /* ensure text stays visible */
    }
    .body-quote-pages .icon {
        color: #217c6c;
    }

    /* HACK TO ADD A PERMANENT GAP BETWEEN THE NAVBAR AND THE CONTENT WHEN SCROLLING */
    .body-quote-pages::before {
        
    }


.quote-app-wrapper {
    
}
.quote-footer-bar {
    /* background-color: #f8f9fa; */
    background-color: #217c6c;
    color:#fff;
    border-top-color: #ddd;
}


h1:focus {
    
}

.body-admin-pages .valid.modified:not([type=checkbox]) {
    outline-color: #26b050;
}

.invalid {
    outline-color: #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    
}
    .blazor-error-boundary::after {
        
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}




/* Modern Full-Width Navbar with Subtle Divide */
.navbar {
}

    /* Quote navbar wrapper */
    .navbar.quote {
    }

/* Increase margin on large screens */
@media (min-width: 992px) {
    .navbar.quote {
    }
}

/* Force navbar contents to stay horizontally aligned */
.navbar.quote .container,
.navbar.quote .container-xl {
}

/* ---- IMPORTANT FIX ----
   Remove the "make everything small/faint" typography rule.
   Instead, only style the contact area specifically.
*/

/* Contact area inside quote navbar */
.navbar.quote .quote {
    color: #000;
}

    /* Contact links inside quote navbar */
    .navbar.quote .quote a {
    }

    /* Icons inside quote navbar contact area */
    .navbar.quote .quote .icon {
        color: #217c6c;
    }

    /* Flag when a referrer or staff member is logged in */
    .navbar.quote .quote .referrer-info {
        border-color: #217c6c;
    }

/* Keep your navbar-color variant */
.navbar-color {
}

    .navbar-color.quote {
        /* optional overrides */
    }

/* Brand */
.navbar-brand {
}

    /* Logo sizing */
    .navbar-brand img {
    }

    /* If you truly need separate quote-brand rules, keep, but it's identical */
    .navbar-brand.quote img {
    }

/* Nav links */
.nav-link {
}

    .nav-link:hover,
    .nav-link:focus {
    }

/* Optional scroll “lift” effect if you ever fix it to the top */
.navbar.scrolled {
}



.quote-header-pill {
    background: #eef4ff;
    color: #0d6efd;
    border-color: #d7e3ff;
}


.quote-header {
    
}
    .quote-header .icon-placeholder {
        color: #217c6c;
    }
.quote-option {
    border-color: #217c6c;
    background-color: #faf8f8;
}    
    .quote-option .icon-placeholder {
             
    }
        .quote-option .icon-placeholder .icon {
            color: #217c6c;
        }
    .quote-option.clickable {
        background-color: #fff;
    }
    .quote-option.clickable:hover {
        background-color: #ddf4f0;
    }


.body-quote-pages .signup-option {
    border-color: #217c6c;
    background-color: #faf8f8;
}


.body-quote-pages .list-option {
    
}
.body-quote-pages .list-option:hover {
    background-color: #f5f5f5;
}
.body-quote-pages .list-option-selected {
    background-color: #f7f7f7;
}


/* Modal styling for quote area */
.body-quote-pages .modal-content {
    background: #fcfcfc;
    color: #494949;
}

/* Scroll only the body */
.body-quote-pages .modal-body.terms-modal {
    
}

/* Header / footer styling only, no height/size manipulation */
.body-quote-pages .modal-header,
.body-quote-pages .modal-footer,
.modal-header,
.modal-footer {
    background: #f4f4f4;
    border-color: rgba(255, 255, 255, 0.15);
}


/* Onboarding Complete Screen */
.body-quote-pages .happensNextDiv {
    border: 1px solid #808080;
    padding: 20px;
    font-size: 0.8em;
    background-color: #fdfdfd;
    border-radius: 8px;
    margin-bottom: 12px;
    text-align: left;
    width: 80%;
    box-shadow: 5px 5px 6px 0px rgba(0,0,0,0.25);
}
    .body-quote-pages .happensNextDiv.even {
        float: left;
        margin-left: 20px;
    }
    .body-quote-pages .happensNextDiv.odd {
        float: right;
        margin-right: 20px;
    }






/* Quote terms modal text */
.terms-modal h5,
.terms-modal h6 {
    
}

.terms-modal {
    
}

.modal .icon {
    color: #217c6c;
}



.body-quote-pages .btn {
    
}




.progress-stage-indicator {
      
}

.progress-stage {
    color: #fff;
}

    /* Arrow */
    .progress-stage:not(:last-child)::after {
        
    }


    /* Cover overlap */
    .progress-stage:not(:first-child)::before {
        
    }

    /* STATES */
    .progress-stage.complete {
        background-color: #14b820;
    }

        .progress-stage.complete::after {
            border-left-color: #14b820;
        }

    .progress-stage.current {
        background-color: #ffc107;
    }

        .progress-stage.current::after {
            border-left-color: #ffc107;
        }

    .progress-stage.incomplete {
        background-color: #217c6c;
        background-color: #ededed;
        color: inherit;
    }

        .progress-stage.incomplete::after {
            border-left-color: #217c6c;
            border-left-color: #ededed;
        }

    /* Rounded ends */
    .progress-stage.start {
        border-left-color: #C0C0C0;
        border-top-color: #C0C0C0;
        border-bottom-color: #C0C0C0;
    }
    .progress-stage.middle {
        border-top-color: #C0C0C0;
        border-bottom-color: #C0C0C0;
    }
    .progress-stage.end {
        border-right-color: #C0C0C0;
        border-top-color: #C0C0C0;
        border-bottom-color: #C0C0C0;
    }



.text-danger.small {
    
}
.section-divider {
    background-color: #d7d7d7;
}
.line-divider {
    background-color: #d7d7d7;
}
    .line-divider.vat {
        
    }


/* Fix up Blazor's "invalid" class to match Bootstrap's look */
.invalid {
    border-color: #dc3545 !important;
}

/* Special adjustment for multiline fields */
textarea.invalid {
    
}

/* Use a cleaner exclamation SVG (Bootstrap 5.3 version) */
.invalid {
    
}

/* Undo the form overrides above for checkboxes */
.form-check-input.invalid {
    
}

    .form-check-input.invalid:checked {
        
    }




/* LEFT COLUMN SCROLLING */
.left-panel {
    
}

@media (max-width: 768px) {
    .left-panel {
        
    }
}

/* KEEP RIGHT COLUMN VISIBLE */
.quote-sidebar-old {
    background: #ffffff;
    border-left-color: #eee;
}

.quote-sidebar-old2 {
    background: #ffffff;
    background: linear-gradient(180deg, #ffffff 0%, #f6f7fb 100%);
}

.quote-sidebar-text-muted {
    color: #8c8c8c;
}
.quote-text-total {
    color: #0484ec;
}
.help-text {
    color: #494949;
}
.help-popover {
    background-color: #f5f5f5; /* soft off-white */
    color: #1a1a1a;
    border-color: #143c54; 
}
    .help-popover .popover-arrow {
        
    }

.quote-sidebar {
    background-color: transparent;
    border-color: #217c6c;
}

/* Keep quote total at top nicely styled */
.quote-total {
    
}

.mobile-quote-bar {
    border-color: #256192;
    background-color: #ffffff;
    background: linear-gradient(to bottom, #ffffff, #f5f8fa 70%, #eef2f6);
}
@media (min-width: 768px) {
    .mobile-quote-bar {
        
    }
}



/*  Styling for the YES/NO toggle buttons */
/* --------------------------------------------------- */
.toggle-group {
    
}

@media (max-width: 768px) {
    .toggle-group {
        
    }
}

.toggle-option {
    border-color: #217c6c;
    background-color: transparent;
    color: #494949;
}

    /* Hover effect (desktop only) */
    .toggle-option:hover {
        background-color: #ebebeb;
    }

    /* Press feedback */
    .toggle-option:active {
        background-color: #ebebeb;
    }

    /* Selected (from Blazor .active class) */
    .toggle-option.active {
        background-color: #217c6c;
        border-color: #fff;
        color: white;
    }

    /* Keyboard focus accessibility */
    .toggle-option:focus-visible {
        outline-color: #80bdff;
    }

/* --- Error / invalid state --- */
.toggle-group.is-invalid .toggle-option {
    border-color: #dc3545; /* Bootstrap danger red */
    color: #494949;
}

    /* Optional: when hovered in invalid state */
    .toggle-group.is-invalid .toggle-option:hover {
        background-color: #ebebeb;
    }

    /* If one is selected while invalid (user hasn't fixed yet) */
    .toggle-group.is-invalid .toggle-option.active {
        background-color: #217c6c;
        border-color: #dc3545;
        color: #fff;
    }
/* --------------------------------------------------- */




.fade-in {
    
}

@keyframes fadeIn {
    from {
        
    }

    to {
        
    }
}


/* Applying this class removes the spinner from number fields on desktop devices */
.no-spinner::-webkit-inner-spin-button,
.no-spinner::-webkit-outer-spin-button {
    
}
.no-spinner {
    
}