@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200;300;400;500;600;700;800&display=swap');






body {
    font-family: 'Manrope', sans-serif !important;
    margin: 0px;
    padding-bottom: 0px;
    min-height: 100vh !important;
        display: flex;
        flex-direction: column;
}
a {
    text-decoration: none;
    color: #306D8B !important;
}
.text_dark{
    color: #151E34;
}
.wrapper{
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.hidden{
    display: none !important;
}

.pseudo-link { cursor: pointer; color: blue;} 
.pseudo-link:hover { text-decoration: underline; }
/* div {
    outline: 1px solid red;
}
div:after {
    content: attr(class);
    position: absolute;
    font-size: 10px;
    color: red;
} */

@keyframes blink {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
.blinking {
    animation: blink 1s infinite ease-in-out;
}



.bg-grey {
    position: absolute;
    height: 100%;
    width: 100%;
    z-index: 0;
    /* pointer-events: none; */
    top: 0;
    left: 0;
}

.login-page {
    width: 488px;
    margin: auto;
    position: relative;
    z-index: 1;
    background-color: white;
}
/* .login-page h2{
    margin-top: 25px;
} */

.login-page img{
    max-width: 100%;
    z-index: 1;
    
}
.login-page input{
    /* border: 1px solid #808080 !important; */
    letter-spacing: 0.2em;
    font-size: 18px !important;
}
.login-page #error_message{
    height: 12px;
    margin-top: -16px;

}
.phone-row .col-1{
    padding-top: 4.6%;
    font-size: 18px;
    margin-right:10px;
}



.login_form {
    position: relative;
    max-width: 360px;
    margin: 0 auto 100px;
    padding: 35px 45px 45px;
    text-align: center;
    /* box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24);
    border-radius: 8px; */
}
.login_form input {
    font-family: "Roboto", sans-serif;
    outline: 0;
    /* background: #f2f2f2; */
    width: 100%;
    border: 0;
    margin: 0 0 15px;
    padding: 15px;
    box-sizing: border-box;
    font-size: 14px;
}


.login_form button {
    font-family: "Roboto", sans-serif;
    text-transform: uppercase;
    outline: 0;
    border:0;
    color:#151E34;
    background: #9FB8C4;
    border-radius: 4px;
    width: 100%;
    padding: 15px;
    font-size: 14px;
    -webkit-transition: all 0.3 ease;
    transition: all 0.3 ease;
    cursor: pointer;
}
.login_form button:hover,.login_form button:active,.login_form button:focus {
    background: #141d33;
    color: white;
}
.login_form .message {
    margin: 15px 0 0;
    color: #b3b3b3;
    font-size: 12px;
}
.login_form .message a {
    color: #9FB8C4;
    text-decoration: none;
}
.login_form .register-form {
    display: none;
}

/* --------------------------------------------------------------------- */
/* header */


.header_logo img, .footer img {
    max-width: 100%;
    height: 42px;
}


.header_tabs ul {
    display: flex;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0;
}

.header_tabs ul li {
    margin: 10px 25px;
    position: relative;
}
.header_tabs ul{
    font-weight: 500;
}

.header_tabs ul .active{
    text-decoration: underline;
    font-weight: 700;
}

.header_tabs ul li:hover {
    text-decoration: underline;
}


.header_tabs ul li a {
    text-decoration: none;
    font-size: 1rem;
    transition: color 0.3s;
}




/* Icon container styling */
.header_icons {
    display: flex;
    justify-content: flex-end;
}

.header_icon {
    margin: 10px 0 0 10%;
    font-size: 1.4rem;
    color: #2e2e2e;
    cursor: pointer;
    transition: color 0.3s;
    position: relative;
}

.header-container .notification-badge{
    position: absolute;
    top: 0;
    right: 0;
    background-color: red;
    color: white;
    font-size: 10px;
    padding: 0px 5px;
    border-radius: 50%;
    transform: translate(50%, -50%);
    display: inline-block;
    min-width: 15px;
    text-align: center;
}


.menu-container {
    position: relative;
    display: inline-block;
    cursor: pointer;
}
.menu-dropdown {
    font-size: 1rem;
    display: none;
    position: absolute;
    right: 0;
    background: white;
    border: 1px solid #ccc;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    border-radius: 5px;
    min-width: 200px;
    z-index: 1000;
}
.menu-dropdown ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.menu-dropdown ul li {
    padding: 10px;
}
.menu-dropdown ul li{
    text-decoration: none;
    color: black;
    display: block;
}
.menu-container:hover .menu-dropdown {
    display: block;
}
.menu-dropdown ul li:hover, .menu-dropdown ul li.active {
    background: #f0f0f0;
}
.menu-container:hover .menu-dropdown {
    display: block;
}





















.small-card .notification-badge{
    position: absolute;
    top: 25;
    right: 30;
    height: 23px;
    width: 23px;
    background-color: red;
    color: white;
    font-size: 15px;
    padding: 0px 5px;
    border-radius: 50%;
    transform: translate(50%, -50%);
    display: inline-block;
    min-width: 15px;
    text-align: center;
}

.header_icon i:hover {
    color: #306D8B;
}






/* ---------------------------------------------------------------------  FOOTER */
.footer {
    background-color: #f5f6f8;
    padding: 10px 0;
    color: #151E34;
}

.footer .footer-section {
    padding: 10px 0;
    text-align: center;
    font-size: 14px;
}
.footer .footer-section .icon {
    font-size: 1.5rem;
}
.footer .footer-section p {
    margin: 5px 0;
}
#feedback_footer_tile{
    cursor: pointer;
    border-radius: 20px;
    text-decoration: underline;
}
#feedback_footer_tile:hover{
    text-decoration: none;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24);

}




/* ---------------------------------------------------------------------  CARDS CONTAINER */
.card-container {
    padding: 20px;
    max-width: 1000px !important;
  }

  /* Card styling */
  .small-card{
    text-align: left;
    padding: 20px;
    border-radius: 8px;
    position: relative !important;
    overflow: hidden;
    height: 200px !important;
    cursor: pointer;
    z-index: 2;
  }


  .app-card{
    color: rgb(231, 231, 232);
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24); 
  }
  .app-card:hover{
    background: #f0f4fa;
  }
  .app-card h5 {
    height: 80px;
    margin-bottom: 20px;
  }

  /* Dot mask styling */
  .app-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('../img/dots.png'), url('../img/card_bg.png');
    background-position: bottom -33px right, center; /* Move dots 20px down */
    background-repeat: no-repeat, no-repeat;
    background-size: 150px 150px, cover; /* Set dots size and cover for main bg */
    opacity: 0.5;
    /* filter: blur(1px); */
    z-index: -1;
  }
  .app-card:hover::before{
    opacity: 0.7;
  }
  .app-card::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%);
    z-index: -1;
  }


  
  

  /* Badge styling */
  .app-card .badge {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 14px;
    background-color: #FF1F00;
    color: white;
    padding: 5px 10px;
    border-radius: 20px;
  }


    .progress-bar-container {
        width: 100%;
        height: 8px;
        background: rgba(255, 255, 255, 0.3);
        border-radius: 3px;
        position: absolute;
        bottom: 0;
        left: 0;
        overflow: hidden;
    }

    .progress-bar {
        height: 100%;
        background: linear-gradient(to right, #4caf50, #8bc34a);
        transition: width 0.4s ease-in-out;
    }















  
  .pat-card .name-section{
    /* height: 80%; */
    overflow: hidden;
    text-overflow: ellipsis;
    position: relative;
    display: inline-block;
    z-index: 1; /* Чтобы текст был поверх подложки */
    /* padding: 7px 10px; */
    max-height: 140px;

  }

  .pat-card .status-section{
    position: absolute;
    top: 160px;
    font-size:0.8rem;   
    border-radius: 7px;
    padding: 3px;
    margin: 0;
  }

  .status0{
    background-color: #d44db9;
  }

  .status1{
    background-color: #6ae688;
  }
  .status2{
    background-color: #e9f35f;
  }
  .status3{
    background-color: #ffba27;
  }  
  .status4{
    background-color: #f14a4a;
    color: white;
  }
  .pat-status-section{
    border-radius: 10px;
    font-size: 0.8rem;
  }


  .status5{
    background-color: #191515;
    color: white;
  }


  .pat-card{
    background-color: white;
    border: 1px solid #d1d8e0;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24); 
  }

  .pat-card .card-bg{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    opacity: 0.5; 
    filter: grayscale(100%) blur(6px); 

    z-index: -1; 


  }
  .pat-card:hover .card-bg{
    filter: blur(0px);
    opacity: 0.9;
  }

  .pat-card:hover .name-section::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.3); /* Полупрозрачность */
    backdrop-filter: blur(6px); /* Размытие */
    border-radius: 10px;
    z-index: -1; /* Подложка ниже текста */
  }










  











/* ---------------------------------------------------------------------APPLICATION CONTAINER */


.application-container{
    border:2px solid #f0f4fa;
    border-radius: 10px;
    margin-top: 50px;
}

/*application header */

  .application-header {
    background-color: #f0f4fa;
    padding: 16px 16px 16px 8px;
    border-radius: 8px 8px 0 0;
  }
  #app_auth_row i{
    cursor: pointer;
  }
  #app_auth_row .bi-person-plus{
    font-size: 1.2rem;
    padding: 3px;
  }
  #app_auth_row i:hover{
    color: #306D8B;
    border: 1px solid #306D8B;
    border-radius: 7px;
  }
  

  .application-header .second-row {
    position: relative; /* Required for the :before pseudo-element to be positioned correctly */
}
.application-header .second-row::before {
    content: "";
    position: absolute;
    top: 0; /* Aligns the border with the top */
    left: 3%; /* Centers the border by leaving 5% on each side */
    width: 94%; /* Sets the border width to 90% */
    height: 0.5px;
    background-color: #d3d3d3; /* Matches the original border color */
}

.secondary-text {
    font-size: 0.8rem;
    color: #6c757d;
}
.tertiary-text{
    font-size:10px;
    font-style:italic;
}

.primary-text{
    font-size: 1.1rem;
    color: #306D8B;
}  


.application-header .notifications-number-div{
    font-size: 20px;
    background-color: #FF1F00;
    color: white;   
    margin-top: 5px;
    padding-left:12px;
    width: auto;
    height:32px;
    border-radius:10px;
    cursor: pointer;
}

  

/* timeline container */
.timeline-container {justify-content: center;align-items: center;}
.step{
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    min-height: 50px;
}
.step.active{border-bottom: 2px solid #306D8B;}
.step .status-icon{margin-top: 0.5rem;}
.step.pending { text-align: center; color:#306D8B;}
.step.inactive{color: #D3D3D3;}
.step.inactive .status-icon{font-size: 10px;margin-top:0.7rem;}
.line-stage { 
    width: 8vw;
    height: 1px;
    background-color: #D3D3D3;
    align-self: center;
}
.line-stage.active {
    background-color: #306D8B;
}

/* ----- stages ----- */



/* ----- substages ----- */

.substage-heading{
    font-size: 1.1rem;
    font-weight: 300;
    color: #306D8B;
    margin-bottom: 1rem;
}
.substage-timeline{
    margin-top:20px;
    padding: 0 5%;
    font-size:0.85rem;
}

.substage-timeline span{
    margin: 0px -25px;
}
.substage-timeline .step{
    width:12vh;
}
.substage-icon{
    border-radius: 8px;
    width:auto;
    height:25px;
    background-color: #D3D3D3;
    color:#000;
    margin-bottom:10px;
}
.substage-icon.active{
    background-color: #9FB8C4;
    
}
.substage-icon.pending{
    height:25px;
    border: 2px solid #306D8B;
}
.line-substage { 
    width: 100%;
    height:0.5px;
    background-color: #D3D3D3;
    margin-top:0.8rem;
}
.line-substage.active {
    background-color: #9FB8C4;
    height: 1px;
}


.status-line { display: flex; justify-content: space-between; margin-top: 1rem; }
.status-step { text-align: center; width: 20%; }
.status-step .status-icon { display: inline-flex; align-items: center; justify-content: center; width: 25px; height: 25px; border-radius: 50%; color: white; }
.status-success { background-color: #5cb85c; }
.status-in-progress { background-color: #306D8B; }
.status-pending { background-color: #ced4da; color: #6c757d; }
.status-label { margin-top: 0.5rem; font-size: 0.9rem; color: #6c757d; }
.stage-title { font-size: 1.2rem; font-weight: bold; color: #6c757d; margin-bottom: 1rem; }
.status-text { padding: 1rem; background-color: #f8f9fa; color: #6c757d; font-size: 0.9rem; }




/* --------------------------------------------------------------------- */
/* contacts container */

.contacts-container, .files-container, .notifications-container {
    position: relative;
}
.contacts-container:before, .files-container:before, .notifications-container:before, .bibl-container:before   {
    content: "";
    position: absolute;
    top: 0;
    left: 3%;
    width: 94%;
    height: 0.5px;
    background-color: #d3d3d3;
}
.responsible-card {
    background-color: #f0f4fa;
    border: 1px solid #d1d8e0;
    font-size: 0.8rem;
    border-radius: 8px;
    text-align: center;
    padding:0 5px;
    height:100px;
  }
  .responsible-title {
    color: #6c757d;
    font-size: 14px;
  }
  .write-link {
    color: #306D8B;
    font-weight: 500;
    text-decoration: none;
  }
  .write-link img{
    max-width: 39px;
  }
  .write-link:hover {
    text-decoration: underline;
  }
  .profile-img {
    border-radius: 50%;
    width: 40px;
    height: 40px;
  }






/* --------------------------------------------------------------------- */
/* files container*/

  .file-div{
    position: relative;
    display: inline-block;
    overflow-wrap: break-word; /* Современный стандарт */
}  


.file-icon {
    font-size: 24px;
    color: #6c757d;
    cursor: pointer;
}
.file-icon:hover,
.file-icon:hover * {
    color: #306D8B;
    
}


.file_title{
    max-height: 40px;
    overflow: hidden;
    text-overflow: ellipsis;
}


.close-btn {
    position: absolute;
    top: -5px;
    right: 40px;
    width: 12px;
    height: 12px;
    line-height: 12px;
    text-align: center;
    font-size: 10px;
    font-weight: bold;
    color: white;
    background: red;
    border-radius: 50%;
    cursor: pointer;
    opacity: 0.2;
    transition: opacity 0.3s;
}

.close-btn:hover {
    opacity: 0.7;
}










/* --------------------------------------------------------------------- */
/* files container*/

.notification-item {
    background-color: #f0f4fa;
    border: 1px solid #d1d8e0;
    border-radius: 8px;
    padding: 5px 10px;
    /* display: flex; */
    position: relative;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    font-size: 12px;
  }

.notification-item.unread {
    background-color: #9FB8C4;
}
.notification-item.fakeunread {
    border: 2px solid #306D8B;
}















.notification-date {
color: #6c757d;
font-size: 16px;
}
.notification-title {
font-size: 16px;
}






.mydict{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 15px;
}



.mydict div {
    font-family: "Roboto", sans-serif;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 15px;
}

.mydict input[type="radio"] {
    clip: rect(0 0 0 0);
    clip-path: inset(100%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}
.mydict label {
    width: 50%;
}

.mydict input[type="radio"]:checked + span {
    box-shadow: 0 0 0 0.2625em rgba(114, 145, 229, 0.8);
    background-color: #fff;
    z-index: 1;
}

label span {
    display: block;
    cursor: pointer;
    background-color: #f2f2f2;
    padding: 0.375em .75em;
    position: relative;
    margin-left: .0625em;
    box-shadow: 0 0 0 0.0625em #b5bfd9;
    letter-spacing: .05em;
    color: #3e4963;
    text-align: center;
    transition: background-color .5s ease;
}





#inputDate{
    text-align: center; display: flex; justify-content: center; margin-bottom: 10px;
}




#top_header{
    background-color: #FFFFFF;
    border-bottom-right-radius: 2rem;
    border-bottom-left-radius: 2rem;
    border: 2px solid #E5E5E5;
}

.name_section:hover{
    color: #0a53be;
    cursor: pointer;
}
#top_header img{
    max-width: 80%;
}

.money {
    font-size: 30px;
    font-weight: 600;
    transition: 1s ease-in-out;
}

.all_deals_header {
    display: flex;
    align-items: center;
    justify-content: center;
}

.deal_row{
    background: #FFFFFF;
    border: 2px double #E5E5E5;
    border-radius: 12px;
}


.news_slide{
    height:100px !important;
    background-color: #fefefe;
    margin: 10px;
    border-radius: 9px;
    padding-left:10px;
    padding-top:5px;
}

.news_header{
    margin-left: 5px;
    margin-bottom: 0px;
    font-size: 16px;
}
.not_seen{
    font-weight: 650;
}
.news_date{
    margin-left: 5px;
    color:gray;
    font-size: 10px;
    margin-bottom: 3px;
}
.news_short_text{

    cursor: pointer;
    font-style: italic;
    text-decoration: underline;
}

.news_short_text:hover{
    color: #436EE6;
}

#news_text_form img{
    max-width: 100%;
}



.frozen_deal{
    background-color: #F6F7F8; transform: scale(0.9, 0.9); color:#7d7d7d; margin:0px !important;
}


.open_icon{
    /*cursor: pointer;*/
    margin-left: 1rem;
}

#active_deals_container {
    max-width: 1050px;
    transition: height 0.5s;
    overflow: hidden;
}



.options_button_section{
    padding-top: 0.5rem;
    margin-right: -20px;
}
.options_button_section i{
    cursor: pointer;
}

.horizontal-menu.hidden {
    display: none;
}

.horizontal-menu {
    margin-right: 2rem;
}

.horizontal-menu button {
    margin-right: 10px;
    border: 2px double #436EE6;
    border-radius: 7px;
    height: 3rem;
}

.left_section {
    text-align: left;
    font-style: normal;
}
.left_section a{
    color: inherit;
}


.deal_number_text{
    margin-bottom: 0rem;
    font-size: 1rem;
    font-weight: 400;
}

.deal_name_text{
    margin-bottom: 0rem;
    font-size: 22px;
    font-weight: 400;
}
.center_section{
    margin-left: -16px;
    border-left: 1px solid #D9D9D9;
    border-right: 1px solid #D9D9D9;
}

.center_section p{
    margin-bottom: 0px;
}

.stage_name{
    font-size: 24px;
    font-weight: 400;
    /*white-space: nowrap;*/
}
.stage_interval{
    font-size: 0.7rem;
    white-space: nowrap;
}


.next_button_new {
    width: 80%;
    background: #EEEEEE;
    border-radius: 6px;
    height:22px;
    border-radius: 5px;
    text-align: center;
    border: 1px solid #898989;
    font-size: 16px;
}
.next_button_new:hover{
    border: 3px solid #436EE6;

}

.next_button_new i{
    line-height: 11px;
    font-size: 22px;
    font-weight: 500;    
}

.square {
    display: inline-block;
    margin-left: 1px;
    opacity: 0.5;
    width:9%;
    height:20px;
    border-radius: 5px;
}

.active{
    opacity: 1;
    /* //margin-bottom: -0.25rem;
    //border: 1px solid #32a1ce;
    //width: 1.5rem;
    //height: 1.5rem; */
}

.big_square {
    border: 2px solid #436EE6;
}
.big_square i{
    margin-left: 6px;
    color: whitesmoke;
}
.active.big_square{
    margin-top: 2px;
    background-color: #436EE6;
    border: 0px;
    overflow: hidden;
}

.info_text {
    position: relative;
    display: inline-block;
}

/* Tooltip text */
.info_text .info_text_inside {
    padding: 3px;
    font-size: 0.8rem;
    visibility: hidden;
    background-color: black;
    color: #fff;
    text-align: center;
    padding: 5px 0;
    border-radius: 6px;
    width: 200px;
    bottom: 100%;
    left: 50%;
    margin-left: -100px; /* Use half of the width (120/2 = 60), to center the tooltip */
    position: absolute;
    z-index: 1;
    opacity: 0.9;
}

.info_text:hover {
    overflow: visible;
}
.info_text:hover i{
    visibility: hidden;
}
.info_text:hover .info_text_inside {
    visibility: visible;
}


.days_info_section{
    /*margin-left: -1rem;*/
    /* border-left: 1px solid #D9D9D9; */
    text-align: center;
    color: #7E7E7E;
}
.today_button_section{
    border-left: 1px solid #D9D9D9;
}

.first_line_text{
    margin-bottom: 0px;
}

.bonus_days_text {

    font-weight:500;
    font-size: 2rem;
}
.not_important_text{
    font-size: 12px;
}
.days_info_line{
    margin-left:0%;
    height: 1%;
    width: 70%;
    background-color: #7E7E7E;
    margin-top:0;
    margin-bottom: 0;
}
.due_days_text{
    font-weight:400;
    font-size: 1.4rem;
}

.delete_button {
    /*margin-right: 1rem;*/
    margin-top: 1rem;
    cursor: pointer;
    border: 2px solid black;
    border-radius: 7px;
    height: 3rem;
    width: 3rem;
}

.today_button {
    margin-left: 1rem;
    margin-top: 1rem;
    cursor: pointer;
    border: 2px double #436EE6;
    border-radius: 6px;
    height: 2.5rem;
    width: 150%;
    opacity: 0.8;
}
.today_button:hover{
    border: 4px solid #436EE6;
    opacity: 1;
}
.today_button img{
    max-height: 100%;
}

#today_deals_container {
    max-width: 1050px;
    overflow: hidden;
}
.new_deal_request_text{
    margin:10px;
    font-weight: 600;
}
.create_button, .cancel_button, .convert_button{
    background-color: #e1e0e0;
    margin-top: 5px;
    border-radius: 7px;
    max-width: 100px;
    cursor: pointer;
    margin-right: 15px;
}


#button_container, #button_container_2{
    background: #F6F9FCFF;
    border: 1px dashed #436EE6;
    border-radius: 7px;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 1.3rem;
    font-weight: 400;
    cursor: pointer;
    color: #7E7E7E;
    text-align: center;
}
#button_container:hover{
    background: #EAF2FA;
    border: 2px solid #436EE6;
    color: #1a1a1a;
}

#button_container_2:hover{
    background: #EAF2FA;
    border: 2px solid #436EE6;
    color: #1a1a1a;
}

#button_container_2_done{
    background: #EAF2FA;
    border: 2px solid #436EE6;
    color: #1a1a1a;
    border-radius: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 1.3rem;
    font-weight: 400;
    cursor: pointer;
    text-align: center;
}






.expert_container{
    border-bottom: 1px solid #e5e3e3;
    margin-top: 20px;
    margin-bottom: 20px;
}
.curator_name_container{
    border-bottom: 2px solid #575454;
    margin-top: 20px;
    margin-bottom: 20px;
}

.expert_name_section{
    font-size: 1.3rem;
    font-weight: 400;
}
.expert_name_section i{
    opacity: 0.5;
    font-size: 16px;
}
.expert_name_section i:hover{
    opacity: 1;
}

.expert_days_section{
    width: 20%;
    height: 30px;
    margin-right: 5% ;
    background-color: #D9D9D9;
    border-radius: 7px;
    display: inline-block;
    text-align: center;
}
.important_number{
    font-weight: 600;
    font-size: 26px;
    color:black;
}
.not_so_important_number{
    font-weight: 450;
    font-size: 18px;
}

.new_deal_button, .todo_button {
    background-color: #eeecec;
    cursor: pointer;
    border: 1px double #c9c7c7;
    border-radius: 7px;
    height: 30px;
    width: 25%;
    text-align: center;
}

.new_deal_button:hover{
    border: 2px solid #436EE6;
}
.todo_button:hover{
    border: 2px solid #436EE6;
}
.button_horizontal:hover {
    border: 2px solid #436EE6;
}
.new_deal_button i{
    display: none;
}


.square_todolist{
    margin-left: 2px;
    opacity: 0.5;
    height:10px;
    border-radius: 5px;
    background-color: #d6d6d6;
    cursor: pointer;
}
.square_todolist:hover{
    opacity: 1;
}

.square_todolist.active{
    background-color: #436EE6;
}

/* 
#new_deal_form, #edit_deal_form {
    background-color: #FFFFFF;
    border: 2px double #E5E5E5;
    border-radius: 12px;
    padding-top: 5px;
    padding-bottom: 5px;
    max-width: 600px;
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 100;
} */
#edit_deal_form label{
    font-weight: 400;
    color: #a8a8a8;
}

/* #analyse_field {
    background-color: #FFFFFF;
    border: 2px double #E5E5E5;
    border-radius: 12px;
    padding-top: 5px;
    padding-bottom: 5px;
    max-width: 1050px;
    display: none;
    position: fixed;
    top: 10%;
    left: 50%;
    transform: translate(-50%, -0%);
    z-index: 100;
} */
/* #report_table_form {
    background-color: #FFFFFF;
    border: 2px double #E5E5E5;
    border-radius: 12px;
    padding-top: 5px;
    padding-bottom: 5px;
    max-width: 1050px;
    display: none;
    position: fixed;
    top: 10%;
    left: 50%;
    bottom: 10%;
    overflow-y: scroll;
    transform: translate(-50%, -0%);
    z-index: 100;
} */


.comment_section {
    text-align: left;
    font-style: italic;
    margin-left: 15px;
    border-top:1px solid #D9D9D9;
    font-weight: 400;
    position:relative;
    overflow:hidden;
}


.toggle_comments_icon{
    position: absolute;
    right: 30px;
    color: #9e9e9e;
    cursor: pointer;
}
.toggle_comments_icon:hover{
    color: black;
}



#todo_list_container {
    max-width: 1050px;
    overflow: hidden;
    border-radius: 15px;
    background-color: #F6F7F8;
}

#todo_list_container_row::-webkit-scrollbar {
    width: 0; /* This hides the horizontal scrollbar */
}






#todo_list_tasks_container{
    height:44vh;
    padding-top: 15px;
    overflow-y: scroll;
    border-radius: 5px;
    border: 1px solid #b6b6b6;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24);
    background-color: white;
}
#report_text_container{
    height: 240px;
    overflow-x: scroll;
    border-radius: 5px;
    border: 1px solid #b6b6b6;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24);
    background-color: white;
}

#report_text_container::-webkit-scrollbar {
    width: 0; /* This hides the horizontal scrollbar */
}

#todo_list_tasks_container::-webkit-scrollbar {
    width: 0; /* This hides the horizontal scrollbar */
}

#todo_list_tasks_container::-webkit-scrollbar-thumb {
    background: transparent; /* This hides the thumb (the draggable part) */
}


#todo_list_right_section{
    margin-left: 2%;
}
/* Container styles */
.todoitem {
    position: relative;
    height: 4vh;
    margin: 10px;
    margin-left: 7%;
    border-radius: 3px;
    /* opacity: 0.9; */
    cursor: pointer;
    font-size: 15px;
    overflow: hidden;
    background-color: #f7f7f7;
    border: 1px solid #dfdcdc;
}
.todoitem:hover{
    border: 2px solid #cad4f5;
    background-color: #b7b7b7;
}

.close-button {
    position: absolute;
    border-radius: 50%;
    background-color: #d0cbcb;
    /* border: 1px solid rgb(93, 93, 93); */
    opacity: 0.4;
    height: 20px;
    width: 20px;
    top: -5px;
    right: -11px;
    cursor: pointer;
    font-size: 12px;
    padding-left: 7px;
    /* color: #ff0000;  */
}
.close-button:hover{
    background-color: #de9595;
    opacity: 1;
}

.task_deal_container_header{
    color: #5d5d5d;
    margin-bottom: 5px;
    font-weight: 600;
}

.horizontal-line {
    border-top: 1px solid #5a5b5b; /* Adjust the color and thickness as needed */
    margin: 0px 0px 10px 0px; /* Adjust the margin as needed */
    width: 70%;
}

.todo_list_time_line{
    font-size: 18px;
    padding: 0px;
    height: 50%;
    margin-bottom: 0px;
}

#progress_bar_plan{
    transition: width 1s ease;
}
#progress_bar_done{
    width: 10%; border: 1px solid black; padding: 0px; height: 62%; border-radius: 3px; transition: width 1s ease;
}


.fade-out {
    opacity: 0;
    transition: opacity 0.4s ease-out;
}


:focus {
    outline: 0;
    border-color: #2260ff;
    box-shadow: 0 0 0 4px #b5c9fc;
}

/* #delete_deal_form, #comment_deal_form, #complete_deal_form, #frozen_deal_form, #user_menu, #report_form, #plan_form, #custom_task_form,  #curator_task_form, #complete_day_form, #feature_power_form, #chronology_window, #extra_objects_form */
/* .form-collapse {
    background-color: #FFFFFF;
    border: 2px double #E5E5E5;
    border-radius: 12px;
    display: none;
    position: fixed;
    z-index: 98;
}




.form-noncollapse {
    background-color: #FFFFFF;
    border: 2px double #E5E5E5;
    border-radius: 12px;
    display: none;
    position: fixed;
    z-index: 96;
} */


.big-form {
    transform: translate(-50%, -0%);
    top: 2%;
    left: 50%;
    bottom: 2%;
    overflow-y: scroll;
    max-width: 95% !important;
}

.big-form::-webkit-scrollbar {
    width: 0;
}

.long-form {
    max-width: 700px !important;
    transform: translate(-50%, -0%);
    top: 2%;
    left: 50%;
    bottom: 2%;
    overflow-y: scroll;
}
.long-form::-webkit-scrollbar {
    width: 0;
}

.wideandlong-form {
    max-width: 1200px !important;
    transform: translate(-50%, -0%);
    top: 2%;
    left: 50%;
    bottom: 2%;
    overflow-y: scroll;
}
.wideandlong-form::-webkit-scrollbar {
    width: 0;
}
/* .small-form {
    max-width: 750px !important;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
}
.medium-form {
    max-width: 1000px !important;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
}

.wide-form {
    width: 90%;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    max-width: 1200px !important;
}
.wide-form::-webkit-scrollbar {
    width: 0; 
}*/

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    height: auto;
}
.stepper {
    border: 1px solid #eee;
    display: inline-block;
    overflow: visible;
    height: 2.1em;
    background: #fff;
    padding: 1px;
}
.stepper input {
    width: 3em;
    height: 100%;
    text-align: center;
    border: 0;
    background: transparent;
    color: #000;
}
.stepper button {
    width: 1.4em;
    font-weight: 300;
    height: 100%;
    line-height: 0.1em;
    font-size: 1.4em;
    padding: 0.2em !important;
    background: #eee;
    color: #333;
    border: none;
}
#IC-number{
    font-weight: 400;
    font-size: 18px;
}

table {
    border-collapse: collapse;
    width: 100%;
}

th, td {
    border: 1px solid #ccc;
    padding: 8px;
    text-align: left;
}

th {
    background-color: #f2f2f2;
}
.left {
    display: none;
    flex-direction: column;
}

.left > textarea {
    flex: 1;
}

#deal_table_form{
    padding-left: 5% !important;
    padding-right: 5% !important;
    padding-top: 15px !important;
}
.stage_table, .task_table{
    display: none;
    caption-side: top;
}

.stage_table_container, .task_table_container{
    height: 40vh;
    overflow-y:scroll;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2), 0 5px 5px 0 rgba(0, 0, 0, 0.24);
}

.table_bar{
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: 9.5% !important;
    max-height: 19vh;
}
.task_bar{
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: 1.9% !important;
    max-height: 19vh;
}

.selected_table_stage{
    border: 5px solid rgb(131, 131, 220);
}

.table_bar_row{
    height:20vh;
    justify-content: space-between;
    align-items: flex-end;
    display: flex;
}

.sent {
    border: 2px solid blue;
}

.filtered{
    display: none !important;
}

#filter_menu {
    opacity: 0.97;
    display: none;
    position: absolute;
    top: 10%;
    left: 0;
    width: 250px; /* Adjust the width as needed */
    background-color: #f8f9fa; /* Adjust the background color as needed */
    border: 1px solid #dee2e6; /* Adjust the border color as needed */
    padding: 10px;
    box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.1);
  }
  
  .filter_menu_line {
    height: 2px;
    background-color: #495057; /* Adjust the line color as needed */
    margin: 2px 0;
  }
  

  
  #filter_menu:hover {
    display: block;
    
  }

.filter_menu_option{
    height: 5vh;
    padding: 5px;
    margin: 2px 0px !important;
    border: 1px solid #495057;
    cursor: pointer;
}
.filter_menu_option:hover{
    background-color: #a4b6df;
}

.filter_container{
    display: none;
}




.tutorial_div {
    display: none;
    color: whitesmoke;
    width: 50%;
    position: fixed;
    top: 0%;
    left: 25%;
    height: 100px;
    z-index: 103;
    background-color: #292929;
    opacity: 0.96   ;
    border-radius: 10px;
}

#tutorial_form{
    z-index:105 !important;
    font-size: 21px;
    font-family: monospace;
}

#tutorial_container{
    padding: 10px;
}
#tutorial_container img{
    max-width: 100%;
    margin-left: auto;
  margin-right: auto;
  display: block;
}

#ticket_notification_form img{
    max-width: 100%;
    margin-left: auto;
  margin-right: auto;
  display: block;
}



@media (max-width: 768px) {
    .header_logo img {
        height: 30px;
        content: url('../img/logo_dark_cut.png');
    }
    .header {
        flex-direction: column;
        text-align: center;
    }

    .header_logo,
    .header_tabs,
    .header_icons {
        width: 100%;
        justify-content: center;
    }

    .header_tabs ul li {
        margin: 0 10px;
    }

    .header_icon {
        margin-left: 15px;
    }

    .header_tabs ul li a {
        font-size: 0.8rem;
    }

    .footer .footer-section{
        font-size: 0.5rem;
    }
    .secondary-text{
        font-size: 0.6rem;
    }
    .tertiary-text{
        font-size:6px;    }
    
    .stage-timeline {
        font-size: 0.6rem;
    }
    .substage-timeline {
        font-size: 0.5rem;
    }
    .status-text { font-size: 0.7rem; }


    .responsible-card {
        height: 85px;
        font-size: 0.75rem;
    }

    .notification-title, .notification-date {
        font-size: 12px;
    }
    .pat-status-section{
        font-size: 0.6rem;
      }
}





 /* --------------------------------------------------------------------- */

.adaptive_form {
    background-color: #f0f4fa;
    border: 2px double #E5E5E5;
    border-radius: 12px;
    display: none;
    position: fixed;
    box-shadow: 19px 24px 22px rgba(0, 0, 0, 0.3);
}
.small-form {
    max-width: 750px !important;
    max-height: 98vh; 
    width: 100%; 
    overflow-y: auto;
    overflow-x: hidden;
    position: fixed; /* Фиксированное позиционирование */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 20px; /* Внутренний отступ */
    border-radius: 8px; /* Закругленные углы */
}
.wide-form{
    max-width: 1200px !important;
    max-height: 98vh; 
    width: 100%; 
    overflow-y: auto;
    overflow-x: hidden;
    position: fixed; /* Фиксированное позиционирование */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 20px; /* Внутренний отступ */
    border-radius: 8px; /* Закругленные углы */
}

.medium-form {
    max-width: 1000px !important;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
}
.overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(0.3rem);
}

#overlay{
    z-index: 19;
}
#adaptive_form {
    z-index : 20;
}

#overlay2{
    z-index: 21;
}
#adaptive_form2 {
    z-index : 22;
}

#overlay3{
    z-index: 23;
}
#adaptive_form3 {
    z-index : 24;
}

#overlay4{
    z-index: 25;
}
#adaptive_form4 {
    z-index : 26;
}

#adaptive_form_body{
    max-height: 70vh;
    overflow-y: auto;
    overflow-x: hidden;
}






.call_time_cell {
    padding: 4px; /* Внутренний отступ */
    border: 1px solid #ddd; /* Граница */
    border-radius: 8px; /* Закругленные углы */
    text-align: center; /* Выравнивание текста по центру */
    background-color: #f9f9f9; /* Фоновый цвет */
    color: #333; /* Цвет текста */
    font-size: 14px; /* Размер текста */
    cursor: pointer; /* Курсор в виде указателя */
    transition: all 0.3s ease; /* Плавный переход для всех свойств */
}

.call_time_cell:hover {
    background-color: #9FB8C4; /* Фоновый цвет при наведении */
    color: #fff; /* Цвет текста при наведении */
    border-color: #9FB8C4; /* Цвет границы при наведении */
    transform: scale(1.05); /* Увеличение размера при наведении */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* Тень при наведении */
}
.call_time_cell.selected{
    background-color: #9FB8C4; /* Фоновый цвет при наведении */
    color: #fff; /* Цвет текста при наведении */
    border-color: #9FB8C4; /* Цвет границы при наведении */
}





/* RADIO */
.mydict{
    font-family: "Roboto", sans-serif;
    font-size: 0.9rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 15px;
}

.mydict input[type="radio"] {
    clip: rect(0 0 0 0);
    clip-path: inset(100%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}
.mydict label {
    width: 50%;
}

.mydict input[type="radio"]:checked + span {
    box-shadow: 0 0 0 0.2625em rgba(114, 145, 229, 0.8);
    background-color: #fff;
    z-index: 1;
}

.mydict label span {
    display: block;
    cursor: pointer;
    background-color: #f2f2f2;
    padding: 0.375em .75em;
    position: relative;
    margin-left: .0625em;
    box-shadow: 0 0 0 0.0625em #b5bfd9;
    letter-spacing: .05em;
    color: #3e4963;
    text-align: center;
    transition: background-color .5s ease;
}



/* --------------------ANNUITY--------------------------- */
.long-text-div {
     overflow-y: auto; background: #fff; 
     border-radius: 10px; 
     border: 1px solid rgb(207, 207, 207); 
} 
.border-t {
    border: 2px solid red !important;
} 
.border-t span { 
    color: red !important; 
} 
.hotizontal-divider {
    border-top: 1px solid #b6b6b6; margin: 5px 0; 
}





/* -------------------- PARTNER WINDOW--------------------------- */
#sidebar {
    transition: all 0.3s;
    width: 200px;
}

#sidebar.collapsed {
width: 50px;
}

#sidebar .nav-link span {
transition: opacity 0.3s;
}

#sidebar.collapsed .nav-link span {
opacity: 0;
}
#sidebar .active{
    text-decoration: underline;
    font-weight: 600;
}


.stat-box {
padding: 15px;
text-align: center;
background-color: #f9f9f9;
}
.stat-box.active {
    border: 4px solid #007bff !important;
    padding : 13px !important;
}

.chart-container {
background-color: white;
padding: 20px;
border-radius: 8px;
margin-bottom: 20px;
}