@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap');

:root { --fundo: #191C26; --superficie: #191C26; --cartao: #242938; --cartao-claro: #2B3041; --texto: #F7F8FC; --texto-secundario: #9CA5BA; --linha: rgba(255,255,255,0.10); --azul: #1485FF; --ciano: #54D5FF; --violeta: #8B5CF6; --coral: #FF718D; }

* { margin: 0; padding: 0; box-sizing: border-box; -webkit-tap-highlight-color: rgba(0,0,0,0); }
html, body { min-height: 100%; }
body, input, button, select { font-family: "Montserrat", sans-serif; }
button, input, select { font-size: 16px; }
button { border: 0; color: inherit; cursor: pointer; }
input:focus, button:focus { outline: none; }

body.tela-login { min-height: 100dvh; color: var(--texto); background: var(--fundo); }
.login { display: flex; width: 100%; max-width: 480px; min-height: 100dvh; margin: 0 auto; overflow: hidden; flex-direction: column; background: var(--superficie); box-shadow: 0 0 80px rgba(0,0,0,0.32); }

.login-identidade { display: grid; min-height: 285px; padding: 35px 25px 15px; place-items: center; background: radial-gradient(circle at 50% 35%, rgba(139,92,246,0.16), transparent 205px); }
.marca-circulo { position: relative; width: 200px; height: 200px; border-radius: 50%; background: conic-gradient(from 225deg, transparent 0 13%, var(--ciano), var(--violeta), var(--coral), transparent 87%); filter: drop-shadow(0 0 28px rgba(139,92,246,0.22)); }
.marca-circulo::before { position: absolute; inset: 12px; border-radius: 50%; background: var(--superficie); content: ""; }
.marca-conteudo { position: absolute; z-index: 1; inset: 0; display: flex; align-items: center; justify-content: center; flex-direction: column; text-align: center; }
.marca-conteudo strong { font-size: 22px; font-weight: 700; letter-spacing: -1px; }
.marca-conteudo span { margin-top: 7px; color: var(--texto-secundario); font-size: 13px; }

.login-conteudo { position: relative; display: flex; flex: 1; justify-content: flex-start; flex-direction: column; padding: 30px 30px 44px; text-align: center; }
.login-etapa { margin-bottom: 14px; color: #70C8FF; font-size: 12px; font-weight: 700; letter-spacing: 1.4px; text-transform: uppercase; }
.login-conteudo h1 { font-size: 38px; font-weight: 700; line-height: 1.08; letter-spacing: -1.6px; }
.login-texto { margin: 16px 0 34px; color: var(--texto-secundario); font-size: 16px; line-height: 1.65; }
.login-texto strong { color: var(--texto); font-weight: 600; }

.form-login { display: flex; flex-direction: column; }
.campo-armadilha { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; opacity: 0 !important; pointer-events: none !important; }
.form-login label { margin-bottom: 9px; color: #CAD0DE; font-size: 13px; font-weight: 600; text-align: left; }
.campo { position: relative; }
.campo [data-lucide] { position: absolute; top: 50%; right: 18px; width: 18px; height: 20px; color: #7E899F; stroke-width: 1.8; transform: translateY(-50%); pointer-events: none; }
.campo input { width: 100%; height: 58px; padding: 0 20px; border: 1px solid rgba(255,255,255,0.12); border-radius: 16px; color: var(--texto); background: rgba(255,255,255,0.045); transition: all 0.2s ease; }
.campo input::placeholder { color: #717A90; }
.campo input:focus { border-color: rgba(84,213,255,0.65); box-shadow: 0 0 0 4px rgba(84,213,255,0.08); }
.campo-codigo input { padding-left: 30px; font-size: 22px; font-weight: 600; letter-spacing: 8px; }

.form-login > button, .login-confirmado button { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: 58px; margin-top: 16px; padding: 0 52px; border-radius: 16px; color: #FFFFFF; font-size: 15px; font-weight: 700; text-align: center; background: linear-gradient(100deg, #168CFF, #785FF2); background-size: 140% 100%; box-shadow: 0 14px 30px rgba(20,133,255,0.20); transition: filter 0.25s ease, background-position 0.35s ease; }
.form-login > button:hover { filter: saturate(1.2) brightness(1.08); background-position: 100% 0; }
.form-login > button [data-lucide] { position: absolute; top: 50%; right: 20px; width: 18px; height: 18px; stroke-width: 2; transform: translateY(-50%); }
.form-login > button:disabled { opacity: 0.72; cursor: wait; filter: none; }
.form-login > button.processando [data-lucide] { animation: girar-envio 0.8s linear infinite; }
@keyframes girar-envio { to { transform: translateY(-50%) rotate(360deg); } }
.login-nota { display: flex; align-items: center; justify-content: center; gap: 7px; margin-top: 22px; color: #737E94; font-size: 12px; }
.login-nota [data-lucide] { width: 14px; height: 14px; }

.aviso-login { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 24px; padding: 13px 15px; border: 1px solid rgba(255,255,255,0.08); border-radius: 13px; font-size: 13px; line-height: 1.45; text-align: left; }
.aviso-login [data-lucide] { flex: 0 0 auto; width: 18px; height: 18px; }
.aviso-login.erro { color: #FFB1C1; background: rgba(255,113,141,0.09); }
.aviso-login.sucesso { color: #9BDFC3; background: rgba(59,198,135,0.09); }
.aviso-login.aviso { color: #FFE09B; background: rgba(255,188,66,0.09); }

.login-acoes { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 23px; }
.login-acoes a, .botao-link { display: inline-flex; align-items: center; gap: 6px; padding: 0; color: #8290AA; font-size: 12px; font-weight: 600; text-decoration: none; background: none; }
.login-acoes a:hover, .botao-link:hover { color: #70C8FF; }
.login-acoes [data-lucide] { width: 14px; height: 14px; }

.login-confirmado { text-align: center; }
.icone-confirmado { display: grid; width: 68px; height: 68px; margin: 0 auto 24px; place-items: center; border: 1px solid rgba(84,213,255,0.20); border-radius: 50%; color: #70C8FF; background: rgba(20,133,255,0.10); box-shadow: 0 0 30px rgba(84,213,255,0.10); }
.icone-confirmado [data-lucide] { width: 30px; height: 30px; stroke-width: 2; }
.login-confirmado .login-etapa { text-align: center; }
.login-confirmado > p:not(.login-etapa) { margin: 16px 0 10px; color: var(--texto-secundario); font-size: 15px; line-height: 1.6; }
.login-confirmado button { opacity: 0.45; cursor: default; box-shadow: none; }

/* Estrutura do aplicativo */
body.tela-app { min-height: 100dvh; color: var(--texto); background: var(--fundo); }
.app { width: 100%; max-width: 480px; min-height: 100dvh; padding-bottom: 70px; margin: 0 auto; color: var(--texto); background: var(--superficie); box-shadow: 0 0 80px rgba(0,0,0,0.32); }
.topo-app { display: flex; align-items: center; justify-content: space-between; gap: 20px; height: 74px; padding: 0 25px; border-bottom: 1px solid var(--linha); }
.avatar-app { display: grid; width: 38px; height: 38px; place-items: center; border: 1px solid var(--linha); border-radius: 50%; color: #9DDBFF; font-size: 13px; font-weight: 700; text-decoration: none; background: var(--cartao); }
.avatar-admin [data-lucide] { width: 18px; height: 18px; stroke-width: 2; }

.marca-app { display: inline-flex; align-items: center; gap: 10px; color: var(--texto); text-decoration: none; }
.marca-app strong { font-size: 16px; font-weight: 700; letter-spacing: -0.5px; }
.marca-app-circulo { position: relative; width: 25px; height: 25px; border-radius: 50%; background: conic-gradient(from 225deg, transparent 0 13%, var(--ciano), var(--violeta), var(--coral), transparent 87%); }
.marca-app-circulo::before { position: absolute; inset: 3px; border-radius: 50%; background: var(--superficie); content: ""; }
.etapa-cadastro { color: var(--texto-secundario); font-size: 11px; font-weight: 600; letter-spacing: 0.8px; text-transform: uppercase; }
.conteudo-app { padding: 30px; }

/* Perfil */
.pagina-perfil { padding-bottom: 80px; }
.apresentacao-perfil { margin-bottom: 32px; }
.icone-pagina { display: grid; width: 64px; height: 64px; margin: 0 auto 18px; place-items: center; border: 1px solid rgba(84,213,255,0.18); border-radius: 50%; color: #70C8FF; background: linear-gradient(145deg, rgba(20,133,255,0.12), rgba(139,92,246,0.10)); }
.icone-pagina [data-lucide] { width: 26px; height: 26px; stroke-width: 1.7; }
.legenda-pagina { margin-bottom: 10px; color: #70C8FF; font-size: 11px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; }
.inicio-vazio h1 { font-size: 30px; font-weight: 700; line-height: 1.12; letter-spacing: -1.3px; }
.inicio-vazio > p:not(.legenda-pagina) { margin-top: 13px; color: var(--texto-secundario); font-size: 14px; line-height: 1.6; }
.form-perfil { display: flex; flex-direction: column; gap: 20px; }
.grupo-campo { display: flex; flex-direction: column; }
.grupo-campo > label, .grupo-campo legend { margin-bottom: 9px; color: #CAD0DE; font-size: 13px; font-weight: 600; text-align: left; }
.campo-data input { padding: 0 52px 0 20px; }
.campo-data-operacional { height: 58px; overflow: hidden; border: 1px solid rgba(255,255,255,0.12); border-radius: 16px; background: rgba(255,255,255,0.045); transition: all 0.2s ease; }
.campo-data-operacional:focus-within { border-color: rgba(84,213,255,0.65); box-shadow: 0 0 0 4px rgba(84,213,255,0.08); }
.campo-data-operacional > [data-lucide] { z-index: 3; }
.campo-data-operacional > span { display: flex; width: 100%; height: 100%; align-items: center; padding: 0 52px 0 20px; color: var(--texto); font-size: 16px; white-space: nowrap; }
.campo-data-operacional input { position: absolute; z-index: 2; inset: 0; width: 100%; min-width: 0; height: 100%; padding: 0; border: 0; opacity: 0; cursor: pointer; }
.grupo-genero { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; border: 0; }
.grupo-genero legend { grid-column: 1 / -1; }
.opcao-genero { position: relative; margin: 0 !important; cursor: pointer; }
.opcao-genero:last-child { grid-column: 1 / -1; }
.opcao-genero input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.opcao-genero span { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 10px 12px; border: 1px solid rgba(255,255,255,0.10); border-radius: 14px; color: var(--texto-secundario); font-size: 12px; font-weight: 600; background: rgba(255,255,255,0.035); transition: all 0.2s ease; }
.opcao-genero span [data-lucide] { width: 16px; height: 16px; stroke-width: 1.8; }
.opcao-genero input:checked + span { border-color: rgba(84,213,255,0.38); color: #9DDBFF; background: linear-gradient(120deg, rgba(20,133,255,0.12), rgba(139,92,246,0.09)); }
.email-perfil { display: flex; align-items: center; gap: 13px; padding: 14px 16px; border-radius: 14px; color: var(--texto-secundario); background: rgba(255,255,255,0.035); }
.email-perfil > [data-lucide] { flex: 0 0 auto; width: 20px; height: 20px; color: #70C8FF; stroke-width: 1.8; }
.email-perfil div { min-width: 0; flex: 1; text-align: left; }
.email-perfil span { display: block; margin-bottom: 3px; font-size: 10px; }
.email-perfil strong { display: block; overflow: hidden; color: #CDD3E0; font-size: 12px; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.email-perfil > a { flex: 0 0 auto; padding: 8px 0 8px 12px; color: #8FCFFF; font-size: 11px; font-weight: 650; text-decoration: none; }
.email-perfil > a:hover { color: #B6E1FF; }
.pagina-alterar-email { padding-bottom: 80px; }
.alterar-email-conteudo { padding: 30px; }
.alterar-email-conteudo .historico-apresentacao { margin-bottom: 28px; }
.email-atual-alteracao { display: flex; align-items: center; gap: 13px; margin-bottom: 20px; padding: 14px 16px; border-radius: 14px; color: var(--texto-secundario); background: rgba(255,255,255,0.035); }
.email-atual-alteracao [data-lucide] { width: 20px; height: 20px; flex: 0 0 auto; color: #70C8FF; stroke-width: 1.8; }
.email-atual-alteracao div { min-width: 0; }
.email-atual-alteracao span { display: block; margin-bottom: 3px; font-size: 10px; }
.email-atual-alteracao strong { display: block; overflow: hidden; color: #CDD3E0; font-size: 12px; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.form-alterar-email { display: flex; gap: 16px; flex-direction: column; }
.form-alterar-email > label { color: #CAD0DE; font-size: 13px; font-weight: 600; text-align: left; }
.form-alterar-email .botao-principal { border: 0; }
.acoes-alterar-email { display: flex; align-items: center; justify-content: center; gap: 18px; margin-top: 20px; }
.acoes-alterar-email a, .acoes-alterar-email button { color: #8290AA; font-size: 11px; font-weight: 600; text-decoration: none; background: none; }
.acoes-alterar-email a:hover, .acoes-alterar-email button:hover { color: #A9DFFF; }
.botao-principal { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; min-height: 58px; padding: 0 52px; border-radius: 16px; color: #FFFFFF; font-size: 15px; font-weight: 700; text-align: center; background: linear-gradient(100deg, #168CFF, #785FF2); background-size: 140% 100%; box-shadow: 0 14px 30px rgba(20,133,255,0.20); transition: filter 0.25s ease, background-position 0.35s ease; }
.botao-principal:hover { filter: saturate(1.2) brightness(1.08); background-position: 100% 0; }
.botao-principal [data-lucide] { position: absolute; top: 50%; right: 20px; width: 18px; height: 18px; transform: translateY(-50%); }
.botao-principal:disabled { opacity: 0.45; cursor: default; filter: none; }
.nota-formulario { color: #737E94; font-size: 11px; text-align: center; }

.form-sair { margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--linha); text-align: center; }
.form-sair button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 10px 14px; color: #8290AA; font-size: 12px; font-weight: 600; background: none; transition: color 0.2s ease; }
.form-sair button:hover { color: #FF9AAF; }
.form-sair button [data-lucide] { width: 16px; height: 16px; stroke-width: 1.8; }

/* Início provisório */
.inicio-vazio { display: flex; min-height: calc(100dvh - 74px); align-items: center; justify-content: center; flex-direction: column; padding: 40px 30px; text-align: center; }
.inicio-vazio .icone-confirmado { margin-bottom: 24px; }
.inicio-vazio .botao-principal { margin-top: 30px; }

/* Preferências */
.preferencia-whatsapp { display: flex; align-items: center; gap: 13px; padding: 15px 16px; border: 1px solid rgba(255,255,255,0.08); border-radius: 16px; text-align: left; background: rgba(255,255,255,0.03); cursor: pointer; }
.preferencia-whatsapp > input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.preferencia-whatsapp .switch { position: relative; flex: 0 0 auto; width: 42px; height: 24px; border-radius: 999px; background: #343949; transition: background 0.2s ease; }
.preferencia-whatsapp .switch::after { position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #8B94A8; transition: all 0.2s ease; content: ""; }
.preferencia-whatsapp > span:last-child { display: flex; min-width: 0; flex-direction: column; }
.preferencia-whatsapp strong { color: #D7DCE7; font-size: 12px; font-weight: 600; }
.preferencia-whatsapp small { margin-top: 3px; color: #7F899E; font-size: 10px; line-height: 1.4; }
.preferencia-whatsapp input:checked + .switch { background: linear-gradient(100deg, #168CFF, #785FF2); }
.preferencia-whatsapp input:checked + .switch::after { background: #FFFFFF; transform: translateX(18px); }

/* Novo jejum */
.pagina-novo-jejum { padding-bottom: 0px; }
.botao-voltar, .espaco-topo { display: grid; width: 36px; height: 36px; place-items: center; color: var(--texto-secundario); text-decoration: none; }
.botao-voltar { border: 1px solid rgba(255,255,255,0.08); border-radius: 50%; background: rgba(255,255,255,0.03); }
.botao-voltar [data-lucide] { width: 18px; height: 18px; }
.botao-compartilhar { display: grid; width: 36px; height: 36px; place-items: center; border: 1px solid rgba(157,140,241,0.20); border-radius: 50%; color: #A99AF2; background: rgba(139,92,246,0.07); transition: color 0.2s ease, background 0.2s ease, opacity 0.2s ease; }
.botao-compartilhar:hover { color: #C2B8FF; background: rgba(139,92,246,0.12); }
.botao-compartilhar [data-lucide] { width: 17px; height: 17px; stroke-width: 1.8; }
.botao-compartilhar.carregando { opacity: 0.48; cursor: wait; }
.apresentacao-jejum { margin-bottom: 36px; text-align: center; }
.apresentacao-jejum h1 { font-size: 34px; font-weight: 700; line-height: 1.1; letter-spacing: -1.4px; }
.apresentacao-jejum > p:last-child { margin-top: 13px; color: var(--texto-secundario); font-size: 14px; line-height: 1.6; }
.form-jejum { display: flex; flex-direction: column; gap: 22px; }
.secao-form { padding: 20px; border: 1px solid rgba(255,255,255,0.07); border-radius: 22px; background: rgba(255,255,255,0.025); }
.titulo-secao { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 18px; text-align: left; }
.titulo-secao > span { display: grid; flex: 0 0 auto; width: 28px; height: 28px; place-items: center; border: 1px solid rgba(84,213,255,0.16); border-radius: 50%; color: #70C8FF; font-size: 11px; font-weight: 700; background: rgba(20,133,255,0.08); }
.titulo-secao > span [data-lucide] { width: 14px; height: 14px; }
.titulo-secao h2 { color: #EFF2F8; font-size: 15px; font-weight: 650; }
.titulo-secao p { margin-top: 4px; color: #7F899E; font-size: 11px; line-height: 1.45; }
.opcoes-meta { display: grid; grid-template-columns: repeat(5, 1fr); gap: 7px; }
.opcoes-meta label, .opcoes-inicio label { position: relative; cursor: pointer; }
.opcoes-meta input, .opcoes-inicio input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.opcoes-meta span { display: grid; min-height: 50px; place-items: center; border: 1px solid rgba(255,255,255,0.09); border-radius: 14px; color: #A5AEC0; font-size: 12px; font-weight: 650; background: rgba(255,255,255,0.03); transition: all 0.2s ease; }
.opcoes-meta input:checked + span { border-color: rgba(84,213,255,0.38); color: #FFFFFF; background: linear-gradient(135deg, rgba(20,133,255,0.20), rgba(139,92,246,0.18)); box-shadow: 0 8px 20px rgba(20,133,255,0.08); }
.campo-extra { display: none; margin-top: 16px; }
.campo-extra.ativo { display: block; }
.campo-extra > label { display: block; margin-bottom: 8px; color: #CAD0DE; font-size: 12px; font-weight: 600; text-align: left; }
.opcoes-inicio { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.opcoes-inicio span { display: flex; min-height: 54px; align-items: center; justify-content: center; gap: 8px; border: 1px solid rgba(255,255,255,0.09); border-radius: 15px; color: #99A3B7; background: rgba(255,255,255,0.03); transition: all 0.2s ease; }
.opcoes-inicio span [data-lucide] { width: 16px; height: 16px; stroke-width: 1.8; }
.opcoes-inicio strong { font-size: 11px; font-weight: 600; }
.opcoes-inicio input:checked + span { border-color: rgba(84,213,255,0.32); color: #9DDBFF; background: linear-gradient(120deg, rgba(20,133,255,0.12), rgba(139,92,246,0.09)); }
.campos-inicio-anterior { display: none; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 9px; margin-top: 16px; }
.campos-inicio-anterior > .grupo-campo { min-width: 0; }
.campos-inicio-anterior.ativo { display: grid; }
.campo-select select { width: 100%; height: 58px; padding: 0 50px 0 20px; border: 1px solid rgba(255,255,255,0.12); border-radius: 16px; color: var(--texto); background: rgba(255,255,255,0.045); appearance: none; transition: all 0.2s ease; }
.campo-select select:focus { border-color: rgba(84,213,255,0.65); box-shadow: 0 0 0 4px rgba(84,213,255,0.08); outline: none; }
.campo-select select option { color: var(--texto); background: var(--cartao); }
.secao-form > .grupo-campo + .grupo-campo { margin-top: 16px; }
.preferencia-jejum { padding: 0; border: 0; background: none; }

.whatsapp-cadastrado { display: flex; align-items: center; gap: 12px; padding: 14px; border-radius: 15px; background: rgba(255,255,255,0.035); }
.status-whatsapp { display: grid; flex: 0 0 auto; width: 38px; height: 38px; place-items: center; border-radius: 12px; color: #8791A6; background: rgba(255,255,255,0.05); }
.status-whatsapp.ativo { color: #70C8FF; background: rgba(20,133,255,0.10); }
.status-whatsapp [data-lucide] { width: 18px; height: 18px; }
.whatsapp-cadastrado div:nth-child(2) { display: flex; min-width: 0; flex: 1; flex-direction: column; text-align: left; }
.whatsapp-cadastrado span { color: #7F899E; font-size: 11px; }
.whatsapp-cadastrado strong { margin-top: 3px; color: #D7DCE7; font-size: 12px; font-weight: 600; }
.whatsapp-cadastrado a { color: #70C8FF; font-size: 11px; font-weight: 600; text-decoration: none; }

.resumo-novo-jejum { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1px; overflow: hidden; border: 1px solid rgba(255,255,255,0.07); border-radius: 20px; background: rgba(255,255,255,0.06); }
.resumo-novo-jejum > div { padding: 15px 9px; text-align: center; background: var(--cartao); }
.resumo-novo-jejum .resumo-titulo { display: flex; grid-column: 1 / -1; align-items: center; justify-content: center; gap: 8px; padding: 13px; color: #9DDBFF; background: linear-gradient(110deg, rgba(20,133,255,0.10), rgba(139,92,246,0.10)); }
.resumo-titulo [data-lucide] { width: 15px; height: 15px; }
.resumo-titulo strong { font-size: 11px; font-weight: 650; }
.resumo-novo-jejum div:not(.resumo-titulo) span { display: block; color: #7F899E; font-size: 11px; }
.resumo-novo-jejum div:not(.resumo-titulo) strong { display: block; margin-top: 5px; color: #E6E9F0; font-size: 11px; font-weight: 600; line-height: 1.35; }
.form-jejum > .botao-principal { margin-top: 2px; }

.resumo-jejum-flutuante { position: fixed; z-index: 20; bottom: 20px; left: 50%; display: flex; width: calc(100% - 60px); max-width: 420px; align-items: center; gap: 12px; padding: 12px 20px; border: 1px solid rgba(139,156,247,0.20); border-radius: 22px; background: linear-gradient(115deg, rgba(31,39,58,0.96), rgba(38,34,66,0.96)); box-shadow: 0 18px 42px rgba(0,0,0,0.34), 0 0 28px rgba(105,87,224,0.08); transform: translateX(-50%); transition: opacity 0.28s ease, transform 0.34s ease; pointer-events: none; }
.resumo-jejum-flutuante.oculto { opacity: 0; transform: translate(-50%, calc(100% + 30px)); }
.resumo-flutuante-icone { display: grid; flex: 0 0 auto; width: 38px; height: 38px; place-items: center; border: 1px solid rgba(84,213,255,0.16); border-radius: 13px; color: #78D6FF; background: linear-gradient(145deg, rgba(20,133,255,0.15), rgba(139,92,246,0.13)); }
.resumo-flutuante-icone [data-lucide] { width: 18px; height: 18px; stroke-width: 1.8; }
.resumo-jejum-flutuante > div { min-width: 0; }
.resumo-jejum-flutuante > div > span { display: block; margin-bottom: 5px; color: #7F899E; font-size: 9px; font-weight: 600; letter-spacing: 0.7px; text-transform: uppercase; }
.resumo-jejum-flutuante p { display: flex; min-width: 0; align-items: center; gap: 7px; white-space: nowrap; }
.resumo-jejum-flutuante p strong { flex: 0 0 auto; color: #A99AF7; font-size: 13px; font-weight: 700; }
.resumo-jejum-flutuante p span { color: #596379; font-size: 12px; }
.resumo-jejum-flutuante p b { overflow: hidden; color: #E5E8F0; font-size: 12px; font-weight: 600; text-overflow: ellipsis; }
.inicio-vazio .botao-principal { text-decoration: none; }

/* Jejum em andamento */
.pagina-inicio { display: flex; flex-direction: column; background: radial-gradient(ellipse 125% 72% at 100% 100px, rgba(139,92,246,0.17) 0, rgba(139,92,246,0.10) 28%, rgba(80,74,164,0.045) 48%, transparent 70%), var(--superficie); }
.pagina-inicio .inicio-vazio { min-height: calc(100dvh - 160px); }
.aviso-inicio { display: flex; align-items: center; gap: 10px; margin: 18px 30px 0; padding: 13px 15px; border: 1px solid rgba(255,255,255,0.07); border-radius: 15px; font-size: 11px; line-height: 1.45; }
.aviso-inicio [data-lucide] { flex: 0 0 auto; width: 16px; height: 16px; stroke-width: 1.8; }
.aviso-inicio.sucesso { color: #A6DFC7; background: rgba(59,198,135,0.08); }
.aviso-inicio.erro { color: #FFADBD; background: rgba(255,113,141,0.08); }
.jejum-ativo { flex: 1; padding: 30px 30px 38px; }
.saudacao-jejum { text-align: center; }
.saudacao-jejum span { color: var(--texto-secundario); font-size: 13px; }
.saudacao-jejum h1 { margin-top: 5px; font-size: 28px; font-weight: 700; letter-spacing: -1px; }

.cronometro-area { position: relative; display: grid; padding: 28px 0 24px; overflow: visible; place-items: center; }
.cronometro-area::before { position: absolute; width: 100%; height: 430px; border-radius: 50%; background: radial-gradient(circle, rgba(117,92,246,0.18) 0, rgba(117,92,246,0.12) 27%, rgba(69,215,255,0.055) 43%, rgba(25,28,38,0) 69%); pointer-events: none; content: ""; }

.cronometro-circulo { --progresso: 0deg; --progresso-azul: 0deg; --progresso-violeta: 0deg; --progresso-coral: 0deg; position: relative; z-index: 1; display: grid; width: 258px; height: 258px; place-items: center; border-radius: 50%; background: conic-gradient(from -90deg, #45D7FF 0deg, #6B87FF var(--progresso-azul), #8B5CF6 var(--progresso-violeta), #FF6693 var(--progresso-coral), #FF6693 var(--progresso), #303648 var(--progresso), #303648 360deg); box-shadow: 0 0 54px rgba(117,92,246,0.14); animation: entrada-cronometro 0.7s cubic-bezier(0.22,0.61,0.36,1) both; }
.cronometro-circulo::before { position: absolute; inset: 16px; border-radius: 50%; background: radial-gradient(circle at 50% 35%, rgba(139,92,246,0.08), transparent 58%), var(--superficie); box-shadow: inset 0 0 34px rgba(0,0,0,0.18); content: ""; }

.cronometro-conteudo { position: relative; z-index: 1; text-align: center; }
.cronometro-conteudo > span { color: #8E98AD; font-size: 12px; }
.cronometro-conteudo strong { display: block; margin: 8px 0 5px; font-size: 39px; font-weight: 650; line-height: 1; letter-spacing: -2px; }
.cronometro-conteudo small { color: #B0B8C8; font-size: 12px; }

.situacao-meta { display: flex; align-items: center; gap: 13px; padding: 15px 16px; border: 1px solid rgba(255,255,255,0.10); border-radius: 16px; background: linear-gradient(115deg, rgba(20,133,255,0.08), rgba(139,92,246,0.07)); }
.situacao-meta.meta-atingida { border-color: rgba(84,213,255,0.16); background: linear-gradient(115deg, rgba(20,133,255,0.12), rgba(139,92,246,0.11)); }
.situacao-meta-icone { display: grid; flex: 0 0 auto; width: 40px; height: 40px; place-items: center; border-radius: 13px; color: #70C8FF; background: rgba(20,133,255,0.10); }
.situacao-meta-icone [data-lucide] { width: 19px; height: 19px; stroke-width: 1.8; }
.situacao-meta > div:last-child { display: flex; min-width: 0; flex-direction: column; text-align: left; }
.situacao-meta span { color: #7F899E; font-size: 9px; font-weight: 650; letter-spacing: 0.8px; text-transform: uppercase; }
.situacao-meta strong { margin-top: 4px; color: #E6E9F0; font-size: 12px; font-weight: 600; line-height: 1.4; }

.dados-jejum { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 14px; }
.dados-jejum > div { position: relative; padding: 15px 14px 15px 42px; border-radius: 16px; text-align: left; background: rgba(255,255,255,0.035); }
.dados-jejum > .dado-largo { grid-column: 1 / -1; }
.dados-jejum [data-lucide] { position: absolute; top: 17px; left: 15px; width: 16px; height: 16px; color: #758197; stroke-width: 1.8; }
.dados-jejum span { display: block; color: #737E94; font-size: 11px; }
.dados-jejum strong { display: block; margin-top: 5px; color: #CDD3E0; font-size: 12px; font-weight: 600; line-height: 1.35; }

.momento-organismo { margin-top: 14px; padding: 18px; border: 1px solid rgba(255,255,255,0.10); border-radius: 19px; background: var(--cartao); }
.momento-organismo-topo { display: flex; align-items: center; gap: 12px; }
.icone-momento { display: grid; flex: 0 0 auto; width: 40px; height: 40px; place-items: center; border-radius: 13px; color: #C59DFF; background: rgba(139,92,246,0.10); }
.icone-momento [data-lucide] { width: 19px; height: 19px; stroke-width: 1.8; }
.momento-organismo-topo > div:last-child { display: flex; flex-direction: column; text-align: left; }
.momento-organismo-topo span { color: #858FA4; font-size: 9px; font-weight: 650; letter-spacing: 0.8px; text-transform: uppercase; }
.momento-organismo-topo span b { color: #A794E8; font-weight: 650; }
.momento-organismo-topo strong { margin-top: 4px; color: #EDF0F6; font-size: 13px; font-weight: 600; }
.momento-organismo > p { margin-top: 13px; color: #939DB0; font-size: 12px; line-height: 1.6; text-align: left; }

.botao-encerrar { display: flex; width: 100%; align-items: center; justify-content: center; gap: 9px; min-height: 54px; margin-top: 18px; border-radius: 16px; color: #FFF8F8; font-size: 14px; font-weight: 700; background: linear-gradient(105deg, #F05D87, #F27A68); box-shadow: 0 13px 30px rgba(240,93,135,0.16); transition: background 0.2s ease, box-shadow 0.2s ease; }
.botao-encerrar:hover { background: linear-gradient(105deg, #F36A92, #F58A70); box-shadow: 0 13px 34px rgba(240,93,135,0.22); }
.botao-encerrar [data-lucide] { width: 18px; height: 18px; stroke-width: 1.9; }

.lembrete-meta { margin: 13px 8px 0; color: #687287; font-size: 12px; line-height: 1.55; text-align: center; }

.jornada-jejum { margin-top: 34px; }
.jornada-jejum[hidden] { display: none; }
.jornada-jejum-topo { margin-bottom: 16px; text-align: left; }
.jornada-jejum-topo > span { color: #A794E8; font-size: 10px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.jornada-jejum-topo h2 { margin-top: 5px; color: #F0F2F7; font-size: 18px; font-weight: 650; letter-spacing: -0.5px; }
.jornada-jejum-topo p { margin-top: 7px; color: #778197; font-size: 12px; line-height: 1.55; }

.lista-fases { display: flex; gap: 10px; flex-direction: column; }
.fase-anterior { padding: 15px; border: 1px solid rgba(255,255,255,0.10); border-radius: 16px; text-align: left; background: rgba(255,255,255,0.025); }
.fase-anterior > span { color: #7E88A0; font-size: 11px; font-weight: 650; letter-spacing: 0.6px; text-transform: uppercase; }
.fase-anterior h3 { margin-top: 5px; color: #F0F2F7; font-size: 12px; font-weight: 600; }
.fase-anterior p { margin-top: 7px; color: #7E88A0; font-size: 12px; line-height: 1.55; }

/* Encerramento do jejum */
body.encerramento-aberto { overflow: hidden; }
.encerramento-camada { position: fixed; z-index: 40; inset: 0; width: 100%; max-width: 480px; margin: 0 auto; visibility: hidden; pointer-events: none; transition: visibility 0s linear 0.34s; }
.encerramento-camada.ativo { visibility: visible; pointer-events: auto; transition-delay: 0s; }
.encerramento-fundo { position: absolute; inset: 0; width: 100%; background: rgba(8,10,16,0.68); opacity: 0; transition: opacity 0.25s ease; }
.encerramento-camada.ativo .encerramento-fundo { opacity: 1; }
.painel-encerramento { position: absolute; right: 0; bottom: 0; left: 0; max-height: 90dvh; padding: 10px 30px 26px; overflow-y: auto; border: 1px solid var(--linha); border-bottom: 0; border-radius: 30px 30px 0 0; color: var(--texto); background: #222633; box-shadow: 0 -24px 60px rgba(0,0,0,0.38); transform: translateY(105%); transition: transform 0.32s cubic-bezier(0.22,0.61,0.36,1); }
.encerramento-camada.ativo .painel-encerramento { transform: translateY(0); }
.painel-encerramento.arrastando { transition: none; }
.painel-puxador { width: 38px; height: 4px; margin: 0 auto; border-radius: 999px; background: rgba(255,255,255,0.17); touch-action: none; cursor: grab; }

.painel-encerramento-topo { display: flex; align-items: flex-start; justify-content: space-between; padding-top: 22px; gap: 15px; touch-action: none; user-select: none; cursor: grab; }
.painel-encerramento-topo > div > span { color: #F08AA2; font-size: 9px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.painel-encerramento-topo h2 { margin-top: 5px; font-size: 23px; font-weight: 700; letter-spacing: -0.8px; }
.painel-encerramento-topo > button { display: grid; flex: 0 0 auto; width: 36px; height: 36px; place-items: center; border: 1px solid var(--linha); border-radius: 50%; color: #AAB2C3; background: rgba(255,255,255,0.035); font-size: 0; }
.painel-encerramento-topo > button [data-lucide] { width: 18px; height: 18px; }

.resumo-encerramento { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 22px; }
.resumo-encerramento > div { padding: 14px; border-radius: 15px; background: rgba(255,255,255,0.04); }
.resumo-encerramento > div span { display: block; color: #7F899D; font-size: 9px; }
.resumo-encerramento > div strong { display: block; margin-top: 5px; color: #E7EAF1; font-size: 13px; font-weight: 650; }
.resumo-encerramento > p { display: flex; grid-column: 1 / -1; align-items: center; gap: 8px; padding: 11px 13px; border-radius: 13px; color: #B7BFCE; font-size: 10px; background: rgba(255,255,255,0.025); }
.resumo-encerramento > p[hidden] { display: none; }
.resumo-encerramento > p.atingida { color: #A6DFC7; background: rgba(59,198,135,0.07); }
.resumo-encerramento > p [data-lucide] { width: 15px; height: 15px; stroke-width: 1.8; }
.form-encerramento { margin-top: 18px; }
.momento-encerramento { margin-bottom: 18px; padding-top: 18px; border-top: 1px solid var(--linha); }
.momento-encerramento > label { display: block; margin-bottom: 9px; color: #CDD2DE; font-size: 11px; font-weight: 600; }
.opcoes-encerramento span { min-height: 50px; }
.campos-encerramento { margin-top: 14px; }
.campos-encerramento .grupo-campo > label { font-size: 10px; }
.campos-encerramento .campo input { height: 52px; padding-right: 48px; }
.campos-encerramento .campo-data-operacional { height: 52px; }
.campos-encerramento .campo-data-operacional input { padding: 0; }
.peso-encerramento { margin-bottom: 18px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,0.07); }
.peso-encerramento > div:first-child { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; color: #8D97AA; font-size: 10px; }
.peso-encerramento > div:first-child strong { color: #D9DDE6; font-size: 11px; font-weight: 600; }
.peso-encerramento > label { display: block; margin-bottom: 8px; color: #CDD2DE; font-size: 11px; font-weight: 600; }
.peso-encerramento > label small { margin-left: 4px; color: #747E92; font-size: 9px; font-weight: 500; }
.peso-encerramento .campo input { height: 54px; padding-right: 48px; }

.botao-confirmar-encerramento { display: flex; width: 100%; min-height: 54px; align-items: center; justify-content: center; gap: 9px; border-radius: 16px; color: #FFF; font-size: 14px; font-weight: 700; background: linear-gradient(105deg, #F05D87, #F27A68); transition: background 0.2s ease; }
.botao-confirmar-encerramento:hover { background: linear-gradient(105deg, #F36A92, #F58A70); }
.botao-confirmar-encerramento [data-lucide] { width: 18px; height: 18px; stroke-width: 1.9; }
.botao-continuar-jejum { width: 100%; min-height: 44px; margin-top: 7px; color: #9CA5B8; font-size: 11px; font-weight: 600; background: transparent; }
@keyframes entrada-cronometro { from { opacity: 0; transform: scale(0.94) rotate(-3deg); } to { opacity: 1; transform: scale(1) rotate(0); } }

/* Menu inferior */
.menu-app { position: fixed; z-index: 20; right: 30px; bottom: 20px; left: 30px; display: grid; width: auto; max-width: 420px; grid-template-columns: repeat(3, 1fr); gap: 4px; margin: 0 auto; padding: 6px; border: 1px solid rgba(255,255,255,0.15); border-radius: 34px; background: rgba(40,44,59,0.5); box-shadow: 0 8px 16px rgba(0,0,0,0.3), inset 0 1px rgba(255,255,255,0.07); backdrop-filter: blur(5px) saturate(0.5); }
.menu-app a, .menu-app > span { position: relative; display: flex; min-height: 54px; align-items: center; justify-content: center; gap: 5px; border: 1px solid transparent; border-radius: 26px; color: #7D879B; font-size: 9px; font-weight: 600; text-decoration: none; flex-direction: column; }
.menu-app [data-lucide] { width: 18px; height: 18px; stroke-width: 1.8; }
.menu-app a.ativo { border-color: rgba(84,213,255,0.13); color: #A7DEFF; background: linear-gradient(125deg, rgba(20,133,255,0.16), rgba(139,92,246,0.13)); box-shadow: inset 0 1px rgba(255,255,255,0.05); }
.menu-item-indisponivel { opacity: 0.55; cursor: default; }

/* Histórico */
.pagina-degrade { background: radial-gradient(ellipse 120% 55% at 100% 90px, rgba(139,92,246,0.15) 0, rgba(76,72,156,0.07) 37%, transparent 70%), var(--superficie); }
.pagina-degrade { background: radial-gradient(ellipse 125% 72% at 100% 100px, rgba(139,92,246,0.17) 0, rgba(139,92,246,0.10) 28%, rgba(80,74,164,0.045) 48%, transparent 70%), var(--superficie); }
.pagina-historico { padding-bottom: 80px; }
.historico-conteudo { padding: 30px; }
.historico-apresentacao { text-align: left; }
.historico-apresentacao > span { color: #9D8CF1; font-size: 10px; font-weight: 700; letter-spacing: 1.1px; text-transform: uppercase; }
.historico-apresentacao h1 { margin-top: 7px; font-size: 28px; font-weight: 700; letter-spacing: -1.2px; }
.historico-apresentacao p { margin-top: 9px; color: #8E98AC; font-size: 12px; line-height: 1.5; }

.filtros-historico { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; margin-top: 22px; padding: 5px; border: 1px solid var(--linha); border-radius: 16px; background: rgba(19,22,31,0.42); }
.filtros-historico a { display: flex; min-width: 0; height: 38px; align-items: center; justify-content: center; border: 1px solid transparent; border-radius: 12px; color: #7F899D; font-size: 11px; font-weight: 600; text-align: center; text-decoration: none; transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease; }
.filtros-historico a.ativo { border-color: rgba(125,139,255,0.24); color: #DDE3FF; background: linear-gradient(120deg, rgba(30,144,255,0.16), rgba(139,92,246,0.18)); }

.resumo-historico { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 18px; }
.resumo-historico > div { position: relative; min-width: 0; padding: 15px 10px 14px; overflow: hidden; border: 1px solid var(--linha); border-radius: 16px; background: linear-gradient(145deg, rgba(255,255,255,0.045), rgba(255,255,255,0.02)); }
.resumo-historico [data-lucide] { width: 15px; height: 15px; margin-bottom: 13px; color: #8B9CF7; stroke-width: 1.8; }
.resumo-historico strong { display: block; overflow: hidden; color: #F0F2F7; font-size: 16px; font-weight: 700; letter-spacing: -0.5px; text-overflow: ellipsis; white-space: nowrap; }
.resumo-historico span { display: block; margin-top: 4px; overflow: hidden; color: #727D92; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }

.grupos-historico { margin-top: 32px; }
.grupo-historico + .grupo-historico { margin-top: 30px; }
.grupo-historico > h2 { margin: 0 0 12px 2px; color: #8E98AC; font-size: 10px; font-weight: 700; letter-spacing: 0.8px; text-transform: uppercase; }
.lista-historico { display: flex; gap: 12px; flex-direction: column; }
.card-historico { display: block; padding: 18px; border: 1px solid var(--linha); border-radius: 22px; color: inherit; text-decoration: none; background: rgba(36,41,56,0.78); box-shadow: 0 14px 30px rgba(0,0,0,0.08); transition: border-color 0.2s ease, background 0.2s ease; }
.card-historico:hover { border-color: rgba(139,156,247,0.22); background: rgba(39,44,60,0.88); }
.card-historico-topo { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.card-historico-topo > div > span { display: block; color: #788399; font-size: 11px; font-weight: 600; text-transform: uppercase; }

.duracao-card-historico > strong { display: block; margin-top: 5px; color: #F2F3F8; font-size: 24px; font-weight: 700; letter-spacing: -1px; }
.meta-topo-historico { flex: 0 0 auto; text-align: right; }
.meta-valor-historico { display: flex; align-items: center; justify-content: flex-end; gap: 9px; margin-top: 5px; }
.meta-valor-historico > strong { color: #9D8CF1; font-size: 24px; font-weight: 700; letter-spacing: -0.7px; }
.acao-card-historico { display: grid !important; width: 27px; height: 27px; place-items: center; border: 1px solid rgba(157,140,241,0.20); border-radius: 50%; color: #9D8CF1 !important; background: rgba(139,92,246,0.07); }
.acao-card-historico [data-lucide] { width: 14px; height: 14px; stroke-width: 1.9; }
.linha-tempo-historico { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 9px; margin-top: 17px; padding-top: 15px; border-top: 1px solid var(--linha); }
.linha-tempo-historico > div { min-width: 0; }
.linha-tempo-historico > div:nth-child(3) { text-align: right; }
.linha-tempo-historico > [data-lucide] { width: 16px; height: 16px; color: #59647A; stroke-width: 1.7; }
.linha-tempo-historico span { display: block; color: #6F7A90; font-size: 12px; }
.linha-tempo-historico strong { display: block; margin-top: 4px; color: #BFC6D4; font-size: 12px; font-weight: 600; white-space: nowrap; }

.detalhes-card-historico { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 13px; }
.detalhes-card-historico span { display: inline-flex; align-items: center; gap: 6px; padding: 7px 9px; border-radius: 10px; color: #8D98AB; font-size: 11px; background: rgba(255,255,255,0.03); }
.detalhes-card-historico [data-lucide] { width: 16px; height: 16px; color: #8797C8; stroke-width: 1.8; }

.historico-vazio { display: flex; min-height: calc(100dvh - 160px); align-items: center; justify-content: center; flex-direction: column; padding: 40px 30px; text-align: center; }
.historico-vazio h1 { font-size: 30px; font-weight: 700; line-height: 1.12; letter-spacing: -1.2px; }
.historico-vazio > p:not(.legenda-pagina) { margin-top: 13px; color: var(--texto-secundario); font-size: 14px; line-height: 1.6; }
.historico-vazio .botao-principal { margin-top: 30px; text-decoration: none; }
.historico-periodo-vazio { display: flex; align-items: center; flex-direction: column; margin-top: 30px; padding: 34px 24px; border: 1px solid var(--linha); border-radius: 21px; text-align: center; background: rgba(36,41,56,0.48); }
.historico-periodo-vazio [data-lucide] { width: 25px; height: 25px; margin-bottom: 15px; color: #8F80E5; stroke-width: 1.6; }
.historico-periodo-vazio strong { color: #DDE1EA; font-size: 13px; font-weight: 650; }
.historico-periodo-vazio p { max-width: 260px; margin-top: 8px; color: #7F899D; font-size: 11px; line-height: 1.55; }
.aviso-historico { margin-bottom: -6px; }

/* Detalhes do jejum */
.pagina-detalhes { padding-bottom: 0; background: radial-gradient(ellipse 125% 58% at 100% 90px, rgba(139,92,246,0.17) 0, rgba(139,92,246,0.09) 31%, transparent 70%), var(--superficie); }
.jejum-concluido { padding: 30px 30px 44px; }
.saudacao-concluida h1 { font-size: 27px; }
.pagina-detalhes .cronometro-area { padding-top: 30px; }
.pagina-detalhes .situacao-meta strong { font-size: 12px; }
.situacao-meta.resultado-incompleto { border-color: rgba(255,255,255,0.09); background: rgba(255,255,255,0.035); }
.situacao-meta.resultado-incompleto .situacao-meta-icone { color: #AAB3C6; background: rgba(255,255,255,0.05); }
.dados-jejum-concluido .dado-proposito { background: linear-gradient(115deg, rgba(20,133,255,0.07), rgba(139,92,246,0.07)); }
.dados-jejum-concluido .dado-peso { background: linear-gradient(115deg, rgba(139,92,246,0.11), rgba(255,113,141,0.045)); }
.dados-jejum-concluido .dado-peso [data-lucide] { color: #9D8CF1; }
.momento-concluido .momento-organismo-topo span { color: #9184C8; }
.zona-exclusao-jejum { margin-top: 38px; padding-top: 25px; border-top: 1px solid rgba(255,255,255,0.07); text-align: center; }
.botao-excluir-jejum { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 0 16px; border: 1px solid rgba(255,113,141,0.18); border-radius: 14px; color: #FF829D; font-size: 12px; font-weight: 650; background: rgba(255,113,141,0.055); transition: color 0.2s ease, background 0.2s ease; }
.botao-excluir-jejum:hover { color: #FF9AAF; background: rgba(255,113,141,0.09); }
.botao-excluir-jejum [data-lucide] { width: 16px; height: 16px; stroke-width: 1.8; }
body.exclusao-aberta { overflow: hidden; }
.exclusao-camada { position: fixed; z-index: 50; inset: 0; width: 100%; max-width: 480px; margin: 0 auto; visibility: hidden; pointer-events: none; transition: visibility 0s linear 0.34s; }
.exclusao-camada.ativo { visibility: visible; pointer-events: auto; transition-delay: 0s; }
.exclusao-fundo { position: absolute; inset: 0; width: 100%; background: rgba(8,10,16,0.72); opacity: 0; transition: opacity 0.25s ease; }
.exclusao-camada.ativo .exclusao-fundo { opacity: 1; }
.painel-exclusao { position: absolute; right: 0; bottom: 0; left: 0; padding: 10px 30px 28px; border: 1px solid var(--linha); border-bottom: 0; border-radius: 30px 30px 0 0; color: var(--texto); background: #222633; box-shadow: 0 -24px 60px rgba(0,0,0,0.38); transform: translateY(105%); transition: transform 0.32s cubic-bezier(0.22,0.61,0.36,1); }
.exclusao-camada.ativo .painel-exclusao { transform: translateY(0); }
.painel-exclusao-conteudo { padding-top: 22px; text-align: center; }
.painel-exclusao-icone { display: grid; width: 48px; height: 48px; margin: 0 auto 15px; place-items: center; border-radius: 16px; color: #FF829D; background: rgba(255,113,141,0.09); }
.painel-exclusao-icone [data-lucide] { width: 21px; height: 21px; stroke-width: 1.8; }
.painel-exclusao h2 { font-size: 22px; font-weight: 700; letter-spacing: -0.7px; }
.painel-exclusao p { margin: 10px auto 20px; max-width: 330px; color: #8F99AC; font-size: 12px; line-height: 1.6; }
.confirmar-exclusao { width: 100%; min-height: 52px; border-radius: 16px; color: #FFF; font-size: 13px; font-weight: 700; background: linear-gradient(105deg, #E84F78, #E86E61); }
.cancelar-exclusao { width: 100%; min-height: 44px; margin-top: 7px; color: #9CA5B8; font-size: 11px; font-weight: 600; background: transparent; }

/* Administração do WhatsApp */
.pagina-whatsapp-admin { min-height: 100dvh; padding-bottom: 0; }
.titulo-form-whatsapp > span { color: #9D8CF1; font-size: 10px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.whatsapp-admin-conteudo { padding: 30px; }
.whatsapp-admin-conteudo > .aviso-login { margin-top: 20px; margin-bottom: 0; }
.status-whatsapp-admin { display: flex; align-items: center; gap: 14px; margin-top: 24px; padding: 18px; border: 1px solid var(--linha); border-radius: 20px; background: rgba(36,41,56,0.72); }
.status-whatsapp-admin.conectado { border-color: rgba(73,207,151,0.18); background: linear-gradient(120deg, rgba(25,122,105,0.10), rgba(36,41,56,0.72)); }
.status-whatsapp-icone { display: grid; flex: 0 0 auto; width: 46px; height: 46px; place-items: center; border-radius: 15px; color: #FF829D; background: rgba(255,113,141,0.08); }
.status-whatsapp-admin.conectado .status-whatsapp-icone { color: #70DAB0; background: rgba(73,207,151,0.09); }
.status-whatsapp-icone [data-lucide] { width: 21px; height: 21px; stroke-width: 1.8; }
.status-whatsapp-admin > div:last-child { display: flex; min-width: 0; flex-direction: column; }
.status-whatsapp-admin span { color: #7F899D; font-size: 9px; font-weight: 650; letter-spacing: 0.8px; text-transform: uppercase; }
.status-whatsapp-admin strong { margin-top: 4px; color: #EDF0F6; font-size: 16px; font-weight: 700; }
.status-whatsapp-admin small { margin-top: 4px; color: #778197; font-size: 10px; }
.dados-whatsapp-admin { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 14px; }
.dados-whatsapp-admin > div { min-width: 0; padding: 15px; border-radius: 16px; background: rgba(255,255,255,0.035); }
.dados-whatsapp-admin span { display: block; color: #737E94; font-size: 9px; }
.dados-whatsapp-admin strong { display: block; margin-top: 5px; overflow: hidden; color: #CDD3E0; font-size: 12px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.form-teste-whatsapp { margin-top: 28px; padding-top: 25px; border-top: 1px solid var(--linha); }
.titulo-form-whatsapp { margin-bottom: 20px; text-align: left; }
.titulo-form-whatsapp h2 { margin-top: 6px; font-size: 21px; font-weight: 700; letter-spacing: -0.6px; }
.titulo-form-whatsapp p { margin-top: 7px; color: #7F899D; font-size: 11px; line-height: 1.55; }
.form-teste-whatsapp textarea { width: 100%; min-height: 112px; padding: 16px; resize: vertical; border: 1px solid var(--linha); border-radius: 16px; color: var(--texto); font-family: "Montserrat", sans-serif; font-size: 13px; line-height: 1.55; background: var(--cartao); }
.form-teste-whatsapp textarea:focus { outline: none; border-color: rgba(112,200,255,0.42); box-shadow: 0 0 0 3px rgba(20,133,255,0.08); }
.form-teste-whatsapp .botao-principal { margin-top: 18px; }

/* Dados administrativos */
.pagina-estatisticas { padding-bottom: 80px; }
.estatisticas-conteudo { padding: 30px; }
.grade-estatisticas-principais { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 9px; margin-top: 18px; }
.card-estatistica { position: relative; min-width: 0; min-height: 142px; padding: 17px; overflow: hidden; border: 1px solid var(--linha); border-radius: 19px; background: linear-gradient(145deg, rgba(255,255,255,0.045), rgba(255,255,255,0.02)); }
.card-estatistica.destaque { border-color: rgba(112,200,255,0.16); background: linear-gradient(135deg, rgba(20,133,255,0.10), rgba(139,92,246,0.07)); }
.card-estatistica [data-lucide] { width: 18px; height: 18px; margin-bottom: 12px; color: #8B9CF7; stroke-width: 1.8; }
.card-estatistica.destaque [data-lucide] { color: #70C8FF; }
.card-estatistica > span { display: block; overflow: hidden; color: #7E899F; font-size: 10px; font-weight: 650; letter-spacing: 0.4px; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.card-estatistica > strong { display: block; margin-top: 7px; overflow: hidden; color: #F1F3F8; font-size: 23px; font-weight: 700; letter-spacing: -0.8px; text-overflow: ellipsis; white-space: nowrap; }
.card-estatistica > small { display: block; margin-top: 4px; color: #6F7A90; font-size: 10px; }
.bloco-estatisticas { margin-top: 26px; padding: 20px; border: 1px solid var(--linha); border-radius: 22px; background: rgba(36,41,56,0.68); }
.titulo-bloco-estatisticas > span { color: #9D8CF1; font-size: 10px; font-weight: 700; letter-spacing: 0.9px; text-transform: uppercase; }
.titulo-bloco-estatisticas h2 { margin-top: 6px; font-size: 18px; font-weight: 700; letter-spacing: -0.5px; }
.distribuicao-estatisticas { display: flex; gap: 17px; margin-top: 22px; flex-direction: column; }
.distribuicao-estatisticas > div > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.distribuicao-estatisticas span { color: #8C96A9; font-size: 11px; }
.distribuicao-estatisticas strong { color: #DDE1EA; font-size: 11px; font-weight: 650; }
.barra-estatistica { display: block; height: 8px; margin-top: 8px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,0.055); }
.barra-estatistica i { display: block; height: 100%; min-width: 0; border-radius: inherit; }
.rodape-bloco-estatisticas { display: grid; grid-template-columns: auto 1fr auto; gap: 9px; padding-top: 17px; align-items: center; }
.rodape-bloco-estatisticas [data-lucide] { width: 15px; height: 15px; color: #70C8FF; }
.rodape-bloco-estatisticas span { color: #7E899D; font-size: 10px; }
.rodape-bloco-estatisticas strong { color: #DDE2EC; font-size: 12px; font-weight: 700; }
.bloco-comportamento { padding: 2px 0 0; border: 0; background: transparent; }
.bloco-comportamento .titulo-bloco-estatisticas { padding: 0 2px; }
.grade-dados-estatisticas { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; margin-top: 17px; }
.grade-dados-estatisticas > div { min-width: 0; min-height: 72px; padding: 15px; border-radius: 15px; background: rgba(36,41,56,0.72); }
.grade-dados-estatisticas span { display: block; overflow: hidden; color: #7D879B; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.grade-dados-estatisticas strong { display: block; margin-top: 6px; overflow: hidden; color: #DDE1EA; font-size: 13px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.bloco-usuarios-recentes { padding-bottom: 8px; }
.lista-usuarios-recentes { margin-top: 17px; }
.usuario-recente { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; padding: 13px 0; border-top: 1px solid rgba(255,255,255,0.065); }
.usuario-recente > div { display: flex; min-width: 0; flex: 1; flex-direction: column; }
.nome-usuario-recente { display: flex; min-width: 0; align-items: center; gap: 8px; }
.status-jejum-usuario { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: #5D6678; box-shadow: 0 0 0 3px rgba(93,102,120,0.10); }
.status-jejum-usuario.ativo { background: #42C98B; box-shadow: 0 0 0 3px rgba(66,201,139,0.12), 0 0 8px rgba(66,201,139,0.28); }
.usuario-recente strong { overflow: hidden; color: #DDE1EA; font-size: 12px; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.usuario-recente small { margin-top: 4px; overflow: hidden; color: #788399; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.usuario-recente time { flex: 0 0 auto; color: #69758B; font-size: 10px; white-space: nowrap; }
.link-whatsapp-admin { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 22px; color: #8290AA; font-size: 11px; font-weight: 600; text-decoration: none; }
.link-whatsapp-admin:hover { color: #70C8FF; }
.link-whatsapp-admin [data-lucide] { width: 15px; height: 15px; stroke-width: 1.8; }
.link-whatsapp-admin [data-lucide]:last-child { width: 13px; height: 13px; }
