/*=============== GOOGLE FONTS ===============*/
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600&family=Raleway:wght@500;600;700&display=swap");

/*=============== VARIABLES CSS ===============*/

:root{
    --header-height: 3.5rem;

    --hue-color: 200; 
  
    /* HSL color mode */
    --first-color: hsl(var(--hue-color), 80%, 30%); /*RGB 15,97,128*/ /*#0F618A*/
    --first-color-second: hsl(var(--hue-color), 80%, 30%);
    --first-color-alt: hsl(var(--hue-color), 70%, 25%);
    --title-color: hsl(var(--hue-color), 100%, 30%);
    --text-color: hsl(var(--hue-color), 24%, 35%);
    --text-color-light: hsl(var(--hue-color), 8%, 60%);
    --input-color: hsl(var(--hue-color), 24%, 97%);
    --body-color: hsl(var(--hue-color), 100%, 99%);
    --white-color: #FFF;
    --scroll-bar-color: hsl(var(--hue-color), 12%, 90%);
    --scroll-thumb-color: hsl(var(--hue-color), 12%, 75%);
    --orange-color-logo: rgb(245,148,33);
    --grey-color-soft: #E0E0E0;

    --white-color: hsl(0, 0%, 100%);
    --black-color: hsl(0, 0%, 0%);

    --body-font: 'Open Sans', sans-serif;

    --h1-font-size: 1.5rem;
    --normal-font-size: .938rem;

    --font-regular: 400;
    --font-medium: 500;

    --z-tooltip: 10;
    --z-fixed: 100;
}

/*=============== BASE ===============*/
* {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}
  
html {
    scroll-behavior: smooth;
}
  
body {
    font-family: var(--body-font);
    font-size: var(--normal-font-size);
    background-color: var(--body-color);
}

ul {
    list-style: none;
}
  
a {
    text-decoration: none;
}

form input[type="radio"]{
    display: none;
}

button{
    cursor: pointer;
}

.card__buttons button:disabled,
.card__buttons button[disabled]{
  border: 1px solid #999999 !important;
  background-color: #cccccc !important;
  color: #666666 !important;
}

input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus,   
input:-webkit-autofill:active,
input:-internal-autofill-selected,
input:-internal-autofill-previewed {
    background-color: var(--grey-color-soft) !important;
    border-radius: 55px;
    -webkit-box-shadow: 0 0 0 30px var(--grey-color-soft) inset !important;
}

/*input[type=file] {
  width: 350px;
  max-width: 100%;
  color: #444;
  padding: 5px;
  background: #fff;
  border-radius: 10px;
  border: 1px solid #555;
}*/

input[type=file]::file-selector-button {
  margin-right: 20px;
  border: none;
  /*border: 1px solid var(--text-color-light) ;*/
  background: var(--scroll-thumb-color);
  /*background: var(--grey-color-soft);*/
  padding: 10px 20px;
  border-radius: 10px;
  color: #fff;
  cursor: pointer;
  transition: background .2s ease-in-out;
}
/*=============== REUSABLE CSS CLASSES ===============*/
.section {
  padding: 4.5rem 0 2.5rem;
}
.container{
    max-width: 1120px;
    margin-inline: auto;
}
.container__header{
  max-width: 100%;
  margin-inline: auto;
  margin-left: 50px;
}
main{
    margin-top: calc(var(--header-height) + 1rem);
}
.mainLogin{
  margin-top: 0;
}
.text__center{
    text-align: center;
    position: relative;
}
.margin__top{
    margin-top: 20px;
}
.btn__none{
  border: none;
  background: transparent;
}
.flex{
    display: flex;
}
.grid{
  display: grid;
}
.gap__min{
    gap: 4px;
}
.icon__alert{
    font-size: 25px;
    color: red;
}
.icon__green{
  font-size: 25px;
  color: green;
}
.icon__download{
  font-size: 18px;
  color: var(--orange-color-logo);
  cursor: pointer;
}
.grid__template__columns2__1{
  grid-template-columns: 2fr 1fr !important;
}
.grid__template__columns2_5__1_5{
  grid-template-columns: 2.5fr 1.5fr !important;
}
.grid__template__columns1_5__2_5{
  grid-template-columns: 1.5fr 2.5fr !important;
}
.grid__template__columns1__max{
  grid-template-columns: 1fr max-content !important;
}
.link__back{
  font-size: 12px;
  color: var(--text-color-light);
}
.link__back:hover{
  text-decoration: underline;
}
.flex1{
  flex: 1;
}
.flexEnd{
  align-self: flex-end;
}
.displayNone{
  display: none;
}
.colorError{
  color: red;
  font-size: 12px;
}
.btn__logout{
  background: transparent;
  border: none;
  margin-left: 5px;
}
.justify__between{
  justify-content: space-between;
}
.text__warning{
  text-align: center;
  color: red;
}
.error{
  background-color: red !important;
}
.gap1{
  gap: 1rem;
}
.w100{
  width: 100% !important;
}
/*=============== POPUP's ===============*/
.popup {
    position: fixed;
    bottom: 50px;
    right: -370px;
    max-width: 345px;
    width: 100%;
    background: var(--white-color);
    border-radius: 8px;
    padding: 15px 25px 22px;
    transition: right 0.3s ease;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  }
  .popupCenter{
    max-width: 80%;
    top: 50%;
    left: 50%;
    bottom: -10%;
    transform: translate(-50%, -50%);
    height: 550px;
  }
  .popupNewReserva{
    display: flex;
    flex-wrap: wrap;
    column-gap: 1rem;
  }
  .popup.show {
    right: 20px !important;
  }
  #popupCreate{
    right: -550px;
  }
  .popup .popup__header {
    display: flex;
    align-items: center;
    column-gap: 15px;
  }
  .popup__header i {
    color: var(--orange-color-logo);
    font-size: 32px;
  }
  .popup__header h2 {
    color: var(--orange-color-logo);
    font-weight: 500;
  }
  .popup .popup__text {
    margin-top: 16px;
  }
  .popup .popup__text p {
    color: #333;
    font-size: 16px;
  }
  .popup .popup__buttons {
    margin-top: 16px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .popup__buttons .popup__button {
    border: none;
    color: #fff;
    padding: 8px 0;
    border-radius: 4px;
    background: var(--orange-color-logo);
    cursor: pointer;
    width: calc(100% / 2 - 10px);
    transition: all 0.2s ease;
  }
  .popup__buttons #acceptBtn:hover {
    background-color: var(--orange-color-logo);
  }
  #declineBtn {
    border: 2px solid var(--orange-color-logo);
    background-color: var(--white-color);
    color: var(--orange-color-logo);
  }
  #declineBtn:hover {
    background-color: var(--orange-color-logo);
    color: var(--white-color);
  }

#feedbackMessage{
    visibility: hidden;
    min-width: 250px;
    margin-left: -125px;
    background-color: greenyellow;
    color: var(--black-color);
    text-align: center;
    border-radius: 2px;
    padding: 16px;
    position: fixed;
    z-index: 100;
    left: 50%;
    top: 20px;
    font-size: 17px;
    font-weight: bold;
}

.show {
    visibility: visible !important;
    -webkit-animation: fadein 0.5s, fadeout 0.5s 2.5s;
    animation: fadein 0.5s, fadeout 0.5s 2.5s;
}

.formIconAdd{
  position: absolute;
  top: 0;
  right: 5px;
}

  .checkbox__container {
    box-sizing: border-box;
    --background-color: #fff;
    --checkbox-height: 25px;
  }

  @-moz-keyframes dothabottomcheck-19 {
    0% {
      height: 0;
    }
    100% {
      height: calc(var(--checkbox-height) / 2);
    }
  }

  @-webkit-keyframes dothabottomcheck-19 {
    0% {
      height: 0;
    }
    100% {
      height: calc(var(--checkbox-height) / 2);
    }
  }

  @keyframes dothabottomcheck-19 {
    0% {
      height: 0;
    }
    100% {
      height: calc(var(--checkbox-height) / 2);
    }
  }

  @keyframes dothatopcheck-19 {
    0% {
      height: 0;
    }
    50% {
      height: 0;
    }
    100% {
      height: calc(var(--checkbox-height) * 1.2);
    }
  }

  @-webkit-keyframes dothatopcheck-19 {
    0% {
      height: 0;
    }
    50% {
      height: 0;
    }
    100% {
      height: calc(var(--checkbox-height) * 1.2);
    }
  }

  @-moz-keyframes dothatopcheck-19 {
    0% {
      height: 0;
    }
    50% {
      height: 0;
    }
    100% {
      height: calc(var(--checkbox-height) * 1.2);
    }
  }

  /*=============== CHECKBOX ===============*/

  .icon__checked{
    color: #34b93d;
    font-size: 25px;
  }
  .checkbox__container input[type=checkbox] {
    display: none;
  }

  .checkbox__container .check-box {
    height: var(--checkbox-height);
    width: var(--checkbox-height);
    background-color: transparent;
    border: calc(var(--checkbox-height) * .1) solid #000;
    border-radius: 5px;
    position: relative;
    display: inline-block;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -moz-transition: border-color ease 0.2s;
    -o-transition: border-color ease 0.2s;
    -webkit-transition: border-color ease 0.2s;
    transition: border-color ease 0.2s;
    cursor: pointer;
  }
  .checkbox__container .check-box::before,
  .checkbox__container .check-box::after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    height: 0;
    width: calc(var(--checkbox-height) * .2);
    background-color: #34b93d;
    display: inline-block;
    -moz-transform-origin: left top;
    -ms-transform-origin: left top;
    -o-transform-origin: left top;
    -webkit-transform-origin: left top;
    transform-origin: left top;
    border-radius: 5px;
    content: " ";
    -webkit-transition: opacity ease 0.5;
    -moz-transition: opacity ease 0.5;
    transition: opacity ease 0.5;
  }
  .checkbox__container .check-box::before {
    top: calc(var(--checkbox-height) * .72);
    left: calc(var(--checkbox-height) * .41);
    box-shadow: 0 0 0 calc(var(--checkbox-height) * .05) transparent;
    -moz-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
  }
  .checkbox__container .check-box::after {
    top: calc(var(--checkbox-height) * .37);
    left: calc(var(--checkbox-height) * .05);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .checkbox__container input[type=checkbox]:checked + .check-box,
  .checkbox__container .check-box.checked,
  .checkbox__container input[type=radio]:checked + .check-box {
    border-color: #34b93d;
  }
  .checkbox__container input[type=checkbox]:checked + .check-box::after,
  .checkbox__container .check-box.checked::after,
  .checkbox__container input[type=radio]:checked + .check-box::after {
    height: calc(var(--checkbox-height) / 2);
    -moz-animation: dothabottomcheck-19 0.2s ease 0s forwards;
    -o-animation: dothabottomcheck-19 0.2s ease 0s forwards;
    -webkit-animation: dothabottomcheck-19 0.2s ease 0s forwards;
    animation: dothabottomcheck-19 0.2s ease 0s forwards;
  }
  .checkbox__container input[type=checkbox]:checked + .check-box::before,
  .checkbox__container .check-box.checked::before,
  .checkbox__container input[type=radio]:checked + .check-box::before {
    height: calc(var(--checkbox-height) * 1.2);
    -moz-animation: dothatopcheck-19 0.4s ease 0s forwards;
    -o-animation: dothatopcheck-19 0.4s ease 0s forwards;
    -webkit-animation: dothatopcheck-19 0.4s ease 0s forwards;
    animation: dothatopcheck-19 0.4s ease 0s forwards;
  }
  .search__container .checkbox__container .check-box{
    border: calc(var(--checkbox-height) * .1) solid rgba(0, 0, 0, 0.40);;
  }
  .text__checkbox{
    color: rgba(0, 0, 0, 0.40);
    margin-left: 10px;
  }
  .custom-select select {
    appearance: none;
    width: 100%;
    padding: 0.675em 0em 0.675em 1em;
    background-color: #fff;
    color: #000;
    cursor: pointer;
    height: 45px;
    outline: none;
    font-size: 16px;
    border-radius: 5px;
    padding-left: 15px;
    border: 1px solid #ccc;
  }

  /*=============== FILE UPLOADER ===============*/
  .upload__container{
    display: flex;
    gap: 3rem;
    margin-top: 10px;
  }
  /*.file-uploader {
    width: 500px;
    background: #fff;
    border-radius: 5px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
  }*/
  .file-uploader .uploader-header {
    display: flex;
    padding: 20px;
    background: #EEF1FB;
    align-items: center;
    border-radius: 5px 5px 0 0;
    justify-content: space-between;
  }
  .uploader-header .uploader-title {
    font-size: 1.2rem;
    font-weight: 700;
    text-transform: uppercase;
  }
  .uploader-header .file-completed-status {
    font-size: 1rem;
    font-weight: 500;
    color: #333;
  }
  .file-uploader .file-list {
    list-style: none;
    width: 100%;
    padding-bottom: 10px;
    max-height: 400px;
    overflow-y: auto;
    scrollbar-color: #999 transparent;
    scrollbar-width: thin;
  }
  .file-uploader .file-list:has(li) {
    padding: 20px;
  }
  .file-list .file-item {
    display: flex;
    gap: 14px;
    margin-bottom: 22px;
  }
  .file-list .file-item:last-child {
    margin-bottom: 0px;
  }
  .file-list .file-item .file-extension {
    height: 50px;
    width: 50px;
    color: #fff;
    display: flex;
    text-transform: uppercase;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
    background: var(--orange-color-logo);
  }
  .file-list .file-item .file-content-wrapper {
    flex: 1;
  }
  .file-list .file-item .file-content {
    display: flex;
    width: 100%;
    justify-content: space-between;
  }
  .file-list .file-item .file-name {
    font-size: 14px;
    font-weight: 600;
  }
  .file-list .file-item .file-info {
    display: flex;
    gap: 5px;
  }
  .file-list .file-item .file-info small {
    color: #5c5c5c;
    margin-top: 5px;
    display: block;
    font-size: 12px;
    font-weight: 500;
  }
  .file-list .file-item .file-info .file-status {
    color: var(--orange-color-logo);
  }
  .file-list .file-item .cancel-button {
    align-self: center;
    border: none;
    outline: none;
    background: none;
    cursor: pointer;
    font-size: 1.4rem;
  }
  .file-list .file-item .cancel-button:hover {
    color: var(--orange-color-logo);
  }
  .file-list .file-item .file-progress-bar {
    width: 100%;
    height: 3px;
    margin-top: 5px;
    border-radius: 30px;
    background: #d9d9d9;
  }
  .file-list .file-item .file-progress-bar .file-progress {
    width: 0%;
    height: inherit;
    border-radius: inherit;
    background: var(--orange-color-logo);
  }
  .file-uploader .file-upload-box {
    margin: 10px 20px 20px;
    border-radius: 5px;
    min-height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px dashed var(--text-color-light);
    transition: all 0.2s ease;
  }
  .file-uploader .file-upload-box.active {
    border: 2px solid var(--orange-color-logo);
    background: #F3F6FF;
  }
  .file-uploader .file-upload-box .box-title {
    font-size: 1.05rem;
    font-weight: 500;
    color: #626161;
  }
  .file-uploader .file-upload-box.active .box-title {
    pointer-events: none;
  }
  .file-upload-box .box-title .file-browse-button {
    color: var(--orange-color-logo);
    cursor: pointer;
  }
  .file-upload-box .box-title .file-browse-button:hover {
    text-decoration: underline;
   }



/*=============== PAGINATION ===============*/
.pagination__container,
.pagination__button,
.pagination__links,
.pagination__link {
  display: flex;
  align-items: center;
  justify-content: center;
}
.pagination__container {
    padding: 20px;
    column-gap: 12px;
    margin-top: 15px;
    /*border-radius: 8px;
    background: var(--white-color);
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);*/
  }
  .pagination__button {
    border: none;
  }
  .pagination__button i {
    pointer-events: none;
  }
  .pagination__button:disabled {
    color: #b3b3b3;
    pointer-events: none;
  }
  .pagination__button,
  .pagination__link {
    height: 35px;
    width: 35px;
    font-size: 15px;
    color: #666666;
    background-color: #f2f2f2;
    border-radius: 6px;
    cursor: pointer;
  }
  .pagination__links {
    column-gap: 12px;
  }
  .pagination__link {
    font-weight: 500;
    text-decoration: none;
  }
  .pagination__button:hover,
  .pagination__link:hover {
    color: #fff;
    background: var(--orange-color-logo);
  }
.pagination__link.active {
    color: #fff;
    background: var(--orange-color-logo);
  }

/*=============== HEADER & NAV ===============*/
.header{
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    background-color: var(--white-color);
    z-index: var(--z-fixed);
    margin-left: 13.3rem;
}

.header__withLogo{
    margin-left: 0;
}

.nav{
    position: relative;
    height: calc(var(--header-height) + 1rem);
    display: flex;
    /*justify-content: space-between;*/
    align-items: center;
}

.nav__withoutSideBar{
  justify-content: none;
  gap: 5rem;
}

.nav__withoutSideBar .user__info{
  right: 3% !important; 
}

.img__logo{
    width: 80px;
}

.nav__menu{
    display: flex;
    align-items: center;
}

.nav__list{
    display: flex;
    flex-direction: row;
    column-gap: 3.5rem;
}
.nav__list li:hover span{
  text-decoration: underline;
}
.nav__link{
    position: relative;
    color: var(--first-color-alt);
    font-size: var(--normal-font-size);
    font-weight: bold;
    display: inline-flex;
    align-items: center;
}

.nav__link span{
    position: relative;
}

.nav__link span::after{
    content: '';
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 0;
    height: 2px;
    background-color: var(--white-color);
    transition: width .4s ease-out;
}

.nav__link:hover span::after{
    width: 100%;
}

.nav__link:has(.nav__link:hover) .nav__link:not(:hover){
    opacity: .4;
}

.user__info{
    color: var(--text-color-light);
    position: absolute;
    right: 18%;
}
.icon__user{
    font-size: 18px;
}
.icon__logout{
    color: var(--orange-color-logo);
    font-weight: bold;
    cursor: pointer;
}

/*=============== ORÇAMENTOS ===============*/
.main__orcamentos{
    display: flex;
    margin-top: 0 !important;
}

.sidebar{
    position: sticky;
    top: var(--header-height);
    left: 0;
    width: 240px;
    padding: 0 1.7rem;
    color: var(--white-color);
    overflow: hidden;
    background-color: var(--first-color-alt);
}

.numberRecords{
  border-radius: 50%;
    width: 34px;
    height: 34px;
    background: var(--orange-color-logo);
    color: var(--white-color);
    text-align: center;
    font-weight: bold;
    line-height: 34px;
}

.list__operadores{
    position: relative;
}

.list__operadores li{
    padding: 0.75rem;
    border-radius: 8px;
    list-style: none;
    transition: all 0.5s ease-in-out;
}

.list__operadores li:hover,
.active{
    background-color: #e0e0e058;
}

.list__operadores a{
    color: var(--white-color);
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.list__operadores a span{
    overflow: hidden;
}

.list__operadores a i{
    font-size: 1.2rem;
}

.main__content{
    position: relative;
    background-color: #ebe9e9;
    width: 100%;
    padding-top: 3.5rem;
    min-height: 100vh;
}
.h3__title{
    color: var(--first-color);
    padding-bottom: 10px;
    font-size: 25px;
}
.h2__title{
    color: var(--first-color);
}

/* Table */
.table__content{
    margin-top: 1rem;
    border-radius: 10px;
    padding: 2rem;
}
.table__container{
    width: 100%;
    margin-top: 20px;
}
table{
    width: 100%;
    border-color: collapse;
}
thead{
    background-color: var(--first-color);
    color: var(--white-color);
}
th{
    padding: 15px;
    text-align: left;
}
tbody{
    background: #f2f2f2;
}
td{
    padding: 15px;
    font-size: 14px;
    color: #333;
}
tr:nth-child(even){
    background-color: var(--white-color);
}
.icon{
    color: var(--orange-color-logo);
    font-size: 20px;
    cursor: pointer;
    transition: 0.3s;
}
.icon:hover{
    font-size: 25px;
}
.tag{
    height: 32px;
    display: inline-flex;
    align-items: center;
    line-height: 1;
    justify-content: center;
    padding: 0 16px;
    border-radius: 100px;
    color: var(--white-color);
    font-weight: 600;
    text-align: center;
}
.background__red{
    background-color: red;
}
.background__green{
    background-color: #34b93d;
}
.background__yellow{
    background-color: #FDDA0D;
}
.background__orange{
    background-color: var(--orange-color-logo) !important;
}


/*=============== LOGIN ===============*/
.logo__login{
  max-width: 100%;
  height: auto;
}
.header__logo_login{
    position: absolute;
    right: 3rem;
    top: 0;
    width: 120px;
  }
  .login{
    position: relative;
    width: 100%;
    min-height: 100vh;
    background-color: var(--white-color);
    overflow: hidden;
  }
  
  .login::before{
    content: "";
    position: absolute;
    width: 2000px;
    height: 2000px;
    border-radius: 50%;
    background: var(--first-color);
    top: -10%;
    right: 48%;
    transform: translateY(-50%);
  }
  
  .form__container{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1;
  }
  
  .sign-in-form{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
  }
  
  .signin{
    position: absolute;
    top: 50%;
    left: 75%;
    transform: translate(-50%, -50%);
    width: 50%;
  }
  
  .sign-in-form .title{
    font-size: 2rem;
    color: #444;
    margin-bottom: 0.5rem;
  }
  
  .sign-in-form .input-field{
    max-width: 380px;
    width: 100%;
    height: 55px;
    background-color: var(--grey-color-soft);
    margin: 10px 0;
    border-radius: 55px;
    display: grid;
    grid-template-columns: 15% 85%;
    padding: 0 .4rem;
  }
  
  .sign-in-form .input-field i{
    text-align: center;
    line-height: 55px;
    color: #aaa;
    font-size: var(--mb-1);
  }
  
  .sign-in-form .input-field input{
    background: none !important;
    line-height: 1;
    font-weight: 600;
    font-size: 1rem;
    color: #333;
    outline: none;
    border: none;
  }
  
  .sign-in-form .input-field input::placeholder{
    color: #aaa;
    font-size: 500;
  }
  
  .sign-in-form .button{
    width: 150px;
    height: 49px;
    border: none;
    outline: none;
    border-radius: 49px;
    cursor: pointer;
    background-color: var(--first-color);
    color: var(--white-color);
    text-transform: uppercase;
    font-weight: 600;
    margin: 10px 0;
  }
  
  .login-info{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  
  .login-info .info-content{
    padding: 3rem 17% 2rem 12%;
    color: var(--white-color);
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: space-around;
    text-align: center;
  }
  
  .login-info .info-text h3{
    line-height: 1;
    font-size: 1.5rem;
    color: var(--white-color);
  }
  
  .login-info .info-text p{
    font-size: var(--mb-1);
    padding: var(--mb-1) 0;
  }


/* ======================= Cards Detail ====================== */
.cardBox {
    position: relative;
    width: 100%;
    padding: 20px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 30px;
  }
  
  .cardBox .card {
    position: relative;
    background: var(--white-color);
    padding: 15px;
    height: 120px;
    border-radius: 20px;
    display: flex;
    justify-content: space-between;
    cursor: pointer;
    box-shadow: 0 7px 25px rgba(0, 0, 0, 0.08);
  }
  
  .cardBox .card .numbers {
    position: relative;
    font-weight: 500;
    font-size: 2.5rem;
    color: var(--orange-color-logo);
  }
  
  .cardBox .card .cardName {
    color: var(--text-color-light);
    font-size: 1.1rem;
    margin-top: 5px;
  }
  
  .cardBox .card .iconBx {
    font-size: 3.5rem;
    color: var(--text-color-light);
  }

/* ================== Orçamento Edit Info ============== */
.orcamento__info {
    position: relative;
    width: 100%;
    padding: 20px;
    display: grid;
    grid-template-columns: 1.5fr 1.5fr;
    grid-gap: 30px;
    /* margin-top: 10px; */
  }
  
  .orcamento__info .orcamento__container {
    position: relative;
    /*display: grid;
    min-height: 500px;*/
    background: var(--white-color);
    padding: 20px;
    box-shadow: 0 7px 25px rgba(0, 0, 0, 0.08);
    border-radius: 20px;
  }
  
  .orcamento__info .cardHeader {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }

  .table__container h3{
    margin-bottom: 15px;
    margin-left: 5px;
  }
  /*.orcamento__detalhe {
    position: relative;
    display: grid;
    min-height: 500px;
    padding: 20px;
    background: var(--white-color);
    box-shadow: 0 7px 25px rgba(0, 0, 0, 0.08);
    border-radius: 20px;
  }*/

.content__passageiros form .passageiro__details{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 20px 0 12px 0;
    border-bottom: 1px solid var(--grey-color-soft);
    padding-bottom: 15px;
}

form .passageiro__details .input__box{
    margin-bottom: 10px;
    width: calc(100% / 2 - 10px);
}

form .passageiro__details .input__box__3{
    width: calc(100% / 3 - 15px);
}

form .passageiro__details .input__box__4{
  width: calc(100% / 4 - 15px);
}

form .passageiro__details .input__box__100{
    width: 100%;
}

form .input__box span.input__name {
    display: block;
    font-weight: 500;
    margin-bottom: 5px;
}

.passageiro__details .input__box input{
    height: 45px;
    width: 100%;
    outline: none;
    font-size: 16px;
    border-radius: 5px;
    padding-left: 15px;
    border: 1px solid #ccc;
    transition: all 0.3s ease;
}

.passageiro__details .input__box input:focus/*,
.passageiro__details .input__box input:valid*/{
    border-color: var(--orange-color-logo);
}

form .gender__details .gender__title{
    font-size: 16px;
    font-weight: 500;
}

form .gender__category,
form .type__reference{
    display: flex;
    width: 80%;
    margin: 14px 0;
    justify-content: space-between;
    gap: 5px;
}

form .type__payment{
  flex-direction: column;
}

form .gender__category label,
form .type__reference label{
    display: flex;
    align-items: center;
    cursor: pointer;
}

form .gender__category label .dot,
form .type__reference label .dot{
    height: 18px;
    width: 18px;
    border-radius: 50%;
    margin-right: 5px;
    background-color: #d9d9d9;
    border: 5px solid transparent;
    transition: all 0.3s ease;
}

form .gender__options{
    display: flex;
}

/*#gender-F:checked ~ .gender__category label .F,
#gender-M:checked ~ .gender__category label .M,
#sinal:checked ~ .type__reference label .sinal,
#pagamento:checked ~ .type__reference label .pagamento,*/
.checkedRadioButton{
    background-color: var(--orange-color-logo) !important;
    border-color: #d9d9d9 !important;
}

.card__buttons{
    flex-direction: column;
    align-items: center;
}

.btn__primary{
    width: 80%;
    padding: 10px;
    background-color: var(--orange-color-logo);
    border: 1px solid var(--orange-color-logo);
    color: white;
    border-radius: 10px;
}

.btn__secundary{
    width: 80%;
    padding: 10px;
    background-color: transparent;
    border: 1px solid var(--orange-color-logo);
    color: var(--orange-color-logo);
    border-radius: 10px;
}

.btn__bold{
  width: 15%;
  font-weight: bolder;
}

.form__btn{
    width: 40%;
}

.form__filters{
  margin-top: 15px;
  display: flex;
  align-items: center;
  gap: 1rem;
}

.search__container{
  display: flex;
  align-items: center;
  padding: 10px;
  border-radius: 20px;
  background: #f6f6f6f6;
}

.search-input{
  font-size: 16px;
  margin-left: 10px;
  background: transparent;
  outline: none;
  border: none;
}

.search-input::placeholder,
.search__container i{
  color: rgba(0, 0, 0, 0.40);
}

.search__container:focus-within{
  box-shadow: 0 0 2px var(--orange-color-logo);
}

.fullscreen-container {
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(90, 90, 90, 0.3);
  z-index: 9999;
}


/* ================== ERRO & Localizador ============== */
.erro{
  display: flex;
  align-items: center;
  gap: 6rem;
  justify-content: center;
}

.erro p{
  font-size: 2.5rem;
  font-weight: bold;
}

.text__thanks{
  width: 60%;
  margin: 1rem auto;
  padding: 2rem;
  text-align: center;
  transition: all 0.3s;
}

.text__thanks p{
  line-height: 1.5;
  letter-spacing: 0.3px;
  word-spacing: 2px;
}


@media(max-width: 660px){
  .header{
    margin-left: 0;
    position: relative;
  }
  .nav{
    margin: 1rem;
    height: auto;
  }
  .nav__menu{
    flex-direction: column;
  }
  .nav__list{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 1.5rem;
  }
  .user__info{
    position: relative;
  }
  .main__orcamentos{
    flex-direction: column;
  }
  .sidebar{
    margin-top: 1rem;
    display: flex;
    height: auto;
    width: 100%;
    flex-direction: column;
  }
  .list__operadores{
    display: flex;
    flex-wrap: wrap;
  }
  .cardBox,
  .orcamento__info{
    display: flex;
    flex-direction: column;
  }
  .form__filters{
    flex-wrap: wrap;
  }
  table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }
  .main__content{
    padding-top: 0;
  }
  .info__title,
  .content__passageiros form .passageiro__details{
    flex-direction: column;
  }
  .table__content{
    padding: 0;
  }
  form .passageiro__details .input__box{
    width: 100%;  
  }
  .upload__container{
    flex-direction: column;
    gap: 10px;
  }
  .btn__bold{
    width: 35%;
  }
  #popupCreate{
    height: 100%;
    overflow-y: auto;
    bottom: 0;
  }
}