@import url('https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap');

*, 
*:after,
*:before {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    text-decoration: none;
}

:root {
    --bg: #2B2D31;
    --linha: #52575C;
    --linhaLogin: #373A3E;
    --container: #2F3136;
    --container02: #232428;
    --container03: #313338;
    --txtColor: #fff;
    --campoTexto: #414449;
    --verde: #B1DF01;
    --erro: #FF6062;
    --menu: #1E1F22;
    --tagPresencial: rgba(18, 222, 63, 0.5);
    --tagOnline: rgba(222, 18, 777, 0.5);
    --txtColor02: #A7A7A7;
    --tagRemovido: #EA4B4B;
    --nivelSenhaVerde: #20DF01;
    --nivelSenhaAmarelo: #DFC901;
    --nivelSenhaVermelho: #EA4B4B;
    --aquecimento: #B1DF01;
    --reconhecimento: #FFC700;
    --trabalho: #EA4B4B;
    --bordaCampo: rgba(207, 207, 207, 0.5);
  }

  :root {
        --bg-alt: #232428;
        --panel: rgba(47, 49, 54, 0.92);
        --accent: #b1df01;
        --text: #ffffff;
        --muted: #a7a7a7;
      }

  *::-webkit-scrollbar {
    height: 10px;
    width: 10px;
  }
  *::-webkit-scrollbar-track {
    border-radius: 5px;
    background-color: var(--container);
  }
  
  *::-webkit-scrollbar-track:hover {
    background-color: var(--container);
  }
  
  *::-webkit-scrollbar-track:active {
    background-color: var(--container);
  }
  
  *::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background-color: var(--campoTexto);
  }
  
  *::-webkit-scrollbar-thumb:hover {
    background-color: var(--campoTexto);
  }
  
  *::-webkit-scrollbar-thumb:active {
    background-color: var(--campoTexto);
  }

html, body {
    height: 100%;
    color: var(--txtColor) !important;
    font-family: "Inter", sans-serif !important;
}

body{
    font-size: 100%;
    list-style-type: none;
    background-color: var(--bg) !important;
}

a {
    color: var(--verde);
    text-decoration: none !important;
}

ol, ul {
    padding-left: 0;
}

.d-none {
    display: none !important;
}

body.login {
    background: url(../img/bg_login.jpg) no-repeat;
    background-size: cover;
    display: flex;
    flex-wrap: wrap;
    height: 100%;
}

input[type="text"],
input[type="date"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="checkbox"],
textarea,
 select {
    background: var(--campoTexto);
    border: 2px solid var(--campoTexto);
    width: 100%;
    padding: 15px 10px;
    color: var(--txtColor);
    font-size: 16px;
    border-radius: 10px;
}

input[type="text"]:disabled,
input[type="date"]:disabled,
input[type="email"]:disabled,
input[type="password"]:disabled,
input[type="search"]:disabled,
input[type="checkbox"]:disabled,
textarea:disabled,
 select:disabled {
    opacity: 0.2;
}

select {
    -webkit-appearance: none;
    background-image: url(../img/icon_seta_select.svg);
    background-repeat: no-repeat;
    background-position: right 10px center;
    padding-right: 40px;
}

input[type="date"] {
    padding: 10px;
}

input[type="range"] {
	font-size: 1.5rem;
	width: 12.5em;
}

input[type="range"] {
	color: var(--verde);
	--thumb-height: 1.125em;
	--track-height: 0.125em;
	--track-color: var(--txtColor);
	--brightness-hover: 180%;
	--brightness-down: 80%;
	--clip-edges: 0.125em;
    width: 100%;
    overflow: hidden;
    background: none;
    cursor: grab;
}

input[type="range"],
input[type="range"]::-webkit-slider-runnable-track,
input[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none;
	transition: all ease 100ms;
	height: var(--thumb-height);
}

input[type="range"]::-webkit-slider-runnable-track,
input[type="range"]::-webkit-slider-thumb {
	position: relative;
}

input[type="range"]::-webkit-slider-thumb {
	--thumb-radius: calc((var(--thumb-height) * 0.5) - 1px);
	--clip-top: calc((var(--thumb-height) - var(--track-height)) * 0.5 - 0.5px);
	--clip-bottom: calc(var(--thumb-height) - var(--clip-top));
	--clip-further: calc(100% + 1px);
	--box-fill: calc(-100vmax - var(--thumb-width, var(--thumb-height))) 0 0
		100vmax currentColor;

	width: var(--thumb-width, var(--thumb-height));
	background: linear-gradient(currentColor 0 0) scroll no-repeat left center /
		50% calc(var(--track-height) + 1px);
	background-color: currentColor;
	box-shadow: var(--box-fill);
	border-radius: var(--thumb-width, var(--thumb-height));

	filter: brightness(100%);
	clip-path: polygon(
		100% -1px,
		var(--clip-edges) -1px,
		0 var(--clip-top),
		-100vmax var(--clip-top),
		-100vmax var(--clip-bottom),
		0 var(--clip-bottom),
		var(--clip-edges) 100%,
		var(--clip-further) var(--clip-further)
	);
}

input[type="range"]::-webkit-slider-runnable-track {
	background: linear-gradient(var(--track-color) 0 0) scroll no-repeat center /
		100% calc(var(--track-height) + 1px);
}


label {
    display: block;
    margin-bottom: 7px;
}

p {
    margin-bottom: 15px;
}

input.erro {
    border-color: var(--erro);
}

label.erro {
    color: var(--erro);
}

.flex-1 {
    flex:1;
}

.flex-2 {
    flex:2;
}

.flex-3 {
    flex:3;
}

button {
    cursor: pointer;
}

button.verde, button.linha_verde, button.linha_verde02 {
    border: none;
    padding: 15px 10px;
    border-radius: 100px;
    width: 100%;
    font-weight: 700;
    font-size: 20px;
    margin-bottom: 15px;
    cursor: pointer;
    white-space: nowrap;
}

button:active {
    transform: translateY(2px);
}

button.verde {
    background: var(--verde);
    color: var(--bg);
}

button.linha_verde {
    border: 2px solid var(--verde);
    color: var(--verde);
    background: transparent;
}

button.linha_verde02 {
    border: 1px solid var(--verde);
    color: var(--verde);
    background: transparent;
    padding: 10px 15px;
}


body.login div.cont_login {
    flex: 4;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0 30px;
}

body.login div.cont_dicas {
    flex: 6;
}

body.login div.cont_login {
    background-color: var(--bg);
}

body.login div.cont_login div.vertical_padding {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}

body.login div.cont_login div.padding {
    min-width: 452px;
}

body.login div.cont_login div.padding_form {
    padding: 20px 30px;
    border-top: 1px solid var(--linhaLogin);
    margin-top: 20px;
}

body.login div.cont_login h1 {
    overflow: hidden;
    text-indent: -9999px;
    background: url(../img/logo.svg) no-repeat center;
    background-size: contain;
    height: 60px;
}

div.links_login {
    margin-bottom: 20px;
}

div.links_login a {
    display: inline-block;
    text-indent: -9999px;
    overflow: hidden;
    width: 31px;
    height: 31px;
    background-size: contain;
    background-repeat: no-repeat;
    margin: 0 5px;
}

div.links_login a.instagram {
    background-image: url(../img/icon_instagram.svg);
}

div.links_login a.website {
    background-image: url(../img/icon_website.svg);
}

div.links_login a.tiktok {
    background-image: url(../img/icon_tiktok.svg);
}


div.cont_dicas {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
}

div.cont_dicas div.padding {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding-right: 10%;
    padding-bottom: 20%;
}

div.cont_dicas div.padding p {
    font-size:  25px;
    width: 343px;
    text-align: right;
}

div.cont_dicas div.padding h2 {
    font-size: 80px;
    text-align: right;
}

.d-flex {
    display: flex;
}

form.cadastro {
    max-width: 934px;
    margin: 0 auto;
}

div.header {
    background: var(--container);
    text-align: center;
    padding: 20px;
}

div.header h1,
div.menu h2 {
    overflow: hidden;
    text-indent: -9999px;
    display: inline-block;
    width: 330px;
    height: 44px;
    background: url(../img/logo.svg) no-repeat;
    background-size: contain;
    background-position: center;
}

form.cadastro h2 {
    margin: 20px 0;
}

form.cadastro p,
div.p {
    margin-bottom: 20px;
}

div.cont_cadastro {
    background: var(--container);
    padding: 15px 20px;
    border-radius: 20px;
    margin-bottom: 20px;
}

div.cont_cadastro h3 {
    margin-bottom: 15px;
}

ul.checkbox {
    list-style: none;
}

ul.checkbox li {
    display: flex;
    position: relative;
    background: var(--campoTexto);
    margin-bottom: 10px;
    border-radius: 10px;
}

ul.checkbox li.disabled {
    opacity: 0.2;
}

ul.checkbox li label {
    margin-bottom: 0;
    margin-left: 7px;
    padding: 20px 20px 20px 40px;
    display: block;
    width: 100%;
}

ul.checkbox li input[type="checkbox"] {
    opacity: 0;
    position: absolute;
    top: 20px;
    left: 15px;
    z-index: 2;
}

div.cont_checkbox input[type="checkbox"] {
    position: absolute;
    top: 3px;
    left: 2px;
    z-index: 2;
    opacity: 0;
}

div.cont_checkbox ~ label {
    display: block;
    padding-left: 20px;
}

div.cont_checkbox input[type="checkbox"] ~ span {
    display: block;
    background: var(--bg);
    width: 18px;
    height: 18px;
    border-radius: 3px;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 1;
}


ul.checkbox li input[type="checkbox"] ~ span {
    display: block;
    background: var(--bg);
    width: 18px;
    height: 18px;
    border-radius: 3px;
    position: absolute;
    top: 20px;
    left: 15px;
    z-index: 1;
}

div.cont_checkbox input[type="checkbox"] ~ span {
    background: var(--campoTexto);
}

ul.checkbox li input[type="checkbox"]:checked ~ span,
div.cont_checkbox input[type="checkbox"]:checked ~ span {
    display: block;
    width: 18px;
    height: 18px;
    border-radius: 3px;
    background: var(--verde) url(../img/icon_checkbox.svg) no-repeat;
    background-position: center;
}

div.cont_checkbox {
    position: relative;
}

div.header_master {
    background: var(--container);
    display: flex;
    height: 70px;
}

div.header_master div {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

div.header_master div.cont_btn_menu {
    width: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
}

div.header_master div.cont_btn_menu button.btn_menu {
    overflow: hidden;
    text-indent: -9999px;
    width: 34px;
    height: 31px;
    background: url(../img/icon_menu.svg) no-repeat center;
    border: none;
    cursor: pointer;
}

div.header_master h1 {
    overflow: hidden;
    text-indent: -9999px;
    display: inline-block;
    width: 296px;
    height: 39px;
    background: url(../img/logo.svg) no-repeat;
    background-size: contain;
    background-position: left;
}

div.cont_home {
    display: flex;
    gap: 30px;
    padding: 30px;
}

div.cont_home h2 {
    font-size: 25px;
    margin-bottom: 20px;
}

ul.resumo {
    list-style: none;
    width:  179px;
}

ul.resumo li {
    padding: 5px 0;
}

ul.resumo li label {
    font-size: 20px;
}

ul.resumo li b {
    font-size: 40px;
    color: var(--verde);
}

ul.resumo div.padding {
    background: var(--container);
    padding: 20px;
    border-radius: 30px;
}

ul.resumo div.padding.destaque {
    background: var(--menu);
}

div.cont_home div.cont_alunos {
    flex: 5;
}

div.cont_home ul.cont_info {
    flex: 2;
}

ul.alunos {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    overflow: hidden;
    max-height: calc(100vh - 250px);
    justify-content: flex-start;
    align-items: flex-start;
    margin: 0 auto;
}

ul.alunos:hover {
    overflow: auto;
}

ul.alunos div.aluno {
    background: var(--container);
    border-radius: 20px;
    padding: 17px;
    width: 155px;
}

ul.alunos div.aluno label {
    font-size: 15px;
}

ul.alunos div.aluno img {
    width: 100%;
    border-radius: 100%;
    margin-bottom: 10px;
    max-width: 121px;
}

ul.cont_info {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

ul.cont_info li {
    flex: 1;
    display: flex;
    flex-direction: column;
}

ul.cont_info div.padding {
    background: var(--container);
    display: flex;
    padding: 20px 30px;
    flex: 1;
    border-radius: 30px;
}

ul.cont_info button.calendario {
    background: url(../img/icon_calendario.svg) no-repeat;
    background-size: 53px auto;
    background-position: top center;
    padding-top: 70px;
    color: var(--txtColor);
    border: none;
    cursor: pointer;
}

ul.cont_info p {
    margin-bottom: 0;
    display:flex;
    flex-direction: column;

    justify-content: center;
}

div.cont_botoes.separados {
    display: flex;
    justify-content: space-between;
    padding-right: 50px;
    padding-top: 30px;
}

div.cont_botoes button.btn_texto {
    border: none;
    background: none;
    color: var(--verde);
    font-size: 18px;
}

div.cont_botoes button.mais_aluno {
    font-weight: bold;
    padding-left: 30px;
    background-image: url(../img/icon_plus.svg);
    background-repeat: no-repeat;
    background-position: left center;
    font-size: 20px;
}

ul.cont_info label {
    font-size: 15px;
}

ul.cont_info b {
    font-size: 25px;
}

.loading-screen {
    background-color: rgba(27,27,27,0.85);
    backdrop-filter: blur(100px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
}

.loading-icon {
    border: 8px solid var(--verde);
    border-top: 6px solid transparent;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: spin 2s linear infinite;
    padding: 30px;
}

.loading-text {
    margin-top: 30px;
}

.loading-foto-consultoria {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(27,27,27,0.85);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 10;
    border-radius: 10px;
}

/* Modal centralizado e responsivo */
#modalCropLogo .cont_content_modal {
    max-width: 95vw;
    max-height: 95vh;
    width: auto;
    padding: 32px 24px;
    box-sizing: border-box;
    overflow: auto;
    border-radius: 20px;
    background: var(--container, #232428);
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Imagem do cropper nunca maior que o modal/viewport */
#cropperLogoImg {
    max-width: 80vw;
    max-height: 60vh;
    width: auto;
    height: auto;
    display: block;
    margin: 0 auto;
    border-radius: 10px;
    background: #222;
}

button.verde > .loading-icon {
    border: 5px solid var(--bg);
    border-top: 6px solid transparent;
    border-radius: 50%;
    width: 25px;
    height: 25px;
    animation: spin 2s linear infinite;
    padding: 5px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

div.menu {
    position: absolute;
    z-index: 100;
    top: 0;
    left: 0;
    bottom: 0;
    background: var(--menu);
    padding: 30px 0 0 30px;
    display: flex;
    flex-direction: column;
}

button.fechar_menu {
    overflow: hidden;
    text-indent: -9999px;
    width: 25px;
    height: 25px;
    background: url(../img/icon_fecha_menu.svg) no-repeat center;
    background-size: contain;
    border: none;
    position: absolute;
    top: 7px;
    right: -12.5px;
}

ul.lista_menu {
    list-style: none;
    margin-top: 30px;
    margin-bottom: 20px;
}

ul.lista_menu li {
    position: relative;
}

ul.lista_menu li.disabled {
    opacity: 0.5;
}

ul.lista_menu a {
    display: block;
    border-bottom: 1px solid var(--linhaLogin);
    font-size: 25px;
    padding: 20px;
    color: var(--txtColor);
    padding-left: 70px;
    background-repeat: no-repeat;
    background-position: 20px center;
    background-size: 30px;
}

ul.lista_menu a:hover {
    background-color: var(--container);
}

ul.lista_menu a.home {background-image: url(../img/icon_home.svg);}
ul.lista_menu a.agenda {background-image: url(../img/icon_agenda.svg);}
ul.lista_menu a.alunos {background-image: url(../img/icon_alunos.svg);}
ul.lista_menu a.treinos {background-image: url(../img/icon_treinos.svg);}
ul.lista_menu a.dietas {background-image: url(../img/icon_dietas.svg);}
ul.lista_menu a.financeiro {background-image: url(../img/icon_financeiro.svg);}
ul.lista_menu a.relatorios_mensagens {background-image: url(../img/icon_relatorios_mensagens.svg);}
ul.lista_menu a.minha_consultoria {background-image: url(../img/icon_minha_consultoria.svg);}


ul.lista_menu button.tag_em_breve {
    border: 1px solid var(--verde);
    color: var(--verde);
    padding: 5px;
    font-size: 10px;
    background: none;
    border-radius: 10px;
    display: inline-block;
    position: absolute;
    right: 0;
    top: 10px;
}


div.menu div.usuario {
    display: flex;
    align-items: center;
    justify-content: stretch;
    gap: 10px;
}

div.menu div.usuario img {
    border-radius: 100%;
    width: 88px;
}

div.menu div.usuario p {
    display: flex;
    align-items: center;
    margin-bottom: 0;
}

div.menu div.usuario p span {
    display: block;
    width: 220px;
}

div.menu div.usuario label {
    margin-bottom: 0;
}

div.menu div.usuario b {
    color: var(--verde);
    font-size: 22px;
}

div.menu div.usuario label {
    font-size: 14px;
}

div.menu button.logout {
    background: url(../img/icon_logout.svg) no-repeat center;
    overflow: hidden;
    text-indent: -9999px;
    width: 35px;
    height: 40px;
    background-size: contain;
    border: none;
    cursor: pointer;
}

div.menu div.scroll {
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    padding-right: 30px;
    padding-bottom: 30px;
}

div.pag_pendente {
    background: var(--container);
    margin-bottom: 20px;
    border-radius: 10px;
}

div.pag_pendente p.pag_pendente {
    border-bottom: 1px solid var(--linhaLogin);
    padding: 20px 20px 20px 70px;
    background: url(../img/icon_pagamento_pendente.svg) no-repeat 20px center;
}

div.pag_pendente p.pag_pendente b {
    display: block;
    font-size: 15px;
}

div.pag_pendente p.pag_pendente span {
    font-size: 12px;
}

div.pag_pendente p.prazo_inativar {
    text-align: center;
    padding: 5px 20px;
}

div.pag_pendente p.prazo_inativar b {
    font-size: 16px;
}

div.header_master div.pag_pendente {
    background: var(--menu);
    margin: 5px;
}

div.header_master div.pag_pendente p {
    margin-bottom: 0;
}

div.header_master div.pag_pendente p.pag_pendente {
    border-bottom:none; 
}

div.header_master div.pag_pendente p.prazo_inativar b {
    display: block;
}

div.header_master div.pag_pendente p.prazo_inativar span {
    font-size: 12px;
}

li.treinos div.d-flex {
    justify-content: space-between;
    align-items: flex-start;
}

ul.periodo {
    display: flex;
    gap: 5px;
    list-style: none;
    background: var(--menu);
    border-radius: 200px;
}

ul.periodo li {
    position: relative;
}

ul.periodo li label {
    text-align: center;
    padding: 5px;
    color: var(--verde);
}

ul.periodo li button,
ul.periodo li label {
    border: none;
    width: 100%;
    padding: 5px 10px;
    border-radius: 200px;
    background: transparent;
    color: var(--txtColor);
}

ul.periodo li label {
    display: block;
}

ul.periodo li button.active,
ul.periodo li input:checked ~ label {
    display: block;
    background: var(--verde);
    color: var(--bg);
}

ul.periodo li input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    width: 0;
    height: 0;
}

form.planos ul.periodo {
    max-width: 502px;
    margin: 0 auto;
}

form.planos ul.periodo li {
    flex: 1;
}

form.planos ul.periodo li label {
    margin-bottom: 0;
    padding: 5px 10px;
}

form.planos h2 {
    text-align: center;
}

div.plano {
    margin-top: 40px;
    margin-bottom: 80px;
}

ul.opcoes_plano {
    display: flex;
    list-style: none;
    gap: 20px;
}

ul.opcoes_plano h3 {
    font-size: 40px;
    color: var(--verde);
    border-bottom: 1px solid var(--linhaLogin);
    padding-bottom: 10px;
    margin-bottom: 10px;
}

ul.opcoes_plano > li {
    flex: 1;
}

ul.opcoes_plano > li div.opcao {
    padding: 30px 30px 20px 30px;
    background: var(--campoTexto);
    border-radius: 30px;
}

ul.opcoes_plano > li div.opcao.selected {
    background: var(--menu);
    border: 2px solid var(--verde);
    position: relative;
    padding-top: 30px;
}

div.mais_popular {
    background: var(--verde) url(../img/icon_coroa.svg) no-repeat;
    background-position: 20px center;
    background-size: 23px auto;
    color: var(--bg);
    position: absolute;
    top: -20px;
    left: calc(50% - (181px / 2));
    padding: 10px;
    font-weight: bold;
    border-radius: 15px;
    padding-left: 60px;
    padding-right: 20px;
}

ul.lista_vantagens {
    list-style: none;
}

ul.lista_vantagens li {
    padding-left: 35px;
    background:url(../img/icon_checkmark.svg) no-repeat;
    background-position: top left;
    margin-bottom: 10px;
}

ul.opcoes_plano ul.lista_vantagens {
    border-bottom: 1px solid var(--linhaLogin);
    padding-bottom: 10px;
    margin-bottom: 10px;
}

div.cont_mais_popular {
    position: relative;
}

div.cont_depoimentos {
    display: flex;
    gap: 20px;
    margin-bottom: 80px;
}

ul.depoimentos {
    list-style: none;
}

button.btn_seta {
    background-color: var(--verde);
    background-repeat: no-repeat;
    background-size: 11px auto;
    background-position: center;
    border: none;
    border-radius: 100%;
    width: 50px;
    height: 50px;
    overflow: hidden;
    text-indent: -9999px;
    cursor: pointer;
}

button.btn_seta.voltar {
    background-image: url(../img/icon_seta_voltar.svg);
}

button.btn_seta.avancar {
    background-image: url(../img/icon_seta_avancar.svg);
}

ul.depoimentos div.depoimento {
    background: var(--campoTexto);
    border-radius: 20px;
    display: flex;
}

div.depoimento div.cont_aluno {
    width: 300px;
    text-align: center;
    border-right: 1px solid var(--linha);
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

div.depoimento div.cont_aluno span {
    font-size: 11px;
}

div.depoimento div.cont_aluno img {
    display: block;
    border-radius: 100%;
    width: 87px;
    margin: 0 auto;
}

div.depoimento div.cont_aluno b {
    display: block;
}

div.depoimento div.cont_mensagem {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
    font-size: 18px;
}

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

/* Style the button that is used to open and close the collapsible content */
.collapsible {
    background-color: var(--bg);
    color: var(--txtColor);
    cursor: pointer;
    padding: 25px 40px 18px 18px;
    width: 100%;
    border: none;
    text-align: left;
    outline: none;
    font-size: 18px;
    border-bottom: 1px solid var(--linhaLogin);
    background-image: url(../img/icon_seta_faq.svg);
    background-repeat: no-repeat;
    background-position: right 20px center;
}

/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
    .active,
    .collapsible.active:hover {
    font-weight: bold;
    border-bottom: 0;
}

.collapsible.active {
    padding: 25px 50px 18px 18px;
    background-image: url(../img/icon_seta_faq02.svg);
}

.collapsible:hover {
    background-color: var(--container);
}

/* Style the collapsible content. Note: hidden by default */
.content {
    padding: 0 20px 20px 20px;
    display: none;
    overflow: hidden;
    border-bottom: 2px solid var(--linhaLogin);
}

div.cont_faq {
    padding-bottom: 80px;
}

div.cont_redirecionando {
    display: flex;
    justify-content: center;
    align-items: center;
    height: calc(100vh - 90px);
}

div.redirecionando {
    display: flex;
    background: var(--campoTexto);
    padding: 30px;
    border-radius: 20px;
    gap: 30px;
}

div.redirecionando div.col01 {
    display: flex;
    justify-content: center;
    align-items: center;
}

div.redirecionando div.col02 {
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 3;
    font-size: 25px;
}

div.redirecionando img {
    width: 60px;
    animation-name: rotateIn;
    animation-duration: 1s;
    animation-fill-mode: both;
    animation-iteration-count: infinite;
}

div.cont_assinatura_efetuada {
    display: flex;
    justify-content: center;
    align-items: center;
    height: calc(100vh - 110px);
    flex-direction: column;
    gap: 30px;
}

div.cont_assinatura_efetuada button.verde {
    padding: 15px 105px;
    width: auto;
}

div.assinatura_efetuada {
    display: flex;
    background: var(--campoTexto);
    padding: 30px;
    border-radius: 20px;
    gap: 30px;
}

div.assinatura_efetuada div.col01 {
    display: flex;
    justify-content: center;
    align-items: center;
}

div.assinatura_efetuada div.col02 {
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 3;
    font-size: 25px;
}

div.assinatura_efetuada img {
    width: 60px;
}

@keyframes rotateIn {
    0% {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
    }

    100% {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    }
}

div.cont_titulo {
    display: flex;
    gap: 20px;
    border-bottom: 1px solid var(--linhaLogin);
    padding: 10px 30px;
    margin: 10px 0;
}

div.cont_titulo div.col02 {
    display: flex;
    gap: 20px;
    align-items: center;
}

div.cont_titulo button.btn_mais_aluno.verde {
    padding: 10px 15px;
}

div.cont_lista_alunos {
    display: flex;
    gap: 30px;
    padding: 0 30px 30px 30px;
}

div.lista_alunos {
    background: var(--container);
    padding: 15px;
    border-radius: 20px;
}

div.lista_alunos button.ver_perfil {
    border: 1px solid var(--verde);
    color: var(--verde);
    padding: 10px 15px;
    font-size: 13px;
    font-weight: bold;
    background: none;
    border-radius: 100px;
    display: inline-block;
}

div.cont_lista_alunos ul.resumo div.padding.destaque {
    background: var(--menu);
    color: var(--verde);
}

ul.resumo li label {
    color: var(--txtColor);
}

div.input_search {
    position: relative;
}

div.input_search button.search {
    border:none;
    background: url(../img/icon_search.svg) no-repeat;
    width: 28px;
    height: 28px;
    overflow: hidden;
    text-indent: -9999px;
    position: absolute;
    top: 6px;
    right: 7px;
}

div.input_search input[type="text"],
div.input_search input[type="search"] {
    padding: 10px 50px 10px 10px;
}

table.grid_alunos {
    width: 100%;
    border-spacing: 0;
}

table.grid_alunos tr:hover {
    background: var(--container);
}

table.grid_alunos th {
    border-top: 1px solid var(--menu);
    border-bottom: 1px solid var(--menu);
    text-align: left;
    padding: 10px 18px;
}

table.grid_alunos td {
    border-bottom: 1px solid var(--menu);
    padding: 5px 18px;
}

table.grid_alunos img {
    width: 65px;
    border-radius: 100%;
}

table.grid_alunos span.presencial,
table.grid_alunos span.online {
    display: inline-block;
    padding: 10px;
    border-radius: 200px;
}

table.grid_alunos span.presencial {
    background: var(--tagPresencial);
}

table.grid_alunos span.online {
    background: var(--tagOnline);
}

div.lista_alunos {
    flex: 1;
}

span.ativo {
    color: var(--verde);
}

span.expirado {
    color: #EA4B4B;
}

button.menu02 {
    border: none;
    background: url(../img/icon_menu02.svg) no-repeat;
    background-size: 4px 18px;
    background-position: center;
    width: 34px;
    height: 34px;
    overflow: hidden;
    text-indent: -9999px;
    cursor: pointer;
    border-radius: 5px;
}

button.menu02.active {
    background-color: var(--menu);
}

button.menu02:hover {
    background-color: var(--menu);
}

div.cont_menu02 {
    position: relative;
}

ul.menu02 {
    position: absolute;
    top: 34px;
    right: 0;
    list-style: none;
    background: var(--menu);
    padding: 10px;
    border-radius: 10px;
    z-index: 100;
}

ul.menu02 a {
    display: block;
    padding: 10px;
    white-space: nowrap;
    color: var(--txtColor);
    border-bottom: 1px solid var(--linhaLogin);
}

ul.menu02 li:last-child a {
    border-bottom: 0;
}

ul.menu02 a:hover {
    background: var(--container);
}

div.filtros {
    justify-content: space-around;
    margin-bottom: 10px;
    align-items: center;
}

div.lista_alunos ul.periodo {
    background: var(--menu);
    border-radius: 200px;
    gap: 0;
}

div.lista_alunos ul.periodo label {
    margin-bottom: 0;
    padding: 5px 15px;
}

div.breadcrumbs a {
    color: var(--txtColor);
}

div.breadcrumbs a:hover {
    color: var(--verde);
}

div.breadcrumbs span.seta {
    display: inline-block;
    background: url(../img/icon_seta_breadcrumb.svg) no-repeat;
    background-position: center;
    width: 15px;
    height: 10px;
}

.no-scroll {
    overflow: hidden;
}

div.cont_titulo div.cont_botoes {
    gap: 10px;
}

div.cont_titulo button.verde,
div.cont_titulo button.linha_verde {
    font-size: 17px;
    padding: 15px;
    margin-bottom: 0;
}

button.btn_mais_aluno {
    padding-left: 50px !important;
    background-image: url(../img/icon_mais.svg);
    background-repeat: no-repeat;
    background-position: 20px center;
    background-size: 17px auto;
}

div.cont_sem_alunos {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: calc(100vh - 350px);
    text-align: center;
}

div.cont_sem_alunos div.cont_msg {
    background: var(--campoTexto) url(../img/icon_smiley_triste.svg) no-repeat;
    background-position: 30px center;
    background-size: 75px auto;
    padding: 30px;
    border-radius: 20px;
    text-align: left;
    font-size: 20px;
    max-width: 500px;
    margin-bottom: 20px;
    padding-left: 130px;
}

div.cont_sem_alunos div.cont_msg p:last-child {
    margin-bottom: 0;
}

div.cont_sem_alunos button.btn_mais_aluno {
    display: inline-block;
    width: fit-content;
    padding-right: 15px;
}

div.cont_col_campos {
    gap: 20px;
}

div.cont_content_modal {
    background: var(--container);
    padding: 20px 30px;
    border-radius: 20px;
    position: relative;
}

div.cont_content_modal h2 {
    margin-bottom: 15px;
}

div.modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.8);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 101;
    overflow: auto;
}

button.fecha_modal {
    border: none;
    background: url(../img/icon_fechar.svg) no-repeat;
    overflow: hidden;
    text-indent: -9999px;
    width: 27px;
    height: 27px;
    position: absolute;
    top: 20px;
    right: 20px;
    cursor: pointer;
}

h3.aluno_cad_sucesso {
    font-size: 35px;
    padding: 40px 30px;
    text-align: center;
}

h3.aluno_cad_erro {
    font-size: 35px;
    padding: 40px 30px;
    text-align: center;
}

div.modal.convidar_aluno div.cont_content_modal {
    max-width: 608px;
}

div.modal.convidar_aluno div.cont_content_modal p.gerar_link {
    padding-top: 20px;
}

form.cadastro h2.parabens {
    color: var(--verde);
    font-size: 40px;
    margin-bottom: 0;
}

p.parabens {
    font-weight: bold;
    font-size: 27px;
}

p.parabens span {
    color: var(--verde);
}

div.cont_consultoria_cadastro {
    display: flex;
    border-radius: 20px;
    background-color: var(--container);
    margin-bottom: 20px;
    padding: 20px;
    gap: 30px;
    font-size: 30px;
    color: var(--txtColor02); 
}

div.cont_consultoria_cadastro .col02 {
    display: flex;
    justify-items: center;
    align-content: center;
    flex-wrap: wrap;
    flex: 1;
}

div.cont_consultoria_cadastro img {
    border-radius: 49px;
}

div.cont_consultoria_cadastro h3 {
    font-size: 35px;
    color: var(--txtColor);
}

div.cont_consultoria_cadastro span.avaliacoes {
    font-size: 25px;
}

div.cont_consultoria_cadastro p.especializado {
    border-top: 2px solid var(--menu);
    padding-top: 20px;
}

ul.estrelas {
    list-style: none;
    display: inline-block;
    gap: 4px;
}

ul.estrelas li {
    display: inline-block;
}

ul.estrelas li span.estrela {
    display: block;
    width: 29px;
    height: 29px;
    background: url(../img/icon_estrela.png) no-repeat;
    background-size: contain;

}

ul.estrelas li span.estrela.off {
    opacity: 0.1;
}

span.logo {
    display: inline-block;
    background: url(../img/logo02.svg) no-repeat;
    background-size: contain;
    overflow: hidden;
    text-indent: -9999px;
    width: 111px;
    height: 27px;
}

div.cont_qrcode {
    background: var(--container);
    border-radius: 20px;
    text-align: center;
    font-size: 35px;
    font-weight: bold;
    margin-top: 30px;
    padding: 20px;
    display: inline-block;
}

div.cont_qrcode span.logo {
    width: 202px;
    height: 41px;
    margin-bottom: -10px;
}

div.cont_perfil_aluno {
    display: flex;
    gap: 30px;
    padding: 20px;
}

div.cont_perfil_aluno div.cont_foto_aluno {
    text-align: center;
}

div.cont_perfil_aluno > div.col01 {
    background: var(--container);
    padding: 20px;
    border-radius: 30px;
    position: relative;
    max-width: 293px;
}

div.cont_perfil_aluno div.padding input[type="text"],
div.cont_perfil_aluno div.padding select {
    padding: 10px;
}

div.cont_perfil_aluno div.cont_foto_aluno img {
    border-radius: 100%;
}

div.cont_tags_aluno {
    display: flex;
    gap: 10px;
    margin-bottom: 10px;
}

div.tab button:disabled {
    color: var(--linha);
}

div.cont_tags_aluno ul.tags {
    list-style: none;
}

div.cont_tags_aluno ul.tags li {
    display: inline-block;
}

div.cont_tags_aluno ul.tags li span.tag {
    display: block;
    font-weight: bold;
    border-radius: 200px;
    padding: 7px 15px;
    margin: 3px;
}

div.cont_tags_aluno ul.tags li span.online {
    background-color: var(--tagOnline);
}

div.cont_tags_aluno ul.tags li span.removido {
    background-color: var(--tagRemovido);
}

button.add_tag {
    overflow: hidden;
    text-indent: -9999px;
    width: 33px;
    height: 33px;
    border-radius: 100%;
    border: 1px solid var(--verde);
    background: url(../img/icon_tag.svg) no-repeat center;
}

div.cont_botoes_upload {
    display: flex;
    gap: 10px;
}

div.cont_botoes_upload button.linha_verde {
    font-size: 16px;
    padding-left: 40px;
    background-image: url(../img/icon_upload.svg);
    background-repeat: no-repeat;
    background-position: 15px center;
    border: 1px solid var(--verde);
}

div.tab {
    border-bottom: 1px solid var(--linha);
    margin-bottom: 10px;
}

div.tab button {
    font-size: 20px;
    border: none;
    background: none;
    color: var(--txtColor);
    margin: 0 5px;
    padding: 10px;
}

div.tab button.active {
    border: 1px solid var(--linha);
    border-bottom: 1px solid var(--bg);
    margin-bottom: -1px;
    padding: 10px 15px;
    border-radius: 10px 10px 0 0;
    font-weight: bold;
    color: var(--verde);
}

ul.cont_visao_geral {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    list-style: none;
    min-height: calc(100vh - 285px);
    gap: 20px;
}

ul.cont_visao_geral li {
    background: var(--container);
    border-radius: 10px;
}

ul.cont_visao_geral li > div {
    width: 100%;
    height: 230px;
}

ul.cont_visao_geral li label {
    font-size: 30px;
    margin-bottom: 0;
    font-weight: bold;
}

ul.cont_visao_geral li {
    padding: 20px;
}

div.tabcontent {
    min-height: calc(100vh - 285px);
}

button.editar_aluno {
    border: none;
    width: 26px;
    height: 26px;
    background: url(../img/icon_editar.svg) no-repeat;
    overflow: hidden;
    text-indent: -9999px;
    position: absolute;
    top: 10px;
    right: 10px;
}

div.cont_gerenciar_acesso {
    position: relative;
}

button.verde.gerenciar_acesso {
    display: block;
    font-size: 16px;
    padding-left: 50px;
    padding-right: 20px;
    background-image: url(../img/icon_cadeado.svg);
    background-repeat: no-repeat;
    background-position: 20px center;
    background-color: var(--verde);
    color: var(--bg);
}

div.cont_submenu_gerenciar_acesso {
    background: var(--menu);
    padding: 10px;
    border-radius: 20px;
    position: absolute;
    top: 0;
    right: -100%;
    z-index: 1;
    width: 100%;
}

div.cont_submenu_gerenciar_acesso button {
    display: block;
    width:100%;
    margin: 0 0 7px 0;
    padding: 13px 10px 13px 50px;
    border-radius: 10px;
    background-color: var(--campoTexto);
    background-repeat: no-repeat;
    color: var(--txtColor);
    border: none;
    background-position: 10px center;
    text-align: left;
    font-size: 16px;
    cursor: pointer;
}

div.cont_submenu_gerenciar_acesso button:last-child {
    margin-bottom: 0;
}

div.cont_submenu_gerenciar_acesso button.ativar {
    background-image: url(../img/icon_ativar_aluno.svg);
}

div.cont_submenu_gerenciar_acesso button.bloquear {
    background-image: url(../img/icon_bloquear_aluno.svg);
}

div.cont_submenu_gerenciar_acesso button.remover {
    background-image: url(../img/icon_remover_aluno.svg);
    background-position: 14px center;
}

div.cont_esq_senha {
    background: var(--container);
    border-radius: 20px;
    padding: 20px;
    margin-bottom: 20px;
}

body.login div.cont_login h1.logo_esq_senha {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--linha);
    background-position: top center;
    background-size: 335px auto;
    height: 80px;
}

p.cont_reenviar_codigo {
    border-top: 1px solid var(--linha);
    padding-top: 20px;
}

p.cont_reenviar_codigo span {
    color: var(--txtColor02);
}

div.cont_input_olho {
    position: relative;
}

div.cont_input_olho button.olho {
    border: none;
    background: url(../img/icon_olho.svg) no-repeat;
    overflow: hidden;
    text-indent: -9999px;
    width: 25px;
    height: 22px;
    position: absolute;
    top: 15px;
    right: 15px;
    background-position: center;
}

div.cont_input_olho button.olho.disabled {
    background-image: url(../img/icon_olho_disabled.svg);
}

ul.nivel_senha {
    list-style: none;
    display: flex;
    gap: 15px;
    margin-bottom: 10px;
}

ul.nivel_senha li {
    height: 5px;
    background: var(--campoTexto);
    padding: 0;
    flex: 1;
}

ul.nivel_senha li.verde {
    background: var(--nivelSenhaVerde);
}

ul.nivel_senha li.amarelo {
    background: var(--nivelSenhaAmarelo);
}

ul.nivel_senha li.vermelho {
    background: var(--nivelSenhaVermelho);
}

label.nivel_senha {
    margin-bottom: 20px;
}

label.nivel_senha.vermelho {
    color: var(--nivelSenhaVermelho);
}

label.nivel_senha.amarelo {
    color: var(--nivelSenhaAmarelo);
}

label.nivel_senha.verde {
    color: var(--nivelSenhaVerde);
}

div.cont_centraliza {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: calc(100vh - 170px);
}


ul.cont_submenu {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    justify-content:left;
    align-items: center;
    padding: 30px;
    gap: 20px;
}

ul.cont_submenu li {
    min-width: calc(34.33% - 40px);
}

ul.cont_submenu li a {
    display: flex;
    justify-content: left;
    align-items: center;
    background: var(--container);
    border-radius: 20px;
    padding: 30px;
    padding-left: 10%;
    min-height: 328px;
    box-shadow: 5px 7px 18px -10px rgba(0,0,0,0.75);
    border: 1px solid var(--container);
}

ul.cont_submenu div.padding {
    max-width: 284px;
}

ul.cont_submenu li a h3 {
    font-size: 30px;
}

ul.cont_submenu li.disabled a h3 {
    font-size: 30px;
    color: gray;
}

ul.cont_submenu li.disabled a:hover {
    background: var(--menu);
    border: 1px solid gray;
}

ul.cont_submenu li a span {
    color: var(--txtColor);
    font-size: 16px;
}

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

ul.cont_submenu li a:hover {
    background: var(--menu);
    border: 1px solid var(--verde);
}

ul.cont_planilhas_treinos,
ul.cont_lista_exercicios {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 30px;
    gap: 20px;
}

ul.cont_planilhas_treinos li,
ul.cont_lista_exercicios li {
    min-width: calc(34.33% - 40px);
}

ul.cont_planilhas_treinos li div.padding,
ul.cont_lista_exercicios li div.padding {
    display: block;
    background: var(--container);
    border-radius: 20px;
    padding: 30px 10px 30px 20px;
    display: flex;
    box-shadow: 5px 7px 18px -10px rgba(0,0,0,0.75);
}

ul.cont_planilhas_treinos li div.padding div.col01 {
    flex: 1;
    padding-left: 60px;
    background: url(../img/icon_haltere.svg) no-repeat left center;
}

ul.cont_planilhas_treinos li div.padding div.col02,
ul.cont_planilhas_treinos li div.padding div.col03 {
    display: flex;
    justify-content: center;
    align-items: center;
}

ul.cont_planilhas_treinos li div.padding div.col01 h3 {
    font-size: 20px;
}

ul.cont_planilhas_treinos li div.padding div.col02 label.alunos {
    display: block;
    padding-top: 26px;
    background: url(../img/icon_alunos.svg) no-repeat top center;
    background-size: contain;
    font-size: 20px;
    margin: 0 10px;
}

ul.cont_planilhas_treinos button.associar_treino {
    color: var(--verde);
    border:  1px solid var(--verde);
    border-radius: 200px;
    padding: 10px;
    background: none;
    margin-top: 10px;
}

div.cont_txt_pesquisa {
    position: relative;
    width: fit-content;
}

div.cont_busca_mais_aluno {
    display: flex;
    gap: 10px;
}

div.cont_busca_mais_aluno button.btn_mais_aluno {
    padding: 10px 15px;
}

ul.cont_lista_alunos_modal {
    list-style: none;
}

ul.cont_lista_alunos_modal li {
    position: relative;
    margin: 5px 0;
    border-bottom: 1px solid var(--linha);
}

ul.cont_lista_alunos_modal input[type="checkbox"] {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
}

ul.cont_lista_alunos_modal label {
    display: flex;
    justify-content: flex-start; /* Alinha imagem e texto à esquerda */
    align-items: center;
    padding: 7px 0;
    color: var(--txtColor);
    gap: 10px; /* Espaço entre imagem e nome */
}

ul.cont_lista_alunos_modal img {
    border-radius: 100%;
    width: 65px;
    margin: 0 15px;
    object-fit: cover;
}

ul.cont_lista_alunos_modal input[type="checkbox"]:checked ~ label {
    background: var(--menu);
    border: 2px solid var(--verde);
    border-radius: 20px;
    padding: 7px 0;
    color: var(--verde);
}

div.scroll.lista_alunos {
    overflow: auto;
    max-height: calc(100vh - 500px);
    min-height: 200px;
}

span.nenhum_aluno_encontrado {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -112.5px;
    margin-top: -67px;
    font-size: 20px;
    padding-top: 110px;
    background: var(--container) url(../img/icon_smiley_triste.svg) no-repeat top center;
    text-align: center;
}

div.cont_treino_associado_sucesso {
    padding-top: 70px;
    min-width: 500px;
}

div.cont_treino_associado_sucesso h2 {
    font-size: 30px;
    text-align: center;
}

button.filtros {
    border: none;
    background: url(../img/icon_filtros.svg) no-repeat center;
    background-size: contain;
    width: 40px;
    height: 30px;
    overflow: hidden;
    text-indent: -9999px;
}

div.cont_filtros_grupos_musculares {
    display: flex;
    flex-direction: column;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    background: var(--menu);
    z-index: 10;
}

div.cont_filtros_grupos_musculares div.head {
    padding: 30px 30px 20px 30px;
    display: block;
}

div.cont_filtros_grupos_musculares div.head span {
    display: block;
    margin-bottom: 20px;
}

div.cont_filtros_grupos_musculares div.scroll {
    flex: 1;
    overflow: auto;
    padding: 0 30px;
}

div.cont_filtros_grupos_musculares button.fecha_modal {
    width: 20px;
    height: 20px;
    background-size: contain;
}

ul.lista_grupos_musculares {
    list-style: none;
}

ul.lista_grupos_musculares li {
    position: relative;
    margin: 10px 0;
}

ul.lista_grupos_musculares input[type="checkbox"] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
}

ul.lista_grupos_musculares button.grupo_muscular {
    background-color: var(--container);
    background-repeat: no-repeat;
    background-size: 50px auto;
    background-position: 15px center;
    padding: 25px;
    padding-left: 80px;
    border-radius: 20px;
    border: none;
    color: var(--txtColor);
    width: 100%;
}

ul.lista_grupos_musculares button.grupo_muscular.peito {
    background-image: url(../img/grupos_musculares/icon_peito.svg);
}

ul.lista_grupos_musculares button.grupo_muscular.costas {
    background-image: url(../img/grupos_musculares/icon_costas.svg);
}

ul.lista_grupos_musculares button.grupo_muscular.ombros {
    background-image: url(../img/grupos_musculares/icon_ombro.svg);
    background-size: 40px auto;
}

ul.lista_grupos_musculares button.grupo_muscular.trapezio {
    background-image: url(../img/grupos_musculares/icon_trapezio.svg);
    background-size: 45px auto;
}

ul.lista_grupos_musculares button.grupo_muscular.biceps {
    background-image: url(../img/grupos_musculares/icon_biceps.svg);
    background-size: 45px auto;
}

ul.lista_grupos_musculares button.grupo_muscular.triceps {
    background-image: url(../img/grupos_musculares/icon_triceps.svg);
    background-size: 45px auto;
}

ul.lista_grupos_musculares button.grupo_muscular.antebraco {
    background-image: url(../img/grupos_musculares/icon_antebraco.svg);
    background-size: 45px auto;
}

ul.lista_grupos_musculares button.grupo_muscular.abdominal {
    background-image: url(../img/grupos_musculares/icon_abdominal.svg);
    background-size: 45px auto;
}

ul.lista_grupos_musculares button.grupo_muscular.lombar {
    background-image: url(../img/grupos_musculares/icon_lombar.svg);
    background-size: 30px auto;
    background-position: 25px center;
}

ul.lista_grupos_musculares button.grupo_muscular.obliquos {
    background-image: url(../img/grupos_musculares/icon_obliquos.svg);
    background-size: 45px auto;
}

ul.lista_grupos_musculares button.grupo_muscular.quadriceps {
    background-image: url(../img/grupos_musculares/icon_quadriceps.svg);
    background-size: 35px auto;
}

ul.lista_grupos_musculares button.grupo_muscular.isquiotibiais {
    background-image: url(../img/grupos_musculares/icon_isquiotibiais.svg);
    background-size: 35px auto;
}

ul.lista_grupos_musculares button.grupo_muscular.gluteos {
    background-image: url(../img/grupos_musculares/icon_gluteos.svg);
    background-size: 45px auto;
}

ul.lista_grupos_musculares button.grupo_muscular.panturrilhas {
    background-image: url(../img/grupos_musculares/icon_panturrilhas.svg);
    background-size: 45px auto;
}

ul.lista_grupos_musculares button.grupo_muscular.active {
    background-color: var(--campoTexto);
    border: 1px solid var(--verde);
}

div.cont_treino_geral {
    display: flex;
    padding: 20px 30px;
    gap: 30px;
}

div.cont_treino_geral div.col02 {
    flex: 1;
}

div.cont_treino_geral div.cont_treino {
    background: var(--container);
    border-radius: 20px;
    padding-bottom: 15px;
}

div.cont_treino ul.lista_treino {
    list-style: none;
}

ul.lista_treino button.descanso,
ul.lista_treino button.deletar {
    border: none;
    background: url(../img/icon_relogio.svg) no-repeat center;
    overflow: hidden;
    text-indent: -9999px;
    width: 47px;
    height: 47px;
    border-radius: 10px;
}

ul.lista_treino button.descanso.active {
    background: var(--verde) url(../img/icon_relogio_active.svg) no-repeat center;
}

ul.lista_treino button.deletar {
    background: url(../img/icon_lixeira.svg) no-repeat center;
}

div.cont_treino ul.lista_treino li {
    display: flex;
    gap: 10px;
    padding: 20px 15px 20px 15px;
    align-items: center;
    border-bottom: 1px solid var(--linha);
}

div.cont_treino ul.lista_treino li:first-child {
    padding-top: 10px;
}

div.cont_treino ul.lista_treino input.reps,
div.cont_treino ul.lista_treino input.kg {
    padding-right: 50px;
    border: 1px solid var(--bordaCampo);
}

div.cont_treino ul.lista_treino div.suffix {
    background: var(--container);
    border-radius: 10px;
    margin-left: -68px;
    padding: 11px 4px;
    min-width: 57px;
}

div.cont_treino ul.lista_treino div.suffix span {
    font-size: 14px;
    font-weight: bold;
    color: var(--txtColor);
    padding: 5px;
    display: block;
    text-align: center;
}

input.descanso {
    padding-right: 50px;
    border: 1px solid var(--bordaCampo);
}

li.descanso div.suffix_descanso,
div.cont_repeticao div.suffix_descanso {
    background: var(--container);
    border-radius: 10px;
    margin-left: -78px;
    padding: 11px 4px;
    min-width: 57px;
}

div.cont_repeticao div.suffix_descanso {
    margin-left: -68px;
    padding: 11px 4px;
    min-width: 67px;
    margin-bottom: 11px;
    margin-top: 1px;
}

li.descanso div.suffix_descanso span,
div.cont_repeticao div.suffix_descanso span {
    font-size: 14px;
    font-weight: bold;
    color: var(--txtColor);
    padding: 5px;
    display: block;
    text-align: center;
}

div.cont_treino ul.lista_treino li.descanso {
    background: var(--menu) url(../img/icon_relogio_branco.svg) no-repeat 15px center;
    padding: 10px 20px 10px 55px;
    gap: 20px;
}

div.cont_treino ul.lista_treino li label {
    margin-bottom: 0;
    font-weight: bold;
    font-size: 20px;
}

div.cont_video_exercicio {
    background: var(--container);
    border-radius: 20px;
    padding: 10px;
}

div.cont_video_exercicio button.editar_video {
    border: none;
    background: url(../img/icon_editar.svg) no-repeat center;
    overflow: hidden;
    text-indent: -9999px;
    width: 26px;
    height: 26px;
}

div.cont_video_exercicio div.cont_header {
    padding: 15px 10px;
}

div.cont_treino_geral div.cont_repeticao {
    background: var(--container);
    margin-top: 10px;
    border-radius: 20px;
}

div.cont_treino_geral div.cont_repeticao h3 {
    border-bottom: 1px solid var(--linha);
    padding: 15px 15px 10px 15px;
}

div.cont_treino_geral div.cont_repeticao ul.cont_repeticao {
    list-style: none;
    display: flex;
    gap: 10px;
    padding: 15px;
}

div.cont_treino_geral div.cont_repeticao ul.cont_repeticao li {
    flex: 1;
    position: relative;
}

div.cont_treino_geral div.cont_repeticao ul.cont_repeticao li button {
    display: block;
    background: var(--menu);
    border-radius: 200px;
    text-align: center;
    padding: 10px;
    color: var(--txtColor);
    border: none;
    width: 100%;
}

div.cont_treino_geral div.cont_repeticao ul.cont_repeticao li button.active {
    background: var(--verde);
    color: var(--bg);
}

div.cont_repeticao div.padding {
    padding: 15px;
}

div.cont_repeticao div.padding input[type="text"] {
    padding: 10px;
    margin-bottom: 10px;
}

div.cont_observacoes_execucao p {
    padding: 10px 20px;
}

select.aquecimento {
    background-color: var(--aquecimento);
    background-image: url(../img/icon_seta_select_preto.svg);
    border-color: var(--aquecimento);
    color: var(--container03);
    font-size: 16px;
    font-weight: bold;
    width: 125%;
}

select.reconhecimento {
    background-color: var(--reconhecimento);
    border-color: var(--reconhecimento);
    background-image: url(../img/icon_seta_select_preto.svg);
    color: var(--container03);
    font-size: 15px;
    font-weight: bold;
    width: 125%;
}

select.trabalho {
    background-color: var(--trabalho);
    border-color: var(--trabalho);
    font-size: 16px;
    font-weight: bold;
    width: 125%;
}

ul.cont_lista_exercicios img {
    border-radius: 10px;
    margin-right: 20px;
    width: 90px;
    height: 90px;
}

ul.cont_lista_exercicios b {
    color: var(--txtColor);
    font-size: 18px;
}

ul.cont_lista_exercicios span {
    color: var(--verde);
    font-weight: normal;
}

ul.cont_lista_exercicios div.col02 {
    flex: 1;
    display: flex;
    justify-items: center;
    align-items: center;
}

ul.cont_lista_exercicios div.col03 {
    display: flex;
    align-items: center;
}

ul.cont_lista_exercicios div.padding {
    padding: 20px 10px 20px 20px !important;
}

ul.cont_lista_exercicios div.padding.active {
    border: 1px solid var(--verde);
    background: var(--campoTexto);
}

button.fecha_criacao_treino {
    height: 100%;
    width: 25px;
    background: var(--menu);
    border: none;
    cursor: pointer;
    white-space: nowrap;
    color: var(--verde);
}

div.cont_criacao_treino {
    position: fixed;
    top:0;
    right: 0;
    bottom: 0;
    background: var(--menu);
    min-width: 360px;
    display: flex;
    flex-direction: column;
}

div.cont_criacao_treino div.row02 {
    flex: 1;
    overflow: auto;
    padding: 20px;
}

div.cont_criacao_treino div.tabcontent {
    min-height: auto;
}

div.cont_criacao_treino h3.titulo {
    text-align: center;
    margin: 15px 0;
    padding-top: 30px;
    padding-bottom: 20px;
    border-top: 1px solid var(--linhaLogin);
}

div.cont_criacao_treino button.fecha_modal {
    width: 22px;
    height: 22px;
    background-size: contain;
    top: 10px;
    right: 10px;
}

div.cont_criacao_treino div.tab button {
    font-size: 18px;
}

ul.cont_stats_geral_destaque {
    display: grid;
    grid-template-columns: 1fr 1fr;
    list-style: none;
    background: var(--container02);
}

ul.cont_stats_geral_destaque li {
    border-right: 1px solid var(--linhaLogin);
    border-bottom: 1px solid var(--linhaLogin);
    text-align: center;
    padding: 20px;
}

ul.cont_stats_geral_destaque li:last-child {
    border-right: none;
}

ul.cont_stats_geral_destaque li label {
    margin-bottom: 0;
    font-weight: bold;
}

ul.cont_stats_geral_destaque li b {
    display: block;
    font-size: 30px;
}

ul.cont_stats_geral_destaque li span {
    font-size: 13px;
}

ul.cont_stats_geral {
    list-style: none;
    padding-left: 20px;
}

ul.cont_stats_geral li {
    border-bottom: 1px solid var(--linhaLogin);
    padding: 15px 10px;
}

ul.lista_exercicios_selecionados {
    list-style: none;
    padding-top: 20px;
    margin-bottom: 20px;
}

ul.lista_exercicios_selecionados > li {
    background: var(--container);
    display: flex;
    align-items: center;
    padding: 15px;
    border-radius: 20px;
    margin: 7px 0;
}

ul.lista_exercicios_selecionados > li b {
    padding-left: 20px;
    padding-right: 20px;
}

ul.lista_exercicios_selecionados > li div.col02 {
    flex: 1;
}

ul.lista_exercicios_selecionados > li img {
    width: 58px;
    height: 58px;
    border-radius: 5px;
}

ul.lista_exercicios_selecionados ul.menu02 {
    border: 1px solid var(--verde);
}

div.stats_grupo_muscular {
    display: flex;
    padding-right: 20px;
}

div.stats_grupo_muscular div.col01,
div.stats_grupo_muscular div.col02 {
    flex: 1;
}

div.cont_planos {
    display: flex;
    padding: 40px 0;
    gap: 20px;
    justify-content: stretch;
    align-items: stretch;
}

div.cont_planos ul.periodo {
    margin-bottom: 20px;
}

div.cont_planos ul.periodo button {
    font-weight: bold;
    padding: 12px 10px;
}

div.cont_planos div.col01,
div.cont_planos div.col02 {
    background: var(--container);
    border-radius: 20px;
    padding: 20px;
    flex: 1;
}

div.cont_planos p.valor_plano b {
    font-size: 40px;
    color: var(--verde);
}

div.cont_planos h3 {
    margin-bottom: 10px;
}

ul.vantagens {
    list-style: none;
}

ul.vantagens li {
    margin: 20px 0;
    padding-left: 35px;
    background: url(../img/icon_checkmark.svg) no-repeat;
}

p.disclaimer_plano {
    color: #909090;
}

div.cont_formas_pagamento {
    text-align: center;
    margin-bottom: 70px;
}

div.cont_formas_pagamento img {
    height: 45px;
}

div.resumo_assinatura {
    background: var(--container);
    border-radius: 20px;
    margin-top: 70px;
}

div.resumo_assinatura div.padding {
    padding: 20px;
}

div.resumo_assinatura h3 {
    border-bottom: 1px solid var(--linha);
    padding: 20px;
}

div.resumo_assinatura p {
    border-bottom: 1px solid var(--linha);
    padding-bottom: 10px;
    margin-bottom: 10px;
}

div.resumo_assinatura span {
    color: var(--verde);
}

div.cont_link_externo {
    margin: 20px 0;
    padding: 20px;
    border-top: 1px solid var(--linha);
    border-bottom: 1px solid var(--linha);
}

button.linha_verde.subir_video {
    background-image: url(../img/icon_upload.svg);
    background-repeat: no-repeat;
    background-position: 30px center;
}

ul.grupos_musculares_recrutados {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    padding: 20px;
    gap: 20px;
}

ul.grupos_musculares_recrutados li {
    width: 30%;
}

ul.grupos_musculares_recrutados li div.padding {
    background: var(--container02);
    position: relative;
    padding: 0 20px 20px 20px;
    border-radius: 20px;
}

ul.grupos_musculares_recrutados li div.padding h4 {
    background: var(--menu);
    border-radius: 20px 20px 0 0;
    height: 45px;
    margin: 0 -20px 20px -20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

ul.grupos_musculares_recrutados li div.padding select {
    margin-bottom: 20px;
}

ul.grupos_musculares_recrutados li div.padding label {
    display: block;
    text-align: center;
    color: var(--verde);
}

button.excluir {
    position: absolute;
    top: 7px;
    right: 10px;
    background: var(--verde) url(../img/icon_lixeira02.svg) no-repeat center;
    border-radius: 100%;
    overflow: hidden;
    text-indent: -9999px;
    width: 32px;
    height: 32px;
    border: none;
}

div.salvar_planilha {
    min-width: 400px;
}

ul.cont_periodizacoes {
    display: flex;
    list-style: none;
    flex-wrap: wrap;
    margin: 30px;
    gap: 20px;
}

ul.cont_periodizacoes > li {
    min-width: calc(34.33% - 40px);
}

ul.cont_periodizacoes h4 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 4px!important;
}

ul.cont_periodizacoes span {
    font-size: 15px;
}

ul.cont_periodizacoes div.periodizacao {
    background: var(--container);
    border-radius: 20px;
    box-shadow: 5px 7px 18px -10px rgba(0,0,0,0.75);
}

ul.cont_periodizacoes div.periodizacao div.padding {
    padding: 20px;
    display: flex;
}

div.periodizacao div.padding div.col01 {
    flex: 1;
}

div.periodizacao div.padding div.col02 {
    display: flex;
    align-items: center;
}

ul.cont_periodizacoes ul.cont_fluxo_ciclos {
    list-style: none;
    display: flex;
    border-top: 1px solid var(--linha);
    padding: 10px;
}

ul.cont_periodizacoes ul.cont_fluxo_ciclos b {
    display: block;
}

ul.cont_periodizacoes ul.cont_fluxo_ciclos li.seta {
    background: url(../img/icon_seta_direita.svg) no-repeat center;
    width: 33px;
    height: 33px;
}

ul.cont_periodizacoes ul.cont_fluxo_ciclos li {
    text-align: center;
}

div.cont_tipo_periodizacao ul.cont_submenu li {
    min-width: 450px;
}

div.cont_montagem_periodizacao {
    padding: 30px;
}

div.cont_montagem_periodizacao div.container {
    background: var(--container);
    padding: 20px;
    margin-bottom: 20px;
    border-radius: 20px;
}

div.cont_montagem_periodizacao div.cont_form_periodizacao {
    max-width: 600px;
    margin: 0 auto;
    text-align: center;
}

div.cont_montagem_periodizacao div.cont_form_periodizacao label {
    color: var(--verde);
}

div.cont_macrociclo {
    border: 1px solid var(--txtColor);
    border-radius: 20px;
    min-height: 500px;
    text-align: center;
}

div.cont_macrociclo div.head {
    text-align: center;
    padding: 20px;
    border-bottom: 1px solid var(--txtColor);
    position: relative;
    margin-bottom: 20px;
}

div.cont_macrociclo div.head label {
    margin-bottom: 0;
}

div.cont_macrociclo div.head button.excluir {
    top: 12px;
}

div.cont_mesociclo {
    border: 1px solid var(--txtColor);
    margin: 20px;
    border-radius: 20px;
    margin-top: 100px;
    padding-bottom: 20px;
    position: relative;
}

div.cont_mesociclo div.head_details {
    display: inline-block;
    width: fit-content;
    text-align: center;
    background: var(--container);
    border: 1px solid var(--txtColor);
    margin-top: -60px;
    padding: 10px;
    border-radius: 20px;
    min-width: 496px;
    margin-bottom: 20px;
}

div.cont_mesociclo div.head_details p {
    margin-bottom: 5px;
}

div.cont_mesociclo div.head_details b {
    display: block;
}

div.cont_mesociclo div.head_details button.verde {
    font-size: 15px;
    padding: 10px;
    width: fit-content;
    margin-bottom: 0;
}

div.cont_mesociclo div.head_details span {
    display: block;
}

ul.cont_microciclo {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 20px;
    gap: 20px;
    justify-content: center;
    margin-bottom: 30px;
}

ul.cont_microciclo div.padding {
    background: var(--menu);
    border-radius: 20px;
    position: relative;
}

ul.cont_microciclo div.padding b {
    display: block;
    border-bottom: 1px solid var(--linha);
    padding: 20px;
    
}

ul.cont_microciclo div.padding button.fechar {
    border: none;
    width: 23px;
    height: 23px;
    overflow: hidden;
    text-indent: -9999px;
    background: var(--verde) url(../img/icon_fechar02.svg) no-repeat center;
    border-radius: 100%;
    position: absolute;
    top: -5px;
    right: -5px;
}

ul.cont_microciclo div.padding div.cont_botoes {
    display :flex;
    gap: 10px;
    padding: 10px 20px;
}

ul.cont_microciclo div.padding div.cont_botoes button.verde {
    padding: 10px 15px;
    font-size: 15px;
    margin-bottom: 0;
}

div.configurar_mesociclo p {
    text-align: center;
    margin-bottom: 30px;
    border-bottom: 1px solid var(--linha);
    padding-bottom: 20px;
    margin-left: -30px;
    margin-right: -30px;
    padding-left: 30px;
    padding-right: 30px;
}

div.configurar_mesociclo b {
    display: block;
    margin-bottom: 15px;
}

div.configurar_mesociclo p.first {
    border-top: 1px solid var(--linha);
    padding-top: 20px;
}

div.configurar_mesociclo div.cont_content_modal {
    min-width: 700px;
}

div.calendario {
    margin-bottom: 20px;
}

div.calendario > div {
    margin: 0 auto;
   
}

div.calendario div.datepicker-inline {
    width: auto;
}

div.calendario table {
    background: var(--container02);
    width: 100%;
}

div.calendario .datepicker table tr td.active.active {
    background: var(--verde);
    color: var(--bg);
}

div.calendario .datepicker .datepicker-switch:hover,
div.calendario .datepicker .prev:hover,
div.calendario .datepicker .next:hover
 {
    background: var(--menu);
}

div.calendario .datepicker table tr td.day.focused,
div.calendario .datepicker table tr td.day:hover {
    background: var(--menu);
}

div.calendario .datepicker table tr td span.active.active,
div.calendario .datepicker table tr td span.active.disabled,
div.calendario .datepicker table tr td span.active.disabled.active,
div.calendario .datepicker table tr td span.active.disabled.disabled,
div.calendario .datepicker table tr td span.active.disabled:active,
div.calendario .datepicker table tr td span.active.disabled:hover,
div.calendario .datepicker table tr td span.active.disabled:hover.active,
div.calendario .datepicker table tr td span.active.disabled:hover.disabled,
div.calendario .datepicker table tr td span.active.disabled:hover:active,
div.calendario .datepicker table tr td span.active.disabled:hover:hover,
div.calendario .datepicker table tr td span.active.disabled:hover[disabled],
div.calendario .datepicker table tr td span.active.disabled[disabled],
div.calendario .datepicker table tr td span.active:active,
div.calendario .datepicker table tr td span.active:hover,
div.calendario .datepicker table tr td span.active:hover.active,
div.calendario .datepicker table tr td span.active:hover.disabled,
div.calendario .datepicker table tr td span.active:hover:active,
div.calendario .datepicker table tr td span.active:hover:hover,
div.calendario .datepicker table tr td span.active:hover[disabled],
div.calendario .datepicker table tr td span.active[disabled] {
    background: var(--verde);
    color: var(--bg);
}

div.calendario .datepicker table tr td span.focused,
div.calendario .datepicker table tr td span:hover {
    background: var(--verde);
    color: var(--bg);
}

div.cont_montagem_treino {
    display: flex;
    min-height: 100vh;
}

div.cont_montagem_treino div.menu_esquerda {
    background: var(--menu);
}

div.cont_montagem_treino > div.col02 {
    flex: 1;
}

div.menu_esquerda {
    overflow: auto;
    min-width: 450px;
}

div.menu_esquerda > p {
    border-bottom: 1px solid var(--linha);
    text-align: center;
    padding: 15px 10px;
    margin-bottom: 0;
    font-size: 20px;
}

div.menu_esquerda > p.tit_macrociclo b {
    font-size: 20px;
}

div.menu_esquerda > p.tit_mesociclo b {
    font-size: 18px;
}

div.menu_esquerda > p.tit_microciclo {
    font-size: 16px;
}

ul.cont_data_treino {
    display:flex;
    list-style: none;
    background: var(--container);
    padding-left: 0;
    padding: 20px;
    gap: 20px;
}

ul.cont_data_treino li.col02 {
    flex: 1;
    text-align: center;
}

ul.cont_data_treino li.col02 b {
    background: var(--menu);
    display: block;
    border-radius: 10px;
    padding: 5px;
    margin-bottom: 5px;
}

ul.cont_data_treino button.voltar_data,
ul.cont_data_treino button.avancar_data {
    background-color: var(--verde);
    background-repeat: no-repeat;
    background-position: center;
    width: 65px;
    height: 65px;
    border: none;
    overflow: hidden;
    text-indent: -9999px;
    border-radius: 100%;
}

ul.cont_data_treino button.voltar_data {
    background-image: url(../img/icon_seta_voltar.svg);
}

ul.cont_data_treino button.avancar_data {
    background-image: url(../img/icon_seta_avancar.svg);
}

ul.lista_treinos {
    padding-left: 0;
    list-style: none;
    padding: 20px;
    text-align: center;
}

ul.lista_treinos b {
    word-wrap: break-word;      /* IE 5.5-7 */
    white-space: -moz-pre-wrap; /* Firefox 1.0-2.0 */
    white-space: pre-wrap;      /* current browsers */
    max-width: 250px;
}

ul.lista_treinos span {
    text-align: center;
    font-size: 20px;
    margin-top: 25px;
    display: block;
}

ul.lista_treinos > li {
    display: flex;
    background: var(--container);
    border-radius: 20px;
    padding: 20px;
    margin-bottom: 10px;
}

div.padding_treino {
    display: flex;
    background: url(../img/icon_haltere_branco.svg) no-repeat;
    padding-left: 80px;
    background-position: 20px center;
    background-size: 42px auto;
    min-height: 42px;
}

ul.lista_treinos div.tabs {
    font-size: 12px;
    background: #2B2D31;
    margin-left: -20px;
    margin-right: -20px;
    margin-bottom: -20px;
    border-radius: 0 0 20px 20px;
    padding-bottom: 20px;
}

ul.lista_treinos div.tabs div.tab {
    margin-top: 20px;

}

ul.lista_detalhes {
    display: grid;
    grid-template-columns: 1fr 1fr;
    list-style: none;
    border-top: 1px solid var(--linha);
    margin-bottom: 20px;
}

ul.por_grupo_muscular {
    display: grid;
    grid-template-columns: 1fr 1fr;
    list-style: none;
}


span.span_trabalho {
    display: inline-block;
    background: #313338;
    padding: 10px;
    width: fit-content;
    border-radius: 15px;
    margin: 0 auto;
    font-size: 12px !important;
    font-weight: bold;
    color: var(--verde);
    margin-top: 0;
}

ul.lista_detalhes > li {
    padding: 20px;
    border-bottom: 1px solid var(--linha);
}

ul.por_grupo_muscular > li {
    border-bottom: 1px solid var(--linha);
    padding: 20px;
}

ul.lista_detalhes > li:nth-child(odd) {
    border-right: 1px solid var(--linha);
}

ul.por_grupo_muscular > li:nth-child(odd) {
    border-right: 1px solid var(--linha);
}

div.cont_criacao_treino ul.lista_treinos div.tabs div.tab button {
    font-size: 16px;
}

/*div.cont_criacao_treino div.row0 ul.lista_treinos > li {
    display: block;
}*/

ul.lista_treinos > li.selecionado {
    border: 1px solid var(--verde);
    background: #232428;
}

ul.lista_treinos > li div.col01 {
    display: flex;
    align-items: center;
    flex: 1;
    position: relative;
}

div.tit_treino {
    display: flex;
    padding: 20px;
    gap: 20px;
}

div.tit_treino h2 {
    color: var(--verde);
}

div.tit_treino div.col01 {
    flex:1;
}

div.tit_treino button.subir_exercicio,
div.tit_treino button.descer_exercicio {
    overflow: hidden;
    border: 1px solid var(--txtColor);
    text-indent: -9999px;
    width: 40px;
    height: 42px;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 10px;
}

div.tit_treino button.subir_exercicio {
    background-image: url(../img/icon_seta_branca_cima.svg);
}

div.tit_treino button.descer_exercicio {
    background-image: url(../img/icon_seta_branca_baixo.svg);
}


button.adicionar_exercicio {
    border: 2px solid var(--verde);
    background: transparent url(../img/icon_mais_verde.svg) no-repeat 15px center;
    color: var(--verde);
    padding: 9px 20px;
    border-radius: 200px;
    padding-left: 50px;
}

div.lista_exercicios {
    padding: 0 30px 30px 30px;
}

div.lista_exercicios ul.lista_treino {
    padding-left: 0;
}

div.container_exercicio {
    background: var(--container);
    border-radius: 20px;
    margin: 15px 0;
    position: relative;
}

div.container_exercicio.dragging {
    opacity: 0;
}

div.container_exercicio button.collapsible {
    background-color: var(--container);
    border-radius: 20px;
    font-weight: bold;
    font-size: 30px;
    border-bottom: none;
    background-image: url(../img/icon_seta_faq.svg);
    background-repeat: no-repeat;
    background-position: right 20px center;
    width: 100%;
    padding: 21.5px 40px 21.5px 130px;
}

div.container_exercicio button.collapsible.active {
    background-image: url(../img/icon_seta_faq02.svg);
}

div.container_exercicio div.content {
    border-bottom: none;
}

div.container_exercicio div.cont_treino {
    flex: 1;
}

div.container_exercicio div.cont_treino div.cont_titulo h3 {
    font-size: 20px;
}

div.container_exercicio div.cont_video_exercicio,
div.container_exercicio div.cont_repeticao {
    background-color: var(--container02);
    border-radius: 20px;
    margin-bottom: 20px;
}

div.container_exercicio div.cont_repeticao h3 {
    border-bottom: 1px solid var(--linha);
    font-size: 20px;
    padding: 10px 20px;
}

div.container_exercicio div.cont_menu02 {
    position: absolute;
    right: 80px;
    top: 25px;
}

div.container_exercicio div.cont_menu03 {
    position: absolute;
    left: 30px;
    top: 23px;
}

div.container_exercicio button.subir_exercicio,
div.container_exercicio button.descer_exercicio {
    overflow: hidden;
    border: 1px solid var(--txtColor);
    text-indent: -9999px;
    width: 40px;
    height: 42px;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 10px;
}

div.container_exercicio button.subir_exercicio {
    background-image: url(../img/icon_seta_branca_cima.svg);
}

div.container_exercicio button.descer_exercicio {
    background-image: url(../img/icon_seta_branca_baixo.svg);
    margin-left: 8px;
}

div.container_exercicio.tec_especial {
    border: 1px solid var(--verde);
}

div.container_exercicio span.txt_tec_especial {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    text-align: center;
    color: var(--verde);
    font-weight: bold;
}

div.cont_montagem_treino div.col03 {
    position: absolute;
    z-index: 100;
    top: 0;
    right: 0;
    bottom: 0;
    background: var(--menu);
    border-radius: 20px 0 0 20px;
    display: flex;
    flex-direction: column;
    height: 100%;
}

div.cont_montagem_treino div.col03 div.cont_criacao_treino {
    position: static;
    overflow: auto;
}

div.header_criacao_treino h3 {
    color: var(--verde);
}

ul.lista_exercicios_modal {
    list-style: none;
    overflow: auto;
    max-height: calc(100vh - 400px);
}

ul.lista_exercicios_modal > li {
    display: flex;
    background: var(--container02);
    padding: 20px;
    border-radius: 20px;
    gap: 10px;
    margin-bottom: 15px;
}

ul.lista_exercicios_modal img {
    width: 60px;
    border-radius: 10px;
}

ul.lista_exercicios_modal div.col02 {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

ul.lista_exercicios_modal div.col02 p {
    margin-bottom: 0;
}

ul.lista_exercicios_modal button.adicionar {
    overflow: hidden;
    text-indent: -9999px;
    width: 34px;
    height: 34px;
    border: 1px solid var(--verde);
    background: url(../img/icon_plus.svg) no-repeat center;
    border-radius: 100%;
}

div.cont_planilha_treino {
    width: 100%;
    max-width: 934px;
}

div.cont_planilha_treino div.padding {
    padding: 20px;
    background: var(--container);
    border-radius: 20px;
    margin-bottom: 20px;
}

div.centraliza_altura {
    height: calc(100vh - 350px);
    display: flex;
    align-items: center;
    justify-content: center;
}

div.cont_observacoes_gerais {
    border-top: 1px solid var(--linha);
    padding-top: 30px;
}

div.cont_observacoes_gerais div.padding {
    margin: 0 auto;
    max-width: 934px;
}

div.cont_observacoes_gerais div.padding textarea,
div.cont_planilha_treino div.padding textarea {
    height: 150px;
}

div.cont_geral_serie_especial {
    display: flex;
}

div.cont_geral_serie_especial > div.col01 {
    flex: 1;
    padding: 20px;
    border-right: 1px solid var(--linhaLogin);
    display: flex;
    flex-direction: column;
}

div.cont_geral_serie_especial ul.periodo {
    width:fit-content;
    margin: 0 auto;
}

div.cont_geral_serie_especial > div.col02 {
    flex: 3;
}

div.cont_exerc_selecionados {
    background: var(--campoTexto);
    flex: 1;
    border-radius: 20px;
    margin-top: 20px;
    overflow: auto;
    max-height: calc(100vh - 320px);
    position: relative;
}

div.cont_exerc_selecionados ul.cont_lista_exercicios {
    padding: 15px;
    display: block;
}

div.cont_exerc_selecionados ul.cont_lista_exercicios li {
    margin-bottom: 10px;
}

div.cont_exerc_selecionados ul.cont_lista_exercicios li div.padding {
    box-shadow:none;
}

div.cont_exerc_selecionados ul.cont_lista_exercicios img {
    width: 45px;
    height: auto;
}

div.cont_selecione_exerc_lado {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--verde);
    font-size: 20px;
    text-align: center;
    font-weight: bold;
}

div.nenhum_exercicio {
    background: url(../img/icon_smiley_triste.svg) no-repeat top center;
    padding-top: 120px;
    text-align: center;
    margin: 30px 0;
}

ul.lista_tecnicas_avancadas {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    list-style: none;
    margin-left: 30px;
    margin-top: 30px;
}

ul.lista_tecnicas_avancadas > li {
    min-width: calc(34.33% - 40px);
}

ul.lista_tecnicas_avancadas > li div.padding {
    background: var(--container);
    padding: 40px 20px 40px 40px;
    border-radius: 20px;
    display: flex;
}

ul.lista_tecnicas_avancadas > li div.padding > div.col01 {
    display: flex;
    flex: 1;
    align-items: center;
}

ul.cont_lista_alunos_modal.serie_especial li label {
    min-height: 80px;
}

ul.lista_grupos_musculares.fullscreen {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-left: 20px;
}

ul.lista_grupos_musculares.fullscreen > li {
    min-width: calc(34.33% - 40px);
    margin: 0;
}

ul.lista_grupos_musculares.fullscreen > li > div.padding {
    background-color: var(--container);
    background-repeat: no-repeat;
    background-position: 20px center;
    padding: 40px 10px 40px 120px;
    border-radius: 20px;
    display: flex;
}

ul.lista_grupos_musculares.fullscreen > li > div.padding > div.col01 {
    flex: 1;
    display: flex;
    align-items: center;
}

ul.lista_grupos_musculares.fullscreen div.peito {
    background-image: url(../img/grupos_musculares/icon_peito.svg);
}

ul.lista_grupos_musculares.fullscreen div.costas {
    background-image: url(../img/grupos_musculares/icon_costas.svg);
}

ul.lista_grupos_musculares.fullscreen div.ombros {
    background-image: url(../img/grupos_musculares/icon_ombro.svg);
}

ul.lista_grupos_musculares.fullscreen div.trapezio {
    background-image: url(../img/grupos_musculares/icon_trapezio.svg);
}

ul.lista_grupos_musculares.fullscreen div.biceps {
    background-image: url(../img/grupos_musculares/icon_biceps.svg);
}

ul.lista_grupos_musculares.fullscreen div.triceps {
    background-image: url(../img/grupos_musculares/icon_triceps.svg);
}

ul.lista_grupos_musculares.fullscreen div.antebraco {
    background-image: url(../img/grupos_musculares/icon_antebraco.svg);
}

ul.lista_grupos_musculares.fullscreen div.abdominal {
    background-image: url(../img/grupos_musculares/icon_abdominal.svg);
}

ul.lista_grupos_musculares.fullscreen div.lombar {
    background-image: url(../img/grupos_musculares/icon_lombar.svg);
}

ul.lista_grupos_musculares.fullscreen div.obliquos {
    background-image: url(../img/grupos_musculares/icon_obliquos.svg);
}

ul.lista_grupos_musculares.fullscreen div.quadriceps {
    background-image: url(../img/grupos_musculares/icon_quadriceps.svg);
}

ul.lista_grupos_musculares.fullscreen div.isquiotibiais {
    background-image: url(../img/grupos_musculares/icon_isquiotibiais.svg);
}

ul.lista_grupos_musculares.fullscreen div.gluteos {
    background-image: url(../img/grupos_musculares/icon_gluteos.svg);
}

ul.lista_grupos_musculares.fullscreen div.panturrilhas {
    background-image: url(../img/grupos_musculares/icon_panturrilhas.svg);
}

ul.lista_grupos_musculares.fullscreen div.default {
    background-image: url(../img/icon_haltere.svg);
    background-position: 30px center !important;
}

div.cont_minha_consultoria {
    padding: 10px 30px;
}

div.cont_minha_consultoria div.perfil {
    display: flex;
    gap: 30px;
}

div.cont {
    background: var(--container);
    border-radius: 20px;
    padding: 20px 20px;
    margin-bottom: 10px;
    position: relative;
}

div.cont:last-child {
    margin-bottom: 0;
}

div.cont_minha_consultoria div.perfil > div.col01 input[type="text"] {
   padding: 7px 10px;
}

div.cont_minha_consultoria ul.checkbox li label {
    padding: 10px 10px 10px 40px;
}

div.cont_minha_consultoria ul.checkbox li input[type="checkbox"] {
    top: 12px;
}

div.cont_minha_consultoria ul.checkbox li input[type="checkbox"] ~ span {
    top: 10px;
}

div.cont_minha_consultoria div.perfil > div.col01 {
    flex: 2;
}

div.cont_minha_consultoria div.perfil > div.col02 {
    flex: 3;
}

div.cont_minha_consultoria div.perfil > div.col03 {
    flex: 2;
}

div.cont_minha_consultoria div.perfil > div.col04 {
    flex: 2;
    display: flex;
    flex-direction: column;
    justify-content: stretch;
}

div.cont_minha_consultoria div.localizacao {
    padding-left: 45px;
    background: url(../img/icon_localizacao.svg) no-repeat 10px center;
}

ul.redes_sociais {
    list-style: none;
}

ul.redes_sociais li:first-child {
    border-top: 1px solid var(--linha);  
}


ul.redes_sociais li {
    padding: 10px 0;
    padding-left: 45px;
    border-bottom: 1px solid var(--linha);
    background-repeat: no-repeat;
    background-position: 10px center;
}

ul.redes_sociais li.whatsapp {
    background-image: url(../img/icon_whatsapp.svg);
}

ul.redes_sociais li.instagram {
    background-image: url(../img/icon_instagram02.svg);
}

ul.redes_sociais li.facebook {
    background-image: url(../img/icon_facebook.svg);
}

ul.redes_sociais li.tiktok {
    background-image: url(../img/icon_tiktok02.svg);
}



div.perfil div.img_consultoria {
    background-color: var(--container02);
    border-radius: 10px;
    height: 144px;
    position: relative;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

div.perfil div.img_consultoria div.cont_botoes {
    position: absolute;
    top: 0;
    right: 0;
    padding: 5px;
}

div.img_consultoria div.cont_botoes button {
    overflow: hidden;
    width: 40px;
    height: 40px;
    text-indent: -9999px;
    display: block;
    border: none;
    border-radius: 10px;
    margin-bottom: 3px;
}

div.img_consultoria div.cont_botoes button.editar {
    background: var(--container02) url(../img/icon_upload.svg) no-repeat center;
}

div.img_consultoria div.cont_botoes button.deletar {
    background: var(--container02) url(../img/icon_lixeira.svg) no-repeat center;
    background-size: 16px auto;
}

ul.lista_especialidades {
    list-style: none;
    border-bottom: 1px solid var(--linha);
    padding-bottom: 10px;
    margin-bottom: 10px;
}

ul.lista_especialidades li {
    display: inline-block;
    list-style: none;
    border: 1px solid var(--txtColor);
    padding: 3px 7px;
    border-radius: 5px;
}

button.add_especialidade {
    overflow: hidden;
    text-indent: -9999px;
    border: none;
    background: var(--verde) url(../img/icon_mais_cinza.svg) no-repeat center;
    border-radius: 100%;
    width: 35px;
    height: 35px;
    position: absolute;
    top: 5px;
    right: 5px;
}

.border-bottom {
    border-bottom: 1px solid var(--linha);
}

p.link_captacao {
    padding-top: 10px;
    margin-bottom: 0;
}

div.cont div.tit {
    display: flex;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--linha);
    margin-bottom: 10px;
}

div.cont div.tit > div.col01 {
    flex: 1;
}

button.info {
    overflow: hidden;
    text-indent: -9999px;
    border: none;
    background: url(../img/icon_info.svg) no-repeat center;
    width: 20px;
    height: 20px;
    margin-top: -20px;
}


/* The switch - the box around the slider */
.switch {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 34px;
  }
  
  /* Hide default HTML checkbox */
  .switch input {
    opacity: 0;
    width: 0;
    height: 0;
  }
  
  /* The slider */
  .slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: .4s;
    transition: .4s;
  }
  
  .slider:before {
    position: absolute;
    content: "";
    height: 26px;
    width: 26px;
    left: 4px;
    bottom: 4px;
    background-color: var(--bg);
    -webkit-transition: .4s;
    transition: .4s;
  }
  
  input:checked + .slider {
    background-color: var(--verde);
  }
  
  input:focus + .slider {
    box-shadow: 0 0 1px var(--verde);
  }
  
  input:checked + .slider:before {
    -webkit-transform: translateX(26px);
    -ms-transform: translateX(26px);
    transform: translateX(26px);
  }
  
  /* Rounded sliders */
  .slider.round {
    border-radius: 34px;
  }
  
  .slider.round:before {
    border-radius: 50%;
  }


  div.head {
    display: flex;
    align-items: flex-end;
  }

  div.head > div.col01 {
    flex: 1;
  }

  ul.lista_consult_online {
    list-style: none;
    border-top: 1px solid var(--linha);
    margin-top: 10px;
  }

  ul.lista_consult_online li {
    border-bottom: 1px solid var(--linha);
    padding: 15px 0;
  }

  div.lista_espera {
    display: flex;
    flex-direction: column;
  }

  div.lista_espera div.clientes {
    color: var(--verde);
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  button.adicionar_exercicio.editar {
    background-image: url(../img/icon_editar.svg);
    background-size: 20px;
    min-width: 150px;
  }

  div.lista_espera button.verde,
  div.lista_espera button.linha_verde {
    font-size: 16px;
    padding: 10px;
  }

  div.cont_input_email {
    position: relative;
  }

  div.cont_input_email button.btn_editar {
    border: none;
    width: 42px;
    height: 40px;
    background: var(--container03) url(../img/icon_editar.svg) no-repeat center;
    background-size: 18px;
    overflow: hidden;
    text-indent: -9999px;
    position: absolute;
    top: 9px;
    right: 9px;
    border-radius: 10px;
  }

  input.calendario {
    background-image: url(../img/icon_input_calendario.svg);
    background-repeat: no-repeat;
    background-position: right center;
  }

  div.cont_dados_pessoais {
    min-height: calc(100vh - 270px);
    display: flex;
    align-items: center;
    justify-content: center;
  }

  div.cont_minha_consultoria div.cont_dados_pessoais ul.checkbox li label {
    padding: 17px 17px 17px 40px;
  }

  div.cont_minha_consultoria div.cont_dados_pessoais ul.checkbox li input[type="checkbox"] {
    top: 20px;
  }

  div.cont_minha_consultoria div.cont_dados_pessoais ul.checkbox li span {
    top: 20px;
  }

  ul.opcoes_plano.perfil {
    max-width: 1645px;
    margin: 20px auto;
  }

  ul.opcoes_plano h3.tit_plano_perfil {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
  }

  ul.opcoes_plano div.cont_tit_plano_perfil {
    border-bottom: 1px solid var(--linhaLogin);
    margin-bottom: 10px;
    padding-bottom: 15px;
    display: flex;
  }

  div.cont_minha_consultoria ul.opcoes_plano li {
    display: flex;
    justify-content: stretch;
    align-items: stretch;
  }

  div.cont_minha_consultoria ul.opcoes_plano li div.opcao {
    flex: 1;
  }

  span.checkmark {
    display: block;
    width: 62px;
    height: 62px;
    background: url(../img/icon_checkmark02.svg) no-repeat center;
  }

  div.cont_plano_stats {
    display: flex;
    gap: 20px;
    margin: 0 auto;
    max-width: 1057px;
  }

  div.cont_plano_stats ul {
    list-style: none;
    background: var(--container);
    padding: 20px;
    border-radius: 20px;
    flex: 1;
  }

  div.cont_plano_stats ul li {
    border-bottom: 1px solid var(--linha);
    padding-top: 10px;
  }

  div.cont_plano_stats ul li:first-child {
    border-bottom: none;
  }

  div.cont_plano_stats ul li label.flex-1 {
    margin-right: 10px;
  }

  div.cont_plano_stats ul div.cont_progress_bar {
    background: var(--container02);
    height: 15px;
    border-radius: 20px;
  }

  div.cont_plano_stats ul div.cont_progress_bar div.progress_bar {
    background: var(--verde);
    height: 15px;
    border-radius: 20px;
  }

  div.cont_avisos_legais {
    gap: 30px;
  }

  div.cont_avisos_legais h3 {
    color: var(--verde);
  }

  div.cont_avisos_legais div.cont {
    padding: 30px;
  }

  div.lista_alunos.lista_mensagem {
    overflow: auto;
    height: calc(100vh - 250px);
  }

  div.lista_alunos.lista_mensagem th {
    border-top: none;
  }

  div.cont_botoes02 {
    display: flex;
    gap: 10px;
    margin-top: -10px;
    margin-left: 240px;
  }

  div.cont_botoes02 button {
    padding: 10px 20px;
    font-size: 18px;
    width: fit-content;
  }

  div.cont_botoes02 button.btn_config_mensagens {
    padding-left: 50px;
    background-image: url(../img/icon_engrenagem.svg);
    background-repeat: no-repeat;
    background-position: 15px center;
  }

  div.cont_botoes select {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  div.cont_botoes.relatorios div.col02 {
    display: block;
  }

  div.cont_botoes.relatorios div.col03 button {
    padding: 10px 20px;
  }

  table tr.new {
    background: var(--campoTexto);
  }

  table.grid_alunos.lista_relatorios td {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  div.cont_botoes02 button.btn_add_relatorio {
    padding-left: 45px;
    background-image: url(../img/icon_mais_cinza.svg);
    background-repeat: no-repeat;
    background-position: 15px center;
  }

  div.cont_header_aluno {
    gap: 100px;
  }

  div.cont_header_aluno div.col01 div.aluno_header {
    display: flex;
    align-items: center;
  }

  div.cont_header_aluno div.col01 div.aluno_header img {
    width: 65px;
    height: 65px;
    border-radius: 100%;
    margin-right: 10px;
  }

  div.cont_header_aluno div.col02 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  div.cont_feedback_aluno {
    max-width: 934px;
    margin: 0 auto;
  }

  label.cont_radio_button {
    position: relative;
  }

  label.cont_radio_button input {
    opacity: 0;
    position: absolute;
    top: 0;
    right: 0;
    height: 0;
    width: 0;
  }

  label.cont_radio_button span {
    display: inline-block;
    width: 22px;
    height: 22px;
    border: 2px solid var(--linha);
    border-radius: 100%;
  }

  label.cont_radio_button input:checked ~ span {
    background: var(--verde);
  }

  input[type="file"] {
    display: none;
  }
  
  .custom-file-upload {
    display: inline-block;
    padding: 10px 12px 10px 40px;
    cursor: pointer;
    background: var(--menu) url(../img/icon_upload.svg) no-repeat 15px center;
    color: var(--verde);
    border-radius: 10px;
  }

  div.cont_botoes_absolute {
    position: fixed;
    bottom: 0;
    right: 0;
    max-width: 259px;
  }

  div.cont_chat {
    display: flex;
    height: calc(100vh - 155px);
    margin-top: -10px;
  }

  div.cont_chat div.col01 {
    border-right: 1px solid var(--linhaLogin);
    min-width: 533px;
    overflow: auto;
  }

  div.cont_chat div.col02 {
    flex: 1;
    display: flex;
    flex-direction: column;
  }

  div.cont_chat_scroll {
    flex: 1;
    overflow: auto;
    padding: 30px;
  }

  div.cont_chat ul.lista_chats {
    list-style: none;
  }

  ul.lista_chats li {
    border-bottom: 1px solid var(--linhaLogin);
  }

  ul.lista_chats li a {
    display: flex;
    justify-items: center;
    padding: 10px 20px;
  }

  ul.lista_chats li img {
    width: 65px;
    height: 65px;
    border-radius: 100%;
  }

  ul.lista_chats li div.padding {
    display: flex;
    align-items: center;
    padding: 0 20px;
  }

  ul.lista_chats li.new {
    background: var(--campoTexto);
  }

  ul.lista_chats li.active {
    background: var(--verde);
  }

  ul.lista_chats li.active div.padding label {
    color: var(--bg);
  } 

  ul.lista_chats li div.padding label {
    margin-bottom: 0;
    color: var(--txtColor);
  }

  span.balao_esquerdo {
    display: inline-block;
    position: relative;
    background: var(--container03);
    border-radius: 0 10px 10px 10px;
    padding: 20px;
    margin-left: 34.64px;
    min-width: 60%;
  }

  span.balao_esquerdo::before {
    content: " ";
    width: 34.64px;
    height: 30px;
    position: absolute;
    top: 0;
    left: -32px;
    display: block;
    background: url(../img/seta_chat_esquerda.svg) no-repeat center;
  }

  span.balao_direito {
    display: inline-block;
    position: relative;
    background: var(--container02);
    border-radius: 10px 0 10px 10px;
    padding: 20px;
    margin-right: 34.64px;
    min-width: 60%;
  }

  span.balao_direito::after {
    content: " ";
    width: 34.64px;
    height: 30px;
    position: absolute;
    top: 0;
    right: -32px;
    display: block;
    background: url(../img/seta_chat_direita.svg) no-repeat center;
  }

p.cont_balao_direito {
    text-align: right;
}

div.cont_campo_texto {
    display: flex;
    gap: 10px;
    padding: 15px 20px;
    border-top: 1px solid var(--linhaLogin);
}

button.btn_enviar_mensagem {
    background: var(--verde) url(../img/icon_chat_enviar.svg) no-repeat center;
    border: none;
    width: 57px;
    overflow: hidden;
    text-indent: -9999px;
    border-radius: 10px;
}

div.cont_feedback_aluno button.engrenagem {
    width: 20px;
    height: 20px;
    border: none;
    background: url(../img/icon_engrenagem.svg) no-repeat center;
    overflow: hidden;
    text-indent: -9999px;
    position: absolute;
    top: 15px;
    right: 15px;
}

button.btn_categorias,
button.btn_exportar_dados {
    border: none;
    background: var(--container03);
    padding: 10px 20px;
    color: var(--txtColor);
    border-radius: 5px;
    font-weight: bold;
}

button.btn_exportar_dados {
    color: var(--verde);
}

div.cont_financeiro {
    margin: 0 5%;
}

div.cont_financeiro div.row01 {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
}

div.cont_financeiro div.row02 {
    background: var(--container);
    border-radius: 20px;
    padding-top: 5px;
    padding-bottom: 10px;
}

div.cont_financeiro div.tabcontent {
    min-height: auto;
}

div.cont_financeiro table.grid_alunos td,
div.cont_financeiro table.grid_alunos th {
    border-color: var(--linha);
}

div.cont_financeiro table.grid_alunos th {
    border-top: none;
}

div.cont_financeiro div.row01 div.saldo b {
    color: var(--verde);
}

div.cont_financeiro b {
    font-size: 22px;
}

div.cont_financeiro div.row01 > div.col01 {
    display: flex;
    flex-direction: column;
    min-width: 379px;
}

div.cont_financeiro div.row01 > div.col01 div.flex-1 {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

div.cont_financeiro div.row01 > div.col02 {
    background: var(--container);
    padding: 20px;
    border-radius: 20px;
}

ul.periodo {
    padding-left: 0;
    display: flex;
}

ul.periodo li {
    flex: 1;
}

ul.periodo label {
    margin-bottom: 0;
}

div.form_nova_entrada {
    display: flex;
    gap: 20px;
}

div.form_nova_entrada > div.col01,
div.form_nova_entrada > div.col02 {
    flex: 1;
}

div.categorias_financeiro {
    margin: 0 5%;
}

ul.lista_categorias_financeiro {
    list-style: none;
    padding-left: 0;
}

ul.lista_categorias_financeiro > li:first-child {
    border-top: 1px solid var(--linha);
}

ul.lista_categorias_financeiro > li {
    display: flex;
    border-bottom: 1px solid var(--linha);
    padding: 10px 15px;
    align-items: center;
}

ul.lista_categorias_financeiro li > div.col01 {
    flex: 1;
}

table.grid_pacientes th {
    border-top: none;
}

div.lista_alunos.scroll_full {
    height: calc(100vh - 250px);
    overflow: auto;
}

table.grid_pacientes div.cont_checkbox {
    width: 18px;
    height: 18px;
}

div.cont_form_novo_paciente {
    display: flex;
    gap: 30px;
}

div.cont_form_novo_paciente > div {
    flex: 1;
}


div.cont_avatar {
    display: flex;
    align-items: center;
    gap: 20px;
    height: 190px;
}

div.cont_avatar img {
    display: block;
    border: none;
    width: 125px;
    height: 125px;
    border-radius: 100%;
    background: var(--container02);
}

div.cont_gastos_energeticos_geral {
    display: flex;
    gap: 30px;
    margin: 0 30px;
}

div.cont_gastos_energeticos_geral > div.col01 {
    display: flex;
    flex-direction: column;
}

div.cont_gastos_energeticos_geral > div.col01 div.cont_descricao,
div.cont_gastos_energeticos_geral > div.col01 p.p_descricao
{
    display: flex;
    flex-direction: column;
}

div.cont_gastos_energeticos {
    flex: 1;
    background: var(--container);
    display: flex;
    border-radius: 20px;
}

div.cont_gastos_energeticos > div {
    flex: 1;
    padding: 30px;
}

div.cont_gastos_energeticos > div:first-child {
    border-right: 1px solid var(--linha);
}

div.cont_dados_corporais {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 20px;
}

div.cont_dados_corporais p {
    margin-bottom: 0;
    width: calc(50% - 20px);
}

ul.lista_atividades_fisicas {
    list-style: none;
}

ul.lista_atividades_fisicas li {
    display: flex;
    background: var(--container02);
    border-radius: 10px;
    padding: 15px;
    margin: 5px 0;
}

ul.lista_atividades_fisicas li > div.col01 {
    flex: 1;
}

ul.lista_atividades_fisicas button.apagar {
    border: none;
    overflow: hidden;
    text-indent: -9999px;
    width: 20px;
    height: 30px;
    background: url(../img/icon_lixeira.svg) no-repeat;
    background-size: contain;
}

div.cont_venta {
    background: var(--container02);
    width: fit-content;
    padding: 10px 30px;
    border-radius: 10px;
    margin: 0 auto;
    text-align: center;
}

div.cont_venta b {
    display: block;
}

div.cont_resultado {
    border-top: 1px solid var(--linha);
    margin-left: -30px;
    margin-right: -30px;
    margin-top: 20px;
    padding: 20px;
}

ul.lista_resultado {
    list-style: none;
    display: flex;
    gap: 20px;
    margin-top: 15px;
}

ul.lista_resultado li {
    background: var(--verde);
    color: var(--bg);
    padding: 20px;
    border-radius: 10px;
}

div.cont_info {
    background: var(--container02);
    padding: 10px;
    border-radius: 10px;
}

div.cont_titulo02 {
    display: flex;
    padding: 10px 20px 10px 20px;
    margin-bottom: 10px;
}

div.cont_titulo02 > div.col02 button {
    margin: 0 5px;
}

button.enviar_email,
button.salvar_pdf,
button.imprimir,
button.carregar_modelo,
button.salvar_modelo {
    border: none;
    background-color: var(--container02);
    background-repeat: no-repeat;
    background-position: 15px center;
    color: var(--txtColor);
    padding: 7px 15px;
    padding-left: 50px;
    border-radius: 10px;
}

button.enviar_email {
    background-image: url(../img/icon_email.svg);
}

button.salvar_pdf {
    background-image: url(../img/icon_pdf.svg);
}

button.imprimir {
    background-image: url(../img/icon_imprimir.svg);
}

button.carregar_modelo {
    background-image: url(../img/icon_download.svg);
}

button.salvar_modelo {
    background-image: url(../img/icon_salvar.svg);
}

ul.lista_suplementos_fitoterapicos {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    background: var(--campoTexto);
    border-radius: 10px;
    padding: 20px;
    gap: 20px;
}

ul.lista_suplementos_fitoterapicos > li {
    display: flex;
    align-items: center;
    background: var(--container02) url(../img/icon_suplemento.svg) no-repeat 15px center;
    background-size: 25px auto;
    border-radius: 10px;
    padding: 15px 0 15px 55px;
    min-width: calc(25% - 20px );
}

ul.lista_suplementos_fitoterapicos > li > div.col01 {
    flex: 1;
}

button.adicionar_horario {
    border: 1px solid var(--verde);
    background: url(../img/icon_plus.svg) no-repeat 15px center;
    color: var(--verde);
    border-radius: 5px;
    padding: 15px 15px 15px 50px;
}

ul.lista_dias_semana {
    display: flex;
    list-style: none;
    gap: 5px;
}

ul.lista_dias_semana li {
    flex:1;
    position: relative;
}

ul.lista_dias_semana li input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
}

ul.lista_dias_semana li > label {
    border: 1px solid var(--verde);
    color: var(--verde);
    border-radius: 5px;
    padding: 15px 10px;
    background: 0;
    width: 100%;
}

ul.lista_dias_semana li > input:checked ~ label {
    background: var(--verde);
    color: var(--bg);
}

div.container_antropometria {
    background-color: var(--container02);
    border-radius: 20px;
    margin-bottom: 10px;
}

div.container_antropometria button.collapsible {
    background-color: var(--container02);
    border-radius: 20px;
    font-weight: bold;
    font-size: 22px;
    border-bottom: none;
    padding-left: 80px;
    background-image: url(../img/icon_seta_faq.svg), url(../img/icon_fita_metrica.svg);
    background-repeat: no-repeat;
    background-position: right 20px center, 20px center;
}

div.container_antropometria button.collapsible.active {
    background-image: url(../img/icon_seta_faq02.svg), url(../img/icon_fita_metrica.svg);
}

div.container_antropometria button.collapsible span {
    font-weight: normal;
    font-size: 18px;
}

div.container_antropometria ul.periodo label {
    padding: 15px 10px;
}

div.container_antropometria h4 {
    text-align: center;
    padding: 10px;
    border-top: 1px solid var(--linhaLogin);
    border-bottom: 1px solid var(--linhaLogin);
}

table.grid_antropometria {
    width: 100%;
    border-top: 1px solid var(--linha);
}

table.grid_antropometria th {
    padding: 7px 15px;
}

table.grid_antropometria tr td {
    background: var(--campoTexto);
    padding: 7px 15px;
}

table.grid_antropometria tr:nth-child(odd) td {
    background: var(--container02);
}

table.grid_antropometria span.verde,
table.grid_antropometria span.vermelho {
    display: inline-block;
    border-radius: 100px;
    padding: 3px 15px;
    min-width: 130px;
    text-align: center;
}

table.grid_antropometria span.verde {
    background: #39B71F;
}

table.grid_antropometria span.vermelho {
    background: #EB001B;
}

h4.tit_grid_resultado {
    margin-top: 20px;
}


div.container_antropometria.anexos button.collapsible {
    background-image: url(../img/icon_seta_faq.svg), url(../img/icon_anexos.svg);
    padding-left: 65px;
}

div.container_antropometria.anexos button.collapsible.active {
    background-image: url(../img/icon_seta_faq02.svg), url(../img/icon_anexos.svg);
}

div.container_antropometria .content {
    overflow: visible;
}

ul.lista_anexos {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    gap: 20px;
}

ul.lista_anexos > li {
    display: flex;
    background: var(--container) url(../img/icon_anexo_verde.svg) no-repeat 15px center;
    border-radius: 10px;
    align-items: center;
    padding: 15px 0 15px 70px;
    min-width: calc(33% - 20px);
}

ul.lista_anexos > li > div.col01 {
    flex: 1;
}

div.container_prontuario {
    position: relative;
    background-color: var(--container02);
    border-radius: 20px;
    margin-bottom: 10px;
}

div.container_prontuario button.collapsible {
    background-image: url(../img/icon_seta_faq.svg), url(../img/icon_bloco_notas.svg);
    background-position: right 20px center, 20px center;
    padding-left: 75px;
    background-color: var(--container02);
    border-radius: 20px;
    font-weight: bold;
    font-size: 22px;
    border-bottom: none;
}

div.container_prontuario button.collapsible span {
    font-size: 15px;
    color: #989898;
    font-weight: normal;
}

div.container_prontuario p {
    border-top: 1px solid var(--linhaLogin);
    padding-top: 20px;
}

div.container_prontuario button.collapsible.active {
    background-image: url(../img/icon_seta_faq02.svg), url(../img/icon_bloco_notas.svg);
}

div.container_prontuario div.cont_menu02 {
    position: absolute;
    top: 37px;
    right: 60px;
}

div.cont_prontuarios {
    overflow: auto;
    height: calc(100vh - 320px);
    padding-right: 10px;
}

div.prontuario02 .ql-toolbar.ql-snow {
    background: var(--container02);
}

div.prontuario02 .ql-stroke {
    stroke: var(--txtColor);
}

.ql-snow.ql-toolbar button:hover, .ql-snow .ql-toolbar button:hover, .ql-snow.ql-toolbar button:focus, .ql-snow .ql-toolbar button:focus, .ql-snow.ql-toolbar button.ql-active, .ql-snow .ql-toolbar button.ql-active, .ql-snow.ql-toolbar .ql-picker-label:hover, .ql-snow .ql-toolbar .ql-picker-label:hover, .ql-snow.ql-toolbar .ql-picker-label.ql-active, .ql-snow .ql-toolbar .ql-picker-label.ql-active, .ql-snow.ql-toolbar .ql-picker-item:hover, .ql-snow .ql-toolbar .ql-picker-item:hover, .ql-snow.ql-toolbar .ql-picker-item.ql-selected, .ql-snow .ql-toolbar .ql-picker-item.ql-selected {
    stroke: var(--verde) !important;
    color: var(--verde);
}

.ql-snow.ql-toolbar button:hover .ql-stroke, .ql-snow .ql-toolbar button:hover .ql-stroke, .ql-snow.ql-toolbar button:focus .ql-stroke, .ql-snow .ql-toolbar button:focus .ql-stroke, .ql-snow.ql-toolbar button.ql-active .ql-stroke, .ql-snow .ql-toolbar button.ql-active .ql-stroke, .ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke, .ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke, .ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke, .ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke, .ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke, .ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke, .ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke, .ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke, .ql-snow.ql-toolbar button:hover .ql-stroke-miter, .ql-snow .ql-toolbar button:hover .ql-stroke-miter, .ql-snow.ql-toolbar button:focus .ql-stroke-miter, .ql-snow .ql-toolbar button:focus .ql-stroke-miter, .ql-snow.ql-toolbar button.ql-active .ql-stroke-miter, .ql-snow .ql-toolbar button.ql-active .ql-stroke-miter, .ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter, .ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter, .ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter, .ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter, .ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter, .ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter, .ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter, .ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter {
    stroke: var(--verde) !important;
    color: var(--verde);
}

.ql-snow .ql-picker {
    color: var(--txtColor);
}

.ql-snow .ql-picker-options {
    background-color: var(--container);
}

.ql-toolbar.ql-snow {
    border: 1px solid var(--linha);
}

.ql-container.ql-snow {
    border: 1px solid var(--linha);
}

ul.lista_switch {
    list-style: none;
    padding: 20px 40px;
}

ul.lista_switch li {
    background: var(--campoTexto);
    border-radius: 10px;
    padding: 15px 20px;
    display: flex;
    align-items: center ;
    margin-bottom: 10px;
}

ul.lista_switch li label.switch {
    margin-bottom: 0;
    margin-right: 15px;
}


ul.paginacao_orientacoes {
    width: fit-content;
    list-style: none;
    display: flex;
    gap: 10px;
    background: #141414;
    padding: 20px;
    border-radius: 100px;
    margin: 0 auto;
}

ul.paginacao_orientacoes li {
    background: rgba(217,217, 217, 0.3);
    width: 7px;
    height: 7px;
    border-radius: 100%;
}

ul.paginacao_orientacoes li.active {
    background: var(--verde);
}


div.cont_orientacoes {
    display: flex;
    margin-bottom: 20px;
    height: 75vh;
    min-height: 500px;
    max-height: 90vh;
    font-size: 18px;
    width: 90vw;
    max-width: 1480px;
    position: relative;
    aspect-ratio: 1480 / 720;
}

@media (min-width:1400px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1480px;
    }
}

div.cont_orientacoes .titulo_carteira {
    display: flex;
    align-items: center;
}

div.carteira_strength div.col02 button.verde {
    width: 290px;
    margin: 0 auto;
    margin-top: 40px;
    display: block;
}

div.carteira_strength div.cont_orientacoes ul.lista {
    list-style: none; /* Remove os pontos padrão */
    padding-left: 0;
}

ul.lista li {
    align-items: flex-start; /* Alinha o texto ao lado da imagem */
    gap: 15px; /* Espaço entre a imagem e o texto */
    margin-bottom: 20px;
    padding-left: 50px; /* Espaço para a imagem */
    position: relative;
}

ul.lista li.tudo::before {
    content: "";
    display: inline-block;
    width: 15px;
    height: 15px;
    background-color: #B1DF01; /* Cor do círculo */
    background-position: center;
    border-radius: 50%; /* Torna o elemento circular */
    position: absolute;
    left: 9px; /* Alinha à esquerda */
    top: 15px; /* Centraliza verticalmente */
    transform: translateY(-50%); /* Ajusta para centralização perfeita */
}

ul.lista li.venda::before {
    content: "";
    background: url("../img/icon_venda_profissional.svg") no-repeat center;
    background-size: contain;
    width: 30px;
    height: 30px;
    position: absolute;
    left: 0;
    top: 0;
}

/* Imagem para o terceiro item */
ul.lista li.liberdade::before {
    content: "";
    background: url("../img/icon_liberdade_negocio.svg") no-repeat center;
    background-size: contain;
    width: 30px;
    height: 30px;
    position: absolute;
    left: 0;
    top: 0;
}

/* Imagem para o quarto item */
ul.lista li.seguro::before {
    content: "";
    background: url("../img/icon_seguro_confiavel.svg") no-repeat center;
    background-size: contain;
    width: 30px;
    height: 30px;
    position: absolute;
    left: 0;
    top: 0;
}

div.cont_orientacoes h1.logo {
    overflow: hidden;
    width: 300px;
    height: auto;
    background: url(../img/logo.svg) no-repeat center;
    background-size: contain;
    text-indent: -9999px;
    margin-bottom: 20px;
}

div.cont_orientacoes h2 {
    font-size: 40px;
    margin-bottom: 20px;
}

div.cont_orientacoes button.btn_voltar,
div.cont_orientacoes button.btn_avancar {
    background: var(--verde) no-repeat center;
    background-size: auto 32px;
    overflow: hidden;
    border-radius: 100%;
    width: 78px;
    height: 78px;
    border: none;
    text-indent: -9999px;
}

div.cont_orientacoes button.btn_voltar {
    position: absolute;
    margin-left: -39px;
    z-index: 1;
    background-image: url(../img/icon_seta_voltar.svg);
}

div.cont_orientacoes button.btn_avancar {
    position: absolute;
    margin-left: -39px;
    z-index: 1;
    background-image: url(../img/icon_seta_avancar.svg);
}

div.cont_orientacoes div.col01,
div.cont_orientacoes div.col04 {
    display: flex;
    align-items: center;
    position: relative;
}

div.cont_orientacoes div.col02 {
    background: var(--container);
    border-radius: 20px 0 0 20px;
    flex: 4;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 418px;
}

div.carteira_strength div.cont_orientacoes div.col02 {
    flex: 10;
}

div.cont_orientacoes div.col02 div.scroll {
    padding-left: 70px;
    padding-right: 50px;
    overflow: auto;
    max-height: 70vh;
}

div.cont_orientacoes div.col03 {
    border-radius: 0 20px 20px 0;
    background: url(../img/bg_login.jpg) no-repeat;
    background-size: cover;
    flex: 6;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    text-align: center;
    position: relative;
}

div.cont_orientacoes div.col03 img {
    width: 100%;
}


div.cont_orientacoes div.col03 div.legenda {
    text-align: left;
}

div.cont_orientacoes div.col03 ul.paginacao_orientacoes {
    padding: 10px;
}

div.cont_orientacoes div.col03 div.cont_fotos {
    display: flex;
    gap: 30px;
    max-width: 663px;
}

div#bem-vindo-planilhas div.col03 {
    display: flex;
    justify-content: center; /* Centraliza as imagens */
    position: relative; /* Necessário para o posicionamento absoluto das imagens */
    overflow: visible; /* Permite que o conteúdo transborde sem ser cortado */
    min-height: 500px; /* Ajuste a altura mínima conforme necessário */
}

div#bem-vindo-planilhas div.col03 div.cont_fotos {
    display: flex;
    max-width: 100%;
    justify-content: center; /* Centraliza as imagens */
    position: relative; /* Necessário para o posicionamento absoluto das imagens */
    overflow: visible; /* Permite que o conteúdo transborde sem ser cortado */
    height: auto;
}

div#bem-vindo-planilhas div.col03 div.cont_fotos img {
    width: 100%;
    max-width: 470px; /* Ajuste o tamanho máximo das imagens conforme necessário */
    height: auto;
    border-radius: 10px; /* Adicione bordas arredondadas, se necessário */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Adicione uma sombra para destacar as imagens */
    object-fit: contain;
}

div#bem-vindo-planilhas div.col03 div.cont_fotos img:nth-child(1) {
    margin-right: -250px; /* Ajuste o valor para controlar a sobreposição */
    transform: translateY(-30%);
    z-index: 1; /* Garante que a primeira imagem fique abaixo da segunda */
}

div#bem-vindo-planilhas div.col03 div.cont_fotos img:nth-child(2) {
    z-index: 2; /* Garante que a segunda imagem fique acima da primeira */
    transform: translateY(30%);
}

div#bem-vindo-novidades-1 div.col03,
div#bem-vindo-novidades-2 div.col03,
div#bem-vindo-novidades-3 div.col03 {
    display: flex;
    justify-content: center; /* Centraliza as imagens */
    position: relative; /* Necessário para o posicionamento absoluto das imagens */
    overflow: visible; /* Permite que o conteúdo transborde sem ser cortado */
    min-height: 500px; /* Ajuste a altura mínima conforme necessário */
}

div#bem-vindo-novidades-1 div.col03 div.cont_fotos,
div#bem-vindo-novidades-2 div.col03 div.cont_fotos,
div#bem-vindo-novidades-3 div.col03 div.cont_fotos {
    display: flex;
    max-width: 100%;
    justify-content: center; /* Centraliza as imagens */
    position: relative; /* Necessário para o posicionamento absoluto das imagens */
    overflow: visible; /* Permite que o conteúdo transborde sem ser cortado */
    height: auto;
}

div#bem-vindo-novidades-1 div.col03 div.cont_fotos img,
div#bem-vindo-novidades-2 div.col03 div.cont_fotos img,
div#bem-vindo-novidades-3 div.col03 div.cont_fotos img {
    width: 100%;
    max-width: 450px; /* Ajuste o tamanho máximo das imagens conforme necessário */
    height: auto;
    border-radius: 10px; /* Adicione bordas arredondadas, se necessário */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Adicione uma sombra para destacar as imagens */
    object-fit: contain;
}

div#bem-vindo-novidades-1 div.col03 div.cont_fotos img:nth-child(1),
div#bem-vindo-novidades-2 div.col03 div.cont_fotos img:nth-child(1),
div#bem-vindo-novidades-3 div.col03 div.cont_fotos img:nth-child(1) {
    margin-right: -250px; /* Ajuste o valor para controlar a sobreposição */
    transform: translateY(-48%);
    z-index: 1; /* Garante que a primeira imagem fique abaixo da segunda */
}

div#bem-vindo-novidades-1 div.col03 div.cont_fotos img:nth-child(2),
div#bem-vindo-novidades-2 div.col03 div.cont_fotos img:nth-child(2),
div#bem-vindo-novidades-3 div.col03 div.cont_fotos img:nth-child(2) {
    z-index: 2; /* Garante que a segunda imagem fique acima da primeira */
    transform: translateY(48%);
}

div#bem-vindo-aplicativo div.col03 {
    display: flex;
    justify-content: center; /* Centraliza as imagens */
    position: relative; /* Necessário para o posicionamento absoluto das imagens */
    overflow: visible; /* Permite que o conteúdo transborde sem ser cortado */
}

div#bem-vindo-aplicativo div.col03 div.cont_fotos {
    display: flex;
    gap: 30px; /* Ajuste o espaçamento entre as imagens conforme necessário */
    max-width: 100%;
    justify-content: center; /* Centraliza as imagens */
    align-items: flex-end; /* Centraliza as imagens verticalmente */
    position: relative; /* Necessário para o posicionamento absoluto das imagens */
}

div#bem-vindo-aplicativo div.col03 div.cont_fotos img {
    width: auto;
    height: 480px;
    border-radius: 10px; /* Adicione bordas arredondadas, se necessário */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* Adicione uma sombra para destacar as imagens */
    object-fit: cover; /* Mantém a proporção da imagem */
}

div#bem-vindo-aplicativo div.col03 div.cont_fotos img:nth-child(2) {
    height: 450px; /* Define a altura da imagem do meio como 90% da altura das imagens laterais */
}

div.cont_titulo_orientacoes {
    position: absolute;
    width: 524px;
    left: calc(50% - 262px);
    margin-top: -30px;
    background: var(--verde);
    color: var(--bg);
    font-weight: bold;
    text-align: center;
    border-radius: 100px;
    padding: 20px;
    z-index: 1;
}


ul.cont_visao_geral table.table-condensed {
    height: 300px;
}

ul.cont_visao_geral div.calendario table {
    background: var(--container);
}

div.barra_venc_plano {
    background: #E1E1E1;
    height: 16px;
    width: 100%;
    border-radius: 100px;
}

div.barra_venc_plano div.barra_preenchida {
    border-radius: 100px;
    height: 16px;
    background: var(--verde);
    width: 50%;
}

li.cont_vencimento_plano label.data {
    color: var(--verde);
    display: block;
    text-align: right;
    font-size: 20px;
}

ul.menu_perfil {
    list-style: none;
}

ul.menu_perfil {
    margin-top: 50px;
}

ul.menu_perfil li > button {
    width: 100%;
    border: none;
    background: none;
    color: var(--verde);
    border: 1px solid var(--verde);
    border-radius: 100px;
    padding: 10px;
    margin-bottom: 20px;
    text-align: left;
    padding-left: 60px;
}

ul.menu_perfil button.dados_pessoais {
    background: url(../img/icon_dados_pessoais.svg) no-repeat 20px center;
}

ul.menu_perfil button.enviar_mensagem {
    background: url(../img/icon_enviar_mensagem.svg) no-repeat 20px center;
}

ul.menu_perfil button.aplicativo {
    background: url(../img/icon_aplicativo.svg) no-repeat 20px center;
}

ul.menu_perfil button.materiais {
    background: url(../img/icon_materiais.svg) no-repeat 20px center;
}

div.cont_botoes_top_right button.verde,
div.cont_botoes_top_right button.linha_verde {
    font-size: 16px;
    padding: 10px 15px;
    width: fit-content;
    margin-bottom: -50px;
    height: 50px;
    margin-top: -15px;
}

ul.cont_planilhas_treino {
    list-style: none;
}

ul.cont_planilhas_treino > li {
    display: flex;
    background: var(--container02) url(../img/icon_haltere.svg) no-repeat 20px center;
    padding: 30px 20px;
    padding-left: 90px;
    border-radius: 20px;
    margin-bottom: 20px;
}

ul.cont_planilhas_treino > li.active {
    border: 1px solid var(--verde);
}

ul.cont_planilhas_treino > li label {
    font-size: 20px;
    font-weight: bold;
}

li ul.dados_planilha {
    display: flex;
    list-style: none;
    gap: 20px;
}

li ul.dados_planilha li {
    border-right: 1px solid #ADB6C3;
    padding-right: 20px;
    font-weight: bold;
    color: #CCCCCC;
    padding-left: 25px;
    background: url(../img/icon_circulo_verde.svg) no-repeat left center;
}

ul.cont_planilhas_treino > li div.col02 {
    display: flex;
    align-items: flex-end;
    padding-right: 30px;
}

button.verde02 {
    background: var(--verde);
    color: var(--bg);
    font-size: 16px;
    padding: 10px 15px;
    border: none;
    border-radius: 100px;
    font-weight: bold;
}

div.voce_possui_mais {
    border-top: 1px solid #939393;
}

div.voce_possui_mais p {
    text-align: center;
    width: fit-content;
    background: var(--container);
    margin: 0 auto;
    margin-top: -12px;
    font-size: 14px;
    font-weight: bold;
    color: #CCCCCC;
    padding: 0 10px;
}

div.voce_possui_mais p a {
    color: var(--verde);
}

div.cont_perfil_aluno ul.cont_periodizacoes {
    margin: 0;
    margin-bottom: 25px;
}

div.cont_perfil_aluno ul.cont_periodizacoes div.periodizacao {
    background: var(--container02) url(../img/icon_calendario02.svg) no-repeat 28px center;
    box-shadow: none;
    padding-left: 103px;
}

div.cont_perfil_aluno ul.cont_periodizacoes div.periodizacao div.padding {
    padding-left: 0;
    padding-bottom: 5px;
}

div.cont_perfil_aluno ul.cont_periodizacoes div.periodizacao ul.cont_fluxo_ciclos {
    padding-left: 0;
    padding-top: 11px;
}

div.cont_perfil_aluno ul.cont_periodizacoes div.periodizacao ul.cont_fluxo_ciclos b {
    font-size: 12px;
}

div.cont_perfil_aluno ul.cont_periodizacoes div.periodizacao ul.cont_fluxo_ciclos span {
    font-size: 11px;
    display: block;
}

div.cont_perfil_aluno div.cont_msg {
    background: var(--campoTexto) url(../img/icon_smiley_triste.svg) no-repeat;
    background-position: 30px center;
    background-size: 75px auto;
    padding: 30px;
    border-radius: 20px;
    text-align: left;
    font-size: 20px;
    max-width: 500px;
    margin-bottom: 20px;
    padding-left: 130px;
    margin: 0 auto;
}

div.cont_planilhas_treino_ativas {
    background: var(--container02);
    border-radius: 10px;
    width: 400px;
    text-align: center;
    padding: 10px;
    position: relative;
}

div.cont_planilhas_treino_ativas span {
    display: block;
}

div.cont_planilhas_treino_ativas b {
    color: var(--verde);
    display: block;
}

ul.cont_planilhas_treino.lista_completa {
    gap: 20px;
    flex-wrap: wrap;
}

ul.cont_planilhas_treino.lista_completa > li {
    width: calc(50% - 30px);
}

ul.cont_planilhas_treino.lista_completa button.verde02 {
    padding: 5px 10px;
}

button.info {
    border: none;
    background: url(../img/icon_info.svg) no-repeat center;
    background-size: contain;
    width: 20px;
    height: 20px;
}

div.warning {
    background: var(--container02);
    color: var(--erro);
    border-radius: 5px;
    text-align: center;
    margin-bottom: 20px;
}

ul.cont_periodizacoes.lista_completa > li {
    width: calc(50% - 30px);
}

div.periodizacao.active {
    border:1px solid var(--verde);
}

button.adicionar_arquivo,
button.remover_foto {
    background: var(--campoTexto) url(../img/icon_upload.svg) no-repeat 10px center;
    display: block;
    width: 100%;
    color: var(--verde);
    padding: 15px;
    padding-left: 50px;
    text-align: left;
    border: none;
    border-radius: 10px;
    margin-bottom: 10px;
}

button.remover_foto {
    background: var(--campoTexto) url(../img/icon_remover_aluno.svg) no-repeat 10px center;
}

div.cont.cont03 {
    background: var(--container03);
}

div.dados_pessoais div.cont_content_modal {
    background: var(--bg);
}

div.dados_pessoais div.cont_foto_aluno img {
    border-radius: 100%;
    width: 118px;
}

h2.enviar_mensagem_para {
    margin-bottom: 20px;
}

h2.enviar_mensagem_para span {
    color: var(--verde);
}

button.copiar_link {
    background: url(../img/icon_copiar_link.svg) no-repeat;
    overflow: hidden;
    text-indent: -9999px;
    border: none;
    width: 28px;
    height: 28px;
    position: absolute;
    top: 45px;
    right: 10px;
}

ul.cont_materiais {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 20px;
    overflow: auto;
    max-height: 350px;
}

ul.cont_materiais > li {
    display: flex;
    width: calc(50% - 20px);
    background: var(--container02) url(../img/icon_materiais.svg) no-repeat 25px center;
    background-size: 30px auto;
    padding: 20px;
    border-radius: 20px;
    padding-left: 80px;
}

ul.cont_materiais > li div.col01 > b{
    display:block;
}

ul.cont_materiais > li > div.col02 {
    display: flex;
    align-items: center;
}

div.cont_enviar {
    margin: 0 -30px -20px -30px;
    background: var(--container02);
    border-radius: 20px;
    text-align: center;
    padding: 20px;
}

div.cont_enviar button.enviar {
    background: var(--verde) url(../img/icon_upload_cinza.svg) no-repeat 15px center;
    background-size: 20px auto;
    color: var(--bg);
    padding: 6px 30px;
    padding-left: 50px;
    border: none;
    border-radius: 100px;
    font-weight: bold;
}


div.cont_adicionar_novo {
    display: flex;
    margin: 20px -30px -20px -30px;
    border-top: 1px solid var(--linha);
}

div.cont_adicionar_novo > div {
    flex:1;
    border-right: 1px solid var(--linha);
    padding: 20px;
}

div.cont_adicionar_novo > div:last-child {
    border-right: none;
}

ul.menu_adicionar_novo {
    list-style: none;
}

ul.menu_adicionar_novo > li {
    background: var(--container02) url(../img/icon_registro_prontuario.svg) no-repeat 24px center;
    margin-bottom: 20px;
    padding: 20px;
    border-radius: 20px;
    padding-left: 80px;
    position: relative;
    min-height: 101px;
    display: flex;
    align-items: center;
    cursor: pointer;
}

ul.menu_adicionar_novo > li button.info {
    position: absolute;
    top: 10px;
    right: 10px;
}

ul.menu_adicionar_novo > li span {
    display: block;
    font-size: 12px;
}

ul.menu_adicionar_novo > li b {
    display: block;
}

ul.menu_adicionar_novo > li.add_lembrete {
    background-image: url(../img/icon_lembrete.svg);
}

ul.menu_adicionar_novo > li.add_planilha_treino {
    background-image: url(../img/icon_treino.svg);
    background-position: 18px center;
}

ul.menu_adicionar_novo > li.add_periodizacao {
    background-image: url(../img/icon_calendario02.svg);
    background-position: 18px center;
    background-size: 50px auto;
}

ul.menu_adicionar_novo > li.add_gastos_energeticos {
    background-image: url(../img/icon_gastos_energeticos.svg);
    background-position: 18px center;
}

ul.menu_adicionar_novo > li.add_plano_alimentar {
    background-image: url(../img/icon_plano_alimentar.svg);
}

ul.menu_adicionar_novo > li.add_prescricao {
    background-image: url(../img/icon_prescricao.svg);
}

ul.menu_adicionar_novo > li.add_antropometria {
    background-image: url(../img/icon_antropometria.svg);
    background-position: 18px center;
}

ul.menu_adicionar_novo > li.add_evolucao {
    background-image: url(../img/icon_evolucao.svg);
}

ul.menu_adicionar_novo > li.disabled {
    opacity: 0.5;
    position: relative;
}

ul.menu_adicionar_novo button.tag_em_breve {
    border: 1px solid var(--verde);
    color: var(--verde);
    padding: 5px;
    font-size: 10px;
    position: absolute;
    top: -10px;
    background: none;
    border-radius: 10px;
}


ul.lista {
    margin-left: 20px;
}

ul.lista li {
    margin-bottom: 20px;
}

span.status {
    font-weight: bold;
    display: block;
}

span.status.inativo {
    color: #989898;
}

span.status.ativo {
    color: var(--verde);
}

span.status.bloqueado {
    color: var(--erro);
}

div.cont_edit_titulo_treino {
    left: 0;
    top: 0;
    right: 0;
    position: absolute;
    z-index: 1;
    display: flex;
}

div.cont_edit_titulo_treino > div.c01 {
    flex: 1;
}

div.cont_edit_titulo_treino > div.c01 input[type="text"] {
    background: var(--campoTexto);
    color: var(--txtColor);
    border-radius: 5px 0 0 5px;
    padding: 5px 15px;
    font-size: 16px;
}

div.cont_edit_titulo_treino > div.c02 > button.verde02 {
    font-size: 12px;
    padding: 5px 15px;
    border-radius: 0 5px 5px 0;
    height: 38px;
}

div.cont_fecha_barra_direita {
    height: 100%;
}

div.cont_fecha_barra_direita,
div.cont_fecha_barra_esquerda {
    display: flex;
}

div.cont_fecha_barra_direita > div.col01,
div.cont_fecha_barra_esquerda > div.col01 {
    position: relative;
}

div.cont_fecha_barra_direita > div.col01::before,
div.cont_fecha_barra_esquerda > div.col01::before {
    content: " ";
    width: 8px;
    height: 100px;
    background: var(--verde);
    position: absolute;
    top: 50vh;
    left: 50%;
    border-radius: 20px;
    margin-left: -4px;
}

div.cont_fecha_barra_direita > div.col01 button,
div.cont_fecha_barra_esquerda > div.col01 button {
    background: rgba(0,0,0,0.5);
    width: 30px;
    border:none;
    height: 100%;
    border-radius: 20px 0 0 20px;
    overflow: hidden;
    text-indent: -9999px;
}

div.cont_fecha_barra_esquerda > div.col01 button {
    border-radius: 0 20px 20px 0;
}

div.modal.adicionar_exercicio02 div.cont_content_modal {
    width: 80vw;
    margin-top: 20px;
}

div.modal.adicionar_exercicio02 div.cont_content_modal div.cont_exerc_selecionados {
    max-height: calc(100vh - 500px);
}

div.modal.adicionar_exercicio02 div.cont_content_modal div.col02 {
    overflow: auto;
    max-height: calc(100vh - 300px);
}

div.modal.adicionar_exercicio02 ul.cont_lista_exercicios b {
    font-size: 13px;
}

div.modal.adicionar_exercicio02 ul.cont_lista_exercicios span {
    font-size: 11px;
}

div.modal.adicionar_exercicio02 ul.cont_lista_exercicios img {
    width: 45px;
    height: auto;
}

div.modal.adicionar_exercicio02 ul.filtros_musculos {
    list-style: none;
}

div.modal.adicionar_exercicio02 ul.filtros_musculos li {
    display: inline-block;
    position: relative;
}

div.modal.adicionar_exercicio02 ul.filtros_musculos li input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
}

div.modal.adicionar_exercicio02 ul.filtros_musculos li label {
    font-size: 14px;
    display: block;
    color: var(--verde);
    border: 1px solid var(--verde);
    padding: 10px 15px;
    border-radius: 100px;
    font-weight: bold;
}

div.modal.adicionar_exercicio02 ul.filtros_musculos li input:checked ~ label {
    background: rgba(177, 223, 1,0.25);
    color: var(--txtColor);
    font-weight: bold;
}

div.modal.adicionar_exercicio02 ul.filtros_musculos li button {
    font-size: 14px;
}

li.tempo_aprox_treino_planilha {
    text-align: center;
    grid-area: 3 / 1 / 4 / 3;
}

div.stats_grupo_muscular button.collapsible {
    font-size: 16px;
    background-color: var(--menu);
    background-position: center right;
    padding: 10px;
    border-bottom: 0;
}

div.stats_grupo_muscular div.content {
    padding: 10px;
}

div.stats_grupo_muscular div.content p {
    border-bottom: 1px solid var(--linha);
    padding-bottom: 10px;
}

div.texto_observacao {
    font-size: 13px;
    padding: 10px;
    border: 10px solid #313338;
    border-radius: 10px;
}

div.faixa_visualizar_planilha {
    background: var(--verde);
    color: var(--container02);
    position:fixed;
    font-weight: bold;
    text-align: center;
    bottom: 0;
    left: 0;
    right: 0;
}

div.cont_foto_absolute {
    position: absolute;
}

div.modal.bem_vindo_orientacoes button.tag_em_breve {
    border: 1px solid var(--verde);
    color: var(--verde);
    padding: 5px;
    font-size: 10px;
    position: absolute;
    background: none;
    border-radius: 10px;
    margin-left: 10px;
    margin-top: 13px;
}

div.modal.bem_vindo_orientacoes button.fecha_modal {
    right: 20px;
}

div.cont_faixa_verde {
    background: var(--verde);
    color: var(--bg);
}

div.limite_plano_atingido div.cont_faixa_verde {
    margin-left: -30px;
    margin-right: -30px;
    padding: 20px;
}

div.limite_plano_atingido div.cont_faixa_verde p {
    margin-bottom: 0;
}

div.limite_plano_atingido div.cont_faixa_verde h4 {
    font-weight: bold;
}

div.limite_plano_atingido h3.aluno_cad_sucesso {
    font-size: 30px;
    padding: 20px;
}

p.durate_proximos_trinta {
    margin-left: -30px;
    margin-right: -30px;
    padding: 20px 30px;
    border-bottom: 1px solid var(--linha);
}

div.cont_vantagens_oferta ul {
    list-style: none;
}

div.cont_vantagens_oferta ul li {
    margin-bottom: 20px;
}

@media (max-width: 576px) {
    .d-flex {
        display: block;
    }

    .d-flex select {
        margin-bottom: 20px;
    }

    h2 {
        text-align: center;
    }

    p.sobre_voce {
        padding: 0 20px;
    }

    div.modal.bem_vindo_orientacoes {
        display: block;
    }

    div.cont_orientacoes {
        height: auto;
    }

    div.cont_orientacoes {
        display: block;
        width: auto;
    }

    div.cont_orientacoes div.col02 {
        display: block;
        min-width:auto;
        padding-top: 30px;
        padding-bottom: 30px;
        border-radius: 0;
    }

    div.cont_titulo_orientacoes {
        position: static;
        width: auto;
        margin-top: 0;
        border-radius: 0;
    }

    div.cont_orientacoes button.btn_voltar {
        margin-right: 0;
        left: 0;
        border-radius: 0 20px 20px 0;
    }

    div.cont_orientacoes button.btn_avancar {
        margin-right: 0;
        right: 0;
        border-radius: 20px 0 0 20px;
    }

    div.cont_orientacoes button.btn_voltar, div.cont_orientacoes button.btn_avancar {
        width: 50px;
        position: absolute;
        top: 50%;
        margin-top: -39px;
    }

    div.cont_orientacoes div.col02 div.scroll {

    }

    div.cont_orientacoes div.col03 div.legenda {
        text-align: center;
    }

    div.modal.bem_vindo_orientacoes button.fecha_modal {
        right: 10px;
    }

    div.cont_orientacoes h2 {
        font-size: 18px;
    }

    div.cont_orientacoes p {
        font-size: 16px;
    }
}

@media (max-width: 768px) {

    div.cont_dicas {
        display: none;
    }

    ul.cont_submenu {
        display: block;
    }
}

/* Estilos gerais para mobile */
@media (max-width: 768px) {
    /* Ajusta o layout para telas menores */
    .d-flex {
        flex-direction: column; /* Alinha os elementos verticalmente */
    }

    .d-flex select {
        width: 100%; /* Ajusta o tamanho dos selects */
    }

    h2 {
        font-size: 1.5rem; /* Reduz o tamanho dos títulos */
    }

    p.sobre_voce {
        font-size: 1rem; /* Ajusta o tamanho do texto */
    }

    /* Ajusta o layout das colunas */
    div.col01, div.col02, div.col03, div.col04 {
        flex: 1; /* Faz as colunas ocuparem toda a largura */
        width: 100%;
    }

    /* Ajusta o padding e margens */
    div.cont {
        padding: 10px; /* Reduz o padding para telas menores */
    }

    div.cont_content_modal {
        width: 90%; /* Ajusta a largura dos modais */
        margin: 0 auto; /* Centraliza os modais */
    }

    ul.lista_menu {
        flex-direction: column; /* Alinha os itens do menu verticalmente */
    }

    ul.lista_menu li {
        margin-bottom: 10px; /* Adiciona espaço entre os itens */
    }

    ul.lista_menu a {
        font-size: 1rem; /* Ajusta o tamanho da fonte dos links */
    }

    /* Ajusta botões */
    button {
        font-size: 0.9rem; /* Reduz o tamanho dos botões */
        padding: 10px; /* Ajusta o padding */
    }

    /* Ajusta imagens */
    img {
        max-width: 100%; /* Faz as imagens ocuparem toda a largura disponível */
        height: auto; /* Mantém a proporção */
    }

    /* Ajusta tabelas */
    table {
        width: 100%; /* Faz as tabelas ocuparem toda a largura */
        font-size: 0.9rem; /* Reduz o tamanho da fonte */
    }

    table th, table td {
        padding: 5px; /* Reduz o padding das células */
    }

    /* Ajusta listas */
    ul {
        padding-left: 0; /* Remove o padding padrão */
    }

    ul li {
        margin-bottom: 10px; /* Adiciona espaço entre os itens */
    }

    /* Ajusta modais */
    div.modal {
        padding: 10px; /* Reduz o padding dos modais */
    }

    div.modal.bem_vindo_orientacoes {
        width: 90%; /* Ajusta a largura do modal */
        margin: 0 auto; /* Centraliza o modal */
    }

    div.cont_orientacoes {
        flex-direction: column; /* Alinha os elementos verticalmente */
        height: auto; /* Ajusta a altura */
    }

    div.cont_orientacoes div.col02 {
        flex: 1; /* Faz a coluna ocupar toda a largura */
        padding: 10px; /* Ajusta o padding */
    }

    div.cont_orientacoes div.col03 {
        flex: 1; /* Faz a coluna ocupar toda a largura */
        padding: 10px; /* Ajusta o padding */
    }

    div.cont_orientacoes button.btn_voltar,
    div.cont_orientacoes button.btn_avancar {
        width: 50px; /* Reduz o tamanho dos botões */
        height: 50px; /* Reduz o tamanho dos botões */
    }

    div.cont_orientacoes h2 {
        font-size: 1.5rem; /* Ajusta o tamanho do título */
    }

    div.cont_orientacoes p {
        font-size: 1rem; /* Ajusta o tamanho do texto */
    }

    /* Ajusta grids */
    ul.cont_visao_geral {
        grid-template-columns: 1fr; /* Faz os itens ocuparem toda a largura */
        grid-template-rows: auto; /* Ajusta a altura dos itens */
    }

    ul.cont_visao_geral li {
        padding: 10px; /* Ajusta o padding dos itens */
    }

    /* Ajusta barra lateral */
    div.menu_esquerda {
        width: 100%; /* Faz a barra ocupar toda a largura */
        position: relative; /* Ajusta o posicionamento */
    }

    div.menu_esquerda > p {
        font-size: 1rem; /* Ajusta o tamanho do texto */
    }

    /* Ajusta breadcrumbs */
    div.breadcrumbs a {
        font-size: 0.9rem; /* Ajusta o tamanho dos links */
    }

    div.breadcrumbs span.seta {
        width: 10px; /* Ajusta o tamanho da seta */
        height: 10px; /* Ajusta o tamanho da seta */
    }

    /* Ajusta inputs */
    input[type="text"], input[type="email"], input[type="password"], textarea {
        width: 100%; /* Faz os inputs ocuparem toda a largura */
        font-size: 1rem; /* Ajusta o tamanho da fonte */
    }

    /* Ajusta botões de ação */
    button.verde, button.linha_verde {
        font-size: 1rem; /* Ajusta o tamanho da fonte */
        padding: 10px; /* Ajusta o padding */
    }

    /* Ajusta o layout de cards */
    ul.cont_planilhas_treino.lista_completa > li {
        width: 100%; /* Faz os cards ocuparem toda a largura */
    }

    ul.cont_periodizacoes.lista_completa > li {
        width: 100%; /* Faz os cards ocuparem toda a largura */
    }

    /* Reposiciona a UL resumo acima da tabela */
    .cont_lista_alunos {
        flex-direction: column; /* Alinha os elementos verticalmente */
    }

    ul.resumo {
        width: 100%;
        display: flex; /* Alinha os itens horizontalmente */
        overflow-x: auto; /* Adiciona scroll horizontal */
        gap: 10px; /* Espaço entre os itens */
        padding: 10px; /* Adiciona padding para espaçamento interno */
        background: var(--container); /* Fundo para destacar */
        border-radius: 10px; /* Bordas arredondadas */
        margin-bottom: 20px; /* Espaço abaixo da UL */
    }

    ul.resumo li {
        flex: none; /* Garante que os itens não se estiquem */
        min-width: 120px; /* Define largura mínima para os itens */
        text-align: center; /* Centraliza o texto */
    }

    ul.resumo div.padding {
        padding: 10px; /* Ajusta o padding interno */
        border-radius: 10px; /* Bordas arredondadas */
    }

    table.grid_alunos {
        margin-top: 20px; /* Espaço entre a tabela e a UL resumo */
    }
}

/* Estilos para telas muito pequenas */
@media (max-width: 576px) {
    /* Ajusta o layout para telas menores */
    div.cont_dicas {
        flex-direction: column; /* Alinha os elementos verticalmente */
    }

    ul.cont_submenu {
        flex-direction: column; /* Alinha os itens do submenu verticalmente */
    }

    ul.cont_submenu li {
        width: 100%; /* Faz os itens ocuparem toda a largura */
    }

    div.modal.bem_vindo_orientacoes {
        width: 100%; /* Faz o modal ocupar toda a largura */
        padding: 10px; /* Ajusta o padding */
    }

    div.cont_orientacoes {
        flex-direction: column; /* Alinha os elementos verticalmente */
        height: auto; /* Ajusta a altura */
    }

    div.cont_orientacoes div.col02 {
        flex: 1; /* Faz a coluna ocupar toda a largura */
        padding: 10px; /* Ajusta o padding */
    }

    div.cont_orientacoes div.col03 {
        flex: 1; /* Faz a coluna ocupar toda a largura */
        padding: 10px; /* Ajusta o padding */
    }

    div.cont_orientacoes button.btn_voltar,
    div.cont_orientacoes button.btn_avancar {
        width: 40px; /* Reduz o tamanho dos botões */
        height: 40px; /* Reduz o tamanho dos botões */
    }

    div.cont_orientacoes h2 {
        font-size: 1.2rem; /* Ajusta o tamanho do título */
    }

    div.cont_orientacoes p {
        font-size: 0.9rem; /* Ajusta o tamanho do texto */
    }
}

/* Estilos para dispositivos menores */
@media (max-width: 768px) {
    /* Ajusta o layout geral */
    .cont_minha_consultoria {
        flex-direction: column; /* Alinha os elementos verticalmente */
        padding: 10px; /* Adiciona espaçamento interno */
    }

    .perfil {
        flex-direction: column; /* Alinha os elementos verticalmente */
    }

    /* Ajusta as colunas */
    .perfil > .col01,
    .perfil > .col02,
    .perfil > .col03,
    .perfil > .col04 {
        width: 100%; /* Faz as colunas ocuparem toda a largura */
        margin-bottom: 20px; /* Adiciona espaçamento entre as colunas */
    }

    /* Ajusta a lista de especialidades */
    ul.lista_especialidades {
        display: flex;
        flex-wrap: wrap; /* Permite que os itens quebrem linha */
        gap: 10px; /* Espaço entre os itens */
    }

    ul.lista_especialidades li {
        flex: 1 1 calc(50% - 10px); /* Faz os itens ocuparem metade da largura */
        text-align: center; /* Centraliza o texto */
    }

    /* Ajusta as redes sociais */
    ul.redes_sociais {
        display: flex;
        flex-wrap: wrap; /* Permite que os itens quebrem linha */
        gap: 10px; /* Espaço entre os itens */
    }

    ul.redes_sociais li {
        flex: 1 1 calc(50% - 10px); /* Faz os itens ocuparem metade da largura */
    }

    /* Ajusta os planos */
    ul.lista_consult_online li {
        flex-direction: column; /* Alinha os elementos verticalmente */
        gap: 10px; /* Espaço entre os elementos */
    }

    ul.lista_consult_online li input[type="text"] {
        width: 100%; /* Faz os inputs ocuparem toda a largura */
    }

    /* Ajusta a lista de espera */
    .lista_espera {
        flex-direction: column; /* Alinha os elementos verticalmente */
        gap: 10px; /* Espaço entre os elementos */
    }

    .lista_espera .clientes {
        text-align: center; /* Centraliza o texto */
    }
}

/* Estilos para telas muito pequenas */
@media (max-width: 576px) {
    /* Ajusta o layout geral */
    .cont_minha_consultoria {
        padding: 5px; /* Reduz o espaçamento interno */
    }
}

/* Responsividade para telas menores */
@media (max-width: 768px) {

    /* Ajustar o container principal */
    .cont_perfil_aluno {
        flex-direction: column; /* Empilha os elementos verticalmente */
        gap: 20px; /* Espaçamento entre os blocos */
    }

    /* Ajustar a coluna lateral (col01) */
    .cont_perfil_aluno > .col01 {
        max-width: 100%; /* Permitir que ocupe toda a largura */
        margin: 0 auto; /* Centralizar */
    }

    /* Ajustar a coluna principal (col02) */
    .cont_perfil_aluno > .col02 {
        position: static; /* Remover posicionamento relativo */
        width: 100%; /* Ocupa toda a largura */
    }

    /* Ajustar os botões no topo */
    .cont_botoes_top_right {
        justify-content: center; /* Centralizar os botões */
        flex-wrap: wrap; /* Permitir quebra de linha */
        gap: 10px;
    }

    /* Ajustar as abas (tabs) */
    .tab {
        display: flex;
        flex-wrap: wrap; /* Permitir quebra de linha */
        justify-content: center; /* Centralizar as abas */
        gap: 10px;
    }

    .tab button {
        flex: 1 1 auto; /* Fazer os botões ocuparem o espaço disponível */
        text-align: center;
    }

    /* Ajustar os gráficos e métricas na aba "Visão Geral" */
    .cont_visao_geral {
        grid-template-columns: 1fr; /* Uma única coluna */
        gap: 20px; /* Espaçamento entre os itens */
    }

    /* Ajustar as planilhas de treino */
    .cont_planilhas_treino {
        flex-direction: column; /* Empilhar os itens verticalmente */
        gap: 20px;
    }

    /* Ajustar as periodizações */
    .cont_periodizacoes {
        flex-direction: column; /* Empilhar os itens verticalmente */
        gap: 20px;
    }

    /* Ajustar os modais */
    .modal .cont_content_modal {
        width: 90%; /* Reduzir a largura do modal */
        max-width: 500px; /* Limitar a largura máxima */
    }

    .cont_foto_aluno img {
        width: 150px; /* Reduzir o tamanho da foto */
        height: 150px;
        margin: 0 auto; /* Centralizar */
    }

    .cont_planilhas_treino,
    .cont_periodizacoes {
        flex-direction: column; /* Empilhar os itens verticalmente */
        gap: 20px;
    }

    .modal .cont_content_modal {
        width: 90%; /* Reduzir a largura do modal */
        max-width: 500px; /* Limitar a largura máxima */
    }

    .cont_montagem_treino .col03 {
        width: auto;
    }

    div.cont_perfil_aluno ul.dados_planilha {
        display: none!important;
    }

    div.cont_botoes_top_right button.verde, div.cont_botoes_top_right button.linha_verde {
        margin-bottom: 0px!important;
    }
}
/* Onboarding - Cadastro de Aluno */
.onboarding-layer {
    position: fixed;
    inset: 0;
    z-index: 120000;
    pointer-events: none;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    padding: 32px;
}

.onboarding-layer .onboarding-backdrop {
    position: fixed;
    inset: 0;
    background: rgba(15, 16, 19, 0.78);
    backdrop-filter: blur(2px);
    pointer-events: auto;
}

.onboarding-highlight {
    position: fixed;
    border: 2px solid var(--verde);
    border-radius: 18px;
    box-shadow: 0 0 0 9999px rgba(15, 16, 19, 0.65);
    transition: all 0.2s ease;
    z-index: 120008;
    pointer-events: none;
}

.onboarding-focus {
    box-shadow: 0 0 0 3px rgba(177, 223, 1, 0.8), 0 18px 45px rgba(0, 0, 0, 0.35) !important;
    border-radius: 14px;
}

.onboarding-card {
    position: relative;
    z-index: 120010;
    pointer-events: auto;
    background: var(--container03);
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.07);
    box-shadow: 0 16px 40px rgba(5, 6, 8, 0.55);
    width: min(360px, 100%);
    padding: 24px 28px 20px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.onboarding-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    font-size: 14px;
    color: var(--txtColor02);
}

.onboarding-card__body h3 {
    margin: 0 0 8px;
    font-size: 22px;
    color: var(--txtColor);
}

.onboarding-card__body p {
    margin: 0;
    color: var(--txtColor02);
    line-height: 1.6;
    font-size: 15px;
}

.onboarding-card__footer {
    display: flex;
    align-items: center;
    gap: 12px;
    justify-content: flex-end;
}

.onboarding-primary,
.onboarding-secondary,
.onboarding-skip {
    font-family: "Inter", sans-serif;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
}

.onboarding-primary {
    background: var(--verde);
    color: #0f110f;
    padding: 12px 22px;
    border-radius: 999px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    box-shadow: 0 12px 30px rgba(177, 223, 1, 0.32);
}

.onboarding-primary:hover,
.onboarding-primary:focus {
    transform: translateY(-1px);
    box-shadow: 0 18px 36px rgba(177, 223, 1, 0.42);
}

.onboarding-secondary {
    background: transparent;
    color: var(--txtColor);
    padding: 10px 20px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.18);
}

.onboarding-secondary:hover,
.onboarding-secondary:focus {
    color: var(--verde);
    border-color: rgba(177, 223, 1, 0.6);
}

.onboarding-skip {
    background: transparent;
    color: var(--txtColor02);
    padding: 6px 12px;
    border-radius: 999px;
}

.onboarding-skip:hover,
.onboarding-skip:focus {
    color: var(--verde);
}

.onboarding-progress {
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.onboarding-trigger {
    position: fixed;
    right: 32px;
    bottom: 32px;
    z-index: 119000;
    background: rgba(47, 49, 54, 0.92);
    color: var(--txtColor);
    border: 1px solid rgba(255, 255, 255, 0.08);
    padding: 12px 20px;
    border-radius: 999px;
    font-family: "Inter", sans-serif;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.45);
    transition: all 0.2s ease;
}

.onboarding-trigger:hover,
.onboarding-trigger:focus {
    color: var(--verde);
    border-color: rgba(177, 223, 1, 0.45);
}

.onboarding-layer.d-none .onboarding-highlight {
    display: none;
}

.onboarding-layer.d-none .onboarding-card {
    display: none;
}

.onboarding-layer.d-none .onboarding-backdrop {
    display: none;
}

.onboarding-layer.onboarding-hidden,
.onboarding-layer.onboarding-hidden * {
    pointer-events: none !important;
}

body.onboarding-locked {
    overflow: hidden;
}

@media (max-width: 768px) {
    .onboarding-layer {
        padding: 16px;
        align-items: flex-end;
        justify-content: center;
    }

    .onboarding-card {
        width: 100%;
        max-width: 420px;
    }

    .onboarding-trigger {
        right: 16px;
        bottom: 16px;
        padding: 12px 18px;
    }
}

@media (max-width: 480px) {
    .onboarding-card {
        padding: 20px 18px 18px;
    }

    .onboarding-card__body h3 {
        font-size: 20px;
    }

    .onboarding-card__body p {
        font-size: 14px;
    }

    .onboarding-layer .onboarding-backdrop {
        backdrop-filter: none;
    }
}

/* Dashboard Home */
div.cont_home.dashboard {
    display: flex;
    flex-direction: column;
    gap: 32px;
    padding: 32px;
    width: 100%;
}

.dashboard__header {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    justify-content: space-between;
    align-items: flex-start;
    background: var(--container03);
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.04);
    box-shadow: 0 22px 40px rgba(0, 0, 0, 0.35);
    padding: 32px;
}

.dashboard__identity {
    flex: 1 1 320px;
}

.dashboard__eyebrow {
    text-transform: uppercase;
    letter-spacing: 0.16em;
    color: var(--txtColor02);
    font-size: 12px;
    margin-bottom: 8px;
}

.dashboard__subtitle {
    margin-top: 12px;
    color: var(--txtColor02);
    max-width: 540px;
    line-height: 1.6;
}

.dashboard__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 20px;
}

.dashboard-tag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(177, 223, 1, 0.14);
    color: var(--txtColor);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.04em;
}

.dashboard-tag--outline {
    background: transparent;
    border: 1px solid rgba(177, 223, 1, 0.4);
}

.dashboard-tag--positive {
    background: rgba(177, 223, 1, 0.22);
    color: #0f110f;
}

.dashboard__actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: flex-end;
    min-width: 200px;
}

.dashboard__metrics {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.metric-card {
    background: var(--container02);
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.05);
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-height: 140px;
    box-shadow: 0 18px 38px rgba(0, 0, 0, 0.28);
}

.metric-card--highlight {
    background: linear-gradient(140deg, rgba(177, 223, 1, 0.18), rgba(47, 49, 54, 0.95));
}

.metric-card--compact {
    background: var(--container03);
}

.metric-card header p {
    color: var(--txtColor02);
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 12px;
}

.metric-card strong {
    font-size: 36px;
    font-weight: 700;
    color: var(--txtColor);
}

.metric-card__detail {
    font-size: 14px;
    color: var(--txtColor02);
    line-height: 1.5;
}

.dashboard__grid {
    display: grid;
    gap: 24px;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}

.dashboard-panel {
    background: var(--container02);
    border-radius: 24px;
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, 0.05);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.32);
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.dashboard-panel__header {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: flex-start;
}

.dashboard-panel__header h2 {
    margin-bottom: 6px;
}

.dashboard-panel__subtitle {
    margin: 0;
    font-size: 14px;
    color: var(--txtColor02);
    line-height: 1.5;
}

.panel-link {
    background: none;
    border: none;
    color: var(--verde);
    font-weight: 600;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    cursor: pointer;
    transition: opacity 0.2s ease;
}

.panel-link:hover,
.panel-link:focus {
    opacity: 0.8;
}

.panel-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin: 0;
    padding: 0;
}

.panel-list__item {
    display: flex;
    gap: 18px;
    justify-content: space-between;
    align-items: center;
    padding: 18px 20px;
    background: rgba(255, 255, 255, 0.02);
    border-radius: 18px;
    border: 1px solid rgba(255, 255, 255, 0.04);
    backdrop-filter: blur(3px);
}

.panel-list__item--stacked {
    align-items: flex-start;
}

.panel-list__main {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.panel-list__meta {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
    color: var(--txtColor02);
    font-size: 13px;
}

.panel-list__meta-info {
    color: var(--txtColor02);
    font-size: 13px;
}

.panel-list__description {
    margin: 0;
    color: var(--txtColor02);
}

.panel-placeholder {
    padding: 18px 20px;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.02);
    color: var(--txtColor02);
    text-align: left;
}

.panel-list__actions {
    display: flex;
    align-items: center;
}

.panel-table {
    display: flex;
    flex-direction: column;
    border-radius: 18px;
    border: 1px solid rgba(255, 255, 255, 0.04);
    overflow: hidden;
}

.panel-table__row {
    display: grid;
    grid-template-columns: minmax(120px, 1fr) 120px 140px 140px;
    align-items: center;
    gap: 12px;
    padding: 16px 18px;
    background: rgba(255, 255, 255, 0.02);
    border-bottom: 1px solid rgba(255, 255, 255, 0.03);
}

.panel-table__row--head {
    background: rgba(177, 223, 1, 0.08);
    color: var(--txtColor02);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.panel-table__cell {
    color: var(--txtColor);
    font-size: 14px;
}

.panel-inline-link {
    background: none;
    border: none;
    color: var(--txtColor);
    font-weight: 600;
    cursor: pointer;
    text-align: left;
    padding: 0;
}

.panel-inline-link:hover,
.panel-inline-link:focus {
    color: var(--verde);
}

.status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 12px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.04em;
    background: rgba(255, 255, 255, 0.05);
    color: var(--txtColor);
    border: 1px solid transparent;
}

.status-pill--success {
    background: rgba(177, 223, 1, 0.25);
    color: #0f110f;
}

.status-pill--warning {
    background: rgba(255, 199, 0, 0.22);
    color: #221a00;
}

.status-pill--danger {
    background: rgba(234, 75, 75, 0.22);
    color: #2a0808;
}

.status-pill--neutral {
    background: rgba(255, 255, 255, 0.08);
    color: var(--txtColor02);
}

.status-pill--accent {
    background: rgba(3, 155, 229, 0.25);
    color: #001b2a;
}

.status-pill--outline {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.24);
}

.finance-status {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.finance-status__item {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.finance-status__description {
    margin: 0;
    color: var(--txtColor02);
    font-size: 14px;
}

.finance-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.panel-table__row.panel-placeholder {
    text-align: left;
    color: var(--txtColor02);
}

@media (max-width: 1024px) {
    .dashboard__header {
        flex-direction: column;
        align-items: stretch;
    }

    .dashboard__actions {
        width: 100%;
        align-items: stretch;
    }

    .dashboard__actions button {
        width: 100%;
    }

    .panel-table__row {
        grid-template-columns: minmax(120px, 1fr) 110px 120px 120px;
    }
}

@media (max-width: 720px) {
    div.cont_home.dashboard {
        padding: 20px;
        gap: 20px;
    }

    .dashboard-panel {
        padding: 22px;
    }

    .panel-table__row {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .panel-table__row--head {
        display: none;
    }

    .panel-table__cell {
        display: flex;
        justify-content: space-between;
        gap: 8px;
        width: 100%;
        align-items: center;
    }

    .panel-table__cell::before {
        content: attr(data-label);
        text-transform: uppercase;
        font-size: 11px;
        letter-spacing: 0.08em;
        color: var(--txtColor02);
        margin-right: 8px;
        font-weight: 600;
    }

    .panel-list__item {
        flex-direction: column;
        align-items: flex-start;
    }

    .panel-list__actions {
        width: 100%;
    }

    .panel-list__actions .panel-link {
        width: 100%;
        text-align: left;
    }
}
