
html, body {
  margin: 0; 
  padding: 0;
  overflow-x: hidden;
}

.page-operator {
    position: fixed;
    z-index: 10 !important;
    padding: 40px;
    top: 0;
    bottom: 0;
    left: 80px;
    width: calc(100% - 80px);
    height: 100%;
    overflow: auto;
    background-color: white;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.page-operator img {
    width: 30px;
    height: auto;
    object-fit: contain;
    margin-right: 8px;
    vertical-align: middle;
}

.page-operator h4 {
    font-size: 18px;
    margin-bottom: 5px;
    color: black;
}

.page-operator p {
    font-size: 16px;
    margin-top: 5px;
    color: black;
    font-weight: 300;
}

.page-operator button {
    background-color: transparent; 
    color: black;
    border: 1px solid black;
    width: auto;
    font-size: 14px;
    padding: 12px 20px;
}

.interesting {
    position: fixed;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 20;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    max-height: 100%;
    background: linear-gradient(135deg, #ff99d6 0%, #fff099 100%);
}



.interesting .center {
    max-width: 700px;
    text-align: center;
}

.interesting .center h4 {
    font-size: 26px;
    line-height: 28px;
    font-weight: 500;    
} 

.interesting .center p {
    font-size: 16px;
    line-height: 24px;
    font-weight: 300;
    margin: 0 auto 50px auto;
}

.interesting .center input {
    background-color: white;
    width: 100%;
    max-width: 500px;
}

.interesting .center p.fonte-report {
    font-size: 11px;
    font-weight: 400;
    margin: 0 auto 20px auto;
}

.interesting .center textarea {
    width: 100%;
    max-width: 600px;
    padding: 20px;
    height: 90px;
    outline: none; /* Remove a borda azul padrão */
    box-shadow: none; /* Remove qualquer sombra */    
    box-sizing: border-box;
    resize: none;
    background-color: #fafafa;
    border-radius: 8px;
    font-size: 16px;
}

.interesting .center select {
    max-width: 300px;
    padding: 15px 22px;
    font-size: 16px;
    margin: auto;
    outline: none;
}

.interesting button {
    background-color: black;
    color: white;
    width: auto;
    font-size: 16px;
    font-weight: 400;
    padding: 15px 45px;
    margin: 40px auto 0 auto;
}

.nav-ul-interesting {
    position: absolute;
    z-index: 21;
    left: 0;
    right: 0;
    top: 50px;
    text-align: center;
    width: auto;
    margin: auto;
    padding: 0;
}

.nav-ul-interesting li {
    padding: 0; 
    margin: 0;
    display: inline-block;
    color: black;
}

.nav-ul-interesting li div {
    width: 15px;
    height: 2px;
    border-radius: 5px;
    background-color: white;
}

.nav-ul-interesting li div.filled { 
    width: 15px;
    height: 2px;
    border-radius: 5px;
    background-color: black;
}

.industries {
    width: 100%;
    max-width: 700px;
    height: auto; 
    margin: 0; 
    padding: 0; 
}

.industries li {
    padding: 10px 15px;
    margin: 2px;
    display: inline-block;
    border: 1px solid white;
    color: black; 
    border-radius: 50px;
    cursor: pointer;
    font-weight: 300;
}

.industries li.selected {
    background-color: white;
    border: 1px solid white;
    font-weight: 400;
}

.add-industry {
    display: inline-block;
    width: auto;
    margin: 20px auto;
    padding: 10px 20px;
    font-size: 400;
    background-color: transparent;
    border-radius: 50px;
    border: 1px solid white;
}

.add-industry img {
    position: relative;
    width: 25px;
    height: auto;
    object-fit: contain;
    margin-right: 5px;
    vertical-align: middle;
}

.add-industry input#industryIn {
    width: auto; 
    min-width: 50px;
    color: black;
    border: none;
    margin: 0; 
    display: inline-block;
    background-color: transparent;
    padding: 0;
}

.add-industry input::placeholder {
    color: black;
    font-weight: 300;
}

.add-industry-bt {
    display: inline-block;
    border-radius: 5px;
    width: auto;
    padding: 10px 15px;
    background-color: white;
    color: black;
    cursor: pointer;
    display: none;
}

.interesting .box-image-full {
    position: relative;
    display: inline-block;
    width: 200px;
    height: 240px;
}

.interesting .box-image {   
    position: relative;
    width: 200px;
    height: 200px;
    border-radius: 12px;
    background-color: ghostwhite;
    display: inline-block;
}

.interesting .box-image .mask {
    position: absolute; 
    z-index: 1;
    top: 0; 
    left: 0; 
    width: 100%;
    height: 100%;
    background-color: white;
    opacity: 0.7;
    cursor: pointer;
    border-radius: 8px;
}

.interesting .box-image .mask.sel {
    opacity: 0;
}

.interesting .box-image-full p {
    font-weight: 300;
    font-size: 16px;
}

.interesting .box-image-full p.sel {
    font-weight: 500;
    font-size: 16px;
}

.interesting .box-image img {
    position: absolute; 
    left: 0; 
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px;
}


ul.addr {
    margin: 0;
    padding: 0;
    display: block;
}

ul.addr li {
    width: auto;
    display: inline-block;
    padding: 10px 15px;
    color: black; 
    border: 1px solid black;
    font-size: 14px;
    margin-right: 5px;
    border-radius: 50px; 
}

ul.addr li div {
    display: inline-block;
    margin-left: 5px;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
}

ul.worktype, 
ul.worktype-mode {
    display: flex; /* Usa flexbox para alinhar os itens */
    align-items: flex-start; /* Alinha os <li> pelo topo */
    gap: 10px; /* Espaço entre os itens (opcional) */
    flex-wrap: wrap; /* Permite quebra de linha, se necessário */
    margin: 0 auto; 
    padding: 0; 
    justify-content: center;
}

ul.worktype li,
ul.worktype-mode li {
    display: inline-flex; /* Mantém inline e permite usar flexbox */
    justify-content: center; /* Centraliza horizontalmente */
    align-items: center; /* Centraliza verticalmente */
    width: 150px;
    height: 150px;
    border-radius: 8px;
    color: black;
    border: 1px solid white;
    text-align: center;
    cursor: pointer;
}

ul.worktype li.sel,
ul.worktype-mode li.sel {
    background-color: white;
    border: 1px solid white;
}

.page-operator .section {
    position: relative;
    display: block;
    margin-bottom: 60px;
    min-height: 100px; /* Garante que a altura seja suficiente para exibir a cor de fundo */
    box-sizing: content-box; /* Garantir que a margem não seja afetada pelo box model */
}

.page-operator .section > p {
    max-width: 700px;
    margin-top: 10px;
    line-height: 18px;
    font-size: 15px;
    margin-bottom: 15px;
}

.sec-appl .platform {
    margin: 50px 0; 
    padding: 0;
    display: block;

}

.sec-appl .platform li {
    position: relative;
    display: inline-block;
    width: 100%;
    list-style: none;
    max-width: 550px;
    height: 250px;
    border: 1px solid gainsboro;
    border-radius: 8px;
    padding: 40px;
    box-sizing: border-box;
    vertical-align: top;
    margin: 5px;
}

.sec-appl .platform li img {
    display: block;
    width: 200px;
    height: auto;
    object-fit: contain;
    margin: 20px auto;
}

.sec-appl .platform .acts {
    width: 100%;
    text-align: center;
}

.sec-appl .platform .acts div {
    cursor: pointer;
    display: inline-block;
    margin: 0 10px;
    font-size: 14px;
    font-weight: 500;
}


.sec-appl .platform li img.right-small {
    position: absolute;
    width: 80px;
    height: auto;
    object-fit: contain;
    margin: 0;
    top: 20px;
    right: 20px;
}

.sec-appl .platform li .flipAccType {
    position: absolute;
    width: auto;
    height: auto;
    margin: 0;
    font-size: 14px;
    font-weight: 500;
    top: 20px;
    left: 20px;
    font-weight: 500;
    cursor: pointer;
}

.sec-appl .platform li .content {
    position: absolute; 
    top: 50px;
    padding: 20px;
    width: 100%;
    left: 0; 
    box-sizing: border-box;
}

.sec-appl .platform li .content > p {
    position: relative;
    text-align: left;
    font-size: 14px;
    width: 100%;
    margin-bottom: 20px;
}

.sec-appl .platform li .content .data-access {
    position: relative;
    margin-bottom: 20px;
}

.sec-appl .platform li .content .data-access div {
    position: relative;
    display: inline-block;
    margin: 0 15px 0 0;
}

.sec-appl .platform li .content .data-access div p {
    margin: auto;
    padding: 0;
    font-size: 13px;
}

.sec-appl .platform li .content .data-access div p b {
    font-size: 13px;
}

.sec-appl .platform li .content button {
    position: relative;
}

.sec-appl .platform li .loader-center {
    display: flex; /* Usando flexbox para alinhamento */
    justify-content: center; /* Alinha horizontalmente no centro */
    align-items: center; /* Alinha verticalmente no centro */
    height: 100%; /* Garante que a altura da li ocupe o espaço disponível */
}


.sec-appl .platform li .timeline {
    position: relative; 
    display: flex;
    left: 0;
    width: 100%;
    margin-top: 30px;
    height: 50px;
    justify-content: center;
}

.sec-appl .platform li .circle { 
    display: inline-block;
    position: relative; 
    background-color: gainsboro;
    width: 20px; height: 20px; 
    border-radius: 50%; 
}

.sec-appl .platform li .circle.green,
.sec-appl .platform li .line.green { 
    background-color: limegreen;
}

.sec-appl .platform li .line { 
    display: inline-block;
    position: relative; 
    background-color: gainsboro;
    width: 120px; height: 2px;
    top: 8px;
}

.sec-appl .platform li .timeline-text {
    width: 100%;
    position: relative;
    left: 0; 
    top: 0;
    margin-top: -20px;
    margin-left: 10px;
}
.sec-appl .platform li .timeline-text div {
    position: relative; 
    width: 60px;
    font-size: 13px;
    font-weight: 300;
    display: inline-block;
    text-align: center;
    height: 50px;
    margin-right: 77px;
}   

.sec-appl .platform li .timeline-text div:last-child {
    margin-right: 0;
}

.sec-appl .platform li .timeline-text div img {
    width: auto;
    height: 15px;
    object-fit: contain;
    position: relative; 
    display: inline-block;
    margin: 0;
    padding: 0;
    margin-right: 5px;
}

.sec-appl .platform li .timeline-text div.applied {
    text-decoration: underline;
    cursor: pointer;
}

.sec-appl .platform li  button.right-small {
    position: absolute;
    top: 10px;
    right: 10px;
    font-size: 13px;
}

.sec-appl .platform li img.left-small {
    position: absolute;
    width: 50px;
    height: auto;
    object-fit: contain;
    margin: 0;
    top: 20px;
    left: 20px;
}

.page-operator  .section h4 {
    display: inline-block;
    vertical-align: middle;
    margin-right: 10px;
}

.page-operator .switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 28px;
}

.page-operator .switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.page-operator .slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: 0.4s;
    border-radius: 34px;
}

.page-operator .slider:before {
    position: absolute;
    content: "";
    height: 22px;
    width: 22px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    transition: 0.4s;
    border-radius: 50%;
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.2);
}

.page-operator input#toggleSwitchSearch:checked + .slider,
.page-operator input#toggleSwitchApply:checked + .slider {
    background-color: #4cd964;
    /* background: linear-gradient(to right, #ec4899, #f59e0b); */

}

.page-operator input#toggleSwitchSearch:checked + .slider:before,
.page-operator input#toggleSwitchApply:checked + .slider:before {
    transform: translateX(22px);
}

.section.sec-start {
    height: auto;
    min-height: unset;
    margin-bottom: 10px;
}

.section.sec-inter {
    margin-top: 0;
    margin-bottom: 20px;
}

.section.sec-inter, 
.section.sec-appl {
    display: block;
}

ul.next-platform {
    margin: 0; 
    padding: 0;
}

ul.next-platform li {
    border: 1px solid gainsboro; 
    border-radius: 8px;
    text-decoration: none;
    margin: 5px;
    padding: 15px 12px;
    display: inline-block;
    font-size: 14px;
}

ul.next-platform li img {
    width: auto;
    max-width: auto;
    max-height: 30px; 
    height: auto;
    object-fit: contain;
}


.section.sec-stopped {
    display: none;
}


#dropzone {
 position: relative;
  width: 100%;
  max-width: 700px;
  height: 100px;
  border: 2px dashed #aaa;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #666;
  background-color: #f9f9f9;
  cursor: pointer;
  transition: background-color 0.3s ease;
  margin: auto;
  overflow: hidden;
}

#dropzone.dragover {
  background-color: #e6f7ff;
  border-color: #3399ff;
  color: #3399ff;
}

#dropzone p {
    margin: 0;
    padding: 0;
}


  .dropzone:hover {
    background: #f1f1f1;
  }

  .dropzone input {
    display: none;
  }

  .preview {
    position: absolute; 
    z-index: 4;
    top: 5px;
    left: 5px;
    display: block;
    background: #fff;
    border: 1px solid #eee;
    padding: 10px 10px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
  }

  .preview span {
    flex: 1;
    word-break: break-word;
  }

  .preview button {
    background: transparent;
    border: none;
    padding: 0; 
    margin: 0;
    width: 25px;
    height: 25px;
    margin-left: 20px;
    color: black;
    border: 1px solid black;
    border-radius: 100px;
    font-size: 14px;
    cursor: pointer;
  }

  input#urlCV {
    position: absolute; 
    display: inline-block;
    z-index: 1;
    left: 35px;
    bottom: 10px;
    width: calc(100% - 0px);
    height: 40px;
    border: none;
    vertical-align: bottom;
    margin-bottom: 0;
    background-color: transparent;
  }

  #uploadzone {
    position: absolute; 
    z-index: 4;
    bottom: 5px;
    font-size: 25px;
    font-weight: 400;
    left: 5px;
    display: inline-block;
    vertical-align: bottom;
    padding: 10px 10px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.05);
  }

  .bar {
    z-index: 21;
    width: calc(100% - 50px);
    max-width: 200px;
    height: calc(100% - 40px);
    position: fixed; 
    left: 0;
    top: 0;
    padding: 20px 0;
    background-color: rgb(249, 249, 249);
    border-bottom-color: rgba(13, 13, 13, 0.05);
    transition: left 0.4s ease; /* efeito suave */
  }

  .bar .icon-logo {
    position: relative;
    display: inline-block;
    width: 22px;
    height: 22px;
    border-radius: 100px;
    padding: 5px;
    background-color: white;
    border: 1px solid rgba(13, 13, 13, 0.05);
    height: auto;
    margin-right: 5px;
  }

  .bar .icon-logo.higen {
    background-color: transparent;
    border: none;
    width: 100px;
    height: auto;
  }

  .bar .icon-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    vertical-align: middle;
  }

  .bar .brand {
        font-size: 14px;
        padding: 10px 20px 10px 20px;
        font-weight: 400;
        cursor: pointer;
        margin: 0 20px;
        transition: all 0.6s ease;
    }
    
    .bar .brand.logo {
        padding: 10px 0;

    }

  .bar .brand.active {
    background-color: gainsboro;
    border-radius: 8px;
  }


    /* Classe para ativar o menu */
    .bar.active {
        left: 0;
    }


    .bar .brand {
        display: flex;
        align-items: baseline;
        justify-content: left; 
        gap: 0.5rem;
    }



    .settings {
        position: absolute;
        width: 150px;
        bottom: 20px;
        left: 20px;
        height: 50px;
        font-size: 14px;
        font-weight: 500;
        white-space: nowrap;
        overflow: hidden; 
        text-overflow: ellipsis;
        cursor: pointer;
    }

    .icon-settings {
        position: relative;
        display: inline-block;
        vertical-align: middle;
        margin-right: 10px;
        width: 28px;
        height: 28px;
        border-radius: 100px;
        /* background-color: white; */
        border: 1px solid rgba(13, 13, 13, 0.05);
        /* background-color: #fff099; */
        background-color: #666;
        color: white;
        font-size: 15px;
        font-weight: 500;
        line-height: 28px;
        text-align: center;
        border: 3px solid transparent;
        cursor: pointer;
        transition: border 0.3s ease;

    }

    .settings:hover .icon-settings {
        border: 3px solid gainsboro;
    }

    .nextJob {
        position: absolute;
        width: calc(100% - 200px);
        padding: 60px;
        left: 0;
        transform: translateX(200px);
        transition: transform 0.3s;
        box-sizing: border-box;
        overflow-x: hidden;
    }

    .nextJob.expanded {
        transform: translateX(0);
        transition: transform 0.3s
    }

    .nextJob h4 {
        font-weight: 400;
        font-size: 28px;
        letter-spacing: 0;
        margin: 0; 
        padding: 0;
    }

    .nextJob p {
        padding: 0; 
        font-size: 13px;
        letter-spacing: 0;
        margin: 0
    }

    .nextJob img {
        width: 80px;
        height: auto;
        margin-bottom: 20px;
        object-fit: contain;
        vertical-align: middle;
    }


    .nextJob input[type="range"] {
        width: 100%;
        max-width: 500px;
        padding: 0;
        height: 10px; /* controla a altura da barra */
        border-radius: 5px;
        background: linear-gradient(135deg, #fff099  0%,  #ff99d6 100%);
        outline: none;
        -webkit-appearance: none;
        appearance: none;
        margin-bottom: 10px;
    }

    input[type="range"]::-webkit-slider-thumb {
        -webkit-appearance: none;
        appearance: none;
        width: 25px;
        height: 25px;
        background: #fff;
        border: 2px solid gainsboro;
        border-radius: 50%;
        cursor: pointer;
    }

    ul.jobs {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    ul.jobs li {
        display: flex;
        justify-content: space-between;
        align-items: center;   /* Centraliza verticalmente o conteúdo */
        padding: 20px;
        /* border-bottom: 1px solid #eee; */
        border-radius: 8px;
    }

    ul.jobs li div {
        display: flex;    /* Alinhamento com flex */
    }

    ul.jobs li div.description {
        width: 100%;       /* Garantir que a descrição ocupe 70% */
        flex: 1;
        flex-direction: column;   /* Organiza o conteúdo verticalmente */
    }

    ul.jobs li div.description h3 {
        font-size: 18px;
        margin: 0;
        padding: 0;
        font-weight: 500;
    }

    ul.jobs li div.description h3 span {
        font-size: 12px;
        font-weight: 100;
    }

    ul.jobs.title li.title {
        margin: 0;
        padding: 0;
    }
    

    ul.jobs li div.score {
        padding: 20px 0;
        font-size: 12px;
        color: black;
        font-weight: 600;
    }
    
    ul.jobs li div.score div {
        border-radius: 50px;
        padding: 10px;
        margin-right: 10px;
        cursor: default;
    }
     ul.jobs li div.score div:nth-child(2) {
        cursor: default;
     }

    ul.jobs li div.score .value {
        font-weight: 800;
        padding-left: 5px;
    }


    ul.jobs li div.description p {
        display: none;
        margin: 8px 0 0 0;  /* Espaço entre h3 e p */
        padding: 0;
        /* max-width: 600px; */
        font-size: 13px;
        color: #666;
    }

    ul.jobs li div.bt {
        display: inline-block;
        margin-left: 20px;
        /* width: 20%;
        display: flex;                 
        align-items: center;           
        justify-content: center;        */
    }

    ul.jobs li:nth-child(odd) {
        background-color: transparent;
    }

    ul.jobs li:nth-child(even) {
        background-color: rgba(0, 0, 0, 0.05); /* Levemente escurecido */
        transition: background-color 0.3s ease;  /* Adiciona suavização na cor de fundo */
    }


    ul.jobs button {
        font-size: 14px;
        min-width: unset;
        width: auto;
        /* background-color: rgb(236, 236, 241); */
         /* background: linear-gradient(135deg, #ff99d6 0%, #fff099 100%); */
         /* background-color: #ff99d6; */
         /* background-color: #fff099; */
        
        /* color: rgb(53, 55, 64); */
        background-color: white;
        color: #333;
        border-radius: 50px;
        padding: 10px 15px;
        /* margin: 10px 0;  */
        /* margin-right: 10px; */
        word-spacing: -1px; /* reduce space between words */
        font-weight: 500;
        float: right;
    }

     ul.jobs:not(.title) button:hover {
        /* background-color: #3ec653; */
        background-color: white;
     }

    .popupx {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        min-height: 100%;
        background: rgba(0, 0, 0, 0.5);
        /* display: flex;
        align-items: center;
        justify-content: center; */
        display: block;
        padding: 60px 30px; /* espaço para conteúdo expandir */
        overflow: hidden;
        z-index: 9999;
        box-sizing: border-box;
        inset: 0;

    }

    .card .box,
    .popupx .box {
        position: relative;
        width: 400px;
        height: auto;
        max-height: calc(100% - 80px);
        background-color: white;
        padding: 40px 24px;
        border-radius: 8px;
        overflow: visible;            /* ou overflow: hidden; */
        max-height: none;             /* evita limitar a altura aqui */

        /* overflow-y: auto; */
    }
/* 

    .card .box {
        position: absolute; 
        left: 0; 
        right: 0;
        top: 0; 
        bottom: 0; 
        margin: 20px;
        width: calc(100% - 40px);
        max-height: calc(100% - 40px);
        overflow: auto;
        background-color: white;
        box-sizing: border-box;
    } */

    .card .box {
        position: static;       /* <-- tira do absolute */
        margin: 0;
        width: 100%;
        max-height: none;       /* deixa crescer */
        overflow: visible;      /* só rolha a página, não a box */
        background: #fff;
        box-sizing: border-box;
        align-self: start;   
    }

 
    .card .box .sts-max {
        margin-bottom: 40px;
    }

    .card .box h4,
    .popupx .box h4 {
        margin: 0;
        padding: 0; 
        margin-bottom: 10px;
        font-size: 18px;
        font-weight: 600;
        color: rgb(32, 33, 35)
    }

    .popupx .box .balance {
        margin: 0;
        margin-top: 20px;
        padding: 0;
        font-size: 14px;
        color: rgb(53, 55, 64);
    }

    .card .box p,
    .popupx .box p {
        margin: 0;
        margin: 10px 0;
        padding: 0;
        font-size: 14px;
        color: rgb(53, 55, 64);
    }

    .popupx .box div.value {
        margin: 0;
        padding: 0;
        margin-top: -5px;
        font-size: 32px;
        font-style: italic;
        letter-spacing: -1px;
    }

    .popupx .box div.value span {
        font-weight: 300;   
        font-size: 32px;
        font-style: normal
    }

    .card .box input,
    .popupx .box input {
        border: none;
        display: inline-block;
        border-bottom: 1px solid #333;
        border-radius: 0;
        padding: 12px;
        font-size: 16px; 
        width: 100px;
        height: auto;
        margin: 20px 0;
    }

    .card .box button,
    .popupx .box button {
        display: inline-block;
        font-size: 14px;
        min-width: unset;
        width: auto;
        background-color: rgb(236, 236, 241);
        color: rgb(53, 55, 64);
        padding: 10px 15px;
        margin: 10px 0 0 0; 
        word-spacing: 0px; /* reduce space between words */
    
    }

    .card .box button:hover,
    .popupx .box button:hover {
         background-color: rgb(216, 216, 221);
    }


    .sts .switch,
    ul.sts .switch,
    ul.jobs .switch {
        position: relative;
        display: inline-block;
        width: 28px;    /* 50px → 25px */
        height: 16px;   /* 28px → 14px */
        margin: 0;
    }

.sts .switch input,
ul.sts .switch input,
ul.jobs .switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.sts .slider,
ul.sts .slider,
ul.jobs .slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: 0.4s;
    border-radius: 17px; /* 34px → 17px */
}

.sts .slider::before,
ul.sts .slider::before,
ul.jobs .slider::before {
    position: absolute;
    content: "";
    height: 13px;    /* 22px → 11px */
    width: 13px;
    left: 1.5px;     /* 3px → 1.5px */
    bottom: 1.5px;
    background-color: white;
    transition: 0.4s;
    border-radius: 50%;
}

.sts input:checked + .slider,
ul.sts input:checked + .slider,
ul.jobs input:checked + .slider {
    background-color: #4cd964;
    
}


ul.jobs input:checked + .slider {
    /* background: linear-gradient(135deg, #ec70ab, #ffd95f); */
    background: linear-gradient(135deg, #ec4899, #f59e0b);

}

.sts input:checked + .slider::before,
ul.sts input:checked + .slider::before,
ul.jobs input:checked + .slider::before {
    transform: translateX(11px); /* 22px → 11px */
}

ul.inv {
    list-style: none;
    margin: 0; 
    padding: 0;
}

ul.inv li {
    position: relative;
    width: 100%;
    margin: 0; 
    padding: 0;
    display: inline-block;
}

.popupx .box ul.inv li .envelop {
    border: 1px solid rgb(236, 236, 241);
    display: flex; /* Para alinhar os filhos */
    align-items: center; /* Centraliza verticalmente */
    justify-content: space-between; /* Espaça input e copy */
    border-radius: 8px;
    padding: 0;
    margin: 0;
    margin-top: 20px;
    height: 40px;
    width: 100%;
    min-width: unset;
    max-width: unset;
    cursor: pointer;
}

.popupx .box ul.inv li .envelop.used {
   background-color: rgb(236, 236, 241); 
}

.popupx .box input.invite {
    width: 100%;
    max-width: calc(100% - 50px); /* evita que ultrapasse o espaço */
    font-size: 13px;
    border: none;
    height: auto;
    padding-left: 10px;
    margin: 0;
}

.popupx .box div.copy {
    width: auto;
    height: auto;
    font-size: 11px;
    padding: 5px;
    border-radius: 8px;
    margin-right: 10px;
    background-color: rgb(236, 236, 241);
    display: flex;
    align-items: center;
    justify-content: center;
}


    .popupx .box div.copy img {
        width: 15px;
        height: auto;
        object-fit: contain;
    }

    .invite[disabled] {
        pointer-events: none;
    }

    .closer {
        position: absolute;
        text-align: center;
        line-height: 30px;
        width: 30px;
        height: 30px;
        background-color: transparent;
        border-radius: 50%;
        right: 10px;
        top: 10px;
        color: black;
        cursor: pointer;
    }

    .closer:hover {
        background-color: rgb(236, 236, 241); 
    }

    .adin {
        position: relative;
        display: flex;
        margin: 0; 
        padding: 0;
        width: auto;
        height: auto;
        font-size: 15px;
        font-style: italic;
    }

    .popupx .box .inp {
        position: inherit;
        width: auto;
          flex: 1;  
        margin-right: 20px;
        border-bottom: 1px solid rgb(236, 236, 241);
    }


    .popupx .box input.credits {
        position: relative;
        display: inline-block;
        font-size: 20px;
        width: 250px;
        margin: 0; 
        margin-top: 10px;
        margin-left: 5px;
        margin-right: 15px;
        padding: 0;
        max-width: unset;
        min-width: unset;
        border-bottom: transparent;
    }
    
    .popupx .box button.add-credits {
        background-color: #10a37f;
        color: rgb(255, 255, 255);
    }
    
    .popupx .box button.add-credits:hover {
        background-color: #1a7f64;
    }


    .popupx .loaderx {
        width: 100px;
        height: auto;
        margin: auto;
    }

    .popupx .loaderx img {
        width: 100%;
        height: auto;
        object-fit: contain;
    }

    .title-desc .bubble-container {
        position: relative;
        display: inline-block;
        vertical-align: middle;
        margin-left: 5px;
        cursor: pointer;
    }

    .bubble-container .bubble {
        position: absolute;
        top: 0px;
        left: 30px;
        border-radius: 8px; 
        width: 250px; /* Ajuste a largura se necessário */
        padding: 30px 15px; /* Ajuste o padding se necessário */
        background-color: white;
        border: 1px solid rgb(236, 236, 241);
        display: flex; /* Flexbox ajuda a evitar quebra em coluna */
        flex-direction: column; /* Organiza os itens verticalmente */
        transform: translateY(-20px);
        transition: opacity 0.3s ease, transform 0.3s ease;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
        opacity: 0;
        z-index: 25;
    }
    
    .bubble-container.active .bubble {
            opacity: 1;
            transform: translateY(0);
        }

    .bubble-container .bubble h4 {
        font-size: 14px;
        font-weight: 600;
    }

    .bubble-container .bubble p {
        font-size: 13px;
        color: #666 !important; /* Usando !important para garantir que a cor seja aplicada */
        display: inline-block;
        margin: 10px 0 !important; /* Garantindo que a margem seja aplicada */
        max-width: 100%; /* Remover a largura máxima para se adaptar melhor ao conteúdo */
    }

    .bubble-container .bubble button {
        font-size: 14px;
        display: inline-block;
        min-width: unset;
        width: auto;
        background-color: rgb(236, 236, 241);
        color: rgb(53, 55, 64);
        padding: 10px 15px;
        margin: 10px 0 0 0; 
        margin-right: 10px;
        word-spacing: 0; /* reduce space between words */
    }

    .popupx .box .content ul.sts {
        position: relative;
        margin: 20px 0 0 0;
        padding: 0;
        list-style: none;
    }

   .popupx .box .content ul.sts li {
        
        position: relative;
        padding: 15px 0 15px 0;
        margin: 0;
        border-bottom: 1px solid rgb(236, 236, 241);
        display: flex;
        justify-content: space-between;
        align-items: center;   /* Centraliza verticalmente o conteúdo */
    }
   
    .popupx .box .content ul.sts li:last-of-type {
        border: none;
        padding-bottom: 0;
   }

    .popupx .box.large {
        min-width: 500px;
        overflow: hidden;
        opacity: 0;
    }

     .popupx .box .content ul.sts li div {
        display: flex;
        font-size: 14px;
        cursor: pointer;
     }


    .popupx .box .content ul.sts li div.col1 {
        display: inline-block;
        width: 70%;       /* Garantir que a descrição ocupe 70% */
        /* max-width: 150px; */
        flex: 1;
        flex-direction: column;   /* Organiza o conteúdo verticalmente */
    }

    .popupx .box .content ul.sts li div.col1 p {
        font-size: 11px;
        font-weight: 300;
        margin-top: 2px;
        color: #999;
    }

    .popupx .box .content ul.sts li div.col1 .logo-member {
        display: inline-block;
        width: 20px;
        height: auto;
        margin-right: 10px;
        
    }


    .popupx .box .content ul.sts li div.col1 .logo-member img {
        width: 100%;
        height: auto;
        object-fit: contain;
        vertical-align: middle;

    }
    
     .popupx .box .content ul.sts li div.col1 textarea {
        margin-top: 10px;
        border-radius: 4px;
        width: 100%;
        border: 1px solid #ccc;
        color: rgb(32, 33, 35);
        font-size: 14px;
        padding: 15px;
        outline: none;
        resize: none;
        box-sizing: border-box;
    }

    .popupx .box .content ul.sts li div.col1 textarea::placeholder {
        color: #999;
        font-size: 12px;
    }


    .popupx .box .content ul.sts li div.col2 {
        font-size: 16px;
        font-weight: 500;
        width: 20%; 
        display: flex;                  /* Centraliza o switch */
        align-items: center;           /* Centraliza verticalmente */
        justify-content: right;       /* Centraliza horizontalmente */
        cursor: pointer;
    }

    .st-title span {
        font-size: 25px;
        font-weight: 400;
        cursor: pointer;
        margin-right: 10px;
        vertical-align: middle;
    }

    .popupx .box .content ul.sts li select#notifyJobs,
    .popupx .box .content ul.sts li select#notifyActions, 
    .popupx .box .content ul.sts li select#scoreStatus {
        width: auto;
        max-width: unset;
        min-width: unset;
        padding: 8px 10px !important;
        font-size: 14px; 
        color: rgba(0, 0, 0, 0.5);
        margin: auto;
        outline: none;
    }

    .popupx .box .content ul.sts li div.col1 .bt {
        position: relative; 
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        width: 100%;
    }
      .popupx .box .content ul.sts li div.col2 button {
        margin: 0;
      }
      
    button#saveInstruction {
        position: relative;
        float: right;
        padding: 8px 20px !important;
        max-width: none !important;
        min-width: auto !important;
        box-sizing: content-box !important;
        cursor: pointer;
    }


    .popupx .box.large h4 {
        margin: 0;
        padding: 0; 
        margin-bottom: 10px;
        font-size: 16px;
        font-weight: 600;
        color: rgb(32, 33, 35)
    }

    .popupx .box hr.set-hr {
        margin: 40px 0 20px 0;
    }




    ul.expenses {
        margin: 0;
        padding: 0;
        list-style: none;
        max-height: 400px;
        overflow: auto;
        scrollbar-width: none; /* For Firefox */
        -ms-overflow-style: none; /* For Internet Explorer and Edge */
    }



    /* Hide scrollbar in WebKit browsers */
     ul.expenses::-webkit-scrollbar {
        display: none;
    }



    ul.expenses li {
        display: flex;
        justify-content: space-between;
        align-items: center;   /* Centraliza verticalmente o conteúdo */
        padding: 10px;
        border-bottom: 1px solid #eee;
        border-radius: 8px;
    }

    ul.expenses li div {
        display: flex;    /* Alinhamento com flex */
    }

    ul.expenses li div.description {
        width: 70%;       /* Garantir que a descrição ocupe 70% */
        flex: 1;
        flex-direction: column;   /* Organiza o conteúdo verticalmente */
    }

    ul.expenses li div.description h3 {
        font-size: 14px;
        margin: 0;
        padding: 0;
        font-weight: 500;
    }

    ul.expenses li div.description p {
        margin: 8px 0 0 0;  /* Espaço entre h3 e p */
        padding: 0;
        max-width: 600px;
        font-size: 13px;
        color: #666;
    }

    ul.expenses li div.bt {
        width: 20%;
        display: flex;                  /* Centraliza o switch */
        align-items: center;           /* Centraliza verticalmente */
        justify-content: center;       /* Centraliza horizontalmente */
    }

    ul.expenses li:nth-child(odd) {
        background-color: transparent;
    }

    ul.expenses li:nth-child(even) {
        background-color: rgba(0, 0, 0, 0.05); /* Levemente escurecido */
        transition: background-color 0.3s ease;  /* Adiciona suavização na cor de fundo */
    }




.popupx .box ul.inv li .envelop-credential {
    border: 1px solid rgb(236, 236, 241);
    display: flex; /* Para alinhar os filhos */
    align-items: center; /* Centraliza verticalmente */
    justify-content: space-between; /* Espaça input e copy */
    border-radius: 8px;
    padding: 0;
    margin: 0;
    margin-top: 20px;
    height: auto;
    padding: 10px;
    width: 100%;
    min-width: unset;
    max-width: unset;
    cursor: pointer;
    box-sizing: border-box;
}


.popupx .box .envelop-credential input.invite {
    width: calc(100% - 180px);
    font-size: 14px;
    color: rgb(53, 55, 64);
    border: none;
    height: auto;
    padding-left: 10px;
    margin: 0;
}

.popupx .box div.copy {
    width: auto;
    height: auto;
    font-size: 12px;
    padding: 8px 10px;
    border-radius: 4px;
    margin-right: 10px;
    background-color:rgb(236, 236, 241);
    color: rgb(53, 55, 64);
    display: flex;
    align-items: center;
    justify-content: center;
}



ul.sts li .frames { 
    width: 80px;
    height: 80px;
    border-radius: 8px;
}
ul.sts li .frames img {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 8px;
}


ul.sts li select#works {
    padding: 5px !important;
    height: auto !important;
    width: auto !important;
    min-width: unset; 
    min-height: unset;
    margin-bottom: 0;
}

ul.sts li input.place {
    margin: 0;
    border-bottom: 1px solid rgb(216, 216, 221); 
    padding: 0;
    margin-left: 5px;
}

.popupx .box .content ul.sts li .info-container {
    display: flex;
    align-items: flex-start;
    gap: 15px;
}

.popupx .box .content ul.sts li .details {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.popupx .box .content ul.sts li .details a {
    text-decoration: none;
}

.popupx .box .content ul.sts li .details h4 {
    font-size: 12px;
    font-weight: 500;
    margin-top: -10px;
    margin-bottom: 0;
}

.popupx .box .content ul.sts li .details select {
    outline: none;
    margin: 0;
    margin-bottom: 8px;
    font-size: 13px;
}

.popupx .box .content ul.sts li .removeTestimonialEvaluation img {
    width: 20px;
    height: 20px;
    object-fit: contain;
}


.popupx .box .content ul.sts li .details .span-place {
    font-weight: 600;
    margin-top: 10px;
    display: block;
}

.popupx .box .content ul.sts li .details .span-place input.place {
    width: 100%;
    padding: 0; 
    margin: 0;
    max-width: 400px;
    vertical-align: middle;
    font-size: 14px;
    border: 0;
    border-bottom: 1px solid gainsboro;
}

.action-container {
    display: flex;
    align-items: center;
    gap: 20px;  /* Espaçamento entre os elementos */
    margin-left: auto;
}

.hideVideo {
    cursor: pointer;
}

.removeTestimonialEvaluation {
    cursor: pointer;
}



li.loading-li {
    width: calc(100% - 40px);
    height: 50px;
    margin: 20px 0;
    border-radius: 8px;
    background: linear-gradient(270deg, #f0f0f0, #e0e0e0, #f0f0f0);
    background-size: 200% 100%;
    animation: loading 1.5s ease-in-out infinite;
     opacity: 0.6;
}

/* Apaga gradualmente as últimas 3 */
li.loading-li:nth-last-child(-n+3) {
    opacity: 0.4;
}

/* Apaga gradualmente as últimas 3 */
li.loading-li:nth-last-child(-n+2) {
    opacity: 0.3;
}


/* Apaga gradualmente as últimas 3 */
li.loading-li:nth-last-child(-n+1) {
    opacity: 0.2;
}


@keyframes loading {
    0% {
        background-position: 0% 0%;
    }
    100% {
        background-position: 200% 0%;
    }
}


ul.jobs .bt img {
    width: 25px;
    height: auto;
}


.popupx .box.notify {
    min-width: 200px;
    overflow: hidden;
}

.box.notify.source button {
    margin-right: 10px;
    border: 1px solid #333;
    background-color: transparent;
    color: #333;
}


.ttls {
    display: inline-block;
}

.ttls h3 {
    display: inline-block;
    margin-right: 10px;
    font-size: 18px;
}

ul.jobs button#btn-applied,
button.apply {
    float: right;
    /* background-color: #10a37f; */
    background-color: white;
    border: 1px solid #333;
    color: #333;
    padding: 10px 12px;
    border-radius: 100px;
    margin: 0;
    width: unset;
    min-width: unset;
    margin-top: 20px;

}

button.apply {
    float: right;
    background: linear-gradient(135deg, #be185d 0%, #ec4899 35%, #f59e0b 100%);
    color: white;
    border: none;
    padding: 10px 16px;
    border-radius: 8px;
    overflow: hidden;          /* mantém o brilho dentro */
    position: relative;        /* FUNDAMENTAL */
    cursor: pointer;
}

.apply::after {
  content: "";
  position: absolute;
  top: 0;
  left: -150%;
  width: 80%;
  height: 100%;
  background: linear-gradient(
    115deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.35) 50%,
    rgba(255, 255, 255, 0) 100%
  );
  filter: blur(4px);
  animation: shineMove 4.5s infinite cubic-bezier(.22, .61, .36, 1);
  
  pointer-events: none;
}

@keyframes shineMove {
  0% {
    left: -150%;
  }
  100% {
    left: 180%;
  }
}

ul.jobs button#btn-applied {
    border: 0;
}

.interesting button {
    display: inline-block;
}

.interesting button.back-step {
    display: inline-block;
    padding: 15px 12px;
    background-color: white;
    color: black;
}







.side-toggle-control {
    position: fixed;
    top: 10px;
    left: 0;
    transform: translateX(10px);
    transition: transform 0.3s, opacity 0.3s;
    z-index: 100!important;
    cursor: pointer;
}

.sidebar-open .side-toggle-control {
  transform: translateX(170px);
  transition: transform 0.3s, opacity 0.3s;
}

:root { --icon-size: 24px; }

button.side-toggle {
    all: unset;
}

.side-toggle {
  inline-size: var(--icon-size);
  block-size: var(--icon-size);
  display: inline-grid;
  place-items: center;
  background: transparent;
  border: 0;
  padding: 0;
  cursor: pointer;
}


.icon-rect { display: block; color: #666; }

/* animação suave do traço */
.kicker {
  transform-box: fill-box;
  transform-origin: center;
  transition: transform 200ms cubic-bezier(.2,.7,.2,1);
  transform: scaleY(0.7); /* 70% da altura original */
}
/* quando a barra lateral estiver aberta (aria-expanded=true), o traço anda um pouco pra direita */
.side-toggle[aria-expanded="true"] .kicker,
.side-toggle-mobile[aria-expanded="true"] .kicker {
  /* transform: translateX(3px); */
   transform: scaleY(0.7) translateX(3px);
}

/* respeita usuários com redução de movimento */
@media (prefers-reduced-motion: reduce) {
  .kicker { transition: none; }
}


.sidebar-open .bar {
  transform: translateX(0);
  opacity: 1;
  transition: transform 0.3s, opacity 0.3s;
}


/* quando fechada */
.bar {
  transform: translateX(-100%);
  opacity: 0;
  transition: transform 0.3s, opacity 0.3s;
}


@media screen and (max-width: 850px) {


  .popupx {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        min-height: 100vh;
        background: rgba(0, 0, 0, 0.5);
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0; /* espaço para conteúdo expandir */
        overflow-y: auto;
        z-index: 1000;
        margin: 0;
    }


    .popupx .box.large {
        position: relative;
        min-width: unset;
        max-width: 500px;
        width: calc(100% - 100px);
        margin: 0;
    
    }

    .popupx .box input.credits {
        max-width: 250px;
        width: 100%;
    }

    .nextJob {
        width: 100%;
        padding: 60px 20px;
    }


    .nextJob:not(.expanded).blur {
        filter: blur(6px);
    }

    .nextJob.blur:not(.expanded) * {
        pointer-events: none;
    }


    .nextJob p {
        padding: 0; 
        font-size: 13px;
        letter-spacing: 0;
        margin: 0
    }

    .nextJob img {
        width: 80px;
        height: auto;
        margin-bottom: 20px;
        object-fit: contain;
        vertical-align: middle;
    }
    
    ul.jobs .title-desc h3 {
        font-size: 20px; font-weight: 400;
    }

    ul.jobs {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    ul.jobs .ttls {
        vertical-align: middle;
    }

    ul.jobs .ttls h3 {
        display: inline-block;
        margin: 0 10px 0 0;
        font-size: 15px;
        margin-bottom: 15px;
    }

     ul.jobs .ttls span {
        font-size: 12px;
     }

     ul.jobs button.apply {
        font-size: 14px;
        padding: 5px 10px;
        vertical-align: bottom;
    }   

}

ul.addr {
    margin-top: 20px;
}

@media screen and (max-width: 790px) {
    .nav-ul-interesting {
        top: 30px; 
    }

    .interesting .center {
        width: 100%;
        margin: 0 20px;
        max-width: 700px;
        text-align: center;
        box-sizing: border-box;
    }

    .interesting .center h4  {
        font-size: 18px;
        line-height: 22px;
    }

    .interesting .center p  {
        font-size: 12px;
        line-height: 18px;
    }

     .interesting .center p.at-least {
        font-size: 10px;
        color: red;
     }
    
    .interesting .center p.fonte-report {
        font-size: 10px;
    }

    .interesting .center textarea {
        font-size: 12px;
    }

    .interesting .center #urlCV {
         font-size: 12px;
    }

    .interesting button {
        background-color: black;
        color: white;
        width: auto;
        font-size: 15px;
        font-weight: 400;
        padding: 8px 15px;
        margin: 20px auto 0 auto;
    }

    .interesting button.back-step {
        font-size: 15px;
        padding: 8px 15px;

    }


    .industries {
        width: 100%;
    }

    .industries li {
        font-size: 10px;
        padding: 5px 10px;
        margin: 1px;
    }

    .add-industry input#industryIn {
        font-size: 12px;
    }
    
    .interesting .center select {
        font-size: 13px;
    }

    ul.worktype, ul.worktype-mode {
        gap: 8px;
    }

    ul.worktype li, ul.worktype-mode li {
        width: 100px;
        height: 100px;
        font-size: 13px;
    }
    ul.addr {
        margin-top: 20px;
    }
}

.sts input::placeholder {
    font-size:  12px;
}

.card .box .sts input,
.popupx .box .sts input {
    all: unset; padding: 10px; border: 1px solid gainsboro; width: 100%; font-size: 14px; box-sizing: border-box;

}


.academic-experience,
.certificate, 
.idiom, 
.professional-experience {
    position: relative;
    margin-bottom: 20px;
    border-bottom: 1px solid gainsboro;
    clear: both;
    padding-bottom: 40px;
}

.popupx .box .content ul.sts li div.col2 {
    float: right;
}

.popupx .box .content ul.sts li div.col2 select#notifyJobs,
.popupx .box .content ul.sts li div.col2 select#notifyActions {
    position: relative;
    width: 100px;
    margin: 0;
    float: right
}

.popupx .box .sts input[type="checkbox"] {
    border: none;
}



.popupx {
  position: fixed; inset: 0;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding-top: 40px;
}

.popupx .box.large {
  width: 80%;
  max-width: 600px;
  max-height: calc(100dvh - 80px); /* limite de viewport */
  background: #fff;
  border-radius: 8px;
  overflow: hidden;                /* evita transbordo */
  display: flex;
  flex-direction: column;
}

/* Cabeçalho + conteúdo = cresce conforme o que tiver dentro */
.popupx .box.large .content {
  flex: 0 0 auto;   /* cresce só conforme conteúdo */
  height: auto;     /* se quiser deixar explícito */
  padding: 16px;
}

/* Se precisar de área rolável separada */
.popupx .box.large .sts {
  max-height: calc(100dvh - 400px); /* só exemplo */
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;

  /* esconder scrollbar */
  scrollbar-width: none;   /* Firefox */
  -ms-overflow-style: none; /* IE e Edge antigo */
}

.sts::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Opera */
}

.popupx .box.large .sts-max {
    position: relative; 
    float: right;
    margin: 20px 0 0 0;
    /* max-height: calc(100% - 150px); */
}

.popupx .box.large .sts-max {
    width: 100%;
}

.skills-list2,
.skills-list {
  list-style: none;        /* remove marcadores */
  margin: 0;
  padding: 0;
  display: flex;           /* coloca os <li> lado a lado */
  flex-wrap: wrap;         /* quebra linha se não couber */
  gap: 6px;                /* espaçamento entre os chips */
}

.skills-list2 li, 
.skills-list li {
  display: flex;           /* conteúdo do chip em linha */
  align-items: center;     /* centraliza verticalmente */
  gap: 6px;
  padding: 4px 8px !important;
  border: 1px solid gainsboro;
  border-radius: 15px;
  font-size: 13px;
}

.add-skill2 img,
.add-skill img {
    display: inline-block;
}


.box .sts .add-skill2,
.box .sts .add-skill {
    margin-top: 20px;
    display: inline-block;
}

.box .sts .add-skill2 input,
.box .sts .add-skill input {
    width: 200px;
    display: inline-block;
}

.box .sts .add-skill-bt2,
.box .sts .add-skill-bt {
    display: inline-block;
    padding: 10px; 
    background-color: gainsboro;
}





  /* Layout do carrossel */
    /* Layout do carrossel fixo */

    /* Layout do carrossel fixo */
.carousel {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  margin: 0;
  z-index: 9998;

  /* fundo translúcido suave */
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(4px);        /* antes estava 10px */
  -webkit-backdrop-filter: blur(4px);
}

.track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 100%;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
}

.track::-webkit-scrollbar { display: none; }

.card {
  position: relative;
  scroll-snap-align: center;
  display: grid;
  place-items: center;
  width: 100%;
  max-width: 1000px;

  min-height: 400px;  
  height: auto;
  max-height: 90vh;

  border-radius: 16px;
  background: #fff;
  margin: 8px auto;

  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
  font: 500 18px/1.2 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;

} 



  /* Pontinhos estilo Apple */
  .dots {
    display: flex; justify-content: center; align-items: center;
    gap: 8px; padding: 10px 0 2px;
  }
  .dots button {
    all: unset;
    width: 6px; height: 6px;
    border-radius: 999px;
    background: #c7c7cc;           /* cinza iOS */
    opacity: .6;
    cursor: pointer;
    transition: width .25s ease, opacity .25s ease, background .25s ease, transform .25s ease;
  }
  .dots button[aria-current="true"] {
    width: 16px;                    /* vira “pílula” quando ativo */
    background: #111;
    opacity: 1;
  }
  .dots button:active { transform: scale(.9); }

  /* @media (prefers-color-scheme: dark) {
    .card { background: #f2f2f7; color: #1c1c1e; }
    .card {background: ghostwhite;}
    .dots button { background: #48484a; }
    .dots button[aria-current="true"] { background: #f2f2f7; }
  } */


  .carousel-multiple-selection option {
    padding: 10px 0;
  }

  .card .box .sts input[type="checkbox"], .popupx .box {
    border: none
  }

  .viewx {
    display: none;
  }
  .card .sts-max {
    margin-top: 40px;
  }

  #close-carousel {
    position: absolute;
    top: 20px;
    right: 20px;
    font-weight: 400;
    font-size: 25px;
    cursor: pointer;
    z-index: 99991;
  }

  .sts .col1 img {
    width: 20px;
    height: auto;
    display: inline-block;
    vertical-align: middle;
    margin-left: 5px;
  }

  .sts .col2 button.c-green {
    background-color: #4cd964;
    color: white;
  }







.containerx {
    z-index: 99991 !important;
  width: 80%;
  height: 80%;
  margin: auto;
  display: flex;
  flex-direction: column;
  background: #111;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}

.barx {
  display: flex;
  align-items: center;
  padding: 8px 12px;
  background: #1a1a1a;
  border-bottom: 1px solid #333;
  gap: 8px;
}

.barx input {
  flex: 1;
  padding: 6px 10px;
  border: none;
  border-radius: 4px;
  background: #333;
  color: #fff;
  outline: none;
}

.barx input:focus {
  outline: 2px solid #3385ff;
}

.barx button {
  background: #0066ff;
  border: none;
  width: auto;
  min-width: none;
  max-width: none;
  color: #fff;
  padding: 6px 12px;
  border-radius: 4px;
  cursor: pointer;
  font-weight: 500;
}

.barx button:hover {
  background: #3385ff;
}

.barx .stat {
  margin-left: auto;
  font-size: 13px;
  color: #aaa;
}

/* Área principal */
#wrapx {
  position: relative;
  flex: 1;
  background: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

#stream-frame {
  display: none; /* começa oculto */
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #000; /* fundo limpo */
}

#stream-frame.loaded {
  display: block;
  pointer-events:auto;
}


#wrapx.focused {
  outline: 2px solid #0078ff;
  outline-offset: -2px;
}

#wrapx:focus { outline:2px solid #0078ff; outline-offset:-2px; }
/* #stream-frame { max-width:100%; max-height:100%; object-fit:contain; display:block; cursor:crosshair; pointer-events:auto; } */





.container {
  width: 100%;
  max-width: 450px;
  min-height: 100px;
  margin: auto;
}

.ts-wrapper.multi .ts-control > div {
  background: #007bff;
  color: white;
  border-radius: 4px;
  padding: 3px 8px;
  margin: 2px;
  display: flex;
  align-items: center;
}

.ts-wrapper.multi .ts-control > div .remove {
  color: white;
  margin-left: 4px;
  cursor: pointer;
}

/* aumenta o padding interno do campo */
.ts-control {
  padding: 10px 14px !important; /* superior/inferior, laterais */
  min-height: 42px !important; /* opcional: altura mínima */
  border-radius: 6px !important;
}

/* caso queira aumentar também dentro do input (texto digitado) */
.ts-control input {
  padding: 6px 0 !important;
}

/* aumenta área clicável das opções */
.ts-dropdown .option {
  padding: 10px 14px !important; /* mais espaço interno */
  margin: 2px 0 !important;      /* espaçamento vertical entre opções */
  font-size: 15px;               /* opcional: texto mais legível */
  line-height: 1.4;              /* melhora a legibilidade */
}

/* efeito hover mais suave e destacado */
.ts-dropdown .option:hover,
.ts-dropdown .active {
  background-color: #f0f4ff !important;
  color: #000;
  border-radius: 4px;
}

/* animação base */
@keyframes slideUpFade {
  0% {
    transform: translateY(20px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

/* estilo inicial */
li.good-matches {
  opacity: 0;
  transform: translateY(20px);
  will-change: transform, opacity;
}

/* quando entra em cena */
li.good-matches.animate-in {
  animation: slideUpFade 0.6s ease-out forwards;
}




/* .score-box {
  cursor: pointer;
  min-width: 200px;
  padding: 6px 8px;
  border-radius: 6px;
  transition: transform 0.2s ease;
  display: inline-block;
} */

.score {
  display: flex;
  flex-wrap: wrap;      /* agora quebra quando não couber */
  gap: 8px;
}

.score-box {
  cursor: pointer;
  padding: 6px 8px;
  border-radius: 6px;
  transition: transform 0.2s ease;
  white-space: nowrap;   /* impede quebra interna */
  width: fit-content;    /* do tamanho do texto */
}


.score-box:hover {
  transform: scale(1.03);
  cursor: pointer;
}

.score-popup {
  position: absolute;
  background: #fff;
  color: #222;
  font-size: 13px;
  padding: 10px 14px;
  border-radius: 10px;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.25);
  z-index: 9999;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.25s ease, transform 0.25s ease;
  max-width: 250px;
  pointer-events: none;
}

.score-popup.show {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

@media (max-width: 768px) {
  .score-popup {
    font-size: 12px;
    padding: 8px 12px;
    max-width: 200px;
  }
}


@keyframes shake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-3px); }
  50% { transform: translateX(3px); }
  75% { transform: translateX(-3px); }
}

.shake {
  animation: shake 0.25s cubic-bezier(.36,.07,.19,.97);
}



/* =========================================
   ESTILOS EXCLUSIVOS DO CAMPO DE CARGOS
   ========================================= */

#job-field .chip-container {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 8px;
}

#job-field .chip {
  padding: 6px 10px;
  background: #f2f2f2;
  border-radius: 6px;
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
}

#job-field .chip .remove {
  cursor: pointer;
  font-weight: bold;
}

#job-field #jobSuggestions {
  list-style: none;
  margin: 0;
  padding: 0;
  border: 1px solid #eee;
  max-height: 180px;
  overflow-y: auto;
  display: none;
  position: absolute;
  background: white;
  width: 100%;
  z-index: 10;
  min-width: none;
}

#job-field #jobSuggestions li {
  padding: 8px;
  cursor: pointer;
}

#job-field #jobSuggestions li:hover {
  background: #f7f7f7;
}

#job-field .suggestions li.add-new {
  background: #fafafa;
  font-weight: 300;
}

#job-field {
  position: relative;
}

#jobInput {
  position: relative;
  z-index: 20;
}

/* UL preso ao input */
#job-field #jobInput + #jobSuggestions {
  list-style: none;
  margin: 0 auto;
  padding: 0;

  position: absolute;
  top: 130px;         /* AJUSTE fino: altura do input */
  left: 0;
  right: 0;
  width: calc(100% - 80px);
  box-sizing: border-box;

  border: 1px solid #eee;
  background: white;

  max-height: 180px;
  overflow-y: auto;

  display: none;
  z-index: 9999;
}



.slide-step-animation {
  transition: transform 450ms cubic-bezier(.22,.61,.36,1);
  transform: translateY(-30px); /* sobe */
}

.slide-step-reset {
  transition: none;
  transform: translateY(0);
}


.nextJob ul.jobs.good li.good-matches {
  transition: transform 0.25s ease, opacity 0.25s ease;
}

.nextJob ul.jobs.good li.good-matches.slide-step-animation {
  transform: translateY(-8px);
  opacity: 0.7;
}

.nextJob ul.jobs.good li.good-matches.slide-step-reset {
  transition: none;
  transform: translateY(0);
  opacity: 1;
}


.sts {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sts li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 10px 0;
    border-bottom: 1px solid #eaeaea;
}

.col1 {
    width: 120px;
    font-weight: 600;
    color: #333;
}


.col2.token-text {
  flex: 1;                 /* ocupa o espaço central */
  min-width: 0;            /* 🔥 ESSENCIAL em flex */
  max-width: 200px;

  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;

  direction: ltr;          /* 🔥 garante início visível */
  text-align: left;

  font-family: monospace;
  color: #555;
}


.copy-btn {
  border: none;
  background: transparent;
  padding: 4px;
  cursor: pointer;

  color: #9aa0a6; /* cinza neutro OpenAI */
  display: flex;
  align-items: center;
  justify-content: center;
}

.copy-btn:hover {
  color: #202124; /* quase preto */
}

.copy-icon {
  display: block;
}


#token-sandbox,
#token-prod {
  display: block;

  max-width: 150px;
  overflow: hidden;

  white-space: nowrap;
  text-overflow: ellipsis;

  /* 🔥 ESSENCIAL */
  direction: ltr !important;
  unicode-bidi: plaintext !important;

  text-align: left !important;

  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 0.9rem;
  color: #555;
}



ul.jobs li div.description .p-text {
  font-size: 14px;
  line-height: 1.6;
  margin: 6px 0;
}

/* Headings convertidos */
ul.jobs li div.description .p-heading-1 {
  font-size: 32px;
  font-weight: 700;
  margin: 14px 0 6px;
}

ul.jobs li div.description .p-heading-2 {
  font-size: 30px;
  font-weight: 700;
  margin: 14px 0 6px;
}

ul.jobs li div.description .p-heading-3 {
  font-size: 28px;
  font-weight: 600;
  margin: 12px 0 6px;
}

ul.jobs li div.description .p-heading-4 {
  font-size: 24px;
  font-weight: 600;
  margin: 10px 0 6px;
}

ul.jobs li div.description .p-heading-5 {
  font-size: 20px;
  font-weight: 600;
  margin: 8px 0 4px;
}

ul.jobs li div.description .p-heading-6 {
  font-size: 18px;
  font-weight: 600;
  margin: 8px 0 4px;
}

ul.jobs li div.description .p-list-item {
  font-size: 13px;
  line-height: 1.5;
  margin: 2px 0;
  padding-left: 18px;   /* aumenta pra dar espaço real */
  position: relative;
  display: block;
}

ul.jobs li div.description .p-list-item::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;           /* desce um pouquinho */
  padding-right: 10px;
}



.pop-inner {
  /* base comum */
  opacity: 0.5;
}

/* entra da direita */
.pop-inner.fade-right {
  transform: translateX(40px);
  animation: popFadeInRight 0.25s ease-out forwards;
}

/* entra da esquerda */
.pop-inner.fade-left {
  transform: translateX(-40px);
  animation: popFadeInLeft 0.25s ease-out forwards;
}

@keyframes popFadeInRight {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes popFadeInLeft {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}


.loader-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 25px 0;
}

.loader-spinner {
  width: 28px;
  height: 28px;
  border: 3px solid rgba(0,0,0,.1);
  border-top: 3px solid #111;
  border-radius: 50%;
  animation: spin .7s linear infinite;
}

.loader-text {
  font-size: 13px;
  opacity: .7;
  margin-top: 10px;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

.more-address {
    display: none;
}

section.popupx .box.large {
    opacity: 1;
    margin-right: 0;
}


.partner-block{
  display: inline-flex;
  gap: 1px;
  color: #000;
  font-size: 12px;
}

.partner-block__label{
  font-weight: 500;
  opacity: 0.75;
}

.partner-block__brand{
  display: flex;
  align-items: center;
  gap: 8px;
}

.partner-block__logo{
  width: 24px;
  height: 24px;
  border-radius: 999px;
  object-fit: cover;
  border: 1px solid rgba(255,255,255,0.12);
}

.partner-block__name{
  font-weight: 600;
  font-size: 13px;
  line-height: 1.1;
}






.job-toggle{
  float: right;              /* 🔑 joga o bloco todo pra direita */
  display: inline-flex;      /* mantém texto + switch alinhados */
  align-items: center;
  gap: 12px;

  font-size: 12px;
  color: #000;
  padding: 20px 0;
}

/* opcional: se quiser alinhar no topo certinho */
.job-toggle{
  margin-top: 0;
}

/* texto */
.job-toggle__label{
  font-weight: 500;
  opacity: 0.85;
  line-height: 1;
  white-space: nowrap;
}

/* switch base */
.switch_x{
  position: relative;
  display: inline-block;
  width: 38px;
  height: 22px;
}

/* esconde checkbox real */
.switch_x input{
  opacity: 0;
  width: 0;
  height: 0;
}

/* trilho */
.slider_x{
  position: absolute;
  cursor: pointer;
  inset: 0;

  background: rgba(0,0,0,0.15);
  border-radius: 999px;

  transition: 0.2s ease;
}

/* bolinha */
.slider_x::before{
  content: "";
  position: absolute;
  height: 16px;
  width: 16px;
  left: 3px;
  top: 3px;

  background: #fff;
  border-radius: 50%;

  box-shadow: 0 2px 6px rgba(0,0,0,0.25);
  transition: 0.2s ease;
}

/* ligado */
.switch_x input:checked + .slider_x{
  background: linear-gradient(
  135deg,
  #ff6fb1 0%,
  #ff8c6b 50%,
  #ffb36b 100%
);
}

.switch_x input:checked + .slider_x::before{
  transform: translateX(16px);
}

.good-matches { transform: translateZ(0); backface-visibility: hidden; }
.good-matches.animate-in { /* não mexa em opacity aqui se estiver piscando */ }
.good-matches { transition: all .2s; }


/* ✅ visível por padrão */
.nextJob ul.jobs.good li.good-matches{
  opacity: 1;
  transform: none;
  filter: none;
}

/* ✅ só animação opcional (não esconde por default) */
.nextJob ul.jobs.good li.good-matches.enter{
  opacity: 0;
  transform: translateY(8px);
}

/* ✅ quando vira "in", anima pra estado normal */
.nextJob ul.jobs.good li.good-matches.enter.in{
  opacity: 1;
  transform: none;
  transition: transform 260ms cubic-bezier(0.22, 1, 0.36, 1),
              opacity   200ms ease-out;
}

