/*==============================================*/
/* LSI rates table component related styles - START*/

.lsi-table-component {
    font-family:'TruistTrio','Truist Trio','Arial',sans-serif;

}


.hybrid-savings-header {
    background: var(--truPurple100);
    padding: 4rem 4rem 2rem 1.2rem;
    margin-bottom: 0;

}

.hybrid-savings-header>h2 {
    margin-bottom: 0;
    border-bottom: none;
}

.lsi-rates-header-column {
background-color: var(--truPurple100);
}

.htable-header {
    border-top: none
}

.lsi-rates-column-non-sticky>p {
    margin-left: 1rem;
}

.lsi-table-component .relative-cell {
    position: relative;
}

.lsi-table-component .table-container {

    border-bottom: none;
    overflow: auto;
    /* Enables both horizontal and vertical scrolling */
    height: 900px;
    /* Limits table height for vertical scrolling */
}

/* Table layout */
.lsi-table-component .table {
    border-collapse: collapse;
    width: 100%;
    table-layout: fixed;
    /* Ensures consistent column widths */
}

/* Table cells and headers */
.lsi-table-component .table th,
.lsi-table-component .table td {
    padding: 8px;
    text-align: left;
    line-height: var(--truLnHghtBdy);

}

.lsi-table-component .table thead th {
    vertical-align: unset;
}

/* Frozen first column */
.lsi-table-component .table td:nth-child(1),
.lsi-table-component .table th:nth-child(1) {
    /* Highlighted background for frozen column */
    position: sticky;
    left: 0;
    font-size: var(--truTxtSize6);
    line-height: var(--truLnHght6);
    /* Ensures the column stays on the left */
    z-index: 5;
    /* Keeps the column above other cells */

}


/* no data columns*/
.lsi-table-component .no-data {
    color: #F7F7F7 !important;
}



.lsi-table-component td>a {
    white-space: nowrap;
}



/* Add higher z-index for header */
.lsi-table-component .table th:nth-child(1) {
    z-index: 6;
    border-bottom: 1px solid #c9c9c9;
}

/* Sticky header */
.lsi-table-component .table th {
    padding: 30px 40px 30px 40px;
    text-align: left;
    font-size: var(--truTxtSizeBdy);
    line-height: var(--truLnHghtBdy);
    font-weight: bold;
    position: sticky;
    top: 0;
    /* Makes the header stick to the top */
    z-index: 2;
    /* Keeps the header above the table body */
}

/* Styling for table body */
.lsi-table-component .table td {
    font-size: var(--truTxtSizeBdy);

    color: var(--truNeutral500);
    border-bottom: 1px solid #c9c9c9;
}

.lsi-table-component .lsi-rates-header-column {
    background-color: var(--truPurple100);


}

.lsi-table-component .lsi-rates-header-row {
    background-color: #F7F7F7 !important;
    padding: 30px 40px 30px 40px !important;


}

.lsi-table-component .bg-clear .bg-mist tr td {
    background: var(--truPurple100);
}

.lsi-table-component .lsi-rates-column-non-sticky {
    padding: 25px 30px 25px 30px !important;
}

/* Add higher z-index for top left header */
.lsi-table-component .table .top-left-cell {
    z-index: 7 !important;
    padding: 32px 40px 32px 40px;
    vertical-align: middle;
    background-color: var(--truPurple100);
    line-height: var(--truLnHghtBdy);

}

.lsi-table-component .table-container .table th {
    border-top: 0;
    font-weight: 700;
}

.lsi-table-component .arrow-link {
    text-decoration: none !important;
    font-weight: 700;
}

.lsi-table-component a.arrow-link::before {
    border-style: solid;
    border-width: 0 0 2px 2px;
    height: 6px;
    width: 6px;
    margin-top: 8px;
    transform: rotate(-135deg);
        }

.lsi-table-component a.arrow-link::after {
    height: 2px;
    top: 10px;
    width: 11px;
}

.lsi-table-component .lghtstrmbtn {
    margin-top: 4rem;
}

/* Tooltip container */
.lsi-table-component .chart-tooltip {
    position: relative;
    display: inline-block;
    width: 24px;


}

.lsi-table-component .chart-tooltip .chart-tooltiptext {
    visibility: hidden;
    min-width: 12em;
    max-width: 16em;
    background-color: #2E1A47;
    color: #fff;
    text-align: center;
    border-radius: 4px;
    padding: 15px;
    font-size: var(--truTxtSizeBdy);
    line-height: var(--truLnHghtBdy);

    /* Position the tooltip */
    position: absolute;
    z-index: 100;
    top: 150%;
    left: 50%;
    margin-left: -6em;

    opacity: 0;
    transition: opacity 0.3s;
}

.lsi-table-component .chart-tooltip .chart-tooltiptext::after {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: transparent transparent #2E1A47 transparent;

}

.lsi-table-component .chart-tooltip:hover .chart-tooltiptext {
    visibility: visible;
    opacity: 1;
}

.lsi-table-component .chart-tooltip:focus .chart-tooltiptext {
    visibility: visible;
    opacity: 1;
}

.lsi-table-component .lsi-width {
    padding-right: 20rem;
}

.lsi-table-component .paragraph-margin {
    margin-bottom: 2rem;
}

    .lsi-table-component table .top-right-cell {
        font-size: var(--truTxtSize4);
        line-height: var(--truLnHght4);
        padding: 32px !important;
        text-align: left;
        vertical-align: unset !important;
        background-color: var(--truPurple100);


    }

.fee-list-decoration {
    list-style: none;
}

 .hybrid-para-container {
    margin-bottom: 1.5rem;
    display: block;
    font-weight: 700;
    font-size: var(--truTxtSizeBdy);
    line-height: var(--truLnHghtBdy);
}

.hybrid-savings-non-sticky-link {
    font-size: var(--truTxtSizeBdy) ;
    font-weight: 100;
}

@media (max-width: 1365px) {


    .lsi-table-component .lsi-width {
        padding-right: unset;
    }

    .lsi-table-component .table .top-left-cell {
        padding: 35px 16px 55px 16px !important;
        vertical-align: middle !important;
        width: 150px;
    }



    .lsi-table-component table th {
        padding: 32px 16px 32px 16px;
    }

    .lsi-table-component .lghtstrmbtn {
        margin-top: 6.34rem;
    }

    .lsi-table-component table .top-right-cell {
        padding: 30px 40px 30px 40px !important;
        text-align: left;
        vertical-align: unset !important;
        width: 300px;
    }


    .lsi-table-component .html-txt-comp .lsi-rates-column-non-sticky {
        padding: 30px 30px 25px 30px !important;
    }

}

.lsi-disc-selected {
    outline: solid 2px var(--truNeutral500);
}


/*=============================================*/
