/* input(3082,18): run-time error CSS1036: Expected expression, found '$'
input(5796,45): run-time error CSS1063: Expected calculation unit, found 's'
input(5796,45): run-time error CSS1064: Expected calculation product, found 's'
input(5796,45): run-time error CSS1036: Expected expression, found 's'
input(5796,45): run-time error CSS1046: Expect comma, found 's'
input(5796,45): run-time error CSS1063: Expected calculation unit, found 's'
input(5796,45): run-time error CSS1064: Expected calculation product, found 's'
input(5796,45): run-time error CSS1036: Expected expression, found 's'
input(5796,45): run-time error CSS1034: Expected closing parenthesis, found 's'
input(5796,45): run-time error CSS1042: Expected function, found 's'
input(5796,54): run-time error CSS1062: Expected semicolon or closing curly-brace, found ')'
input(5798,52): run-time error CSS1063: Expected calculation unit, found 's'
input(5798,52): run-time error CSS1064: Expected calculation product, found 's'
input(5798,52): run-time error CSS1036: Expected expression, found 's'
input(5798,52): run-time error CSS1046: Expect comma, found 's'
input(5798,52): run-time error CSS1063: Expected calculation unit, found 's'
input(5798,52): run-time error CSS1064: Expected calculation product, found 's'
input(5798,52): run-time error CSS1036: Expected expression, found 's'
input(5798,52): run-time error CSS1034: Expected closing parenthesis, found 's'
input(5798,52): run-time error CSS1042: Expected function, found 's'
input(5798,61): run-time error CSS1062: Expected semicolon or closing curly-brace, found ')'
input(5800,50): run-time error CSS1063: Expected calculation unit, found 's'
input(5800,50): run-time error CSS1064: Expected calculation product, found 's'
input(5800,50): run-time error CSS1036: Expected expression, found 's'
input(5800,50): run-time error CSS1046: Expect comma, found 's'
input(5800,50): run-time error CSS1063: Expected calculation unit, found 's'
input(5800,50): run-time error CSS1064: Expected calculation product, found 's'
input(5800,50): run-time error CSS1036: Expected expression, found 's'
input(5800,50): run-time error CSS1034: Expected closing parenthesis, found 's'
input(5800,50): run-time error CSS1042: Expected function, found 's'
input(5800,65): run-time error CSS1062: Expected semicolon or closing curly-brace, found ')' */
@charset "UTF-8";
/* O arquivo a ser criado deve possuir o nome "WL_" + "Nome do Layout (PascalCase)". */
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;500&display=swap");
:root {
  --primary: #a1a1a1;
  --secondary: #a2a2a2;
}

.badge-home, .badge-home-sm {
  border-radius: 15px !important;
  background-color: #a1a1a1 !important;
  color: #fff;
  display: inline-block;
  font-size: 12px !important;
  padding: 4px 24px !important;
  width: fit-content;
  max-width: 175px !important;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.badge-home-sm {
  font-size: 13px !important;
  /*margin-top: 0;*/
  padding: 4px 12px !important;
  max-width: 120px !important;
}

.badge-container {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.slider-area .slider-fix .sidebar-o {
  margin-bottom: 14px;
}

.slider-area .slider-fix {
  padding-left: 14px;
}

.img-home-principal {
  width: 100%;
  height: 231px;
  object-fit: cover;
}

.img-home-principal-lg {
  width: 100%;
  height: 476px;
  object-fit: cover;
}

.list-inline-item a {
  font-size: 0.9375rem;
}

.card-title, .card-title-sm {
  color: #363636 !important;
}

.card-description,
.card-description-sm,
.card-description-comm,
.card-description-news {
  color: #363636;
}

.card-description-comm,
.card-description-news {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 7;
  -webkit-box-orient: vertical;
  min-height: 126px;
}

.card-description-news {
  -webkit-line-clamp: 8;
}

.card-description-sm, .card-title-sm, .text-ellipsis-2 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}

.card-description-sm {
  min-height: 78px;
}
.card-description-sm * {
  font-size: 0.8125rem !important;
}

.update-notes-container {
  max-height: 350px;
  overflow-y: scroll;
}

.sec-title h5:before {
  background-color: transparent !important;
}

.section-title-container {
  margin-bottom: -1px;
}

.section-title {
  border-bottom: 1px #a1a1a1 solid;
  padding-bottom: 10px;
  font-size: 1.125rem;
  font-weight: 500;
  text-transform: none;
  display: block;
  margin-right: 64px;
  line-height: 1.3;
  width: fit-content;
}

.owl-nav div {
  position: absolute;
  top: -58px;
  right: 0;
  width: 26px;
  height: 26px;
  border: 1px solid #dddddd;
  display: flex;
  justify-content: center;
  align-items: center;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  -ms-border-radius: 2px;
  border-radius: 2px;
  z-index: 999;
  -webkit-transition: 0.2s ease;
  -moz-transition: 0.2s ease;
  -ms-transition: 0.2s ease;
  -o-transition: 0.2s ease;
  transition: 0.2s ease;
}

.owl-nav div i {
  display: block;
  font-size: 26px;
  color: #707070;
}

.owl-nav div:hover {
  background: #a1a1a1;
}
.owl-nav div:hover i {
  color: #fff;
}

.owl-nav div.owl-prev {
  right: 32px;
}

.sidebar-layer {
  max-width: 100%;
}

.card-index {
  border: 1px solid rgba(222, 222, 222, 0.5019607843) !important;
  border-radius: 2px !important;
  display: flex;
  flex-direction: column;
  padding: 16px;
  position: relative;
  height: 100%;
}
.card-index img {
  border-radius: 2px;
}

.popular-item a {
  height: 100%;
  display: block;
}

.card-sistemas, .card-empresas {
  height: 100%;
}

.card-produtos {
  min-height: 250px;
  height: 100%;
}

.card-fornecedores {
  min-height: auto;
}

.img-comm-lg {
  width: 100%;
  max-height: 300px;
  object-fit: cover;
}

.container-img-comm-sm {
  min-height: 140px;
}

.img-comm-sm {
  max-width: 100%;
  max-height: 160px;
  object-fit: cover;
}

.slider-area .tab-box {
  border-bottom: 1px solid #eeeeee;
  padding-bottom: 6px;
  margin-bottom: 25px;
}

.card-no-events {
  border-left: 5px solid #a8a8a8 !important;
}

.card-title {
  font-size: 0.9375rem;
}

.bg-banner {
  background-position: center;
  border-radius: 6px;
  background-size: contain;
  background-repeat: no-repeat;
  /*height: 230px;*/
}

@media (min-width: 992px) {
  .bg-banner {
    /*height: 420px;*/
    /*background-size: cover;*/
    background-size: contain;
    height: 100%;
  }
}
.card-visualizar-comunicado {
  position: absolute;
  top: 0;
  right: 0;
  display: none;
  background-color: #f7f9fb;
  padding: 0.5rem;
}

.tl-content:hover .card-visualizar-comunicado {
  animation: 0.3s fadeIn;
  display: inline-block;
}

.card-index:hover .card-visualizar-comunicado {
  animation: 0.3s fadeIn;
  display: inline-block;
}

.carousel-comm .owl-stage-outer,
.carousel-links .owl-stage-outer {
  padding-top: 24px;
}

.btn-comunicado {
  border: none;
  background-color: transparent;
  display: flex;
  align-items: center;
  gap: 6px;
}
.btn-comunicado i {
  color: #858585;
}
.btn-comunicado p {
  color: #858585;
}

.visualizacao-lista {
  overflow-y: auto;
  overflow-x: hidden;
  max-height: 230px;
}

.text-grey {
  color: #858585;
}

.color-deep-heart {
  color: #D40000 !important;
}

.color-deep-star {
  color: #ffcc00 !important;
}

.container-balloon-message, .container-balloon-message-left, .container-balloon-message-perso {
  background-color: #fff;
  position: absolute;
  width: 95%;
  min-width: 350px;
  border-radius: 8px;
  padding: 1.1em;
  z-index: 9999;
  transform: scale(0);
  transition: transform 200ms ease;
  box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.1607843137) !important;
}

.container-balloon-message {
  transform-origin: 8% -10px;
  bottom: 40px;
  left: 5px;
}

.container-balloon-message-left, .container-balloon-message-perso {
  transform-origin: 92% -10px;
  bottom: 6px;
  right: 50px;
  left: auto;
}

.balloon-more, .balloon-more-big, .balloon-more-perso {
  min-width: 280px;
  transform-origin: bottom center !important;
}

.balloon-more, .balloon-more-perso {
  bottom: 20px !important;
  left: -260px !important;
}

.balloon-more-big {
  bottom: 25px !important;
  left: -85px !important;
}

.message-balloon-hover:hover + .container-balloon-message,
.message-balloon-hover:focus + .container-balloon-message,
.container-balloon-message:hover {
  transform: scale(1);
}

.message-balloon-hover:hover + .container-balloon-message-left,
.message-balloon-hover:focus + .container-balloon-message-left,
.container-balloon-message-left:hover {
  transform: scale(1);
}

.message-balloon-hover:hover + .container-balloon-message-perso,
.message-balloon-hover:focus + .container-balloon-message-perso,
.container-balloon-message-perso:hover {
  transform: scale(1);
}

.container-balloon-message-left.balloon-more, .container-balloon-message-left.balloon-more-perso {
  min-width: 300px;
  bottom: 20px !important;
  right: -25px !important;
  left: auto !important;
  transform-origin: bottom left !important;
}

.container-balloon-message-left.balloon-more-big {
  min-width: 300px;
  bottom: 25px !important;
  right: -155px !important;
  left: auto !important;
  transform-origin: bottom right !important;
}

@media (max-width: 991px) {
  .container-balloon-message-left {
    right: 10px;
    min-width: 280px;
  }
}
@media (max-width: 1399px) {
  .container-balloon-message-perso {
    transform-origin: 8% -10px;
    bottom: 40px;
    left: 5px;
  }
}
.message-balloon-hover {
  color: #a1a1a1;
  line-height: normal;
  position: relative;
}

.text-name-user {
  font-size: 13px;
  line-height: normal;
  max-width: 100%;
  width: 100%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 1;
  text-overflow: ellipsis;
}

.tooltip {
  z-index: 9999 !important;
}

/* Institucional */
.nav-tabs .nav-link {
  background-color: #fff;
  color: #363636;
  border: 1px solid #dee2e6 !important;
  line-height: 1;
  margin: 0;
  min-height: auto;
  padding: 10px 14px;
}
.nav-tabs .nav-link.active {
  background-color: #a3a3a3;
  border: 1px solid #a3a3a3 !important;
  color: #fff !important;
  font-weight: 300 !important;
}
.nav-tabs .nav-link:hover:not(.active) {
  background-color: #c7c7c7 !important;
  color: inherit;
  font-weight: 400;
}

.nav-pills .nav-link.active {
  background-color: #a3a3a3;
}
.nav-pills .nav-link:hover:not(.active) {
  background-color: #c7c7c7 !important;
  color: #c1c1c1 !important;
}

.logo-img-header {
  max-width: 120px;
}

.logo-img-header-pattern {
  max-width: 120px;
}

.mean-container .mean-bar nav.mean-nav a img {
  max-width: 100px;
}

.nav-link-header {
  color: #75868f !important;
  font-size: 13px;
}

.border-primary {
  border-color: #a1a1a1 !important;
}

.text-system-dropdown {
  line-height: 14px;
  font-size: 11px;
  margin-bottom: 13px;
}

.pagination-container {
  display: flex;
  justify-content: end;
  list-style: none;
  gap: 0.25rem;
  margin-top: 1.5rem;
}
.pagination-container .pagination-item {
  display: inline-block;
}
.pagination-container .pagination-item .pagination-link {
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  border: 1px solid #DFDFDF;
  border-radius: 2px;
  width: 34px;
  aspect-ratio: 1;
  color: #a1a1a1;
}
.pagination-container .pagination-item .pagination-link i {
  color: #a1a1a1;
}
.pagination-container .pagination-item .pagination-link.active, .pagination-container .pagination-item .pagination-link:hover {
  background-color: #a3a3a3;
  color: #fff;
}
.pagination-container .pagination-item .pagination-link.active i, .pagination-container .pagination-item .pagination-link:hover i {
  color: #fff !important;
}

.container-no-photo {
  background-color: #a1a1a1;
  border-radius: 2px;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 160px;
}
.container-no-photo img {
  max-height: 160px;
  object-fit: contain;
}

.container-no-photo-details {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 400px;
}
.container-no-photo-details img {
  max-height: 250px;
  object-fit: contain;
}

.items-search-container {
  max-height: 69vh;
  overflow-y: auto;
}

.img-banner-board {
  width: 100%;
  max-width: 800px;
  height: 100%;
  max-height: 700px;
}

.description-board-home {
  overflow: hidden;
  background-color: transparent;
  border: none;
  resize: none;
  pointer-events: none;
}

.card-container-board {
  height: 100%;
  box-shadow: none !important;
  border: 1px solid rgba(222, 222, 222, 0.5019607843) !important;
}

@media (max-width: 460px) {
  .container-balloon-message, .container-balloon-message-perso {
    left: 0;
    bottom: 30px;
  }
  .balloon-more, .balloon-more-perso {
    left: -80px !important;
    transform-origin: bottom left !important;
  }
}
@media (min-width: 461px) and (max-width: 767px) {
  .balloon-more {
    left: 0 !important;
    transform-origin: bottom left !important;
  }
}
@media (min-width: 461px) and (max-width: 991px) {
  .balloon-more-perso {
    left: 0 !important;
    transform-origin: bottom left !important;
  }
}
@media (min-width: 992px) {
  .logo-img-header {
    max-width: 134px;
  }
  .logo-img-header-pattern {
    max-width: 100%;
    height: 52px;
  }
}
@media (max-width: 500px) {
  .card-title-sm {
    margin: 1rem 0;
  }
  .container-no-photo-details {
    height: 250px;
  }
  .container-no-photo-details img {
    max-height: 150px;
  }
}
@media (min-width: 768px) {
  .input-search-home {
    width: 350px;
  }
  .img-banner-board {
    aspect-ratio: 2;
  }
}
@media (max-width: 767px) {
  .slider-area {
    margin-top: 16em !important;
  }
  .container-principal-publico .slider-area {
    margin-top: 0 !important;
  }
  .sec-title {
    margin-top: 1.25rem;
  }
  .img-comm-sm {
    max-height: 246px;
  }
  .container-no-photo {
    min-height: 246px;
  }
  .container-no-photo img {
    max-height: 246px;
  }
  .slider-area .tab-box:not(.title-cadastro) {
    margin-top: 3rem !important;
  }
  .home-personalizada-comunicado .container-no-photo {
    min-height: 300px;
  }
  .home-personalizada-comunicado .container-no-photo img {
    max-height: 300px;
  }
  .home-personalizada-comunicado .img-comm-sm {
    max-height: 300px;
  }
}
.show-password {
  position: absolute;
  right: 0;
  top: 0;
  display: flex;
  bottom: 0;
  align-items: center;
  font-size: 13px;
}

.card-daily {
  border: 1px solid rgba(222, 222, 222, 0.5019607843);
}

.card-daily-timeline {
  height: 100%;
  max-height: 660px;
  overflow: auto;
}

.link-timeline {
  padding: 10px 20px;
}

.badge-color-opacity {
  background-color: #c2c2c2;
}

@keyframes wiggle {
  0%, 100% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(-8deg);
  }
  75% {
    transform: rotate(8deg);
  }
}
.squiggling-pen {
  display: inline-block;
  animation: wiggle 1s ease-in-out infinite;
  transform-origin: 50% 80%;
}

.img-menu-mobile {
  min-height: 60px;
}

.accordion-button {
  color: #75868f;
  font-size: 12px;
}
.accordion-button:active, .accordion-button:focus {
  box-shadow: none;
}

.accordion-button:not(.collapsed) {
  color: #a1a1a1;
  background-color: #fafafa !important;
}

.accordion-button::after {
  width: 0.75rem;
  height: 0.75rem;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2375868f'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  background-size: 0.75rem;
}

.accordion-item {
  border: 0;
}

.btn-view-text {
  display: flex;
  background: #fff;
  border: 0;
  border-radius: 5px;
  align-items: center;
  gap: 8px;
  padding: 0.5rem;
}
.btn-view-text i {
  color: #a3a3a3;
}

.feedback-view {
  width: fit-content;
}

.btn-consulta-colab {
  padding: 0.4rem 0.6rem;
}

@media (max-width: 1024px) {
  .card-feedback-header {
    flex-direction: column !important;
    align-items: start !important;
  }
}
.card-index-slider .owl-nav div {
  top: -40px !important;
}

.carousel-formularios-home .owl-nav div {
  top: -75px !important;
}

.nav-carousel .owl-nav {
  display: none;
}

#carousel-banner .owl-nav div, .card-home-slider .owl-nav div {
  top: -35px !important;
}

.card-home-slider .owl-stage {
  margin: 0 auto;
  display: flex;
}

.card-home-slider .owl-item {
  display: flex;
  height: auto;
}

.card-unidade {
  background-color: #F4F6F8;
  border-radius: 5px;
  border: 1px solid #dedede;
}
.card-unidade .img-fluid {
  border-radius: 10px;
}

.home-personalizada-comunicado {
  height: 303px;
}
.home-personalizada-comunicado .card-description-sm, .home-personalizada-comunicado .card-title-sm {
  -webkit-line-clamp: 2;
}
.home-personalizada-comunicado .card-description-sm {
  min-height: 40px;
}

.home-personalizada-comunicado-destaque {
  height: 630px;
}
.home-personalizada-comunicado-destaque .card-description-comm {
  min-height: 65px;
}

@media (min-width: 1161px) and (max-width: 1400px) {
  .home-personalizada-comunicado-destaque {
    height: 700px;
  }
  .home-personalizada-comunicado {
    height: 338px;
  }
}
@media (min-width: 992px) and (max-width: 1160px) {
  .home-personalizada-comunicado-destaque {
    height: 750px;
  }
  .home-personalizada-comunicado {
    height: 363px;
  }
}
@media (max-width: 991px) {
  .home-personalizada-comunicado-destaque, .home-personalizada-comunicado {
    height: auto !important;
  }
}
@media (min-width: 1800px) {
  .home-personalizada-comunicado {
    height: 343px;
  }
  .home-personalizada-comunicado .img-comm-sm {
    max-height: 200px;
  }
  .home-personalizada-comunicado .container-no-photo {
    min-height: 200px;
  }
  .home-personalizada-comunicado-destaque {
    height: 710px;
  }
  .home-personalizada-comunicado-destaque .img-comm-lg {
    max-height: 380px;
  }
  .home-personalizada-comunicado-destaque .container-no-photo {
    min-height: 380px !important;
  }
}
@media (max-width: 1399px) {
  .card-home-slider {
    margin-top: 35px;
  }
}
.btn-calendar {
  background-color: white;
  border: 1px solid #dedede !important;
  height: fit-content;
  padding: 10px;
}

.card-evento-anotacao {
  --bs-bg-opacity: 1;
  background-color: transparent !important;
  filter: brightness(0.75);
}

.img-size-40 {
  height: 40px !important;
  width: 40px !important;
}

.img-size-50 {
  height: 50px !important;
  width: 50px !important;
}

.img-size-60 {
  height: 60px !important;
  width: 60px !important;
}

.img-size-85 {
  height: 85px !important;
  width: 85px !important;
}

.img-patrocinio {
  max-height: 550px;
}

.logo-area {
  background-color: #b4b4b4;
  color: white;
  height: 90px;
}

.top-header-mobile {
  height: 45px;
  position: absolute;
  width: 100%;
  top: 0;
  display: flex;
  align-items: center;
  padding: 0 20px;
}

.mean-container .mean-bar {
  top: 45px;
}

.search-bar-container {
  width: 400px;
  position: absolute;
  left: 50%;
  transform: translate(-50%);
}
.search-bar-container i {
  color: #fff;
  opacity: 0.5;
  transition: 0.3s ease;
}

.form-control.search-bar {
  border-color: #fff !important;
  color: #fff !important;
  background-color: transparent !important;
  font-weight: 300;
  padding-left: 50px;
  opacity: 0.5;
}
.form-control.search-bar + button i {
  color: #fff !important;
  opacity: 0.5;
  transition: 0.3s ease;
}
.form-control.search-bar::placeholder {
  color: #b5b5b5;
}
.form-control.search-bar:focus {
  opacity: 0.95;
}
.form-control.search-bar:focus + button i {
  opacity: 0.95;
  color: #fff;
}

.menu-area {
  margin-bottom: 32px;
  border: 0;
  background-color: #b7b7b7;
}

.header__btn {
  color: #a1a1a1;
  font-size: 0.875rem;
  margin-left: 0.5rem;
}
.header__btn:hover {
  color: #c2c2c2;
}

.img-sm {
  width: 2.25rem;
  height: 2.25rem;
}

.mean-bar {
  background-color: #a1a1a1 !important;
}

.mean-container .mean-bar nav.mean-nav {
  min-height: 125px;
}

.mean-container .mean-bar nav.mean-nav ul li a,
.mean-container .mean-bar .meanmenu-reveal {
  color: #fff !important;
  border-color: #fff !important;
  opacity: 0.85;
}
.mean-container .mean-bar nav.mean-nav ul li a:hover,
.mean-container .mean-bar .meanmenu-reveal:hover {
  color: #fff;
}

.menu-area .main-menu ul li a {
  line-height: 1.4;
  margin-right: 14px;
  color: #b8b8b8;
}
.menu-area .main-menu ul li a:hover {
  color: #b8b8b8;
}

.btn-group-sm > .btn-icon.btn, .btn-icon.btn-sm {
  width: calc(0.4rem + 1.5em);
  height: calc(0.4rem + 1.5em);
}

.menu-area, .main-menu {
  height: 100%;
  min-height: 74px;
}

.main-menu {
  margin-top: 0 !important;
}
.main-menu .list-inline {
  display: flex;
  align-items: center;
  height: 100%;
}

.mean-container .mean-bar .meanmenu-reveal span {
  background: #fff;
}

@media (min-width: 767px) {
  .top-header-mobile {
    display: none;
  }
  .header__btn {
    color: #a5a5a5;
  }
  .header__btn:hover {
    color: #a5a5a5;
  }
  .form-control.search-bar {
    border-color: #b5b5b5 !important;
    color: #b5b5b5 !important;
  }
  .form-control.search-bar + button i {
    color: #b5b5b5 !important;
  }
}
@media (min-width: 768px) {
  .w-md-auto {
    width: auto !important;
  }
  .w-md-160px {
    width: 160px !important;
  }
  .w-md-200px {
    width: 200px !important;
  }
  .w-md-250px {
    width: 250px !important;
  }
  .w-md-300px {
    width: 300px !important;
  }
  .w-md-350px {
    width: 350px !important;
  }
  .w-md-400px {
    width: 400px !important;
  }
  .w-md-450px {
    width: 450px !important;
  }
}
@media (min-width: 992px) {
  .menu-area, .main-menu {
    min-height: 63px;
  }
}
@media (max-width: 1000px) {
  .search-bar-container {
    width: 300px;
  }
}
.menu-area .main-menu ul li ul.dropdown {
  border-top: 3px solid #a1a1a1;
  width: 100%;
  min-width: 180px;
}

.menu-area .main-menu ul li ul.dropdown li a:hover {
  color: #a1a1a1;
  font-weight: 500;
}

.menu-area .main-menu ul li a:hover i {
  color: #a1a1a1;
}

.menu-area .main-menu ul li ul.dropdown li a {
  padding: 10px 20px;
}

.badge-menu {
  color: #fff;
  background-color: #CE2424;
  width: fit-content;
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1px;
  border-radius: 50%;
  padding: 5px;
  font-weight: 500;
  font-size: 10px;
  transform: translateY(-50%);
  margin-left: 2px;
  font-size: 9px;
}

.select-unidades {
  background-color: #a1a1a1;
  border-radius: 5px;
  height: auto !important;
  transition: 0.3s ease;
  display: inline-block;
  min-width: 200px;
}
.select-unidades .dropdown {
  border-top: 3px solid #fff !important;
}
.select-unidades:has(li:hover) {
  border-radius: 5px 5px 0 0;
}
.select-unidades .select-title {
  margin: 0 !important;
  font-weight: 400;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px !important;
  font-size: 14px;
  width: 100% !important;
  display: flex !important;
  justify-content: start;
  align-items: center;
}
.select-unidades .select-title *:last-child {
  margin-left: auto;
}
.select-unidades .select-title * {
  color: #fff !important;
}

.select-unidades-mobile {
  border: 1px solid #fff;
  border-radius: 5px;
  padding: 0.25rem 1rem;
  margin-bottom: 8px;
}
.select-unidades-mobile .mean-expand {
  top: 5px !important;
  right: 14px !important;
  width: 100%;
  text-align: end;
}

.list-unstyled-mobile {
  max-height: 200px;
  overflow: auto;
}

/* Seletor de unidade do mobile: chip na barra do topo + bottom sheet com a lista. */
.seletor-unidade-mobile {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  max-width: 55vw;
  margin-right: auto;
  padding: 0.2rem 0.7rem;
  border: 1px solid #a1a1a1;
  border-radius: 999px;
  background-color: transparent;
  color: #a1a1a1;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
}
.seletor-unidade-mobile i {
  color: #a1a1a1;
  font-size: 12px;
}
.seletor-unidade-mobile .seletor-unidade-mobile-texto {
  /* Sem o min-width o item flex não encolhe abaixo do texto: em vez de reticências,
     o chip estoura para fora da tela e o nome da unidade aparece cortado. */
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.seletor-unidade-mobile .seletor-unidade-mobile-seta {
  flex-shrink: 0;
  opacity: 0.7;
}
.seletor-unidade-mobile.seletor-unidade-mobile-vazio {
  border-style: dashed;
  font-style: italic;
}

/* Na home o seletor ocupa uma segunda linha da barra: nome de unidade longo não cabe ao lado
   dos sete ícones, e espremê-lo entregaria só as primeiras letras. */
.top-header-mobile-unidade {
  /* Continua absoluta como a barra padrão. Em fluxo ela ficaria embaixo da .mean-bar,
     que neste template é absoluta em top/left 0 (template-ten-news/css/style.css:938). */
  height: auto;
  min-height: 45px;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 8px 16px;
  row-gap: 6px;
}
.top-header-mobile-unidade .seletor-unidade-mobile {
  order: 2;
  width: 100%;
  max-width: 100%;
  margin-right: 0;
  padding: 0.35rem 0.8rem;
  font-size: 13px;
}
.top-header-mobile-unidade .seletor-unidade-mobile i {
  font-size: 13px;
}
.top-header-mobile-unidade .seletor-unidade-mobile-seta {
  margin-left: auto;
}

/* Barra de ícones e .mean-bar são as duas absolutas, então o topo da verde é a altura da
   branca — não há empilhamento automático. Este valor é só o piso seguro para o caso de o
   JS não rodar; quem acerta a altura real, inclusive depois que os ícones lazy chegam, é o
   alinharBarraMenu do seletor-unidade-mobile.js. */
.top-header-mobile-unidade + .mean-container .mean-bar {
  top: 92px;
}

.offcanvas-unidades {
  height: auto;
  max-height: 75vh;
  border-top: 3px solid #a1a1a1;
  border-radius: 12px 12px 0 0;
  /* A .mean-bar do meanmenu vem com z-index 999999; nos valores padrão do offcanvas
     a barra do menu ficaria acima da folha e do backdrop, clicável. */
  z-index: 1000001;
}
.offcanvas-unidades .offcanvas-header {
  padding-bottom: 0.5rem;
}
.offcanvas-unidades .offcanvas-title {
  font-size: 15px;
  font-weight: 500;
  color: #a1a1a1;
}
.offcanvas-unidades .offcanvas-title i {
  color: #a1a1a1;
  font-size: 14px;
}
.offcanvas-unidades .offcanvas-body {
  display: flex;
  flex-direction: column;
  padding-top: 0;
  overflow: hidden;
}
.offcanvas-unidades .offcanvas-unidades-busca {
  position: relative;
  flex-shrink: 0;
  margin-bottom: 0.5rem;
}
.offcanvas-unidades .offcanvas-unidades-busca i {
  position: absolute;
  top: 50%;
  left: 12px;
  transform: translateY(-50%);
  font-size: 12px;
  opacity: 0.6;
}
.offcanvas-unidades .offcanvas-unidades-busca .form-control {
  padding-left: 34px;
  font-size: 13px;
}
.offcanvas-unidades .offcanvas-unidades-lista {
  overflow-y: auto;
}
.offcanvas-unidades .offcanvas-unidades-lista .unidade-mobile-item a {
  /* 44px é o alvo mínimo de toque; a lista é rolada com o dedo e erro de clique troca a unidade. */
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 0.5rem 0.75rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
  color: inherit;
  font-size: 14px;
}
.offcanvas-unidades .offcanvas-unidades-lista .unidade-mobile-item:last-child a {
  border-bottom: 0;
}
.offcanvas-unidades .offcanvas-unidades-lista .unidade-mobile-item-atual a {
  border-radius: 6px;
  background-color: #c7c7c7;
  color: #a1a1a1;
  font-weight: 500;
}
.offcanvas-unidades .offcanvas-unidades-lista .unidade-mobile-item-atual a i {
  color: #a1a1a1;
}
.offcanvas-unidades .offcanvas-unidades-vazio {
  margin: 1rem 0 0;
  color: #707070;
  font-size: 13px;
  text-align: center;
}

body:has(.offcanvas-unidades.show) .offcanvas-backdrop {
  z-index: 1000000;
}

.scrolling-menu-mobile {
  display: block;
  height: 100%;
  max-height: 190px;
  overflow-y: auto;
}

.mean-container .mean-bar nav.mean-nav ul li .mean-expand {
  width: 100%;
  text-align: end;
}

.logo-maple-bear {
  max-width: 190px;
}

@media (min-width: 992px) {
  .logo-mundo-verde-header {
    max-width: 145px;
    margin-top: 5px;
  }
  .logo-maple-bear {
    max-width: 210px;
  }
}
/*Mega Menu*/
.menu-area .main-menu ul li.mega-mnu ul.mega-menu {
  border-top: 3px solid #a1a1a1;
  width: calc(100% - 35px);
  padding: 0 30px;
}

.cat-content {
  max-height: 290px;
  overflow: auto;
}

.menu-area .main-menu ul li.mega-mnu ul.mega-menu .mega-cat .sec-title h5 {
  font-size: 14px;
}

.mega-cat .sec-title .line {
  position: absolute;
  background: #a1a1a1;
  width: 55px;
  height: 1px;
  bottom: -9px;
  left: 0;
}

.mega-cat .sec-title {
  position: relative;
}

.mega-menu {
  box-shadow: rgba(0, 0, 0, 0.19) 0px 0px 7px;
}

.mega-cat {
  padding: 30px 0;
}

.menu-area .main-menu ul li.mega-mnu ul.mega-menu .mega-cat .cat-content ul li a:hover {
  color: #444 !important;
  font-weight: 500;
}

.menu-area .main-menu ul li.mega-mnu ul.mega-menu .mega-cat .cat-content ul li a {
  font-size: 13px;
}

.icon-header-color {
  color: #a1a1a1;
}

.text-color-menu {
  color: #444 !important;
}
.text-color-menu:hover {
  color: #a1a1a1 !important;
}

.preloader-logo .spinner-border {
  color: #b5b5b5;
}

@media (max-width: 767px) {
  .preloader-logo {
    text-align: start !important;
    margin: 1rem 0 0 2rem;
  }
}
@media (min-width: 768px) {
  .icon-header-color {
    color: #b5b5b5;
  }
}
.meanmenu-reveal {
  position: absolute;
  transform: translateY(-100%);
}

/*Meus Sistemas*/
.dropdown-menu, .dropdown-card-system {
  overflow-y: auto;
  overflow-x: hidden;
}
.dropdown-menu h4, .dropdown-card-system h4 {
  font-size: 0.925rem;
}

.dropdown-card-system {
  max-height: 306px;
  overflow-y: auto;
  padding: 0 10px;
  margin-top: 10px;
}

.container-img-systems-header {
  min-height: 110px;
  height: 100%;
  text-align: center;
}

.img-systems-header {
  width: 100%;
  max-width: 130px;
  height: 87px;
  object-fit: contain;
}

/* Notificações */
.dropdown-notification {
  overflow-y: auto;
  max-height: 306px;
}

.badge-notification {
  padding: 2px 4px;
  font-size: 12px;
}

.card-notificacao-link {
  transition: 0.3s ease;
}
.card-notificacao-link .card {
  min-height: 85px;
}
.card-notificacao-link .card .card-content {
  min-height: inherit;
}
.card-notificacao-link .data-hora-container {
  font-size: 0.625rem;
}

.notificacao-visualizada {
  filter: grayscale(1);
  opacity: 0.7;
}

.list-group-item {
  padding: 0.5rem 1rem;
}

.badge-super {
  position: absolute !important;
  inset: 0.15rem auto auto 100% !important;
  transform: translate(max(-0.625rem, -50%), -50%);
  z-index: 1;
}

/*Links Úteis*/
.img-link-util {
  width: 50px;
  aspect-ratio: 1;
  object-fit: cover;
}

.cardPointer {
  cursor: pointer;
}

#textoAviso {
  overflow: hidden;
  background-color: transparent;
  border: none;
  resize: none;
  pointer-events: none;
}

@media (max-width: 800px) {
  .header-container-link-util {
    width: 100vw;
    margin: 0 -2rem;
    overflow: auto;
  }
}
.dropdown-menu.show {
  box-shadow: 0 0.5rem 2rem 0 rgba(33, 48, 85, 0.31);
  margin: 0 !important;
  opacity: 1;
  pointer-events: visible;
  touch-action: auto;
  transition-timing-function: ease;
  transition: visibility 0.35s, margin 0.35s ease-in-out, opacity 0.35s, transform 0s;
  visibility: visible;
}

.dropdown-menu {
  position: absolute;
  z-index: 1000;
  display: none;
  width: 100%;
  min-width: 260px;
  padding: 0.5rem 0.5rem;
  margin: 0;
  font-size: 0.75rem;
  color: #75868f;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 0 solid transparent;
  border-radius: 0.4375rem;
  box-shadow: 0 0.5rem 2rem 0 rgba(33, 48, 85, 0.31);
}

.menu-area .dropdown {
  max-height: 50vh;
  overflow-y: auto;
}

.dropdown::-webkit-scrollbar {
  width: 4px;
  border-radius: 50px !important;
}

.dropdown::-webkit-scrollbar-thumb {
  background-color: rgba(9, 37, 65, 0.25);
}

.description-text-heading {
  font-size: 13px;
  line-height: normal;
  max-width: 100%;
  width: 100%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 3;
  text-overflow: ellipsis;
  margin-bottom: 0.5rem;
}

#calendarDash .fc-event {
  height: 12px !important;
  margin: 2px 0 0 !important;
  background-color: #a1a1a1;
  border-color: #a1a1a1;
  cursor: pointer;
}
#calendarDash .fc-scrollgrid {
  border: 0;
}
#calendarDash .fc-dayGridMonth-view {
  border: 1px solid rgba(112, 112, 112, 0.2117647059);
  border-radius: 0.25rem;
}
#calendarDash .fc-more-link {
  pointer-events: none;
  font-size: 0.6875rem;
}
#calendarDash .fc-next-button, #calendarDash .fc-prev-button {
  background-color: #edf1f6;
  border: 0;
  color: #707070;
  transition: 0.3s;
}
#calendarDash .fc-next-button:hover, #calendarDash .fc-next-button:active, #calendarDash .fc-prev-button:hover, #calendarDash .fc-prev-button:active {
  background-color: rgba(237, 241, 246, 0.5);
}
#calendarDash .fc-customNext-button, #calendarDash .fc-customPrev-button {
  background-color: #edf1f6;
  border: 0;
  color: #707070;
  transition: 0.3s;
}
#calendarDash .fc-customNext-button:hover,
#calendarDash .fc-customNext-button:active {
  background-color: rgba(237, 241, 246, 0.5);
}
#calendarDash .fc-icon {
  font-size: 1.875rem;
  overflow: unset;
}
#calendarDash .fc-toolbar-title {
  font-family: "Poppins", sans-serif;
  text-transform: capitalize;
  font-weight: 500;
  font-size: 1.25rem;
}
#calendarDash .fc-daygrid-day-number {
  color: #a1a1a1;
  line-height: 1;
  padding: 4px 4px 0 0;
}
#calendarDash .fc-day-other .fc-daygrid-day-top {
  opacity: 1;
}
#calendarDash .fc-day-other .fc-daygrid-day-top a {
  color: #707070;
}
#calendarDash .fc-button {
  width: 35px;
  height: 35px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}
#calendarDash .fc-button:focus {
  box-shadow: none;
}
#calendarDash .fc-icon {
  top: inherit;
  margin: 0;
  vertical-align: middle;
}
#calendarDash .fc-daygrid-day-events {
  margin-bottom: 0em;
}
#calendarDash td {
  font-size: 0.9375rem;
  font-weight: 500;
  border-color: rgba(112, 112, 112, 0.2117647059);
}
#calendarDash td:last-child, #calendarDash th:last-child {
  border-right: 0;
}
#calendarDash th {
  background-color: transparent;
}
#calendarDash th a {
  color: #707070;
  font-size: 0.875rem;
  font-weight: 500;
  text-transform: uppercase;
}
#calendarDash tr:last-child td {
  border-bottom: 0;
}
#calendarDash .fc-day-today {
  background-color: #c7c7c7;
}

#calendarDashMin .fc-daygrid-day-events {
  display: none;
}
#calendarDashMin .fc-daygrid-day {
  position: relative;
  cursor: pointer;
}
#calendarDashMin .fc-daygrid-day-number {
  font-weight: 500;
  color: #444;
  padding: 6px;
}
#calendarDashMin .fc-day-selected {
  background-color: #1e2a78;
  border-radius: 6px;
}
#calendarDashMin .fc-day-selected .fc-daygrid-day-number {
  color: white;
}
#calendarDashMin .fc-day-today {
  background-color: #c7c7c7;
  border-radius: 5px;
}
#calendarDashMin .fc-daygrid-day.has-event::after {
  content: "";
  width: 6px;
  height: 6px;
  background-color: #c2c2c2;
  border-radius: 50%;
  position: absolute;
  left: 16px;
  transform: translateX(-50%);
  top: 4px;
}
#calendarDashMin .fc-day-other .fc-daygrid-day-number {
  color: #bbb;
}
#calendarDashMin th {
  border: none;
  font-size: 0.75rem;
  text-transform: uppercase;
  background-color: transparent;
}
#calendarDashMin th a {
  color: #858585 !important;
  font-size: 12px;
  font-weight: 500;
}
#calendarDashMin td {
  border: none;
}
#calendarDashMin .fc-scrollgrid {
  border: none;
}
#calendarDashMin .fc-button {
  background: none;
  border: none;
}
#calendarDashMin .fc-button .fc-icon {
  color: #a1a1a1;
}
#calendarDashMin .fc-toolbar-title {
  font-size: 1rem !important;
  font-weight: 500;
  margin-bottom: 0.25rem;
}
#calendarDashMin .fc-toolbar {
  flex-direction: row !important;
  align-items: center !important;
}

.container-calendar {
  height: 100%;
  max-height: 470px;
  overflow: auto;
}

@media (min-width: 576px) and (max-width: 767px) {
  .fc-daygrid-day.has-event::after {
    left: 40px !important;
  }
}
@media (min-width: 769px) and (max-width: 1520px) {
  .fc-daygrid-day.has-event::after {
    left: 8px !important;
  }
}
.fc .fc-daygrid-day.fc-day-today {
  background-color: #c6c6c6 !important;
}

.fc .fc-view .fc-event-dot.fc-daygrid-dot-event, .fc .fc-view .fc-event.fc-daygrid-dot-event {
  background-color: #255e96 !important;
  border-color: #000000 !important;
  border: 1px solid !important;
}

#calendar .fc-prev-button,
#calendar .fc-next-button {
  background-color: #a1a1a1 !important;
  border-color: #a1a1a1 !important;
}

.fc-timeGridDay-button, .fc-dayGridMonth-button, .fc-timeGridWeek-button, .fc-timeGridSemanaTrabalho-button, .fc-today-button {
  background-color: #a1a1a1 !important;
  border-color: #a1a1a1 !important;
}

.fc button .fc-icon {
  top: -2px !important;
}

.fc .fc-button {
  padding-inline: 10px !important;
  padding: 3px 10px !important;
}

.fc .fc-daygrid-day.fc-day-today {
  background-color: #c6c6c6 !important;
}

.fc .fc-view .fc-event-dot.fc-daygrid-dot-event, .fc .fc-view .fc-event.fc-daygrid-dot-event {
  background-color: #a1a1a1 !important;
}

.fc-daygrid-event-dot {
  border-color: #fff !important;
}

.fc .fc-button-primary:focus {
  box-shadow: none !important;
}

.fc-h-event {
  background-color: #c3c3c3 !important;
  border-color: #c3c3c3 !important;
}

/*Detalhes do Evento*/
.number-deep-day {
  font-size: 70px;
  color: #a1a1a1;
  opacity: 1;
  text-align: center;
  font-weight: bold;
}

.card-admin-calendario {
  background: var(--unnamed-color-ffffff) 0% 0% no-repeat padding-box;
  background: #FFFFFF 0% 0% no-repeat padding-box;
  opacity: 1;
}

.title-event-calendar {
  font-size: 18px;
  color: #363636;
  opacity: 1;
  text-align: left;
  font-weight: 600;
}

.title-month-calendar {
  font-size: 20px;
  color: #a1a1a1;
  opacity: 1;
  text-align: center;
  font-weight: 600;
}

.text-subtitle-day {
  font-size: 18px;
  color: #707070;
  opacity: 1;
  text-align: center;
  font-weight: 400;
  margin-bottom: 1rem;
}

.card-eventos {
  border: 1px solid rgba(222, 222, 222, 0.5019607843) !important;
  border-radius: 2px !important;
}

.blue-border {
  border-left: 8px solid #a1a1a1 !important;
  padding: 2rem !important;
}

@media (min-width: 768px) {
  .card-admin-calendario {
    border-right: 2px solid rgba(222, 222, 222, 0.5019607843) !important;
  }
}
@media (max-width: 995px) {
  #eventoModalBody .card-eventos .row > * {
    flex-shrink: 0;
    width: 100%;
  }
  #eventoModalBody .card-eventos .card-admin-calendario {
    border-right: none !important;
    border-bottom: 2px solid rgba(222, 222, 222, 0.5019607843) !important;
  }
}
/* DATA TABLE */
:root {
  --dnx-dt-primary: #a6a6a6;
  --dnx-dt-primary-rgb: 166, 166, 166;
  --dnx-dt-on-primary: #a7a7a7;
}

.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
  color: #000 !important;
  border: 1px solid #009efb;
  background-color: #009efb;
}

table.dataTable {
  width: 100% !important;
}

table th {
  background-color: #a6a6a6;
  color: #fff;
}

.dataTables_wrapper th {
  background-color: #a6a6a6;
  color: #a7a7a7 !important;
}

.dataTables_wrapper .dt-button {
  border-radius: 5px;
  background-color: #a6a6a6;
  color: #a7a7a7;
  border: 0px 0px 2px solid #a6a6a6;
}

.dataTables_filter {
  margin-bottom: 10px;
}

.table.dataTable tbody tr {
  vertical-align: middle;
}

.table > :not(caption) > * > * {
  color: #75868f;
  border-color: #f0f3f8;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-striped-bg: #f9fafc;
}

.table tr:first-child th:first-child {
  border-top-left-radius: 5px;
}

.table tr:first-child th:last-child {
  border-top-right-radius: 5px;
}

.gi-footer {
  color: #5f5968 !important;
}

.gi-footer .gi-footer-logo {
  max-width: 170px;
}

.link-footer {
  width: 30px;
  height: 30px;
  background-color: #a3a3a3;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
}
.link-footer:hover {
  background-color: #c1c1c1;
}
.link-footer i {
  color: #a5a5a5;
}

.footer-bottom {
  background: #f5f5f5;
  padding: 12px 0;
}

.footer-section:not(:last-child) {
  border-bottom: 1px solid #dee2e6;
}

@media (min-width: 768px) {
  .footer-section {
    border: none !important;
  }
}
.fc-toolbar-title {
  font-size: 1.375rem !important;
}

.fc-col-header-cell-cushion {
  color: #fff !important;
}

.fc .fc-button .fc-icon {
  color: #fff;
}

#calendar .fc-button-group .fc-button:not(.fc-button-active):hover {
  filter: brightness(1.6);
}
#calendar .fc-button-group .fc-button.fc-button-active {
  background-color: #fff !important;
  border-color: #a1a1a1 !important;
  color: #a1a1a1 !important;
}
#calendar .fc-daygrid-dot-event {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 2px 4px;
  border: 0 !important;
  border-radius: 4px;
  background-color: transparent !important;
  color: #363636;
  font-size: 0.75rem;
  overflow: hidden;
}
#calendar .fc-daygrid-dot-event:hover {
  background-color: #c7c7c7 !important;
}
#calendar .fc-daygrid-dot-event .fc-daygrid-event-dot {
  flex-shrink: 0;
  margin: 0;
  border-color: #a1a1a1 !important;
}
#calendar .fc-daygrid-dot-event .fc-event-time {
  flex-shrink: 0;
  margin: 0;
  color: #707070;
  font-weight: 600;
}
#calendar .fc-daygrid-dot-event .fc-event-title {
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
}
#calendar .fc-daygrid-block-event {
  padding: 1px 4px;
  border-radius: 4px;
  font-size: 0.75rem;
}
#calendar .fc-daygrid-block-event .fc-event-time {
  display: none;
}
#calendar .fc-daygrid-block-event .fc-event-title {
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
}
#calendar .fc-scroller[style*="hidden scroll"] {
  overflow-y: auto !important;
  scrollbar-gutter: stable;
}
#calendar .fc-timegrid-event {
  padding: 2px 4px;
  border: 0 !important;
  border-left: 3px solid #a1a1a1 !important;
  border-radius: 4px;
  background-color: #c3c3c3 !important;
  font-size: 0.75rem;
  box-shadow: none;
}
#calendar .fc-timegrid-event .fc-event-time {
  font-weight: 600;
  margin-bottom: 1px;
}
#calendar .fc-timegrid-event .fc-event-title {
  font-weight: 500;
  line-height: 1.25;
}
#calendar .fc-timegrid-slot {
  height: 2.25em;
}
#calendar .fc-timegrid-slot-minor {
  border-top-style: dotted;
}
#calendar .fc-timegrid-slot-label-cushion {
  color: #707070;
  font-size: 0.75rem;
}
#calendar .fc-timegrid .fc-scrollgrid-section-body:not(.fc-scrollgrid-section-liquid) > td {
  background-color: #c7c7c7;
}
#calendar .fc-timegrid-axis-cushion {
  color: #a1a1a1;
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
}
#calendar .fc-timegrid-divider {
  height: 4px;
  padding: 0;
  border-width: 0 1px 0 0;
  background-color: #a1a1a1 !important;
}
#calendar .fc-timegrid .fc-scrollgrid-section-header > th {
  box-shadow: inset 0 -1px 0 var(--fc-border-color);
}
#calendar .fc-timegrid-col.fc-day-today {
  background-color: #c7c7c7;
}
#calendar .fc-timegrid-now-indicator-line {
  border-color: #a1a1a1;
  border-width: 2px 0 0;
}
#calendar .fc-timegrid-now-indicator-arrow {
  border-color: #a1a1a1;
  border-bottom-color: transparent;
  border-top-color: transparent;
}
#calendar .fc-timegrid-more-link {
  color: #a1a1a1;
  font-size: 0.75rem;
  font-weight: 600;
}
#calendar .fc-daygrid-more-link {
  color: #a1a1a1;
  font-size: 0.75rem;
  font-weight: 600;
}

@media (max-width: 550px) {
  .fc .fc-toolbar {
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 0.75rem;
  }
  .fc .fc-toolbar .fc-toolbar-chunk:not(:has(.fc-toolbar-title)) {
    align-self: end;
  }
}
.link-evento {
  max-width: 320px;
  text-decoration: none;
}
.link-evento:hover, .link-evento:focus {
  text-decoration: underline;
}

#abaEventos .select2-container {
  width: 100% !important;
}

/***SELECT 2*/
.select2.readonly + .select2-container .select2-selection {
  background-color: #f3f5f9;
  pointer-events: none;
  border: 1px solid #edf1f6 !important;
}
.select2.readonly + .select2-container .selection .select2-selection--single {
  border-color: #edf1f6 !important;
}
.select2.readonly + .select2-container .select2-selection__arrow {
  display: none;
}

.select2-container .select2-selection--single, .select2-container--default .select2-selection--single {
  height: 40.5px !important;
}
.select2-container .select2-selection--single .select2-selection__arrow, .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 40.5px !important;
}
.select2-container .select2-selection--single .select2-selection__rendered, .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 40.5px !important;
}

.select2-container {
  width: 100% !important;
}

.select2-dropdown {
  outline: 0 !important;
  -webkit-box-shadow: inset 0 1px 2px rgba(55, 60, 67, 0.075), 0 0 0.75rem 0 rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 1px 2px rgba(55, 60, 67, 0.075), 0 0 0.75rem 0 rgba(0, 0, 0, 0.125);
}

.select2-container.select2-container--open.select2-container--default .select2-selection--single {
  transition: border-color 0.35s ease-in-out, box-shadow 0.35s ease-in-out;
  border-color: #201F1E;
  -webkit-box-shadow: inset 0 1px 2px rgba(55, 60, 67, 0.075), 0 0 0.75rem 0 rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 1px 2px rgba(55, 60, 67, 0.075), 0 0 0.75rem 0 rgba(0, 0, 0, 0.125);
}

.select2-container:not(.select2-container--open).select2-container--default .select2-selection--single {
  transition: border-color 0.35s ease-in-out, box-shadow 0.35s ease-in-out;
  border-color: rgba(0, 0, 0, 0.07) !important;
  border-radius: 0.4375rem;
}

.select2-search--dropdown {
  border-color: #201F1E;
}

.select2-search__field:focus {
  outline: none;
  transition: border-color 0.35s ease-in-out, box-shadow 0.35s ease-in-out;
  border-color: #201F1E !important;
  -webkit-box-shadow: inset 0 1px 2px rgba(55, 60, 67, 0.075), 0 0 0.75rem 0 rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 1px 2px rgba(55, 60, 67, 0.075), 0 0 0.75rem 0 rgba(0, 0, 0, 0.125);
}

.select2-search__field {
  border-radius: 0.4375rem;
}

.select2-container--default .select2-selection--single {
  color: #75868f !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #75868f !important;
}

.select2-container--default.select2-container--disabled .select2-selection--single {
  background-color: #F3F5F9 !important;
}

.select2-container--default .select2-selection--multiple {
  background-color: #a5a5a5;
  border: 1px solid rgba(0, 0, 0, 0.07);
  border-radius: 4px;
  cursor: text;
}

.select2-container .select2-selection--multiple {
  height: 100% !important;
  min-height: 40.5px !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
  background-color: #a1a1a1 !important;
  color: #a5a5a5;
  font-size: 12px;
  font-weight: 500;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  color: #a5a5a5 !important;
  margin-right: 4px !important;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #a5a5a5 !important;
}

.select2-results__option .checkbox {
  display: flex;
}

.select2Checkbox {
  accent-color: #a1a1a1;
  display: none;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #c2c2c2;
}

/* Container select multiple */
.select2-container .select2-search--inline .select2-search__field {
  margin-top: 10px !important;
  padding: 0 !important;
}

.select2-container--default .select2-selection--multiple {
  border-radius: 0.4375rem !important;
  padding: 0 8px !important;
  border: 1px solid rgba(0, 0, 0, 0.07) !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered {
  padding: 0 !important;
}

.form-control:focus {
  box-shadow: inset 0 1px 2px rgba(55, 60, 67, 0.075), 0 0 0.75rem 0 rgba(0, 0, 0, 0);
}

.container-card-img {
  width: 100%;
  height: 100%;
  max-width: 322px;
}

.control-label {
  font-size: 14px;
}

.card-titulo-title {
  display: flex;
  align-items: baseline;
}

.badge-status {
  padding: 9px 10px;
  border-radius: 24px;
}

.badge-bg-red {
  background-color: #BC0202;
}

.badge-bg-blue {
  background-color: #2525E2;
}

.badge-bg-green {
  background-color: #a1a1a1;
}

.badge-bg-primary {
  background-color: #a1a1a1;
}

.badge-sector {
  position: absolute;
  bottom: 7px;
  background-color: #FF9361;
  color: #a5a5a5;
  padding: 2px 10px;
  text-align: center;
  font-size: 12px;
  font-weight: 400;
  border-radius: 6px;
  width: 100%;
}

.card-titulos-text {
  color: #a3a3a3;
}

.btn-view {
  width: 35px;
  height: 35px;
  background: #fff;
  border: 0;
  border-radius: 5px;
}
.btn-view i {
  color: #a3a3a3;
}

.btn-view-active {
  background-color: #c1c1c1;
}
.btn-view-active i {
  color: #fff;
}
.btn-view-active span {
  color: #fff;
}

@media (min-width: 350px) {
  .badge-sector {
    width: 0;
    min-width: 255px;
  }
}
@media (min-width: 768px) {
  .container-card-img {
    min-width: 100px;
    max-width: 140px;
    max-height: 130px;
  }
  .badge-sector {
    bottom: 17px;
    min-width: 132px;
    width: 0;
  }
  .card-titulo-data {
    margin-bottom: 1.5rem;
  }
}
@media (max-width: 550px) {
  .titulos-cards {
    flex-direction: column-reverse;
    flex-wrap: wrap;
    align-items: start !important;
  }
  .titulos-cards-view {
    margin-top: 15px;
  }
  .titulos-cards-soma {
    flex-direction: column;
  }
  .titulos-cards-soma .card-index {
    width: 95vw !important;
  }
  .card-titulo-title {
    flex-direction: column;
    margin-bottom: 0.5rem;
  }
  .card-titulo-title .badge-status {
    margin: 0 !important;
  }
}
.arquivo-card {
  cursor: pointer;
  transition: box-shadow 0.15s ease, border-color 0.15s ease;
  border: 1px solid white !important;
}

.arquivo-card:hover {
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
  border-color: #a1a1a1 !important;
}

.arquivo-card-badge {
  width: 48px;
  height: 48px;
  border-radius: 0.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: monospace;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.03em;
}

.arquivo-card-thumb {
  object-fit: cover;
}

.arquivo-card-info {
  min-width: 0;
}

.arquivo-card-nome {
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.arquivo-card-categoria {
  font-size: 0.75rem;
  margin-top: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.arquivo-card-autor {
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  flex-shrink: 0;
}

.arquivo-card-descricao {
  font-size: 0.8125rem;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.arquivo-card-data {
  font-size: 0.75rem;
}

.arquivo-card-acao {
  font-size: 0.75rem;
  font-weight: 500;
  text-decoration: none;
  padding: 0.25rem 0.5rem;
  border-radius: 0.375rem;
}

.arquivo-card-acao:hover {
  background: rgba(0, 0, 0, 0.05);
  text-decoration: none;
}

.arquivo-badge-pdf {
  background: rgba(255, 0, 0, 0.12);
  color: #ff0000;
}

.arquivo-badge-docx {
  background: rgba(0, 114, 213, 0.12);
  color: #0072D5;
}

.arquivo-badge-xlsx {
  background: rgba(0, 185, 97, 0.12);
  color: #00B961;
}

.arquivo-badge-pptx {
  background: rgba(213, 84, 0, 0.12);
  color: #d55400;
}

.arquivo-badge-zip {
  background: rgba(111, 0, 185, 0.12);
  color: #6F00B9;
}

.arquivo-badge-imagem {
  background: rgba(112, 112, 112, 0.12);
  color: #707070;
}

.arquivo-badge-video {
  background: rgba(254, 179, 0, 0.18);
  color: rgb(177.5, 125.0885826772, 0);
}

.arquivo-badge-generico {
  background: rgba(112, 112, 112, 0.12);
  color: #707070;
}

.arquivo-modal-badge {
  width: 56px;
  height: 56px;
  font-size: 11px;
}

.arquivo-modal-label {
  font-size: 0.6875rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #707070;
  margin-bottom: 0.25rem;
}

.arquivo-modal-preview {
  min-height: 220px;
  background: rgba(0, 0, 0, 0.02);
  border: 1px dashed rgba(0, 0, 0, 0.1);
  border-radius: 0.5rem;
  overflow: hidden;
}

.div-arquivo-card {
  max-height: 80vh;
  overflow-y: auto;
}

.height-title-user {
  height: 100%;
  min-height: 48px;
  max-height: 95px;
}

.img-user-height {
  border-radius: 0.4375rem !important;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}

.height-email-user {
  height: 100%;
  min-height: 65px;
  overflow-wrap: break-word;
}

.cursor-grab {
  cursor: grab;
}

.banner-height-news {
  height: 100%;
  max-height: 500px;
}

.banner-height-blogs {
  border-radius: 6px;
  height: 100%;
  max-height: 700px;
}

.imagem-arquivo-blog {
  width: 100%;
  aspect-ratio: 400/300;
  object-fit: cover;
  max-width: 122px;
}

.img-noticias-blog {
  border-radius: 0.4375rem;
  width: 100%;
  aspect-ratio: 1800/700;
  object-fit: cover;
}

.bg-banner-financeiro {
  width: 100%;
  aspect-ratio: 1800/700;
  border-radius: 0.4375rem;
  object-fit: cover;
}

.btn-animation-primary {
  box-sizing: border-box;
  border: 1px solid #a1a1a1;
  color: #a1a1a1;
  font-weight: 400;
  padding: 6px 14px;
  border-radius: 5px;
}

.btn-animation-primary:hover {
  color: #fff;
}

.detail-btn-primary {
  -webkit-transition: box-shadow 300ms ease-in-out, color 300ms ease-in-out;
  transition: box-shadow 300ms ease-in-out, color 300ms ease-in-out;
  background-color: #fff;
}
.detail-btn-primary:hover {
  box-shadow: 0 0 40px 40px #a1a1a1 inset;
}

.folder-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem;
  cursor: pointer;
}

.folder-item:hover, .folder-item-selected {
  background-color: #c7c7c7;
  text-decoration: none;
}

.folder-item-selected {
  color: #a1a1a1;
  font-weight: 500;
}

.div-gerenciador-arquivo {
  max-height: 80vh;
  overflow: auto;
}

.card-gerenciador-arquivo {
  background: #fff;
  border: 1px solid #e7ecea;
  border-radius: 12px;
  padding: 1.25rem 1.5rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  font-size: 12px;
  color: #75868f;
}
.card-gerenciador-arquivo p {
  color: inherit;
  font-size: inherit;
}
.card-gerenciador-arquivo .card-index {
  border-radius: 10px !important;
}

.card-tabela-gerenciador {
  border: 1px solid #e7ecea;
  border-radius: 10px;
  max-height: 80vh;
}
.card-tabela-gerenciador table thead th {
  background-color: #c7c7c7;
  color: #a1a1a1;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  border-bottom: 1px solid #e7ecea;
}
.card-tabela-gerenciador table td, .card-tabela-gerenciador table th {
  border-color: #f0f4f3;
}
.card-tabela-gerenciador table td {
  padding: 12px 8px;
}
.card-tabela-gerenciador table tbody tr:last-child td {
  border-bottom: 0;
}
.card-tabela-gerenciador .tabela-gerenciador-tipo {
  color: #75868f;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 500;
}
.card-tabela-gerenciador .tabela-gerenciador-tipo td {
  padding: 8px;
  background-color: #FCFDFD;
}

.titulo-estrutura-gerenciador {
  font-weight: 700;
  color: #7b8b86;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.arquivo-search-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: end;
  height: 40px;
  min-height: 40px;
  margin-left: auto;
}

.arquivo-search-input {
  height: 40px;
  font-size: 13px;
  border: 1px solid #e7ecea;
  border-radius: 7px;
  position: relative;
  width: fit-content;
  padding: 8px 40px;
  background: #ffffff;
}

.arquivo-search-input:focus {
  border-color: #a1a1a1;
  box-shadow: 0 0 0 3px #c7c7c7;
}

.arquivo-search-icon {
  position: absolute;
  left: 3px;
  font-size: 14px;
  z-index: 2;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.arquivo-search-clear {
  position: absolute;
  right: 3px;
  font-size: 14px !important;
  width: 36px;
  height: 36px;
  display: none;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  z-index: 2;
}

.arquivo-search-clear:hover {
  background: rgba(236, 236, 236, 0.4);
}

.arquivo-search-clear.visible {
  display: flex;
}

@media (max-width: 767px) {
  #divPasta {
    border-right: none !important;
  }
}
.badge-tag {
  background-color: #a1a1a1;
  color: #fff;
  border-radius: 1rem;
  padding: 0.3rem 0.75rem;
  margin: 0.1rem 0;
  font-weight: 500;
  font-size: 12px;
}

@media (max-width: 800px) {
  .img-user-height {
    max-width: 50%;
  }
}
/* Timeline */
.timeline .tl-entry {
  display: flex;
  gap: 0.75rem;
}

.timeline {
  display: flex;
  flex-direction: column;
  gap: var(--timeline-entry-gap);
}

.timeline {
  --timeline-dot: #373131;
  --timeline-line: #373131;
  --timeline-line-width: 2px;
  --timeline-point-gap: 0.25rem;
  --timeline-point-size: 0.5rem;
  --timeline-media-size: 2.25rem;
  --timeline-entry-gap: 1.5rem ;
}

.timeline .tl-time:not(:empty) {
  text-align: end;
}

.timeline .tl-time .tl-time {
  color: var(--bs-headings-color);
  font-weight: 700;
}

.timeline .tl-entry {
  display: flex;
  gap: 0.75rem;
}

.timeline .tl-point:before {
  background-color: var(--timeline-dot);
  border-radius: 50%;
  content: "";
  display: block;
  height: var(--timeline-point-size);
  transform: translateY(0.75ex);
  width: var(--timeline-point-size);
}

.timeline .tl-point:after {
  border-inline-start: var(--timeline-line-width) solid var(--timeline-line);
  content: "";
  display: block;
  height: calc(100% - var(--timeline-point-size) - var(--timeline-point-gap) * 2 + var(--timeline-entry-gap));
  inset: calc(0.75ex + var(--timeline-point-gap)) auto auto calc(50% - var(--timeline-line-width) / 2);
  position: relative;
}

.timeline .tl-media {
  flex: 0 0 var(--timeline-media-size);
}

.timeline .tl-media i {
  align-items: center;
  display: flex;
  justify-content: center;
}

.timeline .tl-media:after {
  border-inline-start: var(--timeline-line-width) solid var(--timeline-line);
  content: "";
  display: block;
  height: calc(100% - var(--timeline-media-size) - var(--timeline-point-gap) * 2 + var(--timeline-entry-gap));
  inset: var(--timeline-point-gap) auto auto calc(50% - var(--timeline-line-width) / 2);
  position: relative;
}

.timeline .tl-entry.active .tl-icon .ratio {
  box-shadow: 0 0 0 var(--timeline-line-width), 0 0 0 calc(var(--timeline-line-width) * 2) var(--bs-primary);
}

.timeline .tl-entry.active .tl-point:before {
  background-color: transparent;
  box-shadow: 0 0 0 var(--timeline-line-width) var(--timeline-dot);
}

.timeline .tl-entry.active .tl-point:after {
  height: calc(100% - var(--timeline-line-width) - var(--timeline-point-size) - var(--timeline-point-gap) * 2 + var(--timeline-entry-gap));
  top: calc(0.75ex + var(--timeline-point-gap) + var(--timeline-line-width));
}

.timeline .tl-entry:last-child .tl-media:after, .timeline .tl-entry:last-child .tl-point:after {
  border-color: var(--bs-muted-color);
  border-inline-start-style: dotted;
}

.timeline-two-column .tl-content, .timeline-two-column .tl-entry > .tl-time {
  width: 50%;
}

.timeline-two-column .tl-content > * {
  display: inline-flex;
  flex-direction: column;
}

.timeline-two-column .tl-entry-start {
  flex-direction: row-reverse;
}

.timeline-two-column .tl-entry-start .tl-time {
  text-align: start;
}

.timeline-two-column .tl-entry-start .tl-content {
  align-items: flex-end;
  display: inline-flex;
  flex-direction: column;
  justify-content: end;
}

.card-timeline {
  background-color: #f9fbfa;
  border-radius: 0.4375rem;
  width: 100%;
  box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.1607843137);
}
.card-timeline .table {
  --bs-table-bg: #F9FBFA;
}

.timeline .tl-entry:last-child .tl-point:after {
  border-inline-start-style: none;
}

.timeline-tabela-precos .tl-entry:first-child .tl-point:after {
  border-inline-start-style: none;
}

.timeline .tl-time .tl-date {
  font-size: 11px;
}

.timeline .tl-time .tl-time {
  font-weight: 500;
}

.circle-task {
  width: 14px;
  height: 14px;
}

.title-type-status:has(.circle-task-gray) {
  background-color: #707070;
  background-blend-mode: lighten;
}
.title-type-status:has(.circle-task-yellow) {
  background-color: #FEB300;
}
.title-type-status:has(.circle-task-blue) {
  background-color: #0072D5;
}
.title-type-status:has(.circle-task-purple) {
  background-color: #6F00B9;
}
.title-type-status:has(.circle-task-green) {
  background-color: #00B961;
}
.title-type-status:has(.circle-task-orange) {
  background-color: #d55400;
}
.title-type-status:has(.circle-task-red) {
  background-color: #ff0000;
}

[class^="rounded column-task"] {
  background-color: rgba(112, 112, 112, 0.1);
  padding: 1rem;
}
[class^="rounded column-task"] > *:not(:last-child) {
  margin-bottom: 1rem;
}

.card-message-mobile {
  background-color: #a1a1a1;
  padding: 12px;
  border-radius: 12px;
}

.container-kanban {
  max-width: 100%;
  overflow: auto;
}

.scrollable-content::-webkit-scrollbar {
  height: 0.1875rem;
}

.scrollable-content::-webkit-scrollbar-track {
  background-color: #edf1f6;
}

.title-type-status {
  font-size: 15px;
  color: #fff;
  font-weight: 400;
  padding: 0.5rem;
  margin-bottom: 0.5rem;
  border-radius: 4px;
  display: flex;
  justify-content: space-between;
}

.cards-status {
  width: 100%;
  padding: 0.75rem 0.5rem;
  font-size: 13px;
  font-weight: 500;
  min-height: 212px;
  text-align: start;
}
.cards-status p {
  font-size: 13px;
}

.title-type-height {
  font-size: 15px !important;
  height: 60px;
}

.height-description {
  height: 50px;
}

.height-description-assunto {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

.user-description {
  max-width: 270px;
  width: 100%;
}

@media (min-width: 450px) {
  .user-description {
    max-width: 326px;
  }
}
@media (min-width: 500px) {
  .card-message-mobile {
    background-color: transparent;
  }
}
.detalhes-status {
  padding: 8px 10px;
  border-radius: 5px;
  display: flex;
  align-items: center;
}
.detalhes-status p {
  font-size: 13px;
}

.detalhes-gray {
  background-color: rgba(112, 112, 112, 0.2);
}

.detalhes-yellow {
  background-color: rgba(254, 179, 0, 0.2);
}

.detalhes-red {
  background-color: rgba(255, 0, 0, 0.2);
}

.detalhes-blue {
  background-color: rgba(0, 114, 213, 0.2);
}

.detalhes-purple {
  background-color: rgba(111, 0, 185, 0.2);
}

.detalhes-green {
  background-color: rgba(0, 185, 97, 0.2);
}

.detalhes-orange {
  background-color: rgba(213, 84, 0, 0.2);
}

.card-border-gray {
  border-left: 4px solid #707070 !important;
}

.card-border-yellow {
  border-left: 4px solid #FEB300 !important;
}

.card-border-red {
  border-left: 4px solid #ff0000 !important;
}

.card-border-orange {
  border-left: 4px solid #d55400 !important;
}

.card-border-blue {
  border-left: 4px solid #0072D5 !important;
}

.card-border-purple {
  border-left: 4px solid #6F00B9 !important;
}

.card-border-green {
  border-left: 4px solid #00B961 !important;
}

.nav-link.btn-tab-status {
  font-size: 15px;
  color: #707070;
  width: 100%;
}

.card-information {
  box-shadow: 0px 3px 16px rgba(0, 0, 0, 0.1607843137);
}

.title-information {
  height: 45px;
}

.form-card-information {
  background-color: #ECF0F6;
}

.thead-modal-information {
  --bs-table-bg: $primary;
  background-color: #a1a1a1;
  font-size: 14px;
}

.thead-modal-information tr th {
  color: #a5a5a5;
  font-weight: 500;
  text-align: center;
  padding: 10px;
}

.tbody-modal-information {
  font-size: 14px;
}

.tab-information {
  height: 75vh;
  overflow-y: auto;
  padding: 25px;
}

.card-selection-list {
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.btn-action-selection-list {
  background-color: #373131;
  color: #a5a5a5;
  padding: 0.55rem 1rem;
  font-size: 0.7125rem;
  border-radius: 0.4375rem;
  border: none;
  text-decoration: none;
}
.btn-action-selection-list:hover {
  background-color: rgba(55, 49, 49, 0.9);
  box-shadow: rgba(0, 0, 0, 0.16) 0px 3px 6px, rgba(0, 0, 0, 0.23) 0px 3px 6px;
  text-decoration: none;
}

.img-solicitacao-thumbnail {
  width: 150px;
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 5px;
  width: 150px;
}

.td-type-status {
  vertical-align: middle;
}

.header-modal-confirmar {
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
}

#ModalSolicitacaoDetalhes .modal-header {
  border: 0 !important;
  padding-bottom: 0;
}

.nav-status > li {
  flex: 1 1 auto !important;
}

.mt-1px {
  margin-top: 1px !important;
}

.kanban-nav-container {
  position: relative;
  margin: 1rem 0;
}

.cursor-pointer {
  cursor: pointer !important;
}

.form-control.box-search-bar {
  border-color: #9A9A9A !important;
  color: #5C5D5E !important;
  font-weight: 300;
  padding-right: 50px;
  opacity: 0.5;
}
.form-control.box-search-bar + button i {
  color: #5C5D5E !important;
  transition: 0.3s ease;
}
.form-control.box-search-bar::placeholder {
  color: #707070;
}
.form-control.box-search-bar:focus {
  opacity: 0.95;
}
.form-control.box-search-bar:focus + button i {
  color: #5C5D5E;
}

.border-radius-inherit {
  border-radius: inherit !important;
}

.bg-container-list {
  background-color: #F6F6F6;
  padding: 5px 0 5px 0;
  cursor: pointer;
}

.bg-container-list li {
  padding: 12px 16px;
  list-style-type: none;
}

.list-hierarchy-sector {
  padding: 12px 20px !important;
}

.list-hierarchy-department {
  padding: 12px 30px !important;
}

.list-hierarchy-topic {
  padding: 0 40px !important;
}

.list-hierarchy-topic div {
  padding: 12px;
  border-radius: 4px;
}

.p-12 {
  padding: 12px !important;
}

.item-hierarchy-topic.active {
  border: 1px solid #a1a1a1;
  color: #a1a1a1;
  font-weight: 500;
}

.box-topic-text {
  height: 100%;
  min-height: 47px;
}

.container-auto-request {
  height: 100%;
  max-height: 500px;
  overflow: auto;
  padding: 0 5px;
}

.text-description-return {
  font-size: 12px;
  text-align: justify;
  margin-bottom: 0;
}

.border-return-fill {
  border: 1px solid #df5645 !important;
}

.endereco-card {
  border: 1px solid rgba(0, 0, 0, 0.07);
  border-radius: 7px;
  padding: 15px;
  margin: auto;
}

.nav:not(.nav-pills) .nav-link.active {
  color: #a1a1a1;
}

.nav-callout .nav-link.active {
  box-shadow: inset 0 -0.1875rem #a1a1a1;
}

.select2-selection__choice {
  margin-top: 10px !important;
}

@media (min-width: 678px) {
  .list-hierarchy-sector {
    padding: 12px 40px !important;
  }
  .list-hierarchy-department, .list-hierarchy-topic {
    padding: 12px 50px !important;
  }
  .list-hierarchy-topic {
    padding: 0 50px !important;
  }
}
@media (max-width: 992px) {
  .minhas-solicitacoes-form {
    flex-direction: column-reverse;
  }
}
.card-compact {
  background: white;
  border: 1px solid #e0e0e0;
  padding: 12px 16px;
  transition: all 0.2s ease;
  cursor: pointer;
}

.card-compact:hover {
  transform: translateX(4px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
  border-color: #cbd5e0;
}

.card-compact-body {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.badge-data {
  padding: 4px 10px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: 500;
  white-space: nowrap;
}

.list-item-compact {
  background: white;
  border: 1px solid #e8e8e8;
  border-radius: 8px;
  padding: 10px 12px;
  margin-bottom: 6px;
  transition: all 0.2s ease;
  cursor: pointer;
  gap: 12px;
}

.list-item-compact:hover {
  background: #f8f9fa;
  border-color: #d0d0d0;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transform: translateY(-1px);
}

.list-item-compact:nth-child(even) {
  background: #fafafa;
}

.list-item-compact:nth-child(even):hover {
  background: #f5f5f5;
}

.status-indicator {
  width: 4px;
  height: 32px;
  border-radius: 2px;
  flex-shrink: 0;
}

.list-item-code {
  min-width: 70px;
  flex-shrink: 0;
}

.list-item-name {
  min-width: 0;
}

.list-item-pedido {
  flex-shrink: 0;
}

.badge-pedido {
  background: #f0f4ff;
  color: #4a5568;
  padding: 4px 12px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 500;
  white-space: nowrap;
}

.list-item-date {
  min-width: 120px;
  flex-shrink: 0;
  text-align: right;
}

.list-item-action {
  width: 20px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.list-item-compact:hover .list-item-action i {
  transform: translateX(2px);
  transition: transform 0.2s ease;
}

.view-toggle {
  display: flex;
  gap: 8px;
  background: #f8f9fa;
  padding: 4px;
  border-radius: 8px;
  border: 1px solid #e0e0e0;
}

.view-toggle-btn {
  padding: 8px 16px;
  border: none;
  background: transparent;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 13px;
  color: #6c757d;
  display: flex;
  align-items: center;
  gap: 6px;
}

.view-toggle-btn:hover {
  background: #e9ecef;
  color: #495057;
}

.view-toggle-btn.active {
  background: white;
  color: #a1a1a1;
  font-weight: 600;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);
}

@media (max-width: 768px) {
  .view-toggle {
    gap: 4px;
    padding: 3px;
    width: 100%;
    justify-content: center;
  }
  .view-toggle-btn {
    padding: 8px 10px;
    font-size: 11px;
    gap: 4px;
    flex: 1;
    justify-content: center;
  }
  .view-toggle-btn span {
    display: none;
  }
  .view-toggle-btn i {
    font-size: 16px;
  }
  .card-compact {
    padding: 10px 12px;
  }
  .card-compact-body {
    gap: 6px;
  }
  .badge-data {
    font-size: 10px;
    padding: 3px 8px;
  }
  .fs-13 {
    font-size: 12px;
  }
  .list-item-compact {
    padding: 8px 10px;
    gap: 8px;
    flex-wrap: wrap;
  }
  .status-indicator {
    width: 3px;
    height: 28px;
  }
  .list-item-code {
    min-width: 60px;
  }
  .list-item-name {
    flex: 1 1 100%;
    order: 3;
    margin-top: 4px;
    padding-left: 11px;
  }
  .list-item-pedido {
    order: 2;
  }
  .badge-pedido {
    padding: 3px 8px;
    font-size: 11px;
  }
  .list-item-date {
    min-width: auto;
    text-align: left;
    order: 4;
    flex: 1 1 100%;
    padding-left: 11px;
    margin-top: 2px;
  }
  .list-item-action {
    order: 5;
    margin-left: auto;
  }
  .title-type-status {
    font-size: 13px;
    padding: 8px 12px;
  }
  .title-type-status span:first-child {
    white-space: normal;
    overflow: visible;
    text-overflow: unset;
  }
  .col-12.col-md-6.col-lg-7.col-xxl-4.pb-3.me-3 {
    margin-right: 0 !important;
    padding-bottom: 12px !important;
  }
}
@media (max-width: 576px) {
  .view-detalhada .card-body {
    padding: 12px;
  }
  .view-detalhada .fs-15 {
    font-size: 14px;
  }
  .view-detalhada .d-flex.gap-2 {
    gap: 8px !important;
  }
  .view-detalhada i.fs-4 {
    font-size: 14px !important;
  }
  .list-item-compact {
    padding: 6px 8px;
  }
  .list-item-code {
    min-width: 55px;
  }
  .fs-12 {
    font-size: 11px;
  }
}
.view-detalhada {
  display: none;
}

.view-compacta {
  display: none;
}

.view-lista {
  display: none;
}

body[data-view-mode=detalhada] .view-detalhada {
  display: block;
}

body[data-view-mode=compacta] .view-compacta {
  display: block;
}

body[data-view-mode=lista] .view-lista {
  display: block;
}

.minhas-tarefas-form .form-control {
  height: 38px;
}

.lista-tarefas {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  max-height: 70vh;
  overflow-y: auto;
  padding-right: 0.25rem;
}

.card-tarefa {
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.07);
  border-left: 4px solid #707070;
  border-radius: 0.4375rem;
  box-shadow: 0 1px 10px rgba(0, 0, 0, 0.08);
  padding: 0.875rem 1rem;
  text-align: left;
  transition: all 0.2s ease;
  width: 100%;
}

.card-tarefa:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  transform: translateX(2px);
}

.card-tarefa.ativa {
  border-color: rgba(0, 0, 0, 0.07);
  border-left-color: #a1a1a1;
  background-color: #c7c7c7;
}

.card-tarefa.tarefa-status-pendente {
  border-left-color: #707070;
}

.card-tarefa.tarefa-status-andamento {
  border-left-color: #FEB300;
}

.card-tarefa.tarefa-status-concluida {
  border-left-color: #00B961;
}

.card-tarefa.tarefa-status-aprovacao {
  border-left-color: #6F00B9;
}

.card-tarefa.tarefa-status-reprovada {
  border-left-color: #ff0000;
}

.card-tarefa-titulo {
  color: #373c43;
  display: block;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
}

.card-tarefa-meta {
  color: #707070;
  font-size: 12px;
}

.card-tarefa-meta i {
  color: #a5b1b8;
  margin-right: 0.25rem;
}

.card-tarefa-progresso {
  color: #707070;
  font-size: 12px;
  white-space: nowrap;
}

.progress-tarefa {
  background-color: #edf1f6;
  border-radius: 999px;
  height: 6px;
}

.progress-tarefa .progress-bar {
  background-color: #a1a1a1;
  border-radius: 999px;
  transition: width 0.3s ease;
}

.badge-tarefas-pendentes {
  background-color: #c7c7c7;
  border: 1px solid rgba(0, 0, 0, 0.07);
  color: #a1a1a1;
  font-size: 11px;
  font-weight: 500;
}

.badge-prioridade {
  background-color: rgba(112, 112, 112, 0.12);
  color: #707070;
  font-size: 11px;
  font-weight: 500;
  text-transform: capitalize;
}

.badge-prioridade-alta,
.badge-prioridade-urgente {
  background-color: rgba(255, 0, 0, 0.12);
  color: #ff0000;
}

.badge-prioridade-normal,
.badge-prioridade-média,
.badge-prioridade-media {
  background-color: rgba(0, 114, 213, 0.12);
  color: #0072D5;
}

.badge-prioridade-baixa {
  background-color: rgba(112, 112, 112, 0.12);
  color: #707070;
}

.card-tarefa-detalhe .card-header-tarefa {
  background-color: #fff;
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
  padding: 1.25rem;
}

.card-tarefa-detalhe .card-footer {
  position: sticky;
  bottom: 0;
  z-index: 3;
}

.tarefa-meta {
  color: #707070;
  font-size: 13px;
  line-height: 1.7;
}

.badge-status {
  border-radius: 999px;
  font-size: 11.5px;
  font-weight: 500;
  padding: 0.4rem 0.7rem;
}

.badge-status-pendente {
  background-color: rgba(254, 179, 0, 0.15);
  color: rgb(203, 143.0590551181, 0);
}

.badge-status-andamento {
  background-color: rgba(0, 114, 213, 0.12);
  color: #0072D5;
}

.badge-status-concluida {
  background-color: rgba(0, 185, 97, 0.12);
  color: rgb(0, 144.2, 75.6075675676);
}

.badge-status-atrasada {
  background-color: rgba(255, 0, 0, 0.12);
  color: #ff0000;
}

.badge-status-aprovacao {
  background-color: rgba(111, 0, 185, 0.12);
  color: #6F00B9;
}

.badge-status-bloqueada {
  background-color: rgba(112, 112, 112, 0.1);
  color: #707070;
}

.badge-status-reprovada {
  background-color: rgba(255, 0, 0, 0.12);
  color: #ff0000;
}

.btn-editar-etapa {
  align-items: center;
  background-color: #fff;
  border: 1px solid #dfe5ec;
  border-radius: 999px;
  color: #707070;
  display: inline-flex;
  flex-shrink: 0;
  font-size: 12px;
  font-weight: 500;
  gap: 0.4rem;
  line-height: 1;
  padding: 0.45rem 0.85rem;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  white-space: nowrap;
}

.btn-editar-etapa i {
  color: #a5b1b8;
  font-size: 11px;
  transition: color 0.2s ease;
}

.btn-editar-etapa:hover,
.btn-editar-etapa:focus-visible {
  background-color: #c7c7c7;
  border-color: #a1a1a1;
  color: #a1a1a1;
}

.btn-editar-etapa:hover i,
.btn-editar-etapa:focus-visible i {
  color: #a1a1a1;
}

.etapa-item {
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.07);
  border-radius: 0.4375rem;
  padding: 1rem;
  transition: border-color 0.2s ease;
}

.etapa-item.concluida {
  background-color: rgba(0, 185, 97, 0.04);
}

.etapa-item.atual {
  border-color: #a1a1a1;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
}

.etapa-numero {
  align-items: center;
  background-color: #edf1f6;
  border-radius: 50%;
  color: #a1a1a1;
  display: flex;
  flex-shrink: 0;
  font-size: 13px;
  font-weight: 600;
  height: 34px;
  justify-content: center;
  width: 34px;
}

.etapa-item.concluida .etapa-numero {
  background-color: rgba(0, 185, 97, 0.15);
}

.etapa-item.concluida .etapa-numero i {
  color: rgb(0, 144.2, 75.6075675676);
}

.etapa-vazia {
  align-items: center;
  border: 1px dashed #d1d5db;
  border-radius: 0.4375rem;
  color: #707070;
  display: flex;
  font-size: 13px;
  gap: 0.5rem;
  justify-content: center;
  padding: 2rem 1rem;
}

.etapa-vazia i {
  color: #a5b1b8;
}

.area-upload {
  background-color: #fafbfa;
  border: 1px dashed #b4b9c0;
  border-radius: 0.4375rem;
  padding: 0.75rem;
}

.pilula-anexo {
  align-items: center;
  background-color: #edf1f6;
  border-radius: 999px;
  color: #373c43;
  display: inline-flex;
  font-size: 12px;
  gap: 0.35rem;
  margin-top: 0.25rem;
  max-width: 100%;
  overflow: hidden;
  padding: 0.35rem 0.7rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pilula-anexo:hover {
  background-color: #c7c7c7;
  color: #a1a1a1;
}

.pilula-anexo i {
  color: #707070;
}

.alerta-reprovacao {
  align-items: flex-start;
  background-color: rgba(255, 0, 0, 0.07);
  border-left: 3px solid #ff0000;
  border-radius: 5px;
  color: #373c43;
  display: flex;
  font-size: 13px;
  gap: 0.5rem;
  padding: 0.75rem;
}

.alerta-reprovacao i {
  color: #ff0000;
  margin-top: 2px;
}

@media (max-width: 1199px) {
  .lista-tarefas {
    max-height: none;
  }
  .card-tarefa-detalhe .card-footer {
    position: static;
  }
}
.type-text {
  background: #0072D5;
  border-radius: 15px;
  font-size: 10px;
  color: #a5a5a5;
  padding: 3px 8px 3px 8px;
}

.dropdown-clientes {
  min-width: 220px;
}

.type-get {
  background: #338933;
}

.type-put {
  background: #E88F09;
}

.type-del {
  background: #93211F;
}

.sumary {
  border: 1.5px solid #d5d5d5;
  border-radius: 10px;
  height: fit-content;
}

.sumary nav > a:hover {
  background: #f5f5f5;
}

hr:not([size]) {
  height: unset;
}

hr {
  border-top: 1px solid #7c7c7c;
}

.card-dashboard {
  border: solid 1px #DFDFDF;
  border-radius: 2px;
  padding: 1.5rem;
}
.card-dashboard i {
  color: #a2a2a2;
}

.dashboard-title {
  font-size: 1rem !important;
}

.page-title h6 {
  font-size: 1.25rem;
}

.nav-tabs .dashboard-tab.active {
  background-color: #a3a3a3;
  border-color: #a3a3a3 !important;
}

.card-atualizacao-dashboard {
  width: auto;
  position: fixed;
  bottom: 0;
  right: 20px;
  background-color: #a5a5a5;
  border-radius: 5px;
  box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.1607843137);
}

.card-atualizacao-titulo {
  color: #707070;
}

.icon-green {
  color: #00A51C !important;
}

.icon-primary {
  color: #a1a1a1 !important;
}

.icon-white {
  color: #ffffff !important;
}

.dropdown-superavit-bank {
  min-width: 200px;
}

.dropdown-item-superavit-bank.active {
  background-color: #a2a2a2 !important;
}
.dropdown-item-superavit-bank:active {
  background-color: #a2a2a2 !important;
}

.dashboard-text-green {
  color: #00BF46;
}

.dashboard-text-red {
  color: #EB0000;
}

.dashboard-text-yellow {
  color: #D5B20B;
}

.dashboard-text-orange {
  color: #FB9827;
}

.card-dash-transferencia:hover {
  border: solid 2px #a2a2a2;
}

.card-dash-transferencia {
  transition: border-color 0.15s ease-in-out;
}

.badge-admin {
  background-color: #EB0000;
  position: absolute !important;
  top: 0 !important;
  left: 95% !important;
  transform: translate(-50%, -50%) !important;
  font-weight: 400;
  border-radius: 6px;
}

.icon-atualizar-info {
  transition: 0.2s ease;
  margin-left: 2px;
}

.btn-atualizar-info {
  border: none;
  background: transparent;
  color: #a2a2a2;
}

.btn-atualizar-info:hover .icon-atualizar-info {
  color: #555555;
}
.btn-atualizar-info:hover {
  color: #555555;
}

.icon-rotate {
  animation: is-rotating 1s infinite;
}

@keyframes is-rotating {
  to {
    transform: rotate(1turn);
  }
}
.card-initial-small {
  overflow: auto;
  white-space: nowrap;
  height: 100%;
  max-height: 600px;
  overflow-y: hidden;
}

.card-content-small {
  width: 100%;
  max-height: 500px;
  min-height: 500px;
  overflow-x: auto;
  display: flex;
  align-items: center;
  overflow-y: auto;
  height: 100%;
}

.card-content-divide-time, .card-content-negotiation,
.card-content-type-business, .card-content-default-time,
.card-content-grafico-tempo-divida, .card-content-month,
.card-content-overview, .container-grafico-cadastrados-periodos {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  display: flex;
  align-items: center;
}

.card-update-small {
  width: 100%;
  max-height: 300px;
  min-height: 300px;
  display: flex;
  align-items: center;
  overflow-x: auto;
  overflow-y: hidden;
}

.card-title-annual {
  min-width: 800px;
  min-height: 400px;
  display: flex;
  align-items: center;
}

.tab-preloader-dashboard, .tab-preloader-dashboard-sb {
  top: 0;
  display: flex;
  position: absolute;
  align-items: center;
  justify-content: center;
}

.button-filter {
  border-radius: 5px;
  box-shadow: 0 0 3px rgba(29, 23, 23, 0.23);
  background-color: #fff;
  border: none;
}
.button-filter:hover, .button-filter:focus {
  box-shadow: 0 0 5px rgba(29, 23, 23, 0.3);
}
.button-filter:active {
  box-shadow: 0 0 3px rgba(29, 23, 23, 0.23);
}

.content-distribuicao-credor {
  width: 100%;
  min-width: 600px;
  max-height: 500px;
}

.preloader-grafico-position {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
}

@media (min-width: 992px) {
  .card-content-small {
    overflow-x: hidden;
  }
  .content-distribuicao-credor {
    width: 100%;
  }
}
.div-meu-saldo p {
  color: #707070;
  font-size: 16px;
}
.div-meu-saldo #btnSaldo {
  color: #707070;
}
.div-meu-saldo button:focus {
  box-shadow: none;
}

.saldo-valor p {
  color: #00A506;
  font-weight: 500;
  font-size: 17px;
}
.saldo-valor div {
  width: 70px;
  border: 2px solid #00A506;
  border-radius: 5px;
}

@media (max-width: 460px) {
  .tab-box-superavit-bank {
    flex-direction: column-reverse;
  }
  .div-meu-saldo {
    margin-top: 3rem;
    justify-content: end;
  }
}
.dashboard-title {
  color: #6c757d;
  font-size: 0.9rem;
}

.detail-item {
  margin-bottom: 0.75rem;
}

.detail-label {
  font-size: 0.85rem;
  color: #6c757d;
  margin-bottom: 0.25rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.detail-value {
  font-size: 1.2rem;
  font-weight: 600;
}

.sub-item {
  padding-left: 1rem;
  position: relative;
}

.sub-item::before {
  content: "";
  position: absolute;
  left: 0.25rem;
  top: 0.4rem;
  width: 6px;
  height: 6px;
  background-color: #6c757d;
  border-radius: 50%;
}

.main-detail-item {
  padding: 0.75rem;
  border-radius: 6px;
  border-left: 4px solid;
  background-color: #f8f9fa;
  margin-bottom: 1rem;
}

.main-detail-item.success {
  border-left-color: #198754;
}

.main-detail-item.warning {
  border-left-color: #ffc107;
}

.main-detail-item.danger {
  border-left-color: #dc3545;
}

.main-detail-label {
  font-size: 1rem;
  font-weight: 450;
  margin-bottom: 0.5rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.main-detail-value {
  font-size: 1.4rem;
  font-weight: 700;
  margin-bottom: 0.75rem;
}

.cards-lateral {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}

.card-atualizacoes {
  flex-direction: row;
  height: auto;
  margin-bottom: 1rem;
}
.card-atualizacoes:last-child {
  margin-bottom: 0;
}

.atualizacoes-container {
  max-height: 400px;
  overflow-y: auto;
}

/* Onboarding do Usuario */
.modal-body-onboarding {
  padding: 120px 30px;
  height: 558px;
}

.text-welcome {
  font-weight: 500;
}

.img-onboarding-home, .img-onboarding-content {
  margin-bottom: 4rem;
  width: 220px;
}

.btn-back-onboarding {
  background-color: #a5a5a5;
  border-color: #a5a5a5;
  color: #131111;
  font-weight: 500;
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.btn-onboarding {
  padding: 7px;
  width: 140px;
  font-size: 14px;
  font-weight: normal;
}

.second-page-onboarding {
  padding: 64px 30px;
  height: 558px;
}

.btn-edit-info {
  background-color: #c5c5c5;
  color: #a1a1a1;
  font-size: 14px;
  border: none;
  font-weight: 500;
  border-radius: 4px;
  width: 81px;
  height: 37px;
}

.form-onboarding {
  display: flex;
  flex-direction: column;
  align-items: baseline;
  margin-bottom: 14px;
}

.form-label-onboarding {
  color: #707070;
  font-size: 14px;
}

.confirm-data {
  display: none;
}

.confirm-data.active {
  display: block;
}

.onboarding-circle-progress {
  background-color: #CED4D9;
  border-radius: 50%;
  width: 10px;
  height: 10px;
}

.onboarding-circle-progress.active {
  background-color: #a1a1a1;
}

.invalid-feedback {
  font-size: 12px;
}

.btn-show-password {
  position: absolute !important;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  height: 100%;
  width: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.btn-show-password {
  position: absolute !important;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: none !important;
  font-size: 12px;
  box-shadow: none !important;
}

@media (min-width: 540px) {
  .form-onboarding {
    flex-direction: row;
    align-items: flex-end;
    gap: 20px;
  }
  .form-onboarding-email {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    gap: 20px;
  }
}
@media (min-width: 576px) {
  .img-onboarding-home {
    width: 290px;
  }
}
@media (min-width: 992px) {
  .form-onboarding {
    padding: 0 100px;
  }
}
@media (min-width: 1200px) {
  .form-onboarding {
    padding: 0 200px;
  }
}
.fw-300 {
  font-weight: 300 !important;
}

.fw-400 {
  font-weight: 400 !important;
}

.fw-500 {
  font-weight: 500 !important;
}

.fw-600 {
  font-weight: 600 !important;
}

.fs-12 {
  font-size: 12px !important;
}

.fs-13 {
  font-size: 13px !important;
}

.fs-14 {
  font-size: 14px !important;
}

.fs-15 {
  font-size: 15px !important;
}

.fs-16 {
  font-size: 16px !important;
}

.fs-17 {
  font-size: 17px !important;
}

.fs-18 {
  font-size: 18px !important;
}

.fs-20 {
  font-size: 20px !important;
}

.fs-21 {
  font-size: 21px !important;
}

.fs-22 {
  font-size: 22px !important;
}

.fs-23 {
  font-size: 23px !important;
}

.fs-25 {
  font-size: 25px !important;
}

.fs-28 {
  font-size: 1.75rem;
}

.fs-40 {
  font-size: 40px;
}

.fs-80 {
  font-size: 4rem;
}

.fs-1 {
  font-size: calc(1.3125rem + 0.75vw) !important;
}

.fs-2 {
  font-size: calc(1.275rem + 0.3vw) !important;
}

.fs-3 {
  font-size: calc(1.25625rem + 0.075vw) !important;
}

.fs-4 {
  font-size: 1.125rem !important;
}

.fs-5 {
  font-size: 0.9375rem !important;
}

.fs-6 {
  font-size: 0.75rem !important;
}

.fw-semibold {
  font-weight: 500 !important;
}

.btn {
  font-size: 12px;
  padding: 8px 16px;
}

.btn-sm {
  font-size: 11px;
  padding: 7px 15px;
  border-radius: 5px;
}

.btn-primary {
  color: #a5a5a5 !important;
  background-color: #a3a3a3 !important;
  border-color: #a3a3a3;
}
.btn-primary i {
  color: #a5a5a5 !important;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  background-color: #c9c9c9 !important;
  border-color: #c9c9c9 !important;
  box-shadow: 0 0 0.5rem rgba(160, 180, 172, 0.3490196078), 0 0 0.75rem rgba(55, 60, 67, 0.2) !important;
}

.btn-primary:active, .btn-primary:focus {
  box-shadow: 0 0 0.5rem rgba(0, 134, 81, 0.3490196078), 0 0 0.75rem rgba(55, 60, 67, 0.2) !important;
}

.btn-secondary {
  color: #a5a5a5 !important;
  background-color: #a4a4a4 !important;
  border-color: #a4a4a4;
}
.btn-secondary i {
  color: #a5a5a5 !important;
}
.btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active {
  background-color: #d1d1d1 !important;
  border-color: #d1d1d1 !important;
  box-shadow: 0 0 0.5rem rgba(160, 180, 172, 0.3490196078), 0 0 0.75rem rgba(55, 60, 67, 0.2) !important;
}

.btn-disabled-light {
  background-color: rgba(128, 128, 128, 0.9215686275) !important;
  border-color: rgba(128, 128, 128, 0.9215686275);
  font-size: 14px;
  color: #fff !important;
}
.btn-disabled-light:hover, .btn-disabled-light:focus, .btn-disabled-light:active {
  background-color: rgba(128, 128, 128, 0.85) !important;
  border-color: rgba(128, 128, 128, 0.8) !important;
}

.btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {
  border-color: transparent;
}

.btn:disabled, .btn.disabled, fieldset:disabled .btn {
  border-color: inherit;
}

.btn, :not(.btn-check) + .btn:active {
  border-color: transparent;
}

.btn-close {
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: 0.25em 0.25em;
  color: #373c43;
  background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23373c43'%3e%3cpath d='m3.786 2.375-1.411 1.411 4.214 4.214-4.214 4.214 1.411 1.411 4.214-4.214 4.214 4.214 1.411-1.411-4.214-4.214 4.214-4.214-1.411-1.411-4.214 4.214z'/%3e%3c/svg%3e") center/1em auto no-repeat;
  border: 0;
  border-radius: 0.4375rem;
  opacity: 0.5;
}
.btn-close:focus {
  box-shadow: none;
}

.btn-close:not([data-bs-dismiss=alert]) {
  color: #363535;
  font-size: 20px;
  opacity: 0.9;
}

.container-comunicado {
  background-color: #F8F8F8;
  border-radius: 2px;
  padding: 1rem 2rem;
  margin-bottom: 1rem;
  display: flex;
  justify-content: space-between;
}

.comentario-opcoes {
  background-color: #ffffff;
  width: 180px;
  height: auto;
  position: absolute;
  z-index: 10;
  box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.1607843137);
  padding: 15px;
  border-radius: 0.35rem;
  top: 25%;
  left: 81%;
}

.btn-round {
  background-color: #a1a1a1;
  border: 0;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  z-index: 9999;
}
.btn-round i {
  color: #fff;
}

.btn-add-secao {
  position: relative;
  top: 12px;
  margin-left: 50%;
  box-shadow: 0px 0px 1px 1px rgba(0, 0, 0, 0.1019607843);
}

.btn-voltar-secao {
  position: absolute;
  top: 50%;
  left: -10px;
}

.btn-excluir-secao {
  position: absolute;
  top: -10px;
  right: -10px;
}

.secao-ckeditor {
  background-color: rgba(222, 222, 222, 0.5019607843);
  width: 100%;
  height: 300px;
}

.secao-divisoria {
  border: 1px solid #a1a1a1;
  margin: 0 2rem;
}

.btn-pulse {
  animation: pulse-animation 2s infinite;
}

.palavra-chave-tag {
  display: inline-block;
  width: auto;
  padding: 5px 10px;
  margin-right: 5px;
  background-color: #a1a1a1;
  color: #fff;
  border-radius: 15px;
}
.palavra-chave-tag .remove-icon {
  display: inline-block;
  margin-left: 5px;
  font-size: 12px;
  cursor: pointer;
  color: #fff;
}

.btn-edicao {
  background-color: #a3a3a3;
  border: 0;
  width: 30px;
  height: 30px;
  border-radius: 50%;
}
.btn-edicao i {
  color: #fff;
}

#comunicadoTexto figure {
  width: auto !important;
  margin: 1rem;
}

#comunicadoTexto img {
  max-width: 100% !important;
  height: auto;
}

#comunicadoTexto .table {
  overflow-x: auto;
}

#alertEdicaoBlocos {
  display: none;
}
#alertEdicaoBlocos i {
  color: #055160;
}

#btnCancelarEdicao {
  display: none;
}

#btnSalvarEdicaoComunicado {
  display: none;
}

.carrossel-imagens-comunicado .owl-nav div {
  top: -35px !important;
}
.carrossel-imagens-comunicado .owl-stage {
  margin: 0 auto;
  display: flex;
}
.carrossel-imagens-comunicado .owl-item {
  display: flex;
  height: auto;
}

.img-carrossel-comunicado {
  max-height: 180px;
  object-fit: contain;
}

.container-detalhes-colaborador {
  background-color: #F5F4F7;
  border-radius: 10px;
}

.icon-action {
  transition: transform 0.15s ease-in-out;
}

.icon-action:hover {
  transform: scale(1.25);
}

#htmlComunicado figure {
  margin: 1rem 0;
}
#htmlComunicado figure img {
  max-width: 100%;
  height: auto;
}
#htmlComunicado .image_resized:not(.image-style-block-align-left, .image-style-block-align-right) {
  margin-left: auto;
  margin-right: auto;
}
#htmlComunicado .image_resized.image-style-block-align-left {
  margin-right: auto;
}
#htmlComunicado .image_resized.image-style-block-align-right {
  margin-left: auto;
}
#htmlComunicado .image:not(.image_resized, .image-style-block-align-left, .image-style-block-align-right) {
  text-align: center;
}
#htmlComunicado .image-style-block-align-left {
  text-align: left;
}
#htmlComunicado .image-style-block-align-right {
  text-align: right;
}

@media (min-width: 768px) {
  .text-md-nowrap {
    white-space: nowrap;
  }
}
@media (max-width: 991px) {
  .secao-divisoria {
    margin: 2rem 0;
    width: 100%;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .tipo-tres {
    flex-wrap: wrap;
    justify-content: center;
  }
  .tipo-tres .secao-ckeditor {
    width: 357px;
  }
  .tipo-tres .secao-divisoria:nth-child(4) {
    margin: 2rem 0;
    width: 100%;
  }
}
@keyframes pulse-animation {
  0% {
    box-shadow: 0 0 0 0px rgba(0, 0, 0, 0.2);
  }
  100% {
    box-shadow: 0 0 0 15px rgba(0, 0, 0, 0);
  }
}
.form-img-logo {
  max-height: 90px;
  max-width: 200px;
  margin-bottom: 2rem;
}

.form-container {
  min-height: 60vh;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: all 0.2s ease;
  border-radius: 10px;
}

.form-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 1rem;
}

.form-progress {
  width: 90px;
  height: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.progress-circle {
  fill: none;
}

.form-progress-bar {
  transform: rotate(-90deg);
}

.progress-circle:nth-child(1) {
  stroke: var(--form-cor-primaria-02);
  stroke-width: 4px;
}

.progress-circle:nth-child(2) {
  stroke: var(--form-cor-primaria);
  stroke-dasharray: 188;
  stroke-dashoffset: 47;
  stroke-linecap: round;
  stroke-width: 6px;
  animation: progress 1s ease;
}

@keyframes progress {
  from {
    stroke-dashoffset: 188;
  }
}
.form-progress-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 18px;
  color: rgb(255, 201, 5);
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  color: var(--form-cor-primaria);
}

.form-progress-title {
  max-width: 300px;
}

.form-campos {
  min-height: 60vh;
  position: relative;
  width: 100%;
}

.form-conclusao {
  text-align: center;
  margin-bottom: 2rem;
  display: none;
}
.form-conclusao .checkmark {
  stroke: var(--form-cor-primaria);
  box-shadow: inset 0px 0px 0px var(--form-cor-primaria);
}
.form-conclusao .checkmark .checkmark__circle {
  stroke: var(--form-cor-primaria);
  fill: var(--form-cor-fundo);
}

.form-header-progress {
  display: flex;
  align-items: center;
}

.form-content {
  min-height: 50vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.home-personalizada-form .form-content, .home-form .form-content {
  padding: 0 0.5rem;
  margin-bottom: 0.5rem;
}

.form-input-text {
  padding: 0.75rem 1rem;
  border-radius: 10px;
  border: 2px solid #F2ECF4;
  width: 500px;
  text-align: center;
  color: #000000 !important;
  background-color: #ffffff;
}

.form-input-text::placeholder {
  color: #6c757d !important;
}

.div-input-check, .div-input-radio {
  padding: 0.75rem 1rem;
  border-radius: 10px;
  border: 2px solid #F2ECF4;
  width: 500px;
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
}

.form-input-text:focus, .div-input-check:hover, .div-input-radio:hover, .form-input-date:focus {
  border-color: var(--form-cor-primaria);
}

.div-input-radio.active, .div-input-check.active {
  border-color: var(--form-cor-primaria);
  background-color: var(--form-cor-primaria-005);
}

.btn-star {
  font-size: 30px;
  padding: 0.25rem;
  margin: 0 0.25rem;
  transition: transform 0.3s ease-out;
}
.btn-star i {
  color: var(--form-cor-primaria);
}

.btn-star:hover {
  transform: scale(1.2);
}

.btn-star:focus, .btn-star:active {
  box-shadow: none !important;
}

.btn-likert {
  border: 1px solid var(--form-cor-primaria);
  background: transparent;
  color: var(--form-cor-texto);
  transition: transform 0.3s ease-out;
  margin: 0 0.25rem;
}

.btn-likert:hover, .btn-likert:active {
  border-color: var(--form-cor-primaria);
  transform: scale(1.1);
  color: var(--form-cor-texto);
}

.btn-likert.active {
  background: var(--form-cor-primaria);
  border-color: var(--form-cor-primaria);
  color: #a5a5a5;
}

.btn-nps {
  width: 45px;
  height: 45px;
  border-radius: 6px;
  background: transparent;
  border: 1px solid var(--form-cor-primaria);
  color: var(--form-cor-texto);
  font-size: 14px;
}

.btn-nps:hover, .btn-nps:active {
  border-color: var(--form-cor-primaria);
  color: var(--form-cor-texto);
}

.btn-nps.active {
  background: var(--form-cor-primaria);
  border-color: var(--form-cor-primaria);
  color: #a5a5a5;
}

.ranking-item {
  cursor: grab;
  border: 1px solid var(--form-cor-primaria) !important;
  color: #373c43;
  margin-bottom: 8px;
  border-radius: 8px;
}
.ranking-item i {
  color: #c3c3c3;
}

.form-range {
  width: 500px;
}

.form-input-date {
  padding: 0.75rem 1rem;
  width: 250px;
  text-align: center;
  border-radius: 10px;
  border: 2px solid #F2ECF4;
  color: #000000 !important;
  background-color: #ffffff;
}

.form-range::-webkit-slider-thumb {
  background-color: var(--form-cor-primaria);
  border: none;
}

.form-range::-moz-range-thumb {
  background-color: var(--form-cor-primaria);
  border: none;
}

.form-range:focus::-webkit-slider-thumb {
  background-color: var(--form-cor-primaria);
}

.form-range:focus::-moz-range-thumb {
  background-color: var(--form-cor-primaria);
}

.div-option-img {
  transition: transform 0.3s ease-out;
}

.div-option-img:hover {
  transform: scale(1.1);
}
.div-option-img:hover .form-option-img {
  border-color: var(--form-cor-primaria);
}

.form-option-img {
  position: relative;
  display: block;
  padding: 1.5rem;
  border-radius: 10px;
  border: 2px solid #F2ECF4;
  width: 100%;
  max-height: 300px;
}

.form-option-img.active {
  border-color: var(--form-cor-primaria);
}
.form-option-img.active .option-img-select {
  display: block;
}

.option-img {
  width: 60%;
  max-height: 250px;
  object-fit: contain;
}

.option-img-select {
  position: absolute;
  top: 15px;
  right: 15px;
  display: none;
}

.fade-enter {
  display: none;
  opacity: 0;
  transform: translateY(20px);
}

.fade-enter-active {
  display: block;
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.4s ease, transform 0.4s ease;
}

.fade-exit {
  opacity: 1;
  transform: translateY(0);
}

.fade-exit-active {
  opacity: 0;
  transform: translateY(-20px);
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.form-question, .form-button {
  display: none;
  opacity: 0;
  transform: translateX(30px);
  transition: opacity 0.35s ease, transform 0.35s ease;
  width: 100%;
}

.form-question.active, .form-button.active {
  display: block;
  opacity: 1;
  transform: translateX(0);
}

.btn-form-voltar i {
  color: var(--form-cor-primaria);
}

.btn-form-voltar:hover, .btn-fullscreen:hover {
  background-color: var(--form-cor-primaria-005);
}

.form-span-erro {
  border: solid 1px;
  padding: 0.25rem;
  border-radius: 8px;
  margin-top: 0.5rem;
  text-align: left !important;
}

@media (max-width: 520px) {
  .form-container, .form-campos {
    min-height: 75vh;
  }
  .form-input-text, .div-input-radio, .div-input-check, .form-range {
    width: 90vw;
  }
  .home-personalizada-form .form-container:not(.fullscreen) .form-input-text, .home-personalizada-form .form-container:not(.fullscreen) .div-input-radio, .home-personalizada-form .form-container:not(.fullscreen) .div-input-check, .home-personalizada-form .form-container:not(.fullscreen) .form-range, .home-personalizada-form .form-container:not(.fullscreen) .dropzone {
    width: 75vw !important;
  }
  .form-progress-title {
    max-width: 250px;
  }
}
@media (max-width: 630px) {
  .form-header {
    flex-direction: column !important;
    justify-content: center !important;
  }
  .form-container.fullscreen {
    padding: 0.5rem !important;
  }
  .container-principal-publico .form-publico .form-content {
    min-height: 60vh !important;
  }
  .home-form .form-container:not(.fullscreen) .form-input-text, .home-form .form-container:not(.fullscreen) .div-input-radio, .home-form .form-container:not(.fullscreen) .div-input-check, .home-form .form-container:not(.fullscreen) .form-range, .home-form .form-container:not(.fullscreen) .dropzone {
    width: 75vw !important;
  }
}
@media (max-width: 767px) {
  .form-header {
    margin-top: 1rem;
  }
  .div-option-img:hover {
    transform: none;
  }
  .form-option-img {
    max-height: 400px;
  }
  .option-img {
    width: 50%;
    max-height: 350px;
  }
}
@media (max-width: 1400px) {
  .home-personalizada-form .form-container:not(.fullscreen) .form-input-text, .home-personalizada-form .form-container:not(.fullscreen) .div-input-radio, .home-personalizada-form .form-container:not(.fullscreen) .div-input-check, .home-personalizada-form .form-container:not(.fullscreen) .form-range, .home-personalizada-form .form-container:not(.fullscreen) .dropzone {
    width: 350px;
  }
}
.btn-fullscreen {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 0.75rem;
}
.btn-fullscreen i {
  color: var(--form-cor-primaria);
}

.form-container.fullscreen {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  background-color: var(--form-cor-fundo, #fff);
  z-index: 9999;
  overflow: auto;
  padding: 1rem 2rem;
  border-radius: 0;
}
.form-container.fullscreen .btn-fullscreen {
  bottom: 20px;
  left: 20px;
}
.form-container.fullscreen .form-campos {
  min-height: 95vh;
}
.form-container.fullscreen .form-content {
  height: 75vh;
  overflow-y: auto;
}
.form-container.fullscreen .div-form-question {
  height: 75vh;
  align-content: center;
}
.form-container.fullscreen .form-row-img {
  width: 70% !important;
}

.checkmark {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  display: block;
  stroke-width: 2;
  stroke: #a1a1a1;
  stroke-miterlimit: 10;
  box-shadow: inset 0px 0px 0px #a1a1a1;
  animation: fill 0.4s ease-in-out 0.4s forwards, scale 0.3s ease-in-out 0.9s both;
  position: relative;
  top: 5px;
  right: 5px;
  margin: 0 auto;
}

.checkmark__circle {
  stroke-dasharray: 166;
  stroke-dashoffset: 166;
  stroke-width: 2;
  stroke-miterlimit: 10;
  stroke: #a1a1a1;
  fill: #fff;
  animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
}

.checkmark__check {
  transform-origin: 50% 50%;
  stroke-dasharray: 48;
  stroke-dashoffset: 48;
  animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards;
}

@keyframes stroke {
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes scale {
  0%, 100% {
    transform: none;
  }
  50% {
    transform: scale3d(1.1, 1.1, 1);
  }
}
@keyframes fill {
  100% {
    box-shadow: inset 0px 0px 0px 30px var(--form-cor-primaria);
  }
}
.container-principal-publico .form-publico {
  min-height: 85vh;
}
.container-principal-publico .form-publico .form-campos {
  min-height: 85vh;
}
.container-principal-publico .form-publico .form-content {
  min-height: 70vh;
}

.card-lista-formulario {
  border-left: 2px solid #a1a1a1 !important;
}

.dropzone {
  background-color: #c7c7c7;
  border: 0;
  border: 2px dashed #a1a1a1;
  width: 500px;
}

.dropzone .dz-preview .dz-progress {
  display: none;
}

.dropzone .dz-preview.dz-image-preview {
  background-color: transparent;
}

.dropzone .dz-remove {
  position: absolute;
  z-index: 9999;
  top: 5px;
  right: 5px;
  z-index: 10;
  font-size: 18px;
  color: #fff;
  background: rgba(0, 0, 0, 0.5);
  border: none;
  border-radius: 50%;
  width: 28px;
  height: 28px;
  text-align: center;
  line-height: 28px;
  cursor: pointer;
}

.dropzone .dz-preview .dz-remove {
  z-index: 9999;
}

.dropzone .dz-remove::before {
  font-family: "Font Awesome 6 Free";
  content: "\f00d";
  font-weight: 900;
}

.dropzone .dz-preview {
  position: relative;
}

.demo-psi-upload-to-cloud {
  color: #A5B1B8;
}

@media (max-width: 520px) {
  .dropzone {
    width: 90vw;
  }
}
body {
  margin: 0;
}

.error-page {
  text-align: center;
  font-family: "Poppins", sans-serif;
}
.error-page .error-box {
  background-color: #ECF0F6;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.error-page .error-body {
  padding: 10px 0;
}
.error-page .error-body h1 {
  font-size: 35px;
  font-weight: 500;
  line-height: 1em;
}
.error-page .text-title {
  color: #373131 !important;
  font-weight: 400;
  margin: 2rem 0 1.2rem;
}
.error-page .text-subtitle {
  color: #373131 !important;
  font-size: 18px;
  margin: 1rem 0;
}
.error-page .img-error {
  width: 100%;
  max-width: 200px;
  margin-top: 3.5rem;
}
.error-page a {
  text-decoration: none;
}
.error-page p {
  margin: 1rem 1rem 3rem;
  font-size: 16px !important;
}
.error-page .footer {
  text-align: center;
  border-top: 1px solid #AEB0B3;
  color: #565656;
  font-weight: 500;
  padding: 10px 0;
  margin-top: 2rem;
}
.error-page .btn-error {
  border: 1px solid #a1a1a1;
  color: #a1a1a1;
  padding: 14px 16px;
  font-weight: 400;
  cursor: pointer;
  border-radius: 18px;
  font-size: 1.1em;
  transition: 0.3s ease;
}
.error-page .error-gif {
  display: flex;
  justify-content: center;
  margin-bottom: 1.5rem;
}

.button-priority-regular {
  background-color: #F5F5F5;
  border-color: #F5F5F5;
  width: 90px;
  color: #292929;
  font-size: 12px;
  padding: 8px;
}
.button-priority-regular:hover, .button-priority-regular:active, .button-priority-regular:focus {
  color: #292929;
  background-color: #EAEAEA !important;
}

.button-priority-average {
  background-color: #FFE6C1;
  border-color: #FFE6C1;
  width: 90px;
  color: #292929;
  font-size: 12px;
  padding: 8px;
}
.button-priority-average:hover, .button-priority-average:active, .button-priority-average:focus {
  color: #292929;
  background-color: #FCD9A9 !important;
}

.button-priority-high {
  background-color: #FCC6C2;
  border-color: #FCC6C2;
  width: 90px;
  color: #292929;
  font-size: 12px;
  padding: 8px;
}
.button-priority-high:hover, .button-priority-high:active, .button-priority-high:focus {
  color: #292929;
  background-color: #F9B3AE !important;
}

.button-priority-selected {
  border: 1px solid #a1a1a1;
}

.card-links-checklist {
  color: #2A2A2A;
  background-color: #F5F5F5;
  padding: 16px;
  border-radius: 4px;
  position: relative;
}

.label-checklist {
  display: block;
  position: relative;
  padding-left: 28px;
  cursor: pointer;
  font-size: 13px !important;
  user-select: none;
}

.label-checklist input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.checkmark-checklist {
  position: absolute;
  top: 0;
  left: 0;
  height: 18px;
  width: 18px;
  background-color: #eee;
  border-radius: 15px;
  border: 1px solid #a1a1a1;
}

.label-checklist:hover input ~ .checkmark-checklist {
  background-color: #ccc;
}

.label-checklist input:checked ~ .checkmark-checklist {
  background-color: #a1a1a1;
}

.checkmark-checklist:after {
  content: "";
  position: absolute;
  display: none;
}

.label-checklist input:checked ~ .checkmark-checklist:after {
  display: block;
}

.label-checklist .checkmark-checklist:after {
  left: 6px;
  top: 3px;
  width: 5px;
  height: 9px;
  border: solid white;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.label-checklist input[type=checkbox] {
  margin-right: 10px;
}

.label-checklist input[type=checkbox]:checked ~ .text-label {
  text-decoration: line-through;
}

.label-checklist .text-label {
  position: relative;
}

.label-checklist input:checked ~ .text-label {
  color: #2A2A2A;
}

.label-checklist input:checked ~ .text-label::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  height: 1px;
  background-color: #b3afaf;
  transform: translateY(-50%);
  z-index: 1;
}

.container-checklist-aside, .container-new-checklist-aside {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.container-categorias-checklist {
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 0.75rem;
}

.btn-categoria-checklist {
  background-color: #F5F5F5;
  border: 1px solid transparent;
  color: #2A2A2A;
  font-size: 12px;
  padding: 4px 10px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
}
.btn-categoria-checklist:hover {
  background-color: #EAEAEA;
}
.btn-categoria-checklist.active {
  border-color: #a1a1a1;
  font-weight: 500;
}
.btn-categoria-checklist i.fa-xmark {
  opacity: 0.6;
}
.btn-categoria-checklist i.fa-xmark:hover {
  opacity: 1;
}

.cor-categoria.active {
  border: 2px solid #555 !important;
}

.cor-categoria {
  position: relative;
  cursor: pointer;
  transition: transform 0.15s ease;
  /* Garante espaço para o anel de seleção sem deslocar layout */
  outline: none !important;
  box-shadow: none !important; /* reseta o Bootstrap */
}

.cor-categoria:focus {
  outline: none !important;
  box-shadow: none !important;
}

.cor-categoria:hover {
  transform: scale(1.15);
}

/* Anel de seleção feito com box-shadow em vez de outline */
.cor-categoria.active {
  transform: scale(1.15);
  /* Anel branco interno + anel azul externo */
  box-shadow: 0 0 0 2px #fff, 0 0 0 4px #0d6efd !important;
}

.container-tabs-checklist .nav-link:focus-visible, .container-tabs-checklist .nav-callout:focus-visible {
  outline: none !important;
}

.card-header {
  padding: 15px 20px;
  background-color: #fff;
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
  min-height: 3.5rem;
}

.toolbar-start {
  margin-bottom: 0.75rem;
}

#divListaChecklist .offcanvas-body {
  max-height: 90vh !important;
}

.divFormListaChecklist {
  min-height: 85vh;
}

@media (min-width: 367px) {
  .btn-checklist-aside {
    width: 100%;
    max-width: 174px;
  }
  .container-checklist-aside, .container-new-checklist-aside {
    flex-direction: row;
    justify-content: space-between;
  }
}
@media (min-width: 768px) {
  .toolbar {
    align-items: center;
    display: flex;
  }
  .toolbar-start {
    flex: 1 1 0;
    margin-bottom: 0;
  }
}
.btn-modal-anotacoes {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background-color: #fff;
  border: 0;
  cursor: pointer;
}
.btn-modal-anotacoes i {
  vertical-align: middle;
  font-size: 16px;
  color: #a2a2a2;
}

.data-anotacoes {
  border-radius: 25px;
  background-color: #a2a2a2 !important;
  color: #a5a5a5 !important;
  border-color: #a5a5a5 !important;
  padding: 6px 18px;
  transition: 0.3s ease;
}
.data-anotacoes:hover {
  box-shadow: 0 0.1rem 0.5rem rgba(165, 141, 141, 0.5), 0 0.25rem 1rem rgba(55, 60, 67, 0.2) !important;
  background-color: #a2a2a2 !important;
  border-color: #a2a2a2 !important;
  color: #a5a5a5 !important;
}
.data-anotacoes i {
  color: #a5a5a5;
}

.anotacoes-modal {
  z-index: 1060;
}

.texto-anotacao {
  color: #363636;
}

.btn-anotacoes {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1rem;
}

.btn-acoes-anotacao {
  display: flex;
  gap: 0.75rem;
}

.color-panel button {
  width: 20px;
  height: 20px;
}

.color-panel .card-panel-blue {
  background-color: #a0bec9;
}

.color-panel .card-panel-yellow {
  background-color: #fceebd;
}

.color-panel .card-panel-red {
  background-color: #dca3aa;
}

.color-panel .rounded-circle.active {
  border: 1px solid #555555 !important;
}

.pg-app {
  --pg-font: 'Poppins', sans-serif;
  --pg-radius: 0.4375rem;
  --pg-radius-lg: .75rem;
  /* light */
  --pg-bg: #f3f5f9;
  --pg-surface: #fff;
  --pg-surface-2: #f3f5f9;
  --pg-surface-3: #edf1f6;
  --pg-border: rgba(0,0,0,.07);
  --pg-text: #373c43;
  --pg-text-2: #707070;
  --pg-text-3: #a5b1b8;
  --pg-accent: #a1a1a1;
  --pg-accent-strong: #c1c1c1;
  --pg-accent-soft: #c7c7c7;
  --pg-green: #00B961;
  --pg-green-soft: rgba(0, 185, 97, 0.14);
  --pg-amber: #FEB300;
  --pg-amber-soft: rgba(254, 179, 0, 0.16);
  --pg-red: #ff0000;
  --pg-red-soft: rgba(255, 0, 0, 0.13);
  --pg-gold: #FEB300;
  --pg-shadow: 0px 1px 10px rgba(0, 0, 0, .16);
  --pg-shadow-lg: 0 8px 30px rgba(0, 0, 0, .24);
  --pg-card-face: #fff;
  --pg-card-back: linear-gradient(135deg, #a1a1a1 0%, #c1c1c1 100%);
  --pg-accent-contrast: #fff;
  --pg-icon: #a8a8a8;
  font-family: var(--pg-font);
  background: var(--pg-bg);
  color: var(--pg-text);
  font-size: 15px;
  line-height: 1.5;
  border-radius: var(--pg-radius-lg);
  padding: 20px;
  min-height: 70vh;
  transition: background 0.25s, color 0.25s;
}

.pg-app[data-theme=dark] {
  --pg-bg: #12151c;
  --pg-surface: #1a1e27;
  --pg-surface-2: #20242f;
  --pg-surface-3: #2a2f3d;
  --pg-border: #2c3241;
  --pg-text: #e8ebf2;
  --pg-text-2: #a3abc0;
  --pg-text-3: #6b7488;
  /* O WhiteLabel troca os placeholders (#a1a1a1…) por texto no CSS já compilado, então
     lighten()/rgba() do Sass agiriam sobre o cinza do placeholder. A derivação fica pro
     navegador: mantém o matiz da rede e fixa saturação/luminosidade legíveis no escuro.
     Primeira linha é fallback (color-mix); a de baixo vence onde há sintaxe relativa. */
  --pg-accent: color-mix(in srgb, #a1a1a1 45%, #fff);
  --pg-accent: hsl(from #a1a1a1 h clamp(30, s, 65) 62);
  --pg-accent-strong: color-mix(in srgb, #a1a1a1 30%, #fff);
  --pg-accent-strong: hsl(from #a1a1a1 h clamp(30, s, 65) 72);
  --pg-accent-soft: color-mix(in srgb, #a1a1a1 25%, transparent);
  --pg-accent-soft: hsl(from #a1a1a1 h clamp(30, s, 65) 62 / .18);
  --pg-accent-contrast: #0f1117;
  --pg-icon: var(--pg-accent);
  --pg-green: rgb(0, 225.8, 118.3924324324);
  --pg-green-soft: rgba(0, 185, 97, 0.16);
  --pg-amber: rgb(255, 191.4566929134, 39.8);
  --pg-amber-soft: rgba(254, 179, 0, 0.16);
  --pg-red: rgb(255, 40.8, 40.8);
  --pg-red-soft: rgba(255, 0, 0, 0.16);
  --pg-gold: rgb(255, 191.4566929134, 39.8);
  --pg-shadow: 0 1px 3px rgba(0,0,0,.3), 0 4px 16px rgba(0,0,0,.25);
  --pg-shadow-lg: 0 8px 30px rgba(0,0,0,.5);
  --pg-card-face: #20242f;
  /* Verso da carta: cor da rede indo pra cinza. Em rgb() de propósito: hex cinza como
     #c7c7c7 é placeholder do WhiteLabel e seria trocado pela cor da rede. */
  --pg-card-back: linear-gradient(135deg, #a1a1a1 0%, rgb(199, 199, 199) 100%);
}

.pg-app * {
  box-sizing: border-box;
}

/* O _custom.scss pinta todo <i> com a cor de ícone da rede — escura demais no tema escuro.
   Mesma especificidade das regras de ícone abaixo, então cada uma que fixa cor continua valendo. */
.pg-app i {
  color: var(--pg-icon);
}

/* Ícone sobre fundo colorido ou dentro de badge/pílula/alerta acompanha o texto do container */
.pg-app .pg-logo-mark i, .pg-app .pg-badge i, .pg-app .pg-status-pill i, .pg-app .pg-alert i {
  color: inherit;
}

.pg-app a {
  color: var(--pg-accent);
  text-decoration: none;
}

.pg-app a:hover {
  color: var(--pg-accent-strong);
}

.pg-app h1, .pg-app h2, .pg-app h3, .pg-app h4, .pg-app h5 {
  color: var(--pg-text);
  margin: 0;
  font-family: var(--pg-font);
}

/* ---------- inputs ---------- */
.pg-app input[type=text],
.pg-app input[type=search],
.pg-app input:not([type]),
.pg-app textarea,
.pg-app select {
  font-family: var(--pg-font);
  font-size: 14px;
  color: var(--pg-text);
  background: var(--pg-surface);
  border: 1px solid var(--pg-border);
  border-radius: var(--pg-radius);
  padding: 8px 12px;
  width: 100%;
  transition: border-color 0.15s, box-shadow 0.15s;
}

.pg-app input:focus, .pg-app textarea:focus, .pg-app select:focus {
  outline: none;
  border-color: var(--pg-accent);
  box-shadow: 0 0 0 3px var(--pg-accent-soft);
}

.pg-app label {
  font-size: 13px;
  font-weight: 500;
  color: var(--pg-text-2);
  display: block;
  margin-bottom: 6px;
}

.pg-app ::placeholder {
  color: var(--pg-text-3);
}

.pg-app input:disabled, .pg-app select:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

/* ---------- select2 ----------
   O dropdown vai pro body: o tema escuro entra por html[data-theme] e as cores são fixas,
   porque o WhiteLabel compila este SCSS mais de uma vez com $primary diferente e a última
   cópia vence fora do .pg-app. */
.pg-app .select2-container.pg-select2 .select2-selection--single {
  height: 39px !important;
  background: var(--pg-surface);
  border: 1px solid var(--pg-border) !important;
  border-radius: var(--pg-radius);
}

.pg-app .select2-container.pg-select2 .select2-selection__rendered {
  line-height: 37px !important;
  padding-left: 12px;
  font-family: var(--pg-font);
  font-size: 14px;
  color: var(--pg-text) !important;
}

.pg-app .select2-container.pg-select2 .select2-selection__placeholder {
  color: var(--pg-text-3);
}

.pg-app .select2-container.pg-select2 .select2-selection__arrow {
  height: 37px !important;
}

.pg-app .select2-container.pg-select2 .select2-selection__arrow b {
  border-top-color: var(--pg-text-3);
}

.pg-app .select2-container.pg-select2.select2-container--open .select2-selection--single {
  border-color: var(--pg-accent) !important;
  box-shadow: 0 0 0 3px var(--pg-accent-soft);
}

.pg-select2-dropdown {
  font-family: "Poppins", sans-serif;
  font-size: 14px;
}

.pg-select2-dropdown .select2-dropdown {
  border: 1px solid rgba(0, 0, 0, 0.07);
  border-radius: 0.4375rem;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.16) !important;
  overflow: hidden;
}

.pg-select2-dropdown .select2-search--dropdown {
  padding: 8px;
}

.pg-select2-dropdown .select2-search__field {
  padding: 6px 10px;
  font-family: inherit;
  font-size: 13px;
  border: 1px solid rgba(0, 0, 0, 0.1) !important;
  box-shadow: none !important;
}

.pg-select2-dropdown .select2-results__option {
  padding: 7px 12px;
  font-size: 13.5px;
  color: #373c43;
}

.pg-select2-dropdown .select2-results__option[aria-selected=true] {
  background: #edf1f6;
  color: #373c43;
}

.pg-select2-dropdown .select2-results__option--highlighted[aria-selected] {
  background: #e3e8ef;
  color: #373c43;
}

.pg-select2-dropdown .select2-results__options {
  max-height: 220px;
}

.pg-select2-dropdown.pg-select2-compact .select2-results__options {
  max-height: 110px;
}

html[data-theme=dark] .pg-select2-dropdown .select2-dropdown {
  background: #20242f;
  border-color: #2c3241;
  color: #e8ebf2;
}

html[data-theme=dark] .pg-select2-dropdown .select2-search__field {
  background: #1a1e27;
  border-color: #2c3241 !important;
  color: #e8ebf2;
}

html[data-theme=dark] .pg-select2-dropdown .select2-results__option {
  color: #e8ebf2;
}

html[data-theme=dark] .pg-select2-dropdown .select2-results__option[aria-selected=true] {
  background: #2a2f3d;
  color: #e8ebf2;
}

html[data-theme=dark] .pg-select2-dropdown .select2-results__option--highlighted[aria-selected] {
  background: #343a4a;
  color: #fff;
}

/* ---------- tipografia ----------
   O layout carrega a Poppins só em 300/400/500/700. Peso 600 cai no 700 e tudo vira o mesmo
   negrito: título, rótulo, nome, badge. Regra: 700 é título (h1/h2, número da carta, timer),
   500 é rótulo e nome, 400 é texto corrido. */
/* ---------- botões ---------- */
.pg-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: var(--pg-radius);
  font-weight: 500;
  font-size: 13px;
  transition: all 0.15s;
  white-space: nowrap;
  border: 1px solid transparent;
  cursor: pointer;
  background: none;
  color: inherit;
  font-family: var(--pg-font);
  text-decoration: none;
  line-height: 1.4;
}

.pg-btn:active {
  transform: translateY(1px);
}

.pg-btn-primary {
  background: #a3a3a3 !important;
  color: #a5a5a5 !important;
}

.pg-btn-primary:hover {
  background: #c9c9c9 !important;
  box-shadow: 0 0 0.5rem rgba(160, 180, 172, 0.3490196078), 0 0 0.75rem rgba(55, 60, 67, 0.2);
  color: #a5a5a5;
}

.pg-btn-secondary {
  background: #a4a4a4 !important;
  border-color: #a4a4a4;
  color: #a5a5a5 !important;
}

.pg-btn-secondary:hover {
  background: #d1d1d1 !important;
  border-color: #d1d1d1;
  box-shadow: 0 0 0.5rem rgba(160, 180, 172, 0.3490196078), 0 0 0.75rem rgba(55, 60, 67, 0.2);
  color: #a5a5a5;
}

.pg-btn-ghost {
  color: var(--pg-text-2) !important;
}

.pg-btn-ghost:hover {
  background: var(--pg-surface-2);
  color: var(--pg-text) !important;
}

.pg-btn-danger {
  background: var(--pg-red-soft);
  color: var(--pg-red) !important;
}

.pg-btn-danger:hover {
  background: var(--pg-red);
  color: #fff !important;
}

.pg-btn-success {
  background: var(--pg-green);
  color: #fff !important;
}

.pg-btn-success:hover {
  filter: brightness(1.08);
  color: #fff;
}

.pg-btn-sm {
  padding: 6px 12px;
  font-size: 12.5px;
}

.pg-btn-icon {
  padding: 8px;
  border-radius: 8px;
}

.pg-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
  pointer-events: none;
}

.pg-btn i {
  font-size: 13px;
  color: inherit;
}

.pg-btn-sm i {
  font-size: 12px;
}

/* ---------- badges ---------- */
.pg-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11.5px;
  font-weight: 500;
  padding: 3px 9px;
  border-radius: 99px;
  letter-spacing: 0.02em;
  white-space: nowrap;
  flex-shrink: 0;
}

.pg-badge i {
  font-size: 10px;
}

.pg-badge-green {
  background: var(--pg-green-soft);
  color: var(--pg-green);
}

.pg-badge-amber {
  background: var(--pg-amber-soft);
  color: var(--pg-amber);
}

.pg-badge-red {
  background: var(--pg-red-soft);
  color: var(--pg-red);
}

.pg-badge-accent {
  background: var(--pg-accent-soft);
  color: var(--pg-accent);
}

.pg-badge-neutral {
  background: var(--pg-surface-3);
  color: var(--pg-text-2);
}

/* ---------- painéis ---------- */
.pg-panel {
  background: var(--pg-surface);
  border: 0;
  border-radius: var(--pg-radius-lg);
  box-shadow: var(--pg-shadow);
}

.pg-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 14px 18px;
  border-bottom: 1px solid var(--pg-border);
}

.pg-panel-title {
  font-size: 14px;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 8px;
}

.pg-panel-title i {
  font-size: 14px;
  color: var(--pg-text-3);
}

.pg-app .pg-panel-title .pg-espectadores {
  color: var(--pg-amber);
  font-size: 13px;
  margin-left: 4px;
  cursor: help;
}

.pg-avatar {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  flex-shrink: 0;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12.5px;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.02em;
}

/* A imagem cobre as iniciais; sem fundo próprio, pra elas aparecerem enquanto carrega ou se
   o serviço não responder (o onerror remove a imagem de vez) */
.pg-avatar-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ---------- cabeçalho de página ---------- */
.pg-page-head {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.pg-page-head .pg-logo-mark {
  width: 38px;
  height: 38px;
  border-radius: var(--pg-radius);
  background: var(--pg-card-back);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 17px;
  flex-shrink: 0;
}

.pg-page-title h1 {
  font-size: 21px;
  font-weight: 700;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.pg-page-title p {
  color: var(--pg-text-2);
  font-size: 13px;
  margin: 0;
}

.pg-spacer {
  flex: 1;
}

.pg-session-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--pg-surface-2);
  border: 1px solid var(--pg-border);
  border-radius: 99px;
  padding: 5px 12px 5px 14px;
  font-size: 13px;
  font-weight: 500;
  color: var(--pg-text-2);
}

.pg-session-chip .code {
  color: var(--pg-accent);
  font-weight: 700;
  letter-spacing: 0.04em;
}

.pg-session-chip button {
  display: flex;
  color: var(--pg-text-3);
  padding: 2px;
  border-radius: 6px;
  border: none;
  background: none;
  cursor: pointer;
}

.pg-session-chip button:hover {
  color: var(--pg-accent);
}

/* ---------- navegação por abas do jogo ---------- */
.pg-nav {
  display: flex;
  gap: 2px;
  background: var(--pg-surface-2);
  border-radius: var(--pg-radius);
  padding: 4px;
}

.pg-nav button {
  border: none;
  background: none;
  cursor: pointer;
  font-family: var(--pg-font);
  color: var(--pg-text-2);
  font-size: 13.5px;
  font-weight: 500;
  padding: 7px 14px;
  border-radius: calc(var(--pg-radius) - 2px);
  transition: all 0.15s;
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.pg-nav button:hover {
  color: var(--pg-text);
}

.pg-nav button.active {
  background: var(--pg-surface);
  color: var(--pg-accent);
  box-shadow: var(--pg-shadow);
}

/* ---------- telas ---------- */
.pg-screen {
  display: none;
  animation: pgFadeIn 0.25s;
}

.pg-screen.active {
  display: block;
}

@keyframes pgFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes pgPopIn {
  from {
    opacity: 0;
    transform: scale(0.94) translateY(8px);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}
/* ---------- toast ---------- */
#pg-toast {
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%) translateY(80px);
  background: var(--pg-text);
  color: var(--pg-bg);
  padding: 10px 20px;
  border-radius: 99px;
  font-size: 13.5px;
  font-weight: 600;
  z-index: 2000;
  opacity: 0;
  transition: all 0.3s;
  pointer-events: none;
  box-shadow: var(--pg-shadow-lg);
  display: flex;
  gap: 8px;
  align-items: center;
  font-family: var(--pg-font);
}

#pg-toast.show {
  transform: translateX(-50%) translateY(0);
  opacity: 1;
}

#pg-toast i {
  font-size: 13px;
}

.pg-popover {
  --bs-popover-max-width:460px;
  --bs-popover-font-size:13px;
  --bs-popover-border-radius:.5rem;
  --bs-popover-header-font-size:12px;
  font-family: "Poppins", sans-serif;
}

.pg-app .pg-info-tip {
  color: var(--pg-text-3);
  font-size: 12px;
  cursor: help;
}

.pg-app .pg-info-tip:hover {
  color: var(--pg-accent);
}

.pg-tooltip {
  --bs-tooltip-max-width:280px;
  --bs-tooltip-font-size:12.5px;
  --bs-tooltip-border-radius:.5rem;
  font-family: "Poppins", sans-serif;
}

html[data-theme=dark] .pg-tooltip {
  --bs-tooltip-bg:#2a2f3d;
  --bs-tooltip-color:#e8ebf2;
}

.pg-popover .popover-header {
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 8px 14px;
}

.pg-popover .popover-body {
  line-height: 1.55;
  max-height: 280px;
  overflow-y: auto;
  overscroll-behavior: contain;
  white-space: pre-line;
  padding: 12px 14px;
}

html[data-theme=dark] .pg-popover {
  --bs-popover-bg:#20242f;
  --bs-popover-body-color:#e8ebf2;
  --bs-popover-border-color:#2c3241;
  --bs-popover-header-bg:#2a2f3d;
  --bs-popover-header-color:#a3abc0;
}

/* ---------- modal ---------- */
.pg-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(10, 12, 20, 0.55);
  backdrop-filter: blur(3px);
  z-index: 1600;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.pg-modal-overlay.open {
  display: flex;
  animation: pgFadeIn 0.2s;
}

.pg-modal {
  background: var(--pg-surface);
  border: 0;
  border-radius: var(--pg-radius-lg);
  width: 100%;
  max-width: 480px;
  max-height: 88vh;
  overflow-y: auto;
  box-shadow: var(--pg-shadow-lg);
  animation: pgPopIn 0.25s cubic-bezier(0.2, 1.2, 0.4, 1);
}

.pg-modal-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 22px 0;
}

.pg-modal-head h3 {
  font-size: 17px;
  font-weight: 700;
}

.pg-modal-body {
  padding: 18px 22px 22px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* O template pinta <p> de #363636 — invisível no escuro */
.pg-modal-body p {
  color: var(--pg-text);
  font-size: 14px;
}

.pg-check-row {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 500;
  margin: 0;
  cursor: pointer;
  font-size: 14px;
  color: var(--pg-text);
}

.pg-check-row input[type=checkbox] {
  width: auto;
  accent-color: var(--pg-accent);
}

/* ---------- tabelas ---------- */
.pg-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  color: var(--pg-text);
}

.pg-table th {
  text-align: left;
  padding: 11px 18px;
  font-size: 11.5px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--pg-text-3);
  border-bottom: 1px solid var(--pg-border);
  font-weight: 600;
  background: transparent;
}

.pg-table td {
  padding: 13px 18px;
  border-bottom: 1px solid var(--pg-border);
  vertical-align: middle;
}

.pg-table tr:last-child td {
  border-bottom: none;
}

.pg-table.hover tbody tr {
  transition: background 0.12s;
}

.pg-table.hover tbody tr:hover td {
  background: var(--pg-surface-2);
}

.pg-table-wrap {
  overflow-x: auto;
}

.pg-empty {
  padding: 48px 24px;
  text-align: center;
  color: var(--pg-text-3);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

.pg-empty i {
  font-size: 32px;
  opacity: 0.5;
}

.pg-empty b {
  color: var(--pg-text-2);
  font-size: 15px;
  font-weight: 600;
}

.pg-empty span {
  font-size: 13.5px;
  max-width: 300px;
}

/* ---------- pílulas de tipo/status de work item ---------- */
.pg-tipo-badge {
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  background: var(--tipo-cor, #6c757d);
  color: #fff;
  font-size: 11px;
  flex-shrink: 0;
  vertical-align: middle;
}

.pg-tipo-badge i {
  color: inherit;
}

.pg-tipo-badge.lg {
  width: 34px;
  height: 34px;
  font-size: 15px;
  border-radius: 9px;
}

.pg-status-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 2px 10px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--status-cor, #6c757d) 14%, transparent);
  color: var(--status-cor, #6c757d);
  font-weight: 500;
  font-size: 12px;
  white-space: nowrap;
}

.pg-status-pill i {
  font-size: 7px;
}

.pg-estimate-pill {
  min-width: 34px;
  height: 34px;
  padding: 0 8px;
  border-radius: calc(var(--pg-radius) - 1px);
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 14px;
  background: var(--pg-accent-soft);
  color: var(--pg-accent);
}

.pg-estimate-pill.sm {
  min-width: 28px;
  height: 28px;
  font-size: 12.5px;
}

/* ============================================================
   LOBBY
   ============================================================ */
.pg-lobby-grid {
  display: grid;
  grid-template-columns: 400px 1fr;
  gap: 20px;
  align-items: start;
}

.pg-lobby-grid > *, .pg-voting-layout > *, .pg-results-layout > * {
  min-width: 0;
}

.pg-participant-row {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 11px 18px;
  border-bottom: 1px solid var(--pg-border);
}

.pg-participant-row:last-child {
  border-bottom: none;
}

.pg-p-info {
  flex: 1;
  min-width: 0;
  overflow: hidden;
}

.pg-p-name {
  font-weight: 500;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--pg-text);
  min-width: 0;
}

.pg-p-name-txt {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}

.pg-p-voce {
  color: var(--pg-text-3);
  font-weight: 500;
  flex-shrink: 0;
}

.pg-p-name .crown {
  color: var(--pg-gold);
  font-size: 12px;
  flex-shrink: 0;
}

.pg-p-meta {
  font-size: 12px;
  color: var(--pg-text-3);
  display: flex;
  align-items: center;
  gap: 6px;
}

.pg-status-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  display: inline-block;
}

.pg-status-dot.online {
  background: var(--pg-green);
}

.pg-status-dot.away {
  background: var(--pg-amber);
}

.pg-backlog-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 18px;
  border-bottom: 1px solid var(--pg-border);
  transition: background 0.15s;
}

.pg-backlog-item:last-child {
  border-bottom: none;
}

.pg-backlog-item:hover {
  background: var(--pg-surface-2);
}

.pg-backlog-item.dragging {
  opacity: 0.4;
}

.pg-backlog-item.drag-over {
  box-shadow: inset 0 2px 0 var(--pg-accent);
}

.pg-drag-handle {
  color: var(--pg-text-3);
  cursor: grab;
  display: flex;
  flex-shrink: 0;
  font-size: 13px;
}

.pg-bi-body {
  flex: 1;
  min-width: 0;
}

.pg-bi-title {
  font-weight: 500;
  font-size: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--pg-text);
}

.pg-bi-title .wi-id {
  color: var(--pg-text-3);
  font-weight: 500;
  margin-right: 4px;
}

.pg-bi-desc {
  font-size: 12.5px;
  color: var(--pg-text-3);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  cursor: pointer;
}

.pg-bi-desc:hover {
  color: var(--pg-text-2);
}

.pg-bi-status {
  flex-shrink: 0;
  width: 112px;
  display: flex;
  align-items: center;
}

.pg-bi-actions {
  display: flex;
  gap: 4px;
  flex-shrink: 0;
  min-width: 104px;
  justify-content: flex-end;
}

/* ============================================================
   VOTAÇÃO
   ============================================================ */
.pg-voting-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--pg-task-w, clamp(400px, 34vw, 540px));
  gap: 20px;
  align-items: start;
}

.pg-voting-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}

.pg-task-col {
  position: relative;
  align-self: stretch;
  min-width: 0;
}

/* Handle de redimensionamento: ocupa o gap entre as colunas na altura toda da linha */
.pg-col-resizer {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -16px;
  width: 12px;
  cursor: col-resize;
  z-index: 5;
  display: flex;
  justify-content: center;
}

.pg-col-resizer::before {
  content: "";
  width: 4px;
  border-radius: 99px;
  background: var(--pg-accent);
  opacity: 0;
  transition: opacity 0.15s;
}

.pg-col-resizer:hover::before, body.pg-resizing .pg-col-resizer::before {
  opacity: 0.6;
}

body.pg-resizing {
  cursor: col-resize;
  user-select: none;
}

body.pg-resizing iframe {
  pointer-events: none;
}

/* A task acompanha o scroll da coluna de votação; descrição longa rola dentro do painel,
   não empurra a página. */
.pg-task-focus {
  position: sticky;
  top: 16px;
  max-height: calc(100vh - 32px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.pg-task-focus .pg-item-header {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.pg-task-focus .pg-item-header > * {
  flex-shrink: 0;
}

.pg-task-focus .pg-item-details {
  flex: 0 1 auto;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.pg-task-focus .pg-item-header h2 {
  font-size: 24px;
  letter-spacing: -0.01em;
  line-height: 1.25;
}

.pg-task-focus .pg-descricao {
  font-size: 15px;
  line-height: 1.7;
  color: var(--pg-text-2);
}

.pg-task-focus .pg-descricao b, .pg-task-focus .pg-descricao strong {
  font-weight: 500;
  color: var(--pg-text);
}

.pg-next-panel .pg-item-details {
  max-height: 340px;
  overflow-y: auto;
  overscroll-behavior: contain;
}

/* ---------- tasks anteriores (estimadas ou puladas) ---------- */
.pg-prev-list {
  max-height: 360px;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.pg-prev-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 11px 18px;
  border-bottom: 1px solid var(--pg-border);
}

.pg-prev-item:last-child {
  border-bottom: none;
}

.pg-prev-body {
  flex: 1;
  min-width: 0;
}

.pg-prev-title {
  font-weight: 500;
  font-size: 13.5px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--pg-text);
}

.pg-prev-title .wi-id {
  color: var(--pg-text-3);
  font-weight: 500;
  margin-right: 4px;
}

.pg-prev-meta {
  font-size: 12px;
  color: var(--pg-text-3);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pg-desc-popover {
  cursor: pointer;
}

.pg-desc-popover:hover {
  color: var(--pg-text-2);
}

.pg-prev-result {
  flex-shrink: 0;
  min-width: 74px;
  display: flex;
  justify-content: flex-end;
}

.pg-prev-actions {
  display: flex;
  gap: 4px;
  flex-shrink: 0;
}

.pg-next-body {
  padding: 16px 18px;
}

.pg-next-title {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.3;
  margin: 2px 0 0;
  color: var(--pg-text);
  overflow-wrap: anywhere;
}

.pg-table-carousel {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 14px 12px;
}

.pg-table-carousel .pg-table-cards {
  display: flex;
  gap: 12px;
  flex: 1;
  min-width: 0;
  padding: 6px 2px;
  overflow-x: auto;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.pg-table-carousel .pg-table-cards::-webkit-scrollbar {
  display: none;
}

.pg-table-carousel .pg-pcard {
  flex: 0 0 96px;
}

.pg-voting-col.is-narrow .pg-table-carousel .pg-table-cards {
  flex-wrap: wrap;
  justify-content: center;
  overflow: visible;
  row-gap: 14px;
}

.pg-voting-col.is-narrow .pg-table-carousel .pg-pcard {
  flex: 0 0 80px;
}

.pg-voting-col.is-narrow .pg-carousel-nav {
  display: none !important;
}

.pg-voting-col.is-narrow .pg-panel-head {
  flex-wrap: wrap;
}

.pg-carousel-nav {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--pg-border);
  background: var(--pg-surface-2);
  color: var(--pg-text-2);
  transition: background 0.15s, color 0.15s;
}

.pg-carousel-nav:hover {
  background: var(--pg-surface-3);
  color: var(--pg-text);
}

.pg-carousel-nav:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.pg-carousel-nav i {
  font-size: 12px;
}

.pg-item-header {
  padding: 20px 22px;
}

.pg-item-kicker {
  font-size: 11px;
  font-weight: 500;
  color: var(--pg-accent);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.pg-item-header h2 {
  font-size: 21px;
  font-weight: 700;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.pg-item-tags {
  display: flex;
  gap: 6px;
  margin-top: 10px;
  flex-wrap: wrap;
  align-items: center;
}

.pg-detail-toggle {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 12px;
  border: none;
  background: none;
  cursor: pointer;
  font-size: 12.5px;
  font-weight: 500;
  color: var(--pg-text-3);
  padding: 0 0 6px;
  font-family: var(--pg-font);
  letter-spacing: 0.02em;
  border-bottom: 2px solid transparent;
}

.pg-detail-toggle:hover {
  color: var(--pg-accent);
}

.pg-item-tabs {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
  align-items: flex-end;
  margin-top: 14px;
}

.pg-item-tabs .pg-detail-toggle {
  margin-top: 0;
}

.pg-item-tabs .pg-detail-toggle.open {
  color: var(--pg-text);
  border-bottom-color: var(--pg-accent);
}

.pg-item-tabs .pg-badge {
  font-size: 10.5px;
  padding: 1px 7px;
  margin-left: 2px;
}

/* Dentro de .pg-descricao a regra que neutraliza o <p> do template (font-size:inherit em div/span)
   levaria a referência ao PBI pros 15px do texto; a especificidade maior aqui mantém os 12px. */
.pg-pai-ref, .pg-descricao .pg-pai-ref, .pg-descricao .pg-pai-ref a {
  font-size: 12px;
  color: var(--pg-text-3);
  margin-bottom: 10px;
  overflow-wrap: anywhere;
  line-height: 1.5;
}

.pg-pai-ref a, .pg-descricao .pg-pai-ref a {
  color: var(--pg-accent);
  margin: 0;
}

.pg-anexo {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  border-radius: var(--pg-radius);
  background: var(--pg-surface-2);
  margin-bottom: 6px;
  font-size: 13.5px;
  color: var(--pg-text) !important;
  min-width: 0;
}

.pg-anexo:hover {
  background: var(--pg-surface-3);
}

.pg-anexo i {
  font-size: 16px;
  color: var(--pg-text-3);
  flex-shrink: 0;
}

.pg-anexo-nome {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 500;
}

.pg-anexo-coment {
  color: var(--pg-text-3);
  font-size: 12px;
  max-width: 40%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pg-anexo-tam {
  color: var(--pg-text-3);
  font-size: 12px;
  flex-shrink: 0;
}

.pg-anexo .pg-anexo-acao {
  font-size: 13px;
  color: var(--pg-text-3);
}

.pg-anexo:hover .pg-anexo-acao {
  color: var(--pg-accent);
}

.pg-anexos-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}

.pg-anexo-thumb {
  position: relative;
  display: block;
  aspect-ratio: 4/3;
  border-radius: 8px;
  overflow: hidden;
  background: var(--pg-surface-2);
  border: 1px solid var(--pg-border);
}

.pg-anexo-thumb > a:first-child {
  display: block;
  width: 100%;
  height: 100%;
}

.pg-anexo-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.2s;
}

.pg-anexo-thumb-baixar {
  position: absolute;
  top: 6px;
  right: 6px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  line-height: 1;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.55);
  color: #fff !important;
  opacity: 0;
  transition: opacity 0.15s;
}

.pg-anexo-thumb:hover .pg-anexo-thumb-baixar {
  opacity: 1;
}

.pg-app .pg-anexo-thumb-baixar i, .pg-app .pg-anexo-baixar i {
  display: block;
  line-height: 1;
  width: 1em;
  text-align: center;
}

.pg-app .pg-anexo-thumb-baixar i {
  color: #fff;
  font-size: 12px;
}

.pg-anexo-linha {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 6px;
}

.pg-anexo-linha .pg-anexo {
  flex: 1;
  margin-bottom: 0;
}

.pg-anexo-baixar {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: var(--pg-radius);
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--pg-surface-2);
  color: var(--pg-text-2) !important;
  line-height: 1;
  padding: 0;
  font-size: 13px;
}

.pg-anexo-baixar:hover {
  background: var(--pg-surface-3);
  color: var(--pg-accent) !important;
}

.pg-anexo-thumb:hover img {
  transform: scale(1.04);
}

.pg-anexo-thumb-nome {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 4px 8px;
  font-size: 11px;
  color: #fff;
  background: linear-gradient(transparent, rgba(0, 0, 0, 0.7));
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pg-detail-toggle i {
  font-size: 11px;
  transition: transform 0.2s;
}

.pg-detail-toggle.open i {
  transform: rotate(180deg);
}

.pg-item-details {
  display: none;
  margin-top: 0;
  padding-top: 14px;
  border-top: 1px solid var(--pg-border);
}

.pg-item-details.open {
  display: block;
  animation: pgFadeIn 0.2s;
}

/* O HTML da descrição vem do Azure DevOps com largura, altura e cor inline — nada aqui
   pode confiar no conteúdo pra caber na coluna. */
.pg-descricao {
  font-size: 14px;
  line-height: 1.55;
  color: var(--pg-text-2);
  overflow-wrap: anywhere;
  min-width: 0;
}

.pg-descricao :is(p, div, span, li, td, th) {
  color: inherit;
  font-size: inherit;
  letter-spacing: inherit;
}

.pg-descricao p {
  margin: 0 0 0.6em;
}

.pg-descricao img, .pg-descricao video, .pg-descricao iframe {
  max-width: 100% !important;
  height: auto !important;
  border-radius: 8px;
}

.pg-descricao table {
  display: block;
  max-width: 100%;
  width: auto !important;
  overflow-x: auto;
  border-collapse: collapse;
  font-size: 13px;
  margin: 8px 0;
}

.pg-descricao th, .pg-descricao td {
  border: 1px solid var(--pg-border);
  padding: 4px 8px;
  white-space: nowrap;
}

.pg-descricao pre {
  white-space: pre-wrap;
  background: var(--pg-surface-2);
  padding: 10px 12px;
  border-radius: 6px;
  font-size: 12px;
  margin: 8px 0;
  color: var(--pg-text);
}

.pg-descricao code {
  background: var(--pg-surface-2);
  padding: 1px 6px;
  border-radius: 4px;
  font-size: 12px;
}

.pg-descricao blockquote {
  border-left: 3px solid var(--pg-border);
  margin: 8px 0 0;
  padding-left: 12px;
  color: var(--pg-text-3);
  font-size: 13px;
}

.pg-app[data-theme=dark] .pg-descricao [style*=color] {
  color: inherit !important;
  background-color: transparent !important;
}

.pg-timer-bar {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  padding: 12px 22px;
  border-top: 1px solid var(--pg-border);
}

#pg-timer-display {
  font-size: 22px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  min-width: 74px;
  letter-spacing: 0.02em;
}

#pg-timer-display.danger {
  color: var(--pg-red);
  animation: pgPulseTimer 1s infinite;
}

@keyframes pgPulseTimer {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.6;
    transform: scale(1.05);
  }
}
.pg-timer-controls {
  display: flex;
  gap: 6px;
  align-items: center;
}

.pg-timer-controls select {
  width: auto;
  padding: 6px 28px 6px 10px;
  font-size: 13px;
}

.pg-deck-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(76px, 1fr));
  gap: 12px;
  padding: 20px 22px;
}

.pg-vote-card {
  aspect-ratio: 2.6/3.6;
  border-radius: var(--pg-radius);
  position: relative;
  background: var(--pg-card-face);
  border: 1.5px solid var(--pg-border);
  box-shadow: var(--pg-shadow);
  cursor: pointer;
  font-family: var(--pg-font);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  font-weight: 700;
  color: var(--pg-text);
  transition: transform 0.18s cubic-bezier(0.2, 1.4, 0.4, 1), box-shadow 0.18s, border-color 0.15s, background 0.15s;
  user-select: none;
}

.pg-vote-card::before, .pg-vote-card::after {
  content: attr(data-val);
  position: absolute;
  font-size: 10px;
  font-weight: 700;
  color: var(--pg-text-3);
}

.pg-vote-card::before {
  top: 7px;
  left: 9px;
}

.pg-vote-card::after {
  bottom: 7px;
  right: 9px;
  transform: rotate(180deg);
}

.pg-vote-card:hover {
  transform: translateY(-8px);
  box-shadow: var(--pg-shadow-lg);
  border-color: var(--pg-accent);
}

.pg-vote-card.selected {
  transform: translateY(-12px) scale(1.05);
  background: var(--pg-accent);
  border-color: var(--pg-accent);
  color: var(--pg-accent-contrast);
  box-shadow: 0 12px 28px var(--pg-accent-soft), var(--pg-shadow-lg);
}

.pg-vote-card.selected::before, .pg-vote-card.selected::after {
  color: var(--pg-accent-contrast);
  opacity: 0.65;
}

.pg-vote-card.special {
  color: var(--pg-accent);
}

.pg-vote-card.special.selected {
  color: var(--pg-accent-contrast);
}

.pg-vote-card:disabled {
  opacity: 0.5;
  pointer-events: none;
}

/* Espectador: carta visível mas claramente fora de alcance — sem hover, sem elevação */
.pg-vote-card.bloqueada {
  opacity: 0.45;
  pointer-events: none;
  filter: saturate(0.3);
  box-shadow: none;
  cursor: not-allowed;
}

.pg-vote-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  padding: 0 22px 20px;
}

/* cartas viradas dos participantes */
.pg-table-cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  padding: 16px;
}

.pg-pcard {
  perspective: 600px;
  text-align: center;
}

.pg-pcard-inner {
  aspect-ratio: 2.6/3.4;
  border-radius: calc(var(--pg-radius) + 1px);
  position: relative;
  transform-style: preserve-3d;
  transition: transform 0.6s cubic-bezier(0.35, 1.1, 0.4, 1);
  margin-bottom: 7px;
}

.pg-pcard.flipped .pg-pcard-inner {
  transform: rotateY(180deg);
}

.pg-pcard-face {
  position: absolute;
  inset: 0;
  border-radius: calc(var(--pg-radius) + 1px);
  backface-visibility: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pg-pcard-back {
  background: var(--pg-card-back);
  box-shadow: var(--pg-shadow);
}

.pg-pcard-back::after {
  content: "";
  position: absolute;
  inset: 6px;
  border-radius: calc(var(--pg-radius) - 2px);
  border: 1.5px dashed rgba(255, 255, 255, 0.4);
}

.pg-pcard-avatar {
  position: relative;
  z-index: 1;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  border: 2px solid rgba(255, 255, 255, 0.7);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}

.pg-pcard-check {
  position: absolute;
  z-index: 2;
  right: 10px;
  bottom: 10px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--pg-green);
  color: #fff;
  font-size: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid var(--pg-card-face);
}

/* Botão "trocar meu avatar": só na carta do próprio usuário, canto inferior esquerdo do verso */
.pg-pcard-refresh {
  position: absolute;
  z-index: 2;
  left: 8px;
  bottom: 8px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  background: rgba(255, 255, 255, 0.9);
  color: var(--pg-text-2);
  font-size: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.25);
  opacity: 0;
  transition: opacity 0.15s, transform 0.15s;
}

.pg-pcard-refresh i {
  color: #a8a8a8;
}

.pg-pcard-check i {
  color: inherit;
}

.pg-pcard:hover .pg-pcard-refresh {
  opacity: 1;
}

.pg-pcard-refresh:hover {
  transform: rotate(90deg);
  color: var(--pg-accent);
}

.pg-avatar-refresh {
  opacity: 0;
  transition: opacity 0.15s;
}

.pg-participant-row:hover .pg-avatar-refresh {
  opacity: 1;
}

/* X de remover: discreto, só no hover da linha, vermelho ao passar nele */
.pg-remover-membro {
  opacity: 0;
  transition: opacity 0.15s;
  margin-left: 2px;
}

.pg-participant-row:hover .pg-remover-membro {
  opacity: 1;
}

.pg-app .pg-remover-membro:hover {
  color: var(--pg-red) !important;
  background: var(--pg-red-soft);
}

.pg-voting-col.is-narrow .pg-pcard-avatar {
  width: 48px;
  height: 48px;
  font-size: 12px;
}

.pg-voting-col.is-narrow .pg-pcard-refresh {
  left: 5px;
  bottom: 5px;
}

.pg-voting-col.is-narrow .pg-pcard-check {
  right: 7px;
  bottom: 7px;
}

.pg-pcard-front {
  background: var(--pg-card-face);
  border: 1.5px solid var(--pg-accent);
  transform: rotateY(180deg);
  font-size: 21px;
  font-weight: 700;
  color: var(--pg-accent);
  box-shadow: var(--pg-shadow);
}

.pg-pcard.waiting .pg-pcard-back {
  opacity: 0.6;
  box-shadow: none;
}

.pg-pcard.waiting .pg-pcard-back::after {
  border-color: rgba(255, 255, 255, 0.2);
}

.pg-pcard.voted.pulse .pg-pcard-back {
  animation: pgVotedPulse 0.7s cubic-bezier(0.3, 1.4, 0.4, 1);
}

@keyframes pgVotedPulse {
  0% {
    transform: scale(1);
  }
  40% {
    transform: scale(1.1);
    box-shadow: 0 0 0 8px var(--pg-accent-soft);
  }
  100% {
    transform: scale(1);
  }
}
.pg-pcard-name {
  font-size: 12px;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--pg-text);
}

.pg-pcard-name .crown, .pg-rcard-name .crown {
  color: var(--pg-gold);
  font-size: 10px;
}

.pg-app .pg-pcard-name .voce, .pg-app .pg-rcard-name .voce {
  color: var(--pg-accent);
  font-size: 10px;
}

.pg-pcard-status {
  font-size: 10.5px;
  color: var(--pg-text-3);
  font-weight: 500;
}

.pg-pcard-status.did-vote {
  color: var(--pg-green);
  font-weight: 500;
}

.pg-vote-counter {
  padding: 12px 16px;
  border-top: 1px solid var(--pg-border);
  font-size: 13px;
  font-weight: 400;
  color: var(--pg-text-2);
  text-align: center;
}

.pg-vote-counter b {
  color: var(--pg-accent);
}

/* ============================================================
   RESULTADOS
   ============================================================ */
.pg-results-layout {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 20px;
  align-items: start;
}

.pg-revealed-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(90px, 1fr));
  gap: 14px;
  padding: 20px 22px;
}

.pg-rcard {
  text-align: center;
}

.pg-rcard-val {
  aspect-ratio: 2.6/3.4;
  border-radius: var(--pg-radius);
  background: var(--pg-card-face);
  border: 1.5px solid var(--pg-border);
  box-shadow: var(--pg-shadow);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 8px;
  color: var(--pg-accent);
  animation: pgFlipIn 0.55s cubic-bezier(0.35, 1.1, 0.4, 1) backwards;
}

.pg-rcard:nth-child(2) .pg-rcard-val {
  animation-delay: 0.08s;
}

.pg-rcard:nth-child(3) .pg-rcard-val {
  animation-delay: 0.16s;
}

.pg-rcard:nth-child(4) .pg-rcard-val {
  animation-delay: 0.24s;
}

.pg-rcard:nth-child(5) .pg-rcard-val {
  animation-delay: 0.32s;
}

@keyframes pgFlipIn {
  from {
    transform: rotateY(90deg);
    opacity: 0;
  }
  to {
    transform: rotateY(0);
    opacity: 1;
  }
}
.pg-rcard.outlier .pg-rcard-val {
  border-color: var(--pg-amber);
  color: var(--pg-amber);
  box-shadow: 0 0 0 3px var(--pg-amber-soft), var(--pg-shadow);
}

.pg-rcard-tag {
  display: none;
  margin-top: 4px;
}

.pg-rcard.outlier .pg-rcard-tag {
  display: inline-flex;
}

.pg-rcard-name {
  font-size: 12.5px;
  font-weight: 500;
  color: var(--pg-text);
}

.pg-stats-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  padding: 16px;
}

.pg-stat {
  background: var(--pg-surface-2);
  border-radius: var(--pg-radius);
  padding: 12px 14px;
}

.pg-stat .k {
  font-size: 11.5px;
  font-weight: 600;
  color: var(--pg-text-3);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.pg-stat .v {
  font-size: 20px;
  font-weight: 700;
  margin-top: 2px;
  color: var(--pg-text);
}

.pg-dist-chart {
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.pg-dist-row {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
}

.pg-dist-label {
  width: 36px;
  font-weight: 700;
  text-align: right;
  flex-shrink: 0;
  color: var(--pg-text);
}

.pg-dist-track {
  flex: 1;
  height: 22px;
  background: var(--pg-surface-2);
  border-radius: 6px;
  overflow: hidden;
}

.pg-dist-fill {
  height: 100%;
  background: var(--pg-accent);
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding-right: 7px;
  color: var(--pg-accent-contrast);
  font-size: 11.5px;
  font-weight: 700;
  min-width: 24px;
  animation: pgGrowBar 0.6s cubic-bezier(0.3, 1, 0.4, 1) backwards;
}

@keyframes pgGrowBar {
  from {
    width: 0 !important;
  }
}
.pg-final-estimate {
  padding: 16px;
  border-top: 1px solid var(--pg-border);
}

.pg-final-estimate .suggestion {
  font-size: 13px;
  color: var(--pg-text-2);
  margin-bottom: 10px;
}

.pg-final-estimate .suggestion b {
  color: var(--pg-accent);
}

.pg-final-row {
  display: flex;
  gap: 8px;
}

.pg-final-row input {
  font-size: 18px;
  font-weight: 700;
  text-align: center;
  max-width: 90px;
}

/* ============================================================
   WIZARD (novo jogo)
   ============================================================ */
.pg-wizard-steps {
  display: flex;
  gap: 6px;
  margin-bottom: 22px;
  flex-wrap: wrap;
}

.pg-wizard-steps button {
  flex: 1;
  min-width: 110px;
  border: 1.5px solid var(--pg-border);
  background: var(--pg-surface);
  border-radius: var(--pg-radius);
  padding: 10px 8px;
  cursor: pointer;
  font-family: var(--pg-font);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--pg-text-2);
  transition: all 0.15s;
}

.pg-wizard-steps .step-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--pg-surface-3);
  font-size: 11.5px;
  font-weight: 700;
  color: var(--pg-text-2);
}

.pg-wizard-steps button.active {
  border-color: var(--pg-accent);
  background: var(--pg-accent-soft);
  color: var(--pg-accent);
}

.pg-wizard-steps button.active .step-num {
  background: var(--pg-accent);
  color: var(--pg-accent-contrast);
}

.pg-wizard-steps button.done {
  border-color: var(--pg-green);
  color: var(--pg-green);
}

.pg-wizard-steps button.done .step-num {
  background: var(--pg-green);
  color: #fff;
}

.pg-deck-choice {
  border: 1.5px solid var(--pg-border);
  border-radius: var(--pg-radius-lg);
  background: var(--pg-surface);
  padding: 16px;
  cursor: pointer;
  transition: all 0.15s;
  height: 100%;
  text-align: center;
}

.pg-deck-choice:hover {
  transform: translateY(-2px);
  box-shadow: var(--pg-shadow);
  border-color: var(--pg-accent);
}

.pg-deck-choice.selecionado {
  border-color: var(--pg-accent);
  background: var(--pg-accent-soft);
  box-shadow: 0 0 0 3px var(--pg-accent-soft);
}

.pg-deck-choice h6 {
  font-size: 14.5px;
  font-weight: 700;
  margin-bottom: 2px;
  color: var(--pg-text);
}

.pg-deck-choice p {
  font-size: 12.5px;
  color: var(--pg-text-3);
  margin: 0 0 10px;
}

.pg-mini-cards {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 5px;
}

.pg-mini-card {
  min-width: 26px;
  height: 34px;
  padding: 0 5px;
  border-radius: 6px;
  background: var(--pg-card-face);
  border: 1px solid var(--pg-border);
  box-shadow: var(--pg-shadow);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11.5px;
  font-weight: 700;
  color: var(--pg-text);
}

.pg-deck-choice.selecionado .pg-mini-card {
  border-color: var(--pg-accent);
  color: var(--pg-accent);
}

.pg-calc-card {
  border: 1.5px solid var(--pg-border);
  border-radius: var(--pg-radius);
  background: var(--pg-surface);
  padding: 13px 14px;
  cursor: pointer;
  transition: all 0.15s;
  height: 100%;
}

.pg-calc-card:hover {
  border-color: var(--pg-accent);
}

.pg-calc-card.selecionado {
  border-color: var(--pg-accent);
  background: var(--pg-accent-soft);
}

.pg-calc-card .t {
  font-weight: 500;
  font-size: 14px;
  color: var(--pg-text);
  display: flex;
  align-items: center;
  gap: 8px;
}

.pg-calc-card .d {
  font-size: 12.5px;
  color: var(--pg-text-3);
  margin-top: 2px;
}

.pg-calc-card.selecionado .t {
  color: var(--pg-accent);
}

.pg-result-list {
  border: 1px solid var(--pg-border);
  border-radius: var(--pg-radius);
  overflow-y: auto;
  background: var(--pg-surface);
}

.pg-result-item {
  cursor: pointer;
  padding: 9px 12px;
  border-bottom: 1px solid var(--pg-border);
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13.5px;
  transition: background 0.12s;
  color: var(--pg-text);
}

.pg-result-item:hover {
  background: var(--pg-surface-2);
}

.pg-result-item:last-child {
  border-bottom: none;
}

.pg-result-item .add-ic {
  color: var(--pg-accent);
  margin-left: auto;
  font-size: 12px;
}

.pg-member-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  border-radius: var(--pg-radius);
  background: var(--pg-surface-2);
  margin-bottom: 8px;
}

.pg-member-row .nm {
  font-weight: 500;
  font-size: 13.5px;
  color: var(--pg-text);
}

.pg-member-row .em {
  font-size: 12px;
  color: var(--pg-text-3);
}

.pg-review-box {
  border: 1px solid var(--pg-border);
  border-radius: var(--pg-radius-lg);
  padding: 16px;
  height: 100%;
  background: var(--pg-surface);
}

.pg-review-box h6 {
  font-size: 11.5px;
  font-weight: 600;
  color: var(--pg-text-3);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.pg-review-box .linha {
  font-size: 14px;
  margin-bottom: 6px;
  color: var(--pg-text);
}

.pg-review-box .linha b {
  font-weight: 600;
}

.pg-alert {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 12px 16px;
  border-radius: var(--pg-radius);
  background: var(--pg-accent-soft);
  color: var(--pg-accent);
  font-size: 13.5px;
  font-weight: 500;
}

.pg-alert.amber {
  background: var(--pg-amber-soft);
  color: var(--pg-amber);
}

.pg-alert i {
  margin-top: 2px;
}

/* ============================================================
   CONFIGURAÇÕES — switch
   ============================================================ */
.pg-switch {
  position: relative;
  display: inline-block;
  width: 40px;
  height: 22px;
  flex-shrink: 0;
}

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

.pg-switch .slider {
  position: absolute;
  cursor: pointer;
  inset: 0;
  background: var(--pg-surface-3);
  border-radius: 99px;
  transition: 0.2s;
}

.pg-switch .slider::before {
  content: "";
  position: absolute;
  height: 16px;
  width: 16px;
  left: 3px;
  top: 3px;
  background: #fff;
  border-radius: 50%;
  transition: 0.2s;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
}

.pg-switch input:checked + .slider {
  background: var(--pg-accent);
}

.pg-switch input:checked + .slider::before {
  transform: translateX(18px);
}

tr.pg-linha-desabilitada td {
  opacity: 0.5;
}

tr.pg-linha-desabilitada .pg-tipo-badge {
  filter: grayscale(1);
}

/* ============================================================
   ATRIBUIÇÃO — jogo finalizado, só o admin
   ============================================================ */
.pg-atrib-config {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 16px 18px;
}

.pg-atrib-hint {
  display: block;
  margin-top: 6px;
  font-size: 12px;
  color: var(--pg-text-3);
}

.pg-app .pg-atrib-tipos-btn {
  width: 100%;
  justify-content: flex-start;
}

.pg-atrib-tipos-btn .pg-atrib-tipos-seta {
  margin-left: auto;
  font-size: 11px;
  color: var(--pg-text-3);
}

.pg-atrib-tipos-lista {
  display: flex;
  flex-direction: column;
  max-height: 320px;
  overflow-y: auto;
  border: 1px solid var(--pg-border);
  border-radius: var(--pg-radius);
}

.pg-app .pg-atrib-tipo-linha {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 10px 12px;
  border-bottom: 1px solid var(--pg-border);
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
  color: var(--pg-text);
  transition: background 0.12s;
}

.pg-app .pg-atrib-tipo-linha:last-child {
  border-bottom: none;
}

.pg-app .pg-atrib-tipo-linha:hover {
  background: var(--pg-surface-2);
}

.pg-atrib-tipo-nome {
  flex: 1;
  min-width: 0;
}

.pg-atrib-tipo-nome small {
  display: block;
  font-size: 12px;
  font-weight: 400;
  color: var(--pg-text-3);
}

.pg-atrib-item {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.pg-atrib-item-txt {
  min-width: 0;
  font-weight: 500;
  line-height: 1.35;
}

.pg-atrib-item-txt .wi-id {
  color: var(--pg-text-3);
  font-weight: 500;
  margin-right: 4px;
}

.pg-atrib-sub {
  display: block;
  font-size: 12px;
  color: var(--pg-text-3);
  margin-top: 2px;
  font-weight: 400;
}

.pg-atrib-table td {
  padding: 11px 14px;
}

.pg-atrib-table select {
  min-width: 220px;
  padding: 7px 10px;
  font-size: 13px;
}

.pg-atrib-motivo {
  font-size: 12.5px;
  color: var(--pg-text-3);
}

.pg-atrib-realizada .pg-atrib-table th:nth-child(5), .pg-atrib-realizada .pg-atrib-table td:nth-child(5) {
  display: none;
}

.pg-atrib-rodape {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  padding: 14px 18px;
  border-top: 1px solid var(--pg-border);
}

.pg-atrib-resumo {
  font-size: 13px;
  color: var(--pg-text-3);
}

.pg-atrib-lista-confirmar {
  display: flex;
  flex-direction: column;
  gap: 6px;
  max-height: 240px;
  overflow-y: auto;
}

.pg-atrib-lista-confirmar div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 13.5px;
  color: var(--pg-text);
}

@media (max-width: 900px) {
  .pg-atrib-table select {
    min-width: 160px;
  }
}
/* ============================================================
   RESPONSIVO
   ============================================================ */
@media (max-width: 900px) {
  .pg-app {
    padding: 12px;
  }
  .pg-lobby-grid, .pg-voting-layout, .pg-results-layout {
    grid-template-columns: 1fr;
  }
  .pg-deck-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
  }
  .pg-table-cards {
    grid-template-columns: repeat(3, 1fr);
  }
  .pg-item-header h2 {
    font-size: 18px;
  }
  .pg-task-focus .pg-item-header h2 {
    font-size: 19px;
  }
  #pg-timer-display {
    font-size: 19px;
  }
  .pg-page-head .pg-spacer {
    display: none;
  }
  .pg-page-head .pg-nav {
    order: 10;
    width: 100%;
    overflow-x: auto;
  }
  .pg-page-head .pg-nav button {
    flex: 1;
    justify-content: center;
  }
  /* Em coluna única a task vem antes do deck: primeiro se lê o que se vai estimar */
  .pg-task-col {
    order: -1;
  }
  .pg-col-resizer {
    display: none;
  }
  .pg-task-focus {
    position: static;
    max-height: none;
  }
  .pg-task-focus .pg-item-details {
    max-height: 55vh;
  }
  .pg-prev-title {
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
}
/* App Empresários Movidos por Propósito (prova de conceito), em /Conexoes.
   Entra no bundle do WhiteLabel, que é carregado em todas as telas: tudo fica sob .mp-corpo.

   As cores da rede chegam como placeholders cinza (#a1a1a1…) trocados por texto depois de
   compilados, então lighten()/rgba() do Sass agiriam sobre o cinza. Derivação de cor da rede
   é sempre color-mix(), montado como string para o compilador não avaliar.
   Neutros, status, estrelas e avatares das pessoas têm cor própria: não mudam de uma rede para outra. */
.mp-corpo {
  --mp-primaria: #a1a1a1;
  --mp-primaria-escura: color-mix(in srgb, #a1a1a1 62%, #000);
  --mp-primaria-profunda: color-mix(in srgb, #a1a1a1 28%, #060b16);
  --mp-destaque: #a3a3a3;
  --mp-destaque-contraste: #a5a5a5;
  --mp-destaque-claro: color-mix(in srgb, #a3a3a3 72%, #fff);
  --mp-destaque-suave: color-mix(in srgb, #a3a3a3 12%, #fff);
  --mp-destaque-texto: color-mix(in srgb, #a3a3a3 82%, #000);
  --mp-gradiente: linear-gradient(135deg, var(--mp-destaque) 0%, var(--mp-destaque-claro) 100%);
  --mp-sombra-destaque: 0 8px 20px color-mix(in srgb, #a3a3a3 35%, transparent);
  --mp-sucesso: #00B961;
  --mp-sucesso-suave: rgba(0, 185, 97, 0.12);
  --mp-alerta-texto: rgb(131.6, 92.7417322835, 0);
  --mp-alerta-suave: rgba(254, 179, 0, 0.16);
  --mp-perigo: #ff0000;
  --mp-estrela: #ffb547;
  --mp-fundo: #f3f5fa;
  --mp-superficie: #ffffff;
  --mp-texto: #1c2331;
  --mp-texto-2: #5b6578;
  --mp-texto-3: #8e97aa;
  --mp-borda: #e3e7ef;
  --mp-neutro: #e8ecf3;
  --mp-sombra: 0 10px 30px rgba(20, 28, 45, .10);
  --mp-sombra-forte: 0 18px 48px rgba(20, 28, 45, .22);
  --mp-raio: 18px;
  --mp-abas-altura: 64px;
  --mp-topo: max(env(safe-area-inset-top), 14px);
  --mp-base: env(safe-area-inset-bottom);
  --mp-transicao: 280ms cubic-bezier(.2, .8, .2, 1);
  margin: 0;
  min-height: 100%;
  overscroll-behavior: none;
  overflow-x: hidden;
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;
  color: var(--mp-texto);
  background: var(--mp-primaria-profunda) !important;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
}
.mp-corpo *, .mp-corpo *::before, .mp-corpo *::after {
  box-sizing: border-box;
}
.mp-corpo {
  /* O _custom.scss pinta todo <i> com a cor de ícone da rede. */
}
.mp-corpo i {
  color: inherit;
}
.mp-corpo button {
  font: inherit;
  color: inherit;
  cursor: pointer;
  border: 0;
  background: none;
  padding: 0;
}
.mp-corpo button:disabled {
  cursor: not-allowed;
}
.mp-corpo [hidden] {
  display: none !important;
}
.mp-corpo {
  /* ============================ Palco (desktop) ============================ */
}
.mp-corpo .mp-palco {
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 80px;
  padding: 24px;
  background: radial-gradient(circle at 12% 18%, color-mix(in srgb, #a3a3a3 38%, transparent), transparent 40%), radial-gradient(circle at 88% 82%, color-mix(in srgb, #a1a1a1 45%, transparent), transparent 42%), linear-gradient(160deg, var(--mp-primaria-escura) 0%, var(--mp-primaria-profunda) 100%);
}
.mp-corpo .mp-apresentacao {
  max-width: 380px;
  color: #fff;
}
.mp-corpo .mp-apresentacao h1 {
  margin: 0 0 12px;
  font-size: 38px;
  line-height: 1.12;
  font-weight: 700;
  color: #fff;
}
.mp-corpo .mp-apresentacao p {
  margin: 0 0 28px;
  color: rgba(255, 255, 255, 0.78);
  font-size: 17px;
  line-height: 1.55;
}
.mp-corpo .mp-apresentacao ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 14px;
}
.mp-corpo .mp-apresentacao li {
  display: flex;
  align-items: center;
  gap: 12px;
  font-weight: 500;
}
.mp-corpo .mp-apresentacao li i {
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.14);
}
.mp-corpo .mp-aparelho {
  position: relative;
  flex: 0 0 auto;
  width: 400px;
  height: min(860px, calc(100dvh - 48px));
  min-height: 640px;
  padding: 12px;
  border-radius: 54px;
  background: #05080f;
  box-shadow: 0 0 0 2px #2a3242, 0 40px 90px rgba(0, 0, 0, 0.55);
  /* Ilha do celular: só existe na moldura do desktop. */
}
.mp-corpo .mp-aparelho::before {
  content: "";
  position: absolute;
  top: 22px;
  left: 50%;
  z-index: 50;
  width: 110px;
  height: 30px;
  border-radius: 20px;
  background: #05080f;
  transform: translateX(-50%);
  pointer-events: none;
}
.mp-corpo .mp-aparelho .mp-app {
  --mp-topo: 50px;
  --mp-base: 10px;
}
.mp-corpo {
  /* ============================ App ============================ */
}
.mp-corpo .mp-app {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 42px;
  background: var(--mp-fundo);
  isolation: isolate;
  font-size: 15px;
  line-height: 1.4;
}
.mp-corpo .mp-app h1, .mp-corpo .mp-app h2, .mp-corpo .mp-app h3, .mp-corpo .mp-app p {
  color: inherit;
}
.mp-corpo .mp-tela {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  background: var(--mp-fundo);
  opacity: 0;
  visibility: hidden;
  transform: translateX(28px);
  transition: opacity var(--mp-transicao), transform var(--mp-transicao), visibility 0s linear 280ms;
}
.mp-corpo .mp-tela.ativa {
  opacity: 1;
  visibility: visible;
  transform: none;
  transition: opacity var(--mp-transicao), transform var(--mp-transicao), visibility 0s;
}
.mp-corpo .mp-tela[data-aba] {
  padding-bottom: calc(var(--mp-abas-altura) + var(--mp-base));
}
.mp-corpo .mp-tela {
  /* Troca entre abas não desliza: no app de verdade a aba aparece no lugar. */
}
.mp-corpo .mp-tela[data-aba]:not(.ativa) {
  transform: none;
}
.mp-corpo .mp-conteudo {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  padding: 4px 20px 28px;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.mp-corpo .mp-conteudo::-webkit-scrollbar {
  display: none;
}
.mp-corpo .mp-conteudo-sem-cabecalho {
  padding: 0 0 28px;
}
.mp-corpo .mp-conteudo-centro {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.mp-corpo .mp-cabecalho {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 56px;
  padding: calc(var(--mp-topo) + 6px) 16px 10px;
}
.mp-corpo .mp-cabecalho > .mp-cabecalho-titulo:first-child {
  padding-left: 4px;
}
.mp-corpo .mp-cabecalho-titulo {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
}
.mp-corpo .mp-cabecalho-espaco {
  width: 40px;
  flex: 0 0 40px;
}
.mp-corpo .mp-icone-botao {
  position: relative;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: var(--mp-superficie);
  color: var(--mp-texto);
  box-shadow: 0 2px 8px rgba(20, 28, 45, 0.08);
  font-size: 16px;
}
.mp-corpo .mp-titulo {
  margin: 8px 0;
  font-size: 26px;
  line-height: 1.2;
  font-weight: 700;
}
.mp-corpo .mp-titulo-medio {
  margin: 18px 0 6px;
  font-size: 20px;
  font-weight: 700;
}
.mp-corpo .mp-subtitulo {
  margin: 0 0 20px;
  color: var(--mp-texto-2);
  line-height: 1.5;
  font-size: 15px;
}
.mp-corpo .mp-secao-titulo {
  margin: 22px 0 10px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--mp-texto-3);
}
.mp-corpo .mp-secao-titulo small {
  text-transform: none;
  letter-spacing: 0;
  font-weight: 500;
}
.mp-corpo .mp-secao-titulo-esquerda {
  align-self: stretch;
}
.mp-corpo .mp-rodape-acao {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 20px calc(12px + var(--mp-base));
  background: var(--mp-superficie);
  border-top: 1px solid var(--mp-borda);
}
.mp-corpo .mp-contador {
  color: var(--mp-texto-2);
  font-size: 14px;
  font-weight: 500;
  min-width: 0;
}
.mp-corpo {
  /* ============================ Botões e campos ============================ */
}
.mp-corpo .mp-botao {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 50px;
  padding: 0 24px;
  border-radius: 16px;
  font-size: 15px;
  font-weight: 600;
  white-space: nowrap;
  transition: transform 120ms ease, opacity 160ms ease, background 160ms ease;
}
.mp-corpo .mp-botao:active:not(:disabled) {
  transform: scale(0.97);
}
.mp-corpo .mp-botao:disabled {
  opacity: 0.4;
}
.mp-corpo .mp-botao-bloco {
  width: 100%;
}
.mp-corpo .mp-botao-primario {
  background: var(--mp-gradiente);
  color: var(--mp-destaque-contraste);
  box-shadow: var(--mp-sombra-destaque);
}
.mp-corpo .mp-botao-primario:disabled {
  box-shadow: none;
}
.mp-corpo .mp-botao-secundario {
  background: var(--mp-superficie);
  color: var(--mp-texto);
  border: 1.5px solid var(--mp-borda);
}
.mp-corpo .mp-botao-claro {
  background: #fff;
  color: var(--mp-primaria-escura);
}
.mp-corpo .mp-botao-fantasma {
  color: #fff;
  font-weight: 500;
}
.mp-corpo .mp-botao-pequeno {
  min-height: 38px;
  padding: 0 14px;
  border-radius: 12px;
  font-size: 13px;
}
.mp-corpo .mp-botao-pequeno.mp-botao-primario {
  box-shadow: none;
}
.mp-corpo .mp-botao-icone {
  width: 42px;
  min-height: 42px;
  flex: 0 0 42px;
  padding: 0;
  border-radius: 50%;
  font-size: 15px;
}
.mp-corpo .mp-botao-icone.mp-botao-primario {
  box-shadow: none;
}
.mp-corpo .mp-link {
  color: var(--mp-destaque-texto);
  font-size: 13px;
  font-weight: 600;
}
.mp-corpo {
  /* 16px evita o zoom automático do iOS ao focar o campo. */
}
.mp-corpo .mp-campo {
  width: 100%;
  padding: 14px 16px;
  border: 1.5px solid var(--mp-borda);
  border-radius: 14px;
  background: var(--mp-superficie);
  color: var(--mp-texto);
  font: inherit;
  font-size: 16px;
  resize: none;
  outline: none;
  transition: border-color 160ms ease, box-shadow 160ms ease;
}
.mp-corpo .mp-campo:focus {
  border-color: var(--mp-destaque);
  box-shadow: 0 0 0 4px var(--mp-destaque-suave);
}
.mp-corpo .mp-caracteres {
  align-self: flex-end;
  margin-top: 6px;
  color: var(--mp-texto-3);
  font-size: 12px;
}
.mp-corpo .mp-segmentado {
  display: grid;
  grid-auto-columns: 1fr;
  grid-auto-flow: column;
  gap: 4px;
  padding: 4px;
  border-radius: 14px;
  background: var(--mp-neutro);
}
.mp-corpo .mp-segmentado button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 40px;
  border-radius: 11px;
  color: var(--mp-texto-2);
  font-size: 14px;
  font-weight: 600;
  transition: background 160ms ease, color 160ms ease;
}
.mp-corpo .mp-segmentado button.ativo {
  background: var(--mp-superficie);
  color: var(--mp-texto);
  box-shadow: 0 2px 8px rgba(20, 28, 45, 0.1);
}
.mp-corpo .mp-contagem {
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: var(--mp-destaque);
  color: var(--mp-destaque-contraste);
  font-size: 11px;
  font-style: normal;
}
.mp-corpo {
  /* ============================ Chips, selos e avatar ============================ */
}
.mp-corpo .mp-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.mp-corpo .mp-chips-centro {
  justify-content: center;
}
.mp-corpo .mp-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 12px;
  border-radius: 999px;
  border: 1.5px solid var(--mp-borda);
  background: var(--mp-superficie);
  color: var(--mp-texto-2);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2;
  white-space: nowrap;
}
.mp-corpo .mp-chip.selecionado {
  background: var(--mp-destaque);
  border-color: var(--mp-destaque);
  color: var(--mp-destaque-contraste);
}
.mp-corpo button.mp-chip {
  transition: background 160ms ease, color 160ms ease, border-color 160ms ease, transform 120ms ease;
}
.mp-corpo button.mp-chip:active {
  transform: scale(0.95);
}
.mp-corpo .mp-chip-comum {
  background: var(--mp-destaque-suave);
  border-color: transparent;
  color: var(--mp-destaque-texto);
}
.mp-corpo .mp-chip-suave {
  background: var(--mp-neutro);
  border-color: transparent;
  color: var(--mp-texto-2);
}
.mp-corpo .mp-chip-vidro {
  background: rgba(255, 255, 255, 0.2);
  border-color: transparent;
  color: #fff;
}
.mp-corpo .mp-selo {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
}
.mp-corpo .mp-selo-sucesso {
  background: var(--mp-sucesso-suave);
  color: var(--mp-sucesso);
}
.mp-corpo .mp-selo-alerta {
  background: var(--mp-alerta-suave);
  color: var(--mp-alerta-texto);
}
.mp-corpo .mp-selo-destaque {
  background: var(--mp-destaque-suave);
  color: var(--mp-destaque-texto);
}
.mp-corpo .mp-selo-neutro {
  background: var(--mp-neutro);
  color: var(--mp-texto-2);
}
.mp-corpo .mp-avatar {
  --tam: 48px;
  position: relative;
  width: var(--tam);
  height: var(--tam);
  flex: 0 0 var(--tam);
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--cor, var(--mp-primaria));
  color: #fff;
  font-weight: 600;
  font-size: calc(var(--tam) * 0.36);
  letter-spacing: 0.02em;
  user-select: none;
}
.mp-corpo .mp-avatar-p {
  --tam: 40px;
}
.mp-corpo .mp-avatar-g {
  --tam: 96px;
}
.mp-corpo .mp-avatar-gg {
  --tam: 128px;
  box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.25);
}
.mp-corpo .mp-avatar-status::after {
  content: "";
  position: absolute;
  right: 1px;
  bottom: 1px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--mp-sucesso);
  box-shadow: 0 0 0 2px var(--mp-superficie);
}
.mp-corpo {
  /* Ícone do projeto, trocado pelo logotipo da rede quando ele existe. */
}
.mp-corpo .mp-logo {
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 12px;
  background: var(--mp-gradiente);
  color: var(--mp-destaque-contraste);
  font-size: 16px;
}
.mp-corpo .mp-logo.com-imagem {
  background: #fff;
  padding: 4px;
}
.mp-corpo .mp-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.mp-corpo .mp-logo-grande {
  width: 76px;
  height: 76px;
  flex-basis: 76px;
  margin-bottom: 28px;
  border-radius: 22px;
  font-size: 32px;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.25);
}
.mp-corpo .mp-logo-grande.com-imagem {
  padding: 10px;
}
.mp-corpo {
  /* ============================ Boas-vindas ============================ */
}
.mp-corpo .mp-tela-boas-vindas {
  justify-content: space-between;
  padding: calc(var(--mp-topo) + 40px) 28px calc(28px + var(--mp-base));
  color: #fff;
  background: radial-gradient(circle at 85% 8%, color-mix(in srgb, #a3a3a3 55%, transparent), transparent 36%), radial-gradient(circle at 0% 70%, rgba(255, 255, 255, 0.1), transparent 42%), linear-gradient(170deg, var(--mp-primaria) 0%, var(--mp-primaria-profunda) 78%);
}
.mp-corpo .mp-boas-vindas-sobretitulo {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.7);
}
.mp-corpo .mp-boas-vindas-marca h1 {
  margin: 8px 0 12px;
  font-size: 32px;
  line-height: 1.15;
  font-weight: 700;
  color: #fff;
}
.mp-corpo .mp-boas-vindas-marca p {
  margin: 0;
  font-size: 16px;
  color: rgba(255, 255, 255, 0.78);
}
.mp-corpo .mp-boas-vindas-passos {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 14px;
}
.mp-corpo .mp-boas-vindas-passos li {
  display: flex;
  align-items: center;
  gap: 14px;
  font-weight: 500;
  font-size: 15px;
}
.mp-corpo .mp-boas-vindas-passos span {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.14);
}
.mp-corpo {
  /* ============================ Interesses ============================ */
}
.mp-corpo .mp-progresso {
  flex: 1;
  max-width: 180px;
  height: 6px;
  border-radius: 999px;
  background: var(--mp-neutro);
  overflow: hidden;
}
.mp-corpo .mp-progresso span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: var(--mp-gradiente);
  transition: width var(--mp-transicao);
}
.mp-corpo .mp-interesses-grupo + .mp-interesses-grupo {
  margin-top: 20px;
}
.mp-corpo .mp-interesses-grupo h3 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: 600;
  color: var(--mp-texto);
}
.mp-corpo .mp-interesses-grupo h3 i {
  color: var(--mp-destaque);
  width: 16px;
  text-align: center;
}
.mp-corpo {
  /* ============================ Descobrir ============================ */
}
.mp-corpo .mp-cabecalho-marca {
  padding-bottom: 6px;
}
.mp-corpo .mp-marca-pequena {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  line-height: 1.15;
  font-weight: 500;
  color: var(--mp-texto-2);
}
.mp-corpo .mp-marca-pequena strong {
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: var(--mp-texto);
}
.mp-corpo .mp-descobrir-legenda {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  padding: 4px 22px 10px;
  font-size: 12px;
  font-weight: 500;
  color: var(--mp-texto-3);
}
.mp-corpo .mp-descobrir-legenda i {
  color: var(--mp-destaque);
}
.mp-corpo .mp-pilha {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  /* Reserva o espaço dos cartões de trás, que descem até 24px abaixo da pilha. */
  margin: 0 16px 24px;
}
.mp-corpo .mp-cartao {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: 26px;
  background: var(--mp-superficie);
  box-shadow: var(--mp-sombra);
  touch-action: none;
  user-select: none;
  transform-origin: 50% 100%;
  transition: transform 320ms cubic-bezier(0.2, 0.8, 0.2, 1), opacity 320ms ease;
  will-change: transform;
}
.mp-corpo .mp-cartao.arrastando {
  transition: none;
  cursor: grabbing;
}
.mp-corpo .mp-cartao[data-posicao="0"] {
  cursor: grab;
  box-shadow: var(--mp-sombra-forte);
}
.mp-corpo .mp-cartao[data-posicao="1"] {
  transform: translateY(12px) scale(0.95);
  pointer-events: none;
}
.mp-corpo .mp-cartao[data-posicao="2"] {
  transform: translateY(24px) scale(0.9);
  opacity: 0.6;
  pointer-events: none;
}
.mp-corpo .mp-cartao-capa {
  position: relative;
  flex: 0 0 42%;
  min-height: 150px;
  display: grid;
  place-items: center;
  /* Centraliza o avatar abaixo dos selos do topo, que em tela baixa o encobririam. */
  padding-top: 36px;
  background: var(--capa);
}
.mp-corpo .mp-cartao-capa::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 80% 20%, rgba(255, 255, 255, 0.22), transparent 45%);
  pointer-events: none;
}
.mp-corpo .mp-cartao-capa .mp-avatar {
  background: rgba(255, 255, 255, 0.18);
  box-shadow: 0 0 0 6px rgba(255, 255, 255, 0.12);
}
.mp-corpo .mp-cartao-grupo {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 1;
}
.mp-corpo .mp-cartao-corpo {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px 18px 18px;
  overflow: hidden;
  /* Duas linhas inteiras de chips; a terceira some sem cortar nenhuma pela metade. */
}
.mp-corpo .mp-cartao-corpo .mp-chips {
  max-height: 74px;
  overflow: hidden;
}
.mp-corpo .mp-cartao-nome {
  margin: 0;
  font-size: 21px;
  font-weight: 700;
  line-height: 1.15;
}
.mp-corpo .mp-cartao-cargo {
  margin: 2px 0 0;
  color: var(--mp-texto-2);
  font-size: 14px;
  font-weight: 500;
}
.mp-corpo .mp-cartao-local {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 14px;
  color: var(--mp-texto-3);
  font-size: 13px;
}
.mp-corpo .mp-cartao-local i {
  margin-right: 4px;
}
.mp-corpo .mp-cartao-rotulo {
  margin: 2px 0 6px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--mp-texto-3);
}
.mp-corpo .mp-cartao-ajuda {
  margin: 0;
  color: var(--mp-texto-2);
  font-size: 14px;
  line-height: 1.45;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mp-corpo .mp-carimbo {
  position: absolute;
  top: 28px;
  z-index: 2;
  padding: 6px 14px;
  border: 3px solid currentColor;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.9);
  font-size: 21px;
  font-weight: 700;
  letter-spacing: 0.08em;
  opacity: 0;
  pointer-events: none;
}
.mp-corpo .mp-carimbo-conectar {
  left: 20px;
  color: var(--mp-sucesso);
  transform: rotate(-14deg);
}
.mp-corpo .mp-carimbo-passar {
  right: 20px;
  color: var(--mp-texto-2);
  transform: rotate(14deg);
}
.mp-corpo .mp-acoes-cartao {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
  padding: 16px 0 14px;
}
.mp-corpo .mp-acao {
  width: 62px;
  height: 62px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--mp-superficie);
  box-shadow: var(--mp-sombra);
  font-size: 26px;
  transition: transform 140ms ease;
}
.mp-corpo .mp-acao:active:not(:disabled) {
  transform: scale(0.9);
}
.mp-corpo .mp-acao:disabled {
  opacity: 0.35;
}
.mp-corpo .mp-acao-passar {
  color: var(--mp-texto-2);
}
.mp-corpo .mp-acao-info {
  width: 48px;
  height: 48px;
  font-size: 18px;
  color: var(--mp-primaria);
}
.mp-corpo .mp-acao-conectar {
  background: var(--mp-gradiente);
  color: var(--mp-destaque-contraste);
  box-shadow: var(--mp-sombra-destaque);
}
.mp-corpo .mp-descobrir-vazio {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px;
  text-align: center;
}
.mp-corpo .mp-descobrir-vazio h3 {
  margin: 16px 0 8px;
  font-size: 18px;
  font-weight: 700;
}
.mp-corpo .mp-descobrir-vazio p {
  margin: 0 0 22px;
  color: var(--mp-texto-2);
  line-height: 1.5;
  font-size: 14px;
}
.mp-corpo .mp-vazio-icone {
  width: 76px;
  height: 76px;
  display: grid;
  place-items: center;
  border-radius: 26px;
  background: var(--mp-destaque-suave);
  color: var(--mp-destaque);
  font-size: 34px;
}
.mp-corpo .mp-vazio-lista {
  padding: 28px 12px;
  text-align: center;
  color: var(--mp-texto-3);
  font-size: 14px;
  line-height: 1.5;
}
.mp-corpo .mp-vazio-lista i {
  display: block;
  margin-bottom: 10px;
  font-size: 26px;
  color: var(--mp-borda);
}
.mp-corpo .mp-descobrir-vazio-acoes {
  display: grid;
  gap: 8px;
  width: 100%;
  max-width: 280px;
}
.mp-corpo {
  /* ============================ Explorar ============================ */
}
.mp-corpo .mp-cabecalho-explorar {
  padding-bottom: 6px;
}
.mp-corpo .mp-cabecalho-apoio {
  display: block;
  margin-top: 2px;
  padding-left: 4px;
  color: var(--mp-texto-3);
  font-size: 12px;
  font-weight: 500;
}
.mp-corpo .mp-explorar-busca {
  flex: 0 0 auto;
  display: flex;
  gap: 8px;
  padding: 4px 16px 10px;
}
.mp-corpo .mp-explorar-busca .mp-botao-filtros {
  width: 48px;
  height: 48px;
  flex-basis: 48px;
  border-radius: 14px;
}
.mp-corpo .mp-busca {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  height: 48px;
  margin: 0;
  padding: 0 12px 0 16px;
  border: 1.5px solid var(--mp-borda);
  border-radius: 14px;
  background: var(--mp-superficie);
  color: var(--mp-texto-3);
  transition: border-color 160ms ease, box-shadow 160ms ease;
}
.mp-corpo .mp-busca:focus-within {
  border-color: var(--mp-destaque);
  box-shadow: 0 0 0 4px var(--mp-destaque-suave);
}
.mp-corpo .mp-busca input {
  flex: 1 1 auto;
  min-width: 0;
  border: 0;
  outline: none;
  background: none;
  color: var(--mp-texto);
  font: inherit;
  font-size: 16px;
}
.mp-corpo .mp-busca input::-webkit-search-cancel-button {
  display: none;
}
.mp-corpo .mp-busca button {
  color: var(--mp-texto-3);
  font-size: 16px;
}
.mp-corpo .mp-filtros-rapidos {
  flex: 0 0 auto;
  display: flex;
  gap: 8px;
  padding: 0 16px 12px;
  overflow-x: auto;
  scrollbar-width: none;
}
.mp-corpo .mp-filtros-rapidos::-webkit-scrollbar {
  display: none;
}
.mp-corpo .mp-filtros-rapidos .mp-chip {
  flex: 0 0 auto;
}
.mp-corpo .mp-filtros-rapidos .mp-chip i {
  font-size: 11px;
}
.mp-corpo .mp-explorar-secao + .mp-explorar-secao {
  margin-top: 6px;
}
.mp-corpo .mp-explorar-secao-topo {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
}
.mp-corpo .mp-explorar-secao-topo .mp-secao-titulo {
  margin-bottom: 10px;
}
.mp-corpo .mp-recomendados {
  display: flex;
  gap: 10px;
  margin: 0 -20px;
  padding: 2px 20px 6px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}
.mp-corpo .mp-recomendados::-webkit-scrollbar {
  display: none;
}
.mp-corpo .mp-recomendado {
  flex: 0 0 158px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 16px 12px 12px;
  border-radius: var(--mp-raio);
  background: var(--mp-superficie);
  box-shadow: 0 2px 10px rgba(20, 28, 45, 0.06);
  text-align: center;
  scroll-snap-align: start;
  cursor: pointer;
}
.mp-corpo .mp-recomendado .mp-botao {
  width: 100%;
  margin-top: auto;
}
.mp-corpo .mp-avatar-recomendado {
  --tam: 64px;
  margin-bottom: 6px;
}
.mp-corpo .mp-recomendado-nome {
  max-width: 100%;
  font-size: 14px;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mp-corpo .mp-recomendado-cargo {
  min-height: 32px;
  color: var(--mp-texto-2);
  font-size: 12px;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mp-corpo .mp-recomendado-motivo,
.mp-corpo .mp-linha-motivo {
  color: var(--mp-destaque-texto);
  font-size: 11.5px;
  font-weight: 600;
}
.mp-corpo .mp-recomendado-motivo i,
.mp-corpo .mp-linha-motivo i {
  margin-right: 5px;
  font-size: 10px;
}
.mp-corpo .mp-recomendado-motivo {
  margin: 2px 0 10px;
}
.mp-corpo .mp-linha-motivo {
  display: block;
  margin-top: 3px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mp-corpo .mp-linha-pessoa {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px;
  border-radius: var(--mp-raio);
  background: var(--mp-superficie);
  box-shadow: 0 2px 10px rgba(20, 28, 45, 0.05);
  cursor: pointer;
}
.mp-corpo .mp-linha-pessoa .mp-botao {
  flex: 0 0 auto;
}
.mp-corpo .mp-resultados-topo {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 4px 0 10px;
  color: var(--mp-texto-2);
  font-size: 13px;
  font-weight: 600;
}
.mp-corpo .mp-pessoa {
  display: grid;
  gap: 10px;
  padding: 14px;
  border-radius: var(--mp-raio);
  background: var(--mp-superficie);
  box-shadow: 0 2px 10px rgba(20, 28, 45, 0.05);
  cursor: pointer;
}
.mp-corpo .mp-pessoa .mp-item-titulo {
  display: flex;
  align-items: center;
  gap: 6px;
}
.mp-corpo .mp-pessoa .mp-item-titulo .mp-selo {
  padding: 2px 7px;
  font-size: 10px;
}
.mp-corpo .mp-pessoa-topo {
  display: flex;
  align-items: center;
  gap: 12px;
}
.mp-corpo .mp-pessoa-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 14px;
  color: var(--mp-texto-2);
  font-size: 12.5px;
}
.mp-corpo .mp-pessoa-meta i {
  margin-right: 5px;
  color: var(--mp-texto-3);
}
.mp-corpo .mp-pessoa-busca {
  margin: 0;
  color: var(--mp-texto-2);
  font-size: 12.5px;
}
.mp-corpo .mp-pessoa-busca i {
  margin-right: 6px;
  color: var(--mp-destaque);
}
.mp-corpo .mp-pessoa-rodape {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-top: 10px;
  border-top: 1px dashed var(--mp-borda);
}
.mp-corpo .mp-mutuos {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  color: var(--mp-texto-3);
  font-size: 12px;
}
.mp-corpo .mp-mutuos-avatares {
  display: inline-flex;
}
.mp-corpo .mp-mutuos-avatares .mp-avatar + .mp-avatar {
  margin-left: -8px;
}
.mp-corpo .mp-avatar-mini {
  --tam: 24px;
  box-shadow: 0 0 0 2px var(--mp-superficie);
  font-size: 9px;
}
.mp-corpo .mp-mutuos-lista {
  display: grid;
  gap: 10px;
}
.mp-corpo .mp-mutuo {
  display: flex;
  align-items: center;
  gap: 10px;
}
.mp-corpo .mp-explorar-vazio {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.mp-corpo .mp-filtro-secao + .mp-filtro-secao {
  margin-top: 18px;
}
.mp-corpo .mp-filtro-secao h3 {
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: 600;
}
.mp-corpo .mp-filtro-secao-topo {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
}
.mp-corpo {
  /* ============================ Listas ============================ */
}
.mp-corpo .mp-lista {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
}
.mp-corpo .mp-item {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 12px;
  border-radius: var(--mp-raio);
  background: var(--mp-superficie);
  text-align: left;
  box-shadow: 0 2px 10px rgba(20, 28, 45, 0.05);
}
.mp-corpo .mp-item-texto {
  flex: 1 1 auto;
  min-width: 0;
}
.mp-corpo .mp-item-titulo {
  display: block;
  font-weight: 600;
  font-size: 15px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mp-corpo .mp-item-sub {
  display: block;
  margin-top: 2px;
  color: var(--mp-texto-2);
  font-size: 13px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mp-corpo .mp-item-fim {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
  color: var(--mp-texto-3);
  font-size: 12px;
}
.mp-corpo .mp-item-nao-lida .mp-item-titulo {
  font-weight: 700;
}
.mp-corpo .mp-item-nao-lida .mp-item-sub {
  color: var(--mp-texto);
  font-weight: 500;
}
.mp-corpo .mp-item-nao-lida .mp-item-fim {
  color: var(--mp-destaque-texto);
  font-weight: 600;
}
.mp-corpo .mp-contador-nao-lidas {
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: var(--mp-destaque);
  color: var(--mp-destaque-contraste);
  font-size: 11px;
  font-weight: 600;
}
.mp-corpo .mp-novos-matches {
  display: flex;
  gap: 14px;
  margin: 0 -20px;
  padding: 4px 20px;
  overflow-x: auto;
  scrollbar-width: none;
}
.mp-corpo .mp-novos-matches::-webkit-scrollbar {
  display: none;
}
.mp-corpo .mp-novo-match {
  flex: 0 0 72px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 500;
  color: var(--mp-texto-2);
}
.mp-corpo .mp-novo-match span {
  max-width: 72px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mp-corpo .mp-novo-match .mp-avatar {
  --tam: 64px;
  box-shadow: 0 0 0 3px var(--mp-fundo), 0 0 0 5px var(--mp-destaque);
}
.mp-corpo {
  /* ============================ Chat ============================ */
}
.mp-corpo .mp-cabecalho-chat {
  gap: 8px;
  padding-bottom: 12px;
  background: var(--mp-superficie);
  border-bottom: 1px solid var(--mp-borda);
}
.mp-corpo .mp-cabecalho-chat .mp-icone-botao {
  box-shadow: none;
  background: var(--mp-fundo);
}
.mp-corpo .mp-chat-contato {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  text-align: left;
}
.mp-corpo .mp-chat-contato .mp-item-sub {
  font-size: 12px;
}
.mp-corpo .mp-chat-digitando-rotulo {
  color: var(--mp-destaque-texto);
  font-weight: 500;
}
.mp-corpo .mp-chat-mensagens {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
  overflow-y: auto;
  padding: 16px 14px 12px;
  scrollbar-width: none;
}
.mp-corpo .mp-chat-mensagens::-webkit-scrollbar {
  display: none;
}
.mp-corpo .mp-msg-dia {
  align-self: center;
  margin: 10px 0 4px;
}
.mp-corpo .mp-msg-dia span {
  padding: 4px 12px;
  border-radius: 999px;
  background: var(--mp-neutro);
  color: var(--mp-texto-2);
  font-size: 11px;
  font-weight: 600;
}
.mp-corpo .mp-msg-sistema {
  align-self: center;
  max-width: 88%;
  margin: 4px 0;
  padding: 8px 14px;
  border-radius: 14px;
  background: var(--mp-destaque-suave);
  color: var(--mp-destaque-texto);
  font-size: 12px;
  font-weight: 500;
  text-align: center;
}
.mp-corpo .mp-msg-sistema i {
  margin-right: 4px;
}
.mp-corpo .mp-msg {
  display: flex;
  flex-direction: column;
  max-width: 80%;
  animation: mp-msg-entrada 220ms ease both;
}
.mp-corpo .mp-msg-eu {
  align-self: flex-end;
  align-items: flex-end;
}
.mp-corpo .mp-msg-outro {
  align-self: flex-start;
  align-items: flex-start;
}
.mp-corpo .mp-msg-balao {
  padding: 9px 12px 7px;
  border-radius: 18px;
  font-size: 14.5px;
  line-height: 1.4;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}
.mp-corpo .mp-msg-eu .mp-msg-balao {
  border-bottom-right-radius: 6px;
  background: var(--mp-destaque);
  color: var(--mp-destaque-contraste);
}
.mp-corpo .mp-msg-outro .mp-msg-balao {
  border-bottom-left-radius: 6px;
  background: var(--mp-superficie);
  color: var(--mp-texto);
  box-shadow: 0 1px 4px rgba(20, 28, 45, 0.06);
}
.mp-corpo .mp-msg-hora {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  float: right;
  margin: 6px 0 -2px 10px;
  font-size: 10.5px;
  opacity: 0.7;
}
.mp-corpo .mp-msg-hora-solta {
  float: none;
  margin: 4px 6px 0;
  color: var(--mp-texto-3);
  opacity: 1;
}
.mp-corpo .mp-digitando .mp-msg-balao {
  display: flex;
  gap: 4px;
  padding: 14px 14px;
}
.mp-corpo .mp-digitando .mp-msg-balao span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--mp-texto-3);
  animation: mp-digitando 1.2s infinite ease-in-out;
}
.mp-corpo .mp-digitando .mp-msg-balao span:nth-child(2) {
  animation-delay: 0.15s;
}
.mp-corpo .mp-digitando .mp-msg-balao span:nth-child(3) {
  animation-delay: 0.3s;
}
.mp-corpo {
  /* Convite de reunião dentro da conversa. */
}
.mp-corpo .mp-convite {
  width: 272px;
  max-width: 100%;
  overflow: hidden;
  border-radius: 18px;
  background: var(--mp-superficie);
  box-shadow: 0 4px 16px rgba(20, 28, 45, 0.1);
  border-top: 4px solid var(--mp-destaque);
}
.mp-corpo .mp-convite-corpo {
  display: grid;
  gap: 6px;
  padding: 12px 14px;
}
.mp-corpo .mp-convite-titulo {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--mp-destaque-texto);
}
.mp-corpo .mp-convite-quando {
  font-size: 16px;
  font-weight: 700;
  color: var(--mp-texto);
}
.mp-corpo .mp-convite-onde {
  color: var(--mp-texto-2);
  font-size: 13px;
}
.mp-corpo .mp-convite-onde i {
  width: 14px;
  margin-right: 6px;
  text-align: center;
}
.mp-corpo .mp-convite-pauta {
  margin: 2px 0 0;
  color: var(--mp-texto-2);
  font-size: 13px;
  font-style: italic;
}
.mp-corpo .mp-convite-rodape {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 14px 12px;
  border-top: 1px solid var(--mp-borda);
}
.mp-corpo .mp-convite-acoes {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  width: 100%;
}
.mp-corpo .mp-convite-acoes .mp-botao-primario {
  grid-column: 1/-1;
}
.mp-corpo .mp-convite-nota {
  display: inline-flex;
  gap: 2px;
  color: var(--mp-estrela);
  font-size: 13px;
}
.mp-corpo .mp-convite-nota .vazia {
  color: var(--mp-borda);
}
.mp-corpo {
  /* Sugestões de primeira mensagem, empilhadas do lado de quem envia. */
}
.mp-corpo .mp-chat-sugestoes {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
  padding: 4px 14px 10px;
}
.mp-corpo .mp-chat-sugestoes .mp-chip {
  max-width: 85%;
  padding: 8px 14px;
  border-radius: 16px 16px 6px 16px;
  border-color: var(--mp-destaque);
  background: var(--mp-superficie);
  color: var(--mp-destaque-texto);
  line-height: 1.35;
  text-align: left;
  white-space: normal;
}
.mp-corpo .mp-chat-compositor {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px calc(10px + var(--mp-base));
  background: var(--mp-superficie);
  border-top: 1px solid var(--mp-borda);
}
.mp-corpo .mp-chat-campo {
  flex: 1 1 auto;
  min-width: 0;
  height: 44px;
  padding: 0 16px;
  border: 1.5px solid var(--mp-borda);
  border-radius: 999px;
  background: var(--mp-fundo);
  color: var(--mp-texto);
  font: inherit;
  font-size: 16px;
  outline: none;
}
.mp-corpo .mp-chat-campo:focus {
  border-color: var(--mp-destaque);
  background: var(--mp-superficie);
}
.mp-corpo .mp-chat-convidar,
.mp-corpo .mp-chat-enviar {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  font-size: 18px;
  transition: transform 120ms ease, opacity 160ms ease;
}
.mp-corpo .mp-chat-convidar:active:not(:disabled),
.mp-corpo .mp-chat-enviar:active:not(:disabled) {
  transform: scale(0.9);
}
.mp-corpo .mp-chat-convidar {
  background: var(--mp-destaque-suave);
  color: var(--mp-destaque-texto);
}
.mp-corpo .mp-chat-enviar {
  background: var(--mp-gradiente);
  color: var(--mp-destaque-contraste);
}
.mp-corpo .mp-chat-enviar:disabled {
  opacity: 0.35;
}
.mp-corpo {
  /* ============================ Agendar ============================ */
}
.mp-corpo .mp-pessoa-resumo {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px;
  border-radius: var(--mp-raio);
  background: var(--mp-superficie);
  box-shadow: 0 2px 10px rgba(20, 28, 45, 0.05);
}
.mp-corpo {
  /* Cinco dias úteis e o atalho para outra data cabem numa linha, sem rolagem lateral. */
}
.mp-corpo .mp-datas {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 6px;
}
.mp-corpo .mp-datas-bloco {
  position: relative;
}
.mp-corpo {
  /* Fica fora da vista, mas renderizado: o showPicker() não abre em campo com display: none. */
}
.mp-corpo .mp-data-seletor {
  position: absolute;
  right: 24px;
  bottom: 0;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}
.mp-corpo .mp-data {
  position: relative;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 10px 0;
  border-radius: 16px;
  border: 1.5px solid var(--mp-borda);
  background: var(--mp-superficie);
}
.mp-corpo .mp-data small {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--mp-texto-3);
}
.mp-corpo .mp-data strong {
  font-size: 20px;
  font-weight: 700;
}
.mp-corpo .mp-data span {
  font-size: 11px;
  font-weight: 500;
  color: var(--mp-texto-2);
}
.mp-corpo .mp-data.mp-data-outra {
  justify-content: center;
  gap: 4px;
  border-style: dashed;
  color: var(--mp-destaque-texto);
}
.mp-corpo .mp-data.mp-data-outra > i {
  font-size: 18px;
}
.mp-corpo .mp-data.mp-data-outra > span {
  color: inherit;
  font-size: 10.5px;
  font-weight: 600;
  text-align: center;
  line-height: 1.15;
}
.mp-corpo .mp-data.ativo {
  background: var(--mp-primaria);
  border-color: var(--mp-primaria);
  color: #fff;
}
.mp-corpo .mp-data.ativo small, .mp-corpo .mp-data.ativo span {
  color: rgba(255, 255, 255, 0.78);
}
.mp-corpo .mp-agenda-sincronia {
  margin: -2px 0 10px;
  color: var(--mp-texto-2);
  font-size: 12px;
  line-height: 1.4;
}
.mp-corpo .mp-agenda-sincronia i {
  margin-right: 6px;
  color: var(--mp-destaque);
}
.mp-corpo .mp-agenda-sincronia strong {
  color: var(--mp-texto);
  font-weight: 600;
}
.mp-corpo .mp-horarios {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}
.mp-corpo .mp-horario {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  min-height: 52px;
  border-radius: 12px;
  border: 1.5px solid var(--mp-borda);
  background: var(--mp-superficie);
  font-size: 15px;
  font-weight: 600;
}
.mp-corpo .mp-horario.ativo {
  background: var(--mp-destaque);
  border-color: var(--mp-destaque);
  color: var(--mp-destaque-contraste);
}
.mp-corpo .mp-horario:disabled {
  color: var(--mp-texto-3);
  background: transparent;
  opacity: 0.55;
}
.mp-corpo .mp-horario.ocupado {
  border-style: dashed;
  background: var(--mp-neutro);
  color: var(--mp-texto-3);
}
.mp-corpo .mp-horario.ocupado small {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 10px;
  font-weight: 600;
}
.mp-corpo .mp-agendas {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.mp-corpo .mp-agenda {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 52px;
  padding: 0 8px;
  border-radius: 14px;
  border: 1.5px solid var(--mp-borda);
  background: var(--mp-superficie);
  font-size: 14px;
  font-weight: 600;
}
.mp-corpo .mp-agenda.ativo {
  border-color: var(--mp-destaque);
  background: var(--mp-destaque-suave);
  color: var(--mp-destaque-texto);
}
.mp-corpo {
  /* ============================ Reuniões ============================ */
}
.mp-corpo .mp-tela-reunioes .mp-lista {
  margin-top: 16px;
}
.mp-corpo .mp-reuniao {
  display: grid;
  gap: 12px;
  padding: 14px;
  border-radius: var(--mp-raio);
  background: var(--mp-superficie);
  box-shadow: 0 2px 10px rgba(20, 28, 45, 0.05);
}
.mp-corpo .mp-reuniao-topo {
  display: flex;
  align-items: center;
  gap: 12px;
}
.mp-corpo .mp-reuniao-data {
  width: 52px;
  flex: 0 0 52px;
  padding: 8px 0;
  border-radius: 14px;
  background: var(--mp-destaque-suave);
  color: var(--mp-destaque-texto);
  text-align: center;
  line-height: 1.1;
}
.mp-corpo .mp-reuniao-data strong {
  display: block;
  font-size: 20px;
  font-weight: 700;
}
.mp-corpo .mp-reuniao-data small {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
}
.mp-corpo .mp-reuniao-detalhes {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 14px;
  color: var(--mp-texto-2);
  font-size: 13px;
}
.mp-corpo .mp-reuniao-detalhes i {
  width: 14px;
  margin-right: 4px;
  color: var(--mp-texto-3);
  text-align: center;
}
.mp-corpo .mp-reuniao-rodape {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-top: 12px;
  border-top: 1px dashed var(--mp-borda);
}
.mp-corpo .mp-reuniao-botoes {
  display: flex;
  gap: 8px;
}
.mp-corpo .mp-reuniao-nota {
  display: inline-flex;
  gap: 2px;
  color: var(--mp-estrela);
  font-size: 13px;
}
.mp-corpo .mp-reuniao-nota .vazia {
  color: var(--mp-borda);
}
.mp-corpo .mp-reuniao-comentario {
  margin: 0;
  color: var(--mp-texto-2);
  font-size: 13px;
  line-height: 1.45;
  font-style: italic;
}
.mp-corpo {
  /* ============================ Feedback ============================ */
}
.mp-corpo .mp-feedback-pessoa {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  margin-top: 6px;
  text-align: center;
}
.mp-corpo .mp-feedback-pessoa strong {
  font-size: 17px;
}
.mp-corpo .mp-feedback-pessoa-quando {
  color: var(--mp-texto-2);
  font-size: 13px;
}
.mp-corpo .mp-estrelas {
  display: flex;
  gap: 8px;
  margin-top: 6px;
}
.mp-corpo .mp-estrelas button {
  width: 48px;
  height: 48px;
  font-size: 34px;
  color: var(--mp-borda);
  transition: transform 160ms ease, color 160ms ease;
}
.mp-corpo .mp-estrelas button.ativo {
  color: var(--mp-estrela);
}
.mp-corpo .mp-estrelas button:active {
  transform: scale(0.85);
}
.mp-corpo .mp-estrelas-legenda {
  min-height: 20px;
  margin-top: 4px;
  font-size: 14px;
  font-weight: 600;
  color: var(--mp-texto-2);
}
.mp-corpo .mp-tela-feedback .mp-chips,
.mp-corpo .mp-tela-feedback .mp-campo {
  align-self: stretch;
}
.mp-corpo {
  /* ============================ Perfil ============================ */
}
.mp-corpo .mp-perfil-capa {
  position: relative;
  padding: calc(var(--mp-topo) + 20px) 20px 58px;
  color: #fff;
  text-align: center;
  background: radial-gradient(circle at 90% 0%, color-mix(in srgb, #a3a3a3 50%, transparent), transparent 40%), linear-gradient(160deg, var(--mp-primaria), var(--mp-primaria-profunda));
}
.mp-corpo .mp-perfil-capa .mp-avatar {
  margin: 0 auto 12px;
  background: var(--mp-gradiente);
  color: var(--mp-destaque-contraste);
}
.mp-corpo .mp-perfil-capa h2 {
  margin: 0;
  font-size: 21px;
  font-weight: 700;
  color: #fff;
}
.mp-corpo .mp-perfil-capa p {
  margin: 4px 0 0;
  color: rgba(255, 255, 255, 0.8);
  font-size: 14px;
}
.mp-corpo .mp-perfil-numeros {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin: -38px 20px 0;
  padding: 14px 6px;
  border-radius: var(--mp-raio);
  background: var(--mp-superficie);
  box-shadow: var(--mp-sombra);
  text-align: center;
}
.mp-corpo .mp-perfil-numeros div + div {
  border-left: 1px solid var(--mp-borda);
}
.mp-corpo .mp-perfil-numeros strong {
  display: block;
  font-size: 20px;
  font-weight: 700;
}
.mp-corpo .mp-perfil-numeros span {
  font-size: 12px;
  font-weight: 500;
  color: var(--mp-texto-3);
}
.mp-corpo .mp-perfil-secao {
  margin: 14px 20px 0;
  padding: 16px;
  border-radius: var(--mp-raio);
  background: var(--mp-superficie);
}
.mp-corpo .mp-perfil-secao h3 {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
}
.mp-corpo .mp-perfil-secao p {
  margin: 0;
  color: var(--mp-texto-2);
  font-size: 14px;
  line-height: 1.5;
}
.mp-corpo .mp-perfil-secao-topo {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
.mp-corpo .mp-dados {
  display: grid;
  gap: 12px;
  margin: 0;
}
.mp-corpo .mp-dados div {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 14px;
}
.mp-corpo .mp-dados dt {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  background: var(--mp-destaque-suave);
  color: var(--mp-destaque-texto);
}
.mp-corpo .mp-dados dd {
  margin: 0;
  min-width: 0;
  font-weight: 500;
  overflow-wrap: anywhere;
}
.mp-corpo .mp-dados .mp-dado-link {
  color: var(--mp-destaque-texto);
  font-weight: 600;
  text-decoration: none;
}
.mp-corpo .mp-dados .mp-dado-link i {
  margin-left: 6px;
  font-size: 10px;
  opacity: 0.8;
}
.mp-corpo .mp-dados dd small {
  display: block;
  color: var(--mp-texto-3);
  font-size: 12px;
  font-weight: 500;
}
.mp-corpo .mp-perfil-reiniciar {
  display: block;
  margin: 20px auto 0;
  color: var(--mp-texto-3);
  font-size: 13px;
  font-weight: 500;
}
.mp-corpo {
  /* ============================ Barra de abas ============================ */
}
.mp-corpo .mp-abas {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 20;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  height: calc(var(--mp-abas-altura) + var(--mp-base));
  padding-bottom: var(--mp-base);
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(12px);
  border-top: 1px solid var(--mp-borda);
  transition: transform var(--mp-transicao);
}
.mp-corpo .mp-abas button {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  color: var(--mp-texto-3);
  font-size: 11px;
  font-weight: 600;
}
.mp-corpo .mp-abas button i {
  font-size: 20px;
}
.mp-corpo .mp-abas button.ativo {
  color: var(--mp-destaque);
}
.mp-corpo .mp-app:not([data-com-abas]) .mp-abas {
  transform: translateY(110%);
}
.mp-corpo .mp-badge {
  position: absolute;
  top: 8px;
  left: calc(50% + 6px);
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: var(--mp-destaque);
  color: var(--mp-destaque-contraste);
  font-size: 10px;
  font-style: normal;
  box-shadow: 0 0 0 2px #fff;
}
.mp-corpo {
  /* ============================ Folha de perfil ============================ */
}
.mp-corpo .mp-folha-fundo {
  position: absolute;
  inset: 0;
  z-index: 30;
  background: rgba(8, 12, 22, 0.5);
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--mp-transicao), visibility 0s linear 280ms;
}
.mp-corpo .mp-folha {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 31;
  display: flex;
  flex-direction: column;
  max-height: 88%;
  border-radius: 28px 28px 0 0;
  background: var(--mp-fundo);
  transform: translateY(105%);
  transition: transform var(--mp-transicao);
}
.mp-corpo .mp-folha .mp-perfil-secao {
  margin: 12px 0 0;
}
.mp-corpo .mp-app.folha-aberta .mp-folha-fundo {
  opacity: 1;
  visibility: visible;
  transition: opacity var(--mp-transicao), visibility 0s;
}
.mp-corpo .mp-app.folha-aberta .mp-folha {
  transform: none;
}
.mp-corpo .mp-folha-alca {
  flex: 0 0 auto;
  width: 44px;
  height: 5px;
  margin: 10px auto 4px;
  border-radius: 999px;
  background: #cfd6e3;
}
.mp-corpo .mp-folha-conteudo {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  padding: 8px 20px 16px;
  scrollbar-width: none;
}
.mp-corpo .mp-folha-conteudo::-webkit-scrollbar {
  display: none;
}
.mp-corpo .mp-folha-topo {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 16px;
}
.mp-corpo .mp-folha-topo h2 {
  margin: 0;
  font-size: 19px;
  font-weight: 700;
}
.mp-corpo .mp-folha-topo p {
  margin: 2px 0 0;
  color: var(--mp-texto-2);
  font-size: 14px;
  font-weight: 500;
}
.mp-corpo .mp-folha-acoes {
  flex: 0 0 auto;
  display: grid;
  gap: 8px;
  padding: 12px 20px calc(16px + var(--mp-base));
  border-top: 1px solid var(--mp-borda);
  background: var(--mp-fundo);
}
.mp-corpo {
  /* ============================ Notificações ============================ */
}
.mp-corpo .mp-badge-sino {
  top: -5px;
  right: -5px;
  left: auto;
}
.mp-corpo .mp-notificacoes-topo {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin: 4px 0 14px;
}
.mp-corpo .mp-notificacoes-topo h2 {
  margin: 0;
  font-size: 19px;
  font-weight: 700;
}
.mp-corpo .mp-notificacoes-topo span {
  color: var(--mp-texto-3);
  font-size: 12px;
  font-weight: 500;
}
.mp-corpo .mp-notificacao {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  width: 100%;
  padding: 12px;
  border-radius: var(--mp-raio);
  background: var(--mp-superficie);
  text-align: left;
}
.mp-corpo .mp-notificacao + .mp-notificacao {
  margin-top: 8px;
}
.mp-corpo .mp-notificacao-icone {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  background: var(--mp-destaque-suave);
  color: var(--mp-destaque-texto);
  font-size: 16px;
}
.mp-corpo .mp-notificacao-texto {
  flex: 1 1 auto;
  min-width: 0;
  color: var(--mp-texto-2);
  font-size: 14px;
  line-height: 1.4;
}
.mp-corpo .mp-notificacao-texto strong {
  color: var(--mp-texto);
  font-weight: 600;
}
.mp-corpo .mp-notificacao-texto small {
  display: block;
  margin-top: 4px;
  color: var(--mp-texto-3);
  font-size: 12px;
}
.mp-corpo .mp-notificacao-nova {
  box-shadow: inset 3px 0 0 var(--mp-destaque);
}
.mp-corpo .mp-notificacao-nova .mp-notificacao-texto {
  color: var(--mp-texto);
}
.mp-corpo {
  /* ============================ Match ============================ */
}
.mp-corpo .mp-match {
  position: absolute;
  inset: 0;
  z-index: 40;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: calc(var(--mp-topo) + 12px) 28px calc(24px + var(--mp-base));
  overflow: hidden;
  color: #fff;
  text-align: center;
  background: radial-gradient(circle at 50% 30%, color-mix(in srgb, #a3a3a3 60%, transparent), transparent 58%), linear-gradient(165deg, var(--mp-primaria) 0%, var(--mp-primaria-profunda) 80%);
  opacity: 0;
  visibility: hidden;
  transition: opacity 320ms ease, visibility 0s linear 320ms;
}
.mp-corpo .mp-match.aberto {
  opacity: 1;
  visibility: visible;
  transition: opacity 320ms ease, visibility 0s;
}
.mp-corpo .mp-match h2 {
  margin: 8px 0 26px;
  font-size: 34px;
  font-weight: 700;
  line-height: 1.1;
  color: #fff;
  transform: scale(0.6);
  transition: transform 500ms cubic-bezier(0.3, 1.6, 0.5, 1) 120ms;
}
.mp-corpo .mp-match.aberto h2 {
  transform: none;
}
.mp-corpo .mp-match p {
  margin: 6px 0 12px;
  font-size: 15px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.88);
}
.mp-corpo .mp-match .mp-chips {
  margin-bottom: 26px;
}
.mp-corpo .mp-match .mp-botao-bloco + .mp-botao-bloco {
  margin-top: 8px;
}
.mp-corpo .mp-match-conteudo {
  position: relative;
  z-index: 1;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.mp-corpo .mp-match-sobretitulo {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.8);
}
.mp-corpo .mp-match-avatares {
  position: relative;
  display: flex;
  justify-content: center;
  margin-bottom: 22px;
}
.mp-corpo .mp-match-avatares .mp-avatar {
  --tam: 104px;
  box-shadow: 0 0 0 5px rgba(255, 255, 255, 0.9);
  transition: transform 520ms cubic-bezier(0.3, 1.4, 0.5, 1) 180ms;
}
.mp-corpo .mp-match-avatares .mp-avatar:first-child {
  transform: translateX(-40px) rotate(-8deg);
}
.mp-corpo .mp-match-avatares .mp-avatar:last-of-type {
  margin-left: -18px;
  transform: translateX(40px) rotate(8deg);
}
.mp-corpo .mp-match.aberto .mp-match-avatares .mp-avatar:first-child {
  transform: rotate(-6deg);
}
.mp-corpo .mp-match.aberto .mp-match-avatares .mp-avatar:last-of-type {
  transform: rotate(6deg);
}
.mp-corpo .mp-match-elo {
  position: absolute;
  left: 50%;
  bottom: -10px;
  z-index: 2;
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #fff;
  color: var(--mp-primaria);
  font-size: 18px;
  transform: translateX(-50%);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.2);
}
.mp-corpo {
  /* ============================ Diálogo ============================ */
}
.mp-corpo .mp-dialogo-fundo {
  position: absolute;
  inset: 0;
  z-index: 50;
  background: rgba(8, 12, 22, 0.5);
  opacity: 0;
  visibility: hidden;
  transition: opacity 200ms ease, visibility 0s linear 200ms;
}
.mp-corpo .mp-dialogo {
  position: absolute;
  top: 50%;
  left: 20px;
  right: 20px;
  z-index: 51;
  padding: 24px 20px 20px;
  border-radius: 22px;
  background: var(--mp-superficie);
  box-shadow: var(--mp-sombra-forte);
  text-align: center;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-46%) scale(0.96);
  transition: opacity 200ms ease, transform 200ms ease, visibility 0s linear 200ms;
}
.mp-corpo .mp-dialogo h3 {
  margin: 12px 0 8px;
  font-size: 18px;
  font-weight: 700;
}
.mp-corpo .mp-dialogo p {
  margin: 0 0 20px;
  color: var(--mp-texto-2);
  font-size: 14px;
  line-height: 1.5;
}
.mp-corpo .mp-dialogo-icone {
  width: 52px;
  height: 52px;
  margin: 0 auto;
  display: grid;
  place-items: center;
  border-radius: 16px;
  background: var(--mp-destaque-suave);
  color: var(--mp-destaque-texto);
  font-size: 22px;
}
.mp-corpo .mp-dialogo-acoes {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.mp-corpo .mp-dialogo-acoes .mp-botao {
  min-height: 46px;
  padding: 0 12px;
  font-size: 14px;
  white-space: normal;
}
.mp-corpo .mp-app.dialogo-aberto .mp-dialogo-fundo {
  opacity: 1;
  visibility: visible;
  transition: opacity 200ms ease, visibility 0s;
}
.mp-corpo .mp-app.dialogo-aberto .mp-dialogo {
  opacity: 1;
  visibility: visible;
  transform: translateY(-50%);
  transition: opacity 200ms ease, transform 200ms ease, visibility 0s;
}
.mp-corpo {
  /* ============================ Toast ============================ */
}
.mp-corpo .mp-toast {
  position: absolute;
  top: calc(var(--mp-topo) + 8px);
  left: 50%;
  z-index: 60;
  width: max-content;
  max-width: calc(100% - 32px);
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 16px;
  background: var(--mp-primaria-escura);
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  box-shadow: var(--mp-sombra-forte);
  /* Fica por cima do cabeçalho; sem isso bloqueia o botão voltar enquanto aparece. */
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, -16px);
  transition: opacity 220ms ease, transform 220ms ease, visibility 0s linear 220ms;
}
.mp-corpo .mp-toast.visivel {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
  transition: opacity 220ms ease, transform 220ms ease, visibility 0s;
}
.mp-corpo .mp-toast i {
  color: #fff;
  opacity: 0.85;
}
.mp-corpo {
  /* ============================ Responsivo ============================ */
}
@media (max-width: 1023px) {
  .mp-corpo .mp-apresentacao {
    display: none;
  }
}
.mp-corpo {
  /* No celular o app ocupa a tela toda, sem a moldura de aparelho. */
}
@media (max-width: 600px), (max-height: 660px) and (max-width: 900px) {
  .mp-corpo {
    background: var(--mp-fundo) !important;
  }
  .mp-corpo .mp-palco {
    display: block;
    min-height: 0;
    padding: 0;
    background: none;
  }
  .mp-corpo .mp-aparelho {
    width: 100%;
    height: 100vh;
    height: 100dvh;
    min-height: 0;
    padding: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
  }
  .mp-corpo .mp-aparelho::before {
    display: none;
  }
  .mp-corpo .mp-aparelho .mp-app {
    --mp-topo: max(env(safe-area-inset-top), 14px);
    --mp-base: env(safe-area-inset-bottom);
  }
  .mp-corpo .mp-app {
    border-radius: 0;
  }
}
.mp-corpo {
  /* Telas baixas (iPhone SE e afins): compacta o cartão para as ações caberem. */
}
@media (max-height: 700px) {
  .mp-corpo .mp-cartao-capa {
    flex-basis: 34%;
    min-height: 120px;
  }
  .mp-corpo .mp-cartao-capa .mp-avatar {
    --tam: 72px;
  }
  .mp-corpo .mp-cartao-corpo {
    gap: 8px;
    padding: 12px 16px 14px;
  }
  .mp-corpo .mp-cartao-nome {
    font-size: 19px;
  }
  .mp-corpo .mp-acao {
    width: 54px;
    height: 54px;
    font-size: 22px;
  }
  .mp-corpo .mp-acao-info {
    width: 42px;
    height: 42px;
    font-size: 16px;
  }
  .mp-corpo .mp-acoes-cartao {
    padding: 10px 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .mp-corpo *, .mp-corpo *::before, .mp-corpo *::after {
    animation-duration: 1ms !important;
    transition-duration: 1ms !important;
  }
}

@keyframes mp-digitando {
  0%, 60%, 100% {
    transform: translateY(0);
    opacity: 0.4;
  }
  30% {
    transform: translateY(-4px);
    opacity: 1;
  }
}
@keyframes mp-msg-entrada {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
body {
  font-family: "Poppins", sans-serif;
  background-color: #fff !important;
  overflow-x: hidden;
}

.env-badge {
  font-size: 12px;
  border-radius: 4px;
  display: inline-block;
  font-weight: 300;
  color: #fff;
  padding: 0.25rem 1rem;
}

.bg-danger {
  background-color: #fc4b6c !important;
}

main {
  min-height: calc(100vh - 252px);
}

i {
  color: #a8a8a8;
}

a, .nav-link {
  text-decoration: none;
  color: #a1a1a1;
}

.nav-link {
  padding: 8px 16px;
}
.nav-link:hover, .nav-link:focus {
  color: #a1a1a1;
}

.breadcrumb-link {
  color: #a1a1a1 !important;
}

a:hover {
  color: #c1c1c1;
}

.preloader {
  background-color: rgba(255, 255, 255, 0.7607843137);
}

.error {
  color: #df5645;
}

.bg-primary {
  background-color: #a1a1a1 !important;
}

.bg-primary-light-5 {
  background-color: #c7c7c7;
}

.form-control {
  font-size: 14px;
  transition: all ease 0.3s;
  color: #707070;
  transition: all ease 0.3s;
}
.form-control::placeholder {
  color: #707070;
}
.form-control:focus {
  color: #75868f;
  background-color: #fff;
  border-color: #25476a;
  outline: 0;
  box-shadow: inset 0 1px 2px rgba(55, 60, 67, 0.075), 0 0 0.75rem 0 rgba(0, 0, 0, 0.125);
}

.label-control {
  font-size: 14px;
  margin: 0;
  color: #333333 !important;
}

select:focus-visible {
  outline: none;
}

.h5, h5 {
  font-size: 0.9375rem;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  line-height: 1.2;
  color: #373c43;
}

p {
  color: #363636;
  font-size: 13px;
}

.text-primary {
  color: #a1a1a1 !important;
}

.text-secondary {
  color: #a2a2a2 !important;
}

.text-md-gray {
  color: #777;
}

.text-title {
  font-weight: 600;
  font-size: 18px;
}

.icon-footer {
  color: #a2a2a2;
}

.text-align-justify {
  text-align: justify;
}

.text-btn-primary {
  color: #a3a3a3;
}

.field-validation-error {
  font-size: 12px;
  color: #df5645;
}

.card {
  border: 0;
  box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.1607843137);
}

.card-footer {
  padding: 15px 20px;
  background-color: #fff;
  border-top: 1px solid rgba(0, 0, 0, 0.07);
}

.footer-btm .back-to-top a {
  background-color: #a3a3a3;
  border-color: #a3a3a3;
  bottom: 89px !important;
  right: 28px !important;
  z-index: 9998 !important;
}
.footer-btm .back-to-top a:hover {
  background-color: #c9c9c9;
  border-color: #c9c9c9;
}
.footer-btm .back-to-top a i {
  color: #a5a5a5;
}

.search-box {
  position: relative;
}
.search-box i {
  position: absolute;
  right: 0px;
  top: 4px;
  font-size: 16px;
  cursor: pointer;
  padding: 6px 24px 6px 12px;
}
.search-box .form-control {
  font-size: 14px;
  height: 35px;
}

.form-group {
  margin-bottom: 1rem;
}

.img-datasheet {
  width: 100%;
  max-width: 500px;
  max-height: 440px;
  height: 100%;
}

.img-supplier-home {
  height: 100%;
  max-height: 60px;
  min-height: 60px;
  object-fit: contain;
  width: 100%;
  max-width: 200px;
}

.img-products-home {
  margin: auto;
  width: 100%;
  max-width: 220px;
  height: 193px;
  object-fit: cover;
}

.img-products-default-home {
  object-fit: cover;
  margin: auto;
  width: 100%;
  max-width: 220px;
  height: 100%;
  max-height: 193px;
}

.title-products-home {
  height: 100%;
  min-height: 69px;
}

.textarea-readonly {
  background-color: #f3f5f9;
  min-height: 120px;
  max-height: 350px;
  overflow-y: scroll;
  resize: vertical;
}

.form-check-input {
  border-color: #a1a1a1;
}
.form-check-input:checked {
  background-color: #a1a1a1;
  border-color: #a1a1a1;
}
.form-check-input:focus, .form-check-input:focus-visible {
  border-color: #a1a1a1;
}

.form-switch {
  padding-left: 2.6em !important;
}
.form-switch .form-check-input {
  background-color: #b4b9c0;
  border-color: #b4b9c0;
  cursor: pointer;
  height: 1.35em;
  margin-top: 0;
  position: relative;
  top: 0.5625rem;
  transform: translateY(calc(-50% + 1px));
  transition: background 0.35s !important;
  user-select: none;
  width: 2.1em;
  margin-left: -2.6em;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
  border-radius: 2.1em;
}
.form-switch .form-check-input:checked {
  background-color: #a1a1a1;
  border-color: #a1a1a1;
}
.form-switch .form-check-input:focus {
  box-shadow: 0 0 0.25rem 0.25rem rgba(132, 152, 171, 0.325);
}

.form-check {
  display: block;
  min-height: 1.125rem;
  padding-left: 1.75em;
  margin-bottom: 0.125rem;
}

.form-control {
  padding: 8px 16px;
  border-color: rgba(0, 0, 0, 0.07) !important;
}

.form-control:disabled, .form-control[readonly] {
  background-color: #f3f5f9;
  border-color: #edf1f6;
  opacity: 1;
}

.dropdown-menu {
  animation: growDown 300ms ease-in-out forwards;
}

.mb-200 {
  margin-bottom: 200px;
}

.banner-img-statement {
  width: 100%;
  max-height: 550px;
  object-fit: contain;
}

.blockquote > :last-child {
  margin-bottom: inherit;
}

.scrollable-content::-webkit-scrollbar {
  width: 0.1875rem;
}

.scrollable-content {
  scrollbar-color: rgba(135, 139, 144, 0.5) rgba(255, 255, 255, 0);
  scrollbar-width: thin;
}

input[type=radio] {
  -webkit-appearance: none;
  width: 12px;
  height: 12px;
  border: 1px solid #a1a1a1;
  border-radius: 50%;
  outline: none;
  transition: ease 0.3s;
}

input[type=radio]:hover {
  box-shadow: 0 0 1px 0px #a1a1a1 inset;
}

input[type=radio]:before {
  content: "";
  display: block;
  width: 60%;
  height: 60%;
  margin: 20% auto;
  border-radius: 50%;
}

input[type=radio]:checked:before {
  background: #a1a1a1;
}

input::-ms-reveal,
input::-ms-clear {
  display: none;
}

@keyframes growDown {
  0% {
    opacity: 0;
    top: -10px;
  }
  100% {
    opacity: 1;
    top: 0;
  }
}
@media (min-width: 1400px) {
  .container {
    max-width: 1140px;
  }
}
.use-bootstrap-tag > button {
  border-radius: 5px;
  padding: 3px 10px !important;
}

.ck-editor__editable {
  min-height: 300px;
}

.campo-editavel {
  border: 1px dashed #007bff;
  padding: 5px;
  min-height: 30px;
  transition: all 0.3s ease;
}

.campo-editavel:focus {
  border: 1px solid #007bff;
  outline: none;
  box-shadow: 0 0 5px rgba(0, 123, 255, 0.5);
}

.campo-editavel:empty:before {
  content: attr(data-placeholder);
  color: #6c757d;
  font-style: italic;
}

.div-ultima-movimentacao {
  background-color: #e9f7ec;
  border-left: solid 3px #40a356;
  border-radius: 5px;
  padding: 0.75rem;
}

.selectize-input {
  border: 1px solid rgba(0, 0, 0, 0.07) !important;
  min-height: 38px !important;
  /*max-height: 38px !important;*/
  color: #75868f !important;
  line-height: 23px !important;
  /*    overflow: hidden;
  width: 100%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  text-overflow: ellipsis;*/
}

.pagination-box {
  margin: 20px 0;
  padding: 15px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}

.home-personalizada-pagination {
  margin: 15px 0 !important;
}

.pagination-box .text-muted {
  font-size: 12px;
  color: #a2a2a2;
  order: 1;
}

.pagination-box ul {
  margin: 0;
  padding: 0;
  justify-content: flex-end;
  order: 2;
}

.pagination-box .list-inline-item {
  margin: 0 1px;
}

.pagination-box .list-inline-item a {
  display: inline-block;
  padding: 6px 10px;
  color: #a2a2a2;
  text-decoration: none;
  border-radius: 4px;
  transition: all 0.3s ease;
  font-size: 12px;
  line-height: 1.4;
  min-width: 32px;
  text-align: center;
}

.pagination-box .list-inline-item a:hover {
  background-color: #a2a2a2;
  color: white;
}

.pagination-box .list-inline-item.active a {
  background-color: #a1a1a1;
  color: white;
}

.pagination-box .list-inline-item.active a:hover {
  background-color: #0056b3;
  border-color: #0056b3;
}

.pagination-box .list-inline-item a.disabled {
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}

.pagination-box .list-inline-item span {
  display: inline-block;
  padding: 6px 10px;
  color: #a2a2a2;
  font-size: 12px;
  line-height: 1.4;
}

.pagination-box .fa {
  font-size: 10px;
}

/* Setas de navegação com estilo mais discreto */
.pagination-box .first-page-btn a,
.pagination-box .prev-page-btn a,
.pagination-box .next-page-btn a,
.pagination-box .last-page-btn a {
  padding: 6px 8px;
  min-width: 28px;
}

@media (max-width: 768px) {
  .pagination-box {
    flex-direction: column;
    gap: 10px;
  }
  .pagination-box .text-muted {
    order: 2;
  }
  .pagination-box ul {
    order: 1;
    justify-content: center;
  }
  .pagination-box .list-inline-item a {
    padding: 5px 8px;
    font-size: 11px;
    min-width: 28px;
  }
  .pagination-box .list-inline-item {
    margin: 0 0.5px;
  }
  .pagination-box .first-page-btn a,
  .pagination-box .prev-page-btn a,
  .pagination-box .next-page-btn a,
  .pagination-box .last-page-btn a {
    padding: 5px 6px;
    min-width: 24px;
  }
}
.pagination-box .fa-spinner {
  animation: spin 1s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.pagination-box .list-inline-item a.loading {
  background-color: transparent !important;
  border-color: #a2a2a2 !important;
  pointer-events: none;
}

#cards-container.loading {
  opacity: 0.7;
  pointer-events: none;
}

.pagination-box .page-link.disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.accordion-politicas-btn {
  font-size: 14px;
  color: #373c43;
  font-weight: 400;
  border-left: 2px solid #a1a1a1;
  padding: 12px 16px;
}

.accordion-politicas-btn:focus {
  border-color: #a1a1a1;
}

.accordion-politicas-btn:not(.collapsed) {
  background-color: #c7c7c7;
  color: #a1a1a1;
  font-weight: 500;
  border-color: #a1a1a1;
}

.accordion-item:last-of-type .accordion-politicas-btn.collapsed {
  border-bottom-left-radius: 0;
  margin-top: 8px;
}

.accordion-item:last-of-type .accordion-politicas-btn {
  margin-top: 8px;
}

@media (max-width: 1024px) {
  .card-politicas-header {
    flex-direction: column-reverse !important;
    align-items: flex-end !important;
  }
}
#calendarDash .fc-col-header-cell .fc-scrollgrid-sync-inner {
  overflow: hidden;
}
#calendarDash .fc-col-header-cell-cushion {
  color: #707070 !important;
}

.text-color-light {
  color: #707070;
  font-size: 14px;
  margin-bottom: 0;
  letter-spacing: 0;
}

.text-muted {
  --bs-text-opacity: 1;
  color: #a5b1b8 !important;
}

.reconhecimentos-container {
  position: relative;
  padding-left: 40px;
}

.reconhecimentos-timeline {
  position: absolute;
  left: 12px;
  top: 0;
  bottom: 0;
  width: 2px;
  background: #e5e7eb;
}

.reconhecimento-wrapper {
  position: relative;
  margin-bottom: 24px;
}

.reconhecimento-wrapper::before {
  content: "";
  position: absolute;
  left: -32px;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
  height: 10px;
  background: #a1a1a1;
  border: 2px solid #ffffff;
  border-radius: 50%;
  box-shadow: 0 0 0 3px rgba(var(--primary-rgb), 0.1);
  z-index: 2;
}

.reconhecimento-card {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 24px;
  transition: all 0.2s ease;
  position: relative;
}

.reconhecimento-card:hover {
  border-color: #a1a1a1;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
  transform: translateX(4px);
}

.reconhecimento-titulo {
  font-size: 18px;
  font-weight: 600;
  color: #111827;
  margin-bottom: 8px;
  line-height: 1.4;
}

.reconhecimento-descricao {
  font-size: 14px;
  color: #6b7280;
  line-height: 1.6;
  margin-bottom: 20px;
  overflow-wrap: break-word;
}

.reconhecimento-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 16px;
  border-top: 1px solid #f3f4f6;
}

.reconhecimento-meta {
  display: flex;
  align-items: center;
  gap: 8px;
}

.reconhecimento-meta-label {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #9ca3af;
}

.reconhecimento-meta-value {
  font-size: 14px;
  color: #374151;
  font-weight: 500;
}

.empty-state {
  background: linear-gradient(135deg, #f9fafb 0%, #f3f4f6 100%);
  border: 2px dashed #d1d5db;
  border-radius: 16px;
  padding: 48px 32px;
  text-align: center;
  margin: 0 auto;
  max-width: 400px;
}

.empty-state-icon {
  font-size: 48px;
  margin-bottom: 16px;
  opacity: 0.4;
}

.empty-state-text {
  font-size: 15px;
  color: #6b7280;
  font-weight: 500;
  margin: 0;
}

.sk-flow-dot {
  background-color: #a1a1a1 !important;
  margin-top: 1rem;
}

@keyframes pulseScale {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.08);
  }
  100% {
    transform: scale(1);
  }
}
.pulse {
  animation: pulseScale 450ms ease-in-out;
  border-radius: 4px;
}

.descricao-reconhecimento {
  max-width: 300px;
  min-width: 200px;
  height: 100px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  word-break: break-word;
  overflow-wrap: break-word;
}

.img-logo-cadastro {
  max-width: 180px !important;
  margin-left: 0 !important;
  margin-top: 30px !important;
}

.btn-toggle-password {
  position: absolute;
  right: 5px;
  top: 30px;
  border: none;
  background: transparent;
}

@media (max-width: 767px) {
  .title-cadastro {
    margin-top: 0 !important;
  }
}
.selectize-dropdown-content .optgroup-header {
  font-weight: bold;
  color: #000;
}

.selectize-dropdown-content {
  max-height: 400px;
}

.btn-banner-edit {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 10;
  text-decoration: none;
}

.btn-banner-edit-icon-bg {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.btn-banner-edit-icon-bg i {
  font-size: 16px;
}

.btn-banner-edit:hover {
  opacity: 1;
  color: #fff;
}

.btn-section-edit {
  color: var(--color-text-muted, #6c757d);
  font-size: 13px;
  text-decoration: none;
  opacity: 0.6;
  vertical-align: middle;
  transition: opacity 0.15s ease;
}

.btn-section-edit:hover {
  opacity: 1;
  color: inherit;
}

.border:not(.border-primary), .border-top:not(.border-primary), .border-bottom:not(.border-primary), .border-start:not(.border-primary), .border-end:not(.border-primary) {
  border-color: rgba(0, 0, 0, 0.07) !important;
}

@media (min-width: 992px) {
  .card-home-slider .owl-item.ultimo-card-home-visivel {
    margin-right: 0 !important;
  }
}
.bg-primary-subtle {
  background-color: #c6c6c6 !important;
}

.env-badge-logo {
  position: absolute;
  top: -4px;
  right: -8px;
  background: #dc3545;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.4;
  padding: 1px 6px;
  border-radius: 6px;
  z-index: 3;
  pointer-events: none;
}

.pg-header-notif {
  position: absolute;
  top: 2px;
  right: 0;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #dc3545;
  border: 2px solid #fff;
}
