.product-title {
    border-left: 5px solid #1f4e79;
    border-right: 5px solid #1f4e79;
    font-weight: bold;
    border-radius: 10px;
    background: #f8f9fa;
    box-shadow:
        inset 6px 0 6px -6px rgba(0, 0, 0, 0.4),
        inset -6px 0 6px -6px rgba(0, 0, 0, 0.4);
    padding: 20px 25px !important;
    display: flex;
    align-items: center; 
    justify-content: center; 
    
}
.product-title h4{
    margin:0px !important;
}

.bundle-card {
    /* border-radius: 10px; */
    /* transition: 0.3s; */
    /* height: 450px; */
    /* cursor: pointer; */
    /* height: 100%; */
    /* border: 2px solid #ddd; */
    /* transition: all 0.3s ease-in-out; */
    display: flex;
    align-items: center;
    flex-direction: column;
    /* box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); */
}

.bundle-card .card-title {
    font-weight: 600;
    /* font-size: 18px; */
    padding:20px;
}

.bundle-card .bundle-content {
    padding:20px;
}

.bundle-features li {
    /* font-size: 0.95rem; */
    margin-bottom: 8px;
    text-align: left;
}

.bundle-features i {
    /* font-size: 0.5rem; */
    vertical-align: middle;
}

.bundle-card-wrapper:hover, .selected-card {
    border: 2px solid #1f4e79;
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
    transform: translateY(-4px);
}

/* bundle  */
.bundle-details {
    border-top: 3px solid #1f4e79;
    background: #f8f9fa;
    display: none;
    width: 100%;
    margin-top: 10px;
    padding: 20px;
}

.bundle-details {
    border-top: 3px solid #1f4e79;
    background: #f8f9fa;
    display: none;
    width: 100%;
    margin-top: 10px;
    padding: 20px;
}
/* bundle  */

.feature-list {
    max-height: 250px; 
    overflow-y: auto;
    padding-left: 15px;
}

.feature-list::-webkit-scrollbar {
    width: 8px;
}

.feature-list::-webkit-scrollbar-thumb {
    background-color: #1f4e79;
    border-radius: 10px;
}

.feature-list li{
    list-style: inside;
}
.caculate_btn, .btn-primary {
    background: #1f4e79 !important;
    border-color: #1f4e79 !important;
}

.caculate_btn:hover, .btn-primary:hover {
    background: #163a5a !important; 
}

.estimate-box {
    background: #ffffff;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 15px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.radio-inline input {
    accent-color: #007bff; 
}

.range-options {
    margin-bottom: 1rem;
}
.range-options label {
    margin-right: 15px;
    display: inline-block;
}

.tab-content-pane {
    display: none;
    min-height: 85vh;
    /* max-height: 70vh; */
}
.tab-content-pane.active {
    display: block;
}

@media (min-width: 1400px) {
    #products .container {
        max-width: 95% !important;
    }
    #quotations .container {
        max-width: 95% !important;
    }
}

/* quotation */
#tab-quotation .form-select {
    min-height: 150px;
}

#tab-quotation label {
    margin-bottom: 10px;
    display: block;
}
#tab-quotation .product_title {
    color: #1f4e79 !important;
}

.quotation-detail-div{
    border:1px solid black;
    border-radius:10px;
}

#tab-quotation{
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
}
.arrow {
    transition: transform 0.3s ease;
    display: inline-block;
    font-size: 27px;
}
.arrow.rotated {
    transform: rotate(90deg);
}

#decreaseTowerCount,
#increaseTowerCount {
    height: 100%;
    font-size: 27px;
    line-height: 1;
}

.quotation-detail-div {
    flex-grow: 1;
    display: flex;
    padding:0px 30px;
    overflow: hidden;
    min-height: 0;
    flex-grow: 1
}

.quotation-detail-div > .flex-grow-1 {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    min-height: 0;
    flex-grow: 1
}

.quoteResult {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
    border-radius: 8px;
}

.complexRows {
    flex-grow: 1;
    min-height: 0;
    overflow-y: auto;
    max-height:57vh;
}

.quoteBreakdown {
    overflow-y: auto;
    flex-grow: 1;
    min-height: 0;
    max-height:61vh
}

.quoteBreakdown table thead th{
    position: sticky;
    top: 0;
    background-color: #f2f2f2;
    z-index: 2;
}
.quoteBreakdown table tfoot tr {
    position: sticky;
    bottom: 0;
    background-color: #f2f2f2;
    z-index: 2;
}


#bundleSelectionSection{
    max-height:35vh;
    overflow-y: auto;
}
/* Extra small devices (portrait phones, less than 576px) */
@media (max-height: 575.98px) {
    #complexRows,
    #quoteBreakdown {
        /* max-height: 300px; */
    }
}

/* Small devices (landscape phones, 576px and up) */
@media (max-height: 767.98px) {
    #complexRows,
    #quoteBreakdown {
        /* max-height: 400px; */
    }
}

/* Medium devices (tablets, 768px and up) */
@media (max-height: 991.98px) {
    #complexRows,
    #quoteBreakdown {
        /* max-height: 500px; */
    }
    .complexRows, #bundleSelectionSection{
        max-height: 40vh;
    }
}

/* Large devices (desktops, 992px and up) */
@media (max-height: 1199.98px) {
    #complexRows,
    #quoteBreakdown {
        /* max-height: 500px; */
    }
}

/* Extra large devices (1200px and up) */
@media (min-height: 1200px) {
    #complexRows,
    #quoteBreakdown {
        /* max-height: 700px; */
    }
}

@media (min-height: 2000px) {
    #complexRows,
    #quoteBreakdown {
        /* max-height: 1200px; */
    }
}

.fa-trash, .fa-pencil{
    font-size:20px !important;
}
.section-toggle{
    font-weight: 800;
    color: #1f4e79;
}
.ranges-div{
    border-radius: 1.50rem;
}

.quotation-detail-div .form-check-input{
    border-color: rgb(32 78 21);
}
.section-box {
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 1rem;
    background-color: #fafafa;
}

.quotation-detail-div hr{
    color: #1f4e79;
}

.modal-dialog.subscription_modal {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1050;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
    min-height: 70% !important;
    min-width: 70% !important;
    display: flex;
    flex-direction: column;
}

.subscription_modal .modal-content {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 30px;
    overflow: hidden;
}

.subscription_modal .modal-body {
    flex: 1 1 auto;
    overflow-y: auto;
}

#subscription-content {
    flex: 1 1 auto;
}
.modal-dialog::before {
    content: '';
    position: fixed;
    top: 0; left: 0; bottom: 0; right: 0;
    z-index: -1;
}

.modal-backdrop-custom {
    position: fixed;
    top: 0; left: 0; bottom: 0; right: 0;
    background: rgba(0,0,0,0.5);
    z-index: 1040;
}
/* quotation */

@media (min-width: 576px) {
    .modal-dialog.subscription_modal {
        max-width:100vh;
        max-height:80vh;
    }
}

#subscription-content {
    max-height: 700px; 
    overflow-y: auto;
}

.feature-table td,
.feature-table th,
.feature-table tr,
.feature-table tfoot {
    border: none !important;
}
.table.feature-table>:not(:first-child) {
    border-top: none !important;
}

.sweet-alert {
    color:black !important;
    background: #ffffff!important;
    box-shadow:0 0 0 10000px rgba(0,0,0,.50);
}

.table.quotation-list-table>:not(:first-child) {
    border-top: none !important;
}
.complex-name {
    display: block;          
    /* width: 150px;                */
    white-space: nowrap;    
    overflow: hidden;         
    text-overflow: ellipsis;   
    cursor: pointer;
}
.quotation-toggle-button {
    position: relative;
    width: 135px;
    height: 36px;
    overflow: visible;
    border: 1px solid black;
    background: none;
    border-radius: 100px;
}

.quotation-toggle-checkbox {
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
    z-index: 3;
    top: 0;
    left: 0;
    margin: 0;
    padding: 0;
}

.knobs {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
}

.knobs .left-label,
.knobs .right-label {
    position: absolute;
    top: 4px;
    width: 64px;
    height: 26px;
    font-size: 10px;
    font-weight: bold;
    text-align: center;
    line-height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    transition: 0.3s ease all;
}

.knobs .left-label {
    left: 4px;
    color: #fff;
}

.knobs .right-label {
    right: 4px;
    color: #4e4e4e;
}

.knobs:before {
    content: "";
    position: absolute;
    top: 4px;
    left: 4px;
    width: 62px;
    height: 26px;
    background-color: #204e79;
    border-radius: 13px;
    transition: 0.3s ease all;
    color: #fff;
}

.layer {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    background-color: #ebf7fc;
    transition: 0.3s ease all;
    border-radius: 100px;
    z-index: 1;
}

.quotation-toggle-checkbox:checked + .knobs:before {
    left: 66px;
    background-color: #fc7d27;
}

.quotation-toggle-checkbox:checked + .knobs .left-label {
    color: #4e4e4e;
}

.quotation-toggle-checkbox:checked + .knobs .right-label {
    color: #fff;
}

.quotation-toggle-checkbox:checked ~ .layer {
    background-color: #fcebeb;
}

.button:hover{
    background: #fff !important;
    color: #444 !important;
    text-decoration: none !important;
}


#company_form input,
#company_form select,
#company_form option {
    font-size: 13px;
}
.required-label::after {
    content: " *";
    color: red;
}

.is-invalid {
    border: 1px solid red;
}

.sweet-alert{
    box-shadow:0 0 0 10000px rgba(0,0,0,.50);
}
