/* :root {
    --swiper-pagination-bullet-width: 20px;
    --swiper-pagination-bullet-height: 20px;
    --swiper-pagination-bottom: -30px;
}

body
{
    overflow-x: hidden;
    overflow-y: scroll;
} */

.customer-main-header
{
    .customer-main-header-content
    {
        position: relative;
        padding-left: 20px;
        
        h2
        {
            margin-top: 40px;
            padding: 20px;
        }
    }
}

.user-dropdown-and-notif-btn
{
    display: flex;
    flex-direction: row;
}

.customer-notif-btn
{
    width: 50px;
    height: 50px;
    background-color: #0561e3;
    position: relative;
    border-radius: 100%;
    cursor: pointer;
    margin-right: 10px;
    
    img
    {
        width: 60px;
        height: 60px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    
    &:hover
    {
        background-color: #ACACAC;
        
        .notif-icon
        {
            border: 3px solid #ACACAC;
        }
    }
    
    .notif-icon
    {
        width: 12px;
        height: 12px;
        
        position: absolute;
        top: 12px;
        right: 12px;
                        
        background-color: rgb(255, 87, 87);
        
        border-radius: 100%;
        
        border: 3px solid #0561e3;
    }
    
    /* TODO: Flash in a subtle fashion to draw attention to it */
    /* &.new-notif
    {
        background-color: rgb(255, 87, 87);
        
        border: 3px solid rgb(255, 87, 87);
    } */
}

.customer-main-content
{
    padding: 20px 40px;
    
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    
    .customer-main-content-box-half
    {
        width: 50%;
        height: 100%;
        box-sizing: border-box;
    }
    
    .customer-main-content-box-full
    {
        width: 100%;
        height: 100%;
        
        &.fact-find-box
        {
            background-color: #ECECEC;
            
            border-top: 2px solid #000;
            border-bottom: 2px solid #000;
            
            margin-bottom: 12px;
            
            &.spouse
            {
                box-shadow: 0 4px transparent inset, 0 -4px #FFD043 inset, -4px 0 transparent inset, 4px 0 transparent inset;
            }
        }
        
        .fact-find-text-area
        {
            width: 450px;
            
            b
            {
                margin-bottom: 4px !important;
            }
        }
        
        .fact-find-start-btn
        {
            line-height: 50px;
            width: 300px;
            
            font-size: 28px;
            
            text-align: center;
            vertical-align: middle;
            
            border-radius: 50px;
        }
    }
    
    .customer-main-content-box-inner
    {
        margin: 20px;
        
        box-sizing: border-box;
        
        .customer-title-box
        {
            border-bottom: 2px solid #000;
            
            position: relative;
            
            .customer-view-progress
            {                    
                position: absolute;
                top: 8px;
                right: 0;
            }
        }
        
        .customer-advisor-info-box
        {
            border-bottom: 2px solid #000;
            
            p
            {
                margin-top: 6px; 
                margin-bottom: 6px;
            }
        }
        
        .customer-title-box-separator
        {
            margin-top: 50px;
        }
        
        .customer-yellow
        {
            color: #FFD043;
        }
        
        .customer-blue
        {
            color: #0561e3;
        }
        
        .customer-grey
        {
            color: #ACACAC;
        }
        
        .customer-dot
        {
            font-size: 20px;
        }
        
        .customer-legend-box
        {
            border-bottom: 2px solid #000;
            
            padding-top: 20px;
            padding-bottom: 20px;
        }
        
        .customer-progress-data-box
        {
            border-bottom: 2px solid #000;
            
            .customer-progress-data-entry
            {
                border-bottom: 1px solid #cccccc;
                
                padding-top: 10px;
                padding-bottom: 10px;
                
                .customer-progress-data-entry-text
                {
                    padding-left: 16px;
                }
                
                &:last-child
                {
                    border-bottom: 0;
                }
            }
            
            .customer-progress-data-entry-link
            {
                position: relative;
                
                border-bottom: 1px solid #cccccc;
                
                padding-top: 6px;
                padding-bottom: 6px;
                
                p
                {
                    margin-bottom: 0;
                }
                
                .customer-progress-link-arrow
                {
                    position: absolute;
                    top: 5px;
                    right: 0;
                }
                
                &:last-child
                {
                    border-bottom: 0;
                }
                
                a
                {
                    color: var(--bs-body-color);
                    width: 100%;
                    display: block;
                    text-decoration: none;
                }
            }
        }
        
        .customer-table
        {
            th
            {
                font-size: 16px;
                
                padding-left: 0;
            }
            
            tr
            {
                border-style: none;
                border-bottom: 1px solid #d8d8d8;
                
                background-color: unset;
            }
            
            td
            {
                padding: 0px;
                
                vertical-align: middle;
                
                border-bottom: 0px;
                                
                font-size: 16px;
            }
            
            table
            {
                border-bottom: 2px solid #000;
                                
                --bs-table-striped-bg: unset;
            }
        }
        
        .uploads-table
        {
            .customer-form
            {                
                select
                {
                    /* Remove native styling */
                    appearance: none;
                    -webkit-appearance: none;
                    -moz-appearance: none;
                    border: none;
                    background: none;
                    padding-left: 20px;
                    font: inherit;
                    color: inherit;
                    cursor: pointer;
                }
                
                select:focus {
                    outline: none;
                    box-shadow: none;
                }
                
                select::-ms-expand {
                    display: none;
                }
                
                .custom-arrow
                {
                    position: absolute;
                    left: 0px;
                    top: 50%;
                    transform: translateY(-50%);
                    pointer-events: none;
                    font-size: 0.8em;
                    color: inherit;
                }
            }
        }
        
        .customer-question-section
        {
            .customer-form
            {
                select
                {
                    border: none;
                    background: #dbdbdb;
                    margin-left: 20px;
                    padding: 10px;
                    text-align: left;
                }
                
                select:focus {
                    outline: none;
                    box-shadow: none;
                }
                
                select::-ms-expand {
                    display: none;
                }
                
                input
                {
                    border: none;
                    background: #ECECEC;
                    /* margin-left: 20px; */
                    padding: 10px;
                    
                    border-bottom: 2px solid #000;
                    
                    /* max-width: 600px; */
                    width: 100%;
                }
                
                .customer-radio-group
                {
                    .right-column
                    {
                        display: flex;
                        flex-direction: row;
                        gap: 36px;
                        font-family: sans-serif;
                        
                        padding-top: 16px;
                        
                        label
                        {
                            display: flex;
                            align-items: center;
                            
                            input[type=radio]
                            {
                                width: 20px;
                                height: 20px;
                                
                                display: inline-block;
                                
                                margin-right: 8px;
                            }
                        }
                        
                        
                    }
                }
            }
        }
        
        .customer-form
        {
            position: relative;
            
            textarea
            {
                background-color: transparent;
                
                border: 0px;
                border-bottom: 2px solid #000;
                
                height: 100px;
                width: 100%;
            }
            
            .submit-btn
            {
                margin-top: 10px;
                margin-bottom: 20px;
                display: block;
            }
        }
        
        #customer-question-form
        {
            position: relative;
            
            min-height: 200px;
            
            h5
            {
                margin-bottom: 0px;
                
                position: absolute;
                bottom: 0px;
                left: 0px;
            }
        }
        
        
    
    }
    
    .btn-holder
    {
        position: relative;
        
        width: 100%;
    }
    
    .rounded-btn
    {
        line-height: 26px;
        width: 100px;
        
        border-radius: 20px;
    }
    
    .rounded-btn-long
    {
        line-height: 26px;
        width: 200px;
                
        border-radius: 20px;
    }
    
    .btn-dark
    {
        color:#FFF;
        background-color: #000;
    }
    
    .btn-right
    {
        position: absolute;
        top: 0;
        right: 0;
    }
    
    
}

.upload-form
{
    margin-top: 24px;
    
    input
    {
        background-color: #E2E2E2;
        
        border-radius: 20px;
        
        border-bottom: 0px;
        
        &:focus
        {
            outline: none;
            border: none;
            box-shadow: none;
        }
        
        &::file-selector-button
        {                
            color:#FFF;
            background-color: #000;
            
            border-radius: 20px;
            
            border: 0px;
        }
    }
    
    input[type="file"]:hover::file-selector-button
    {
        background: #acacac !important;
        color: black;
    }
}

.invalid-feedback
{
    font-size: 80%;
}

.swiper
{
    width: 100%;
    
    overflow-y: visible !important;
    
    .swiper-pagination
    {
        position: absolute;
        bottom: 10px !important;
        left: 50% !important;
        transform: translateX(-50%);
        z-index: 10;
        text-align: center;
    }
}

.swiper-slide
{
    padding-top: 20px;
    font-size: 18px;
}

.swiper-pagination-bullet 
{
    width: 20px;
    height: 20px;
    text-align: center;
    line-height: 20px;
    font-size: 12px;
    color: #000;
    opacity: 1;
    background: rgba(0, 0, 0, 0.2);
}

.swiper-pagination-bullet-active
{
    color: #fff;
    background: #007aff;
}

.swiper-button-next::after
{
  content: '🢒' !important; /* or '\2192' // 🢥🠊 */
  font-size: 20px;
}

.swiper-button-prev::after
{
  content: '🢐' !important; /* or '\2190' // 🢦🠈 */
  font-size: 20px;
}

.frequency-section
{
    margin-top: 10px;
}

.customer-main-content
{
    .card-container
    {
        padding-bottom: 44px;
        
        margin-left: auto;
        margin-right: auto;
        
        .card
        {
            position: relative;
            display: flex;
            flex-direction: column;
            padding: 1rem;
            border-radius: 1rem; 
            box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
            box-sizing: border-box;
            border: 2px solid transparent;
            
            textarea
            {
                height: 45px;
            }
            
            select
            {
                margin-left: 0 !important;
            }
            
            label
            {
                font-size: 16px;
            }
            
            input[name$="-DELETE"]
            {
                display: none;
            }
            
            .delete-btn, .delete-btn-b, .delete-btn2
            {
                position: absolute;
                top: 10px;
                right: 10px;
                
                border: none;
                
                padding: 0;
                
                width: 34px;
                height: 34px;
                
                background: none;
                
                img
                {
                    width: 100%;
                    height: 100%;
                }
                
                &:disabled
                {
                    cursor: none;
                    img
                    {
                        opacity: 0.5;
                    }
                }
            }
        }
        
        .card[data-active='true']
        {
            border: 2px solid #0073FD;
        }
        
        .card[data-is-show-source='true']:has(.source-info) .source-info
        {
            display: flex;
        }
        
        .card[data-is-show-source='false']:has(.source-info) .source-info
        {
            display: none;
        }

        .card[data-active='false'] .submit-btn
        {
            background-color: #c9c9c9;
        }
        
        .card[data-active='true'] .submit-btn
        {
            background-color: #0063ff;
            color: white;
        }

        .submit-btn:hover
        {
            box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.5);
        }
    }
}