/* =========================================================================
   DISCÍPULO 4.0 — DESIGN SYSTEM (aprovado na página Rede, v3)
   Fonte única de estilos para todas as páginas. Ordem do arquivo:
   1 tokens · 2 base · 3 animações · 4 botões · 5 casca (topo, cabeçalho,
   menu, barra inferior) · 6 blocos de página · 7 primeiros passos ·
   8 atalhos · 9 métricas · 10 hierarquia · 11 CARTÃO DE PERFIL ·
   12 gaveta · 13 guia · 14 mobile · 15 Meu Painel (+ mobile próprio)

   Regras: amarelo #FFC107 (identidade, medido no desenho e igual ao
   themeColor do site anterior) · superfícies amarelas grandes #FFCC29 ·
   SOMENTE cores sólidas (sem degradê) · títulos Sora, texto Inter ·
   logotipo em FONTE (Anton inclinada) para poder traduzir.
   ========================================================================= */
:root{
  --brand:#FFC107; --brand-hover:#E5AC00; --brand-soft:#FFCC29; --brand-tint:#FFF4CC; --brand-deep:#B07F00;
  --on-brand:#161200;
  --ink:#0E0E10; --text:#46464D; --muted:#7B7B82; --line:#E4E4E7; --line-strong:#D1D3D6;
  --bg:#F6F6F4; --surface:#FFFFFF; --panel:#E8E9EB;
  --dark:#0A0A0B; --nav:#363435; --dark-2:#1E1E20; --dark-line:#38383C;
  --ok:#15803D; --ok-bg:#DCFCE7; --danger:#DC2626;
  --r-sm:10px; --r-md:16px; --r-lg:20px; --r-xl:24px; --pill:999px;
  --sh-sm:0 1px 2px rgba(14,14,16,.06),0 1px 3px rgba(14,14,16,.05);
  --sh-md:0 12px 28px rgba(14,14,16,.09),0 3px 8px rgba(14,14,16,.05);
  --sh-lg:0 26px 56px rgba(14,14,16,.16),0 8px 18px rgba(14,14,16,.08);
  --glow:0 10px 24px rgba(var(--glow-rgb),.42);
  --ease:cubic-bezier(.22,1,.36,1);
  --font-head:'Sora',system-ui,sans-serif; --font-body:'Inter',system-ui,sans-serif; --font-mark:'Anton',Impact,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font-body);color:var(--text);background:var(--bg);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--font-head);color:var(--ink);margin:0;letter-spacing:-.02em;line-height:1.2}
button,input,select{font:inherit;color:inherit}
button{cursor:pointer}
a{color:inherit}
:focus-visible{outline:3px solid var(--ink);outline-offset:2px;border-radius:8px}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- Animações de entrada (scroll reveal) ---------- */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:var(--d,0s)}
.reveal.in{opacity:1;transform:none}
.reveal-left{transform:translateX(-28px)}
.reveal-scale{transform:scale(.94)}

/* ---------- Botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:var(--pill);padding:12px 22px;font-weight:700;font-size:14px;line-height:1;transition:transform .2s var(--ease),box-shadow .25s var(--ease),background-color .2s;white-space:nowrap;text-decoration:none}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0) scale(.98)}
.btn-brand{background:var(--brand);color:var(--on-brand);box-shadow:var(--glow)}
.btn-brand:hover{background:var(--brand-hover);box-shadow:0 14px 30px rgba(var(--glow-rgb),.5)}
.btn-dark{background:var(--ink);color:#fff;box-shadow:0 8px 20px rgba(14,14,16,.22)}
.btn-dark:hover{background:#000}
.btn-ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line-strong)}
.btn-ghost:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}
.btn-sm{padding:9px 14px;font-size:13px}
.icon-btn{width:40px;height:40px;border-radius:50%;border:0;display:grid;place-items:center;background:transparent;transition:background .2s,transform .2s var(--ease);position:relative}
.icon-btn:hover{background:rgba(0,0,0,.07);transform:translateY(-1px)}
.icon-btn.ring-bell:hover i{animation:bell .8s var(--ease)}
@keyframes bell{0%,100%{transform:rotate(0)}20%{transform:rotate(16deg)}40%{transform:rotate(-12deg)}60%{transform:rotate(8deg)}80%{transform:rotate(-4deg)}}
.dot-badge{position:absolute;top:4px;right:4px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--danger);color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center;box-shadow:0 0 0 2px var(--brand)}

/* ---------- Faixa "Próximos passos" ---------- */
.nextbar{background:var(--dark);color:#fff;font-size:13px}
.nextbar .wrap{display:flex;align-items:center;gap:12px;height:40px}
.nextbar .ic{width:24px;height:24px;border-radius:50%;background:var(--brand);color:var(--on-brand);display:grid;place-items:center;font-size:11px}
.nextbar b{color:var(--brand);font-weight:700;letter-spacing:.06em;font-size:11px;text-transform:uppercase}
.nextbar .prog{margin-left:auto;display:flex;align-items:center;gap:10px}
.mini-track{width:90px;height:6px;border-radius:6px;background:var(--dark-line);overflow:hidden}
.mini-track i{display:block;height:100%;width:0;background:var(--brand);border-radius:6px;transition:width 1.2s var(--ease) .4s}
.loaded .mini-track i{width:var(--p,0%)}
.nextbar .count{background:var(--brand);color:var(--on-brand);font-weight:800;border-radius:var(--pill);padding:1px 9px;font-size:12px}
.nextbar a{color:#fff;opacity:.85;text-decoration:none}

/* ---------- Header ---------- */
.header{background:var(--brand);position:sticky;top:0;z-index:40;transition:box-shadow .3s}
.header.scrolled{box-shadow:0 6px 20px rgba(14,14,16,.12)}
.header .wrap{display:flex;align-items:center;gap:16px;height:68px;transition:height .3s var(--ease)}
.header.scrolled .wrap{height:58px}
/* Logotipo em FONTE (traduzível): Anton inclinada 12° e estreitada 14%,
   reproduzindo o desenho original do "DISCÍPULO 4.0". O JS compensa a
   largura que o scaleX deixa sobrando (a caixa não encolhe com transform). */
.wordmark{display:inline-block;font-family:var(--font-mark);font-weight:400;font-size:42px;line-height:1;color:#161616;letter-spacing:-.005em;text-decoration:none;white-space:nowrap;transform:skewX(-12deg) scaleX(.86);transform-origin:left center;-webkit-text-stroke:.012em currentColor;padding-top:2px}
.header.scrolled .wordmark{font-size:36px}
.wordmark{transition:font-size .3s var(--ease)}
.langs{display:flex;gap:6px}
.langs button{border:1.5px solid var(--ink);background:#fff;border-radius:8px;width:34px;height:30px;font-size:11px;font-weight:800;color:var(--ink);transition:background .2s,color .2s}
.langs button[aria-pressed=true]{background:var(--ink);color:#fff}
.header .right{margin-left:auto;display:flex;align-items:center;gap:8px}
.userchip{display:flex;align-items:center;gap:10px;background:var(--ink);color:#fff;border-radius:var(--pill);padding:4px 16px 4px 4px;border:0;transition:transform .2s var(--ease)}
.userchip:hover{transform:translateY(-1px)}
.userchip img{width:34px;height:34px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px var(--brand)}
.userchip small{display:block;font-size:11px;opacity:.7;line-height:1.1;text-align:left}
.userchip strong{font-size:13px;font-weight:600;line-height:1.2;display:block;text-align:left}

/* ---------- Navegação ---------- */
.nav{background:var(--nav);position:sticky;top:68px;z-index:39;transition:top .3s var(--ease)}
.header.scrolled + .nav{top:58px}
.nav .wrap{display:flex;gap:6px;height:54px;align-items:center}
.nav a{display:flex;align-items:center;gap:8px;padding:9px 16px;color:rgba(255,255,255,.78);text-decoration:none;font-size:12.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;border-radius:10px;transition:color .2s,background .2s}
.nav a:hover{color:#fff;background:rgba(255,255,255,.08)}
.nav a[aria-current=page]{color:var(--on-brand);background:var(--brand)}
.nav .badge{background:var(--danger);color:#fff;border-radius:var(--pill);font-size:10px;padding:1px 6px;letter-spacing:0}
.tabbar{display:none}

/* ---------- Hero ---------- */
.page{padding:32px 0 96px}
.hero{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;margin-bottom:28px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--pill);padding:5px 12px 5px 8px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);box-shadow:var(--sh-sm)}
.eyebrow i{width:8px;height:8px;border-radius:50%;background:var(--brand)}
.hero h1{font-size:40px;font-weight:800;letter-spacing:-.045em;margin:14px 0 6px}
.hero h1 .w{display:inline-block;opacity:0;transform:translateY(22px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.loaded .hero h1 .w{opacity:1;transform:none}
.hero h1 mark{background:var(--brand);color:var(--ink);padding:0 8px;border-radius:8px}
.hero p{margin:0;font-size:16px;max-width:560px}
.nextclass{text-decoration:none;display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px 14px 14px 16px;box-shadow:var(--sh-md);min-width:360px;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.nextclass:hover{transform:translateY(-3px);box-shadow:var(--sh-lg)}
.nextclass .cal{width:52px;border-radius:12px;overflow:hidden;text-align:center;box-shadow:inset 0 0 0 1px var(--line)}
.nextclass .cal b{display:block;background:var(--danger);color:#fff;font-size:10px;letter-spacing:.08em;padding:2px 0}
.nextclass .cal span{display:block;font-family:var(--font-head);font-weight:800;font-size:20px;color:var(--ink);padding:2px 0}
.nextclass small{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--danger)}
.nextclass small::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--danger);animation:pulse 1.6s infinite}
.nextclass strong{display:block;color:var(--ink);font-size:14px}
.nextclass .meta{font-size:13px;color:var(--muted)}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(220,38,38,.5)}70%{box-shadow:0 0 0 8px rgba(220,38,38,0)}100%{box-shadow:0 0 0 0 rgba(220,38,38,0)}}

/* ---------- Bases ---------- */
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--sh-sm)}
.section{margin-top:28px}
.sec-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.sec-head .ico{width:40px;height:40px;border-radius:12px;background:var(--brand-tint);color:var(--brand-deep);display:grid;place-items:center;font-size:16px}
.sec-head h2{font-size:20px;font-weight:700}
.sec-head p{margin:0;font-size:13px;color:var(--muted)}

/* ---------- Primeiros passos ---------- */
.onb{padding:24px}
.onb-top{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:20px}
.onb-top h2{font-size:18px}
.onb-top .pct{font-size:13px;color:var(--muted)}
.stepper{display:flex;align-items:center;margin-left:auto}
.stepper button{width:40px;height:40px;border-radius:50%;border:2px solid var(--line-strong);background:var(--surface);font-family:var(--font-head);font-weight:700;color:var(--muted);transition:all .25s var(--ease)}
.stepper button:hover{border-color:var(--ink);color:var(--ink);transform:translateY(-2px)}
.stepper button.current{background:var(--brand);border-color:var(--brand);color:var(--on-brand);animation:beat 2.4s var(--ease) infinite}
/* Pulso do passo atual — intensificado (halo maior + leve crescimento) */
@keyframes beat{0%,100%{box-shadow:0 0 0 0 rgba(var(--glow-rgb),.85);transform:scale(1)}50%{box-shadow:0 0 0 14px rgba(var(--glow-rgb),0);transform:scale(1.1)}}
.stepper .ln{width:28px;height:2px;background:var(--line-strong)}
.steps{display:grid;gap:12px}
.step{display:grid;grid-template-columns:48px 1fr auto;gap:16px;align-items:center;border-radius:var(--r-lg);padding:18px 20px;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.step:hover{transform:translateY(-2px);box-shadow:var(--sh-md)}
.step .num{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:18px}
.step h3{font-size:15px;font-weight:700;margin-bottom:2px}
.step p{margin:0;font-size:13.5px}
.step-1{background:var(--surface);border:1px solid var(--line)}
.step-1 .num{background:var(--brand);color:var(--on-brand)}
.step-2{background:var(--brand-soft);color:var(--on-brand)}
.step-2 h3{color:var(--on-brand)}
.step-2 .num{background:#fff;color:var(--ink)}
.step-2 .form{grid-column:2 / -1;display:grid;grid-template-columns:auto 1fr auto;gap:10px;margin-top:6px}
.step-3{background:var(--dark);color:rgba(255,255,255,.8)}
.step-3 h3{color:var(--brand)}
.step-3 .num{background:var(--dark-2);color:var(--brand)}
.step-3 .form{grid-column:2 / -1;display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}
.tag-step{font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.7;display:block}
.select,.input{height:46px;border-radius:14px;border:1.5px solid rgba(0,0,0,.1);background:#fff;padding:0 14px;font-size:14px;color:var(--ink);transition:border-color .2s,box-shadow .2s}
.select{appearance:none;padding-right:38px;font-weight:700;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230E0E10' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 14px center}
.input:focus,.select:focus{outline:0;border-color:var(--ink);box-shadow:0 0 0 4px rgba(14,14,16,.12)}
.input-wrap{position:relative}
.input-wrap .input{width:100%;padding-right:40px}
.input-wrap .ok{position:absolute;right:14px;top:50%;transform:translateY(-50%) scale(.4);color:var(--ok);opacity:0;transition:opacity .2s,transform .3s var(--ease)}
.input-wrap.valid .ok{opacity:1;transform:translateY(-50%) scale(1)}
.check{grid-column:2 / -1;display:flex;gap:10px;align-items:center;font-size:13px;margin-top:4px;cursor:pointer}
.check input{width:18px;height:18px;accent-color:var(--ink)}
.radio-card{flex:1;min-width:220px;display:flex;gap:12px;align-items:flex-start;border-radius:16px;padding:14px 16px;background:var(--dark-2);border:1.5px solid var(--dark-line);cursor:pointer;transition:border-color .2s,background .2s,transform .2s var(--ease)}
.radio-card:hover{border-color:#5a5a60;transform:translateY(-2px)}
.radio-card input{accent-color:var(--brand);width:18px;height:18px;margin-top:2px}
.radio-card strong{display:block;color:#fff;font-size:14px}
.radio-card small{font-size:12.5px;color:rgba(255,255,255,.6)}
.radio-card:has(input:checked){border-color:var(--brand);background:#26241c}

/* ---------- Informações rápidas ---------- */
.quick{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.qcard{padding:22px;border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh-sm);display:flex;flex-direction:column;gap:10px;text-decoration:none;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .2s,background .3s}
.qcard:hover{transform:translateY(-5px);box-shadow:var(--sh-md);border-color:var(--brand);background:var(--brand-tint)}
.qcard .qi{width:48px;height:48px;border-radius:14px;background:var(--brand);color:var(--on-brand);display:grid;place-items:center;font-size:19px;box-shadow:var(--glow);transition:transform .4s var(--ease)}
.qcard:hover .qi{transform:rotate(-8deg) scale(1.08)}
.qcard h3{font-size:16px}
.qcard p{margin:0;font-size:13.5px}
.qcard .go{margin-top:auto;font-size:13px;font-weight:800;color:var(--ink);display:flex;align-items:center;gap:6px}
.qcard .go i{transition:transform .25s var(--ease)}
.qcard:hover .go i{transform:translateX(5px)}

/* ---------- Painel de gestão ---------- */
.mgmt{padding:24px}
.toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:16px}
.toolbar .label{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.chip-clear{display:inline-flex;align-items:center;gap:8px;border:0;background:var(--brand);color:var(--on-brand);border-radius:var(--pill);padding:6px 8px 6px 14px;font-size:13px;font-weight:700;animation:pop .35s var(--ease)}
@keyframes pop{from{transform:scale(.6);opacity:0}to{transform:none;opacity:1}}
.chip-clear i{width:20px;height:20px;border-radius:50%;background:rgba(0,0,0,.12);display:grid;place-items:center;font-size:10px}
.chip-clear[hidden]{display:none}
.search{margin-left:auto;position:relative}
.search input{height:42px;width:280px;border-radius:var(--pill);border:1.5px solid var(--line);background:var(--bg);padding:0 16px 0 40px;font-size:14px;transition:border-color .2s,box-shadow .2s,background .2s,width .35s var(--ease)}
.search input:focus{outline:0;border-color:var(--ink);background:#fff;box-shadow:0 0 0 4px rgba(14,14,16,.08);width:320px}
.search i{position:absolute;left:15px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:13px}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.kpi{text-align:left;border:1.5px solid var(--line);background:var(--surface);border-radius:var(--r-lg);padding:16px 18px;transition:all .25s var(--ease);display:flex;flex-direction:column;gap:6px}
.kpi:hover{border-color:var(--ink);transform:translateY(-3px);box-shadow:var(--sh-md)}
.kpi .kl{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.kpi .kl i{color:var(--brand-deep)}
.kpi .kv{font-family:var(--font-head);font-size:30px;font-weight:800;color:var(--ink);letter-spacing:-.03em;line-height:1}
.kpi .ks{font-size:12px;color:var(--muted)}
.kpi[aria-pressed=true]{background:var(--ink);border-color:var(--ink);box-shadow:var(--sh-md)}
.kpi[aria-pressed=true] .kl,.kpi[aria-pressed=true] .ks{color:rgba(255,255,255,.7)}
.kpi[aria-pressed=true] .kl i,.kpi[aria-pressed=true] .kv{color:var(--brand)}

/* ---------- Hierarquia (fiel ao desenho) ---------- */
.tree{padding:26px 26px 6px}
.tree-head{display:flex;align-items:center;gap:10px}
.tree-head h2{font-size:20px;font-weight:800;text-transform:uppercase;letter-spacing:-.01em}
.tree-head i{font-size:18px;color:var(--ink)}
.tree-sub{margin:4px 0 24px;font-size:13.5px;color:var(--muted)}
.level{position:relative;padding-left:44px;padding-bottom:30px}
.level .line{position:absolute;left:12px;top:26px;bottom:-4px;width:3px;background:var(--brand);border-radius:3px;transform-origin:top;transform:scaleY(0);transition:transform 1s var(--ease) .2s}
.level.in .line{transform:scaleY(1)}
.level:last-child .line{display:none}
.level .node{position:absolute;left:0;top:0;width:27px;height:27px;border-radius:50%;background:var(--surface);border:3px solid var(--brand);transition:transform .5s var(--ease)}
.level.me .node{background:var(--brand)}
.level.in .node{animation:nodepop .6s var(--ease)}
@keyframes nodepop{0%{transform:scale(.3)}60%{transform:scale(1.15)}100%{transform:scale(1)}}
.level-head{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap;min-height:28px}
.level-head h3{font-family:var(--font-head);font-size:17px;font-weight:800;letter-spacing:.01em;text-transform:uppercase}
.level-head h3 span{font-family:var(--font-body);font-weight:400;color:var(--ink);letter-spacing:.02em}
.count{min-width:28px;height:28px;padding:0 8px;border-radius:8px;background:var(--brand);color:var(--on-brand);font-weight:800;font-size:13px;display:inline-grid;place-items:center}
.level-head .spacer{flex:1}
.collapse{border:0;background:transparent;color:var(--muted);font-size:13px;font-weight:700;display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:8px}
.collapse:hover{background:var(--bg);color:var(--ink)}
.collapse i{transition:transform .25s var(--ease)}
.level.closed .collapse i{transform:rotate(-90deg)}
.level.closed .grid{display:none}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(262px,300px));gap:20px}
.empty{grid-column:1/-1;text-align:center;padding:28px;border:1.5px dashed var(--line-strong);border-radius:var(--r-lg);color:var(--muted);font-size:14px}

/* ---------- Cartão de discípulo — fiel ao desenho ---------- */
.dcard{position:relative;background:var(--surface);border:1.5px solid var(--line-strong);border-radius:18px;overflow:hidden;text-align:center;display:flex;flex-direction:column;cursor:pointer;
  opacity:0;transform:translateY(34px) scale(.97);transition:opacity .7s var(--ease),transform .7s var(--ease),box-shadow .3s var(--ease),border-color .2s;transition-delay:var(--d,0s),var(--d,0s),0s,0s}
.dcard.in{opacity:1;transform:none}
.dcard.in:hover{transform:translateY(-6px);box-shadow:var(--sh-lg);border-color:var(--brand);transition-delay:0s}
.dcard .top{padding:18px 16px 14px;display:flex;flex-direction:column;align-items:center}
/* Foto: anel amarelo de 5px + vão branco de 4px + foto (como no desenho).
   A bandeira fica centrada SOBRE a linha do anel, na altura do meio da foto,
   metade para fora — o círculo branco dela interrompe o anel. */
.photo{position:relative;width:128px;height:128px}
.photo .pic{width:128px;height:128px;border-radius:50%;border:5px solid var(--brand);padding:4px;background:#fff;display:block;transition:transform .5s var(--ease)}
.pic img,.pic .ini{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}
.pic .ini{background:var(--panel);display:grid;place-items:center;font-family:var(--font-head);font-weight:800;font-size:34px;color:var(--ink)}
.dcard:hover .photo .pic{transform:scale(1.04)}
.photo .flag{position:absolute;left:107px;top:46px;width:36px;height:36px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 2px 6px rgba(14,14,16,.12);z-index:1;transition:transform .4s var(--ease)}
.dcard:hover .photo .flag{transform:translateX(3px) rotate(-6deg)}
.photo .flag svg{width:22px;height:15px;border-radius:2px;display:block}
.role{position:relative;margin-top:-16px;background:var(--brand);color:var(--on-brand);font-size:13px;font-weight:500;border-radius:var(--pill);padding:3px 16px;box-shadow:0 0 0 3px #fff}
.dcard h4{font-family:var(--font-head);font-size:19px;font-weight:800;line-height:1.18;text-transform:uppercase;letter-spacing:-.015em;color:#000;margin-top:12px}
.dcard .church{font-size:15px;font-weight:600;color:#7B7B7B;text-decoration:underline;text-underline-offset:3px;margin-top:6px;line-height:1.25}
.dcard .church:hover{color:var(--ink)}
.dcard .city{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#A3A3A8;margin-top:6px}
.metrics{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;text-align:left}
.metrics .ml{display:flex;align-items:center;gap:6px;font-family:var(--font-head);font-size:14.5px;font-weight:700;color:#111;margin-bottom:6px}
.metrics .ml i{color:var(--brand-deep);font-size:15px}
.segs{display:grid;grid-template-columns:repeat(8,1fr);gap:3px}
.segs i{height:20px;border-radius:4px;background:var(--line-strong);position:relative;overflow:hidden}
.segs i::after{content:"";position:absolute;inset:0;background:var(--brand);transform:scaleY(0);transform-origin:bottom;transition:transform .35s var(--ease);transition-delay:calc(var(--d,0s) + .45s + var(--i) * .07s)}
.dcard.in .segs i.on::after{transform:scaleY(1)}
/* Barra do certificado: 3 partes IGUAIS = as 3 habilitações (1/3, 2/3, 3/3),
   no mesmo estilo dos 8 blocos de Módulos. Cada parte acende inteira, da
   esquerda para a direita: 1/3 = primeira parte = 33%. A barra começa e
   termina arredondada; o percentual fica FORA dela, como texto. */
.cbar{display:flex;align-items:center;gap:7px;height:20px}
.cbar .track{flex:1;height:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:3px}
.cbar .track i{position:relative;overflow:hidden;background:var(--line-strong);border-radius:4px}
.cbar .track i::after{content:"";position:absolute;inset:0;background:var(--brand);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease);transition-delay:calc(var(--d,0s) + .9s + var(--i) * .3s)}
.dcard.in .cbar .track i.on::after{transform:scaleX(1)}
.cbar .pct{font-size:12px;font-weight:800;color:#111;min-width:34px;text-align:right}
.metrics small{display:block;font-size:12px;color:#222;margin-top:6px;white-space:nowrap}
.metrics small b{font-weight:800}
.dcard .bottom{background:var(--panel);padding:14px 16px 16px;flex:1;display:flex;flex-direction:column;align-items:center}
.stpill{min-width:78%;padding:6px 18px;border-radius:var(--pill);font-family:var(--font-head);font-size:19px;font-weight:800;letter-spacing:-.01em;color:#111;transition:transform .25s var(--ease)}
.dcard:hover .stpill{transform:scale(1.03)}
.stpill.ok,.stpill.warn{background:var(--brand)}
.stpill.off{background:#BFC0C3;color:#1C1C1E}
.reason{font-size:10.5px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:#222;margin-top:5px}
.sep{width:100%;height:3px;background:var(--line-strong);border-radius:3px;margin:12px 0 10px}
.langs-title{font-size:15px;color:#222}
.lang-row{display:flex;justify-content:space-around;width:100%;margin-top:8px}
.lang{display:flex;flex-direction:column;align-items:center;gap:2px}
.lring{position:relative;width:48px;height:48px}
.lring svg.r{position:absolute;inset:0;transform:rotate(-90deg)}
.lring svg.r circle{fill:none;stroke-width:5}
.lring svg.r .tr{stroke:#6B6B70}
.lring svg.r .fg{stroke:var(--brand);stroke-linecap:round;stroke-dasharray:132;stroke-dashoffset:132;transition:stroke-dashoffset 1.2s var(--ease);transition-delay:calc(var(--d,0s) + .8s)}
.lring .fl{position:absolute;inset:9px;border-radius:50%;background:#fff;display:grid;place-items:center}
.lring .fl svg{width:20px;height:14px;border-radius:2px}
.lang b{font-family:var(--font-head);font-size:16px;font-weight:800;color:#111}
.add-card{border:2px dashed var(--line-strong);border-radius:18px;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:260px;color:var(--muted);font-weight:700;transition:all .25s var(--ease)}
.add-card i{width:56px;height:56px;border-radius:50%;background:var(--brand);color:var(--on-brand);display:grid;place-items:center;font-size:20px;box-shadow:var(--glow);transition:transform .35s var(--ease)}
.add-card:hover{border-color:var(--brand);color:var(--ink);background:var(--brand-tint)}
.add-card:hover i{transform:rotate(90deg) scale(1.06)}
.btn-new{font-family:var(--font-head);font-weight:800;text-transform:uppercase;letter-spacing:.02em;background:var(--brand-soft);color:var(--on-brand);border:0;border-radius:10px;padding:10px 14px;box-shadow:var(--glow);transition:transform .2s var(--ease),background .2s}
.btn-new:hover{transform:translateY(-2px);background:var(--brand)}

/* ---------- Gaveta de detalhes ---------- */
.scrim{position:fixed;inset:0;background:rgba(14,14,16,.5);opacity:0;pointer-events:none;transition:opacity .3s var(--ease);z-index:80}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(440px,100%);background:var(--surface);z-index:81;transform:translateX(100%);transition:transform .45s var(--ease);box-shadow:var(--sh-lg);display:flex;flex-direction:column}
.open .scrim{opacity:1;pointer-events:auto}
.open .drawer{transform:none}
.drawer header{display:flex;align-items:center;gap:14px;padding:22px;border-bottom:1px solid var(--line)}
.drawer header .pic{width:58px;height:58px;border-radius:50%;border:3px solid var(--brand);padding:2px;background:#fff;flex:none}
.drawer header .pic .ini{font-size:16px}
.drawer header h3{font-size:17px}
.drawer header p{margin:0;font-size:13px;color:var(--muted)}
.drawer header .icon-btn{margin-left:auto;background:var(--bg);flex:none}
.drawer .body{padding:22px;overflow:auto;display:grid;gap:18px}
.dl{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dl div{background:var(--bg);border-radius:14px;padding:12px 14px}
.dl small{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.dl b{color:var(--ink);font-size:14px}
.mods{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.mods li{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;font-size:13.5px;color:var(--ink);font-weight:600;opacity:0;transform:translateX(20px);transition:opacity .4s var(--ease),transform .4s var(--ease);transition-delay:calc(var(--i) * .05s + .2s)}
.open .mods li{opacity:1;transform:none}
.mods li .n{width:28px;height:28px;border-radius:50%;background:var(--bg);display:grid;place-items:center;font-family:var(--font-head);font-size:12px;flex:none}
.mods li.done .n{background:var(--brand);color:var(--on-brand)}
.mods li .dt{margin-left:auto;font-size:12px;color:var(--muted);font-weight:500}
.mods li .ck{color:var(--line-strong)}
.mods li.done .ck{color:var(--ok)}
.drawer h4{font-size:13px;text-transform:uppercase;letter-spacing:.06em}
.drawer footer{padding:16px 22px;border-top:1px solid var(--line);display:flex;gap:10px}
.drawer footer .btn{flex:1}

/* ---------- Guia visual ---------- */
.guide{margin-top:56px;padding:28px;border-radius:var(--r-xl);background:var(--surface);border:1px dashed var(--line-strong)}
.guide h2{font-size:22px}
.guide .gsub{margin:4px 0 20px;color:var(--muted);font-size:14px}
.swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}
.sw{border-radius:16px;overflow:hidden;border:1px solid var(--line);font-size:12px}
.sw i{display:block;height:64px}
.sw div{padding:8px 10px}
.sw b{display:block;color:var(--ink)}
.types{display:grid;gap:10px;margin:24px 0}
.types div{display:flex;align-items:baseline;gap:16px;border-bottom:1px solid var(--line);padding-bottom:10px;flex-wrap:wrap}
.types small{width:150px;color:var(--muted);font-size:12px;flex:none}
.row-btns{display:flex;gap:12px;flex-wrap:wrap;align-items:center}

/* ========================= MOBILE ========================= */
@media (max-width:820px){
  body{font-size:14.5px}
  .wrap{padding:0 16px}
  .nextbar .wrap{height:36px;font-size:12px}
  .nextbar .mini-track,.nextbar a span{display:none}
  .header .wrap,.header.scrolled .wrap{height:58px;gap:10px}
  .wordmark,.header.scrolled .wordmark{font-size:33px}
  .header .langs{display:none}
  .userchip{padding:3px}
  .userchip .txt{display:none}
  .nav{display:none}
  .tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--dark);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
  .tabbar a{display:flex;flex-direction:column;align-items:center;gap:3px;color:rgba(255,255,255,.62);text-decoration:none;font-size:10px;font-weight:700;padding:6px 0;border-radius:12px;position:relative}
  .tabbar a i{font-size:17px;transition:transform .25s var(--ease)}
  .tabbar a:active i{transform:scale(.85)}
  .tabbar a[aria-current=page]{color:var(--brand)}
  .tabbar a[aria-current=page]::before{content:"";position:absolute;top:-6px;width:28px;height:3px;border-radius:0 0 3px 3px;background:var(--brand)}
  .tabbar .badge{position:absolute;top:2px;left:55%;background:var(--danger);color:#fff;border-radius:9px;font-size:9px;padding:0 5px}
  .page{padding:20px 0 110px}
  .hero{grid-template-columns:1fr;gap:16px}
  .hero h1{font-size:30px}
  .hero p{font-size:14.5px}
  .nextclass{min-width:0}
  .onb,.mgmt{padding:18px}
  .tree{padding:20px 14px 4px}
  .stepper{margin-left:0;width:100%;justify-content:space-between}
  .stepper .ln{flex:1;width:auto}
  .step{grid-template-columns:40px 1fr;padding:16px}
  .step .num{width:40px;height:40px;font-size:15px}
  .step > .btn{grid-column:1 / -1}
  .step-2 .form{grid-column:1 / -1;grid-template-columns:1fr}
  .step-3 .form,.check{grid-column:1 / -1}
  .quick{grid-template-columns:1fr;gap:10px}
  .qcard{flex-direction:row;align-items:center;padding:16px}
  .qcard .qi{width:44px;height:44px;flex:none}
  .qcard .qtxt{flex:1}
  .qcard .go{margin:0}.qcard .go span{display:none}
  .search{margin-left:0;width:100%}
  .search input,.search input:focus{width:100%}
  .kpis{grid-template-columns:1fr 1fr;gap:10px}
  .kpi{padding:14px}
  .kpi .kv{font-size:26px}
  .tree{padding:20px 10px 4px}
  .level{padding-left:30px}
  .level .line{left:9px}
  .level .node{width:21px;height:21px}
  .level-head h3{font-size:15px}
  .grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 -10px 0 -30px;padding:4px 10px 14px 30px;scroll-padding-left:30px;scrollbar-width:none}
  .grid::-webkit-scrollbar{display:none}
  .grid > *{flex:0 0 calc(100% - 22px);max-width:330px;scroll-snap-align:start}
  .grid > :only-child{flex-basis:100%}
  .metrics{gap:10px}
  .metrics .ml{font-size:13.5px}
  .metrics small{white-space:normal;font-size:11.5px}
  .add-card{min-height:auto;padding:24px}
  .guide{padding:18px}
}
/* =========================================================================
   15 · MEU PAINEL (desenho "Painel Pessoal")
   ========================================================================= */
.ptitle{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:6px 0 22px}
.ptitle .dot{width:30px;height:30px;border-radius:50%;background:var(--brand);flex:none;animation:beat 2.4s var(--ease) infinite}
.ptitle h1{font-size:24px;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
.ptitle h1 span{font-weight:800}
.mode{margin-left:auto;display:flex;align-items:center;gap:10px}
.mode .ml{font-family:var(--font-head);font-weight:700;font-size:14px;letter-spacing:.02em;text-transform:uppercase;color:var(--ink);transition:opacity .25s}
/* Interruptor compacto: 54×30, bolinha 24px (área de toque ampliada pelo
   ::before para continuar confortável no celular). */
.switch{position:relative;width:54px;height:30px;border:0;border-radius:var(--pill);background:var(--line-strong);padding:0;transition:background .3s var(--ease);flex:none}
.switch::before{content:"";position:absolute;inset:-8px -4px}
.switch::after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.22);transition:transform .35s var(--ease),width .2s var(--ease)}
.switch[aria-checked=true]{background:var(--brand)}
.switch[aria-checked=true]::after{transform:translateX(24px)}
.switch:active::after{width:28px}
.switch[aria-checked=true]:active::after{transform:translateX(20px)}
.info{position:relative}
.info > button{width:26px;height:26px;border-radius:50%;border:2px solid #9A9AA0;background:#fff;color:#8A8A90;font-family:Georgia,serif;font-weight:700;font-size:13px;display:grid;place-items:center;padding:0;transition:border-color .2s,color .2s}
.info > button:hover,.info.open > button{border-color:var(--ink);color:var(--ink)}
.info .tip{position:absolute;right:-4px;top:calc(100% + 12px);width:300px;background:var(--dark);color:rgba(255,255,255,.85);border-radius:14px;padding:14px 16px;font-size:13px;line-height:1.55;box-shadow:var(--sh-lg);opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .25s var(--ease),transform .25s var(--ease);z-index:30}
.info .tip::before{content:"";position:absolute;right:10px;top:-7px;border:7px solid transparent;border-top:0;border-bottom-color:var(--dark)}
.info:hover .tip,.info.open .tip{opacity:1;transform:none;pointer-events:auto}
.info .tip b{color:var(--brand)}

.pgrid{display:grid;grid-template-columns:350px 1fr;gap:16px;align-items:stretch}
.pmain{background:var(--surface);border:1.5px solid var(--line-strong);border-radius:22px;padding:14px;display:flex;flex-direction:column;gap:12px;min-width:0}
.swap{transition:opacity .3s var(--ease),transform .3s var(--ease)}
.swap.out{opacity:0;transform:translateY(8px)}

.who{display:flex;align-items:center;gap:16px;border:1.5px solid var(--line-strong);border-radius:20px;padding:14px 16px;background:var(--surface)}
.who .pic{width:100px;height:100px;border-radius:50%;border:4px solid var(--brand);padding:3px;background:#fff;flex:none}
.who .pic .ini{font-size:26px}
.who .tag{display:inline-block;background:var(--brand);color:var(--on-brand);border-radius:var(--pill);padding:2px 14px;font-size:14px;font-weight:600}
.who h3{font-family:var(--font-head);font-size:22px;font-weight:700;text-transform:uppercase;letter-spacing:-.01em;margin-top:6px;line-height:1.15}
.who .church{display:inline-block;font-size:15px;color:#7B7B7B;text-decoration:underline;text-underline-offset:3px;margin-top:2px}
.who .mat{margin-left:auto;align-self:center;background:var(--panel);border-radius:10px;padding:9px 14px;font-size:14px;color:var(--ink);white-space:nowrap}
.who .mat b{font-weight:800;letter-spacing:.02em}

.klass{display:flex;align-items:center;gap:16px;background:var(--panel);border:1.5px solid var(--line-strong);border-radius:20px;padding:16px 22px}
.klass p{margin:0;font-size:19px;color:var(--ink);line-height:1.4}
.klass p b{font-family:var(--font-head);font-weight:800}
.btn-yellow-text{margin-left:auto;background:#2A2A2C;color:var(--brand);border:0;border-radius:10px;padding:13px 20px;font-size:17px;font-weight:600;text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;gap:10px;box-shadow:0 8px 18px rgba(14,14,16,.2);transition:transform .2s var(--ease),background .2s}
.btn-yellow-text:hover{transform:translateY(-2px);background:#000}
.btn-yellow-text i{transition:transform .25s var(--ease)}
.btn-yellow-text:hover i{transform:translateX(4px)}

.mods-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding:6px 10px 12px;border-bottom:3px solid var(--line)}
.mods-head h3{font-family:var(--font-head);font-size:22px;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
.mods-head span{font-size:14px;color:var(--ink)}
.mods-head span b{font-weight:800}
.mods-head .prog-txt{margin-left:auto;font-size:13px;color:var(--muted);font-weight:600}
.mlist{list-style:none;margin:0;padding:0 10px 0 10px;max-height:262px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#9A9AA0 transparent}
.mlist::-webkit-scrollbar{width:8px}.mlist::-webkit-scrollbar-thumb{background:#9A9AA0;border-radius:8px}
.mlist li{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:3px solid var(--line);opacity:0;transform:translateX(-18px);transition:opacity .5s var(--ease),transform .5s var(--ease);transition-delay:calc(var(--i) * .08s + .15s)}
.in .mlist li,.mlist.in li{opacity:1;transform:none}
.mlist .n{width:40px;height:40px;border-radius:50%;background:var(--line-strong);color:var(--ink);display:grid;place-items:center;font-size:20px;flex:none}
.mlist li.done .n{background:var(--brand)}
.mlist .tx{flex:1;display:flex;align-items:center;gap:12px;min-width:0}
.mlist .t{flex:1;font-family:var(--font-head);font-size:17px;font-weight:700;text-transform:uppercase;color:var(--ink);letter-spacing:-.005em}
.mlist .dt{font-size:15px;color:var(--ink);white-space:nowrap}
.mlist .ck{width:40px;height:40px;border-radius:50%;border:2.5px solid var(--line-strong);display:grid;place-items:center;color:transparent;font-size:17px;flex:none;transition:transform .45s var(--ease),border-color .3s,color .3s;transform:scale(.4);transition-delay:calc(var(--i) * .08s + .45s)}
.in .mlist .ck,.mlist.in .ck{transform:scale(1)}
.mlist li.done .ck{border-color:#22A559;color:#22A559}

.contact{display:flex;align-items:center;gap:18px;border:2px solid var(--brand);border-radius:22px;padding:14px 18px 14px 30px;margin-top:16px;background:var(--surface)}
.contact h3{font-family:var(--font-head);font-size:28px;font-weight:800;text-transform:uppercase;letter-spacing:.01em;line-height:1}
.contact p{margin:0;font-size:16px;color:var(--ink)}
.contact .head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.cacts{margin-left:auto;display:grid;gap:8px}
.crow{display:flex;align-items:center;gap:10px}
.cbtn{min-width:260px;background:#2A2A2C;color:#fff;border-radius:10px;padding:11px 18px;font-size:20px;text-align:center;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 8px 18px rgba(14,14,16,.18);transition:transform .2s var(--ease),background .2s,opacity .25s}
.cbtn:hover{transform:translateY(-2px);background:#000}
.cbtn.off{opacity:.45}
.cbtn.yellow{color:var(--brand)}
.vis{width:42px;height:42px;border-radius:50%;border:2.5px solid var(--ink);background:#fff;color:var(--ink);display:grid;place-items:center;font-size:17px;flex:none;transition:transform .3s var(--ease),background .2s}
.vis:hover{transform:scale(1.08)}
.vis i{transition:transform .35s var(--ease)}
.vis:active i{transform:rotate(90deg) scale(.8)}
.cert-bar .vis{background:transparent}

.cert-bar{display:flex;align-items:center;gap:26px;background:var(--brand-soft);border-radius:22px;padding:16px 18px 16px 34px;margin-top:14px}
.cert-bar .ci{width:130px;flex:none;animation:float 4s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-6px) rotate(-2deg)}}
.cert-bar h3{font-family:var(--font-head);font-size:30px;font-weight:800;color:var(--ink);letter-spacing:-.01em}
.cert-bar p{margin:0;font-size:26px;color:#3A3A3A}
.cert-bar .cacts{text-align:center}
.cert-bar small{display:block;margin-top:6px;font-size:16px;color:var(--ink);letter-spacing:.02em}
.cert-bar.locked .cbtn{background:#6B6B70;color:#fff;pointer-events:none}

@media (max-width:820px){
  .ptitle{gap:10px}
  .ptitle .dot{width:20px;height:20px}
  .ptitle h1{font-size:17px}
  .mode{margin-left:0;width:100%;justify-content:flex-end}
  .info .tip{width:260px}
  .pgrid{grid-template-columns:1fr}
  .pmain{padding:10px}
  .who{flex-wrap:wrap;gap:12px}
  .who .pic{width:72px;height:72px}
  .who > div{flex:1;min-width:0}
  .who h3{font-size:17px}
  .who .mat{margin-left:0;width:100%;text-align:center}
  .klass{flex-direction:column;align-items:stretch;padding:14px 16px}
  .klass p{font-size:16px}
  .btn-yellow-text{margin-left:0;justify-content:center}
  .mods-head h3{font-size:18px}
  .mlist{max-height:none;overflow:visible;padding:0 4px}
  .mlist .n{width:34px;height:34px;font-size:16px}
  .mlist .tx{flex-direction:column;align-items:flex-start;gap:0}
  .mlist .t{font-size:14px}
  .mlist .dt{font-size:12.5px;color:var(--muted)}
  .mlist .ck{width:34px;height:34px;font-size:14px}
  .contact{flex-direction:column;align-items:stretch;padding:18px}
  .contact h3{font-size:22px}
  .contact p{font-size:13.5px}
  .cacts{margin-left:0}
  .cbtn{min-width:0;flex:1;font-size:17px}
  .cert-bar{flex-direction:column;text-align:center;padding:22px 18px;gap:12px}
  .cert-bar .ci{width:96px}
  .cert-bar h3{font-size:22px}
  .cert-bar p{font-size:18px}
  .cert-bar .cacts{margin-left:0;width:100%}
}

/* =========================================================================
   16 · AULAS E AGENDA
   A cor do cartão indica a doutrina do material (medido no desenho):
   amarelo = Avivamento · azul acinzentado #A9C1D1 = Conservador (serenidade, tradição, confiança — Lalo, 28/09/2026). Faixa do cartão #CAC2C0.
   Os @usuários usam um verde-água mais escuro que o do desenho para ter
   contraste de leitura (o amarelo sobre branco não se lê).
   ========================================================================= */
:root{--band:#CAC2C0;--cons:#A9C1D1;--cons-strong:#6F8FA5;--link:#2E7D6E;--warm-muted:#76726F;--title-ink:#2F2F2F}
.mat-aviv{--acc:var(--aviv);--acc-strong:var(--aviv)}
.mat-cons{--acc:var(--cons);--acc-strong:var(--cons-strong)}

.aa-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:6px 0 18px}
.aa-head .dot{width:30px;height:30px;border-radius:50%;background:var(--brand);flex:none;animation:beat 2.4s var(--ease) infinite}
.aa-head h1{font-size:24px;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
.aa-head p{margin:0;flex-basis:100%;padding-left:44px;font-size:14px;color:var(--muted)}

.create-bar{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--brand);color:var(--on-brand);border:0;border-radius:12px;padding:15px;font-family:var(--font-head);font-weight:700;font-size:17px;box-shadow:var(--glow);transition:transform .2s var(--ease),box-shadow .25s var(--ease),background .2s}
.create-bar:hover{background:var(--brand-hover);transform:translateY(-2px);box-shadow:0 14px 30px rgba(var(--glow-rgb),.5)}
.create-bar i{transition:transform .4s var(--ease)}
.create-bar:hover i{transform:rotate(90deg)}

.aa-tools{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:22px 0 8px}
.aa-tools .lbl{font-family:var(--font-head);font-weight:600;font-size:16px;color:var(--warm-muted);text-transform:uppercase;letter-spacing:.03em}
.seg{position:relative;display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr;border:1.5px solid #DDDBDA;border-radius:12px;padding:3px;background:#fff}
.seg button{position:relative;z-index:1;border:0;background:transparent;font-family:var(--font-head);font-weight:800;font-size:17px;text-transform:uppercase;letter-spacing:.02em;color:#8A8583;padding:8px 22px;border-radius:9px;display:flex;align-items:center;justify-content:center;gap:8px;transition:color .25s}
.seg button[aria-selected=true]{color:var(--on-brand)}
.seg button .c{font-family:var(--font-body);font-size:11px;font-weight:800;background:rgba(0,0,0,.08);border-radius:var(--pill);padding:1px 7px;letter-spacing:0}
.seg .ind{position:absolute;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);background:var(--brand);border-radius:9px;box-shadow:0 4px 12px rgba(var(--glow-rgb),.45);transition:transform .45s var(--ease)}
.seg[data-v="1"] .ind{transform:translateX(100%)}
.seg.sm button{font-size:13px;padding:8px 14px}
.legend{margin-left:auto;display:flex;gap:16px;font-size:13px;color:var(--text)}
.legend span{display:inline-flex;align-items:center;gap:7px}
.legend i{width:12px;height:12px;border-radius:50%;background:var(--acc)}

.view{display:grid;gap:18px;margin-top:10px}
.day-head{display:flex;align-items:center;gap:12px;margin:14px 0 -4px;font-family:var(--font-head);font-weight:800;text-transform:uppercase;font-size:13px;letter-spacing:.07em;color:var(--title-ink)}
.day-head::after{content:"";flex:1;height:1.5px;background:var(--line)}
.day-head .hd{border-radius:var(--pill);padding:3px 10px;font-size:11px;background:var(--ink);color:var(--brand);letter-spacing:.06em}
.day-head .hd.today{background:var(--danger);color:#fff}

/* Cartão de turma */
.klcard{background:var(--surface);border:1.5px solid #D6D0CE;border-radius:24px;overflow:hidden;box-shadow:var(--sh-sm);transition:opacity .7s var(--ease),transform .7s var(--ease),box-shadow .3s var(--ease);transition-delay:var(--d,0s),var(--d,0s),0s}
.klcard.in:hover{transform:translateY(-3px);box-shadow:var(--sh-md);transition-delay:0s}
.klcard.new{animation:newcard 2.2s var(--ease)}
@keyframes newcard{0%,30%{box-shadow:0 0 0 6px var(--brand-tint),var(--sh-md)}100%{box-shadow:var(--sh-sm)}}
.kl-head{display:flex;align-items:center;gap:12px;background:var(--band);padding:14px 20px 14px 28px}
.kl-head h3{flex:1;min-width:0;font-family:var(--font-head);font-size:21px;font-weight:700;text-transform:uppercase;letter-spacing:.01em;color:var(--title-ink)}
.btn-ver{display:inline-flex;align-items:center;gap:10px;background:#2A2A2C;color:#fff;border:0;border-radius:9px;padding:10px 16px;font-weight:700;font-size:14px;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;white-space:nowrap;box-shadow:0 6px 14px rgba(14,14,16,.2);transition:transform .2s var(--ease),background .2s}
.btn-ver i{color:var(--acc);transition:transform .3s var(--ease)}
.btn-ver:hover{transform:translateY(-2px);background:#000}
.btn-ver:hover i{transform:rotate(-8deg) scale(1.1)}
.matchip{background:var(--acc);color:#161200;border-radius:9px;padding:9px 14px;font-size:14px;white-space:nowrap}
.matchip b{font-weight:800;letter-spacing:.02em}
.kl-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;padding:22px 28px 6px}
.person{display:flex;gap:14px;align-items:flex-start;min-width:0}
.person .av{width:62px;height:62px;border-radius:50%;border:3px solid var(--acc);padding:2px;background:#fff;flex:none;transition:transform .4s var(--ease)}
.person .av .ini{font-size:18px}
.klcard:hover .person .av{transform:scale(1.05)}
.person .l1{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rtag{background:var(--acc);color:#161200;border-radius:var(--pill);padding:2px 12px;font-weight:700;font-size:13px;white-space:nowrap}
.rtag u{text-decoration-style:dotted;text-underline-offset:3px;cursor:help}
.person .sub{font-size:14px;color:#5D5153}
.person .nm{font-family:var(--font-head);font-weight:700;font-size:18px;color:var(--title-ink);line-height:1.3;margin-top:5px}
.person .you{font-family:var(--font-body);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:var(--ink);color:var(--brand);border-radius:var(--pill);padding:2px 8px;margin-left:6px;vertical-align:3px}
.more{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-body);font-weight:500;font-size:14px;color:var(--warm-muted);white-space:nowrap;vertical-align:middle;margin-left:4px}
.stack{display:inline-flex}
.stack img,.stack .ini{width:24px;height:24px;border-radius:50%;border:2px solid #fff;margin-left:-8px;object-fit:cover;transition:margin .35s var(--ease);background:var(--panel)}
.stack > :first-child{margin-left:0}
.klcard:hover .stack > *{margin-left:-2px}
.klcard:hover .stack > :first-child{margin-left:0}
.handle{display:inline-block;margin-top:3px;color:var(--link);font-size:15px;font-weight:500;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(46,125,110,.4);transition:text-decoration-color .2s}
.handle:hover{text-decoration-color:var(--link)}
.codechip{display:inline-flex;align-items:center;gap:8px;margin-top:6px;background:var(--dark);color:#fff;border:0;border-radius:9px;padding:6px 10px;font-size:13px}
.codechip b{font-family:var(--font-head);color:var(--brand);letter-spacing:.1em}
.kl-foot{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;padding:12px 28px 20px}
.ini-date{display:flex;align-items:center;gap:10px;font-size:17px;color:var(--title-ink)}
.ini-date .dot,.ag-next h4 .dot{width:22px;height:22px;border-radius:50%;background:var(--acc);flex:none}
.ini-date b{font-family:var(--font-head);font-weight:800}
.mprog{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--warm-muted)}
.mprog .ms{display:grid;grid-template-columns:repeat(8,13px);gap:3px}
.mprog .ms i{height:8px;border-radius:3px;background:var(--line-strong)}
.mprog .ms i.on{background:var(--acc-strong)}
.done-tag{display:inline-flex;align-items:center;gap:6px;background:var(--ok-bg);color:var(--ok);border-radius:var(--pill);padding:3px 12px;font-size:13px;font-weight:700}
.klcard.done .kl-head{background:#DDD8D6}

/* Agenda */
.ag-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:26px;padding:22px 28px}
.ag-people{display:grid;gap:18px;align-content:start}
.ag-next{border-left:2px dashed var(--line-strong);padding-left:26px;min-width:0}
.ag-next h4{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-family:var(--font-head);font-weight:800;font-size:18px;text-transform:uppercase;color:var(--title-ink)}
.when{font-family:var(--font-body);font-size:11px;font-weight:800;letter-spacing:.06em;border-radius:var(--pill);padding:3px 10px;background:var(--ink);color:var(--brand)}
.when.today{background:var(--danger);color:#fff;animation:pulse 1.6s infinite}
.ag-next dl{display:grid;grid-template-columns:auto 1fr;gap:5px 10px;margin:12px 0 0;font-size:16px;color:var(--title-ink);line-height:1.45}
.ag-next dt{font-family:var(--font-head);font-weight:700}
.ag-next dd{margin:0;min-width:0;overflow-wrap:anywhere}
.tchip{display:inline-flex;align-items:center;gap:6px;border-radius:var(--pill);padding:2px 11px;font-size:13px;font-weight:700}
.tchip.presencial{background:#EFEAE8;color:#4A3F3C}
.tchip.online{background:#E3F4FC;color:#1C6B8F}
.mod-line{display:flex;align-items:center;gap:8px;margin-top:12px;padding:9px 12px;background:var(--bg);border-radius:12px;font-size:14px;color:var(--text)}
.mod-line i{color:var(--acc-strong)}
.mod-line b{color:var(--title-ink)}
.ag-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}

/* Formulário "Criar aula" (usa a gaveta do item 12) */
.form-grid{display:grid;gap:16px}
.field > label,.field > .fl{display:block;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);margin-bottom:7px}
.field .input,.field .select{width:100%}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.optcards{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.opt{display:flex;align-items:center;gap:10px;border:1.5px solid var(--line-strong);border-radius:14px;padding:12px;cursor:pointer;font-size:14px;font-weight:600;color:var(--ink);transition:border-color .2s,background .2s}
.opt input{accent-color:var(--ink);width:16px;height:16px}
.opt .sw{width:14px;height:14px;border-radius:50%;background:var(--acc);flex:none}
.opt:has(input:checked){border-color:var(--ink);background:var(--bg)}
.code-box{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--dark);color:rgba(255,255,255,.8);border-radius:16px;padding:16px;font-size:13px;animation:pop .4s var(--ease)}
.code-box b{display:block;font-family:var(--font-head);letter-spacing:.14em;color:var(--brand);font-size:22px}
.code-box .btn{margin-left:auto}

/* Aviso rápido */
.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:var(--dark);color:#fff;padding:12px 18px;border-radius:14px;font-size:14px;box-shadow:var(--sh-lg);opacity:0;pointer-events:none;transition:opacity .35s var(--ease),transform .35s var(--ease);z-index:95;max-width:calc(100% - 32px);display:flex;align-items:center;gap:10px}
.toast i{color:var(--brand)}
.toast.show{opacity:1;transform:translate(-50%,0)}

@media (max-width:820px){
  .aa-head .dot{width:20px;height:20px}
  .aa-head h1{font-size:18px}
  .aa-head p{padding-left:34px;font-size:13px}
  .aa-tools .lbl{display:none}
  .aa-tools .seg{width:100%}
  .seg button{min-width:0;font-size:14px;padding:8px 10px;line-height:1.15;text-align:center}
  .seg.sm button{font-size:12.5px;padding:8px 8px}
  .legend{margin-left:0;width:100%;justify-content:center}
  .kl-head{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:14px 16px;gap:10px}
  .kl-head h3{font-size:17px}
  .kl-head .matchip{grid-column:1 / -1;justify-self:start}
  .btn-ver{padding:8px 12px;font-size:12px}
  .matchip{font-size:12px;padding:7px 10px}
  .kl-body{grid-template-columns:1fr;gap:18px;padding:18px 16px 4px}
  .person .av{width:52px;height:52px}
  .person .nm{font-size:16px}
  .more{display:flex;margin:4px 0 0}
  .kl-foot{padding:10px 16px 18px;gap:10px}
  .ini-date{font-size:15px}
  .ag-body{grid-template-columns:1fr;gap:18px;padding:18px 16px}
  .ag-next{border-left:0;border-top:2px dashed var(--line-strong);padding:16px 0 0}
  .ag-next h4{font-size:16px}
  .ag-next dl{font-size:15px}
  .ag-actions .btn{flex:1}
  .optcards,.field-row{grid-template-columns:1fr}
  .toast{bottom:86px}
}

/* =========================================================================
   17 · MEU PERFIL — cadastro em etapas que se abrem conforme o preenchimento
   ========================================================================= */
a.userchip{text-decoration:none}
.pf-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:6px 0 22px}
.pf-head .ico{width:44px;height:44px;border-radius:50%;background:var(--brand);color:var(--on-brand);display:grid;place-items:center;font-size:19px;flex:none}
.pf-head h1{font-size:24px;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
.pf-head h1 span{font-family:var(--font-body);font-weight:500;color:var(--muted);text-transform:none;letter-spacing:0;font-size:18px}
.pf-progress{margin-left:auto;display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--pill);padding:6px 16px 6px 6px;box-shadow:var(--sh-sm)}
.pring{position:relative;width:46px;height:46px}
.pring svg{transform:rotate(-90deg);display:block}
.pring circle{fill:none;stroke-width:5}
.pring .tr{stroke:var(--line)}
.pring .fg{stroke:var(--brand);stroke-linecap:round;stroke-dasharray:126;stroke-dashoffset:126;transition:stroke-dashoffset .9s var(--ease)}
.pring b{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-head);font-size:12px;font-weight:800;color:var(--ink)}
.pf-progress small{display:block;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.pf-progress strong{font-family:var(--font-head);font-size:15px;color:var(--ink)}
.demo-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border:1.5px dashed var(--line-strong);border-radius:14px;padding:8px 12px;margin-bottom:18px;font-size:13px;color:var(--muted)}
.demo-bar b{color:var(--ink)}

.pf-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}
.pf-steps{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0}
.pf-aside{position:sticky;top:140px;display:grid;gap:12px}
.pf-aside .lbl{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px}
.pf-aside .lbl .live{width:8px;height:8px;border-radius:50%;background:var(--ok);animation:pulse-ok 1.8s infinite}
@keyframes pulse-ok{0%{box-shadow:0 0 0 0 rgba(21,128,61,.5)}70%{box-shadow:0 0 0 7px rgba(21,128,61,0)}100%{box-shadow:0 0 0 0 rgba(21,128,61,0)}}
.pf-aside .tip{background:var(--brand-tint);border-radius:16px;padding:12px 14px;font-size:13px;color:var(--ink);display:flex;gap:10px}
.pf-aside .tip i{color:var(--brand-deep);margin-top:3px}
.live-card .dcard,.live-card .dcard *{transition-delay:0s!important}
.live-card .dcard{cursor:default}
.live-card.bump .dcard{animation:bump .5s var(--ease)}
@keyframes bump{0%{transform:scale(1)}40%{transform:scale(1.02)}100%{transform:scale(1)}}

/* Etapa */
.sc{background:var(--surface);border:1.5px solid var(--line);border-radius:22px;box-shadow:var(--sh-sm);transition:border-color .3s,box-shadow .3s,opacity .3s}
.sc[data-state=active]{border-color:var(--brand);box-shadow:0 0 0 5px var(--brand-tint),var(--sh-md)}
.sc[data-state=locked]{opacity:.55}
.sc-head{width:100%;display:flex;align-items:center;gap:14px;padding:16px 18px;background:transparent;border:0;text-align:left;border-radius:22px}
.sc[data-state=done] .sc-head{cursor:pointer}
.sc-num{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex:none;font-family:var(--font-head);font-weight:800;background:var(--bg);color:var(--muted);transition:background .3s,color .3s}
.sc[data-state=active] .sc-num{background:var(--brand);color:var(--on-brand)}
.sc[data-state=done] .sc-num{background:var(--ok);color:#fff;animation:pop .45s var(--ease)}
.sc-head h2{font-size:17px;font-weight:700}
.sc-sum{margin:1px 0 0;font-size:13.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:52ch}
.sc[data-state=done] .sc-sum{color:var(--text)}
.sc-head > div{min-width:0;flex:1}
.sc-edit{font-size:13px;font-weight:700;color:var(--ink);display:none;align-items:center;gap:6px;padding:6px 10px;border-radius:10px}
.sc[data-state=done] .sc-edit{display:inline-flex}
.sc[data-state=done] .sc-head:hover .sc-edit{background:var(--bg)}
.sc-lock{color:var(--muted);display:none}
.sc[data-state=locked] .sc-lock{display:inline}
.sc-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s var(--ease)}
.sc[data-state=active] .sc-body{grid-template-rows:1fr}
.sc-inner{overflow:hidden}
.sc-pad{padding:4px 18px 18px 72px;display:grid;gap:16px}
.sc[data-state=active] .sc-pad > *{animation:fieldIn .5s var(--ease) both}
.sc[data-state=active] .sc-pad > :nth-child(2){animation-delay:.06s}
.sc[data-state=active] .sc-pad > :nth-child(3){animation-delay:.12s}
.sc[data-state=active] .sc-pad > :nth-child(4){animation-delay:.18s}
.sc[data-state=active] .sc-pad > :nth-child(5){animation-delay:.24s}
.sc[data-state=active] .sc-pad > :nth-child(6){animation-delay:.3s}
@keyframes fieldIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.sc-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sc-actions .hint{font-size:12.5px;color:var(--muted)}
.btn[disabled]{opacity:.45;pointer-events:none;box-shadow:none}
.reveal-if{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease),opacity .35s;opacity:0}
.reveal-if.on{grid-template-rows:1fr;opacity:1}
.reveal-if > div{overflow:hidden}
/* Meu perfil: a lista de igrejas que abre embaixo da busca não pode ser cortada pelos quadros (teste de 30/09/2026).
   Depois que o quadro termina de abrir, ele deixa a lista passar por cima; ao fechar, volta a esconder na hora. */
#churchArea > div{transition:overflow 0s linear 0s}
#churchArea.on > div{overflow:visible;transition:overflow 0s linear .45s;transition-behavior:allow-discrete}
.sc[data-state=active] .sc-inner:has(#chRes.open){overflow:visible}
#churchArea:has(#chRes.open){position:relative;z-index:6} /* a lista fica por cima do botão Continuar */
.sc.dark{background:var(--dark);border-color:var(--dark)}
.sc.dark .sc-head h2{color:var(--brand)}
.sc.dark .sc-sum{color:rgba(255,255,255,.65)}
.sc.dark .sc-num{background:var(--dark-2);color:var(--brand)}
.sc.dark .sc-edit{color:#fff}
.sc.dark[data-state=done] .sc-head:hover .sc-edit{background:var(--dark-2)}
.sc.dark .note{color:rgba(255,255,255,.7);font-size:13px;margin:0}

/* Campos */
.fl-row{display:flex;align-items:center;gap:8px;margin-bottom:7px;flex-wrap:wrap}
.fl-row label,.fl-row .fl{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.priv{display:inline-flex;align-items:center;gap:5px;border-radius:var(--pill);padding:2px 9px;font-size:11px;font-weight:700}
.priv.pub{background:#E7F6EC;color:#1B7F3B}
.priv.rede{background:#E3F4FC;color:#1C6B8F}
.priv.oculto{background:var(--off-bg);color:var(--off)}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.input-pre{display:flex;align-items:center;border:1.5px solid rgba(0,0,0,.1);border-radius:14px;background:#fff;transition:border-color .2s,box-shadow .2s}
.input-pre:focus-within{border-color:var(--ink);box-shadow:0 0 0 4px rgba(14,14,16,.12)}
.input-pre .pre{padding:0 4px 0 14px;font-weight:800;color:var(--ink)}
.input-pre input{flex:1;min-width:0;height:46px;border:0;background:transparent;padding:0 12px 0 2px;font-size:15px;color:var(--ink);outline:0}
.input-pre .st-ic{padding-right:14px;width:34px;text-align:center}
.flagsel{display:flex;align-items:center;gap:10px}
.flagsel .fl-ic{width:30px;height:21px;border-radius:4px;overflow:hidden;flex:none;box-shadow:var(--sh-sm)}
.flagsel .fl-ic svg{display:block;width:100%;height:100%}
.flagsel .select{flex:1}
.phone{display:flex;gap:8px}
.phone .ddi{height:46px;min-width:70px;border-radius:14px;background:var(--bg);display:grid;place-items:center;font-weight:700;color:var(--ink);padding:0 10px}
.phone .input{flex:1;min-width:0}
.rules{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:13px;color:var(--muted)}
.rules li{display:flex;align-items:center;gap:8px;transition:color .2s}
.rules li i{width:16px;text-align:center}
.rules li.ok{color:var(--ok)}
.rules li.bad{color:var(--danger)}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{border:1.5px solid var(--line-strong);background:#fff;border-radius:var(--pill);padding:6px 12px;font-size:13px;font-weight:600;color:var(--ink);transition:all .2s var(--ease)}
.chip:hover{border-color:var(--ink);transform:translateY(-1px)}
.chip.sel{background:var(--ink);border-color:var(--ink);color:#fff}

/* Foto */
.photo-up{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.photo-drop{position:relative;width:104px;height:104px;border-radius:50%;border:5px solid var(--brand);padding:4px;background:#fff;cursor:pointer;flex:none;transition:transform .3s var(--ease)}
.photo-drop:hover,.photo-drop.drag{transform:scale(1.05)}
.photo-drop .pic-in{width:100%;height:100%;border-radius:50%;overflow:hidden;background:var(--panel);display:grid;place-items:center;color:var(--muted);font-size:26px}
.photo-drop img{width:100%;height:100%;object-fit:cover;animation:pop .45s var(--ease)}
.photo-drop .cam{position:absolute;right:-4px;bottom:2px;width:34px;height:34px;border-radius:50%;background:var(--ink);color:var(--brand);display:grid;place-items:center;font-size:13px;box-shadow:0 0 0 3px #fff}
.photo-up .txt{display:grid;gap:8px;font-size:13px;color:var(--muted)}

/* Idiomas */
.lang-pick{display:grid;gap:10px}
.lang-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;border:1.5px solid var(--line);border-radius:16px;padding:10px 14px;transition:border-color .25s,background .25s}
.lang-item.on{border-color:var(--brand);background:var(--brand-tint)}
.lang-item .tg{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--ink);min-width:130px;cursor:pointer}
.lang-item .tg input{accent-color:var(--ink);width:18px;height:18px}
.lang-item .tg .fl-ic{width:26px;height:18px;border-radius:3px;overflow:hidden}
.lang-item .tg .fl-ic svg{display:block;width:100%;height:100%}
.lang-item input[type=range]{width:100%;accent-color:var(--brand-hover)}
.lang-item input[type=range]:disabled{opacity:.3}
.lang-item .pv{font-family:var(--font-head);font-weight:800;color:var(--ink);min-width:48px;text-align:right}
.lang-levels{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);padding:0 2px}

/* Disponibilidade */
.avail{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.av-opt{position:relative;border:1.5px solid var(--line-strong);border-radius:16px;padding:14px;cursor:pointer;display:grid;gap:8px;justify-items:start;transition:border-color .2s,transform .2s var(--ease),background .2s}
.av-opt:hover{transform:translateY(-2px)}
.av-opt input{position:absolute;opacity:0}
.av-opt small{font-size:12.5px;color:var(--muted)}
.av-opt:has(input:checked){border-color:var(--ink);background:var(--bg)}
.av-opt:has(input:focus-visible){outline:3px solid var(--ink);outline-offset:2px}
.av-opt .stpill{font-size:15px;min-width:0;padding:4px 14px}

/* Igreja */
.link-opts{display:grid;gap:8px}
.link-opt{display:flex;align-items:center;gap:12px;border:1.5px solid var(--line-strong);border-radius:14px;padding:12px 14px;cursor:pointer;font-size:14px;color:var(--ink);transition:border-color .2s,background .2s}
.link-opt input{accent-color:var(--ink);width:18px;height:18px;flex:none}
.link-opt:has(input:checked){border-color:var(--ink);background:var(--bg)}
.link-opt b{display:block}
.link-opt small{color:var(--muted)}
.church-search{position:relative}
.church-search .results{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh-lg);z-index:20;overflow:hidden;display:none}
.church-search .results.open{display:block;animation:fieldIn .25s var(--ease)}
.church-search .results button{width:100%;text-align:left;border:0;background:#fff;padding:10px 14px;display:flex;flex-direction:column;gap:1px;font-size:14px;color:var(--ink)}
.church-search .results button small{color:var(--muted)}
.church-search .results button:hover,.church-search .results button:focus{background:var(--bg);outline:0}
.church-search .results .add{color:var(--brand-deep);font-weight:700;flex-direction:row;align-items:center;gap:8px;border-top:1px solid var(--line)}
.church-card{border:1.5px solid var(--line);border-radius:16px;overflow:hidden;animation:fieldIn .4s var(--ease)}
.church-card .cc-top{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--bg)}
.church-card .cc-top i.fa-church{width:38px;height:38px;border-radius:12px;background:var(--brand);color:var(--on-brand);display:grid;place-items:center;flex:none}
.church-card .cc-top b{display:block;color:var(--ink)}
.church-card .cc-top small{color:var(--muted)}
.church-card .state{margin-left:auto;border-radius:var(--pill);padding:2px 10px;font-size:12px;font-weight:700;background:var(--ok-bg);color:var(--ok)}
.church-card .state.pend{background:var(--warn-bg,#FFF3D6);color:#A86A00}
.church-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:0;padding:12px 14px;font-size:13px}
.church-card dt{font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.church-card dd{margin:2px 0 0;color:var(--ink);overflow-wrap:anywhere}
.church-card .cc-actions{display:flex;gap:8px;padding:0 14px 12px}
.type-row{display:flex;gap:10px;flex-wrap:wrap}

/* Segurança */
.pw-wrap{position:relative}
.pw-wrap .input{width:100%;padding-right:46px}
.pw-wrap .eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:36px;height:36px;border:0;background:transparent;border-radius:10px;color:var(--muted)}
.pw-wrap .eye:hover{background:var(--bg);color:var(--ink)}
.meter{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:8px}
.meter i{height:6px;border-radius:6px;background:var(--line);transition:background .3s}
.meter-txt{font-size:12px;color:var(--muted);margin-top:4px;display:block}
.verified{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:var(--ok)}

/* Botão "Meu cartão" (celular) e comemoração */
.card-fab{display:none}
.sheet{position:fixed;left:0;right:0;bottom:0;background:var(--bg);border-radius:24px 24px 0 0;padding:14px 16px calc(24px + env(safe-area-inset-bottom));transform:translateY(105%);transition:transform .45s var(--ease);z-index:81;max-height:88vh;overflow:auto;box-shadow:var(--sh-lg)}
.sheet .grab{width:44px;height:5px;border-radius:5px;background:var(--line-strong);margin:0 auto 12px}
.sheet-open .sheet{transform:none}
.sheet-open .scrim{opacity:1;pointer-events:auto}
.confetti{position:fixed;inset:0;pointer-events:none;z-index:99;overflow:hidden}
.confetti i{position:absolute;top:-12px;width:9px;height:14px;border-radius:2px;animation:fall var(--t,2.4s) cubic-bezier(.2,.6,.4,1) forwards}
@keyframes fall{to{transform:translate(var(--x,0),110vh) rotate(var(--r,540deg));opacity:.9}}
.done-banner{display:flex;align-items:center;gap:14px;background:var(--dark);color:#fff;border-radius:20px;padding:16px 18px;animation:fieldIn .5s var(--ease)}
.done-banner i{font-size:26px;color:var(--brand)}
.done-banner b{display:block;font-family:var(--font-head);color:var(--brand);font-size:17px}
.done-banner .btn{margin-left:auto}

@media (max-width:980px){
  .pf-grid{grid-template-columns:minmax(0,1fr)}
  .pf-aside{display:none}
  .card-fab{display:inline-flex;position:fixed;right:16px;bottom:86px;z-index:61;align-items:center;gap:8px;border:0;border-radius:var(--pill);background:var(--ink);color:#fff;padding:12px 16px;font-weight:700;font-size:14px;box-shadow:var(--sh-lg)}
  .card-fab i{color:var(--brand)}
}
@media (min-width:821px) and (max-width:980px){.card-fab{bottom:24px}}
@media (max-width:820px){
  .pf-head .ico{width:36px;height:36px;font-size:15px}
  .pf-head h1{font-size:18px}
  .pf-head h1 span{font-size:14px}
  .pf-progress{margin-left:0;width:100%}
  .sc-head{padding:14px}
  .sc-num{width:34px;height:34px;font-size:14px}
  .sc-pad{padding:4px 14px 16px}
  .sc-sum{max-width:none}
  .fgrid,.avail{grid-template-columns:1fr}
  .lang-item{grid-template-columns:1fr auto;row-gap:8px}
  .lang-item input[type=range]{grid-column:1 / -1;order:3}
  .church-card dl{grid-template-columns:1fr}
  .done-banner{flex-wrap:wrap}
  .done-banner .btn{margin-left:0;width:100%}
}

/* =========================================================================
   18 · CERTIFICADOS — certificado sobre a arte oficial (CERTIFICADO LISO),
   textos posicionados em % e medidos em cqw: escala igual na tela e no A4.
   ========================================================================= */
.cert{position:relative;width:100%;aspect-ratio:4939/3490;container-type:inline-size;background:#FFF8E1 url(img/cert-bg.jpg) center/cover no-repeat;border-radius:6px;overflow:hidden;color:#2E2E2E;font-family:Arial,'Inter',sans-serif;box-shadow:var(--sh-lg);-webkit-print-color-adjust:exact;print-color-adjust:exact}
.cert > *{position:absolute;margin:0}
.cert .c-title{left:50%;top:10.4%;transform:translateX(-50%);font-family:'Bebas Neue',var(--font-mark);font-size:13.4cqw;line-height:1;color:#333;letter-spacing:-.005em;white-space:nowrap}
.cert .c-sub{left:50%;top:26%;transform:translateX(-50%);font-family:'Bebas Neue',var(--font-mark);font-size:4.7cqw;line-height:1;color:#333;white-space:nowrap}
.cert .c-prog{left:50%;top:32.4%;transform:translateX(-50%);font-size:1.35cqw;color:#F6C343;white-space:nowrap;letter-spacing:.02em}
.cert .c-prog b{color:#FFD24A}
.cert .c-name{left:15%;right:15%;top:37.6%;text-align:center;font-weight:800;font-size:5cqw;line-height:1.1;color:#2E2E2E;text-transform:uppercase;white-space:nowrap;overflow:hidden}
.cert .c-badge{left:50%;top:46.2%;transform:translateX(-50%);background:#161616;color:#FFC107;border-radius:99px;padding:.35cqw 1.4cqw;font-size:1cqw;font-weight:800;letter-spacing:.12em;white-space:nowrap}
.cert .c-text{left:25%;right:25%;top:53.2%;text-align:center;font-size:1.42cqw;line-height:1.38;color:#333}
.cert .c-cols{left:8.4%;right:8.3%;top:66.2%;display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.cert .c-cols div{padding:0 1.1cqw 0 1.5cqw;min-width:0}
.cert .c-cols small{display:block;font-size:.78cqw;text-transform:uppercase;color:#555;letter-spacing:.02em}
.cert .c-cols b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:1.22cqw;line-height:1.15;text-transform:uppercase;color:#222}
.cert .c-qr{left:5.1%;top:75.6%;width:7.8%;height:15.6%;background:#1E1E1E;border-radius:.6cqw;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4cqw;padding:.5cqw}
.cert .c-qr img,.cert .c-qr .qr-ph{width:5.4cqw;height:5.4cqw;background:#fff;padding:.25cqw;border-radius:.2cqw}
.cert .c-qr span{font-size:.52cqw;line-height:1.2;color:#fff;text-align:center;font-weight:700;text-transform:uppercase}
.cert .c-logo{left:44.1%;top:75%;width:11.8%;height:16.2%;background:#fff;border-radius:.4cqw;display:grid;place-items:center;padding:.8cqw}
.cert .c-logo img{max-width:100%;max-height:100%;object-fit:contain}
.cert .c-sign{top:84.6%;width:24%;transform:translateX(-50%);text-align:center}
.cert .c-sign.l{left:31.8%}
.cert .c-sign.r{left:68.2%}
.cert .c-sign b{display:block;font-size:1.3cqw;text-transform:uppercase;color:#222;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cert .c-sign small{display:block;font-size:.72cqw;text-transform:uppercase;color:#444;margin-top:.2cqw}
.cert .c-sign i{display:block;font-style:normal;font-size:.62cqw;color:#666}
.cert .c-foot{left:5%;top:93.6%;font-size:.74cqw;color:#C9A227;white-space:nowrap}
.cert .c-num{left:50%;top:94.6%;transform:translateX(-50%);font-family:'Bebas Neue',var(--font-mark);font-size:2.3cqw;line-height:1;color:#FFC107;letter-spacing:.03em;white-space:nowrap}
.cert.flash{animation:certflash .6s var(--ease)}
@keyframes certflash{0%{filter:brightness(1)}35%{filter:brightness(1.08)}100%{filter:brightness(1)}}

.cf-intro small{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.cf-intro h2{font-size:26px;font-weight:800;text-transform:uppercase;margin:6px 0 4px}
.cf-intro p{margin:0;color:var(--text)}
.cf-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.cf-meta small{display:block;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.cf-meta b{color:var(--ink);font-size:15px}
.cf-meta code{font-family:'Courier New',monospace;font-weight:700;font-size:15px;color:var(--ink);letter-spacing:.04em}
.cf-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.cf-bar h3{font-size:17px;margin-right:auto}
.cert-stage{background:#2B2B2E;border-radius:18px;padding:22px}
.cf-cols{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:18px;display:grid;gap:14px}
.panel h4{font-size:15px;display:flex;align-items:center;gap:8px}
.panel h4 i{color:var(--brand-deep)}
.purpose{display:grid;gap:8px}
.logo-opts{display:grid;gap:8px}
.logo-opt{display:flex;align-items:center;gap:12px;border:1.5px solid var(--line-strong);border-radius:14px;padding:10px 12px;cursor:pointer;font-size:14px;color:var(--ink);transition:border-color .2s,background .2s,opacity .2s}
.logo-opt input{accent-color:var(--ink);width:17px;height:17px;flex:none}
.logo-opt .th{width:56px;height:40px;border-radius:8px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;padding:4px;flex:none}
.logo-opt .th img{max-width:100%;max-height:100%}
.logo-opt small{display:block;color:var(--muted);font-size:12px}
.logo-opt:has(input:checked){border-color:var(--ink);background:var(--bg)}
/* Ver o logotipo ampliado (Lalo, 09/10/2026): passar o mouse amplia; "Visualizar logo" abre grande */
.logo-opt .th{position:relative}
.logo-opt .th img{transition:transform .2s,box-shadow .2s;transform-origin:left center;border-radius:6px}
@media (hover:hover){.logo-opt .th:hover{z-index:20}.logo-opt .th:hover img{transform:scale(3.4);background:#fff;box-shadow:0 8px 28px rgba(0,0,0,.25)}}
.logo-opt .th.sem-logo{color:var(--danger);font-size:18px;border-style:dashed;border-color:var(--danger)}
.logo-view{display:inline-flex;align-items:center;gap:5px;margin-top:3px;background:none;border:0;padding:0;font:inherit;font-size:12px;font-weight:600;color:var(--ink);text-decoration:underline;cursor:pointer}
.logo-zoom{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.6);display:grid;place-items:center;padding:16px}
.logo-zoom .box{background:#fff;border-radius:18px;padding:18px;max-width:min(520px,100%);width:100%;text-align:center;display:grid;gap:12px}
.logo-zoom .box img{max-width:100%;max-height:50vh;margin:0 auto;object-fit:contain}
.logo-zoom .box p{margin:0;font-size:14px;color:var(--ink)}
/* Formado sem igreja (Lalo, 09/10/2026): bloco "Nome da igreja" com contorno vermelho pulsando — só na tela */
.cert .c-cols > .c-miss{outline:2px solid #DC2626;outline-offset:3px;border-radius:6px;animation:cMiss 1.4s ease-in-out infinite}
@keyframes cMiss{0%,100%{outline-color:#DC2626;transform:scale(1)}50%{outline-color:rgba(220,38,38,.35);transform:scale(1.06)}}
@media (prefers-reduced-motion:reduce){.cert .c-cols > .c-miss{animation:none}}
@media print{.cert .c-cols > .c-miss{outline:0;animation:none;transform:none}.cert-miss{display:none!important}}
.cert-miss{margin-top:10px;flex-wrap:wrap;align-items:center}
.logo-opt:has(input:disabled){opacity:.45;cursor:not-allowed}
.rule{display:flex;gap:10px;align-items:flex-start;border-radius:14px;padding:12px;font-size:13px;line-height:1.45}
.rule i{margin-top:2px}
.rule.open{background:#E7F6EC;color:#14532D}
.rule.lock{background:#FDECEA;color:#7F1D1D}
.rule.info{background:var(--bg);color:var(--text)}
.bap-fields{display:grid;gap:10px}

/* Imprimir para discípulos */
.find{display:grid;gap:12px}
.find-row{display:flex;gap:8px}
.find-row .input-pre{flex:1}
.find-hint{font-size:12.5px;color:var(--muted)}
.result{display:flex;align-items:center;gap:14px;border:1.5px solid var(--line);border-radius:16px;padding:12px 14px;animation:fieldIn .35s var(--ease)}
.result .pic{width:52px;height:52px;border-radius:50%;border:3px solid var(--brand);padding:2px;background:#fff;flex:none}
.result .pic .ini{font-size:15px}
.result .who-t{flex:1;min-width:0}
.result .who-t b{display:block;color:var(--ink);font-family:var(--font-head)}
.result .who-t small{display:block;color:var(--muted);font-size:12.5px}
.elig{display:inline-flex;align-items:center;gap:6px;margin-top:4px;border-radius:var(--pill);padding:2px 10px;font-size:12px;font-weight:700}
.elig.yes{background:var(--ok-bg);color:var(--ok)}
.elig.no{background:var(--off-bg);color:var(--off)}
.grads{display:flex;gap:8px;flex-wrap:wrap}
.grad{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--line-strong);background:#fff;border-radius:var(--pill);padding:4px 12px 4px 4px;font-size:13px;font-weight:600;color:var(--ink);transition:all .2s var(--ease)}
.grad img,.grad .ini{width:28px;height:28px;border-radius:50%;object-fit:cover;background:var(--panel);display:grid;place-items:center;font-size:11px}
.grad:hover{border-color:var(--ink);transform:translateY(-1px)}
.grad.in-q{background:var(--ink);border-color:var(--ink);color:#fff}
.queue{display:grid;gap:8px}
.q-item{display:flex;align-items:center;gap:10px;background:var(--bg);border-radius:12px;padding:8px 10px;font-size:13.5px;color:var(--ink);animation:fieldIn .3s var(--ease)}
.q-item img,.q-item .ini{width:30px;height:30px;border-radius:50%;object-fit:cover;background:var(--panel);display:grid;place-items:center;font-size:11px}
.q-item b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.q-item button{border:0;background:transparent;color:var(--muted);width:30px;height:30px;border-radius:8px}
.q-item button:hover{background:#fff;color:var(--danger)}
.q-empty{font-size:13px;color:var(--muted);border:1.5px dashed var(--line-strong);border-radius:12px;padding:14px;text-align:center}
.q-nav{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:12px;color:#fff;font-size:13px}
.q-nav button{width:34px;height:34px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff}
.q-nav button:disabled{opacity:.3}

/* Impressão: só os certificados, 1 por folha A4 paisagem */
#printArea{display:none}
@media print{
  @page{size:A4 landscape;margin:0}
  body{background:#fff!important}
  body > *:not(#printArea){display:none!important}
  #printArea{display:block!important}
  #printArea .cert{width:297mm;height:210mm;aspect-ratio:auto;border-radius:0;box-shadow:none;break-after:page;page-break-after:always}
}

@media (max-width:980px){
  .cf-cols{grid-template-columns:1fr}
}
@media (max-width:820px){
  .cf-meta{grid-template-columns:1fr 1fr}
  .cf-intro h2{font-size:20px}
  .cert-stage{padding:10px;border-radius:14px}
  .find-row{flex-direction:column}
}

/* Seta "Voltar" — canto superior esquerdo de todas as páginas */
.backbar{margin:-12px 0 14px}
.back{display:inline-flex;align-items:center;gap:10px;padding:4px 14px 4px 4px;border-radius:var(--pill);text-decoration:none;color:var(--ink);transition:background .2s}
.back:hover{background:rgba(14,14,16,.05)}
.back .bk-ic{width:38px;height:38px;border-radius:50%;background:var(--surface);border:1.5px solid var(--line-strong);display:grid;place-items:center;font-size:15px;box-shadow:var(--sh-sm);transition:transform .25s var(--ease),border-color .2s,background .2s}
.back:hover .bk-ic{transform:translateX(-3px);border-color:var(--ink);background:var(--brand)}
.back .bk-t{display:flex;flex-direction:column;line-height:1.15;font-weight:800;font-size:14px}
.back .bk-t small{font-weight:500;font-size:12px;color:var(--muted)}
@media (max-width:820px){.backbar{margin:-6px 0 12px}}

/* =========================================================================
   19 · MENUS DO TOPO (≡ usuário/Meu perfil e sino de avisos)
   ========================================================================= */
.header .right{position:relative}
.dd{position:absolute;right:0;top:calc(100% + 12px);width:300px;background:#fff;border-radius:18px;box-shadow:var(--sh-lg);border:1px solid var(--line);padding:8px;z-index:70;opacity:0;transform:translateY(-8px) scale(.98);transform-origin:top right;pointer-events:none;transition:opacity .22s var(--ease),transform .25s var(--ease)}
.dd.open{opacity:1;transform:none;pointer-events:auto}
.dd a,.dd button.it{display:flex;align-items:center;gap:12px;width:100%;padding:11px 12px;border-radius:12px;border:0;background:transparent;text-decoration:none;color:var(--ink);font-size:14px;font-weight:600;text-align:left}
.dd a:hover,.dd button.it:hover,.dd a:focus-visible{background:var(--bg)}
.dd a i,.dd button.it i{width:18px;text-align:center;color:var(--muted)}
.dd .dd-user{display:flex;gap:12px;align-items:center;padding:10px 12px 12px;border-bottom:1px solid var(--line);margin-bottom:6px;text-decoration:none}
.dd .dd-user img{width:46px;height:46px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px var(--brand)}
.dd .dd-user b{display:block;font-family:var(--font-head);font-size:14px;color:var(--ink)}
.dd .dd-user small{color:var(--muted);font-size:12px}
.dd .sep{height:1px;background:var(--line);margin:6px 4px}
.dd .danger,.dd .danger i{color:var(--danger)!important}
.dd .dd-title{display:flex;align-items:center;justify-content:space-between;padding:8px 12px 6px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.dd .dd-title button{border:0;background:transparent;font-size:12px;font-weight:700;color:var(--link);text-transform:none;letter-spacing:0}
.dd .n-item{align-items:flex-start!important;font-weight:500!important;line-height:1.4}
.dd .n-item .nd{width:9px;height:9px;border-radius:50%;background:var(--danger);margin-top:6px;flex:none}
.dd .n-item.read .nd{background:transparent}
.dd .n-item small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.dd .n-empty{margin:0;padding:8px 12px 12px;font-size:13.5px;color:var(--muted)}
.dd .langs-m{display:flex;gap:6px;padding:6px 12px 10px}
.dd .langs-m button{flex:1;border:1.5px solid var(--ink);background:#fff;border-radius:8px;height:32px;font-size:12px;font-weight:800;color:var(--ink)}
.dd .langs-m button[aria-pressed=true]{background:var(--ink);color:#fff}
@media (max-width:820px){.dd{position:fixed;left:12px;right:12px;top:66px;width:auto}}

/* =========================================================================
   20 · MATERIAL (módulos + leitor)
   ========================================================================= */
.today{display:flex;align-items:center;gap:16px;background:var(--dark);color:#fff;border-radius:22px;padding:18px 20px}
.today .ic{width:52px;height:52px;border-radius:16px;background:var(--brand);color:var(--on-brand);display:grid;place-items:center;font-size:20px;flex:none;animation:float 4s ease-in-out infinite}
.today small{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--brand)}
.today b{display:block;font-family:var(--font-head);font-size:17px}
.today span{color:rgba(255,255,255,.72);font-size:14px}
.today .btn{margin-left:auto}
.mgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.mcard{position:relative;text-align:left;border:1.5px solid var(--line);background:var(--surface);border-radius:22px;padding:18px;display:grid;gap:10px;align-content:start;box-shadow:var(--sh-sm);cursor:pointer;font:inherit;color:inherit;transition:opacity .7s var(--ease),transform .7s var(--ease),box-shadow .3s var(--ease),border-color .2s;transition-delay:var(--d,0s),var(--d,0s),0s,0s}
.mcard.in:hover{transform:translateY(-4px);box-shadow:var(--sh-md);border-color:var(--acc);transition-delay:0s}
.mcard .mn{width:46px;height:46px;border-radius:14px;background:var(--acc);color:#161200;font-family:var(--font-head);font-weight:800;font-size:20px;display:grid;place-items:center;transition:transform .35s var(--ease)}
.mcard:hover .mn{transform:rotate(-6deg) scale(1.06)}
.mcard h3{font-size:15.5px;text-transform:uppercase;letter-spacing:.01em}
.mcard p{margin:0;font-size:13.5px;color:var(--text)}
.mcard .meta{display:flex;gap:12px;font-size:12px;color:var(--muted)}
.mcard .rd{position:absolute;top:18px;right:16px;font-size:12px;font-weight:700;border-radius:var(--pill);padding:3px 10px;background:var(--off-bg);color:var(--off)}
.mcard .rd.ok{background:var(--ok-bg);color:var(--ok)}
.mcard .tag-next{position:absolute;top:-10px;left:16px;background:var(--ink);color:var(--brand);border-radius:var(--pill);padding:3px 10px;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.mcard.next{border-color:var(--acc);box-shadow:0 0 0 4px var(--brand-tint),var(--sh-sm)}
.mcard.soon{cursor:default}
.mcard.soon .mn{background:var(--line)}

.rdwrap .scrim{z-index:80}
.reader{position:fixed;top:0;right:0;bottom:0;width:min(780px,100%);background:var(--surface);z-index:81;transform:translateX(100%);transition:transform .45s var(--ease);display:flex;flex-direction:column;box-shadow:var(--sh-lg)}
.rd-open .reader{transform:none}
.rd-open .scrim{opacity:1;pointer-events:auto}
.rd-head{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line)}
.rd-head .mn{width:44px;height:44px;border-radius:13px;background:var(--acc);display:grid;place-items:center;font-family:var(--font-head);font-weight:800;font-size:18px;flex:none}
.rd-head small{display:block;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.rd-head h3{font-size:18px;text-transform:uppercase}
.rd-head .icon-btn{margin-left:auto;background:var(--bg);flex:none}
.rd-tools{display:flex;gap:6px;padding:10px 20px;border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center}
.rd-tools .chip i{margin-right:4px}
/* A− e A+ em destaque (Lalo, 30/09/2026: os alunos não viam os botões de tamanho da letra) */
#fsDown,#fsUp{background:var(--brand);color:var(--ink);border:1.5px solid var(--ink);font-weight:800;font-size:15px;min-width:52px;justify-content:center;box-shadow:0 2px 0 var(--ink)}
#fsUp{font-size:18px}
#fsDown:hover,#fsUp:hover{filter:brightness(1.05);transform:translateY(-1px)}
#fsDown:active,#fsUp:active{transform:translateY(1px);box-shadow:none}
.rd-body{flex:1;overflow:auto;padding:22px 28px 30px;font-size:var(--fs,16px);line-height:1.7;color:var(--text);transition:background .3s,color .3s}
.rd-body h4{font-size:12.5px;text-transform:uppercase;letter-spacing:.07em;margin:24px 0 10px;display:flex;gap:8px;align-items:center;color:var(--ink)}
.rd-body h4 i{color:var(--brand-deep)}
.rd-body > :first-child{margin-top:0}
.obj{background:var(--bg);border-left:5px solid var(--acc);border-radius:12px;padding:14px 16px;color:var(--ink)}
.refs{display:flex;flex-wrap:wrap;gap:8px}
.ref{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1.5px solid var(--line-strong);border-radius:var(--pill);padding:4px 12px;font-size:.85em;font-weight:600;color:var(--ink)}
.ref i{color:var(--brand-deep)}
.qs{counter-reset:q;list-style:none;padding:0;margin:0;display:grid;gap:12px}
.qs li{display:flex;gap:12px}
.qs li::before{counter-increment:q;content:counter(q);width:28px;height:28px;border-radius:50%;background:var(--ink);color:var(--brand);display:grid;place-items:center;font-size:12px;font-weight:800;flex:none;margin-top:2px}
.practice{background:var(--brand-soft);border-radius:16px;padding:16px 18px;color:#161200}
.guide-box{background:#E3F4FC;border-radius:16px;padding:14px 16px;color:#0F3D52;font-size:.93em}
.guide-box b{display:flex;align-items:center;gap:8px;margin-bottom:4px}
.notes textarea{width:100%;min-height:110px;border-radius:14px;border:1.5px solid var(--line-strong);padding:12px 14px;font:inherit;font-size:15px;color:var(--ink);resize:vertical}
.notes textarea:focus{outline:0;border-color:var(--ink);box-shadow:0 0 0 4px rgba(14,14,16,.1)}
.notes small{color:var(--muted);font-size:12px}
.demo-note{font-size:12px;color:var(--muted);font-style:italic;margin-top:22px}
.rd-foot{display:flex;align-items:center;gap:8px;padding:14px 20px;border-top:1px solid var(--line);flex-wrap:wrap}
.rd-foot .mid{margin:0 auto}
.present .rd-body{background:var(--dark);color:#fff;font-size:calc(var(--fs,16px) + 6px)}
.present .rd-body h4{color:var(--brand)}
.present .obj{background:#1E1E20;color:#fff}
.present .ref{background:#1E1E20;color:#fff;border-color:#38383C}
.present .guide-box,.present .notes,.present .demo-note{display:none}
.empty-lang{text-align:center;padding:40px 16px;color:var(--muted)}
.empty-lang i{font-size:34px;color:var(--brand-deep);margin-bottom:10px}
@media (max-width:820px){
  .today{flex-wrap:wrap}
  .today .btn{margin-left:0;width:100%}
  .rd-body{padding:18px}
  .rd-head,.rd-tools,.rd-foot{padding-left:14px;padding-right:14px}
  .rd-foot .btn{flex:1}
  .rd-foot .mid{order:-1;flex-basis:100%}
}

/* =========================================================================
   21 · ENTRAR (login + convite)
   ========================================================================= */
.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:var(--dark)}
.auth{width:min(960px,100%);display:grid;grid-template-columns:1fr 1.1fr;background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 40px 90px rgba(0,0,0,.45)}
.auth-side{background:var(--brand);padding:40px 36px;display:flex;flex-direction:column;gap:16px;position:relative;overflow:hidden}
.auth-side .wordmark{font-size:64px}
.auth-side .tag{font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#161200}
.auth-side ul{list-style:none;margin:auto 0 0;padding:0;display:grid;gap:10px;font-size:14.5px;color:#161200}
.auth-side li{display:flex;gap:10px;align-items:center}
.auth-side li i{width:30px;height:30px;border-radius:50%;background:#161200;color:var(--brand);display:grid;place-items:center;font-size:12px;flex:none}
.auth-side .ring{position:absolute;right:-70px;top:-70px;width:220px;height:220px;border-radius:50%;border:26px solid rgba(255,255,255,.28);animation:float 6s ease-in-out infinite}
.auth-main{padding:36px 36px 30px;display:grid;gap:16px;align-content:start}
.auth-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.auth-top h1{font-size:24px;font-weight:800;text-transform:uppercase;letter-spacing:.01em}
.auth-langs{display:flex;gap:6px}
.auth-langs button{border:1.5px solid var(--ink);background:#fff;border-radius:8px;width:36px;height:30px;font-size:11px;font-weight:800}
.auth-langs button[aria-pressed=true]{background:var(--ink);color:#fff}
.auth-main > p{margin:-8px 0 0;color:var(--muted);font-size:14px}
.social{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.social button{display:flex;align-items:center;justify-content:center;gap:10px;height:48px;border-radius:14px;border:1.5px solid var(--line-strong);background:#fff;font-weight:700;font-size:14px;color:var(--ink);transition:border-color .2s,transform .2s var(--ease)}
.social button:hover{border-color:var(--ink);transform:translateY(-2px)}
.or{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.or::before,.or::after{content:"";flex:1;height:1px;background:var(--line)}
.auth-step{display:grid;gap:12px;animation:fieldIn .45s var(--ease)}
.auth-step[hidden]{display:none}
.auth-step .btn{width:100%;height:50px}
.who-chip{display:flex;align-items:center;gap:10px;background:var(--bg);border-radius:var(--pill);padding:6px 6px 6px 14px;font-size:14px;color:var(--ink)}
.who-chip button{margin-left:auto;border:0;background:#fff;border-radius:var(--pill);padding:6px 12px;font-size:12px;font-weight:700}
.auth-links{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:13px}
.auth-links a,.auth-links button{color:var(--link);font-weight:600;background:transparent;border:0;padding:0;text-decoration:underline;text-underline-offset:3px}
.invite{display:flex;gap:12px;align-items:center;background:var(--brand-tint);border:1.5px solid var(--brand);border-radius:18px;padding:12px 14px;animation:fieldIn .45s var(--ease)}
.invite img{width:46px;height:46px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px var(--brand)}
.invite small{display:block;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-deep)}
.invite b{color:var(--ink)}
.auth-foot{font-size:12px;color:var(--muted);text-align:center}
@media (max-width:820px){
  .auth-page{padding:0;place-items:stretch;background:#fff}
  .auth{grid-template-columns:1fr;border-radius:0;box-shadow:none;min-height:100vh;align-content:start}
  .auth-side{padding:26px 20px 22px}
  .auth-side .wordmark{font-size:46px}
  .auth-side ul{display:none}
  .auth-main{padding:22px 20px 30px}
  .social{grid-template-columns:1fr}
}

/* =========================================================================
   22 · REGISTRO DE PRESENÇA — dupla validação
   Discipulador marca → discípulo confirma com 1 botão. Marcado e ainda não
   confirmado = LARANJA ("Discípulo falta confirmar"), no lugar de "Não registrado".
   ========================================================================= */
:root{--pend:#EA580C;--pend-bg:#FFEDD5;--abs-bg:#FDECEA}
.pr-top{display:grid;grid-template-columns:1fr 1fr auto auto;border:1.5px solid var(--line-strong);border-radius:16px;overflow:hidden;background:#fff}
.pr-top > *{padding:14px 18px;border-right:1.5px solid var(--line-strong);display:flex;align-items:center;font-family:var(--font-head);font-weight:700;text-transform:uppercase;color:var(--ink);font-size:15px;line-height:1.2;min-width:0}
.pr-top .mod{justify-content:center;text-transform:none;white-space:nowrap}
.pr-top a.alt{background:var(--brand);border-right:0;gap:10px;text-decoration:none;text-transform:none;font-size:16px;white-space:nowrap;transition:background .2s}
.pr-top a.alt:hover{background:var(--brand-hover)}
.pr-top a.alt i{font-size:22px}
.pr-class{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;margin:20px 0 6px}
.pr-class h1{font-size:28px;font-weight:800;text-transform:uppercase}
.pr-meta{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:14px;color:var(--text);flex-basis:100%}
.pr-meta span{display:inline-flex;align-items:center;gap:7px}
.pr-meta i{color:var(--muted)}
.pr-back{margin-left:auto;font-size:13px;font-weight:700;color:var(--ink);text-decoration:none;display:inline-flex;gap:6px;align-items:center}
.psteps{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:14px 18px}
.ps{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--muted);white-space:nowrap}
.ps .n{width:30px;height:30px;border-radius:50%;border:2px solid var(--line-strong);display:grid;place-items:center;font-size:13px;transition:all .3s var(--ease)}
.ps.on{color:var(--ink)}
.ps.on .n{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}
.ps.done{color:var(--ok)}
.ps.done .n{background:var(--ok);border-color:var(--ok);color:#fff;animation:pop .4s var(--ease)}
.ps-line{flex:1;height:2px;background:var(--line-strong);min-width:16px}
.pr-info{display:flex;gap:12px;align-items:flex-start;background:var(--brand-tint);border-radius:16px;padding:14px 16px;font-size:14px;color:var(--ink)}
.pr-info i{color:var(--brand-deep);margin-top:3px}
.pr-info p{margin:2px 0 0;color:var(--text);font-size:13px}
.att{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--sh-sm)}
.att-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid var(--line)}
.att-head label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--ink);cursor:pointer}
.att-head input{width:18px;height:18px;accent-color:var(--ink)}
.legend2{margin-left:auto;display:flex;gap:14px;flex-wrap:wrap}
.legend2 span{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--text)}
.legend2 i{width:10px;height:10px;border-radius:50%}
.att-row{display:grid;grid-template-columns:26px minmax(0,1.3fr) auto 210px minmax(0,1fr);gap:14px;align-items:center;padding:12px 18px;border-bottom:1px solid var(--line);transition:background .3s}
.att-row.flash{animation:rowflash 1s var(--ease)}
@keyframes rowflash{0%{background:var(--ok-bg)}100%{background:transparent}}
.att-row .idx{font-weight:700;color:var(--muted)}
.att-row .att-who{display:flex;align-items:center;gap:10px;min-width:0}
.att-row .att-who img,.att-row .att-who .ini{width:40px;height:40px;border-radius:50%;object-fit:cover;flex:none;background:var(--panel);display:grid;place-items:center;font-size:13px;font-weight:700}
.att-row .att-who b{display:block;color:var(--ink);font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.att-row .att-who small{color:var(--muted);font-size:12px}
.mark{display:inline-flex;border:1.5px solid var(--line-strong);border-radius:var(--pill);padding:3px;gap:3px;background:#fff}
.mark button{border:0;background:transparent;border-radius:var(--pill);padding:7px 13px;font-size:13px;font-weight:700;color:var(--muted);display:flex;gap:6px;align-items:center;transition:background .2s,color .2s}
.mark button:hover{color:var(--ink)}
.mark button.p[aria-pressed=true]{background:var(--ok-bg);color:var(--ok)}
.mark button.f[aria-pressed=true]{background:var(--abs-bg);color:var(--danger)}
.stc{display:inline-flex;align-items:center;gap:7px;border-radius:var(--pill);padding:5px 12px;font-size:12.5px;font-weight:700;white-space:nowrap;animation:pop .35s var(--ease)}
.stc.none{background:var(--off-bg);color:var(--off)}
.stc.pend{background:var(--pend-bg);color:#C2410C}
.stc.pend i{color:var(--pend);animation:tick 1.6s steps(8) infinite}
@keyframes tick{to{transform:rotate(360deg)}}
.stc.ok{background:var(--ok-bg);color:var(--ok)}
.stc.abs{background:var(--abs-bg);color:var(--danger)}
.obs input{width:100%;border:1.5px solid var(--line);border-radius:10px;height:38px;padding:0 10px;font-size:13px;color:var(--ink)}
.obs input:focus{outline:0;border-color:var(--ink)}
.att-foot{display:flex;gap:10px;flex-wrap:wrap;padding:14px 18px;align-items:center;background:var(--bg)}
.att-foot .sum{margin-right:auto;font-size:13px;color:var(--text);display:flex;gap:12px;flex-wrap:wrap}
.att-foot .sum b{color:var(--ink)}
.pr-panel{background:#fff;border:1px solid var(--line);border-radius:22px;padding:20px;display:grid;gap:14px;box-shadow:var(--sh-sm);animation:fieldIn .45s var(--ease)}
.pr-panel h3{font-size:18px}
.pr-panel .row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.pr-done{display:flex;gap:14px;align-items:center;background:var(--dark);color:#fff;border-radius:22px;padding:18px 20px;animation:fieldIn .45s var(--ease)}
.pr-done i{font-size:30px;color:var(--brand)}
.pr-done b{display:block;font-family:var(--font-head);color:var(--brand);font-size:18px}
.pr-done .btn{margin-left:auto}
.how{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.how > div{display:flex;gap:12px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px;font-size:13.5px;color:var(--text)}
.how > div > i{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;flex:none;font-size:16px}
.how b{display:block;color:var(--ink);font-size:14.5px;margin-bottom:2px}
/* Visão do discípulo: 1 botão */
.cf-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:28px 22px;display:grid;justify-items:center;text-align:center;gap:14px;box-shadow:var(--sh-md);animation:fieldIn .45s var(--ease)}
.cf-card .av2{width:84px;height:84px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 4px #fff,0 0 0 8px var(--brand)}
.cf-card h2{font-size:22px;max-width:28ch}
.cf-card p{margin:0;color:var(--text);max-width:46ch}
.cf-card .facts{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.cf-card .facts span{background:var(--bg);border-radius:var(--pill);padding:6px 12px;font-size:13px;font-weight:600;color:var(--ink);display:inline-flex;gap:6px;align-items:center}
.btn-confirm{width:100%;max-width:420px;height:64px;font-size:18px;border-radius:18px}
.btn-confirm.done{background:var(--ok);color:#fff;box-shadow:0 10px 24px rgba(21,128,61,.35);pointer-events:none}
.cf-card .small-link{font-size:13px;color:var(--link);background:transparent;border:0;text-decoration:underline;text-underline-offset:3px}
.burst{animation:burst .6s var(--ease)}
@keyframes burst{0%{transform:scale(1)}40%{transform:scale(1.06)}100%{transform:scale(1)}}
/* Etapas com descrição curta (para todos saberem as 3 etapas) */
.ps .t{display:flex;flex-direction:column;line-height:1.2}
.ps .t small{font-size:11.5px;font-weight:500;color:var(--muted);margin-top:2px}
.ps.on .t small{color:var(--text)}
.btn-lg{height:52px;padding:0 24px;font-size:15px}
/* Envio pelo WhatsApp a partir do celular do discipulador */
.wa-panel{background:#fff;border:1.5px solid #25D366;border-radius:22px;padding:18px;display:grid;gap:12px;box-shadow:var(--sh-sm);animation:fieldIn .45s var(--ease)}
.wa-panel h3{font-size:17px;display:flex;align-items:center;gap:10px}
.wa-panel h3 i{width:36px;height:36px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;font-size:18px}
.wa-panel > p{margin:0;font-size:13.5px;color:var(--text)}
.wa-list{display:grid;gap:8px}
.wa-item{display:flex;align-items:center;gap:10px;background:var(--bg);border-radius:14px;padding:8px 10px}
.wa-item img,.wa-item .ini{width:36px;height:36px;border-radius:50%;object-fit:cover;flex:none;background:var(--panel);display:grid;place-items:center;font-size:12px;font-weight:700}
.wa-item b{flex:1;min-width:0;font-size:14px;color:var(--ink);line-height:1.25;overflow-wrap:anywhere}
.wa-item small{display:block;font-weight:500;color:var(--muted);font-size:12px}
.btn-wa{background:#25D366;color:#fff;box-shadow:0 8px 18px rgba(37,211,102,.32)}
.btn-wa:hover{background:#1EBE5A}
.wa-item .sent{font-size:12.5px;font-weight:700;color:var(--ok);display:inline-flex;gap:6px;align-items:center}
.wa-auto{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--text);background:var(--bg);border-radius:14px;padding:10px 12px}
.wa-auto i{color:var(--brand-deep);margin-top:2px}
/* Prévias: mensagem do WhatsApp e alerta no celular */
.previews{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pv-box{border-radius:18px;padding:14px;display:grid;gap:8px;align-content:start}
.pv-box > small{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);display:flex;gap:6px;align-items:center}
.pv-wa{background:#ECE5DD}
.bubble{background:#DCF8C6;border-radius:12px 12px 12px 2px;padding:10px 12px;font-size:13.5px;color:#111;box-shadow:0 1px 1px rgba(0,0,0,.12);line-height:1.45;max-width:100%}
.bubble a{color:#027EB5;word-break:break-all}
.bubble .tm{display:block;text-align:right;font-size:10.5px;color:#667781;margin-top:4px}
.pv-push{background:#1E1E20;color:#fff}
.pv-push > small{color:rgba(255,255,255,.55)}
.push{display:flex;gap:10px;background:rgba(255,255,255,.1);border-radius:14px;padding:10px 12px;font-size:13px;line-height:1.4}
.push .app{width:30px;height:30px;border-radius:8px;background:var(--brand);color:var(--on-brand);display:grid;place-items:center;font-size:12px;font-weight:800;flex:none;font-family:var(--font-head)}
.push b{display:block;font-size:13px}
.push small{color:rgba(255,255,255,.6);font-size:11px}
/* Alerta para a discípula confirmar */
.alert-confirm{display:flex;gap:12px;align-items:center;background:#FDECEA;border:1.5px solid #F8B4AE;color:#991B1B;border-radius:18px;padding:14px 16px;width:100%;max-width:520px;text-align:left}
.alert-confirm .dot{width:12px;height:12px;border-radius:50%;background:var(--danger);flex:none;animation:pulse 1.4s infinite}
.alert-confirm b{display:block;font-size:15px}
.alert-confirm span{font-size:13px;color:#7F1D1D}
.btn-confirm:not(.done){animation:glow2 1.8s ease-in-out infinite}
@media (max-width:820px){
  .previews{grid-template-columns:1fr}
  .psteps{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
  .psteps .ps-line{display:none}
  .ps{flex-direction:column;text-align:center;white-space:normal;gap:5px}
  .ps span.t{display:flex!important;align-items:center}
  .ps .t small{display:none}
  .ps.on .t small{display:block}
  .wa-item{flex-wrap:wrap}
  .wa-item .btn{margin-left:auto}
}
/* Resumo de presença na Agenda */
.att-sum{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;color:var(--text);margin-top:10px;padding:9px 12px;border:1.5px dashed var(--line-strong);border-radius:12px}
.att-sum b{color:var(--ink)}
.att-sum span{display:inline-flex;align-items:center;gap:6px}
.att-sum i{width:9px;height:9px;border-radius:50%}
.stack .s-ok{box-shadow:0 0 0 2px var(--ok)}
.stack .s-pend{box-shadow:0 0 0 2px var(--pend)}
.stack .s-abs{box-shadow:0 0 0 2px var(--danger)}
@media (max-width:820px){
  .pr-top{grid-template-columns:1fr 1fr}
  .pr-top > *{font-size:12.5px;padding:12px}
  .pr-top > :nth-child(2n){border-right:0}
  .pr-top > :nth-child(-n+2){border-bottom:1.5px solid var(--line-strong)}
  .pr-top a.alt{font-size:14px}
  .pr-class h1{font-size:22px}
  .pr-back{margin-left:0}
  .psteps{padding:12px;gap:8px}
  .ps span.t{display:none}
  .ps.on span.t{display:inline}
  .att-row{grid-template-columns:22px minmax(0,1fr) auto;grid-template-areas:"i w w" "i m s" "i o o";row-gap:10px}
  .att-row .idx{grid-area:i;align-self:start;margin-top:10px}
  .att-row .att-who{grid-area:w}
  .att-row .mark{grid-area:m;justify-self:start}
  .att-row .st-cell{grid-area:s;justify-self:end}
  .att-row .obs{grid-area:o}
  .mark button{padding:7px 10px}
  .att-foot .btn{flex:1}
  .how{grid-template-columns:1fr}
  .pr-done{flex-wrap:wrap}
  .pr-done .btn{margin-left:0;width:100%}
}

/* =========================================================================
   23 · BRILHO DO BOTÃO PRINCIPAL + PRIMEIROS PASSOS GUIADOS
   ========================================================================= */
/* Botão da ação do momento: halo amarelo pulsando + leve "respirar" */
.btn-glow{animation:glow2 1.8s ease-in-out infinite}
.btn-glow:hover{animation-play-state:paused}
/* Em fundo amarelo o halo amarelo some: usa halo escuro */
.step-2 .btn-glow,.practice .btn-glow,.cert-bar .btn-glow{animation-name:glowDark}
@keyframes glowDark{
  0%,100%{box-shadow:0 8px 20px rgba(22,18,0,.25),0 0 0 0 rgba(22,18,0,.45);transform:scale(1)}
  50%{box-shadow:0 14px 34px rgba(22,18,0,.35),0 0 0 12px rgba(22,18,0,0);transform:scale(1.045)}
}
@keyframes glow2{
  0%,100%{box-shadow:0 8px 20px rgba(var(--glow-rgb),.5),0 0 0 0 rgba(var(--glow-rgb),.7);transform:scale(1)}
  50%{box-shadow:0 14px 38px rgba(var(--glow-rgb),.95),0 0 0 14px rgba(var(--glow-rgb),0);transform:scale(1.045)}
}

.stepper button.done{background:var(--ink);border-color:var(--ink);color:var(--brand)}
.gstep{display:block;padding:0;overflow:hidden}
.gstep:hover{transform:none}
.g-head{display:grid;grid-template-columns:48px 1fr auto;gap:16px;align-items:center;width:100%;padding:16px 20px;border:0;background:transparent;text-align:left;color:inherit;font:inherit;cursor:pointer}
.g-head h3{margin-bottom:0}
.g-sum{margin:2px 0 0;font-size:13.5px;opacity:.85}
.g-state{font-size:12px;font-weight:800;border-radius:var(--pill);padding:4px 11px;white-space:nowrap}
.g-state.now{background:var(--ink);color:var(--brand)}
.step-3 .g-state.now,.dark-now .g-state.now{background:var(--brand);color:var(--on-brand)}
.g-state.ok{background:var(--ok-bg);color:var(--ok)}
.g-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease)}
.gstep.open .g-body{grid-template-rows:1fr}
.g-in{overflow:hidden}
.g-pad{padding:0 20px 18px 84px;display:grid;gap:12px}
.gstep.open .g-pad > *{animation:fieldIn .45s var(--ease) both}
.gstep.open .g-pad > :nth-child(2){animation-delay:.06s}
.gstep.open .g-pad > :nth-child(3){animation-delay:.12s}
.gstep.open .g-pad > :nth-child(4){animation-delay:.18s}
.gstep.done .num{background:var(--ok)!important;color:#fff!important;animation:pop .45s var(--ease)}
.gstep.done:not(.open){opacity:.9}
.gstep.open{box-shadow:0 0 0 4px var(--brand-tint),var(--sh-md)}
.g-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px}
.g-list li{display:flex;align-items:center;gap:8px;font-size:13.5px;background:var(--bg);border-radius:12px;padding:8px 10px;color:var(--ink)}
.g-list li i{color:var(--muted)}
.g-list li.ok i{color:var(--ok)}
.g-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.g-next{display:flex;gap:12px;align-items:center;background:var(--bg);border-radius:14px;padding:12px 14px;font-size:14px;color:var(--ink)}
.g-next .cal{width:50px;border-radius:10px;overflow:hidden;text-align:center;box-shadow:inset 0 0 0 1px var(--line);background:#fff;flex:none}
.g-next .cal b{display:block;background:var(--danger);color:#fff;font-size:10px;padding:2px 0}
.g-next .cal span{display:block;font-family:var(--font-head);font-weight:800;font-size:18px}
.onb-done{display:flex;align-items:center;gap:14px;background:var(--dark);color:#fff;border-radius:18px;padding:16px 18px;animation:fieldIn .45s var(--ease)}
.onb-done i{font-size:26px;color:var(--brand)}
.onb-done b{display:block;font-family:var(--font-head);color:var(--brand)}
.onb-done .btn{margin-left:auto}
@media (max-width:820px){
  .g-head{grid-template-columns:40px 1fr;padding:14px 16px}
  .g-head .g-state{grid-column:2;justify-self:start}
  .g-pad{padding:0 16px 16px}
  .g-actions .btn{flex:1}
  .onb-done{flex-wrap:wrap}
  .onb-done .btn{margin-left:0;width:100%}
}

/* =========================================================================
   24 · TEMA POR DOUTRINA — Avivalista = amarelo · Conservador = azul-claro
   Tudo que usa a cor da marca troca junto. O amarelo das turmas Avivalista
   (--aviv) e as cores da arte do certificado ficam fixos.
   ========================================================================= */
:root{--aviv:#FFC107;--glow-rgb:255,193,7}
/* Conservador: #A9C1D1 e tons derivados (texto escuro #14232D sobre a cor: contraste 8,6:1; #46657A sobre branco: 6,2:1) */
html[data-dout="cons"]{--brand:#A9C1D1;--brand-hover:#93AEC0;--brand-soft:#BACFDD;--brand-tint:#EAF0F4;--brand-deep:#46657A;--on-brand:#14232D;--glow-rgb:111,143,165}
html[data-dout="cons"] .wordmark{color:#14232D}
/* Onda de cor ao trocar de doutrina: parte do ponto clicado e cobre a tela */
.theme-wipe{position:fixed;inset:0;z-index:120;clip-path:circle(0 at var(--x,50%) var(--y,50%));transition:clip-path .75s cubic-bezier(.7,0,.25,1),opacity .55s ease;display:grid;place-items:center;pointer-events:none}
.theme-wipe.grow{clip-path:circle(160% at var(--x,50%) var(--y,50%))}
.theme-wipe.out{opacity:0}
.tw-msg{display:grid;justify-items:center;gap:10px;text-align:center;color:#0E0E10;padding:24px;opacity:0;transform:translateY(16px) scale(.96);transition:opacity .45s ease .35s,transform .45s var(--ease) .35s}
.theme-wipe.grow .tw-msg{opacity:1;transform:none}
.tw-msg .tw-ic{width:84px;height:84px;border-radius:50%;background:#0E0E10;color:#fff;display:grid;place-items:center;font-size:36px;animation:pop .6s var(--ease) .4s both}
.tw-msg b{font-family:var(--font-head);font-size:30px;font-weight:800;letter-spacing:-.02em}
.tw-msg span{font-size:16px;max-width:34ch}
/* Material ainda não publicado (ex.: Conservador) */
.mat-empty{display:grid;justify-items:center;text-align:center;gap:10px;background:var(--surface);border:2px dashed var(--brand);border-radius:24px;padding:34px 20px;animation:fieldIn .5s var(--ease)}
.mat-empty .ic{width:70px;height:70px;border-radius:50%;background:var(--brand-tint);color:var(--brand-deep);display:grid;place-items:center;font-size:28px}
.mat-empty h3{font-size:20px}
.mat-empty p{margin:0;max-width:52ch;color:var(--text)}
.mat-empty .mat-desc{font-family:'Sora',sans-serif;font-weight:700;font-size:16px;color:var(--brand-deep);background:var(--brand-tint);padding:8px 16px;border-radius:999px}
.mcard.ghost{cursor:default;border-style:dashed;box-shadow:none}
.mcard.ghost .mn{background:var(--brand-tint);color:var(--brand-deep)}
.mcard.ghost h3,.mcard.ghost p{color:var(--muted)}
.mat-badge{display:inline-flex;align-items:center;gap:10px;background:var(--brand);color:var(--on-brand);border-radius:var(--pill);padding:8px 16px;font-family:var(--font-head);font-weight:800;font-size:14px}
.mat-badge a{color:inherit;font-family:var(--font-body);font-weight:600;font-size:12.5px;text-decoration:underline;text-underline-offset:3px;opacity:.8}

/* ============ 25. Meu discipulador (Meu perfil) ============ */
.mentor{display:grid;gap:14px}
.mentor-now{display:flex;align-items:center;gap:14px;border-radius:18px;padding:14px 16px;animation:fieldIn .45s var(--ease)}
.mentor-now.has{background:var(--brand-tint);border:1.5px solid var(--brand)}
.mentor-now.solo{background:var(--surface);border:1.5px dashed var(--line-strong)}
.mentor-now img,.mentor-now .ic{width:56px;height:56px;flex:none;border-radius:50%;object-fit:cover}
.mentor-now img{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--brand)}
.mentor-now .ic{display:grid;place-items:center;background:var(--brand-tint);color:var(--brand-deep);font-size:22px}
.mentor-now small{display:block;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-deep)}
.mentor-now b{display:block;font-family:var(--font-head);font-size:17px;color:var(--ink)}
.mentor-now span{display:block;font-size:13px;color:var(--text)}
.mentor-now .sup{display:flex;gap:6px;align-items:center;margin-top:4px;font-size:12px;font-weight:700;color:var(--brand-deep)}
.mentor-add{display:grid;gap:10px;animation:fieldIn .45s var(--ease)}
.mentor-add .input{text-transform:uppercase}
.mentor-add .check{grid-column:auto;margin:0;align-items:flex-start;font-weight:600;color:var(--ink)}
.mentor-add #mAdd{justify-self:start}
/* Aviso de supervisão: autoridade, bloqueio e resultados anteriores */
.sup-note{display:grid;gap:10px;background:var(--bg);border:1.5px solid var(--line);border-left:5px solid var(--brand);border-radius:16px;padding:14px 16px}
.sup-note h3{display:flex;align-items:center;gap:8px;font-size:16px}
.sup-note h3 i{color:var(--brand-deep)}
.sup-note p{margin:0;font-size:13.5px;color:var(--text)}
.sup-note ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.sup-note li{display:flex;gap:10px;font-size:13px;line-height:1.45;color:var(--text)}
.sup-note li i{flex:none;width:26px;height:26px;border-radius:50%;background:var(--brand-tint);color:var(--brand-deep);display:grid;place-items:center;font-size:11px}
.sup-note li b{color:var(--ink)}
.mentor-links{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13px}
.mentor-links a,.mentor-links button{border:0;background:none;padding:0;color:var(--ink);font:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.mentor-links .warn{color:var(--danger)}
.check small{display:block;color:var(--muted);font-size:12px}
/* Passo 2 dos Primeiros passos: o código é da SALA — evento · minha igreja · sozinho; sempre dá para mudar depois */
.step-2 .check{grid-column:auto;margin:0;align-items:flex-start;font-weight:600}
.via-opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.via{position:relative;display:flex;gap:10px;align-items:flex-start;background:#fff;border:2px solid transparent;border-radius:16px;padding:12px;cursor:pointer;color:var(--ink);transition:border-color .2s,box-shadow .2s,transform .2s var(--ease)}
.via:hover{transform:translateY(-2px)}
.via input{position:absolute;opacity:0;pointer-events:none}
.via .ic{flex:none;width:38px;height:38px;border-radius:50%;background:var(--brand-tint);color:var(--brand-deep);display:grid;place-items:center;transition:background .2s,color .2s}
.via b{display:block;font-family:var(--font-head);font-size:14px;line-height:1.25}
.via small{display:block;margin-top:3px;font-size:12px;line-height:1.4;color:var(--text)}
.via.sel{border-color:var(--ink);box-shadow:0 10px 24px rgba(0,0,0,.14)}
.via.sel .ic{background:var(--ink);color:var(--brand)}
.via:focus-within{outline:3px solid var(--ink);outline-offset:2px}
.via-panel{display:grid;gap:10px;background:#fff;border-radius:16px;padding:14px;color:var(--ink);animation:fieldIn .4s var(--ease)}
.via-panel > .btn{justify-self:start}
.via-help{margin:0;font-size:13.5px;line-height:1.5;color:var(--text)}
.via-panel .fl,.mentor-add .fl,.mentor .fl{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.code-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.room-prev{display:grid;gap:10px;border:1.5px solid var(--line);border-radius:14px;padding:12px;animation:fieldIn .4s var(--ease)}
.room-prev > .btn{justify-self:start}
.rp-head{display:flex;gap:10px;align-items:center}
.rp-head .ic{flex:none;width:42px;height:42px;border-radius:12px;background:var(--ink);color:var(--brand);display:grid;place-items:center;font-size:17px}
.rp-head small,.rp-roles small{display:block;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.rp-head b{display:block;font-family:var(--font-head);font-size:17px;line-height:1.2}
.rp-head span{font-size:12.5px;color:var(--text)}
.rp-roles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}
.rp-roles li{display:flex;gap:9px;align-items:center;background:var(--bg);border-radius:12px;padding:8px 10px;min-width:0}
.rp-roles li.key{background:var(--brand-tint);box-shadow:inset 0 0 0 1.5px var(--brand)}
.rp-roles img{flex:none;width:36px;height:36px;border-radius:50%;object-fit:cover}
.rp-roles b{display:block;font-size:13px;line-height:1.25}
.rp-lock{display:flex;gap:7px;align-items:center;margin:0;font-size:12px;color:var(--muted)}
.pav{flex:none;width:36px;height:36px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--ink)}
.pav img{width:100%;height:100%;object-fit:cover;display:block}
.pav .ini{color:var(--brand);font-family:var(--font-head);font-weight:800;font-size:13px}
/* Igreja local (caminho do evento): já está no sistema · ainda não está · faço depois */
.local{display:grid;gap:10px;border-top:1.5px dashed var(--line-strong);padding-top:12px}
.local-head{display:flex;gap:10px;align-items:flex-start}
.local-head .ic{flex:none;width:36px;height:36px;border-radius:50%;background:var(--brand-tint);color:var(--brand-deep);display:grid;place-items:center}
.local-head b{display:block;font-family:var(--font-head);font-size:15px}
.local-head small{display:block;font-size:12.5px;line-height:1.45;color:var(--text)}
.local-opts{display:flex;flex-wrap:wrap;gap:8px}
.lc-opt{position:relative;border:1.5px solid var(--line-strong);background:#fff;border-radius:var(--pill);padding:7px 14px;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.lc-opt input{position:absolute;opacity:0;pointer-events:none}
.lc-opt:hover{border-color:var(--ink)}
.lc-opt.sel{background:var(--ink);border-color:var(--ink);color:#fff}
.lc-opt:focus-within{outline:3px solid var(--brand);outline-offset:2px}
.local-body{display:grid;gap:10px;animation:fieldIn .35s var(--ease)}
.local-body:empty{display:none}
.lc-res{display:grid;gap:6px}
.lc-res button{display:grid;gap:2px;text-align:left;border:1.5px solid var(--line);background:#fff;border-radius:12px;padding:9px 12px;cursor:pointer;transition:border-color .2s}
.lc-res button:hover{border-color:var(--ink)}
.lc-res b{font-size:13.5px;color:var(--ink)}
.lc-res small{font-size:12px;color:var(--muted)}
.local .rp-head .chip{margin-left:auto;align-self:flex-start}
.lc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.lc-grid > div{display:grid;gap:6px;min-width:0}
.local .fl{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.local .check{grid-column:auto;margin:0;align-items:flex-start;font-weight:600}
/* Igreja aguardando habilitação: linha do tempo até o convite do pastor presidente */
.wait-steps{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.wait-steps li{display:flex;gap:9px;align-items:center;font-size:13px;color:var(--muted)}
.wait-steps li i{width:18px;text-align:center}
.wait-steps li.ok,.wait-steps li.ok i{color:var(--ok)}
.wait-steps li.now{color:var(--ink);font-weight:700}
.wait-steps li.now i{color:var(--pend)}
.mentor > .fl{margin-top:4px}
.pend-note{display:flex;gap:9px;align-items:flex-start;margin:0;background:var(--pend-bg);color:#7C2D12;border-radius:12px;padding:10px 12px;font-size:13px;line-height:1.45}
.pend-note i{color:var(--pend);margin-top:3px}
@media (max-width:820px){.via-opts{grid-template-columns:minmax(0,1fr)}}
.later{display:flex;gap:10px;align-items:flex-start;margin:0;background:var(--ink);color:#fff;border-radius:14px;padding:12px 14px;font-size:13.5px;line-height:1.45}
.later i{color:var(--brand);margin-top:3px}
.later b{color:var(--brand)}
.later a{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media (max-width:520px){.mentor-add #mAdd{justify-self:stretch}.mentor-now{align-items:flex-start}.code-line,.lc-grid{grid-template-columns:minmax(0,1fr)}.via-panel > .btn,.room-prev > .btn{justify-self:stretch}}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal,.dcard,.mlist li,.mlist .ck,.hero h1 .w{opacity:1!important;transform:none!important}}

/* ============ 27. Página Igreja (pastor presidente + supervisores) ============ */
.dd .dd-group{padding:10px 12px 2px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.dd a .badge{margin-left:auto;background:var(--danger);color:#fff;border-radius:var(--pill);font-size:11px;font-weight:800;padding:1px 8px}
.alert-red{display:flex;gap:12px;align-items:flex-start;background:#FDECEA;border:1.5px solid #F8B4AE;border-left:6px solid var(--danger);color:#7F1D1D;border-radius:16px;padding:14px 16px;font-size:13.5px;line-height:1.5}
.alert-red > i{color:var(--danger);font-size:20px;margin-top:2px}
.alert-red b.t{display:block;color:#991B1B;font-family:var(--font-head);font-size:15px;margin-bottom:2px}
.alert-red .btn{margin-top:8px}
.lvl-chip{display:inline-flex;align-items:center;gap:7px;background:var(--ink);color:var(--brand);border-radius:var(--pill);padding:6px 14px;font-size:12.5px;font-weight:800}
.ch-card{display:grid;gap:12px;padding:18px}
.ch-top{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.ch-top .ic{width:46px;height:46px;border-radius:14px;background:var(--ink);color:var(--brand);display:grid;place-items:center;font-size:19px;flex:none}
.ch-top b{display:block;font-family:var(--font-head);font-size:18px}
.ch-top small{color:var(--muted);font-size:13px}
.ch-top .st{margin-left:auto;border-radius:var(--pill);padding:5px 12px;font-size:12px;font-weight:800}
.ch-top .st.ok{background:var(--ok-bg);color:var(--ok)}
.ch-top .st.no{background:#FDECEA;color:var(--danger)}
.ch-team{display:flex;flex-wrap:wrap;gap:8px}
.ch-team .rp-roles{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));flex:1}
.ch-note{display:flex;gap:10px;align-items:flex-start;margin:0;background:var(--brand-tint);border-radius:12px;padding:10px 12px;font-size:13px;line-height:1.5;color:var(--ink)}
.ch-note i{color:var(--brand-deep);margin-top:3px}
.ig-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}
.ig-kpis .kpi{padding:12px 14px}
.ig-kpis .kpi .kv{font-size:24px}
.ig-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:4px 0 8px}
.ig-head h2{font-size:18px}
.ig-head .sp{flex:1}
.ig-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.ig-row{display:grid;grid-template-columns:22px 40px minmax(0,1.6fr) minmax(0,1.3fr) auto;gap:10px;align-items:center;background:var(--surface);border:1.5px solid var(--line);border-radius:14px;padding:8px 12px;animation:fieldIn .35s var(--ease) both}
.ig-row.pedido{border-color:var(--brand)}
.ig-row.you{box-shadow:0 0 0 3px var(--brand-tint)}
.ig-row .sel{width:18px;height:18px;accent-color:var(--ink)}
.ig-av{position:relative;width:40px;height:40px}
.ig-av .pic-r{width:40px;height:40px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 2px #fff,0 0 0 4px var(--brand);display:grid;place-items:center;background:var(--ink)}
.ig-av .pic-r img{width:100%;height:100%;object-fit:cover}
.ig-av .pic-r .ini{color:var(--brand);font-weight:800;font-size:13px}
.ig-av .fl-b{position:absolute;right:-4px;bottom:-3px;width:17px;height:17px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 2px #fff}
.ig-av .fl-b svg{width:100%;height:100%;display:block}
.ig-who{min-width:0}
.ig-who b{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ig-who small{display:block;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ig-st{min-width:0;display:grid;gap:3px}
.ig-pill{justify-self:start;display:inline-flex;align-items:center;gap:6px;border-radius:var(--pill);padding:3px 10px;font-size:11.5px;font-weight:800;white-space:nowrap}
.ig-pill.pedido{background:var(--pend-bg);color:#C2410C}
.ig-pill.semsala{background:var(--brand-tint);color:var(--brand-deep)}
.ig-pill.convidado{background:#E0F2FE;color:#075985}
.ig-pill.emsala{background:var(--ok-bg);color:var(--ok)}
.ig-pill.formado{background:var(--ink);color:var(--brand)}
.ig-st small{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ig-st .ms{display:grid;grid-template-columns:repeat(8,10px);gap:2px}
.ig-st .ms i{height:6px;border-radius:2px;background:var(--line-strong)}
.ig-st .ms i.on{background:var(--brand-deep)}
.ig-acts{display:flex;gap:6px;justify-content:flex-end}
.ig-acts .btn{padding:7px 12px;font-size:12.5px}
.ig-acts .x{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--line-strong);background:#fff;color:var(--muted);display:grid;place-items:center}
.ig-acts .x:hover{border-color:var(--danger);color:var(--danger)}
.ig-mail{color:var(--danger)!important;font-weight:700}
.ig-bulk{position:sticky;bottom:78px;z-index:5;display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--ink);color:#fff;border-radius:16px;padding:10px 14px;margin-top:10px;box-shadow:var(--sh-lg);animation:fieldIn .3s var(--ease)}
.ig-bulk b{color:var(--brand)}
.ig-bulk .sp{flex:1}
.ig-empty{text-align:center;color:var(--muted);padding:22px;border:1.5px dashed var(--line-strong);border-radius:14px;font-size:14px}
.room-opt{display:flex;gap:10px;align-items:center;border:1.5px solid var(--line);border-radius:12px;padding:10px 12px;cursor:pointer}
.room-opt:has(input:checked){border-color:var(--ink);background:var(--bg)}
.room-opt input{accent-color:var(--ink)}
.room-opt small{display:block;color:var(--muted);font-size:12px}
.msg-prev{background:#E7FFDB;border-radius:12px 12px 12px 2px;padding:10px 12px;font-size:13px;line-height:1.5;color:#111;white-space:pre-line}
@media (max-width:820px){
  .ig-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ig-row{grid-template-columns:22px 40px minmax(0,1fr) auto;row-gap:6px}
  .ig-row .ig-st{grid-column:3 / -1;grid-row:2}
  .ig-row .ig-acts{grid-column:4;grid-row:1}
  .ig-bulk{bottom:74px}
}
@media (max-width:520px){.ig-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ig-acts .btn .t{display:none}}
/* Igreja: linhas sem caixa de seleção usam o espaço todo; no celular os contadores viram uma faixa compacta */
.ig-row.nosel{grid-template-columns:40px minmax(0,1.6fr) minmax(0,1.3fr) auto}
@media (max-width:820px){
  .ig-row.nosel{grid-template-columns:40px minmax(0,1fr) auto}
  .ig-row.nosel .ig-st{grid-column:2 / -1;grid-row:2}
  .ig-row.nosel .ig-acts{grid-column:3;grid-row:1}
  .ig-kpis{display:flex;overflow-x:auto;gap:8px;scrollbar-width:none;margin:0 -16px;padding:2px 16px 4px}
  .ig-kpis::-webkit-scrollbar{display:none}
  .ig-kpis .kpi{flex:none;flex-direction:row;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--pill)}
  .ig-kpis .kpi .kl{font-size:10.5px}
  .ig-kpis .kpi .kv{font-size:18px}
  .ig-kpis .kpi .ks{display:none}
}
/* Ação pendente da própria pessoa: a faixa do topo fica amarela e leva direto ao lugar certo */
.nextbar.act{background:var(--brand);color:var(--on-brand)}
.nextbar.act b{color:var(--on-brand);opacity:.75}
.nextbar.act .ic{background:var(--ink);color:var(--brand);animation:beat 1.6s var(--ease) infinite}
.nextbar.act a{color:var(--on-brand);opacity:1;font-weight:800;background:rgba(0,0,0,.08);border-radius:var(--pill);padding:4px 12px}
@media (max-width:820px){.nextbar.act a span{display:inline}}
/* Chegou por um atalho ("Ir agora", aviso do sino): o quadro de destino pisca para a pessoa se achar */
.flash{animation:flashRing 1.2s ease 2}
@keyframes flashRing{0%,100%{box-shadow:0 0 0 0 rgba(var(--glow-rgb),0)}50%{box-shadow:0 0 0 8px rgba(var(--glow-rgb),.55)}}
.ig-row.just{border-color:var(--ok);box-shadow:0 0 0 3px var(--ok-bg)}

/* ============ 28. Sala de Discipulado (desenho "4 AULAS") ============ */
.sl-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 24px;align-items:start;padding:20px 22px}
.sl-name{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.sl-name span{font-size:15px;color:var(--text)}
.sl-name b{font-family:var(--font-head);font-weight:800;font-size:clamp(24px,4vw,32px);text-transform:uppercase;letter-spacing:-.01em}
.sl-type{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-size:12px;font-weight:700;color:var(--muted)}
.sl-code small{display:block;margin-top:14px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink)}
.sl-code .row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px}
.sl-code .row b{font-family:var(--font-head);font-size:24px;letter-spacing:.04em}
.sl-right{display:grid;gap:8px;justify-items:end;text-align:right}
.mat-sel{display:flex;align-items:center;gap:8px;background:var(--acc,var(--brand));border-radius:10px;padding:0 10px;box-shadow:inset 0 0 0 1.5px rgba(0,0,0,.08)}
.mat-sel b{font-size:13px;letter-spacing:.02em}
.mat-sel select{border:0;background:transparent;font:inherit;font-size:13px;font-weight:600;padding:10px 4px;color:var(--ink);cursor:pointer;text-transform:uppercase}
.sl-right small{font-size:12px;color:var(--muted)}
.reg{background:#363435;border-radius:22px;padding:16px;display:grid;gap:12px}
.reg-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:2px 6px}
.reg-head h2{display:flex;align-items:center;gap:10px;color:var(--acc,var(--brand));font-size:18px;text-transform:uppercase;letter-spacing:.02em}
.reg-head .m{margin-left:auto;color:#C9C9CC;font-size:12.5px}
.reg-head .m b{color:#fff}
.reg-box{background:#fff;border-radius:16px;padding:12px 14px}
.reg-box > p{margin:2px 4px 8px;font-size:11.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--ink)}
.reg-list{list-style:none;margin:0;padding:0}
.reg-list li{display:grid;grid-template-columns:28px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:10px 8px;border-top:3px solid var(--line)}
.reg-list li .n{font-weight:700;color:var(--muted)}
.reg-list li .t b{display:block;font-family:var(--font-head);font-size:15px;text-transform:uppercase;letter-spacing:.01em}
.reg-list li .t small{font-size:12px;color:var(--muted)}
.reg-list li.cur{background:var(--acc,var(--brand));border-radius:10px;border-top-color:transparent}
.reg-list li.cur + li{border-top-color:transparent}
.reg-list li.cur .n,.reg-list li.cur .t small{color:var(--ink)}
.reg-cal{width:40px;height:40px;border-radius:10px;border:0;background:transparent;color:#B9B9BE;font-size:22px;display:grid;place-items:center}
.reg-cal:hover{color:var(--ink)}
.cur .reg-cal{color:var(--ink);animation:beat 2s var(--ease) infinite}
.reg-mod{display:inline-flex;align-items:center;gap:12px;min-width:170px;justify-content:space-between;background:#363435;color:#fff;border:2px solid #363435;border-radius:8px;padding:8px 12px;font-weight:800;font-size:13px;letter-spacing:.04em;text-decoration:none}
.reg-mod .ok{color:#4ADE80}
.cur .reg-mod{background:transparent;color:var(--ink);border-color:var(--ink)}
.reg-done{display:flex;align-items:center;gap:10px;background:var(--ok-bg);color:var(--ok);border-radius:12px;padding:10px 14px;font-weight:700;font-size:13.5px}
.sl-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;background:var(--panel);border-radius:18px;padding:12px}
.sl-kpi{background:#fff;border-radius:14px;padding:14px 16px;display:grid;gap:6px;align-content:start}
.sl-kpi h3{display:flex;align-items:center;gap:8px;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink)}
.sl-kpi .big{font-size:22px;color:var(--ink)}
.sl-kpi .bar{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;max-width:260px}
.sl-kpi .bar i{height:20px;border-radius:5px;background:var(--line-strong)}
.sl-kpi .bar i.on{background:var(--acc,var(--brand))}
.sl-kpi small{font-size:11px;text-transform:uppercase;letter-spacing:.02em;color:var(--muted);line-height:1.4}
.hier{display:grid;gap:10px}
.hier h3{font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--ink)}
.hier-row{display:grid;grid-template-columns:1fr 24px 1fr 24px 1fr;align-items:center}
.hier-row .ln{height:2px;background:var(--line-strong)}
.hier-box{background:var(--panel);border:1.5px solid #B9B9BE;border-radius:10px;padding:10px 12px;text-align:center;display:grid;gap:3px}
.hier-box small{font-size:11.5px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
.hier-box span{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:14px}
.hier-box img{width:22px;height:22px;border-radius:50%;object-fit:cover}
.hier .btn{justify-self:end}
.sl-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
/* Janela "Agendar aula" */
.mdl{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:16px;background:rgba(14,14,16,.55);opacity:0;pointer-events:none;transition:opacity .25s}
.mdl.open{opacity:1;pointer-events:auto}
.mdl-box{width:min(760px,100%);max-height:calc(100dvh - 32px);overflow:auto;background:#fff;border-radius:18px;box-shadow:var(--sh-lg);transform:translateY(12px) scale(.98);transition:transform .3s var(--ease)}
.mdl.open .mdl-box{transform:none}
.mdl-head{display:flex;align-items:center;gap:12px;background:#363435;color:#fff;padding:14px 18px;position:sticky;top:0;z-index:1}
.mdl-head .ic{width:38px;height:38px;border-radius:50%;background:var(--acc,var(--brand));color:var(--ink);display:grid;place-items:center;flex:none}
.mdl-head b{display:block;color:var(--acc,var(--brand));font-family:var(--font-head);font-size:17px;text-transform:uppercase}
.mdl-head small{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.02em}
.mdl-head .icon-btn{margin-left:auto;background:transparent;color:#fff}
.mdl-chips{display:flex;flex-wrap:wrap;gap:6px;padding:12px 18px 0}
.mdl-chips span{border-radius:var(--pill);padding:4px 10px;font-size:11.5px;font-weight:700}
.mdl-chips .a{background:var(--ok-bg);color:var(--ok)}
.mdl-chips .b{background:var(--brand-tint);color:var(--brand-deep)}
.mdl-chips .c{background:var(--bg);color:var(--muted)}
.mdl-body{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:14px;padding:14px 18px}
.mdl-body h4{display:flex;align-items:center;gap:6px;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}
.cal-box,.side-box{border:1.5px solid var(--line);border-radius:14px;padding:12px}
.side{display:grid;gap:12px;align-content:start}
.cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.cal-nav b{font-family:var(--font-head);font-size:14px}
.cal-nav button{width:30px;height:30px;border-radius:8px;border:1.5px solid var(--line);background:#fff}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}
.cal-grid .dw{font-size:10px;font-weight:800;color:var(--muted);padding:4px 0}
.cal-grid button{position:relative;height:36px;border-radius:9px;border:1.5px solid transparent;background:transparent;font-size:13px;font-weight:600;color:var(--ink)}
.cal-grid button:disabled{color:#C4C4C8;cursor:default}
.cal-grid button.today{border-color:var(--ink)}
.cal-grid button.sel{background:var(--acc,var(--brand));border-color:var(--ink);font-weight:800}
.cal-grid button.done::after{content:"";position:absolute;left:50%;bottom:4px;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:var(--ok)}
.cal-leg{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;font-size:10.5px;color:var(--muted)}
.cal-leg i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px;vertical-align:middle}
.seg2{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:var(--bg);border-radius:10px;padding:4px;margin-bottom:8px}
.seg2 button{border:0;border-radius:8px;padding:8px;font-weight:700;font-size:13px;background:transparent;color:var(--muted)}
.seg2 button[aria-pressed=true]{background:#363435;color:var(--acc,var(--brand))}
.hrs{display:flex;flex-wrap:wrap;gap:6px}
.hrs button{border:1.5px solid var(--line-strong);background:#fff;border-radius:8px;padding:7px 12px;font-weight:700;font-size:13px}
.hrs button[aria-pressed=true]{background:var(--acc,var(--brand));border-color:var(--ink)}
.sum{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;background:#363435;color:#fff;border-radius:12px;padding:10px 12px}
.sum small{display:block;font-size:9.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--acc,var(--brand))}
.sum b{font-size:12.5px}
.mdl-foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);padding:12px 18px}
.mdl-foot p{margin:0;flex:1;min-width:200px;font-size:11.5px;color:var(--muted)}
@media (max-width:820px){
  .sl-top{grid-template-columns:minmax(0,1fr)}
  .sl-right{justify-items:start;text-align:left}
  .reg-list li{grid-template-columns:24px minmax(0,1fr) auto;row-gap:6px}
  .reg-list li .reg-mod{grid-column:2 / -1;justify-self:start;min-width:0}
  .sl-kpis{grid-template-columns:minmax(0,1fr)}
  .hier-row{grid-template-columns:minmax(0,1fr);gap:6px}
  .hier-row .ln{width:2px;height:14px;justify-self:center}
  .mdl-body{grid-template-columns:minmax(0,1fr)}
  .sum{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ============ 29. Demonstração guiada do fluxo ============ */
.tour{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);z-index:95;width:min(440px,calc(100% - 24px));background:var(--ink);color:#fff;border-radius:18px;padding:14px 16px;box-shadow:0 18px 50px rgba(0,0,0,.35);display:grid;gap:6px;animation:fieldIn .35s var(--ease)}
.tour small{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--brand)}
.tour b{font-family:var(--font-head);font-size:16px}
.tour p{margin:0;font-size:13.5px;line-height:1.5;color:#E4E4E7}
.tour p b{font-family:var(--font-body);font-size:13.5px;color:#fff}
.tour .acts{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:4px}
.tour .btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.tour-hl{position:relative;z-index:2;outline:3px solid var(--brand);outline-offset:4px;border-radius:14px;animation:flashRing 1.4s ease infinite}
@media (max-width:820px){.tour{bottom:84px}}

/* ============ 30. Material oficial no leitor ============ */
.official{display:grid;gap:0}
.official h3{font-family:var(--font-head);font-size:1.12em;color:var(--ink);margin:1.4em 0 .5em;padding-left:12px;border-left:5px solid var(--acc,var(--brand));line-height:1.3}
.official > h3:first-child{margin-top:0}
.official p{margin:0 0 .7em}
.official ul{margin:0 0 .9em;padding-left:1.3em}
.official li{margin:.2em 0}
.official em{color:#5B5B63}
.official p > em:only-child{display:block;background:var(--bg);border-left:4px solid var(--line-strong);border-radius:0 10px 10px 0;padding:8px 12px;font-style:italic}
.official strong{color:var(--ink)}
.present .official h3,.present .official strong{color:var(--brand)}
.present .official em{color:#D4D4D8}
.present .official p > em:only-child{background:#1E1E20;border-left-color:var(--brand)}

/* ============ 31. Material: texto original colado (mesmas regras do sistema do Ariel) ============ */
.office-rich-text{color:#171717;overflow-wrap:anywhere}
.office-rich-text:empty::before{color:#4f4f4f;content:attr(data-placeholder);pointer-events:none}
.office-rich-text p,.office-rich-text h1,.office-rich-text h2,.office-rich-text h3,.office-rich-text blockquote,.office-rich-text ul,.office-rich-text ol,.office-rich-text table{margin-bottom:.85em}
.office-rich-text h1{margin-top:0;padding-top:0}
.office-rich-text ul{list-style:disc;padding-left:1.5rem}
.office-rich-text ol{list-style:decimal;padding-left:1.5rem}
.office-rich-text table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}
.office-rich-text img{height:auto;max-width:100%}
/* leitura: tamanho ajustável (A− / A+) sem perder as proporções originais; celular sem rolagem lateral */
.orig{zoom:var(--z,1);max-width:100%}
.orig *{max-width:100%}
@media (max-width:520px){.orig{zoom:calc(var(--z,1) * .95)}}
/* só leitura no aplicativo: sem selecionar/copiar e sem imprimir */
.orig,.official{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
@media print{body *{visibility:hidden!important}body::before{content:"Impressão desativada: o material do Discípulo 4.0 é para leitura no aplicativo.";visibility:visible;display:block;padding:40px;font:16px sans-serif}}
.present .orig,.present .orig *{color:#fff!important;background:transparent!important}
/* atalhos 1–8 dentro do leitor */
.rd-mods{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap}
.rd-mods button{width:30px;height:30px;border-radius:8px;border:1.5px solid var(--line-strong);background:#fff;font-weight:800;font-size:13px;color:var(--ink)}
.rd-mods button.sel{background:var(--acc,var(--brand));border-color:var(--ink)}
@media (max-width:520px){.rd-mods{margin-left:0;width:100%;justify-content:space-between}}
/* editor do master */
.ed-box{width:min(1000px,100%)}
.ed-bar{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;padding:12px 18px 0}
.ed-bar label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.ed-bar .select{padding:8px 10px;font-size:13px;text-transform:none;letter-spacing:0;font-weight:600}
.ed-view{margin:0 0 0 auto;min-width:280px}
.ed-tools{display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin:10px 18px 0;padding:6px;border:1.5px solid var(--line);border-radius:12px;background:var(--bg)}
.ed-tools button{min-width:34px;height:32px;padding:0 10px;border:0;border-radius:8px;background:#fff;box-shadow:inset 0 0 0 1px var(--line);font-size:13px;font-weight:600;color:var(--ink)}
.ed-tools button:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}
.ed-tools .sp{flex:1}
.ed-area{padding:10px 18px}
.ed-edit{min-height:48vh;max-height:56vh;overflow:auto;border:1.5px solid var(--line-strong);border-radius:12px;padding:16px;outline:none;background:#fff}
.ed-edit:focus{border-color:var(--ink);box-shadow:0 0 0 3px var(--brand-tint)}
.ed-phone{display:grid;place-items:center;padding:6px 0}
.ed-screen{width:375px;max-width:100%;height:56vh;overflow:auto;border:10px solid #1B1B1D;border-radius:30px;padding:16px;background:#fff}
@media (max-width:620px){.ed-view{margin:0;min-width:0;width:100%}}

/* 32 · Material — leitor NA PÁGINA (modelo aprovado 26/09/2026: abre direto, cartões "Todos os módulos" abaixo) */
.reader.inline{position:relative;inset:auto;width:auto;transform:none;transition:none;z-index:auto;margin-top:18px;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--sh-md,0 10px 30px rgba(0,0,0,.08));scroll-margin-top:96px}
.reader.inline[hidden]{display:none}
.reader.inline .rd-body{overflow:visible;flex:none}
.reader.inline.present{background:var(--dark)}
.reader.inline.present .rd-head,.reader.inline.present .rd-foot,.reader.inline.present .rd-tools{background:var(--dark);border-color:rgba(255,255,255,.12)}
.reader.inline.present .rd-head h3,.reader.inline.present .rd-foot .btn-ghost{color:#fff}
.reader.inline.present .rd-head small{color:var(--brand)}
.reader.inline.present .office-rich-text,.reader.inline.present .office-rich-text *{color:#f4f4f5!important;background-color:transparent!important}
.lang-note{display:flex;gap:8px;align-items:center;margin:0;padding:9px 20px;background:#fff4cc;color:#5c4a00;font-size:13.5px;font-weight:600}
.lang-note[hidden]{display:none}
.mcard.on-reader{border-color:var(--ink);box-shadow:0 0 0 3px #fff4cc}
@media (max-width:640px){.lang-note{padding:9px 14px}}
/* Botões com o atributo hidden ficam realmente escondidos (o display do .btn sobrescrevia; ex.: "Editar material" só para master) */
.btn[hidden],.chip[hidden]{display:none!important}

/* 33 · Instalar o app (instalar.html) — site oficial SENDme, aparelho reconhecido, sinais de confiança */
.ins{max-width:880px}
.ins-hero{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--sh-md);padding:26px 26px 20px;margin-top:6px;position:relative;overflow:hidden}
.ins-hero::after{content:"";position:absolute;right:-60px;top:-60px;width:200px;height:200px;border-radius:50%;background:var(--brand-tint);z-index:0}
.ins-hero > *{position:relative;z-index:1}
.ins-org{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.ins-logo{height:30px;width:auto}
.ins-official{display:inline-flex;align-items:center;gap:6px;background:var(--ok-bg);color:var(--ok);border-radius:var(--pill);padding:5px 12px;font-size:12.5px;font-weight:800}
.ins-hero h1{font-size:34px;font-weight:800;letter-spacing:-.04em;line-height:1.12;margin:16px 0 8px;color:var(--ink)}
.ins-hero h1 .hl{background:var(--brand);padding:0 8px;border-radius:8px;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.ins-lead{margin:0;font-size:16px;line-height:1.6;color:var(--text);max-width:640px}
.ins-url{display:flex;align-items:center;gap:12px;margin-top:18px;background:var(--bg);border:1.5px solid var(--line-strong);border-radius:var(--r-md);padding:10px 12px;flex-wrap:wrap}
.ins-url .lk{width:36px;height:36px;border-radius:10px;background:var(--ok);color:#fff;display:grid;place-items:center;flex:none}
.ins-url .u{display:flex;flex-direction:column;min-width:0}
.ins-url .u small{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.ins-url .u b{font-size:16px;color:var(--ink);word-break:break-all}
.ins-url .ok{margin-left:auto;display:inline-flex;align-items:center;gap:6px;color:var(--ok);font-weight:700;font-size:13px}
.ins-tip{margin:10px 0 0;font-size:13px;color:var(--muted)}
.ins-tip i{color:var(--brand-deep);margin-right:4px}
.ins-card{margin-top:16px;padding:20px 22px}
.ins-app{display:flex;gap:16px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line)}
.ins-icon{width:72px;height:72px;border-radius:18px;box-shadow:var(--sh-md);flex:none}
.ins-app-t{display:flex;flex-direction:column;gap:3px;min-width:0}
.ins-app-t > b{font-family:var(--font-head);font-size:20px;color:var(--ink)}
.ins-app-t > span{font-size:13.5px;color:var(--text)}
.ins-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.ins-tags span{background:var(--bg);border-radius:var(--pill);padding:3px 9px;font-size:11.5px;font-weight:700;color:var(--ink)}
.ins-tags i{color:var(--brand-deep);margin-right:3px}
.ins-dev-h{display:flex;align-items:center;gap:12px;margin:16px 0 12px}
.ins-dev-h > i{width:40px;height:40px;border-radius:12px;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:19px;flex:none}
.ins-dev-h small{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.ins-dev-h b{font-family:var(--font-head);font-size:17px;color:var(--ink)}
.ins-dev-h.warn > i{background:var(--brand);color:var(--ink)}
.ins-dev-h.ok > i{background:var(--ok)}
.ins-steps{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ins-steps li{display:grid;grid-template-columns:32px 1fr 40px;gap:12px;align-items:center;background:var(--bg);border-radius:var(--r-md);padding:12px 14px}
.ins-steps .n{width:32px;height:32px;border-radius:50%;background:var(--brand);font-weight:800;display:grid;place-items:center;color:var(--ink)}
.ins-steps .t b{display:block;font-size:15px;color:var(--ink);font-weight:700}
.ins-steps .t b u{text-decoration:none;background:linear-gradient(transparent 60%,var(--brand-tint) 60%)}
.ins-steps .t small{font-size:13px;color:var(--muted)}
.ins-steps .ic{width:40px;height:40px;border-radius:12px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;font-size:17px;color:#0A84FF}
.ins-act{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.ins-act .btn-lg{padding:15px 26px;font-size:16px}
.ins-alt{margin:12px 0 0;font-size:13.5px;color:var(--text)}
.ins-warn{margin:0 0 12px;background:var(--brand-tint);border-radius:var(--r-md);padding:12px 14px;font-size:14px;color:var(--ink)}
.ins-phone{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px;border:1.5px dashed var(--line-strong);border-radius:var(--r-md);padding:12px 14px;font-size:13.5px;color:var(--text)}
.ins-phone > i{font-size:22px;color:var(--brand-deep)}
.ins-phone > span{flex:1;min-width:200px}
.ins-done{display:flex;gap:14px;align-items:flex-start;background:var(--ok-bg);border-radius:var(--r-md);padding:14px 16px}
.ins-done > i{font-size:26px;color:var(--ok);margin-top:2px}
.ins-done b{display:block;color:var(--ink);font-size:15px}
.ins-done span{font-size:13.5px;color:var(--text)}
.ins-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:6px}
.ins-trust > div{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px}
.ins-trust i{width:38px;height:38px;border-radius:11px;background:var(--brand-tint);color:var(--brand-deep);display:grid;place-items:center;font-size:17px;margin-bottom:10px}
.ins-trust b{display:block;font-family:var(--font-head);font-size:15px;color:var(--ink);margin-bottom:4px}
.ins-trust p{margin:0;font-size:13.5px;line-height:1.5;color:var(--text)}
.ins-org-card{margin-top:30px;background:var(--dark);color:#fff;border-radius:var(--r-xl);padding:26px}
.ins-org-card small{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--brand)}
.ins-org-card h2{color:#fff;font-size:24px;margin:6px 0 10px}
.ins-org-card p{margin:0;color:#D4D4D8;line-height:1.6;max-width:680px}
.ins-org-card b{color:#fff}
.ins-org-card blockquote{margin:18px 0 0;padding:14px 16px;border-left:4px solid var(--brand);background:var(--dark-2);border-radius:0 12px 12px 0;font-family:var(--font-head);font-size:17px;color:#fff}
.ins-org-card cite{display:block;margin-top:6px;font-family:var(--font-body);font-style:normal;font-size:13px;color:var(--brand)}
.ins-faq{display:grid;gap:8px;margin-top:6px}
.ins-faq details{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:0 16px}
.ins-faq summary{cursor:pointer;list-style:none;padding:14px 0;font-weight:700;color:var(--ink);display:flex;justify-content:space-between;gap:10px}
.ins-faq summary::-webkit-details-marker{display:none}
.ins-faq summary::after{content:"+";font-size:20px;line-height:1;color:var(--brand-deep)}
.ins-faq details[open] summary::after{content:"–"}
.ins-faq details p{margin:0 0 14px;font-size:14px;line-height:1.6;color:var(--text)}
.ins-ask{width:min(380px,100%);padding:20px}
.ins-ask-in{display:flex;gap:14px;align-items:center}
.ins-ask-in img{width:52px;height:52px;border-radius:12px}
.ins-ask-in b{display:block;font-size:17px;color:var(--ink)}
.ins-ask-in span{display:block;font-size:14px;color:var(--text)}
.ins-ask-in small{font-size:12.5px;color:var(--muted)}
.ins-ask-b{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
@media (max-width:760px){.ins-trust{grid-template-columns:1fr 1fr}}
@media (max-width:520px){
  .ins-hero{padding:20px 16px 16px}
  .ins-hero h1{font-size:27px}
  .ins-card{padding:16px}
  .ins-icon{width:60px;height:60px;border-radius:15px}
  .ins-trust{grid-template-columns:1fr}
  .ins-url .ok{margin-left:48px}
  .ins-act .btn{flex:1;justify-content:center}
  .ins-org-card{padding:20px 16px}
}

/* 33b · Instalar o app — movimento e segurança (cadeado, verificação, selo SSL, privacidade/LGPD) */
.ins-hero-grid{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center}
.ins-hero h1 .w{display:inline-block;opacity:0;transform:translateY(22px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.ins-hero h1 .w:nth-child(2){transition-delay:.06s}.ins-hero h1 .w:nth-child(3){transition-delay:.12s}.ins-hero h1 .w:nth-child(4){transition-delay:.18s}.ins-hero h1 .w:nth-child(5){transition-delay:.24s}
.loaded .ins-hero h1 .w{opacity:1;transform:none}
.ins-lock{position:relative;width:104px;height:104px;border-radius:50%;background:var(--ink);display:grid;place-items:center;flex:none;transition:background .4s}
.ins-lock > i{font-size:40px;color:var(--brand);position:relative;z-index:1}
.ins-lock .ring{position:absolute;inset:0;border-radius:50%;border:2px solid var(--brand);opacity:0}
.ins-lock.locked{background:var(--ok)}
.ins-lock.locked > i{color:#fff;animation:lockin .6s var(--ease)}
.ins-lock.locked .ring{border-color:var(--ok);animation:ringout 2.4s ease-out infinite}
.ins-lock.locked .ring.r2{animation-delay:1.2s}
.ins-lock.bad{background:var(--danger)}
.ins-lock.bad > i{color:#fff;animation:shake .5s}
@keyframes lockin{0%{transform:scale(1)}40%{transform:scale(1.25) rotate(-8deg)}100%{transform:scale(1)}}
@keyframes ringout{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.6);opacity:0}}
@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.ins-url .lk{animation:pulse-ok 2.2s infinite}
.ins-scan{margin-top:14px;border:1.5px solid var(--line);border-radius:var(--r-md);padding:12px 14px;background:#fff}
.ins-scan-h{display:flex;align-items:center;gap:8px;font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink)}
.ins-scan-h > i{color:var(--ok)}
.ins-scan-h span{margin-left:auto;font-weight:700;text-transform:none;letter-spacing:0;color:var(--muted)}
.ins-scan ul{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:6px}
.ins-scan li{display:grid;grid-template-columns:26px auto 1fr;gap:10px;align-items:center;font-size:14px;color:var(--muted);transition:color .3s}
.ins-scan li .st{width:26px;height:26px;border-radius:50%;background:var(--bg);display:grid;place-items:center;font-size:12px;color:var(--muted)}
.ins-scan li small{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ins-scan li.ok{color:var(--ink)}
.ins-scan li.ok .st{background:var(--ok);color:#fff;animation:pop .35s var(--ease)}
.ins-scan li.bad .st{background:var(--danger);color:#fff;animation:pop .35s var(--ease)}
.ins-safe{margin-top:10px;display:flex;align-items:center;gap:8px;background:var(--ok-bg);color:var(--ok);border-radius:var(--r-sm);padding:9px 12px;font-weight:800;font-size:14px;animation:pop .4s var(--ease)}
.ins-safe.bad{background:#FEE2E2;color:var(--danger)}
.ins-safe[hidden]{display:none}
.ins-icon{animation:float 4s ease-in-out infinite}
.ins-steps li{opacity:0;animation:fieldIn .45s var(--ease) forwards;animation-delay:calc(var(--i) * .09s)}
.ins-dev-h.bad > i{background:var(--danger)}
.ins-bad{margin:0 0 12px;background:#FEE2E2;border-radius:var(--r-md);padding:12px 14px;font-size:14px;color:#7F1D1D}
.ins-host{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);padding:20px;margin-top:6px}
.ins-seal{position:relative;width:128px;height:128px;border-radius:50%;background:var(--ink);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;overflow:hidden;box-shadow:0 0 0 6px var(--brand),0 0 0 8px var(--ink);flex:none}
.ins-seal > i{color:var(--brand);font-size:22px}
.ins-seal b{font-family:var(--font-mark);font-size:34px;letter-spacing:.04em;line-height:1}
.ins-seal small{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--brand)}
.ins-seal .sh{position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);animation:shine 3.2s ease-in-out infinite}
@keyframes shine{0%,55%{left:-60%}100%{left:130%}}
.ins-badges{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ins-badges li{display:flex;gap:10px;align-items:center;background:var(--bg);border-radius:var(--r-md);padding:10px 12px;transition:transform .25s var(--ease),box-shadow .25s}
.ins-badges li:hover{transform:translateY(-2px);box-shadow:var(--sh-md)}
.ins-badges li > i{width:34px;height:34px;border-radius:10px;background:var(--ok-bg);color:var(--ok);display:grid;place-items:center;flex:none}
.ins-badges b{display:block;font-size:14px;color:var(--ink)}
.ins-badges small{font-size:12px;color:var(--muted)}
.ins-host.in .ins-badges li{animation:fieldIn .45s var(--ease) both;animation-delay:calc(.15s + var(--i) * .08s)}
.ins-priv{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:6px}
.ins-who{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);padding:20px}
.ins-who .you{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.ins-who .you img{width:44px;height:44px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px var(--brand)}
.ins-who .you b{font-family:var(--font-head);font-size:16px}
.ins-who ul{list-style:none;margin:0 0 0 21px;padding:0 0 0 20px;border-left:2px dashed var(--line-strong);display:grid;gap:8px}
.ins-who li{position:relative;display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;border-radius:var(--r-md);padding:9px 10px;background:var(--bg);opacity:.25;transition:opacity .4s var(--ease)}
.ins-who li .ln{position:absolute;left:-21px;top:50%;width:20px;height:2px;background:var(--ok);transform-origin:left;transform:scaleX(0);transition:transform .4s var(--ease)}
.ins-who li > i{width:34px;height:34px;border-radius:10px;background:#fff;display:grid;place-items:center;color:var(--ink)}
.ins-who li b{display:block;font-size:14px;color:var(--ink)}
.ins-who li small{font-size:12px;color:var(--muted)}
.ins-who li em{font-style:normal;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12px;background:var(--ok);color:#fff}
.ins-who li.no{background:#fff;border:1.5px dashed var(--line-strong)}
.ins-who li.no .ln{background:var(--line-strong)}
.ins-who li.no > i{color:var(--muted)}
.ins-who li.no em{background:var(--ink)}
.ins-who.in li{opacity:1;transition-delay:calc(.2s + var(--i) * .25s)}
.ins-who.in li .ln{transform:scaleX(1);transition-delay:calc(.2s + var(--i) * .25s)}
.ins-who.in li.no em{animation:shake .5s 1.4s}
.ins-lgpd{background:var(--dark);color:#fff;border-radius:var(--r-xl);padding:20px}
.ins-lgpd .tag{display:inline-flex;gap:6px;align-items:center;background:var(--brand);color:var(--ink);border-radius:var(--pill);padding:4px 11px;font-size:12px;font-weight:800}
.ins-lgpd h3{color:#fff;font-size:19px;margin:10px 0 10px}
.ins-lgpd ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.ins-lgpd li{display:grid;grid-template-columns:22px 1fr;gap:8px;font-size:14px;line-height:1.5;color:#D4D4D8}
.ins-lgpd li i{color:var(--brand);margin-top:3px}
.ins-lgpd li b{color:#fff}
.ins-links{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:14px;padding-top:12px;border-top:1px solid var(--dark-line)}
.ins-links a{color:var(--brand);font-size:13px;font-weight:700}
.ins-trust{grid-template-columns:repeat(2,1fr)}
.ins-trust > div{transition:transform .25s var(--ease),box-shadow .25s}
.ins-trust > div:hover{transform:translateY(-3px);box-shadow:var(--sh-md)}
.ins-foot{margin:22px 0 0;text-align:center;font-size:12.5px;color:var(--muted)}
.ins-foot i{color:var(--ok);margin-right:4px}
@media (max-width:760px){.ins-priv{grid-template-columns:1fr}.ins-host{grid-template-columns:1fr;justify-items:center}.ins-badges{width:100%}}
@media (max-width:520px){
  .ins-hero-grid{grid-template-columns:1fr;position:relative}
  .ins-hero-grid h1{padding-right:84px}
  .ins-lock{width:76px;height:76px;position:absolute;top:0;right:0}
  .ins-lock > i{font-size:30px}
  .ins-badges{grid-template-columns:1fr}
  .ins-trust{grid-template-columns:1fr}
  .ins-scan li{grid-template-columns:26px 1fr}
  .ins-scan li small{grid-column:2}
}
@media (prefers-reduced-motion:reduce){.ins-hero h1 .w,.ins-steps li,.ins-who li{opacity:1!important;transform:none!important}.ins-who li .ln{transform:none!important}}
.ins-hero.fake .ins-official{display:none}
.ins-hero.fake .ins-url{border-color:var(--danger);background:#FEF2F2}
.ins-hero.fake .ins-url .lk{background:var(--danger);animation:none}
.ins-hero.fake .ins-url .ok{display:none}

/* 34 · "Gostaria de ser discipulado por alguém da rede" (quem segue sozinho) — substitui a fila de espera */
.check.want-mentor{display:flex;gap:10px;align-items:flex-start;margin:12px 0;padding:12px 14px;border:1.5px solid var(--line-strong);border-radius:var(--r-md);background:#fff;cursor:pointer}
.check.want-mentor input{margin-top:3px;accent-color:var(--ink);width:18px;height:18px;flex:none}
.check.want-mentor b{display:block;font-size:14.5px;color:var(--ink)}
.check.want-mentor small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.check.want-mentor:has(input:checked){border-color:var(--ink);background:var(--brand-tint)}

/* 35 · Simulação ("caixa de areia"): barra "Ver simulação", cartão vermelho, rede vazia */
.simbar{background:var(--brand-tint);border-bottom:1px solid var(--line)}
.simbar .wrap{display:flex;align-items:center;gap:10px;min-height:48px;padding-top:7px;padding-bottom:7px}
.simbar .wrap > i{color:var(--brand-deep);font-size:16px}
.simbar b{color:var(--ink);font-size:14px}
.simbar .t{color:var(--text);font-size:13.5px}
.simbar .simbar-btn{margin-left:auto;white-space:nowrap;flex:none}
.simbar.fresh{background:var(--brand)}
.simbar.fresh .wrap > i{color:var(--ink)}
.simbar.fresh .t{color:var(--ink)}
.simbar.on{background:var(--ink);border-bottom-color:var(--ink)}
.simbar.on b{color:var(--brand)}
.simbar.on .t{color:#D4D4D8}
.simbar.on .simbar-btn{background:#fff;color:var(--ink);border:0}
.simbar .dot{width:9px;height:9px;border-radius:50%;background:var(--brand);flex:none;animation:simdot 1.8s ease-in-out infinite}
@keyframes simdot{0%,100%{box-shadow:0 0 0 0 rgba(255,193,7,.6)}50%{box-shadow:0 0 0 7px rgba(255,193,7,0)}}
@media (max-width:640px){.simbar .t{display:none}.simbar b{font-size:13px}}
.stpill.alert{background:var(--danger);color:#fff}
.stpill.new{background:#fff;color:#46464D;box-shadow:inset 0 0 0 2px #A1A1AA}
.dcard.alert{border-color:var(--danger);box-shadow:0 0 0 3px rgba(220,38,38,.14)}
.dcard.alert::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--danger);z-index:1}
.dcard.alert .bottom{background:#FEE2E2}
.dcard.alert .reason{color:#991B1B;font-weight:800}
.dcard.in.alert:hover{border-color:var(--danger)}
.kpis.k5{grid-template-columns:repeat(5,1fr)}
.kpi-alert .kl i{color:var(--danger)}
.kpi-alert[aria-pressed=true]{background:var(--danger);border-color:var(--danger)}
@media (max-width:980px){.kpis.k5{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.kpis.k5{grid-template-columns:1fr 1fr}.kpis.k5 .kpi-alert{grid-column:1/-1}}
.net-empty{text-align:center;padding:30px 20px 34px;border:2px dashed var(--line-strong);border-radius:var(--r-xl);background:var(--bg)}
.net-empty .ne-pics{display:flex;justify-content:center;margin-bottom:14px}
.net-empty .ne-pics span{width:46px;height:46px;border-radius:50%;overflow:hidden;border:3px solid #fff;margin-left:-10px;box-shadow:var(--sh-md);display:grid;place-items:center;background:var(--brand);font-weight:800;filter:grayscale(1);opacity:.7}
.net-empty .ne-pics span:first-child{margin-left:0}
.net-empty .ne-pics img{width:100%;height:100%;object-fit:cover}
.net-empty h3{font-family:var(--font-head);font-size:22px;color:var(--ink);margin:0 0 6px}
.net-empty p{margin:0 auto;max-width:560px;color:var(--text);line-height:1.6}
.net-empty .ne-acts{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}

/* 36 · Perfil da igreja (igreja-perfil.html · simulação) — público, com dados sensíveis fechados */
.chp{max-width:1000px}
.chp-hero{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--sh-md);margin-top:6px}
.chp-cover{height:120px;background:#1F5F4A;position:relative;overflow:hidden}
.chp-cover span{position:absolute;border-radius:50%;border:2px solid rgba(242,193,78,.35)}
.chp-cover span:nth-child(1){width:260px;height:260px;right:-60px;top:-120px}
.chp-cover span:nth-child(2){width:160px;height:160px;right:140px;top:30px;border-color:rgba(242,193,78,.2)}
.chp-cover span:nth-child(3){width:90px;height:90px;left:40%;top:-30px;border-color:rgba(255,255,255,.15)}
.chp-id{display:flex;align-items:flex-end;gap:16px;padding:0 22px;margin-top:-46px;flex-wrap:wrap}
.chp-logo{border-radius:50%;box-shadow:0 0 0 5px #fff,var(--sh-md);display:inline-flex;flex:none;animation:pop .6s var(--ease)}
.chp-name{flex:1;min-width:220px;padding-bottom:4px}
.chp-name h1{font-size:28px;font-weight:800;letter-spacing:-.03em;color:var(--ink);margin:4px 0 2px}
.chp-name p{margin:0;color:var(--text);display:flex;align-items:center;gap:8px}
.chp-name .fl svg,.chp-mem .fl svg,.chp-net .fl svg{width:20px;height:14px;border-radius:2px;display:block}
.chp-ver{display:inline-flex;align-items:center;gap:6px;background:var(--ok-bg);color:var(--ok);border-radius:var(--pill);padding:3px 10px;font-size:12px;font-weight:800;margin-top:52px}
.chp-acts{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:6px}
.chp-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:16px 22px 20px}
.chp-pres{display:flex;align-items:center;gap:10px;margin-right:auto}
.chp-pres small{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.chp-pres b{color:var(--ink)}
.chip-i{display:inline-flex;align-items:center;gap:6px;background:var(--bg);border-radius:var(--pill);padding:6px 12px;font-size:12.5px;font-weight:700;color:var(--ink)}
.chip-i i{color:var(--brand-deep)}
.chp-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px}
.chp-stats > div{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:16px;display:flex;flex-direction:column;gap:4px}
.chp-stats b{font-family:var(--font-head);font-size:30px;font-weight:800;color:var(--ink);letter-spacing:-.03em;line-height:1}
.chp-stats span{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.chp-priv{display:flex;gap:14px;align-items:flex-start;margin-top:14px;background:var(--ink);color:#fff;border-radius:var(--r-lg);padding:16px 18px}
.chp-priv .ic{width:40px;height:40px;border-radius:12px;background:var(--brand);color:var(--ink);display:grid;place-items:center;flex:none;font-size:18px}
.chp-priv h2{color:#fff;font-size:17px;margin:0 0 4px}
.chp-priv p{margin:0;color:#D4D4D8;font-size:14px;line-height:1.55}
.chp-priv b{color:#fff}
.lk{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;color:var(--muted);background:var(--bg);border-radius:var(--pill);padding:4px 10px}
.lk i{color:var(--ink);font-size:10px}
.chp-rooms{display:grid;gap:10px;margin-top:6px}
.chp-room{display:grid;grid-template-columns:1.2fr 1.2fr 1fr auto;gap:14px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:12px 16px}
.chp-room .rt b{display:block;color:var(--ink)}
.chp-room small{font-size:12px;color:var(--muted)}
.chp-room .rd{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink);font-weight:600}
.chp-room .rd small{display:block;font-weight:700;text-transform:uppercase;font-size:10.5px;letter-spacing:.05em}
.segs8{display:flex;gap:3px;margin-bottom:4px}
.segs8 i{flex:1;height:7px;border-radius:3px;background:var(--line-strong)}
.segs8 i.on{background:var(--brand)}
.chp-members{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:6px}
.chp-mem,.chp-more{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:14px 10px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;transition:transform .25s var(--ease),box-shadow .25s}
.chp-mem:hover{transform:translateY(-3px);box-shadow:var(--sh-md)}
.chp-mem .ph{position:relative;width:62px;height:62px;margin-bottom:6px}
.chp-mem .ph img,.chp-mem .ph .ini{width:62px;height:62px;border-radius:50%;object-fit:cover;display:grid;place-items:center;background:var(--brand);font-weight:800;font-size:20px;color:var(--ink)}
.chp-mem .ph .fl{position:absolute;right:-4px;bottom:0;box-shadow:0 0 0 2px #fff;border-radius:3px}
.chp-mem b{color:var(--ink);font-size:14px}
.chp-mem > small{font-size:12px;color:var(--muted)}
.chp-mem .st{font-size:11px;font-weight:800;background:var(--brand-tint);color:var(--brand-deep);border-radius:var(--pill);padding:2px 8px;margin:4px 0}
.chp-more{justify-content:center;background:var(--bg);border-style:dashed}
.chp-more b{font-family:var(--font-head);font-size:26px;color:var(--ink)}
.chp-more span{font-weight:700;color:var(--ink)}
.chp-more small{font-size:11.5px;color:var(--muted);margin-top:6px}
.chp-net{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.chp-net a{display:inline-flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--pill);padding:7px 12px;font-size:13px;font-weight:600;color:var(--ink);text-decoration:none;transition:border-color .2s,transform .2s}
.chp-net a:hover{border-color:var(--ink);transform:translateY(-2px)}
.ch-logo{display:block}
@media (max-width:760px){.chp-stats{grid-template-columns:1fr 1fr}.chp-room{grid-template-columns:1fr 1fr}.chp-room .lk{grid-column:1/-1;justify-self:start}}
@media (max-width:520px){.chp-id{padding:0 16px}.chp-name{flex-basis:100%;min-width:0}.chp-meta{padding:14px 16px 18px}.chp-name h1{font-size:23px}.chp-ver{margin-top:8px}.chp-acts .btn{flex:1;justify-content:center}.chp-room{grid-template-columns:1fr}.chp-members{grid-template-columns:1fr 1fr}}

/* 37 · Linhas de cartões com navegação (Rede): setas, contador, barra, arrastar e "Ver todos" */
.row-box .row-track{display:flex;overflow-x:auto;scroll-snap-type:x proximity;gap:20px;padding:6px 4px 16px;scrollbar-width:none;cursor:grab;overscroll-behavior-x:contain}
.row-box .row-track::-webkit-scrollbar{display:none}
.row-box .row-track > *{flex:0 0 290px;scroll-snap-align:start}
.row-box .row-track > .empty{flex-basis:100%}
.row-box .row-track.dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.row-box .row-track.dragging .dcard{pointer-events:none}
.row-box.all .row-track{display:grid;grid-template-columns:repeat(auto-fill,minmax(262px,1fr));overflow:visible;cursor:default}
.row-foot{display:flex;align-items:center;gap:10px;margin:2px 0 0;padding:0 4px}
.row-foot[hidden]{display:none}
.rf-btn{width:38px;height:38px;border-radius:50%;border:1.5px solid var(--ink);background:#fff;color:var(--ink);display:grid;place-items:center;flex:none;transition:background .2s,color .2s,transform .2s}
.rf-btn:hover:not(:disabled){background:var(--ink);color:#fff;transform:scale(1.06)}
.rf-btn:disabled{opacity:.3;cursor:default}
.rf-count{font-weight:800;font-size:13px;color:var(--ink);min-width:62px;text-align:center;white-space:nowrap}
.rf-bar{flex:1;height:6px;border-radius:6px;background:var(--line-strong);position:relative;overflow:hidden;min-width:40px}
.rf-bar i{position:absolute;top:0;bottom:0;width:calc(var(--w,1) * 100%);left:calc(var(--p,0) * (100% - var(--w,1) * 100%));background:var(--brand);border-radius:6px;transition:left .15s linear}
.rf-all{border:0;background:var(--bg);border-radius:var(--pill);padding:8px 12px;font-size:12.5px;font-weight:800;color:var(--ink);white-space:nowrap;display:flex;align-items:center;gap:6px}
.rf-all:hover{background:var(--ink);color:#fff}
@media (max-width:640px){
  .row-box .row-track{margin:0 -10px 0 -30px;padding:4px 10px 14px 30px;scroll-padding-left:30px;scroll-snap-type:x mandatory;gap:12px}
  .row-box .row-track > *{flex:0 0 calc(100% - 22px);max-width:330px}
  .row-box.all .row-track{grid-template-columns:1fr;margin:0;padding:4px 0 14px}
  .row-foot{gap:8px}
  .rf-all{padding:8px 10px}
}

/* 38 · Idiomas: nativo (qualquer um) + idioma do discipulado (só PT, ES, EN) */
.dcard .native{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:#46464D;margin-top:4px}
.dcard .native i{color:var(--brand-deep)}
.dcard .native b{color:#111}
.lang-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:6px}
.fhelp{display:block;font-size:12.5px;color:var(--muted);margin-top:6px}
.fhelp i{color:var(--brand-deep)}
.study-opts{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.study-opt{display:flex;align-items:center;gap:8px;border:1.5px solid var(--line-strong);border-radius:var(--pill);padding:8px 14px;font-weight:700;color:var(--ink);cursor:pointer;transition:border-color .2s,background .2s}
.study-opt input{position:absolute;opacity:0;pointer-events:none}
.study-opt .fl-ic{width:22px;height:15px;border-radius:3px;overflow:hidden}
.study-opt .fl-ic svg{display:block;width:100%;height:100%}
.study-opt.on{border-color:var(--ink);background:var(--brand-tint)}
.study-opt:focus-within{box-shadow:0 0 0 3px rgba(14,14,16,.15)}
@media (max-width:640px){.lang-grid{grid-template-columns:1fr}}
.lang-grid .input{width:100%;box-sizing:border-box}

/* 39 · Checklist de materiais (formado / estudando / não cursou + leciona) */
.matlist{list-style:none;margin:0 0 6px;padding:0;display:grid;gap:8px}
.matlist li{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;border:1.5px solid var(--line);border-radius:14px;padding:9px 12px;background:#fff}
.matlist .ck{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:14px;background:var(--bg);color:var(--muted)}
.matlist .ck b{font-size:11.5px;color:var(--ink)}
.matlist .tx b{display:block;font-size:14px;color:var(--ink);line-height:1.3}
.matlist .tx small{font-size:12px;color:var(--muted)}
.matlist li.ml-formado{border-color:var(--acc-strong)}
.matlist li.ml-formado .ck{background:var(--acc);color:#161200}
.matlist li.ml-estudando .ck{background:#fff;box-shadow:inset 0 0 0 3px var(--acc)}
.matlist li.ml-nao{border-style:dashed}
.matlist li.ml-nao .tx b{color:var(--muted);font-weight:600}
.matlist .tch{display:inline-flex;align-items:center;gap:5px;background:var(--ink);color:#fff;border-radius:var(--pill);padding:4px 10px;font-size:11.5px;font-weight:800;white-space:nowrap}
.matlist .tch i{color:var(--acc)}
.my-mats{margin-top:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:14px}
.my-mats .mm-t{display:flex;align-items:center;gap:8px;color:#fff;margin-bottom:10px}
.my-mats .mm-t i{color:var(--brand)}
.my-mats .mm-h{display:block;margin-top:6px;font-size:12.5px;color:#C9C9CE}
.tch-tg{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:800;color:var(--ink);cursor:pointer;white-space:nowrap}
.tch-tg input{width:18px;height:18px;accent-color:var(--ink)}
.tch-no{font-size:11.5px;font-weight:700;color:var(--muted);white-space:nowrap}
@media (max-width:520px){.matlist li{grid-template-columns:32px 1fr}.matlist .tch,.tch-tg,.tch-no{grid-column:2;justify-self:start}}

/* 40 · Habilitação 1/2/3 (conclusão do material · certificação · habilitado como discipulador) */
.hablist{list-style:none;margin:0 0 6px;padding:0;display:grid;gap:0;position:relative}
.hablist li{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;padding:8px 0;position:relative}
.hablist li:not(:last-child)::after{content:"";position:absolute;left:16px;top:42px;bottom:-6px;width:2px;background:var(--line-strong)}
.hablist li.done:not(:last-child)::after{background:var(--brand)}
.hablist .n{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:14px;background:#fff;border:2px solid var(--line-strong);color:var(--muted);position:relative;z-index:1}
.hablist li.done .n{background:var(--brand);border-color:var(--brand);color:#161200}
.hablist li.now .n{border-color:var(--ink);color:var(--ink);box-shadow:0 0 0 4px var(--brand-tint)}
.hablist .tx b{display:block;font-size:14px;color:var(--ink)}
.hablist li.todo .tx b{color:var(--muted);font-weight:600}
.hablist .tx small{display:block;font-size:12.5px;color:var(--muted);line-height:1.45}
.hablist .hab-go{margin-top:8px}

/* 41 · Avisos da aula (Agenda): alerta automático no app + lembrete no WhatsApp com 1 toque */
.avisos{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-xl);padding:18px;margin:4px 0 18px;box-shadow:var(--sh-sm)}
.av-head{display:flex;gap:12px;align-items:flex-start}
.av-head .ic{width:42px;height:42px;border-radius:12px;background:var(--brand);color:var(--ink);display:grid;place-items:center;font-size:18px;flex:none;animation:bell 2.4s ease-in-out 1s 2}
.av-head h2{font-size:19px;margin:0}
.av-head p{margin:2px 0 0;font-size:13.5px;color:var(--text)}
.av-rules{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}
.av-rules li{display:grid;grid-template-columns:30px 1fr auto auto;gap:10px;align-items:center;background:var(--bg);border-radius:14px;padding:10px 12px}
.av-rules li > i{font-size:18px;color:var(--brand-deep);text-align:center}
.av-rules li > i.fa-whatsapp{color:#1FA855}
.av-rules b{display:block;font-size:14px;color:var(--ink)}
.av-rules small{display:block;font-size:12px;color:var(--muted);line-height:1.4}
.av-rules em{font-style:normal;font-size:11px;font-weight:800;border-radius:var(--pill);padding:3px 9px;white-space:nowrap}
.av-rules em.auto{background:var(--ok-bg);color:var(--ok)}
.av-rules em.tap{background:#DCF8C6;color:#0F6E36}
.av-rules li:last-child{grid-template-columns:30px 1fr auto}
.av-sel{padding:6px 8px;font-weight:800;min-width:84px}
.av-sw{position:relative;display:inline-block;width:46px;height:26px}
.av-sw input{opacity:0;width:0;height:0;position:absolute}
.av-sw span{position:absolute;inset:0;border-radius:26px;background:var(--line-strong);transition:background .2s;cursor:pointer}
.av-sw span::after{content:"";position:absolute;left:3px;top:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s var(--ease);box-shadow:0 1px 3px rgba(0,0,0,.2)}
.av-sw input:checked + span{background:var(--ok)}
.av-sw input:checked + span::after{transform:translateX(20px)}
.av-sw input:focus-visible + span{box-shadow:0 0 0 3px rgba(14,14,16,.2)}
.av-phone{background:#1E1E20;border-radius:22px;padding:14px;display:flex;flex-direction:column;gap:8px}
.av-ph-t{color:rgba(255,255,255,.6);font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.av-ph-n{color:rgba(255,255,255,.5);font-size:11.5px;line-height:1.4}
.lm-push{display:flex;gap:10px;background:rgba(255,255,255,.1);border-radius:14px;padding:10px 12px;font-size:13px;line-height:1.4;color:#fff;animation:fieldIn .5s var(--ease) both}
.lm-push:nth-of-type(2){animation-delay:.15s}.lm-push:nth-of-type(3){animation-delay:.3s}
.lm-push img{width:30px;height:30px;border-radius:8px;flex:none}
.lm-push small{display:block;color:rgba(255,255,255,.55);font-size:11px}
.lm-push b{display:block}
.btn-wa{background:#1FA855;color:#fff;border-color:#1FA855}
.btn-wa:hover{background:#178A45;border-color:#178A45;color:#fff}
.lm-when{margin:10px 0 0;font-size:12.5px;color:var(--muted);display:flex;gap:6px;align-items:flex-start}
.lm-when i{color:var(--brand-deep);margin-top:3px}
.lm-box{width:min(820px,100%)}
.lm-body{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px 18px}
.lm-prev small,.lm-or{display:block;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:6px}
.lm-prev .msg-prev u{color:#0B6BCB}
.lm-group{width:100%;justify-content:center}
.lm-or{margin:12px 0 6px}
.lm-list ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.lm-list li{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:6px 8px}
.lm-list li .pic{width:36px;height:36px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--brand);font-weight:800;font-size:13px}
.lm-list li .pic img{width:100%;height:100%;object-fit:cover}
.lm-list li b{font-size:14px;color:var(--ink)}
.lm-list li.sent{background:var(--ok-bg);border-color:transparent}
.lm-more{display:block;margin-top:8px;font-size:12.5px;color:var(--muted)}
@media (max-width:860px){.avisos{grid-template-columns:1fr}.lm-body{grid-template-columns:1fr}}
@media (max-width:520px){.av-rules li{grid-template-columns:26px 1fr}.av-rules li > .av-sel,.av-rules li > .av-sw,.av-rules li > em{grid-column:2;justify-self:start}}

/* 42 · Igreja: presidência como cargo com período + transferência (a igreja continua inteira; o mérito é permanente) */
.terms{border-top:1px solid var(--line);margin-top:14px;padding-top:12px;display:grid;gap:10px}
.terms-t{display:flex;align-items:center;gap:8px;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--ink)}
.terms-t i{color:var(--brand-deep)}
.terms ol{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.terms li{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;background:var(--bg);border-radius:12px;padding:8px 10px}
.terms li.now{background:var(--brand-tint)}
.terms li b{color:var(--ink);font-size:14px}
.terms li small{display:block;font-size:12px;color:var(--muted)}
.terms li small b{font-size:12px}
.terms li em{font-style:normal;font-size:11px;font-weight:800;border-radius:var(--pill);padding:3px 9px;background:var(--ink);color:#fff;white-space:nowrap}
.terms li em.lk{background:#fff;color:var(--ink);border:1px solid var(--line-strong)}
.trf-go{justify-self:start}
.linkbtn{border:0;background:none;padding:0;color:var(--muted);font-size:13px;font-weight:600;text-align:left;cursor:pointer;display:flex;gap:6px;align-items:center}
.linkbtn:hover{color:var(--ink);text-decoration:underline}
.trf-pend,.trf-done{display:flex;gap:10px;align-items:center;flex-wrap:wrap;border-radius:12px;padding:10px 12px;font-size:13.5px}
.trf-pend{background:var(--brand-tint);color:var(--ink)}
.trf-pend > i{color:var(--brand-deep)}
.trf-pend > span{flex:1;min-width:200px}
.trf-done{background:var(--ok-bg);color:#14532D}
.trf-done > i{color:var(--ok);font-size:18px}
.trf-done > span{flex:1}
.trf-box{width:min(620px,100%)}
.trf-steps{list-style:none;display:flex;gap:6px;margin:0;padding:14px 18px 0;flex-wrap:wrap}
.trf-steps li{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--muted)}
.trf-steps li span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--bg);font-size:12px}
.trf-steps li.now{color:var(--ink)}
.trf-steps li.now span{background:var(--ink);color:#fff}
.trf-steps li.done span{background:var(--brand);color:var(--ink)}
.trf-steps li:not(:last-child)::after{content:"";width:18px;height:2px;background:var(--line-strong);margin-left:4px}
.trf-body{padding:14px 18px;display:grid;gap:10px}
.trf-p{margin:0;font-size:14.5px;color:var(--text)}
.trf-opts{display:grid;gap:8px}
.trf-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.trf-list li{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:start;font-size:14px;line-height:1.5;color:var(--text)}
.trf-list li i{color:var(--brand-deep);margin-top:4px;text-align:center}
.trf-list li b{color:var(--ink)}
.trf-safe{margin:0;background:var(--ink);color:#fff;border-radius:12px;padding:10px 12px;font-size:13px;display:flex;gap:8px;align-items:center}
.trf-safe i{color:var(--brand)}

/* 43 · Igreja organizada: presidente em destaque, supervisores, "Ver diretoria" e "Histórico" */
.lead{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:14px;margin-top:14px}
.lead-pres{display:flex;align-items:center;gap:14px;background:var(--brand-tint);border:1.5px solid var(--brand);border-radius:18px;padding:14px 16px;position:relative}
.lead-pres.interim{background:#fff;border-style:dashed}
.lp-pic{width:68px;height:68px;border-radius:50%;overflow:hidden;flex:none;box-shadow:0 0 0 3px #fff,0 0 0 5px var(--brand);display:grid;place-items:center;background:var(--brand);font-weight:800;font-size:22px;color:var(--ink)}
.lp-pic img{width:100%;height:100%;object-fit:cover}
.lp-t{min-width:0;flex:1}
.lp-t small{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--brand-deep)}
.lp-t b{display:block;font-family:var(--font-head);font-size:19px;color:var(--ink);line-height:1.2}
.lp-t span{display:block;font-size:12.5px;color:var(--text);margin-top:2px}
.lead-pres em{font-style:normal;font-size:11.5px;font-weight:800;border-radius:var(--pill);padding:4px 10px;background:var(--ink);color:var(--brand);white-space:nowrap;align-self:flex-start}
.lead-pres.interim em{background:var(--brand);color:var(--ink)}
.lead-sups{border:1px solid var(--line);border-radius:18px;padding:12px 14px}
.ls-t{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:8px}
.ls-list{display:grid;gap:8px}
.ls{display:flex;align-items:center;gap:10px}
.ls b{display:block;font-size:14px;color:var(--ink)}
.ls b i{font-style:normal;font-weight:600;color:var(--muted)}
.ls small{display:block;font-size:12px;color:var(--muted)}
.ls-none{margin:0;font-size:13px;color:var(--muted)}
.lead-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:14px}
.lead-acts .cnt{background:var(--ink);color:#fff;border-radius:var(--pill);font-size:11px;padding:1px 7px;margin-left:2px}
.lead-pend{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--brand-deep);background:var(--brand-tint);border-radius:var(--pill);padding:5px 10px}
.dir-box{width:min(720px,100%)}
.dir-body{padding:14px 18px 18px;display:grid;gap:18px}
.dir-body h4{margin:0 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.dir-body section > .trf-pend{margin-top:10px}
.dir-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}
.dir-nom{display:inline-flex;gap:6px;align-items:center}
.dir-nom .select{padding:7px 10px}
.succ,.terms-l{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.succ li,.terms-l li{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;background:var(--bg);border-radius:12px;padding:8px 10px}
.succ li b,.terms-l li b{color:var(--ink);font-size:14px}
.succ li small,.terms-l li small{display:block;font-size:12px;color:var(--muted)}
.succ li small b,.terms-l li small b{font-size:12px}
.succ li em,.terms-l li em{font-style:normal;font-size:11px;font-weight:800;border-radius:var(--pill);padding:3px 9px;background:var(--ink);color:#fff;white-space:nowrap}
.succ li:first-child{background:var(--brand-tint)}
.succ li.none{grid-template-columns:1fr;font-size:13px;color:var(--muted)}
.terms-l li.now{background:var(--brand-tint)}
.terms-l li em.lk{background:#fff;color:var(--ink);border:1px solid var(--line-strong)}
.dir-rule{margin:8px 0 0;display:flex;gap:8px;align-items:flex-start;background:var(--ink);color:#fff;border-radius:12px;padding:10px 12px;font-size:13px;line-height:1.5}
.dir-rule i{color:var(--brand);margin-top:3px}
.dir-note{margin:0;font-size:13.5px;line-height:1.55;color:var(--text)}
.hist-box{width:min(640px,100%)}
.hist{list-style:none;margin:0;padding:14px 18px 6px 38px;display:grid;gap:14px;position:relative}
.hist::before{content:"";position:absolute;left:24px;top:22px;bottom:14px;width:2px;background:var(--line-strong)}
.hist li{position:relative}
.hist li::before{content:"";position:absolute;left:-19px;top:5px;width:12px;height:12px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 3px #fff}
.hist time{display:block;font-size:12px;font-weight:800;color:var(--muted)}
.hist p{margin:2px 0;font-size:14px;line-height:1.5;color:var(--ink)}
.hist small{font-size:12px;color:var(--text)}
.hist-lock{margin:0;padding:10px 18px 16px;font-size:12.5px;color:var(--muted);display:flex;gap:6px;align-items:center}
@media (max-width:760px){.lead{grid-template-columns:1fr}}
@media (max-width:520px){.lp-pic{width:56px;height:56px}.lp-t b{font-size:17px}.lead-pres em{position:absolute;top:10px;right:10px}.dir-nom{width:100%}.dir-nom .select{flex:1}}

/* 44 · Igreja "clean": protótipo num botão, abas no lugar dos cartões de filtro, cartão da liderança em branco */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.proto-dd{margin-left:auto;position:relative}
.proto-dd summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:7px;border:1.5px dashed var(--line-strong);border-radius:var(--pill);padding:6px 12px;font-size:12.5px;font-weight:700;color:var(--muted);background:#fff}
.proto-dd summary::-webkit-details-marker{display:none}
.proto-dd[open] summary{border-color:var(--ink);color:var(--ink)}
.proto-dd .cv{font-size:10px;transition:transform .2s}
.proto-dd[open] .cv{transform:rotate(180deg)}
.proto-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:30;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--sh-lg);padding:10px;display:grid;gap:6px;min-width:250px}
.proto-menu small{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:2px 4px}
.proto-menu .chip{justify-content:flex-start;width:100%}
.proto-menu .chip.dark{background:var(--ink);color:var(--brand);border-color:var(--ink)}
.proto-menu .sep{height:1px;background:var(--line);margin:2px 0}
.ig-tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line);padding-bottom:0}
.ig-tabs::-webkit-scrollbar{display:none}
.ig-tab{flex:none;display:inline-flex;align-items:center;gap:8px;border:0;background:none;padding:10px 12px 12px;font-size:14px;font-weight:700;color:var(--muted);border-bottom:3px solid transparent;margin-bottom:-1px;white-space:nowrap;cursor:pointer}
.ig-tab b{font-size:12px;min-width:22px;height:20px;padding:0 6px;border-radius:var(--pill);background:var(--bg);color:var(--ink);display:inline-grid;place-items:center}
.ig-tab.hot b{background:var(--brand);color:var(--ink)}
.ig-tab[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--ink)}
.ig-tab:hover{color:var(--ink)}
.ig-head{min-height:0;margin:10px 0 8px}
.ig-row.pedido{border-color:var(--line)}
.lead{gap:0;border:1px solid var(--line);border-radius:18px;overflow:hidden}
.lead-pres,.lead-pres.interim{background:#fff;border:0;border-radius:0;padding:16px 18px}
.lead-pres.interim{background:#FFFDF5}
.lead-pres em{background:none;color:var(--ink);border:1.5px solid var(--line-strong);padding:3px 9px}
.lead-pres em i{color:var(--brand-deep)}
.lead-pres.interim em{background:none;color:var(--brand-deep);border-color:var(--brand)}
.lead-sups{border:0;border-left:1px solid var(--line);border-radius:0;padding:16px 18px}
.lp-t small{color:var(--muted)}
.dir-body .lead-pres{border:1px solid var(--line);border-radius:16px}
@media (max-width:760px){.lead-sups{border-left:0;border-top:1px solid var(--line)}.proto-dd{margin-left:0}.proto-menu{left:0;right:auto}}

/* 45 · Acesso master: as funções que já existiam no sistema, agrupadas, abrindo a tela original */
.ms{max-width:1100px}
.ms-lead{margin:0 0 10px;font-size:15px;color:var(--text);max-width:760px}
.ms-note{display:flex;gap:10px;align-items:flex-start;background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:12px 14px;font-size:13.5px;color:var(--text);margin:0 0 8px}
.ms-note i{color:var(--brand-deep);margin-top:3px}
.ms-g{margin-top:22px}
.ms-g h2{display:flex;align-items:center;gap:10px;font-size:17px;margin:0 0 10px;color:var(--ink)}
.ms-g h2 i{width:32px;height:32px;border-radius:10px;background:var(--ink);color:var(--brand);display:grid;place-items:center;font-size:14px}
.ms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.ms-card{display:grid;grid-template-columns:40px 1fr;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:14px;transition:border-color .2s,transform .2s,box-shadow .2s}
.ms-card:hover{border-color:var(--ink);transform:translateY(-2px);box-shadow:var(--sh-md)}
.ms-card .ic{width:40px;height:40px;border-radius:12px;background:var(--bg);color:var(--ink);display:grid;place-items:center;font-size:16px}
.ms-card .tx b{display:block;font-size:15px;color:var(--ink)}
.ms-card .tx p{margin:3px 0 6px;font-size:13.5px;color:var(--text);line-height:1.45}
.ms-card .tx small{display:flex;gap:6px;align-items:baseline;font-size:12px;color:var(--muted);line-height:1.4}
.ms-card .tx small.nw{color:var(--ink);font-weight:600}
.ms-card .tx small i{font-size:10px;color:var(--muted)}
.ms-card .tx small.nw i{color:var(--brand-deep)}
.ms-card .ft{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding-top:10px}
.ms-card .who{font-size:11px;font-weight:800;border-radius:var(--pill);padding:3px 9px}
.ms-card .who.m{background:var(--ink);color:var(--brand)}
.ms-card .who.s{background:var(--brand-tint);color:var(--brand-deep)}
.ms-card .who.a{background:var(--bg);color:var(--muted)}

/* 46 · Cadastro de igrejas e selo "Verificada" — cores da marca; ROXO só no ALERTA do master
   (sininho roxo no topo + balãozinho com o número de igrejas aguardando), para ele saber que é assunto de igreja. */
:root{--roxo:#7C3AED;--roxo-deep:#5B21B6}
.ch-bell i{color:var(--roxo)!important;font-size:18px}
.dot-badge.roxo{background:var(--roxo)}
.badge.roxo{background:var(--roxo)!important;color:#fff!important}
.vlv{display:inline-flex;gap:3px;align-items:center;flex:none}
.vlv i{width:9px;height:9px;border-radius:50%;background:var(--line-strong)}
.vlv.l1 i:nth-child(1),.vlv.l2 i:nth-child(-n+2){background:var(--ink)}
.vlv.l3 i{background:var(--ok)}
.vseal{display:inline-flex;align-items:center;gap:6px;border-radius:var(--pill);padding:4px 11px;font-size:12px;font-weight:800;background:var(--ok-bg);color:var(--ok);white-space:nowrap}
.vseal.pend{background:var(--brand-tint);color:var(--brand-deep)}
.ch-top .vseal{margin-left:auto}
.vtick{color:var(--ok);font-size:12px}
.cr{max-width:1100px}
.cr-rule{display:flex;gap:10px;align-items:flex-start;background:var(--bg);border:1px solid var(--line);color:var(--text);border-radius:14px;padding:12px 14px;font-size:14px;margin:4px 0 12px}
.cr-rule i{color:var(--brand-deep);margin-top:3px}
.cr-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0 0 14px}
.cr-legend .lg{display:flex;gap:10px;align-items:center}
.cr-legend b{display:block;font-size:13px;color:var(--ink)}
.cr-legend small{display:block;font-size:12px;color:var(--muted)}
.cr-list{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.cr-row{display:grid;grid-template-columns:42px minmax(0,1.3fr) minmax(0,1fr) minmax(0,1.2fr) auto;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:12px 14px}
.cr-row.l2{border-left:4px solid var(--brand)}
.cr-row.new{box-shadow:0 0 0 3px var(--brand-tint)}
.cr-ic{width:42px;height:42px;border-radius:12px;background:var(--ink);color:var(--brand);display:grid;place-items:center}
.cr-who b{display:block;font-size:14.5px;color:var(--ink)}
.cr-who small{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--muted)}
.cr-who small.w{font-size:11.5px}
.cr-who .fl svg{width:18px;height:12px;border-radius:2px;display:block}
.cr-lv{display:flex;gap:10px;align-items:center}
.cr-lv b{display:block;font-size:13px;color:var(--ink)}
.cr-lv small{display:block;font-size:11.5px;color:var(--muted)}
.cr-docs{display:flex;flex-wrap:wrap;gap:6px}
.cr-docs .doc{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line-strong);background:#fff;border-radius:10px;padding:6px 10px;font-size:12.5px;font-weight:700;color:var(--ink);cursor:pointer}
.cr-docs .doc i{color:var(--muted)}
.cr-docs .doc:hover{border-color:var(--ink)}
.cr-docs .nodoc{font-size:12.5px;color:var(--muted)}
.cr-acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.cr-when{display:inline-flex;gap:6px;align-items:center;font-size:12.5px;font-weight:700;color:var(--ok)}
.cc-verif{border-top:1px dashed var(--line-strong);padding-top:12px;margin-top:4px;display:grid;gap:8px}
.cv-h{display:flex;gap:10px;align-items:center}
.cv-h b{display:block;font-size:14px;color:var(--ink)}
.cv-h small{display:block;font-size:12px;color:var(--muted)}
.cv-p{margin:0;font-size:13.5px;color:var(--text);line-height:1.5}
.cv-file{display:flex;gap:10px;align-items:center;border:1.5px dashed var(--line-strong);background:var(--bg);border-radius:12px;padding:12px;cursor:pointer;font-size:13.5px;font-weight:700;color:var(--ink)}
.cv-file:hover{border-color:var(--ink)}
.cv-file input{position:absolute;opacity:0;width:1px;height:1px}
.cv-file i{font-size:18px;color:var(--brand-deep)}
.cc-verif .btn{justify-self:start}
@media (max-width:900px){.cr-row{grid-template-columns:42px minmax(0,1fr)}.cr-lv,.cr-docs,.cr-acts{grid-column:1/-1}.cr-acts{justify-content:flex-start}}

/* 47 · Selo da igreja em cores (vermelho → laranja → DOURADO) + "Minha Igreja" na Rede (cartão da igreja, cartão protegido) */
.vseal.red{background:#FEE2E2;color:#B91C1C}
.vseal.amber{background:#FFEDD5;color:#C2410C}
.vseal.gold{background:var(--ink);color:#F2C94C}
.vseal.gold i{color:#E0B43A}
.vlv.l1 i:nth-child(1){background:#DC2626}
.vlv.l2 i:nth-child(-n+2){background:#F59E0B}
.vlv.l3 i{background:#D4A017}
.chp-ver{background:var(--ink)!important;color:#F2C94C!important}
.chp-ver i{color:#E0B43A}
.rv-wrap{display:flex;justify-content:center;margin:6px 0 -6px}
.rv{display:inline-flex;gap:4px;background:var(--surface);border:1px solid var(--line);border-radius:var(--pill);padding:4px;box-shadow:var(--sh-sm)}
.rv button{border:0;background:none;border-radius:var(--pill);padding:9px 18px;font-weight:800;font-size:14px;color:var(--muted);display:inline-flex;gap:8px;align-items:center;cursor:pointer;transition:background .2s,color .2s}
.rv button[aria-selected=true]{background:var(--ink);color:#fff}
.rv button[aria-selected=true] i{color:var(--brand)}
.chcard .ch-pic{display:grid;place-items:center;background:var(--ink);color:var(--brand);font-size:34px;overflow:hidden}
.chcard .ch-pic svg{width:100%;height:100%;display:block}
.chcard .ch-seal{margin:8px 0 4px}
.ch-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;width:100%;margin-top:8px}
.ch-stats div{background:var(--bg);border-radius:10px;padding:6px 4px}
.ch-stats b{display:block;font-family:var(--font-head);font-size:17px;color:var(--ink)}
.ch-stats small{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.chcard .bottom{justify-content:center}
.ch-open{font-size:13px;font-weight:700;color:var(--ink);display:inline-flex;gap:6px;align-items:center}
.dcard.locked{cursor:default}
.dcard.locked .pic .ini{background:var(--bg);color:var(--muted);font-size:26px}
.dcard.locked h4{color:var(--muted)}
.dcard.locked .lk-msg{margin:10px 0 4px;font-size:12.5px;color:var(--muted);display:flex;gap:6px;align-items:center}
.dcard.locked .bottom{background:var(--bg)}
.chw-box{width:min(640px,100%)}
.chw-head{display:flex;gap:14px;align-items:center;padding:18px;border-bottom:1px solid var(--line)}
.chw-logo{width:72px;height:72px;border-radius:50%;overflow:hidden;background:var(--ink);color:var(--brand);display:grid;place-items:center;font-size:30px;flex:none}
.chw-logo svg{width:100%;height:100%;display:block}
.chw-head b{display:block;font-family:var(--font-head);font-size:19px;color:var(--ink)}
.chw-head small{display:block;font-size:13px;color:var(--muted);margin:2px 0 6px}
.chw-body{padding:16px 18px;display:grid;gap:16px}
.chw-dl{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.chw-dl div{background:var(--bg);border-radius:12px;padding:10px 12px}
.chw-dl dt{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.chw-dl dd{margin:2px 0 0;font-size:14px;color:var(--ink);font-weight:600}
.chw-dl .full{grid-column:1/-1}
.chw-body h4{margin:0 0 8px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.chw-lead{display:grid;gap:6px}
.chw-lead li{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:8px 10px;list-style:none}
.chw-lead li.pres{border-color:var(--brand);background:#FFFDF5}
.chw-lead li b{display:block;font-size:14px;color:var(--ink)}
.chw-lead li small{display:block;font-size:12px;color:var(--muted)}
.chw-lead ul{margin:0;padding:0;display:grid;gap:6px}
.chw-note{margin:0;font-size:12.5px;color:var(--muted);display:flex;gap:6px}
@media (max-width:520px){.chw-dl{grid-template-columns:1fr}.rv button{padding:9px 14px}}

/* 48 · Seletor "Discípulos | Minha Igreja" com efeito 3D (Lalo): ligado = amarelo inteiro e saltado; desligado = cinza */
.rv{background:#E4E4E7;border:0;padding:6px;gap:8px;box-shadow:inset 0 2px 5px rgba(14,14,16,.14)}
.rv button{background:#F1F1F3;color:#6B6B73;padding:10px 20px;box-shadow:0 3px 0 #C4C4CA;transform:translateY(-1px);transition:transform .18s var(--ease),box-shadow .18s var(--ease),background .2s,color .2s}
.rv button i{color:#8E8E96}
.rv button:hover{transform:translateY(-2px);box-shadow:0 4px 0 #BDBDC4}
.rv button[aria-selected=true]{background:var(--brand);color:var(--ink);box-shadow:0 5px 0 #C99400,0 10px 18px rgba(201,148,0,.35);transform:translateY(-3px);animation:rvpop .35s var(--ease)}
.rv button[aria-selected=true] i{color:var(--ink)}
.rv button:active{transform:translateY(1px);box-shadow:0 1px 0 #BDBDC4}
.rv button[aria-selected=true]:active{box-shadow:0 2px 0 #C99400,0 4px 8px rgba(201,148,0,.3)}
@keyframes rvpop{0%{transform:translateY(0) scale(.96)}60%{transform:translateY(-6px) scale(1.04)}100%{transform:translateY(-3px) scale(1)}}
@media (prefers-reduced-motion:reduce){.rv button[aria-selected=true]{animation:none}}

/* 49 · Minha Igreja: a linha do membro marcada (Seu pastor → Seu discipulador → Você) */
.dcard .tagline{position:absolute;top:10px;left:10px;z-index:2;background:var(--ink);color:var(--brand);font-size:11px;font-weight:800;border-radius:var(--pill);padding:4px 10px;letter-spacing:.02em}
.dcard.is-pastor,.dcard.is-mydisc,.dcard.is-me{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-tint)}
.dcard.is-me .tagline{background:var(--brand);color:var(--ink)}

/* 50 · Faixa de status de ponta a ponta (Discípulo / Discipulador / Denunciado) + menu para quem está acima */
.status-bar{position:relative;display:flex;align-items:center;gap:14px;flex-wrap:wrap;width:100%;box-sizing:border-box;border-radius:18px;padding:14px 16px;margin:0 0 18px;border:1.5px solid var(--line);background:var(--surface)}
.status-bar .sb-ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-size:19px;flex:none}
.status-bar .sb-t{flex:1;min-width:190px}
.status-bar .sb-t small{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.status-bar .sb-t b{display:block;font-family:var(--font-head);font-size:20px;color:var(--ink);line-height:1.2}
.status-bar .sb-t span{display:block;font-size:13px;color:var(--text);margin-top:2px}
.status-bar.st-dcr{border-color:var(--brand);background:#FFFDF5}
.status-bar.st-dcr .sb-ic{background:var(--brand);color:var(--ink)}
.status-bar.st-disc .sb-ic{background:var(--bg);color:var(--ink)}
.status-bar.st-den{border-color:#DC2626;background:#FEF2F2}
.status-bar.st-den .sb-ic{background:#DC2626;color:#fff;animation:pulse 1.8s infinite}
.status-bar.st-den .sb-t b{color:#B91C1C}
.sb-sel{display:flex;flex-direction:column;gap:3px}
.sb-sel span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.sb-sel .select{min-width:230px;font-weight:700}
.sb-lock{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--muted);background:var(--bg);border-radius:var(--pill);padding:6px 12px}
.sb-info{position:relative}
.sb-info > button{width:30px;height:30px;border-radius:50%;border:1.5px solid var(--ink);background:#fff;font-family:Georgia,serif;font-style:italic;font-weight:700;color:var(--ink);cursor:pointer}
.sb-tip{position:absolute;right:0;top:calc(100% + 10px);width:min(360px,86vw);background:var(--dark);color:rgba(255,255,255,.88);border-radius:14px;padding:14px 16px;font-size:13px;line-height:1.5;box-shadow:var(--sh-lg);opacity:0;transform:translateY(-6px);pointer-events:none;transition:opacity .2s,transform .2s;z-index:40}
.sb-info.open .sb-tip{opacity:1;transform:none;pointer-events:auto}
@media (hover:hover){.sb-info:not(.nohover):hover .sb-tip{opacity:1;transform:none;pointer-events:auto}} /* no celular abre só no toque (sem ficar preso) */
.sb-tip .h{display:block;color:var(--brand);font-size:12px;text-transform:uppercase;letter-spacing:.05em;margin:0 0 6px}
.sb-tip ul{margin:0 0 10px;padding-left:18px;display:grid;gap:5px}
.sb-tip ul:last-child{margin-bottom:0}
.sb-tip b{color:#fff}
.sb-tip b.r{color:#FCA5A5}
.btn-red{background:#DC2626;color:#fff;border-color:#DC2626}
.btn-red:hover{background:#B91C1C;border-color:#B91C1C;color:#fff}
.den-form{display:grid;gap:8px;border:1.5px dashed #DC2626;background:#FEF2F2;border-radius:14px;padding:12px 14px;margin:-8px 0 18px}
.den-form b{display:flex;gap:6px;align-items:center;color:#B91C1C;font-size:14px}
.den-form small{display:block;font-size:12px;color:var(--text)}
.den-form textarea{width:100%;box-sizing:border-box;resize:vertical}
.den-acts{display:flex;gap:8px;justify-content:flex-end}
.den-review{display:flex;gap:8px;flex-wrap:wrap;align-items:center;background:var(--ink);color:#fff;border-radius:14px;padding:10px 14px;margin:-8px 0 18px;font-size:13.5px}
.den-review span{flex:1;min-width:200px}
.den-review i{color:var(--brand)}
.den-review .btn-ghost{background:#fff}
#d-body .status-bar{margin:0 0 6px}
#d-body .den-form{margin:0 0 6px}
@media (max-width:640px){.status-bar .sb-sel,.status-bar .sb-sel .select{width:100%;min-width:0}.status-bar .sb-lock{width:100%;justify-content:center}.sb-info{position:absolute;top:12px;right:12px}}
/* Menu "Protótipo" do Meu Painel: fica à direita do título e abre para a esquerda (não sai da tela no celular) */
@media (max-width:760px){#pvDd{margin-left:auto}#pvDd .proto-menu{left:auto;right:0;max-width:calc(100vw - 32px)}}
.status-bar{z-index:6} /* a explicação do (i) fica por cima do cartão e das seções abaixo */
@media (max-width:640px){.status-bar .sb-t{padding-right:34px}.status-bar .sb-t b{font-size:18px}} /* título não encosta no (i) */

/* 51 · Denúncia de qualquer pessoa (botão no (i)) + página "Denúncias" (só master) + suspensão discreta (tudo clarinho) */
.sb-tip::before{content:"";position:absolute;left:0;right:0;top:-12px;height:12px} /* mantém aberto ao levar o mouse até a caixa */
.sb-rep{border-top:1px solid rgba(255,255,255,.15);padding-top:12px;margin-top:4px;display:grid;gap:6px}
.sb-rep .btn{justify-self:start}
.sb-rep small{font-size:12px;color:rgba(255,255,255,.7)}
.rep-form{display:grid;gap:10px;border:1.5px solid var(--ink);background:var(--surface);border-radius:16px;padding:14px 16px;margin:-8px 0 18px;box-shadow:var(--sh-sm)}
.rep-h{display:flex;gap:10px;align-items:flex-start}
.rep-h .pav{flex:none}
.rep-h b{display:flex;gap:6px;align-items:center;font-size:15px;color:var(--ink)}
.rep-h small,.rep-form label small{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.rep-form label b{font-size:14px;color:var(--ink)}
.rep-form textarea{width:100%;box-sizing:border-box;resize:vertical}
#d-body .rep-form{margin:0 0 6px}
.susp-fade{opacity:.35!important;filter:grayscale(1)!important;transition:opacity .4s,filter .4s;cursor:not-allowed} /* !important: vence a animação de entrada */
.susp-fade *{cursor:not-allowed!important}
.dcard.susp{opacity:.42!important;filter:grayscale(1)!important}
.dcard.susp:hover{opacity:.6!important}
.dn-list{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:10px}
.dn-row{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:14px 16px;display:grid;gap:10px}
.dn-row.st-nova{border-left:4px solid var(--brand)}
.dn-row.st-susp{border-left:4px solid var(--ink)}
.dn-top{display:flex;gap:12px;align-items:center}
.dn-top .cr-who{flex:1;min-width:0}
.dn-st{display:inline-flex;gap:6px;align-items:center;border-radius:var(--pill);padding:5px 11px;font-size:12px;font-weight:800;background:var(--bg);color:var(--ink);white-space:nowrap}
.st-nova .dn-st{background:var(--brand);color:var(--ink)}
.st-susp .dn-st{background:var(--ink);color:#fff}
.dn-more{color:var(--brand-deep)!important;font-weight:700}
.dn-txt{margin:0;background:var(--bg);border-radius:12px;padding:10px 14px;font-size:14px;line-height:1.55;color:var(--ink)}
.dn-txt small{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}
.dn-hist{margin:0;padding-left:18px;font-size:12.5px;color:var(--text);display:grid;gap:3px}
.dn-note{display:grid;gap:4px}
.dn-note b{font-size:13px;color:var(--ink)}
.dn-note small{font-size:12px;color:var(--muted)}
.dn-note textarea{width:100%;box-sizing:border-box;resize:vertical}
.dn-eff{margin:0;font-size:13.5px;color:var(--text);display:flex;gap:8px;align-items:flex-start}
.dn-eff i{margin-top:3px;color:var(--muted)}
@media (max-width:640px){.dn-top{flex-wrap:wrap}.dn-st{order:3}.dn-row .cr-acts{justify-content:flex-start}}
.rep-form textarea,.den-form textarea,.dn-note textarea{font:inherit;font-size:14px} /* mesma fonte do sistema nos campos de texto */

/* 52 · Termo de responsabilidade da denúncia + motivo + B.O. (Boletim de Ocorrência) */
.rep-f{display:grid;gap:4px}
.rep-f .select{width:100%}
.rep-bo{display:grid;gap:8px;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:12px}
.rep-bo > b{display:flex;gap:6px;align-items:center;font-size:14px;color:var(--ink)}
.rep-bo > small{font-size:12.5px;color:var(--text)}
.rep-bo .cv-file{position:relative;background:#fff}
.rep-term{border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:13px;color:var(--text)}
.rep-term summary{cursor:pointer;font-weight:800;color:var(--ink);display:flex;gap:8px;align-items:center;list-style:none}
.rep-term summary::-webkit-details-marker{display:none}
.rep-term summary small{font-weight:600;color:var(--muted)}
.rep-term ol{margin:10px 0 0;padding-left:20px;display:grid;gap:6px;line-height:1.5}
.rep-ok{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.45;color:var(--ink);border-radius:12px;padding:10px 12px;border:1.5px solid var(--brand);background:#FFFDF5;cursor:pointer}
.rep-ok input{width:18px;height:18px;flex:none;margin-top:1px;accent-color:var(--ink)}
.rep-ok.need{border-color:#DC2626;background:#FEF2F2;animation:shake .35s}
.dn-tags{display:flex;flex-wrap:wrap;gap:6px}
.dn-mot,.dn-term{display:inline-flex;gap:6px;align-items:center;border-radius:var(--pill);padding:4px 10px;font-size:12px;font-weight:700}
.dn-mot{background:var(--ink);color:#fff}
.dn-mot i{color:var(--brand)}
.dn-term{background:var(--bg);color:var(--text)}
.dn-bo{display:flex;gap:10px;align-items:center;flex-wrap:wrap;border:1.5px dashed var(--line-strong);border-radius:12px;padding:10px 12px;font-size:13px;color:var(--text)}
.dn-bo > i{font-size:18px;color:var(--muted)}
.dn-bo span{flex:1;min-width:180px}
.dn-bo b{color:var(--ink)}
.dn-bo small{display:block;font-size:12px;color:var(--muted)}
.dn-bo.ok{border-style:solid;border-color:var(--ok);background:var(--ok-bg)}
.dn-bo.ok > i{color:var(--ok)}
.dn-sim{border-style:dashed}
.dn-row .btn[disabled]{opacity:.4;cursor:not-allowed}
.dn-row.st-ban{border-left:4px solid #DC2626}
.st-ban .dn-st{background:#DC2626;color:#fff}

/* 53 · Termo adaptado ao país de origem do usuário */
.rep-pais{display:flex;gap:8px;align-items:center;margin:10px 0 0;padding:8px 10px;border-radius:10px;background:var(--bg);font-size:12.5px;color:var(--ink)}
.rep-pais .fl svg{width:22px;height:15px;border-radius:2px;display:block}
.rep-pais small{color:var(--muted)}
.rep-term ol b{color:var(--ink)}

/* 54 · Sigilo de quem denuncia + ação judicial */
.dn-lock{display:inline-flex;gap:4px;align-items:center;font-weight:700;color:var(--ink)}
.dn-jud{display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap;border:1.5px solid var(--ink);border-radius:12px;padding:10px 12px;font-size:13px;color:var(--text);background:#fff}
.dn-jud > i{font-size:18px;color:var(--ink);margin-top:2px}
.dn-jud > span:first-of-type{flex:1;min-width:200px}
.dn-jud b{color:var(--ink)}
.dn-jud small{display:block;font-size:12px;color:var(--muted);margin-top:2px}
.dn-jud .dn-jdec{color:var(--ok);font-weight:700}
.dn-jacts{display:flex;gap:6px;flex-wrap:wrap}
.dn-judadd{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.dn-judf{display:flex;gap:6px;align-items:center;flex:1;min-width:220px}
.dn-judf[hidden]{display:none}
.dn-judf .input{flex:1;min-width:0}

/* 55 · Denúncia em análise: faixa em VERMELHO CLARO (rosa, "vermelho de internet") para o master e os supervisores, até resolver */
.status-bar.has-den{background:#F8D7DA;border-color:#F1AEB5}
.status-bar.has-den .sb-ic{background:#DC3545;color:#fff}
.status-bar.has-den .sb-t b{color:#842029}
.status-bar .sb-den{display:flex;gap:6px;align-items:flex-start;margin:6px 0 0;font-size:12.5px;font-weight:700;color:#842029}
.status-bar .sb-den i{margin-top:2px}

/* 56 · Barra do topo VERMELHA para o master e o editor quando chega denúncia (até resolver) */
.header.den-alert{background:#FF8A96;box-shadow:inset 0 -3px 0 #E4485B}
.header.den-alert .userchip img{box-shadow:0 0 0 2px #FFD1D6}
.den-pill{display:inline-flex;gap:6px;align-items:center;background:var(--ink);color:#fff;border-radius:var(--pill);padding:7px 12px;font-size:12.5px;font-weight:800;text-decoration:none;white-space:nowrap;animation:pulse 1.8s infinite}
.den-pill i{color:#FF8A96}
@media (max-width:640px){.den-pill{display:none}}
/* 57 · Pessoa denunciada (em análise), suspensa ou banida: sem poderes — tudo cinza e indisponível */
body.me-off :is([data-power], #create, .btn-wa, a[href*="wa.me"], .wa-panel, .contact .cacts){opacity:.35!important;filter:grayscale(1)!important;cursor:not-allowed!important}
/* 58 · Configurações e Níveis de acesso */
.cf{max-width:900px}
.cf-lvl,.cf-acc{padding:18px;margin-top:14px}
.cf-acc h2,.cf-lvl h3{margin:0 0 10px;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.cf-lvl h3{margin-top:16px}
.cf-head{display:flex;gap:14px;align-items:center}
.cf-head small{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.cf-head b{display:block;font-family:var(--font-head);font-size:22px;color:var(--ink)}
.cf-head > div > span{display:block;font-size:13px;color:var(--text)}
.cf-ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:20px;background:var(--bg);color:var(--ink);flex:none}
.lv-master .cf-ic{background:var(--ink);color:var(--brand)}
.lv-editor .cf-ic{background:var(--brand);color:var(--ink)}
.cf-perm{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.cf-perm ul,.ac-card ul{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:13.5px;color:var(--text)}
.cf-perm ul.ok i,.ac-card ul.ok i{color:var(--ok);width:16px}
.cf-perm ul.no i,.ac-card ul.no i{color:#DC2626;width:16px}
.cf-perm .lib{color:var(--ok)}
.cf-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}
.cf-links a{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:12px;text-decoration:none;color:var(--ink);background:var(--surface);transition:border-color .2s,transform .2s}
.cf-links a:hover{border-color:var(--ink);transform:translateY(-1px)}
.cf-links a > i{width:36px;height:36px;border-radius:10px;background:var(--bg);display:grid;place-items:center;flex:none}
.cf-links b{display:block;font-size:14px}
.cf-links small{display:block;font-size:12px;color:var(--muted)}
.ac-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:6px 0 18px}
.ac-card{border:1px solid var(--line);border-radius:16px;padding:14px;background:var(--surface);display:grid;gap:10px;align-content:start}
.ac-card.lv-master{border-color:var(--ink)}
.ac-card.lv-editor{border-color:var(--brand)}
.ac-card.todo{border-style:dashed;background:var(--bg)}
.ac-h{display:flex;gap:10px;align-items:center}
.ac-h b{display:block;font-family:var(--font-head);font-size:17px;color:var(--ink)}
.ac-h small{display:block;font-size:12px;color:var(--muted)}
.ac-todo{margin:0;font-size:13px;color:var(--text)}
.ac-t{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 8px}
.ac-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ac-row{display:grid;grid-template-columns:42px minmax(0,1.2fr) auto minmax(0,1.3fr) auto;gap:12px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:10px 14px}
.ac-sel{display:grid;gap:2px}
.ac-sel span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.ac-mat{display:flex;gap:8px;align-items:flex-start;font-size:13px;cursor:pointer}
/* setores de cada editor no Painel da equipe (Lalo, 30/09/2026) */
.ac-set{grid-column:2/-1;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-size:13px;padding-top:4px;border-top:1px dashed var(--line)}
.ac-set>span{font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.ac-set label{display:inline-flex;gap:6px;align-items:center;cursor:pointer}
.ac-mat input{width:18px;height:18px;accent-color:var(--ink);margin-top:1px;flex:none}
.ac-mat b{display:block;color:var(--ink)}
.ac-mat small{display:block;font-size:12px;color:var(--muted)}
.ac-you{font-size:12px;font-weight:800;background:var(--ink);color:var(--brand);border-radius:var(--pill);padding:4px 10px}
.ac-add{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.ac-add .input{flex:1;min-width:180px}
@media (max-width:900px){.ac-grid{grid-template-columns:1fr}.ac-row{grid-template-columns:42px minmax(0,1fr) auto}.ac-sel,.ac-mat{grid-column:2/-1}.cf-perm{grid-template-columns:1fr}}

/* 59 · Aviso no topo para a própria pessoa denunciada (tela em cinza + mensagem + pedir a data) */
.den-me{background:#F8D7DA;border-bottom:1px solid #F1AEB5;color:#842029}
.den-me[hidden],#dsDenMe[hidden]{display:none}
.den-me .wrap{display:flex;gap:14px;align-items:flex-start;padding-top:14px;padding-bottom:14px;flex-wrap:wrap}
.den-me .ic{width:40px;height:40px;border-radius:12px;background:#DC3545;color:#fff;display:grid;place-items:center;font-size:17px;flex:none}
.den-me .tx{flex:1;min-width:230px}
.den-me b{display:block;font-family:var(--font-head);font-size:16px;color:#842029}
.den-me p{margin:4px 0 0;font-size:13.5px;line-height:1.5}
.den-me a{color:#842029;font-weight:800;white-space:nowrap}
.den-me .ac{align-self:center}
.den-me .dt{display:inline-flex;gap:6px;align-items:center;background:#fff;border-radius:var(--pill);padding:7px 12px;font-size:13px}
.den-me .dt b{display:inline;font-family:inherit;font-size:13px}

/* 60 · Status das denúncias: Recebida (alerta) → Em análise (sem alerta, conta bloqueada) → Resolvida */
.dn-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;counter-reset:s}
.dn-steps li{display:grid;grid-template-columns:26px 1fr;column-gap:8px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:8px 10px;background:var(--bg);color:var(--muted)}
.dn-steps li span{grid-row:span 2;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800;background:#fff;border:1.5px solid var(--line-strong)}
.dn-steps li b{font-size:13px;color:inherit}
.dn-steps li small{font-size:11.5px;line-height:1.3}
.dn-steps li.done{background:var(--ok-bg);border-color:transparent;color:var(--ok)}
.dn-steps li.done span{background:var(--ok);border-color:var(--ok);color:#fff}
.dn-steps li.cur{background:var(--surface);border-color:var(--ink);color:var(--ink)}
.dn-steps li.cur span{background:var(--ink);border-color:var(--ink);color:var(--brand)}
.dn-steps.s0 li.cur{background:#F8D7DA;border-color:#F1AEB5;color:#842029}
.dn-steps.s0 li.cur span{background:#DC3545;border-color:#DC3545;color:#fff;animation:pulse 1.8s infinite}
.dn-steps.s2 li.cur span{background:var(--ok);border-color:var(--ok);color:#fff}
.dn-ana{display:flex;gap:12px;align-items:center;flex-wrap:wrap;border:1.5px dashed #F1AEB5;background:#FFF5F6;border-radius:12px;padding:10px 12px}
.dn-ana small{flex:1;min-width:200px;font-size:12.5px;color:#842029}
.dn-row.st-nova{border-left-color:#DC3545}
.dn-row.st-analise{border-left:4px solid var(--ink)}
.st-nova .dn-st{background:#DC3545;color:#fff}
.st-analise .dn-st{background:var(--ink);color:var(--brand)}
@media (max-width:640px){.dn-steps{grid-template-columns:1fr}}

/* 61 · Denúncias: resumo das regras, B.O. com prazo de 7 dias, passo a passo (histórico) */
.dn-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:6px 0 8px}
.dn-rules div{border:1px solid var(--line);border-radius:14px;padding:10px 12px;background:var(--surface)}
.dn-rules > div > b{display:flex;gap:8px;align-items:center;font-size:14px;color:var(--ink)}
.dn-rules small b{color:var(--ink)}
.dn-rules b span{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;background:var(--ink);color:var(--brand)}
.dn-rules .r1 b span{background:#DC3545;color:#fff}
.dn-rules small{display:block;font-size:12.5px;color:var(--text);margin-top:4px;line-height:1.45}
.dn-sig-note{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:var(--text);margin:0 0 12px}
.dn-sig-note i{margin-top:3px;color:var(--ink)}
.dn-bo.due{border-style:solid;border-color:var(--brand);background:#FFFDF5}
.dn-bo.due > i{color:var(--brand-deep)}
.dn-bo.exp{border-style:solid;border-color:var(--line-strong);background:var(--bg)}
.dn-bo.exp > i{color:var(--ok)}
.dn-bo .btn,.dn-bo .chip{flex:none}
.dn-print{margin-left:auto}
.dn-rel,.dn-tl{border:1px solid var(--line);border-radius:12px;padding:8px 12px;background:var(--surface)}
.dn-rel summary,.dn-tl summary{cursor:pointer;font-weight:800;font-size:13.5px;color:var(--ink);display:flex;gap:8px;align-items:center;list-style:none}
.dn-rel summary::-webkit-details-marker,.dn-tl summary::-webkit-details-marker{display:none}
.dn-rel summary small,.dn-tl summary small{font-weight:600;color:var(--muted)}
.dn-rel[open]{display:grid;gap:10px}
.dn-rel[open] summary{margin-bottom:2px}
.dn-tl ol{list-style:none;margin:10px 0 2px;padding:0;display:grid;gap:0;position:relative}
.dn-tl li{display:grid;grid-template-columns:24px 1fr;gap:10px;padding:0 0 10px;position:relative}
.dn-tl li:not(:last-child)::before{content:"";position:absolute;left:11px;top:24px;bottom:0;width:2px;background:var(--line)}
.dn-tl .n{width:24px;height:24px;border-radius:50%;background:var(--ink);color:var(--brand);display:grid;place-items:center;font-size:11px;font-weight:800}
.dn-tl b{display:block;font-size:13px;color:var(--ink);line-height:1.35}
.dn-tl small{display:block;font-size:12px;color:var(--muted)}
.dn-tl em{display:block;font-size:12.5px;color:var(--text);font-style:normal;background:var(--bg);border-radius:8px;padding:4px 8px;margin-top:4px}
@media (max-width:760px){.dn-rules{grid-template-columns:1fr}.dn-print{margin-left:0}}
/* 62 · Relatório de denúncia para imprimir (numa tela só) */
.rp-wrap{max-width:900px}
.rp-bar{display:flex;gap:8px;justify-content:space-between;margin:6px 0 12px}
.rp{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 28px;color:#111;font-size:13.5px;line-height:1.5}
.rp-h{display:flex;justify-content:space-between;gap:16px;border-bottom:3px solid var(--brand);padding-bottom:12px;flex-wrap:wrap}
.rp-mark{display:block;font-family:var(--font-mark);font-size:28px;transform:skewX(-12deg);letter-spacing:-.01em}
.rp-h small{display:block;font-size:12px;color:#555}
.rp-id{text-align:right}
.rp-id b{display:block;font-family:var(--font-head);font-size:18px}
.rp-conf{display:flex;gap:8px;align-items:center;background:#FFF5F6;border:1px solid #F1AEB5;color:#842029;border-radius:10px;padding:8px 12px;font-size:12.5px;margin:12px 0 4px}
.rp h2{font-family:var(--font-head);font-size:15px;margin:18px 0 8px;padding-bottom:4px;border-bottom:1px solid #ddd}
.rp-dl{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;margin:0}
.rp-dl div{display:grid;gap:1px}
.rp-dl dt{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#666}
.rp-dl dd{margin:0}
.rp-txt{margin:10px 0 0;border-left:3px solid var(--brand);background:#FAFAFA;padding:8px 12px}
.rp-files{margin:0;padding-left:0;list-style:none}
.rp-files i{color:#B91C1C}
.rp-note{font-size:12.5px;color:#555;margin:6px 0 0}
.rp-t{width:100%;border-collapse:collapse;font-size:12.5px}
.rp-t th,.rp-t td{border:1px solid #ddd;padding:5px 7px;text-align:left;vertical-align:top}
.rp-t th{background:#F4F4F5;font-size:11.5px;text-transform:uppercase;letter-spacing:.04em}
.rp-t td:first-child{width:24px;text-align:center}
.rp-t td:nth-child(2){white-space:nowrap}
.rp-f{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #ddd;margin-top:18px;padding-top:8px;font-size:11.5px;color:#555}
@media (max-width:640px){.rp{padding:16px}.rp-dl{grid-template-columns:1fr}.rp-id{text-align:left}.rp-t{font-size:11.5px}.rp-t td:nth-child(2){white-space:normal}}
@media print{
  @page{size:A4;margin:12mm}
  body{background:#fff!important}
  .header,.nav,.tabbar,.simbar,#dsNext,#dsDenMe,.backbar,.no-print,.toast{display:none!important}
  .page{padding:0!important;margin:0!important}
  .rp-wrap{max-width:none;padding:0}
  .rp{border:0;border-radius:0;padding:0;font-size:11px}
  .rp h2{font-size:12.5px;margin:10px 0 6px}
  .rp-t{font-size:10px}
  .rp-t tr{break-inside:avoid}
  .reveal{opacity:1!important;transform:none!important}
}
/* 63 · Local de envio do B.O. (quem denunciou) */
.eb{max-width:640px}
.eb-card{padding:18px;display:grid;gap:12px;margin-top:10px}
.eb-h{display:flex;gap:12px;align-items:center}
.eb-h small{display:block;font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.eb-h b{display:block;font-family:var(--font-head);font-size:18px;color:var(--ink)}
.eb-h span{display:block;font-size:13px;color:var(--text)}
.eb-card > p{margin:0;display:flex;gap:8px;align-items:flex-start;border-radius:12px;padding:10px 12px;font-size:13.5px;line-height:1.5}
.eb-card > p i{margin-top:3px}
.eb-ok{background:var(--ok-bg);color:var(--ok)}
.eb-info{background:var(--bg);color:var(--text)}
.eb-due{background:#FFFDF5;border:1px solid var(--brand);color:var(--ink)}
.eb-late{background:#FFF5F6;border:1px solid #F1AEB5;color:#842029}
.eb-f{display:grid;gap:10px}
.eb-f label b{display:block;font-size:13.5px;margin-bottom:4px;color:var(--ink)}
.eb-f .input{width:100%;box-sizing:border-box}
.eb-f .cv-file{position:relative}
.eb-lock{margin:0;font-size:12.5px;color:var(--muted);display:flex;gap:6px;align-items:center}
.eb-f .btn{justify-self:start}
.rp,.rp-t td{overflow-wrap:anywhere} /* nomes de arquivo e números longos quebram em vez de passar da tela */
@media (max-width:640px){.rp-t{table-layout:fixed}.rp-t th:nth-child(1),.rp-t td:nth-child(1){width:22px}.rp-t th,.rp-t td{padding:4px 5px}.rp-h{display:grid}}

/* 64 · Denúncias LIMPA: faixas horizontais por cor (vermelho = recebida · laranja = em análise · cinza = resolvida) */
.dn-legend{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;margin:4px 0 10px;font-size:12.5px;color:var(--muted)}
.dn-legend .lg{display:inline-flex;gap:6px;align-items:center;font-weight:700}
.dn-legend .lg i{width:12px;height:12px;border-radius:4px;display:inline-block}
.dn-legend .red i{background:#DC3545}
.dn-legend .orange i{background:#F59E0B}
.dn-legend .grey i{background:#A1A1AA}
.dn-how{margin-left:auto;font-size:12.5px}
.dn-how summary{cursor:pointer;color:var(--ink);font-weight:700;list-style:none}
.dn-how summary::-webkit-details-marker{display:none}
.dn-how summary::before{content:"ⓘ ";}
.dn-how p{margin:6px 0 0;max-width:640px;line-height:1.5;color:var(--text)}
.dn-filter{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px}
.dn-filter .chip b{margin-left:4px}
.dn-strips{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.dn-strip{display:grid;grid-template-columns:48px minmax(0,1.4fr) auto minmax(0,1.6fr) auto;gap:14px;align-items:center;border-radius:14px;padding:10px 14px;border:1px solid transparent;border-left-width:6px;cursor:pointer;transition:transform .15s,box-shadow .15s}
.dn-strip:hover,.dn-strip:focus-visible{transform:translateY(-1px);box-shadow:var(--sh-sm);outline:none}
.dn-strip .pic,.dn-dh .pic{width:48px;height:48px;border-radius:50%;overflow:hidden;display:grid;place-items:center;flex:none}
.dn-strip .pic img,.dn-dh .pic img{width:100%;height:100%;object-fit:cover}
.dn-strip .pic .ini,.dn-dh .pic .ini{width:100%;height:100%;display:grid;place-items:center;font-weight:800;font-size:15px}
.dn-strip .nm b{display:block;font-size:15px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dn-strip .nm small{display:block;font-size:12px;color:var(--muted)}
.dn-strip .et,.dn-dst .et{display:inline-flex;gap:6px;align-items:center;font-size:12.5px;font-weight:800;white-space:nowrap}
.dn-strip .et em,.dn-dst .et em{font-style:normal;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:11px;color:#fff}
.dn-strip .st{font-size:13px;font-weight:600}
.dn-strip .go{display:inline-flex;gap:6px;align-items:center;font-size:12.5px;font-weight:800;background:#fff;border-radius:var(--pill);padding:6px 12px;color:var(--ink);box-shadow:0 0 0 1px var(--line)}
/* cores */
.dn-strip.red{background:#FDECEE;border-color:#F5C2C7;border-left-color:#DC3545}
.dn-strip.red .pic{box-shadow:0 0 0 3px #DC3545}
.dn-strip.red .pic .ini{background:#DC3545;color:#fff}
.dn-strip.red .et,.dn-strip.red .st{color:#842029}
.dn-strip.red .et em,.dn-dst.red .et em{background:#DC3545}
.dn-strip.orange{background:#FFF4E5;border-color:#FAD7A0;border-left-color:#F59E0B}
.dn-strip.orange .pic{box-shadow:0 0 0 3px #F59E0B}
.dn-strip.orange .pic .ini{background:#F59E0B;color:#fff}
.dn-strip.orange .et,.dn-strip.orange .st{color:#92400E}
.dn-strip.orange .et em,.dn-dst.orange .et em{background:#F59E0B}
.dn-strip.grey{background:#F4F4F5;border-color:#E4E4E7;border-left-color:#A1A1AA}
.dn-strip.grey .pic{box-shadow:0 0 0 3px #D4D4D8;filter:grayscale(1)}
.dn-strip.grey .pic .ini{background:#A1A1AA;color:#fff}
.dn-strip.grey .nm b{color:#52525B}
.dn-strip.grey .et,.dn-strip.grey .st{color:#52525B}
.dn-strip.grey .et em,.dn-dst.grey .et em{background:#A1A1AA}
@media (max-width:760px){
  .dn-strip{grid-template-columns:44px minmax(0,1fr) auto;gap:10px;padding:10px 12px}
  .dn-strip .pic{width:44px;height:44px}
  .dn-strip .et{grid-column:2;grid-row:2}
  .dn-strip .st{grid-column:2/-1;grid-row:3;font-size:12.5px}
  .dn-strip .go{grid-column:3;grid-row:1}
  .dn-strip .go span{display:none}
  .dn-how{margin-left:0;flex-basis:100%}
}
/* janela com as informações completas: o que importa em destaque, o resto discreto */
.dn-box{width:min(620px,100%)}
.dn-dh{display:flex;gap:12px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:1}
.dn-dh > div{flex:1;min-width:0}
.dn-dh b{display:block;font-family:var(--font-head);font-size:18px;color:var(--ink)}
.dn-dh small{display:block;font-size:12.5px;color:var(--muted)}
.dn-dh.red .pic{box-shadow:0 0 0 3px #DC3545}.dn-dh.red .pic .ini{background:#DC3545;color:#fff}
.dn-dh.orange .pic{box-shadow:0 0 0 3px #F59E0B}.dn-dh.orange .pic .ini{background:#F59E0B;color:#fff}
.dn-dh.grey .pic{box-shadow:0 0 0 3px #D4D4D8;filter:grayscale(1)}.dn-dh.grey .pic .ini{background:#A1A1AA;color:#fff}
.dn-dst{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 18px;font-size:13.5px;font-weight:700}
.dn-dst.red{background:#FDECEE;color:#842029}
.dn-dst.orange{background:#FFF4E5;color:#92400E}
.dn-dst.grey{background:#F4F4F5;color:#52525B}
.dn-db{padding:14px 18px 18px;display:grid;gap:12px}
.dn-next{display:grid;gap:6px}
.dn-next .btn{justify-self:start}
.dn-next small{font-size:12.5px;color:var(--muted)}
.dn-boline{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;font-size:13px;color:var(--text);border-top:1px solid var(--line);padding-top:10px}
.dn-boline b{color:var(--ink);display:inline-flex;gap:6px;align-items:center}
.dn-boline small{color:var(--muted)}
.dn-boline .acts{display:flex;gap:10px;flex-wrap:wrap;margin-left:auto}
.lnk{border:0;background:none;padding:0;font:inherit;font-size:12.5px;font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:2px;cursor:pointer;display:inline-flex;gap:5px;align-items:center}
.lnk.sim{color:var(--muted)}
.dn-dec{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:10px}
.dn-dec textarea{width:100%;box-sizing:border-box;resize:vertical;font:inherit;font-size:13.5px}
.dn-dec .acts{display:flex;gap:6px;flex-wrap:wrap}
.dn-dec .btn[disabled]{opacity:.4;cursor:not-allowed}
.dn-quiet{margin:0;font-size:12.5px;color:var(--muted);display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.dn-quiet .input{max-width:220px}
.dn-rel2,.dn-tl2{font-size:12.5px;color:var(--muted)}
.dn-rel2 summary,.dn-tl2 summary{cursor:pointer;font-weight:700;color:var(--text);display:inline-flex;gap:6px;align-items:center;list-style:none}
.dn-rel2 summary::-webkit-details-marker,.dn-tl2 summary::-webkit-details-marker{display:none}
.dn-rel2 summary small,.dn-tl2 summary small{font-weight:600;color:var(--muted)}
.dn-rel2 blockquote{margin:8px 0 6px;font-size:13.5px;color:var(--ink);background:var(--bg);border-radius:10px;padding:8px 12px;line-height:1.5}
.dn-tl2 ol{margin:8px 0 0;padding-left:18px;display:grid;gap:4px}
.dn-tl2 li{line-height:1.4}
.dn-tl2 li span{color:var(--text)}
.dn-tl2 em{font-style:normal;color:var(--muted)}
.dn-tl2 q{display:block;color:var(--muted);quotes:none}
.dn-print2{justify-self:start;font-size:12.5px;font-weight:700;color:var(--ink);display:inline-flex;gap:6px;align-items:center}

/* 65 · Prova: cópia da foto do perfil guardada no momento da denúncia */
.dn-evid{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:8px 10px;background:var(--surface)}
.dn-evid img,.dn-evid .no{width:56px;height:56px;border-radius:10px;object-fit:cover;flex:none;background:var(--bg);display:grid;place-items:center;color:var(--muted);font-size:20px}
.dn-evid b{display:flex;gap:6px;align-items:center;font-size:13px;color:var(--ink)}
.dn-evid small{display:block;font-size:12px;color:var(--muted);line-height:1.4}
.rp-evid{display:flex;gap:12px;align-items:center;margin:0 0 8px}
.rp-evid img{width:90px;height:90px;object-fit:cover;border:1px solid #ddd;border-radius:6px}
.rp-evid b{display:block;font-size:12.5px}
.rp-evid small{display:block;font-size:11.5px;color:#555}
.dn-filter .chip.dark{background:var(--ink);color:#fff;border-color:var(--ink)} .dn-filter .chip.dark b{color:var(--brand)} /* filtro escolhido */

/* 66 · Primeiros passos progressivos: só o passo da vez aparece; os próximos ficam trancados no alto */
.stepper button.locked{opacity:.45;cursor:default;border-style:dashed}
.stepper button.locked:hover{transform:none;border-color:var(--line-strong);color:var(--muted)}
.gstep[hidden]{display:none!important}
.gstep.enter{animation:fieldIn .5s var(--ease) both}
.g4-room[hidden],.g4-solo[hidden]{display:none!important}
.g4-room,.g4-solo{display:grid;gap:12px}
.g4-p{margin:0;display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5;background:var(--bg);border-radius:12px;padding:10px 12px}
.g4-p i{color:var(--brand-deep);margin-top:3px}

/* 67 · Autodidata: conclui cada módulo com um toque (sem agenda e sem confirmar presença) */
.self-end{display:flex;gap:12px;align-items:center;flex-wrap:wrap;border:2px dashed var(--brand);background:#FFFDF5;border-radius:16px;padding:14px 16px;margin-top:18px}
.self-end > i{font-size:22px;color:var(--brand-deep)}
.self-end span{flex:1;min-width:200px}
.self-end b{display:block;font-family:var(--font-head);font-size:16px;color:var(--ink)}
.self-end small{display:block;font-size:13px;color:var(--text)}
.self-end.ok{border-style:solid;border-color:var(--ok);background:var(--ok-bg)}
.self-end.ok > i{color:var(--ok)}
.self-note{display:flex;gap:12px;align-items:center;flex-wrap:wrap;border:1px solid var(--brand);background:#FFFDF5;border-radius:16px;padding:12px 16px;margin:0 0 14px}
.self-note > i{font-size:20px;color:var(--brand-deep)}
.self-note span{flex:1;min-width:220px}
.self-note b{display:block;font-size:15px;color:var(--ink)}
.self-note small{display:block;font-size:13px;color:var(--text)}

/* 68 · PÁGINA PRINCIPAL (antes do login) — sendmejesus.org na identidade do Discípulo 4.0
   Mesmo conteúdo do site atual; cores sólidas (sem degradê), Sora nos títulos, Inter no texto, Anton no logotipo */
.lp{background:var(--surface)}
.lp-hdr .lp-links{display:flex;gap:18px;margin-left:10px}
.lp-hdr .lp-links a{font-size:13.5px;font-weight:700;color:var(--ink);text-decoration:none;opacity:.8}
.lp-hdr .lp-links a:hover{opacity:1;text-decoration:underline;text-underline-offset:4px}
.lp-hdr .right{gap:8px}
.lp-hdr .btn-ghost{box-shadow:inset 0 0 0 1.5px var(--ink)}
.lp-eyebrow{display:inline-flex;gap:8px;align-items:center;font-size:12.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-deep)}
.lp-eyebrow.gold{color:var(--brand)}
.lp section h2{font-size:clamp(26px,3.6vw,40px);font-weight:800;letter-spacing:-.025em}
.lp-sub{font-size:16px;color:var(--text);max-width:640px;margin:10px 0 0}
/* destaque */
.lp-hero{background:var(--ink);color:rgba(255,255,255,.82);padding:56px 0 64px;overflow:hidden}
.lp-hero-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:44px;align-items:center}
.lp-hero h1{color:#fff;font-size:clamp(32px,4.6vw,54px);font-weight:800;letter-spacing:-.03em;line-height:1.08;margin:14px 0 16px}
.lp-hero .hl{color:var(--brand)}
.lp-hero p{font-size:17px;line-height:1.6;margin:0;max-width:520px}
.lp-facts{list-style:none;display:flex;gap:10px;flex-wrap:wrap;margin:24px 0 26px;padding:0}
.lp-facts li{background:var(--dark-2);border:1px solid var(--dark-line);border-radius:16px;padding:10px 16px;min-width:108px}
.lp-facts b{display:block;font-family:var(--font-head);font-size:22px;color:var(--brand);line-height:1.1}
.lp-facts small{font-size:12.5px;color:rgba(255,255,255,.7)}
.lp-ctas{display:flex;gap:10px;flex-wrap:wrap}
.lp-line{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.5)}
.lp-line:hover{box-shadow:inset 0 0 0 1.5px #fff}
.lp-hero-img img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:52% 50%;border-radius:24px;display:block;box-shadow:0 0 0 6px var(--brand)}
/* método */
.lp-method{background:var(--dark-2);color:rgba(255,255,255,.85);border-top:1px solid var(--dark-line)}
.lp-method .wrap{display:flex;gap:10px 18px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}
.lp-method p{margin:0;font-size:13.5px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.lp-method p i,.lp-method b{color:var(--brand)}
.lp-method ul{list-style:none;margin:0;padding:0;display:flex;gap:6px;flex-wrap:wrap}
.lp-method li{background:var(--brand);color:var(--on-brand);font-weight:800;font-size:13px;border-radius:var(--pill);padding:6px 14px}
/* Mateus 28 */
.lp-map{position:relative;background:var(--dark);overflow:hidden;padding:84px 0;text-align:center}
.lp-map-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.32}
.lp-map-in{position:relative}
.lp-map h2{color:#fff;font-size:clamp(30px,5.4vw,64px)!important;text-transform:uppercase;letter-spacing:-.01em;line-height:1.05;max-width:900px;margin:14px auto 28px}
.lp-langs{list-style:none;display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin:0 0 26px;padding:0}
.lp-langs li{display:flex;flex-direction:column;align-items:center;gap:6px}
.lp-langs b{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-head);font-size:18px;color:var(--brand);border:3px solid var(--brand);background:var(--dark)}
.lp-langs span{font-size:13px;color:rgba(255,255,255,.8);font-weight:600}
.lp-call{margin:0;font-family:var(--font-head);font-weight:800;font-size:clamp(17px,2.2vw,22px);color:#fff;text-transform:uppercase;letter-spacing:.04em}
/* pergunta */
.lp-ask{background:var(--brand);padding:56px 0;text-align:center}
.lp-ask h2{text-transform:uppercase;color:var(--on-brand)}
.lp-ask p{margin:10px 0 18px;font-size:17px;color:var(--on-brand)}
.lp-ask ul{list-style:none;margin:0;padding:0;display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.lp-ask li{display:inline-flex;gap:8px;align-items:center;background:var(--ink);color:#fff;font-weight:700;border-radius:var(--pill);padding:10px 18px}
.lp-ask li i{color:var(--brand)}
/* dor */
.lp-pain{background:var(--ink);padding:64px 0;text-align:center}
.lp-pain p{margin:14px auto 0;max-width:860px;font-family:var(--font-head);font-size:clamp(20px,2.8vw,30px);font-weight:600;line-height:1.4;color:rgba(255,255,255,.88);letter-spacing:-.01em}
.lp-pain p b{color:var(--brand)}
/* problema × solução */
.lp-vs{background:var(--bg);padding:72px 0}
.lp-vs h2{max-width:880px;text-align:center;margin:0 auto 34px}
.lp-vs .hl-y{box-shadow:inset 0 -.42em 0 var(--brand)}
.lp-vs-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.lp-col{border-radius:24px;padding:24px 24px 18px}
.lp-col h3{display:flex;gap:10px;align-items:center;font-size:20px;margin-bottom:14px;flex-wrap:wrap}
.lp-col h3 small{font-family:var(--font-body);font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;opacity:.7;margin-left:auto}
.lp-col ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.lp-col li{display:flex;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-size:15px;font-weight:600}
.lp-col li::before{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-family:"Font Awesome 6 Free";font-weight:900;font-size:11px}
.lp-col.no{background:var(--surface);border:1px solid var(--line)}
.lp-col.no h3 i{color:var(--danger)}
.lp-col.no li{color:var(--text)}
.lp-col.no li::before{content:"\f00d";background:#FEE2E2;color:var(--danger)}
.lp-col.yes{background:var(--ink);color:#fff}
.lp-col.yes h3{color:#fff}
.lp-col.yes h3 i{color:var(--brand)}
.lp-col.yes li{border-top-color:var(--dark-line);color:#fff}
.lp-col.yes li::before{content:"\f00c";background:var(--brand);color:var(--on-brand)}
/* logotipo */
.lp-logo{background:var(--brand-soft);display:grid;place-items:center;padding:64px 16px}
.lp-logo img{width:min(560px,86vw);height:auto}
/* como funciona */
.lp-how{background:var(--surface);padding:72px 0;text-align:center}
.lp-how h2{margin:8px 0 30px}
.lp-how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;text-align:left}
.lp-card{position:relative;background:var(--bg);border:1px solid var(--line);border-radius:24px;padding:26px 24px;transition:transform .25s var(--ease),box-shadow .25s var(--ease)}
.lp-card:hover{transform:translateY(-4px);box-shadow:var(--sh-md)}
.lp-card .n{position:absolute;top:18px;right:18px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:var(--brand);font-family:var(--font-head);font-weight:800}
.lp-card img{width:72px;height:72px;object-fit:contain;display:block;margin-bottom:14px}
.lp-card h3{font-size:19px;margin-bottom:8px}
.lp-card p{margin:0;font-size:14.5px;line-height:1.6}
/* carteirinhas */
.lp-ids{background:var(--bg);padding:72px 0}
.lp-ids-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px}
.lp-id{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:20px 18px;display:grid;justify-items:center;text-align:center;gap:6px;box-shadow:var(--sh-sm)}
.lp-id .av{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:var(--brand);font-family:var(--font-head);font-weight:800;font-size:20px;box-shadow:0 0 0 4px var(--brand);margin-bottom:6px}
.lp-id > b{font-family:var(--font-head);font-size:17px;color:var(--ink)}
.lp-id .dc{font-size:14px;color:var(--text)}
.lp-id .dc b{font-family:var(--font-head);font-size:20px;color:var(--ink)}
.lp-id .et{display:inline-flex;gap:6px;align-items:center;border-radius:var(--pill);padding:5px 12px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin:4px 0}
.lp-id .et.ok{background:var(--ok-bg);color:var(--ok)}
.lp-id .et.go{background:var(--brand-tint);color:var(--brand-deep)}
.lp-id .et.new{background:var(--bg);color:var(--muted)}
.lp-id small{display:flex;gap:6px;align-items:center;font-size:12.5px;color:var(--muted)}
/* livro */
.lp-book{background:var(--surface);padding:72px 0}
.lp-book-in{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;align-items:center}
.lp-book-img{background:var(--ink);border-radius:28px;padding:28px;display:grid;place-items:center} /* fundo escuro: o livro amarelo aparece bem */
.lp-book-img img{width:min(360px,100%);height:auto;animation:lpFloat 5s ease-in-out infinite}
@keyframes lpFloat{50%{transform:translateY(-10px) rotate(-1deg)}}
.lp-book h2{margin:8px 0 10px}
.lp-book p{font-size:16px;margin:0 0 16px}
.lp-book-list{list-style:none;margin:0 0 22px;padding:0;display:grid;gap:8px}
.lp-book-list li{display:flex;gap:10px;align-items:center;font-weight:600;color:var(--ink)}
.lp-book-list i{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--brand);color:var(--on-brand);font-size:11px}
/* camiseta */
.lp-shirt{background:var(--brand);padding:64px 0;text-align:center}
.lp-shirt h2{text-transform:uppercase;color:var(--on-brand)}
.lp-shirt p{margin:10px 0 26px;font-size:16px;color:var(--on-brand)}
.lp-shirt-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.lp-shirt-ph{position:relative;display:block;border-radius:24px;overflow:hidden;background:var(--surface);box-shadow:var(--sh-md)}
.lp-shirt-ph img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .5s var(--ease)}
.lp-shirt-ph:hover img{transform:scale(1.04)}
.lp-shirt-ph span{position:absolute;left:14px;bottom:14px;display:inline-flex;gap:8px;align-items:center;background:var(--ink);color:#fff;font-weight:700;font-size:13px;border-radius:var(--pill);padding:8px 14px}
/* rodapé */
.lp-foot{background:var(--dark);color:rgba(255,255,255,.72);padding:48px 0 0;font-size:14px}
.lp-foot-in{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.5fr;gap:24px}
.lp-foot-brand img{width:130px;height:auto;display:block;margin-bottom:12px}
.lp-foot p{margin:0 0 10px;line-height:1.5}
.lp-foot b{color:#fff}
.lp-foot .lp-prod{color:var(--brand)}
.lp-foot h3{font-family:var(--font-body);font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-bottom:12px}
.lp-foot a{display:flex;gap:8px;align-items:center;color:rgba(255,255,255,.72);text-decoration:none;margin-bottom:8px}
.lp-foot a:hover{color:var(--brand)}
.lp-news div{display:flex;gap:6px}
.lp-news .input{flex:1;min-width:0;background:var(--dark-2);border-color:var(--dark-line);color:#fff}
.lp-foot-bot{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;border-top:1px solid var(--dark-line);margin-top:34px;padding-top:16px;padding-bottom:22px;font-size:12.5px}
.lp-foot-bot a{display:inline;margin:0}
@media (max-width:980px){
  .lp-hdr .lp-links{display:none}
  .lp-hero-in,.lp-book-in{grid-template-columns:1fr}
  .lp-hero{padding:36px 0 44px}
  .lp-how-grid{grid-template-columns:1fr}
  .lp-ids-grid{grid-template-columns:1fr 1fr}
  .lp-foot-in{grid-template-columns:1fr 1fr}
  .lp-foot-brand,.lp-news{grid-column:1/-1}
}
@media (max-width:640px){
  .lp-hdr .lp-reg{display:none}
  .lp-hdr .langs{display:none}
  .lp-vs-grid,.lp-shirt-grid{grid-template-columns:1fr}
  .lp-ids-grid{grid-template-columns:1fr 1fr;gap:10px}
  .lp-id{padding:16px 10px}
  .lp-map{padding:60px 0}
  .lp-langs b{width:54px;height:54px;font-size:16px}
  .lp-col{padding:20px 18px 14px}
  .lp-col h3 small{margin-left:0;flex-basis:100%}
}

/* 69 · Página principal — refinamentos do Lalo (27/09/2026), módulo a módulo */
/* Módulo 0 · barra de idiomas logo abaixo da barra amarela (círculos como no mapa) */
.lp-langbar{background:var(--ink);color:rgba(255,255,255,.85);border-bottom:1px solid var(--dark-line)}
.lp-langbar .wrap{display:flex;align-items:center;justify-content:center;gap:10px 18px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
.lb-t{display:inline-flex;gap:8px;align-items:center;font-size:13px;font-weight:700}
.lb-t i{color:var(--brand)}
.lb-btns{display:flex;gap:10px}
.lb-btns button{display:flex;align-items:center;gap:8px;border:0;background:none;color:rgba(255,255,255,.8);padding:0;cursor:pointer}
.lb-btns b{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-family:var(--font-head);font-size:13.5px;color:var(--brand);border:2.5px solid var(--brand);transition:background .2s,color .2s,transform .2s var(--ease)}
.lb-btns span{font-size:13px;font-weight:600}
.lb-btns button:hover b{transform:translateY(-2px)}
.lb-btns button[aria-pressed=true] b{background:var(--brand);color:var(--on-brand)}
.lb-btns button[aria-pressed=true] span{color:#fff}
/* Módulo 1 · banner principal de ponta a ponta, sem contorno */
.lp-banner{position:relative;background:var(--ink);overflow:hidden}
.lp-banner > img{display:block;width:100%;height:auto;aspect-ratio:2081/766;object-fit:cover;object-position:56% 50%}
.lp-banner-in{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:flex-end;padding-bottom:28px;pointer-events:none;max-width:1200px;left:0;right:0;margin:0 auto}
.lp-banner-cta{pointer-events:auto;font-family:var(--font-head);font-size:20px;padding:18px 30px;box-shadow:0 12px 28px rgba(0,0,0,.35)}
/* Módulo 2 · apresentação (texto + números) */
@media (min-width:981px){.lp-hero-in{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr)}} /* no celular fica em uma coluna */
.lp-hero .lp-facts{display:grid;grid-template-columns:1fr 1fr;margin:0;align-self:center}
.lp-hero .lp-facts li{min-width:0}
.lp-hero .lp-facts b i{font-size:22px}
.lp-ctas{margin-top:22px}
/* balão "Comprar livro impresso" */
.lp-popwrap{position:relative;display:inline-block}
.lp-pop{position:absolute;left:0;top:calc(100% + 12px);z-index:30;width:min(320px,86vw);background:#fff;color:var(--text);border-radius:18px;padding:16px 16px 14px;box-shadow:var(--sh-lg);display:grid;gap:10px;transform-origin:24px -8px}
.lp-pop[hidden]{display:none}
.lp-pop::before{content:"";position:absolute;top:-7px;left:28px;width:14px;height:14px;background:#fff;transform:rotate(45deg);border-radius:3px}
.lp-pop.show{animation:popIn .45s var(--ease) both}
@keyframes popIn{0%{opacity:0;transform:translateY(-6px) scale(.85)}60%{opacity:1;transform:translateY(2px) scale(1.03)}100%{opacity:1;transform:none}} /* 100% com opacity:1: sem isso as respostas "Desconhecimento · Medo · Insegurança" sumiam no fim (Lalo, 28/09/2026) */
.lp-pop > b{font-family:var(--font-head);font-size:14.5px;color:var(--ink);padding-right:24px;line-height:1.35}
.lp-pop .x{position:absolute;top:10px;right:10px;border:0;background:var(--bg);width:28px;height:28px;border-radius:50%;cursor:pointer;color:var(--ink)}
.lp-pop ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.lp-pop li{display:flex;gap:10px;align-items:center;font-weight:700;color:var(--ink);background:var(--bg);border-radius:12px;padding:8px 10px}
.lp-pop li em{margin-left:auto;font-style:normal;font-size:12px;font-weight:800;color:var(--muted);background:#fff;border-radius:var(--pill);padding:3px 9px}
.lp-pop li em.ok{background:var(--ok-bg);color:var(--ok)}
.lp-pop .fl svg{width:26px;height:18px;border-radius:3px;display:block;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.lp-pop p{margin:0;font-size:13.5px;display:flex;gap:8px;align-items:flex-start}
.lp-pop p i{color:var(--brand-deep);margin-top:3px}
.lp-pop .btn{justify-self:start}
/* Módulo 3 · onde aplicar */
.lp-method p b{color:#fff;font-size:14px}
/* Módulo 4 · mapa: bandeiras que caem como gotas, uma de cada vez */
.lp-drops{position:absolute;inset:0;z-index:1;pointer-events:none}
.lp-drop{position:absolute;width:0;height:0}
.lp-drop .pin{position:absolute;left:-16px;top:-39px;width:32px;height:32px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:#fff;box-shadow:0 6px 14px rgba(0,0,0,.4);display:grid;place-items:center;opacity:0}
.lp-drop .pin > span{width:24px;height:24px;border-radius:50%;overflow:hidden;transform:rotate(45deg);display:grid;place-items:center}
.lp-drop .pin svg{height:24px;width:auto;display:block}
.lp-drop::after{content:"";position:absolute;left:0;top:0;width:40px;height:12px;border:2px solid var(--brand);border-radius:50%;transform:translate(-50%,-50%) scale(.2);opacity:0}
.lp-drops.in .lp-drop .pin{animation:dropIn .9s var(--ease) both;animation-delay:calc(var(--i) * .35s)}
.lp-drops.in .lp-drop::after{animation:ripple 5.25s ease-out infinite;animation-delay:calc(var(--i) * .35s + .45s)}
@keyframes dropIn{0%{opacity:0;transform:translateY(-70px) rotate(-45deg) scale(.5)}55%{opacity:1;transform:translateY(3px) rotate(-45deg) scale(1.08,.9)}75%{transform:translateY(-4px) rotate(-45deg) scale(.97,1.03)}100%{opacity:1;transform:rotate(-45deg)}}
@keyframes ripple{0%{opacity:.95;transform:translate(-50%,-50%) scale(.2)}18%{opacity:0;transform:translate(-50%,-50%) scale(2.4)}100%{opacity:0;transform:translate(-50%,-50%) scale(2.4)}}
.lp-map-in{z-index:2}
@media (prefers-reduced-motion:reduce){.lp-drops.in .lp-drop .pin{animation:none;opacity:1}.lp-drops.in .lp-drop::after{animation:none}}
/* Módulo 8 · logotipo em preto sólido sobre fundo transparente (a cor da faixa pode mudar) */
.lp-logo{transition:background .5s var(--ease);gap:18px}
.lp-logo-mark{display:block;width:min(560px,86vw);aspect-ratio:777/208;background:var(--ink);-webkit-mask:url(img/landing/logo-diagram.png) center/contain no-repeat;mask:url(img/landing/logo-diagram.png) center/contain no-repeat}
.lp-swatch{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:center}
.lp-swatch small{font-size:12px;font-weight:700;color:var(--ink);opacity:.75}
.lp-swatch button{width:26px;height:26px;border-radius:50%;border:2px solid var(--ink);background:var(--c);cursor:pointer;padding:0}
.lp-swatch button[aria-pressed=true]{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--ink)}
/* Módulo 10 · discipuladores: igreja no topo + pares de cartões da Rede */
.lp-net{margin-top:28px;display:grid;justify-items:center}
.lp-net-church{width:min(280px,100%)}
.lp-net-church .dcard{width:100%}
.lp-net-stem{width:3px;height:34px;background:var(--brand);border-radius:3px}
.lp-net-pairs{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;border-top:3px solid var(--brand);padding-top:20px;position:relative}
.lp-pair{display:grid;gap:8px;align-content:start;justify-items:stretch}
.lp-pair .dcard{width:100%;margin:0}
.lp-pair-tag{justify-self:center;display:inline-flex;gap:6px;align-items:center;background:var(--ink);color:#fff;font-size:12px;font-weight:800;border-radius:var(--pill);padding:6px 12px;text-align:center}
.lp-pair-tag i{color:var(--brand)}
.lp-pair.alert .lp-pair-tag{background:#DC2626}
.lp-pair.alert .lp-pair-tag i{color:#fff}
.lp-pair-arrow{justify-self:center;display:inline-flex;gap:6px;align-items:center;font-size:12px;font-weight:800;color:var(--brand-deep);text-transform:uppercase;letter-spacing:.06em}
/* Módulo 11 · livro em fundo branco, flutuando + chamada para começar */
.lp-book{background:var(--surface)}
.lp-book-img{background:var(--surface)!important;padding:12px}
.lp-book-img img{filter:drop-shadow(0 24px 30px rgba(14,14,16,.22))}
.lp-book h2 .hl-y{box-shadow:inset 0 -.42em 0 var(--brand)}
.lp-book-list i{background:var(--ink)!important;color:var(--brand)!important}
.lp-urge{display:flex;gap:8px;align-items:flex-start;font-size:14px!important;font-weight:600;color:var(--ink);background:var(--brand-tint);border-radius:12px;padding:10px 12px}
.lp-urge i{color:var(--brand-deep);margin-top:3px}
.lp-start{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:6px}
.lp-start > div{display:grid;gap:6px;justify-items:start}
.lp-start small{font-size:12.5px;color:var(--muted);line-height:1.4}
@media (max-width:980px){
  .lp-hero .lp-facts{grid-template-columns:repeat(4,1fr)}
  .lp-net-pairs{grid-template-columns:repeat(4,minmax(240px,1fr));overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;padding-bottom:10px}
  .lp-net-hint{display:flex!important}
  .lp-pair{scroll-snap-align:start}
}
@media (max-width:640px){
  .lp-banner > img{aspect-ratio:auto;height:300px}
  .lp-banner-in{justify-content:center;padding-bottom:18px}
  .lp-banner-cta{font-size:17px;padding:15px 24px}
  .lp-hero .lp-facts{grid-template-columns:1fr 1fr}
  .lb-t{flex-basis:100%;justify-content:center}
  .lb-btns span{font-size:12px}
  .lp-start{grid-template-columns:1fr}
  .lp-net-pairs{grid-template-columns:repeat(4,minmax(78%,1fr))}
}

/* Módulo 4 · mapa: no computador o texto fica num painel escuro (as bandeiras aparecem em volta);
   no celular o mapa vira uma faixa acima do texto, sem cortar e sem ficar por cima das letras */
.lp-map-art{position:absolute;inset:0;z-index:0}
.lp-map-in{max-width:880px;background:rgba(10,10,11,.84);border-radius:28px;padding:34px 28px}
@media (max-width:640px){
  .lp-map{padding:22px 0 48px} /* espaço para as gotas do topo do mapa */
  .lp-map-art{position:relative;inset:auto;aspect-ratio:1994/559;margin-bottom:22px}
  .lp-map-art .lp-map-bg{opacity:.55}
  .lp-map-in{background:none;padding:0 16px}
  .lp-drop{transform:scale(.55)}
}
.lp-net-hint{display:none;gap:8px;align-items:center;justify-content:center;font-size:12.5px;font-weight:700;color:var(--muted);margin:0 0 10px}
.lp-net-hint i{color:var(--brand-deep);animation:nudge 1.6s ease-in-out infinite}
@keyframes nudge{50%{transform:translateX(5px)}}
.lp-hero{overflow:visible;position:relative;z-index:5} /* o balão do livro fica por cima da seção de baixo */

/* Módulo 8 · escolha do material na faixa do logotipo (amarelo Avivalista · azul Conservador · branco personalizado) */
.lp-mats{display:grid;justify-items:center;gap:6px;width:min(920px,100%);text-align:center}
.lp-mats h3{font-size:clamp(19px,2.4vw,24px);color:var(--ink)}
.lp-mats > p{margin:0 0 8px;font-size:14.5px;color:var(--ink);opacity:.8}
.lp-mats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:100%}
.lp-mats button{display:grid;grid-template-columns:auto 1fr;column-gap:10px;row-gap:2px;align-items:center;text-align:left;background:#fff;border:2px solid transparent;border-radius:18px;padding:12px 14px;cursor:pointer;box-shadow:var(--sh-sm);transition:transform .2s var(--ease),border-color .2s,box-shadow .2s}
.lp-mats button:hover{transform:translateY(-2px);box-shadow:var(--sh-md)}
.lp-mats button i{grid-row:span 2;width:30px;height:30px;border-radius:50%;background:var(--c);border:2px solid var(--ink);display:grid;place-items:center;font-style:normal}
.lp-mats button b{font-family:var(--font-head);font-size:15px;color:var(--ink)}
.lp-mats button small{font-size:12.5px;color:var(--text);line-height:1.4}
.lp-mats button[aria-pressed=true]{border-color:var(--ink);box-shadow:0 0 0 3px rgba(14,14,16,.12),var(--sh-md)}
.lp-mats button[aria-pressed=true] i::after{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;font-size:12px;color:var(--ink)}
.lp-logo[style*="#FFFFFF"] .lp-mats button,.lp-logo[style*="rgb(255, 255, 255)"] .lp-mats button{border-color:var(--line)}
.lp-logo[style*="#FFFFFF"] .lp-mats button[aria-pressed=true],.lp-logo[style*="rgb(255, 255, 255)"] .lp-mats button[aria-pressed=true]{border-color:var(--ink)}
@media (max-width:760px){.lp-mats-row{grid-template-columns:1fr}}

/* 70 · Cartão da igreja sem números (membros, salas, desde) — Lalo, 27/09/2026 */
.chcard .bottom{flex-direction:column;gap:4px;text-align:center}
.ch-lock{display:flex;gap:6px;align-items:center;justify-content:center;font-size:11.5px;color:var(--muted);line-height:1.35}
.ch-lock i{font-size:10px}
.chw-dl .full + div{grid-column:1/-1}

/* 71 · Página principal — revisão de funil e movimento (Lalo, 27/09/2026) */
/* Módulo 1 · banner com movimento lento (zoom suave) */
.lp-banner > img{animation:lpKen 24s ease-in-out infinite alternate;transform-origin:60% 50%}
@keyframes lpKen{from{transform:scale(1)}to{transform:scale(1.07) translateX(-1.5%)}}
.lp-banner-cta{animation:lpBob 3.2s ease-in-out infinite}
@keyframes lpBob{50%{transform:translateY(-4px)}}
/* Módulo 2 · sublinhado que se desenha no destaque */
.lp-hero .hl{text-decoration:underline;text-decoration-thickness:.09em;text-underline-offset:.14em;text-decoration-color:transparent;transition:text-decoration-color 1s var(--ease) .6s} /* sublinhado em todas as linhas */
.lp-hero-txt.in .hl{text-decoration-color:var(--brand)}
.lp-facts li{transition:transform .3s var(--ease),border-color .3s}
.lp-facts li:hover{transform:translateY(-3px);border-color:var(--brand)}
/* Módulo 3 · onde aplicar: faixa em movimento contínuo */
.lp-method .wrap{flex-wrap:nowrap;justify-content:flex-start}
.lp-method p{flex:none}
.lp-ticker{flex:1;min-width:0;overflow:hidden}
.lp-ticker ul{display:flex;gap:6px;width:max-content;animation:lpTick 24s linear infinite}
.lp-ticker:hover ul{animation-play-state:paused}
@keyframes lpTick{to{transform:translateX(calc(-50% - 3px))}}
/* Módulo 5 · as três respostas aparecem uma de cada vez */
.lp-ask-chips li{opacity:0;transform:scale(.8)}
.lp-ask-chips.in li{animation:popIn .55s var(--ease) both}
.lp-ask-chips.in li:nth-child(2){animation-delay:.18s}
.lp-ask-chips.in li:nth-child(3){animation-delay:.36s}
.lp-ask-chips.in li:nth-child(4){animation-delay:.54s}
/* Módulo 6 · as palavras-chave acendem em amarelo */
.lp-pain p b{color:#fff;transition:color .8s var(--ease) .6s}
.lp-pain p.in b{color:var(--brand)}
/* Módulo 7 · problema × solução: os dois em branco; a solução em amarelo */
.lp-vs-grid{grid-template-columns:1fr auto 1fr;align-items:center}
.lp-col{background:var(--surface)!important;border:1px solid var(--line);color:var(--text)}
.lp-col h3 .ic{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:15px;flex:none}
.lp-col.no h3{color:var(--ink)}
.lp-col.no h3 .ic{background:#FEE2E2;color:var(--danger)}
.lp-col.no li{color:var(--muted)!important;text-decoration:line-through;text-decoration-color:rgba(220,38,38,.35)}
.lp-col.yes{border:3px solid var(--brand);box-shadow:0 18px 40px rgba(255,193,7,.25)}
.lp-col.yes h3{color:var(--ink)!important}
.lp-col.yes h3 .ic{background:var(--brand);color:var(--on-brand)}
.lp-col.yes h3 small{color:var(--brand-deep);opacity:1}
.lp-col.yes li{color:var(--ink)!important;border-top-color:var(--line)!important;font-weight:700}
.lp-col.yes li::before{background:var(--brand)!important;color:var(--on-brand)!important}
.lp-col li{opacity:0;transform:translateX(-12px);transition:opacity .45s var(--ease),transform .45s var(--ease)}
.lp-col.yes li{transform:translateX(12px)}
.lp-col.in li{opacity:1;transform:none}
.lp-col.in li:nth-child(1){transition-delay:.15s}.lp-col.in li:nth-child(2){transition-delay:.22s}.lp-col.in li:nth-child(3){transition-delay:.29s}.lp-col.in li:nth-child(4){transition-delay:.36s}
.lp-col.in li:nth-child(5){transition-delay:.43s}.lp-col.in li:nth-child(6){transition-delay:.5s}.lp-col.in li:nth-child(7){transition-delay:.57s}.lp-col.in li:nth-child(8){transition-delay:.64s}
.lp-vs-badge{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:var(--brand);font-family:var(--font-head);font-weight:800;font-size:17px;box-shadow:0 0 0 6px var(--bg);justify-self:center}
.lp-vs-badge.in{animation:popIn .6s var(--ease) both .3s}
/* Módulo 8 · a linha amarela liga os 3 passos */
.lp-how-grid{position:relative;padding-top:20px}
.lp-how-grid::before{content:"";position:absolute;left:12%;right:12%;top:20px;height:3px;background:var(--brand);border-radius:3px;transform:scaleX(0);transform-origin:left;transition:transform 1.4s var(--ease) .3s}
.lp-how-grid.in::before{transform:scaleX(1)}
.lp-card{padding-top:34px}
.lp-card .n{top:-19px;left:50%;right:auto;transform:translateX(-50%);width:38px;height:38px;box-shadow:0 0 0 5px var(--surface);font-size:16px}
.lp-card img{margin:0 auto 14px}
.lp-card h3,.lp-card p{text-align:center}
/* Módulo 10 · setas, pontinhos e arrastar */
.lp-net-nav{display:none;align-items:center;gap:10px;margin:0 0 12px;flex-wrap:wrap;justify-content:center}
.lp-net.scrolls .lp-net-nav{display:flex}
.lp-net-nav small{flex-basis:100%;text-align:center;font-size:12px;font-weight:700;color:var(--muted)}
.lp-net-dots{display:flex;gap:6px}
.lp-net-dots button{width:10px;height:10px;border-radius:50%;border:0;background:var(--line-strong);padding:0;cursor:pointer;transition:width .25s var(--ease),background .25s}
.lp-net-dots button[aria-pressed=true]{width:26px;border-radius:6px;background:var(--ink)}
.lp-net-pairs{scrollbar-width:none;cursor:grab;user-select:none;-webkit-user-select:none}
.lp-net-pairs::-webkit-scrollbar{display:none}
.lp-net-pairs.dragging{cursor:grabbing;scroll-snap-type:none!important}
.lp-net-pairs.dragging .dcard{pointer-events:none}
.lp-net-hint{display:none!important}
/* AÇÃO · barra fixa no celular */
.lp-sticky{position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--surface);box-shadow:0 -8px 24px rgba(14,14,16,.12);transform:translateY(110%);transition:transform .35s var(--ease)}
.lp-sticky .btn{flex:1;padding:12px 10px;font-size:13.5px}
.lp-sticky.show{transform:none}
/* rodapé mais enxuto */
@media (min-width:981px){.lp-foot-in{grid-template-columns:1.3fr 1fr 1fr 1fr 1.5fr}}
@media (max-width:980px){.lp-vs-grid{grid-template-columns:1fr}.lp-vs-badge{margin:-6px 0}.lp-how-grid::before{display:none}.lp-how-grid{gap:30px}}
@media (max-width:760px){.lp-sticky{display:flex}.lp-foot{padding-bottom:70px}}
@media (max-width:640px){.lp-method .wrap{flex-wrap:wrap}.lp-ticker{flex-basis:100%}}
@media (prefers-reduced-motion:reduce){.lp-banner > img,.lp-banner-cta,.lp-ticker ul{animation:none}.lp-col li{opacity:1;transform:none}.lp-ask-chips li{opacity:1;transform:none}}
.lp-col.yes h3 .ic i{color:var(--on-brand)!important} .lp-col.no h3 .ic i{color:var(--danger)!important} /* ícones do título visíveis */

/* 72 · Porta de entrada: idiomas em círculos (mesmo estilo da página principal) */
.auth-langs{gap:8px}
.auth-langs button{width:38px;height:38px;border-radius:50%;border:2.5px solid var(--ink);background:#fff;font-family:var(--font-head);font-size:12.5px;font-weight:800;color:var(--ink);padding:0;display:grid;place-items:center;transition:background .2s,color .2s,transform .2s var(--ease)}
.auth-langs button:hover{transform:translateY(-2px)}
.auth-langs button[aria-pressed=true]{background:var(--brand);border-color:var(--ink);color:var(--on-brand)}

/* 73 · Menu: rola dentro da tela e o "Sair" (vermelho) fica sempre visível no rodapé do menu (Lalo, 27/09/2026) */
.dd#ddMenu{max-height:calc(100dvh - 96px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.dd#ddMenu > a.danger{position:sticky;bottom:-8px;margin-top:4px;background:#fff;border-top:1px solid var(--line);border-radius:0 0 12px 12px;padding:14px 12px;font-weight:700;box-shadow:0 -10px 14px -10px rgba(0,0,0,.12)}
.dd#ddMenu > a.danger:hover{background:#FDECEC}
.dd#ddMenu > a.danger i{color:var(--danger)!important}
@media (max-width:760px){.dd#ddMenu{max-height:calc(100dvh - 96px - 72px - env(safe-area-inset-bottom))}}

/* 74 · Usuários (master e editor): pesquisa por nome, telefone, @perfil ou ID + filtros em etiquetas (Lalo, 27/09/2026) */
.us-search{position:relative;margin:14px 0 12px}
.us-search > i{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:16px;pointer-events:none}
.us-search .input{width:100%;height:54px;border-radius:var(--pill);padding:0 52px 0 48px;font-size:16px;border:2px solid var(--line-strong);background:#fff}
.us-search .input:focus{border-color:var(--ink);outline:0;box-shadow:0 0 0 4px var(--brand-tint)}
.us-search .input::-webkit-search-cancel-button{display:none}
.us-x{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;border:0;background:var(--bg);color:var(--ink);cursor:pointer}
.us-x[hidden]{display:none}
.us-filters{display:grid;gap:10px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 14px 12px}
.us-grp{display:grid;grid-template-columns:150px 1fr;gap:8px 12px;align-items:start}
.us-gt{display:flex;gap:8px;align-items:center;font-family:var(--font-head);font-size:13px;font-weight:700;color:var(--ink);padding-top:7px}
.us-gt i{color:var(--brand-deep);width:16px;text-align:center}
.us-tags{display:flex;flex-wrap:wrap;gap:6px}
.us-tag{display:inline-flex;align-items:center;gap:7px;border:1.5px solid var(--line-strong);background:#fff;border-radius:var(--pill);padding:5px 8px 5px 12px;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .2s var(--ease)}
.us-tag:hover{border-color:var(--ink);transform:translateY(-1px)}
.us-tag .fl svg{width:20px;height:14px;border-radius:2px;display:block;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.us-tag small{min-width:20px;height:20px;border-radius:var(--pill);background:var(--bg);display:grid;place-items:center;font-size:11px;font-weight:800;color:var(--muted);padding:0 6px}
.us-tag[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.us-tag[aria-pressed=true] small{background:var(--brand);color:var(--on-brand)}
.us-more{border:0;background:none;font-size:13px;font-weight:700;color:var(--brand-deep);text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:5px 6px}
.us-bar{display:flex;align-items:center;gap:10px;margin:16px 0 8px;min-height:32px}
.us-bar b{font-family:var(--font-head);font-size:15px;color:var(--ink)}
.us-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.us-row{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:14px;align-items:center;text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:10px 14px;cursor:pointer;color:var(--text);animation:usIn .35s var(--ease) both;animation-delay:var(--d,0s);transition:border-color .2s,box-shadow .2s,transform .2s var(--ease)}
@keyframes usIn{from{opacity:0;transform:translateY(8px)}}
.us-row:hover{border-color:var(--brand);box-shadow:var(--sh-md);transform:translateY(-1px)}
.us-row.alert{border-left:5px solid var(--danger)}
.us-pic{position:relative;width:50px;height:50px}
.us-pic img,.us-pic .ini{width:50px;height:50px;border-radius:50%;object-fit:cover;display:grid;place-items:center;background:var(--panel);font-family:var(--font-head);font-weight:800;font-size:16px;color:var(--ink);box-shadow:0 0 0 2.5px var(--brand)}
.us-fl{position:absolute;right:-5px;bottom:-3px;width:22px;height:22px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 1px 4px rgba(0,0,0,.15)}
.us-fl svg{width:14px;height:10px;border-radius:1px;display:block}
.us-main{display:grid;gap:2px;min-width:0}
.us-main b{font-family:var(--font-head);font-size:15.5px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.us-main small{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.us-ch i{font-size:10.5px;margin-right:3px}
.us-row mark{background:var(--brand);color:var(--on-brand);border-radius:3px;padding:0 1px}
.us-side{display:grid;justify-items:end;gap:4px}
.us-id{font-family:ui-monospace,Consolas,monospace;font-size:12.5px;font-weight:800;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:3px 8px;letter-spacing:.02em}
.us-id.hit{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}
.us-ph{font-size:12px;color:var(--text);white-space:nowrap}
.us-ph i{font-size:10px;color:var(--muted);margin-right:3px}
.us-st{font-size:11px;font-weight:800;border-radius:var(--pill);padding:2px 9px;background:var(--bg);color:var(--text);white-space:nowrap}
.us-st.ok{background:var(--brand-tint);color:var(--brand-deep)}
.us-st.alert{background:#FEE2E2;color:#991B1B}
.us-go{color:var(--line-strong)}
.us-box{width:min(420px,100%)}
.us-card{padding:16px 16px 4px}
.us-card .dcard{cursor:default}
.us-card .dcard.in:hover{transform:none}
.us-dl{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin:12px 16px 0;padding:14px;background:var(--bg);border-radius:14px}
.us-dl dt{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.us-dl dd{margin:2px 0 0;font-size:13.5px;font-weight:600;color:var(--ink);word-break:break-word;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.us-dl dd .fl svg{width:20px;height:14px;display:block;border-radius:2px}
.us-dl dd .chip{padding:3px 9px;font-size:12px}
.us-note{display:flex;gap:8px;align-items:flex-start;margin:12px 16px 16px;font-size:12.5px;line-height:1.5;color:var(--text)}
.us-note i{color:var(--brand-deep);margin-top:3px}
@media (max-width:760px){
  .us-grp{grid-template-columns:1fr;gap:6px}
  .us-gt{padding-top:0}
  .us-tags{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -14px;padding:0 14px 2px}
  .us-tags::-webkit-scrollbar{display:none}
  .us-tag,.us-more{flex:none}
  .us-row{grid-template-columns:auto minmax(0,1fr) auto;gap:10px;padding:10px 12px}
  .us-side{grid-column:2/-1;grid-row:2;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
  .us-ph{display:none}
  .us-go{grid-column:3;grid-row:1}
}

/* 75 · Meu perfil: ID que nunca muda + troca de e-mail com confirmação (Lalo, 27/09/2026) */
.pf-id{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;background:var(--ink);color:rgba(255,255,255,.8);border-radius:16px;padding:14px 16px}
.pf-id .ic{width:42px;height:42px;border-radius:12px;background:var(--brand);color:var(--on-brand);display:grid;place-items:center;font-size:18px}
.pf-id .tx{display:grid;gap:1px;min-width:0}
.pf-id small{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--brand)}
.pf-id b{font-family:ui-monospace,Consolas,monospace;font-size:22px;color:#fff;letter-spacing:.04em}
.pf-id em{font-style:normal;font-size:12.5px;line-height:1.45}
.pf-id .chip{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.pf-id .chip:hover{border-color:#fff}
@media (max-width:560px){.pf-id{grid-template-columns:auto 1fr}.pf-id .chip{grid-column:1/-1;justify-self:start}}
.em-box{display:grid;gap:12px;margin-top:10px;background:var(--bg);border-radius:16px;padding:14px;animation:usIn .3s var(--ease)}
.em-box[hidden],.em-pend[hidden]{display:none}
.fl-hint{font-size:11.5px;color:var(--muted)}
.em-err{margin:0;background:#FEE2E2;color:#991B1B;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:600}
.em-err[hidden]{display:none}
.em-how{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.em-how li{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.45;color:var(--text)}
.em-how i{width:26px;height:26px;border-radius:50%;background:#fff;color:var(--brand-deep);display:grid;place-items:center;font-size:12px;flex:none}
.em-acts{display:flex;gap:8px;flex-wrap:wrap}
.em-pend{display:flex;gap:10px;align-items:flex-start;margin-top:10px;background:var(--brand-tint);border-radius:12px;padding:10px 12px;font-size:13px;line-height:1.5;color:var(--ink)}
.em-pend > i{color:var(--brand-deep);margin-top:3px}
.em-pend small{display:block;color:var(--muted);margin-top:2px}
.em-pend .lnk{border:0;background:none;padding:0;font:inherit;font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:2px;cursor:pointer}

/* 76 · Perfil de apoio (equipe ajuda a pessoa) + histórico de alterações (Lalo, 27/09/2026) */
.ap{display:grid;gap:14px;max-width:820px}
.ap .ptitle{margin:0}
.ap-back{display:inline-flex;gap:8px;align-items:center;font-size:13px;font-weight:700;color:var(--muted);text-decoration:none;justify-self:start}
.ap-back:hover{color:var(--ink)}
#gate{display:grid;gap:14px}
.ap-warn{display:flex;gap:10px;align-items:flex-start;margin:0;background:var(--ink);color:rgba(255,255,255,.85);border-radius:14px;padding:12px 14px;font-size:13.5px;line-height:1.5}
.ap-warn b{color:#fff}
.ap-warn i{color:var(--brand);margin-top:3px}
.ap-who{display:flex;gap:14px;align-items:center;padding:16px}
.ap-pic,.ap-pic img,.ap-pic .ini{width:64px!important;height:64px!important}
.ap-pic .ini{font-size:20px!important}
.ap-id{display:grid;gap:4px;min-width:0}
.ap-id > b{font-family:var(--font-head);font-size:19px;color:var(--ink)}
.ap-id > small{font-size:13px;color:var(--muted)}
.ap-chips{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.ap-chips .us-id i{font-size:10px;margin-left:3px;color:var(--muted)}
.ap-sec{padding:18px}
.ap-probs{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ap-probs li{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;background:#FFF8E1;border:1px solid #FDE7A6;border-radius:14px;padding:10px 12px}
.ap-probs li.done{background:var(--bg);border-color:var(--line)}
.ap-probs .ic{width:34px;height:34px;border-radius:50%;background:#fff;color:var(--brand-deep);display:grid;place-items:center}
.ap-probs li.done .ic{color:var(--ok)}
.ap-probs b{display:block;font-size:14px;color:var(--ink)}
.ap-probs small{font-size:12.5px;color:var(--text)}
.ap-ok{margin:10px 0 0;display:flex;gap:8px;align-items:center;font-weight:700;color:var(--ok)}
.ap-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ap-form > .em-err,.ap-form > .ap-note,.ap-form > .em-acts{grid-column:1/-1}
.ap-note{display:flex;gap:8px;align-items:flex-start;margin:0;font-size:12.5px;color:var(--text);line-height:1.5}
.ap-note i{color:var(--brand-deep);margin-top:3px}
.ap-acc{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:14px;color:var(--text)}
.ap-noteform{display:grid;gap:8px;justify-items:start}
.ap-noteform textarea{width:100%;height:auto;min-height:70px;padding:10px 14px;resize:vertical;font-family:inherit}
@media (max-width:640px){.ap-form{grid-template-columns:1fr}.ap-probs li{grid-template-columns:auto 1fr}.ap-probs li .btn{grid-column:1/-1;justify-self:start}}
/* histórico */
.hs-list{list-style:none;margin:0;padding:0;display:grid;gap:0;position:relative}
.hs-list li{display:grid;grid-template-columns:auto 1fr;gap:12px;padding:10px 0;border-top:1px solid var(--line)}
.hs-list li:first-child{border-top:0}
.hs-dot{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:12px;background:var(--bg);color:var(--muted)}
.hs-list li.staff .hs-dot{background:var(--ink);color:var(--brand)}
.hs-list b{display:block;font-size:13.5px;color:var(--ink)}
.hs-ch{display:block;font-size:13px;color:var(--text);word-break:break-word}
.hs-ch s{color:var(--muted)}
.hs-ch i{font-size:10px;color:var(--muted);margin:0 3px}
.hs-list small{display:block;font-size:11.5px;color:var(--muted);margin-top:2px}
.hs-empty{margin:0;font-size:13px;color:var(--muted)}
/* botão Ajudar na lista de usuários */
.us-list > li:not(.ig-empty){display:flex;gap:8px;align-items:stretch}
.us-list > li .us-row{flex:1;min-width:0}
.us-help{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:74px;flex:none;border-radius:16px;background:var(--ink);color:#fff;text-decoration:none;font-size:11.5px;font-weight:800;transition:transform .2s var(--ease),background .2s}
.us-help i{color:var(--brand);font-size:16px}
.us-help:hover{transform:translateY(-1px);background:#000}
.us-cta{display:flex;gap:8px;flex-wrap:wrap;margin:12px 16px 0}
@media (max-width:760px){.us-help{width:56px;font-size:10.5px}}
.pf-hist{order:9;background:var(--bg);border-radius:14px;padding:0 14px}
.pf-hist summary{display:flex;gap:8px;align-items:center;flex-wrap:wrap;list-style:none;cursor:pointer;padding:12px 0;font-weight:700;color:var(--ink);font-size:14px}
.pf-hist summary::-webkit-details-marker{display:none}
.pf-hist summary small{font-weight:500;color:var(--muted);font-size:12px}
.pf-hist summary .cv{margin-left:auto;transition:transform .25s}
.pf-hist[open] summary .cv{transform:rotate(180deg)}
.pf-hist > div{padding-bottom:10px}

/* 77 · Porta de entrada: botão para voltar à página inicial (Lalo, 27/09/2026 — ao sair da conta, cai aqui) */
.auth-home{position:relative;z-index:1;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;background:#161200;color:#fff;text-decoration:none;font-size:13.5px;font-weight:700;border-radius:999px;padding:9px 16px 9px 12px;box-shadow:0 6px 16px rgba(22,18,0,.25);transition:transform .2s var(--ease),background .2s}
.auth-home i{width:24px;height:24px;border-radius:50%;background:var(--brand);color:#161200;display:grid;place-items:center;font-size:11px}
.auth-home:hover{transform:translateY(-2px);background:#000}
.auth-home:focus-visible{outline:3px solid #161200;outline-offset:3px}

/* 78 · País de origem e código do telefone com pesquisa em todos os países (Lalo, 27/09/2026) */
.cpk-btn{width:100%;height:46px;border-radius:14px;border:1.5px solid rgba(0,0,0,.1);background:#fff;padding:0 14px;font-size:14px;font-weight:700;color:var(--ink);text-align:left;cursor:pointer}
.cpk-btn:hover,.cpk-ddi:hover{border-color:var(--ink)}
.cpk-bn{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cpk-btn > i{color:var(--muted);font-size:13px}
.flagsel .fl-ic img,.cpk-ddi .fl-ic img{display:block}
.phone .cpk-ddi{display:flex;align-items:center;gap:7px;border:1.5px solid transparent;cursor:pointer;min-width:0;padding:0 10px;flex:none}
.cpk-ddi .fl-ic{width:24px;height:17px;border-radius:3px;overflow:hidden;box-shadow:var(--sh-sm);flex:none}
.cpk-ddi .fl-ic svg{display:block;width:100%;height:100%}
.cpk-ddi i{font-size:10px;color:var(--muted)}
.cpk{position:fixed;inset:0;z-index:95;display:grid;place-items:center;padding:16px;background:rgba(14,14,16,.5);opacity:0;transition:opacity .2s}
.cpk.open{opacity:1}
.cpk-box{width:min(440px,100%);max-height:min(620px,calc(100dvh - 32px));display:flex;flex-direction:column;background:#fff;border-radius:18px;box-shadow:var(--sh-lg);overflow:hidden;transform:translateY(10px);transition:transform .3s var(--ease)}
.cpk.open .cpk-box{transform:none}
.cpk-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 8px}
.cpk-head b{font-family:var(--font-head);font-size:17px;color:var(--ink)}
.cpk-x{width:34px;height:34px;border-radius:50%;border:0;background:var(--bg);color:var(--ink);cursor:pointer}
.cpk-search{position:relative;margin:0 16px 10px}
.cpk-search i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted)}
.cpk-search input{width:100%;height:46px;border-radius:var(--pill);border:2px solid var(--line-strong);padding:0 16px 0 40px;font-size:15px}
.cpk-search input:focus{outline:0;border-color:var(--ink);box-shadow:0 0 0 4px var(--brand-tint)}
.cpk-list{list-style:none;margin:0;padding:0 8px 10px;overflow-y:auto;overscroll-behavior:contain}
.cpk-list li[data-iso]{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:10px;border-radius:12px;cursor:pointer;font-size:14.5px;color:var(--ink)}
.cpk-list li[data-iso]:hover{background:var(--bg)}
.cpk-list li[aria-selected=true]{background:var(--brand-tint);font-weight:700}
.cpk-fl{width:28px;height:20px;border-radius:3px;overflow:hidden;box-shadow:0 0 0 1px rgba(0,0,0,.08);display:block}
.cpk-fl svg{display:block;width:100%;height:100%}
.cpk-d{font-size:13px;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}
.cpk-sep{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:12px 10px 4px}
.cpk-none{padding:18px 10px;color:var(--muted);font-size:14px}

/* 79 · Rodapé do menu: Início (página inicial) ao lado de Sair, sempre visíveis (Lalo, 27/09/2026) */
.dd#ddMenu > .dd-foot{position:sticky;bottom:-8px;display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:4px 0 0;padding:8px 0;background:#fff;border-top:1px solid var(--line);box-shadow:0 -10px 14px -10px rgba(0,0,0,.12)}
.dd#ddMenu .dd-foot a{justify-content:center;padding:12px 10px;font-weight:700}
.dd#ddMenu .dd-foot a.home{background:var(--brand-tint);color:var(--ink)}
.dd#ddMenu .dd-foot a.home i{color:var(--brand-deep)}
.dd#ddMenu .dd-foot a.home:hover{background:var(--brand-soft)}
.dd#ddMenu .dd-foot a.danger{background:#FDECEC}
.dd#ddMenu .dd-foot a.danger:hover{background:#FAD4D4}
.dd#ddMenu{overflow-x:hidden}

/* 80 · Modo da conta: Master ↔ pessoal na mesma conta (Lalo, 27/09/2026) */
.dd-mode{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:0 4px 8px;padding:4px;background:var(--bg);border-radius:14px}
.dd-mode button{display:flex;align-items:center;justify-content:center;gap:7px;border:0;background:transparent;border-radius:10px;padding:9px 6px;font-size:12.5px;font-weight:700;color:var(--muted);cursor:pointer;transition:background .2s,color .2s}
.dd-mode button i{font-size:12px}
.dd-mode button[aria-pressed=true]{background:var(--ink);color:#fff;box-shadow:var(--sh-sm)}
.dd-mode button[aria-pressed=true] i{color:var(--brand)}
.dd-mode button:hover:not([aria-pressed=true]){color:var(--ink);background:#fff}
.modo-strip{position:sticky;top:var(--hdr-h,64px);z-index:39;display:flex;align-items:center;justify-content:center;gap:10px 14px;flex-wrap:wrap;background:#1E1E20;color:rgba(255,255,255,.85);font-size:12.5px;padding:6px 12px;text-align:center}
.modo-strip b{color:#fff}
.modo-strip i{color:var(--brand)}
.modo-strip button{display:inline-flex;align-items:center;gap:6px;border:0;background:var(--brand);color:#161200;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:800;cursor:pointer}
.modo-strip button i{color:#161200}

/* 81 · Rede: etiquetas de status que filtram (no lugar do "+ Novo discípulo") — Lalo, 27/09/2026 */
.st-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:10px 0 4px}
.st-t{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-right:2px}
.st-tag{display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--line-strong);background:#fff;border-radius:999px;padding:5px 7px 5px 11px;font-size:12.5px;font-weight:700;color:var(--ink);cursor:pointer;transition:background .2s,border-color .2s,color .2s,transform .2s var(--ease)}
.st-tag:hover{border-color:var(--ink);transform:translateY(-1px)}
.st-tag i{font-size:11px;color:var(--muted)}
.st-tag small{min-width:20px;height:20px;border-radius:999px;background:var(--bg);display:grid;place-items:center;font-size:11px;font-weight:800;color:var(--muted);padding:0 6px}
.st-tag.st-ok i,.st-tag.st-grad i{color:var(--brand-deep)}
.st-tag.st-alert i{color:var(--danger)}
.st-tag[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.st-tag[aria-pressed=true] i{color:var(--brand)}
.st-tag.st-alert[aria-pressed=true]{background:var(--danger);border-color:var(--danger)}
.st-tag.st-alert[aria-pressed=true] i{color:#fff}
.st-tag[aria-pressed=true] small{background:var(--brand);color:var(--on-brand)}
.st-clear{border:0;background:none;font-size:12.5px;font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:5px 4px}
@media (max-width:640px){.st-tags{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-left:-16px;margin-right:-16px;padding:0 16px 2px}.st-tags::-webkit-scrollbar{display:none}.st-tag,.st-t,.st-clear{flex:none}}

/* 82 · Igreja da sala (criar aula) + igrejas duplicadas + aviso no perfil — Lalo, 28/09/2026 */
.ch-room{display:grid;gap:8px}
.ch-auto{display:flex;gap:10px;align-items:flex-start;cursor:pointer;background:var(--brand-tint);border-radius:14px;padding:10px 12px}
.ch-auto input{position:absolute;opacity:0;pointer-events:none}
.ch-auto .box{width:22px;height:22px;border-radius:6px;border:2px solid var(--ink);background:#fff;display:grid;place-items:center;flex:none;margin-top:1px;font-size:11px;color:transparent;transition:background .2s,color .2s}
.ch-auto input:checked + .box{background:var(--ink);color:var(--brand)}
.ch-auto input:focus-visible + .box{outline:3px solid var(--ink);outline-offset:2px}
.ch-auto b{display:block;font-size:14px;color:var(--ink)}
.ch-auto small{font-size:12.5px;color:var(--text);line-height:1.45}
.ch-pick{display:grid;gap:6px;transition:opacity .2s}
.ch-pick.off{opacity:.45}
.ch-pick .select{width:100%}
.kl-ch{display:block;font-family:var(--font-body);font-size:12px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--warm-muted);margin-top:2px}
.kl-ch i{font-size:10.5px;margin-right:3px}
.rp-church{display:flex;gap:10px;align-items:flex-start;margin:0;background:var(--brand-tint);border-radius:12px;padding:10px 12px;font-size:13px;line-height:1.5;color:var(--ink)}
.rp-church i{color:var(--brand-deep);margin-top:3px}
.ig-tab.dup.hot{background:#FEE2E2;border-color:var(--danger);color:#991B1B}
.ig-tab.dup.hot b{background:var(--danger);color:#fff}
.cr-row.dup{border:2px solid var(--danger)!important;background:#FFF5F5!important;box-shadow:0 0 0 3px rgba(220,38,38,.1)}
.cr-row.dup .cr-ic{background:var(--danger)!important;color:#fff!important}
.cr-dup{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;background:#FEE2E2;color:#7F1D1D;border-radius:12px;padding:10px 12px;font-size:13px;line-height:1.5}
.cr-dup > i{color:var(--danger);margin-top:3px}
.cr-dup em{font-style:normal;font-weight:700}
.btn-danger{background:var(--danger);color:#fff}
.btn-danger:hover{background:#B91C1C}
.dup-note{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:flex-start;background:#FEF2F2;border:2px solid var(--danger);border-radius:18px;padding:14px 16px;margin-bottom:12px;animation:usIn .35s var(--ease)}
.dup-note[hidden]{display:none}
.dup-note .ic{width:38px;height:38px;border-radius:50%;background:var(--danger);color:#fff;display:grid;place-items:center}
.dup-note b{color:var(--ink)}
.dup-note > div > b{display:block;font-family:var(--font-head);font-size:16px;margin-bottom:4px}
.dup-note p{margin:0 0 10px;font-size:13.5px;line-height:1.55;color:var(--text)}
.dup-note .vseal{vertical-align:middle}
.dup-note .dn-acts{display:flex;gap:8px;flex-wrap:wrap}
.field > label.ch-auto{display:flex;text-transform:none;letter-spacing:0;font-size:14px;font-weight:500;color:var(--text);margin:0}
.field > label.ch-auto b{text-transform:none;letter-spacing:0;font-weight:700}
.field > label.ch-auto small{display:block;text-transform:none;letter-spacing:0;font-weight:500}

/* 83 · Sala: convite com QR Code; entrada na sala com a igreja já preenchida (Lalo, 28/09/2026). O grupo do WhatsApp foi retirado. */
.sl-tools{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:4px}
.sl-tool{display:grid;gap:10px;align-content:start;border-radius:16px;padding:14px;border:1.5px solid var(--line)}
.sl-tool.qr{background:var(--bg)}
.sl-tool-h{display:flex;gap:12px;align-items:flex-start}
.sl-tool-h .ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:19px;flex:none}
.sl-tool.qr .ic{background:var(--ink);color:var(--brand)}
.sl-tool-h b{display:block;font-family:var(--font-head);font-size:15px;color:var(--ink)}
.sl-tool-h small{display:block;font-size:12.5px;color:var(--text);line-height:1.45;margin-top:2px}
.sl-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.sl-acts .lnk,.inv-acts .lnk,.church-wrap .lnk{border:0;background:none;padding:4px 2px;font:inherit;font-size:13px;font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.btn-wa{background:#25D366;color:#fff;box-shadow:0 8px 18px rgba(37,211,102,.28)}
.btn-wa:hover{background:#1EBE5B}
@media (max-width:760px){.sl-tools{grid-template-columns:1fr}}
.sl-tools.one{grid-template-columns:1fr}
@media (min-width:761px){.sl-tools.one .sl-tool{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px}}
/* janela do convite */
.inv-box{width:min(860px,100%)}
.inv-body{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:20px;padding:18px}
.inv-qr{display:grid;gap:10px;justify-items:center;align-content:start;text-align:center}
.inv-qr-img{width:min(280px,100%);aspect-ratio:1;border-radius:18px;background:#fff;border:1.5px solid var(--line);padding:10px;display:grid;place-items:center;font-size:28px;color:var(--muted);box-shadow:var(--sh-sm)}
.inv-qr-img svg{display:block;width:100%;height:100%}
.inv-qr > small{font-size:12.5px;font-weight:700;color:var(--text)}
.inv-qr-acts{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.inv-side{display:grid;gap:8px;align-content:start;min-width:0}
.inv-side .fl{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.inv-side .fl small{text-transform:none;letter-spacing:0;font-weight:600;color:var(--muted)}
.inv-link{display:flex;gap:8px;align-items:center;background:var(--bg);border-radius:12px;padding:6px 6px 6px 12px;min-width:0}
.inv-link span{flex:1;min-width:0;font-size:13px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#invText{height:auto;min-height:210px;padding:10px 12px;resize:vertical;font-family:inherit;font-size:13.5px;line-height:1.5;white-space:pre-wrap}
.inv-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.inv-proto{display:flex;gap:8px;align-items:flex-start;margin:4px 0 0;font-size:12px;color:var(--muted)}
.inv-proto a{color:var(--link);font-weight:700}
.qr-err{margin:0;font-size:13px;color:var(--danger);text-align:center}
@media (max-width:720px){.inv-body{grid-template-columns:1fr}}
/* QR Code em tela cheia (para projetar depois da palestra) */
.qf{position:fixed;inset:0;z-index:120;background:#0A0A0B;color:#fff;display:grid;place-items:center;padding:24px;overflow:auto}
.qf[hidden]{display:none}
body.qf-open{overflow:hidden}
.qf-in{display:grid;gap:14px;justify-items:center;text-align:center;max-width:900px}
.qf-mark{font-family:var(--font-mark);font-size:clamp(28px,4vw,44px);color:var(--brand);transform:skewX(-12deg) scaleX(.86);text-transform:uppercase;letter-spacing:.005em}
.qf h2{color:#fff;font-size:clamp(22px,3.4vw,38px);font-weight:800;margin:0}
.qf-img{width:min(60vh,78vw);aspect-ratio:1;background:#fff;border-radius:24px;padding:18px;box-shadow:0 0 0 8px var(--brand)}
.qf-img svg{display:block;width:100%;height:100%}
.qf-room{font-family:var(--font-head);font-size:clamp(20px,3vw,32px);text-transform:uppercase}
.qf-url{font-size:clamp(14px,1.8vw,20px);color:rgba(255,255,255,.75);word-break:break-all}
.qf-url b,.qf-code b{color:var(--brand)}
.qf-code{font-size:clamp(16px,2.2vw,24px);font-weight:700}
.qf-in small{font-size:14px;color:rgba(255,255,255,.7)}
.qf-x{position:fixed;top:16px;right:16px;width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.12);color:#fff;font-size:20px;cursor:pointer}
.qf-x:hover{background:rgba(255,255,255,.22)}
.qf-x:focus-visible{outline:3px solid var(--brand);outline-offset:3px}
/* entrada na sala: igreja já preenchida (dá para trocar) */
.rp-church{align-items:center!important;flex-wrap:wrap}
.rp-church[hidden]{display:none}
.rp-church > span{flex:1;min-width:0}
.rp-church small{display:block;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-deep)}
.rp-church b{font-size:14.5px}
.church-wrap{display:grid;gap:8px}
.church-wrap[hidden]{display:none}
.church-wrap .lnk{justify-self:start}

/* 84 · Criar aula: pesquisa da igreja da sala (milhares de igrejas) — Lalo, 28/09/2026 */
.ch-chosen{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#fff;border:1.5px solid var(--line-strong);border-radius:14px;padding:10px 12px}
.ch-chosen:empty{display:none}
.ch-ic{width:34px;height:34px;border-radius:10px;background:var(--ink);color:var(--brand);display:grid;place-items:center;flex:none;font-size:14px}
.ch-tx{flex:1;min-width:0;display:grid}
.ch-tx b{font-size:14px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ch-tx small{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ch-find{display:grid;gap:6px}
.ch-find[hidden]{display:none}
.ch-q{position:relative}
.ch-q > i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}
.ch-q .input{width:100%;padding-left:40px}
.ch-count{font-size:12px;color:var(--muted)}
.ch-res{list-style:none;margin:0;padding:0;display:grid;gap:4px;max-height:260px;overflow-y:auto}
.ch-res button{width:100%;display:flex;align-items:center;gap:10px;text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:8px 10px;cursor:pointer;transition:border-color .2s,background .2s}
.ch-res button:hover,.ch-res button:focus-visible{border-color:var(--ink);background:var(--brand-tint)}
.ch-res .vseal{flex:none}
.ch-tx b{white-space:normal;line-height:1.3}
.ch-sl{margin-top:4px}
.ch-sl .vseal{font-size:11px}

/* 85 · Criar aula: responsáveis pela sala — tipo de sala e hierarquia do evento (Lalo, 28/09/2026) */
.resp{display:grid;gap:10px}
.resp-hint{font-size:12.5px;color:var(--muted)}
.resp-hint[hidden]{display:none}
.rtype{display:grid;gap:8px}
.field > label.rt,.rt{display:flex;gap:10px;align-items:flex-start;cursor:pointer;background:#fff;border:1.5px solid var(--line-strong);border-radius:14px;padding:10px 12px;margin:0;text-transform:none;letter-spacing:0;font-size:14px;font-weight:500;color:var(--text);transition:border-color .2s,background .2s}
.rt:hover{border-color:var(--ink)}
.rt input{position:absolute;opacity:0;pointer-events:none}
.rt.sel{border-color:var(--ink);background:var(--brand-tint);box-shadow:0 0 0 3px rgba(14,14,16,.08)}
.rt input:focus-visible ~ .ic{outline:3px solid var(--ink);outline-offset:2px}
.rt .ic{width:34px;height:34px;border-radius:10px;background:var(--bg);color:var(--ink);display:grid;place-items:center;flex:none}
.rt.sel .ic{background:var(--ink);color:var(--brand)}
.rt .tx b{display:block;font-size:14px;color:var(--ink)}
.rt .tx small{display:block;font-size:12.5px;color:var(--text);line-height:1.4}
.rbranch{display:grid;gap:10px;border-left:3px solid var(--brand);padding:4px 0 4px 12px;animation:usIn .3s var(--ease)}
.rbranch[hidden]{display:none}
.rsub{display:flex;gap:8px;align-items:center;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.rsub i{color:var(--brand-deep)}
.hrow{display:grid;gap:6px}
.hrow > div{display:grid;gap:6px;justify-items:start}
.hl{font-size:12.5px;font-weight:800;color:var(--ink)}
.hl em{font-style:normal;font-weight:600;color:var(--muted);margin-left:4px}
.hnote{font-size:12px;color:var(--muted)}
.pchip{display:flex;gap:10px;align-items:center;background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:6px 8px;min-width:0;width:100%}
.pav{width:34px;height:34px;flex:none}
.pav img,.pav .ini{width:34px;height:34px;border-radius:50%;object-fit:cover;display:grid;place-items:center;background:var(--panel);font-family:var(--font-head);font-weight:800;font-size:12px;color:var(--ink);box-shadow:0 0 0 2px var(--brand)}
.ptx{flex:1;min-width:0;display:grid;text-align:left}
.ptx b{font-size:13.5px;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ptx b em{font-style:normal;font-size:10.5px;font-weight:800;background:var(--ink);color:#fff;border-radius:999px;padding:1px 7px;margin-left:4px;vertical-align:middle}
.ptx small{font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.px{width:28px;height:28px;border-radius:50%;border:0;background:var(--bg);color:var(--ink);cursor:pointer;flex:none}
.px:hover{background:#FEE2E2;color:var(--danger)}
.psearch{display:grid;gap:6px;width:100%}
.pres{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.pres button{width:100%;border:0;background:none;padding:0;cursor:pointer;border-radius:12px}
.pres button:hover .pchip,.pres button:focus-visible .pchip{border-color:var(--ink);background:var(--brand-tint)}
.pnote{font-size:12px;color:var(--muted)}

/* 86 · Igreja da sala: logotipo da igreja e, embaixo, o pastor presidente (Lalo, 28/09/2026) */
.ch-chosen{display:grid!important;gap:10px}
.chc-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.chc-logo svg,.chc-logo img,.chr-logo svg,.chr-logo img{display:block;flex:none}
.chc-logo svg,.chc-logo img{border-radius:16px;box-shadow:var(--sh-sm)}
.chr-logo svg,.chr-logo img{border-radius:10px}
.chc-pas{display:flex;align-items:center;gap:10px;background:var(--bg);border-radius:12px;padding:8px 10px}
.chc-pas .pav,.chc-pas .pav img,.chc-pas .pav .ini{width:46px;height:46px}
.chc-pas .ptx small{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.chc-pas .ptx b{font-size:14.5px}

/* 87 · Cartão da sala: igreja/evento na faixa cinza, hierarquia logo abaixo, discipulador direto em destaque (Lalo, 28/09/2026) */
.kl-head{flex-wrap:wrap}
.kl-ctx{flex-basis:100%;display:flex;align-items:center;gap:10px;min-width:0;margin-top:2px;padding-top:10px;border-top:1px solid rgba(0,0,0,.08)}
.kl-ctx .cx-ic{width:38px;height:38px;border-radius:10px;background:#2A2A2C;color:var(--acc,var(--brand));display:grid;place-items:center;flex:none}
.kl-ctx .cx-logo svg,.kl-ctx .cx-logo img{display:block;border-radius:10px}
.kl-ctx .cx-tx{min-width:0;display:grid}
.kl-ctx b{font-family:var(--font-head);font-size:14.5px;color:var(--title-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kl-ctx small{font-size:12.5px;color:#5A5553;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cx-ok{color:#B8860B;font-size:13px}
.kl-hier{padding:16px 28px 2px}
.kl-hier .hier-box{background:#fff}
.kl-hier .hier-box.main{border:2px solid var(--ink);background:var(--brand-tint);box-shadow:0 0 0 3px rgba(14,14,16,.06)}
.kl-hier .hier-box small{font-size:10.5px;color:var(--warm-muted)}
.kl-hier .hier-box.main small{color:var(--ink)}
.kl-hier .hier-box span{min-width:0}
.hier-box .hn{font-size:13.5px;font-weight:700;color:var(--title-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hier-box .hi{width:22px;height:22px;border-radius:50%;background:var(--panel);display:grid;place-items:center;font-size:9.5px;font-weight:800;color:var(--ink);flex:none}
.hrow.main > .hl{color:var(--ink)}
.hrow.main .pchip{border:2px solid var(--ink);background:var(--brand-tint)}
.hrow[hidden]{display:none}
@media (max-width:720px){
  .kl-ctx{grid-column:1/-1}
  .kl-hier{padding:14px 16px 2px}
  .kl-hier .hier-row{grid-template-columns:1fr;gap:0}
  .kl-hier .hier-row .ln{width:2px;height:10px;justify-self:center}
}

/* 88 · Alterar responsáveis da sala (discipulador principal, auxiliares, anfitrião, palestrante) + histórico — Lalo, 28/09/2026 */
.kl-hier-acts{display:flex;justify-content:flex-end;margin-top:8px}
.resp-box{width:min(560px,100%)}
.resp-body{display:grid;gap:14px;padding:16px 18px}
.resp-body .hrow > div{display:grid;gap:6px;justify-items:start}
.resp-note{display:flex;gap:8px;align-items:flex-start;margin:0;background:var(--brand-tint);border-radius:12px;padding:10px 12px;font-size:12.5px;line-height:1.5;color:var(--ink)}
.resp-note i{color:var(--brand-deep);margin-top:3px}
.resp-hist{background:var(--bg);border-radius:12px;padding:0 12px}
.resp-hist summary{display:flex;gap:8px;align-items:center;list-style:none;cursor:pointer;padding:10px 0;font-size:13px;font-weight:700;color:var(--ink)}
.resp-hist summary::-webkit-details-marker{display:none}
.resp-hist summary .cv{margin-left:auto;transition:transform .25s}
.resp-hist[open] summary .cv{transform:rotate(180deg)}
.resp-hist > ol,.resp-hist > p{padding-bottom:10px}
@media (max-width:720px){.kl-hier-acts{justify-content:center}}

/* 89 · Diretoria: pastor presidente pode tirar supervisor (com confirmação) — Lalo, 28/09/2026 */
.succ li.can{grid-template-columns:auto 1fr auto auto}
.succ .unsup{padding:4px 10px;font-size:12px}
.succ .unsup:hover{border-color:var(--danger);color:var(--danger)}
.unsup-ask{grid-column:1/-1;display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12.5px;font-weight:700;color:#991B1B}
.unsup-ask .chip{padding:4px 10px;font-size:12px}
.unsup-ask{color:var(--ink)!important}
.unsup-ask .select{height:34px;font-size:12.5px;padding:0 30px 0 10px;max-width:100%}
.succ .unsup:hover{border-color:var(--ink)!important;color:var(--ink)!important}

/* 90 · Supervisor × LÍDER DE DISCIPULADO; alerta "a melhor opção é trocar" (Lalo, 28/09/2026) */
.role-b{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.04em;border-radius:999px;padding:1px 8px;margin-right:4px;vertical-align:1px}
.role-b.sup{background:var(--ink);color:#fff}
.role-b.lider{background:var(--brand);color:var(--on-brand)}
.unsup-warn,.rm-warn{display:flex;gap:10px;align-items:flex-start;background:#FFF7ED;border:1.5px solid #FDBA74;border-radius:12px;padding:10px 12px;font-size:12.5px;line-height:1.5;color:#7C2D12;font-weight:500}
.unsup-warn{flex-basis:100%;margin-top:4px}
.unsup-warn[hidden]{display:none}
.unsup-warn > i,.rm-warn > i{color:#EA580C;margin-top:3px}
.rm-warn > div{display:grid;gap:6px}
.rm-warn b{color:#7C2D12;font-size:13.5px}
.rm-acts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.rm-acts .lnk{border:0;background:none;padding:4px 2px;font:inherit;font-size:13px;font-weight:700;color:var(--ink);text-decoration:underline;cursor:pointer}
#nomRole{max-width:230px}

/* 91 · Simulação identificada: marca "Simulação" em tudo o que é fictício (Lalo, 28/09/2026) */
.sim-tag{display:inline-flex;align-items:center;gap:4px;margin-left:6px;padding:1px 8px;border-radius:999px;background:#EDE9FE;color:#5B21B6;font-family:var(--font-body,inherit);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;vertical-align:2px;white-space:nowrap}
.sim-tag i{font-size:9px}

/* 92 · Entrada (3.46/3.47): recuperar acesso, senha incorreta, idioma e boas-vindas (Lalo, 28/09/2026) */
.auth-h2{font-family:var(--font-head);font-size:22px;margin:0 0 6px;color:var(--ink)}
.auth-p{margin:0 0 12px;font-size:14px;color:var(--text);line-height:1.55}
.auth-ok{display:flex;gap:8px;align-items:flex-start;margin:0 0 12px;background:#E8F5E9;border:1px solid #C8E6C9;color:#2E7D32;border-radius:12px;padding:10px 12px;font-size:14px;line-height:1.5}
.auth-err{display:grid;gap:8px;margin:0 0 12px;background:#FAFAFA;border:1px solid var(--line);border-radius:14px;padding:10px 12px}
.auth-err p{margin:0;display:flex;gap:8px;align-items:center;background:#FDECEA;border:1px solid #F4C7C3;color:#C62828;border-radius:10px;padding:8px 10px;font-size:14px;font-weight:600}
.auth-err small{display:flex;gap:6px;align-items:flex-start;font-size:12px;color:var(--text);line-height:1.45}
.auth-lang-hint{display:flex;gap:8px;align-items:flex-start;margin:0 0 12px;background:#FFF8E1;border:1px solid #F2E2A8;border-radius:12px;padding:9px 12px;font-size:13px;line-height:1.45;color:#161200}
.auth-lang-hint i{margin-top:3px}
.welcome{position:fixed;inset:0;z-index:200;border:0;background:var(--brand);color:#161200;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:24px;text-align:center;cursor:pointer}
.welcome .w-logo{width:min(280px,64vw);height:auto;animation:wpop .55s cubic-bezier(.2,.8,.2,1) both}
.welcome .w-t{font-family:var(--font-head);font-size:clamp(22px,4vw,32px);font-weight:800;max-width:560px;animation:wrise .5s .25s ease-out both}
.welcome .wordmark{font-size:clamp(44px,8vw,64px);transform-origin:center;animation:wrise .5s .35s ease-out both}
.welcome small{font-size:14px;font-weight:600;opacity:.7;animation:wrise .5s .45s ease-out both}
@keyframes wpop{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:none}}
@keyframes wrise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.welcome .w-logo,.welcome .w-t,.welcome .wordmark,.welcome small{animation:none}}

/* 93 · Página inicial: título em cima do mapa, fundido com ele (Lalo, 28/09/2026):
   "Sua igreja" pequeno, "DISCIPULANDO GLOBALMENTE" grande; o mapa perde a borda dura e se funde no fundo */
.lp-global{position:relative;z-index:3;display:block;text-align:center;margin:0 auto 18px;padding:0 16px;line-height:1}
.lp-global small{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-body);font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.78)}
.lp-global small i{color:var(--brand);font-size:15px}
.lp-global span{display:block;margin-top:8px;font-family:var(--font-mark);font-weight:400;text-transform:uppercase;font-size:clamp(34px,6.4vw,72px);letter-spacing:.005em;color:var(--brand);text-shadow:0 4px 24px rgba(0,0,0,.65);text-wrap:balance}
.lp-map-bg{-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 22%,#000 78%,transparent 100%),linear-gradient(to right,transparent 0,#000 10%,#000 90%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to bottom,transparent 0,#000 22%,#000 78%,transparent 100%),linear-gradient(to right,transparent 0,#000 10%,#000 90%,transparent 100%);mask-composite:intersect}
@media (max-width:820px){.lp-global{margin:4px auto 26px}.lp-global small{font-size:11px}}

/* 94 · Página inicial: pergunta, dor, missionários e problema com ícone e animação (Lalo, 28/09/2026) */
.lp-blk-ic{position:relative;display:grid;place-items:center;width:64px;height:64px;margin:0 auto 16px;border-radius:50%;font-size:26px}
.lp-blk-ic.ask{background:var(--ink);color:var(--brand)}
.lp-blk-ic.ask::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--ink);opacity:0}
.lp-blk-ic.ask.in::after{animation:blkRing 2.4s ease-out .6s infinite}
.lp-blk-ic.pain{background:var(--dark-2);color:var(--brand);box-shadow:0 0 0 1px var(--dark-line)}
.lp-blk-ic.pain.in i{animation:blkPiece 3.6s var(--ease) .5s infinite}
.lp-blk-ic.miss{background:var(--brand);color:var(--on-brand);box-shadow:0 10px 24px rgba(255,193,7,.35)}
.lp-blk-ic.miss.in i{animation:blkWalk .9s var(--ease) .2s both,blkBob 2.8s ease-in-out 1.2s infinite}
@keyframes blkRing{0%{transform:scale(.9);opacity:.55}100%{transform:scale(1.45);opacity:0}}
@keyframes blkPiece{0%,55%,100%{transform:none}62%{transform:translate(6px,-6px) rotate(14deg)}72%{transform:translate(-3px,2px) rotate(-8deg)}82%{transform:translate(2px,-1px) rotate(4deg)}}
@keyframes blkWalk{from{transform:translateX(-46px);opacity:0}to{transform:none;opacity:1}}
@keyframes blkBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
/* pergunta: depois de entrar, as pílulas "respiram" uma de cada vez e o ícone de cada uma balança */
.lp-ask-chips.in li{animation:popIn .55s var(--ease) both,chipFloat 4.2s ease-in-out 1.4s infinite}
.lp-ask-chips.in li:nth-child(2){animation-delay:.18s,1.9s}
.lp-ask-chips.in li:nth-child(3){animation-delay:.36s,2.4s}
.lp-ask-chips.in li:nth-child(4){animation-delay:.54s,2.9s}
.lp-ask-chips.in li i{display:inline-block;animation:chipWiggle .7s var(--ease) .7s both}
.lp-ask-chips.in li:nth-child(2) i{animation-delay:.88s}
.lp-ask-chips.in li:nth-child(3) i{animation-delay:1.06s}
.lp-ask-chips.in li:nth-child(4) i{animation-delay:1.24s}
@keyframes chipFloat{0%,100%{transform:translateY(0);opacity:1}50%{transform:translateY(-4px);opacity:1}}
@keyframes chipWiggle{0%,100%{transform:none}25%{transform:rotate(-14deg) scale(1.15)}60%{transform:rotate(10deg)}}
/* missionários: o destaque amarelo de "discipuladores nativos" é desenhado */
.lp-vs h2 .hl-y{box-shadow:none;background:linear-gradient(var(--brand),var(--brand)) left bottom / 0 .42em no-repeat;transition:background-size .9s var(--ease) .5s}
.lp-vs h2.in .hl-y{background-size:100% .42em}
/* problema × solução: X treme, ✓ pulsa, itens entram um de cada vez e o risco atravessa o problema aos poucos */
.lp-col.no.in h3 .ic{animation:blkShake .6s var(--ease) .3s both}
.lp-col.yes.in h3 .ic{animation:blkPulse 2.2s ease-in-out 1s infinite}
@keyframes blkShake{0%,100%{transform:none}20%{transform:rotate(-16deg)}40%{transform:rotate(14deg)}60%{transform:rotate(-8deg)}80%{transform:rotate(5deg)}}
@keyframes blkPulse{0%,100%{box-shadow:0 0 0 0 rgba(255,193,7,.55)}50%{box-shadow:0 0 0 8px rgba(255,193,7,0)}}
.lp-col li:nth-child(1){transition-delay:.15s}.lp-col li:nth-child(2){transition-delay:.25s}.lp-col li:nth-child(3){transition-delay:.35s}.lp-col li:nth-child(4){transition-delay:.45s}
.lp-col li:nth-child(5){transition-delay:.55s}.lp-col li:nth-child(6){transition-delay:.65s}.lp-col li:nth-child(7){transition-delay:.75s}.lp-col li:nth-child(8){transition-delay:.85s}
.lp-col.no li{text-decoration:none!important;background:linear-gradient(rgba(220,38,38,.45),rgba(220,38,38,.45)) 34px 52% / 0 1.5px no-repeat;transition:opacity .45s var(--ease),transform .45s var(--ease),background-size .6s var(--ease)}
.lp-col.no.in li{background-size:calc(100% - 34px) 1.5px}
.lp-col.no.in li:nth-child(1){transition-delay:.15s,.15s,.9s}.lp-col.no.in li:nth-child(2){transition-delay:.25s,.25s,1.05s}.lp-col.no.in li:nth-child(3){transition-delay:.35s,.35s,1.2s}.lp-col.no.in li:nth-child(4){transition-delay:.45s,.45s,1.35s}
.lp-col.no.in li:nth-child(5){transition-delay:.55s,.55s,1.5s}.lp-col.no.in li:nth-child(6){transition-delay:.65s,.65s,1.65s}.lp-col.no.in li:nth-child(7){transition-delay:.75s,.75s,1.8s}.lp-col.no.in li:nth-child(8){transition-delay:.85s,.85s,1.95s}
@media (prefers-reduced-motion:reduce){.lp-blk-ic i,.lp-blk-ic::after,.lp-col h3 .ic,.lp-ask-chips.in li,.lp-ask-chips.in li i{animation:none!important}.lp-vs h2 .hl-y{background-size:100% .42em}.lp-col.no li{background-size:calc(100% - 34px) 1.5px}}
/* 94b · o risco do Problema cobre só o texto e aparece aos poucos, item por item */
.lp-col.no li,.lp-col.no.in li{background:none!important;text-decoration:line-through!important;text-decoration-thickness:1.5px!important;text-decoration-color:transparent!important;transition:opacity .45s var(--ease),transform .45s var(--ease),text-decoration-color .6s var(--ease)}
.lp-col.no.in li{text-decoration-color:rgba(220,38,38,.55)!important}

/* 95 · Livro num palco de anúncio (Lalo, 28/09/2026: a área estava branca demais) — holofote amarelo, raios girando
   devagar, mapa-múndi como textura, brilhos e sombra no chão acompanhando o livro que flutua */
.lp-book{background:radial-gradient(1200px 520px at 18% 45%,#FFF4CC 0,rgba(255,244,204,0) 70%),linear-gradient(180deg,#FFFBEA 0,#fff 100%)!important}
.lp-book-img.lp-stage{position:relative;overflow:hidden;isolation:isolate;min-height:420px;padding:36px 20px 44px!important;border-radius:28px;background:radial-gradient(120% 90% at 50% 40%,#2A2A2D 0,#141416 55%,#0A0A0B 100%)!important;box-shadow:0 30px 60px rgba(14,14,16,.28)}
.lp-stage .bk-map{position:absolute;inset:0;z-index:0;background:url(img/landing/Maps.png) center/140% auto no-repeat;opacity:.16;filter:grayscale(1) brightness(1.8);-webkit-mask-image:radial-gradient(closest-side,#000 55%,transparent);mask-image:radial-gradient(closest-side,#000 55%,transparent)}
.lp-stage .bk-rays{position:absolute;left:50%;top:44%;z-index:0;width:190%;aspect-ratio:1;transform:translate(-50%,-50%);background:repeating-conic-gradient(from 0deg,rgba(255,193,7,.16) 0 7deg,transparent 7deg 22deg);-webkit-mask-image:radial-gradient(closest-side,#000 18%,transparent 72%);mask-image:radial-gradient(closest-side,#000 18%,transparent 72%);animation:bkSpin 60s linear infinite}
.lp-stage .bk-glow{position:absolute;left:50%;top:44%;z-index:0;width:78%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(255,193,7,.55),rgba(255,193,7,.12) 60%,transparent);filter:blur(6px);animation:bkGlow 5s ease-in-out infinite}
.lp-stage .bk-floor{position:absolute;left:50%;bottom:30px;z-index:0;width:56%;height:22px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.75),transparent);animation:bkFloor 5s ease-in-out infinite}
.lp-stage img{position:relative;z-index:2;filter:drop-shadow(0 26px 34px rgba(0,0,0,.55))!important}
.lp-stage .bk-spark{position:absolute;z-index:1;width:6px;height:6px;border-radius:50%;background:var(--brand);box-shadow:0 0 12px 3px rgba(255,193,7,.7);opacity:0;animation:bkTwinkle 3.2s ease-in-out infinite}
.lp-stage .s1{left:14%;top:20%}.lp-stage .s2{left:84%;top:16%;animation-delay:.6s}.lp-stage .s3{left:9%;top:66%;animation-delay:1.2s;width:4px;height:4px}
.lp-stage .s4{left:90%;top:58%;animation-delay:1.8s}.lp-stage .s5{left:72%;top:84%;animation-delay:2.4s;width:4px;height:4px}.lp-stage .s6{left:26%;top:86%;animation-delay:.9s}
@keyframes bkSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes bkGlow{0%,100%{opacity:.85;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}}
@keyframes bkFloor{0%,100%{transform:translateX(-50%) scale(1);opacity:.85}50%{transform:translateX(-50%) scale(.82);opacity:.55}}
@keyframes bkTwinkle{0%,100%{opacity:0;transform:scale(.4)}50%{opacity:1;transform:scale(1)}}
@media (max-width:820px){.lp-book-img.lp-stage{min-height:340px}}
@media (prefers-reduced-motion:reduce){.lp-stage .bk-rays,.lp-stage .bk-glow,.lp-stage .bk-floor,.lp-stage .bk-spark{animation:none}.lp-stage .bk-spark{opacity:.8}}

/* 95b · Livro: o palco vira NOITE com o globo girando atrás, só com as luzes das cidades (Lalo, 28/09/2026) */
.lp-book-img.lp-stage.night{background:radial-gradient(120% 90% at 50% 40%,#0b0d12 0,#050608 60%,#020203 100%)!important}
.lp-stage.night .bk-globe{position:absolute;inset:0;z-index:0;width:100%;height:100%;display:block}
.lp-stage.night .bk-floor{background:radial-gradient(closest-side,rgba(255,193,7,.18),transparent)}
.lp-stage.night img{filter:drop-shadow(0 26px 40px rgba(0,0,0,.85)) drop-shadow(0 0 28px rgba(255,193,7,.18))!important}
.lp-stage.night img{width:min(300px,74%)!important}

/* 96 · Em cima do globo: discipulado online em três idiomas + livro chegando em alguns países (Lalo, 28/09/2026) */
.lp-book-side{display:grid;gap:16px;min-width:0}
.lp-book-head{text-align:center;display:grid;gap:10px;justify-items:center}
.lp-book-head .bh-t{margin:0;display:flex;align-items:center;gap:8px;font-family:var(--font-head);font-weight:800;font-size:clamp(18px,2.2vw,22px);color:var(--ink)}
.lp-book-head .bh-t i{color:var(--brand-deep)}
.bh-langs{list-style:none;margin:0;padding:0;display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.bh-langs li{display:inline-flex;align-items:center;gap:6px;background:var(--ink);color:#fff;border-radius:var(--pill);padding:7px 14px 7px 7px;font-size:13px;font-weight:700}
.bh-langs b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--brand);color:var(--on-brand);font-size:10.5px;font-weight:800}
.lp-book-head.in .bh-langs li{animation:popIn .55s var(--ease) both}
.lp-book-head.in .bh-langs li:nth-child(2){animation-delay:.15s}
.lp-book-head.in .bh-langs li:nth-child(3){animation-delay:.3s}
.lp-book-head .bh-book{margin:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 8px;font-size:13.5px;font-weight:600;color:var(--text);max-width:420px}
.lp-book-head .bh-book > i{color:var(--brand-deep)}
.bh-fl{display:inline-flex;gap:4px}
.bh-fl span{display:inline-grid;width:22px;height:22px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 2px #fff,0 1px 4px rgba(0,0,0,.2)}
.bh-fl span img,.bh-fl span svg{width:100%;height:100%;object-fit:cover}
.lp-book-head .bh-book{display:block;text-align:center;text-wrap:balance}
.lp-book-head .bh-book > i{margin-right:6px}
.lp-book-head .bh-book .bh-fl{margin-left:6px;vertical-align:middle}
.lp-book{padding-top:40px!important}

/* 97 · Editoras parceiras: frase + "Enviar proposta" e a janela em formato de e-mail (Lalo, 28/09/2026) */
.bh-partner{display:grid;gap:10px;justify-items:center;margin-top:4px;padding:12px 14px;border-radius:16px;background:#fff;border:1px dashed var(--line-strong);max-width:440px}
.bh-partner p{margin:0;font-size:13.5px;line-height:1.5;color:var(--text);text-align:center;text-wrap:balance}
.bh-partner p i{color:var(--brand-deep);margin-right:4px}
.pub-box{width:min(620px,100%)}
.pub-body{display:grid;gap:12px;padding:16px 18px}
.pub-mail{display:grid;gap:2px;background:var(--bg);border-radius:12px;padding:8px 12px}
.pub-mail p{margin:0;display:flex;gap:10px;align-items:baseline;padding:5px 0;border-bottom:1px solid var(--line);font-size:13px}
.pub-mail p:last-child{border-bottom:0}
.pub-mail span{flex:none;width:62px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.pub-mail b{min-width:0;overflow-wrap:anywhere;color:var(--ink)}
.pub-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}
.pub-grid .field,.pub-body .field{margin:0}
.pub-body textarea.input{resize:vertical;min-height:120px;font:inherit}
.pub-copy{display:flex;gap:8px;align-items:flex-start;margin:0;background:var(--brand-tint);border-radius:12px;padding:10px 12px;font-size:13px;color:var(--ink)}
.pub-copy i{color:var(--brand-deep);margin-top:3px}
.pub-done{display:flex;gap:10px;align-items:flex-start;margin:0;background:#E8F5E9;border:1px solid #C8E6C9;color:#1B5E20;border-radius:12px;padding:12px 14px;font-size:14px;line-height:1.5}
@media (max-width:560px){.pub-grid{grid-template-columns:1fr}}

/* 98 · Carimbo de versão (Lalo, 28/09/2026) */
.dd-ver{margin:6px 4px 2px;padding:7px 10px;border-radius:10px;background:var(--bg);font-size:11.5px;font-weight:700;color:var(--muted)}
.dd-ver i{margin-right:4px}
.ver-stamp{display:inline-flex;gap:6px;align-items:center;margin:0 0 10px;padding:6px 12px;border-radius:999px;background:var(--ink);color:var(--brand);font-size:12px;font-weight:800}

/* 99 · Página inicial reordenada (Lalo, 28/09/2026): a mensagem vem logo abaixo dos cartões; o globo fecha o site */
.lp-book-msg .lp-book-txt{max-width:760px;margin:0 auto;text-align:center}
.lp-book-msg .lp-book-list{width:fit-content;margin-inline:auto;text-align:left}
.lp-book-msg .lp-start{justify-content:center}
.lp-book-msg .lp-urge{justify-content:center}
.lp-globe-end{padding:40px 0 56px!important}
.lp-globe-end .lp-book-side{max-width:560px;margin:0 auto}
.lp-book-msg .lp-start > div{display:grid;justify-items:center;text-align:center}
/* 99b · Último bloco à noite (Lalo, 28/09/2026): a seção inteira fica escura, na cor do globo, e o quadrado se funde nela */
.lp-globe-end{background:radial-gradient(80% 70% at 50% 70%,#0e1118 0,#07080c 55%,#040406 100%)!important;color:#fff;padding:48px 0 30px!important;border-top:1px solid rgba(255,193,7,.25)}
.lp-globe-end .bh-t{color:#fff}
.lp-globe-end .bh-t i{color:var(--brand)}
.lp-globe-end .bh-langs li{background:rgba(255,255,255,.07);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.lp-globe-end .bh-book{color:rgba(255,255,255,.78)}
.lp-globe-end .bh-book > i{color:var(--brand)}
.lp-globe-end .bh-fl span{box-shadow:0 0 0 2px #07080c,0 1px 4px rgba(0,0,0,.4)}
.lp-globe-end .bh-partner{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.18)}
.lp-globe-end .bh-partner p{color:rgba(255,255,255,.82)}
.lp-globe-end .bh-partner p b{color:var(--brand)}
.lp-globe-end .bh-partner p i{color:var(--brand)}
.lp-globe-end #pubOpen{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}
.lp-globe-end .lp-book-img.lp-stage.night{background:transparent!important;box-shadow:none;border-radius:0;min-height:460px;overflow:visible}
@media (max-width:820px){.lp-globe-end .lp-book-img.lp-stage.night{min-height:380px}}
.lp-globe-end{background:#07080c!important}
/* Mapa-múndi à noite andando da direita para a esquerda atrás do livro (Lalo, 30/09/2026): de ponta a ponta da faixa,
   com as bordas sumindo no escuro */
.lp-globe-end{overflow:hidden}
.lp-globe-end .lp-stage.night .bk-globe{left:50%;right:auto;top:-6%;width:100vw;height:112%;transform:translateX(-50%);-webkit-mask-image:radial-gradient(75% 85% at 50% 48%,#000 55%,transparent 100%);mask-image:radial-gradient(75% 85% at 50% 48%,#000 55%,transparent 100%)}

/* 100 · Página da simulação aberta fora dela (Lalo, 28/09/2026): aviso no lugar dos dados fictícios */
.sim-only{display:grid;justify-items:center;gap:10px;text-align:center;max-width:460px;margin:40px auto;padding:28px 22px;border:1.5px dashed var(--line-strong);border-radius:20px;background:var(--surface,#fff)}
.sim-only .ic{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--brand-tint);color:var(--brand-deep);font-size:20px}
.sim-only b{font-family:var(--font-head);font-size:18px;color:var(--ink)}
.sim-only p{margin:0;color:var(--text);font-size:14px;line-height:1.5;text-wrap:balance}

/* 101 · Login: abas "Acesse sua conta" | "Crie sua conta" sempre à vista (Lalo, 28/09/2026) */
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin:14px 0 4px;background:var(--bg);border:1px solid var(--line);border-radius:var(--pill)}
.auth-tabs button{border:0;background:transparent;border-radius:var(--pill);padding:10px 8px;font:inherit;font-weight:700;font-size:14px;color:var(--muted);cursor:pointer;transition:background .2s,color .2s,box-shadow .2s}
.auth-tabs button[aria-selected="true"]{background:var(--ink);color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.22)} /* aba escolhida em PRETO (Lalo, 28/09/2026) */
.auth-tabs button[aria-selected="false"]:hover{color:var(--ink)}

/* 102 · Simulação guiada (Lalo, 28/09/2026): botões que pulsam até conhecer as 5 áreas, relógio de 3 min e 3, 2, 1 */
.simbar.on .sim-txt{display:flex;flex-direction:column;gap:1px;min-width:0}
.sim-prog{color:#D4D4D8;font-size:12.5px;line-height:1.3}
.sim-prog b{color:#fff!important;font-size:12.5px!important}
.sim-prog i{color:var(--brand)}
.tabbar a.sim-go{color:var(--brand)}
.tabbar a.sim-go i{animation:simHop 1.4s var(--ease) infinite}
.tabbar a.sim-go::after{content:"";position:absolute;top:1px;left:50%;width:34px;height:34px;margin-left:-17px;border-radius:50%;border:2px solid var(--brand);pointer-events:none;animation:simRing 1.4s ease-out infinite}
.nav a.sim-go{position:relative;color:var(--ink)}
.nav a.sim-go::after{content:"";display:inline-block;width:8px;height:8px;margin-left:6px;border-radius:50%;background:var(--brand);vertical-align:middle;animation:simPing 1.4s ease-out infinite}
@keyframes simHop{0%,100%{transform:translateY(0)}30%{transform:translateY(-5px)}55%{transform:translateY(0)}70%{transform:translateY(-2px)}}
@keyframes simRing{0%{transform:scale(.55);opacity:.95}100%{transform:scale(1.55);opacity:0}}
@keyframes simPing{0%{box-shadow:0 0 0 0 rgba(255,193,7,.75)}100%{box-shadow:0 0 0 10px rgba(255,193,7,0)}}
.sim-end{position:fixed;inset:0;z-index:300;display:grid;place-items:center;background:rgba(10,10,12,.94);padding:24px;animation:seFade .3s ease both}
.se-box{display:grid;justify-items:center;gap:14px;text-align:center;color:#fff}
.se-why{margin:0;display:flex;align-items:center;gap:8px;font-family:var(--font-head);font-weight:800;font-size:18px}
.se-why i{color:var(--brand)}
.se-num{font-family:Anton,var(--font-head);font-size:150px;line-height:1;color:var(--brand);animation:seCount 1s var(--ease) both}
.se-num.go{font-size:clamp(42px,11vw,72px);text-transform:uppercase}
.se-t{margin:0;color:#D4D4D8;font-size:15px}
@keyframes seCount{0%{transform:scale(.4);opacity:0}35%{transform:scale(1.08);opacity:1}100%{transform:scale(1);opacity:1}}
@keyframes seFade{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){.tabbar a.sim-go i,.tabbar a.sim-go::after,.nav a.sim-go::after,.se-num{animation:none}}

/* 103 · Faixa da simulação fixa logo abaixo do topo (Lalo, 28/09/2026); o top certo vem do script (altura do topo + menu) */
.simbar.on{position:sticky;top:68px;z-index:38;box-shadow:0 6px 16px rgba(0,0,0,.18)}

/* 104 · Agendar aula: duração com 1 hora já marcada (promessa: 1 hora por semana) — Lalo, 29/09/2026 */
.dur-hint{margin:8px 0 0;display:flex;gap:6px;align-items:flex-start;font-size:12px;line-height:1.4;color:var(--muted)}
.dur-hint i{color:var(--brand-deep);margin-top:2px}

/* 105 · Aulas | Agenda no mesmo modelo das abas do login: pílula, aba escolhida em PRETO, sem números (Lalo, 29/09/2026) */
.seg.seg-pill{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:var(--pill);padding:4px;background:var(--bg)}
.seg.seg-pill button{font-family:var(--font-body);font-weight:700;font-size:15px;text-transform:none;letter-spacing:0;color:var(--muted);padding:10px 16px;border-radius:var(--pill);transition:color .25s}
.seg.seg-pill button[aria-selected=true]{color:#fff}
.seg.seg-pill button[aria-selected=false]:hover{color:var(--ink)}
.seg.seg-pill .ind{top:4px;bottom:4px;left:4px;width:calc(50% - 4px);background:var(--ink);border-radius:var(--pill);box-shadow:0 2px 8px rgba(0,0,0,.22)}

/* 106 · Aulas | Agenda (Lalo, 29/09/2026): o ponto que pulsava no título foi para a aba escolhida; a outra aba
   "chama" de vez em quando (balança e acende em amarelo) para a pessoa perceber que também é um botão */
.aa-head p{padding-left:0}
.seg.seg-pill button{display:inline-flex;align-items:center;justify-content:center;gap:8px}
.seg-pill .tdot{display:none;width:9px;height:9px;border-radius:50%;background:var(--brand);flex:none;animation:beat 2.4s var(--ease) infinite}
.seg-pill button[aria-selected=true] .tdot{display:inline-block}
.seg-pill button[aria-selected=false]{animation:segNudge 6s ease-in-out 2s infinite}
@keyframes segNudge{0%,80%,100%{transform:none;background:transparent;color:var(--muted)}84%{transform:translateX(-3px) scale(1.04);background:rgba(255,193,7,.28);color:var(--ink)}88%{transform:translateX(3px) scale(1.04);background:rgba(255,193,7,.28);color:var(--ink)}92%{transform:translateX(-2px);background:rgba(255,193,7,.18);color:var(--ink)}96%{transform:none;background:transparent}}
@media (prefers-reduced-motion:reduce){.seg-pill .tdot,.seg-pill button[aria-selected=false]{animation:none}}

/* 106b · Abas em pílula ocupam a largura toda (Certificados: "Imprimir certificados" cabe numa linha) — Lalo, 29/09/2026 */
.seg.seg-pill{width:100%;max-width:520px}
@media (max-width:420px){.seg.seg-pill button{font-size:14px;padding:10px 8px;gap:6px}}

/* 107 · Diretoria no celular: a linha "Nomear" (pessoa + função + botão) quebra em duas linhas e nada passa da janela (29/09/2026) */
.dir-body{grid-template-columns:minmax(0,1fr)}
.dir-nom{flex-wrap:wrap;max-width:100%}
.dir-nom .select{min-width:0;flex:1 1 150px}

/* 108 (29/09/2026): o cartão convidativo da página Igreja foi desfeito a pedido do Lalo — o efeito fica só no primeiro cartão da Rede (seção 109) */
@media (max-width:520px){.lead-pres .lp-t small{display:block;padding-right:70px}} /* "Titular" não cobre mais "Pastor presidente · você" */

/* 109 · Rede: o PRIMEIRO cartão convida ao toque (Lalo, 29/09/2026) — sombra cinza que sobe um pouco e mãozinha, a cada 7 segundos */
.dcard.tap-hint{animation:tapGlow 7s ease-in-out 2.5s infinite}
.dcard.tap-hint::after{content:"\f25a";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;right:12px;bottom:12px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--brand);color:var(--ink);font-size:15px;box-shadow:0 4px 12px rgba(0,0,0,.18);opacity:0;pointer-events:none;animation:tapHand 7s ease-in-out 2.5s infinite}
@keyframes tapGlow{0%,80%,100%{box-shadow:var(--sh-sm);transform:none}86%{box-shadow:0 12px 28px rgba(14,14,16,.18),0 2px 6px rgba(14,14,16,.10);transform:translateY(-2px)}94%{box-shadow:0 6px 16px rgba(14,14,16,.12);transform:none}} /* sombra cinza normal, sem brilho amarelo (Lalo, 29/09/2026) */
@keyframes tapHand{0%,78%,100%{opacity:0;transform:translateY(6px) scale(.8)}83%{opacity:1;transform:none}87%{transform:scale(.86)}90%{transform:none}95%{opacity:1}98%{opacity:0}}
@media (prefers-reduced-motion:reduce){.dcard.tap-hint,.dcard.tap-hint::after{animation:none}}

/* 110 · Cartão: a igreja da pessoa em destaque e com cara de link (Lalo, 29/09/2026) — ícone, grifo amarelo e seta de abrir;
   no primeiro cartão da Rede, a igreja também "chama" de vez em quando (fora do tempo da mãozinha) */
.dcard .church{display:inline-flex;align-items:center;gap:6px;color:var(--ink);font-weight:700;text-decoration:none;background:linear-gradient(var(--brand),var(--brand)) 0 100%/100% 3px no-repeat;padding:1px 3px 3px;border-radius:3px;transition:background-size .25s}
.dcard .church > i:first-child{color:var(--brand-deep);font-size:13px}
.dcard .church .ch-ext{font-size:11px;color:var(--muted);transition:transform .2s}
.dcard .church:hover{background-size:100% 100%;color:var(--ink)}
.dcard .church:hover .ch-ext{transform:translate(2px,-2px);color:var(--ink)}
.dcard.tap-hint .church{animation:chLinkHint 7s ease-in-out 2.5s infinite}
.dcard.tap-hint .church .ch-ext{animation:chExtHint 7s ease-in-out 2.5s infinite}
@keyframes chLinkHint{0%,38%,58%,100%{background-size:100% 3px}44%,52%{background-size:100% 100%}}
@keyframes chExtHint{0%,38%,58%,100%{transform:none}44%{transform:translate(3px,-3px)}48%{transform:none}52%{transform:translate(2px,-2px)}}
@media (prefers-reduced-motion:reduce){.dcard.tap-hint .church,.dcard.tap-hint .church .ch-ext{animation:none}}

/* 111 · Página Igreja: abas "Aprovações | Rede da igreja" (mesmo modelo seg-pill) — Lalo, 29/09/2026 */
#igSeg{margin:2px 0 0}

/* 112 · Fuso horário da aula (Lalo, 29/09/2026) */
.tz-field label em{font-style:normal;font-weight:700;font-size:11px;color:var(--brand-deep);margin-left:4px}
.tz-field .select.need{border-color:var(--brand);box-shadow:0 0 0 3px rgba(255,193,7,.25)}
.tz-conv{display:flex;gap:7px;align-items:flex-start;margin:6px 0 0;font-size:12.5px;line-height:1.45;color:var(--text)}
.tz-conv > i{margin-top:3px;color:var(--brand-deep)}
.tz-conv .fa-circle-check{color:var(--ok,#2E7D32)}
.tz-conv em{font-style:normal;color:var(--muted)}
.tz-dd{display:flex;flex-direction:column;gap:1px}
.tz-l{font-size:11.5px;font-weight:600;color:var(--muted);margin-left:4px}
.tz-me{display:block;font-size:11.5px;color:var(--ink);background:var(--brand-tint);border-radius:8px;padding:2px 7px;width:fit-content;margin-top:2px}
.tz-me i{color:var(--brand-deep);margin-right:3px}
.tz-s{display:block;font-size:11px;color:var(--muted)}

/* 113 · Fuso horário: barra de pesquisa com todos os países (PT/EN/ES) — Lalo, 29/09/2026 */
.tz-find .ch-q{position:relative}
.tz-find .ch-q > i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:14px;pointer-events:none}
.tz-find .ch-q .input{padding-left:36px}
.tz-find .input.need{border-color:var(--brand);box-shadow:0 0 0 3px rgba(255,193,7,.25)}
.tz-res{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px;max-height:280px;overflow:auto}
.tz-res button{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px 10px;font:inherit;cursor:pointer}
.tz-res button:hover,.tz-res button:focus-visible{border-color:var(--brand);background:var(--brand-tint)}
.tz-res b{display:block;font-size:14px;color:var(--ink)}
.tz-res small{display:block;font-size:11.5px;color:var(--muted)}
.tz-res span{flex:1;min-width:0}
.tz-res em{font-style:normal;font-size:12px;font-weight:700;color:var(--ink);background:var(--bg);border-radius:var(--pill);padding:2px 8px;white-space:nowrap}
.tz-hint{font-size:12.5px;color:var(--muted);padding:6px 2px}
.tz-fl{display:inline-grid;place-items:center;flex:none;width:26px;height:26px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 1px var(--line);background:var(--bg);color:var(--muted)}
.tz-fl svg,.tz-fl img{width:100%;height:100%;object-fit:cover}
.tz-pill{display:flex;align-items:center;gap:10px;border:1.5px solid var(--brand);background:var(--brand-tint);border-radius:14px;padding:8px 10px}
.tz-pill span{flex:1;min-width:0}
.tz-pill b{display:block;font-size:14px;color:var(--ink)}
.tz-pill small{display:block;font-size:12px;color:var(--muted)}
.tz-res .tz-fl,.tz-pill .tz-fl{flex:none;width:26px;height:26px} /* a bandeira não estica */

/* 114 · Livro personalizado para a igreja, encostado embaixo do globo (Lalo, 29/09/2026) */
.lp-globe-end .bh-custom{max-width:none;width:100%;margin:-6px 0 0;border-radius:0 0 18px 18px;border:1px solid rgba(255,193,7,.45);border-top:0;background:linear-gradient(rgba(255,193,7,.10),rgba(255,193,7,.04));padding:16px 16px 18px;gap:10px}
.lp-globe-end .bh-custom p{color:#E7E7EA}
.lp-globe-end .bh-custom p b{color:#FFC107}
.bc-ic{display:inline-flex;align-items:center;gap:6px;color:#FFC107;font-size:22px}
.bc-ic .fa-church{font-size:15px;opacity:.85}
.bc-min{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-size:12.5px;padding:5px 12px}
.bc-min b{color:#FFC107}
.cust-yn{display:flex;gap:8px;flex-wrap:wrap}
.cust-yn label{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:7px 12px;font-size:13.5px;cursor:pointer;background:#fff}
.cust-yn label:has(input:checked){border-color:var(--ink);background:var(--ink);color:#fff}
.cust-yn input{accent-color:var(--brand)}
.cust-ok{display:flex;gap:8px;align-items:flex-start;font-size:13.5px;line-height:1.45;color:var(--ink);background:var(--brand-tint);border-radius:12px;padding:10px 12px;cursor:pointer}
.cust-ok input{margin-top:3px;accent-color:#000}
.lp-globe-end .bh-custom{margin-top:-16px;position:relative;z-index:2} /* começa exatamente no limite do quadrado do globo, sem sobrepor (Lalo, 29/09/2026) */

/* 115 · Perguntas frequentes em sanfona (Lalo, 29/09/2026) */
.lp-faq{background:var(--bg);padding:64px 0;text-align:center}
.lp-faq h2{margin:8px 0 26px}
.lp-faq .faq{max-width:800px;margin-inline:auto;display:grid;gap:10px;text-align:left}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.faq-item[open]{border-color:var(--brand);box-shadow:0 8px 22px rgba(14,14,16,.08)}
.faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:16px 20px;font-family:var(--font-head);font-weight:700;font-size:15.5px;color:var(--ink)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:hover{background:#FFFBEA}
.faq-item summary::after{content:"\f078";font-family:"Font Awesome 6 Free";font-weight:900;margin-left:auto;flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--brand-tint);color:var(--brand-deep);font-size:12px;transition:transform .25s var(--ease)}
.faq-item[open] summary::after{transform:rotate(180deg);background:var(--brand);color:#000}
.faq-item > div{padding:0 20px 18px;font-size:14.5px;line-height:1.6;color:var(--text)}
@media (prefers-reduced-motion:reduce){.faq-item summary::after{transition:none}}

/* 116 · PAINEL DA EQUIPE por setores (Lalo, 29/09/2026) — Início · Vendas · Publicidade · Discipulado · Segurança · Tecnologia */
.eq{display:grid;gap:14px}
.eq-sub{margin:0;color:var(--muted);font-size:14px}
.eq-tabs{display:flex;gap:6px;overflow-x:auto;padding:4px;background:var(--bg);border:1px solid var(--line);border-radius:999px;scrollbar-width:none}
.eq-tabs::-webkit-scrollbar{display:none}
.eq-tab{flex:none;display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;border-radius:999px;padding:9px 14px;font:inherit;font-weight:700;font-size:14px;color:var(--muted);cursor:pointer;transition:background .2s,color .2s}
.eq-tab:hover{color:var(--ink)}
.eq-tab[aria-pressed="true"]{background:var(--ink);color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.22)}
.eq-tab[aria-pressed="true"] i{color:var(--brand)}
.eq-tab[data-lock]{opacity:.55}
.eq-n{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--danger);color:#fff;font-size:11px;font-weight:800;font-style:normal}
.eq-view{display:grid;gap:14px}
.eq-card{display:block;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 18px;box-shadow:var(--sh-sm);color:inherit;text-decoration:none}
.eq-card h2,.eq-card h3{margin:0 0 10px;display:flex;align-items:center;gap:8px;font-family:var(--font-head);font-size:16px;color:var(--ink)}
.eq-card h3 i,.eq-card h2 i{color:var(--brand-deep)}
.eq-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.eq-grid.two{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.eq-sec{transition:transform .2s,box-shadow .2s}
.eq-sec:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(14,14,16,.1)}
.eq-sec .ic,.eq-tool .ic,.eq-todo .ic{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--brand-tint);color:var(--brand-deep);flex:none}
.eq-sec h3{margin:10px 0 4px}
.eq-sec p{margin:0;font-size:14px;color:var(--ink)}
.eq-sec small{display:block;margin-top:4px;color:var(--muted);font-size:12.5px}
.eq-sec.lock{opacity:.6}
.eq-todo ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.eq-todo a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;color:var(--ink);text-decoration:none;font-size:14px}
.eq-todo a:hover{background:#FFFBEA}
.eq-todo .ic{width:32px;height:32px;border-radius:10px}
.eq-todo .go,.eq-tool .go{margin-left:auto;color:var(--muted);font-size:12px}
.eq-empty{margin:0;color:var(--muted);font-size:14px;display:flex;gap:8px;align-items:center}
.eq-empty .fa-circle-check{color:var(--ok,#2E7D32)}
.eq-row-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px}
.eq-row-head h2{margin:0;font-family:var(--font-head);font-size:19px;color:var(--ink);flex:1;min-width:180px}
.eq-hint{font-size:12.5px;color:var(--muted);display:flex;gap:6px;align-items:flex-start;flex-basis:100%}
.eq-sub-tabs{display:flex;gap:6px;flex-wrap:wrap}
.eq-sub-tabs button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 13px;font:inherit;font-size:13px;font-weight:700;color:var(--muted);cursor:pointer}
.eq-sub-tabs button[aria-pressed="true"]{border-color:var(--ink);background:var(--ink);color:#fff}
.eq-sub-tabs button[data-lock]{opacity:.55}
.eq-funnel{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.eq-funnel button{display:grid;justify-items:center;gap:2px;border:1px solid var(--line);background:#fff;border-radius:14px;padding:10px 4px;font:inherit;cursor:pointer;color:var(--ink)}
.eq-funnel button i{color:var(--brand-deep)}
.eq-funnel button b{font-family:var(--font-head);font-size:20px}
.eq-funnel button span{font-size:11px;color:var(--muted);text-align:center;line-height:1.2}
.eq-funnel button[aria-pressed="true"]{border-color:var(--ink);background:var(--ink);color:#fff}
.eq-funnel button[aria-pressed="true"] span{color:#ddd}
.eq-funnel button[aria-pressed="true"] i{color:var(--brand)}
.eq-funnel .cx i{color:var(--muted)}
@media (max-width:720px){.eq-funnel{grid-template-columns:repeat(4,minmax(0,1fr))}}
.eq-filter{margin:0;font-size:13px;color:var(--muted)}
.eq-list{display:grid;gap:8px}
.eq-item{display:flex;gap:12px;align-items:flex-start;width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px 14px;font:inherit;cursor:pointer;color:inherit}
button.eq-item:hover{border-color:var(--brand);box-shadow:0 6px 18px rgba(14,14,16,.06)}
.eq-id{flex:none;font-family:ui-monospace,monospace;font-size:12px;font-weight:700;color:var(--muted);background:var(--bg);border-radius:8px;padding:3px 7px}
.eq-main{flex:1;min-width:0;display:grid;gap:2px}
.eq-main b{font-size:14.5px;color:var(--ink)}
.eq-main small{font-size:12.5px;color:var(--muted);display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.eq-main .fl{display:inline-grid;width:16px;height:16px;border-radius:50%;overflow:hidden}
.eq-main .fl svg{width:100%;height:100%}
.eq-main p{margin:4px 0 0;font-size:13.5px;color:var(--text)}
.eq-side{flex:none;display:grid;justify-items:end;gap:4px;text-align:right}
.eq-side small{font-size:11.5px;color:var(--muted)}
.eq-side .ok{color:var(--ok,#2E7D32)}
.eq-st{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;background:var(--bg);color:var(--ink);white-space:nowrap}
.eq-st.st-novo{background:#FFF3CD;color:#7a5a00}
.eq-st.st-conversa{background:#E3F2FD;color:#0D47A1}
.eq-st.st-pagamento{background:#FFF8E1;color:#8a6d00}
.eq-st.st-pago{background:#E8F5E9;color:#1B5E20}
.eq-st.st-enviado{background:#EDE7F6;color:#4527A0}
.eq-st.st-entregue{background:#E8F5E9;color:#1B5E20}
.eq-st.st-cancelado{background:#FDECEA;color:#B71C1C}
.eq-ex{margin-left:6px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#6A1B9A;background:#F3E5F5;border-radius:999px;padding:1px 7px;vertical-align:middle}
.eq-msg{cursor:default}
.eq-msg.new{border-color:var(--brand);background:#FFFDF5}
.eq-badge{display:inline-flex;gap:6px;align-items:center;border-radius:999px;padding:4px 12px;font-size:12.5px;font-weight:700}
.eq-badge.off{background:var(--bg);color:var(--muted)}
.eq-table{overflow-x:auto}
.eq-table table{width:100%;border-collapse:collapse;font-size:13.5px}
.eq-table th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:6px 8px;border-bottom:1px solid var(--line)}
.eq-table td{padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top}
.eq-table td small{display:block;color:var(--muted);font-size:12px}
.eq-av{display:inline-block;border-radius:999px;padding:2px 9px;font-size:12px;background:var(--bg);color:var(--muted)}
.eq-av.on{background:#E8F5E9;color:#1B5E20;font-weight:700}
.eq-note{margin:8px 0 0;font-size:12.5px;color:var(--muted);line-height:1.5}
.eq-gw{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.eq-gw-i{border:1px dashed var(--line-strong);border-radius:14px;padding:12px}
.eq-gw-i i{color:var(--brand-deep);font-size:18px}
.eq-gw-i b{display:block;margin-top:6px;color:var(--ink)}
.eq-gw-i p{margin:4px 0 0;font-size:12.5px;color:var(--text);line-height:1.45}
.eq-steps{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.eq-steps li{display:flex;gap:10px;align-items:center;font-size:14px}
.eq-steps li span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--ink);color:var(--brand);font-size:12px;font-weight:800;flex:none}
.eq-period{display:flex;gap:4px;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:3px}
.eq-period button{border:0;background:transparent;border-radius:999px;padding:6px 12px;font:inherit;font-size:13px;font-weight:700;color:var(--muted);cursor:pointer}
.eq-period button[aria-pressed="true"]{background:var(--ink);color:#fff}
.eq-demo{margin:0;display:flex;gap:8px;align-items:flex-start;font-size:13px;color:#6A1B9A;background:#F3E5F5;border-radius:12px;padding:9px 12px}
.eq-bars{display:grid;gap:10px}
.eq-bar{display:grid;grid-template-columns:minmax(150px,1.3fr) 2fr auto auto;gap:10px;align-items:center;font-size:13.5px}
.eq-bar .lbl{color:var(--ink);display:flex;gap:7px;align-items:center}
.eq-bar .lbl i{color:var(--brand-deep);width:16px;text-align:center}
.eq-bar .track{height:12px;border-radius:999px;background:var(--bg);overflow:hidden}
.eq-bar .track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--brand),#FFB300);transition:width .5s var(--ease)}
.eq-bar b{font-variant-numeric:tabular-nums}
.eq-bar small{color:var(--muted);min-width:34px;text-align:right}
@media (max-width:560px){.eq-bar{grid-template-columns:1fr auto auto}.eq-bar .track{grid-column:1/-1;order:3}}
.eq-funnel2{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.eq-funnel2 li{width:var(--w);margin-inline:auto;background:var(--ink);color:#fff;border-radius:12px;padding:8px 12px;display:grid;justify-items:center;text-align:center}
.eq-funnel2 li b{font-family:var(--font-head);font-size:18px;color:var(--brand)}
.eq-funnel2 li span{font-size:12.5px}
.eq-funnel2 li small{font-size:11px;color:#bbb}
.eq-mini{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:14px}
.eq-mini li{display:flex;align-items:center;gap:8px}
.eq-mini li b{margin-left:auto}
.eq-mini li i{color:var(--brand-deep);width:16px;text-align:center}
.eq-rules li{display:block;padding-left:14px;position:relative;font-size:13.5px}
.eq-rules li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--brand)}
.eq-real{margin-left:auto;font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#1B5E20;background:#E8F5E9;border-radius:999px;padding:2px 8px}
.eq-utm{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-top:10px}
.eq-utm .field{margin:0}
.eq-utm-out{display:flex;gap:10px;align-items:center;margin-top:10px;background:var(--bg);border-radius:12px;padding:10px 12px}
.eq-utm-out code{flex:1;min-width:0;overflow-wrap:anywhere;font-size:12.5px;color:var(--ink)}
.eq-big{margin:0;font-family:var(--font-head);font-size:17px;color:var(--ink);display:flex;gap:8px;align-items:center}
.eq-big i{color:var(--brand-deep)}
.eq-tools{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(290px,1fr))}
.eq-tool{display:flex;align-items:center;gap:12px;transition:border-color .2s,transform .2s}
.eq-tool:hover{border-color:var(--brand);transform:translateY(-1px)}
.eq-tool .tx{display:grid;gap:2px;min-width:0}
.eq-tool .tx b{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--ink)}
.eq-tool .tx small{font-size:12.5px;color:var(--muted);line-height:1.4}
.eq-lock{text-align:center;display:grid;justify-items:center;gap:6px;color:var(--muted)}
.eq-lock i{font-size:22px}
.eq-lock b{color:var(--ink)}
.eq-lock p{margin:0;font-size:13.5px}
.eq-kpis{display:flex;gap:10px;flex-wrap:wrap}
.eq-kpis div{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-size:14px}
.eq-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex:none;background:#BDBDBD}
.eq-dot.ativo{background:#2E7D32;box-shadow:0 0 0 3px rgba(46,125,50,.15)}
.eq-dot.configurar{background:#F9A825;box-shadow:0 0 0 3px rgba(249,168,37,.18)}
.eq-dot.desativado{background:#9E9E9E}
.eq-res{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.eq-res li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
.eq-res li:last-child{border-bottom:0}
.eq-res .tx{flex:1;min-width:0;display:grid}
.eq-res .tx b{font-size:14px;color:var(--ink)}
.eq-res .tx small{font-size:12px;color:var(--muted)}
.eq-res-sel{width:auto;min-width:130px;padding:6px 10px;font-size:13px}
.eq-box{width:min(640px,100%)}
.eq-dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0;font-size:14px}
.eq-dl dt{color:var(--muted);font-weight:600}
.eq-dl dd{margin:0;color:var(--ink)}
.eq-h4{margin:14px 0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.eq-steps-pick{display:flex;gap:6px;flex-wrap:wrap}
.eq-steps-pick button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 11px;font:inherit;font-size:12.5px;font-weight:700;color:var(--muted);cursor:pointer}
.eq-steps-pick button[aria-pressed="true"]{border-color:var(--ink);background:var(--ink);color:#fff}
.eq-hist{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:13.5px}
.eq-hist li{display:grid;padding-left:14px;border-left:2px solid var(--brand)}
.eq-hist li small{color:var(--muted);font-size:11.5px}
.dd-equipe{flex-wrap:wrap}
.dd-equipe small{flex-basis:100%;padding-left:26px;font-size:11px;color:var(--muted);font-weight:500}
@media (max-width:560px){.eq-item{flex-wrap:wrap}.eq-side{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:6px 10px;text-align:left}} /* no celular, etapa e origem vão para baixo */
.cert-futuro{margin:4px 0 0;display:flex;gap:6px;align-items:center;font-size:12.5px;color:var(--muted)} /* batismo e apresentação à igreja: em breve (Lalo, 29/09/2026) */
.link-opt[hidden]{display:none!important}

/* Sistema de verdade (a cópia do protótipo ligada ao motor — Lalo, 29/09/2026): o que só serve para testar o
   protótipo não aparece para as pessoas (botões "Simular", barra "Protótipo:", menu "Ver este painel como"). */
html[data-ds-real] .demo-bar,html[data-ds-real] [data-sim],html[data-ds-real] .chip[data-selfdone],html[data-ds-real] .proto-only,html[data-ds-real] .proto-dd,html[data-ds-real] .find-hint,html[data-ds-real] [data-m^="sim-"]{display:none!important}
/* Sala vista pelo discípulo (sistema de verdade): sem os botões de quem conduz a sala */
html[data-ds-student] [data-power],html[data-ds-student] [data-sched],html[data-ds-student] .mat-sel select{display:none!important}
/* Visitante sem conta nas páginas públicas (sistema de verdade): só o botão Entrar no topo */
html[data-ds-visitor] #hdr:not(.lp-hdr) .right>:not(.visitor-in),html[data-ds-visitor] nav.nav,html[data-ds-visitor] nav.tabbar,html[data-ds-visitor] .simbar{display:none!important}
/* Idiomas: a página espera o dicionário (no máximo 2,5 s) para não aparecer em português antes de traduzir */
html.i18n-wait body{visibility:hidden}

/* Página inicial · revisão de conversão (Lalo, 30/09/2026): selos de confiança, 3 caminhos no fim e o pedido de livros */
.lp-trust{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13.5px;font-weight:600;color:inherit;opacity:.92}
.lp-trust li{display:inline-flex;align-items:center;gap:7px}
.lp-trust i{color:var(--brand-deep,#E0A800)}
.lp-book-msg .lp-start{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.lp-pop-acts{display:flex;flex-wrap:wrap;gap:8px}
#ordWin .pub-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}

/* Avisos da aula › ativar os avisos no celular (sistema real, 30/09/2026) */
.av-push{margin-top:12px;display:flex;gap:8px 12px;align-items:center;flex-wrap:wrap}
.av-push small{font-size:12.5px;color:var(--muted)}
.av-push-ok{color:var(--ok);font-weight:600;font-size:13.5px}
/* Editar sala (nome): mesmo formato do formulário, sem o vermelho de alerta */
.den-form.ed-form{border-color:var(--line);border-style:solid;background:var(--bg);margin:12px 0 4px}
.den-form.ed-form b{color:var(--ink)}

/* Presença: a etapa da vez pisca uma vez ao abrir sozinha (item 7, 30/09/26) */
.pr-panel.pr-flash{animation:prFlash 1.6s ease-out 1}
@keyframes prFlash{0%{box-shadow:0 0 0 0 rgba(255,193,7,.9)}40%{box-shadow:0 0 0 8px rgba(255,193,7,.45)}100%{box-shadow:0 0 0 0 rgba(255,193,7,0)}}
@media (prefers-reduced-motion:reduce){.pr-panel.pr-flash{animation:none;outline:3px solid var(--brand)}}

/* Comprovante da igreja: aviso curto de que o documento é protegido (item 14, 30/09/26) */
.cv-safe{display:flex;gap:8px;align-items:center;margin:6px 0 2px;font-size:12.5px;color:var(--ok)}
.cv-safe i{font-size:13px}

/* ---------------- Chamados (item 15, 30/09/26) ---------------- */
.tk-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:16px 18px;margin-top:14px}
.tk-head{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.tk-head .ic{width:42px;height:42px;border-radius:12px;background:var(--brand);color:var(--ink);display:grid;place-items:center;font-size:18px;flex:none}
.tk-head > div{flex:1 1 220px;min-width:0}
.tk-head h3{margin:0;font-size:17px}
.tk-head p{margin:2px 0 0;font-size:13px;color:var(--text)}
.tk-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.tk-list:empty{display:none}
.tk-list li{border:1px solid var(--line);border-radius:14px;padding:10px 12px}
.tk-list li p{margin:6px 0 0;font-size:13px;color:var(--text);overflow-wrap:anywhere}
.tk-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.tk-top small{color:var(--muted);font-size:12px}
.tk-st{display:inline-flex;gap:5px;align-items:center;font-size:12px;font-weight:600;padding:3px 9px;border-radius:999px;margin-left:auto}
.tk-st.st-aguardando{background:#FFF4E5;color:#B45309}
.tk-st.st-solucao{background:#E8F1FF;color:#1D4ED8}
.tk-st.st-resolvido{background:#E8F5E9;color:#1B5E20}
.tk-body{display:grid;gap:8px;padding:4px 18px 8px}
.tk-body textarea{font:inherit;font-size:14px;resize:vertical}
.tk-eq button{display:grid;gap:4px;width:100%;text-align:left;background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer}
.tk-who{font-size:12.5px;color:var(--muted)}
.tk-prev{font-size:13px;color:var(--text);overflow-wrap:anywhere}
.eq-dl dd.tk-text{white-space:pre-wrap;overflow-wrap:anywhere}

/* Perfil: nota curta sob o país onde reside (item 16) */
.field .hnote{display:block;margin-top:4px;font-size:12px;color:var(--muted)}

/* Igreja: alerta de pessoas sem sala e sem discipulador (item 21, 30/09/26) */
.ig-sem{display:flex;gap:10px;align-items:center;width:100%;text-align:left;border:1.5px solid #F59E0B;background:#FFF7E6;color:#92400E;border-radius:14px;padding:10px 14px;margin:0 0 12px;font:inherit;font-size:13.5px;cursor:pointer}
.ig-sem i{font-size:16px;color:#D97706;flex:none}

/* Perfil › Igreja e cargo: nível numa lista do próprio app e título antes do nome (item 20, 30/09/26) */
.lvl-pick{position:relative}
.lvl-btn{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left;cursor:pointer}
/* Nível (Lalo, 09/10/2026): uma setinha só (a do ícone) e a lista aberta por cima de tudo que vem depois */
.lvl-btn.select{background-image:none;padding-right:16px}
.fgrid:has(.lvl-list:not([hidden])),.field:has(.lvl-list:not([hidden])),.lvl-pick:has(.lvl-list:not([hidden])){position:relative;z-index:60}
.lvl-btn.empty span{color:var(--muted)}
.lvl-list{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;list-style:none;margin:0;padding:6px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--sh-md);max-height:280px;overflow:auto}
.lvl-list button{display:block;width:100%;text-align:left;border:0;background:none;font:inherit;font-size:14px;padding:9px 10px;border-radius:10px;cursor:pointer;color:var(--ink)}
.lvl-list button:hover,.lvl-list button:focus-visible{background:var(--bg)}
.tit-opts{display:flex;flex-wrap:wrap;gap:6px}
.tit-chip[aria-checked="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.tit-prev{margin:6px 0 0;font-size:13px;color:var(--text)}
.tit-prev i{color:var(--muted);margin-right:4px}

/* Igreja › Formados: discipulador no certificado impresso (item 26, 30/09/26) */
.cd-body{display:grid;gap:10px;padding:6px 18px 10px}
.cd-list{list-style:none;margin:0;padding:0;display:grid;gap:6px;max-height:320px;overflow:auto}
.cd-opt{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:9px 12px;cursor:pointer}
.cd-opt small{display:block;font-size:12px;color:var(--muted)}
.cd-opt:has(input:checked){border-color:var(--ink);background:var(--bg)}
.ig-pd{white-space:nowrap}

/* ---------------- Clube SENDme (item 27, 30/09/26) ---------------- */
.cb-lead{margin:0 0 12px;color:var(--text);font-size:14px}
.cb-tabs{display:flex;gap:6px;margin-bottom:12px}
.cb-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 14px;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.cb-tabs button[aria-selected="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.cb-off{display:flex;gap:8px;align-items:flex-start;background:#FFF7E6;border:1px solid #F5D08A;border-radius:14px;padding:10px 12px;font-size:13.5px;margin:0 0 12px}
.cb-feed{display:grid;gap:16px;max-width:560px;margin:0 auto}
.cb-post{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden}
.cb-post header{display:flex;gap:10px;align-items:center;padding:10px 12px}
.cb-post header .pav{width:38px;height:38px;flex:none}
.cb-post header div{flex:1;min-width:0}
.cb-post header b{display:block;font-size:14px}
.cb-post header small{display:block;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cb-post figure{position:relative;margin:0}
.cb-post figure img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--bg)}
.cb-mod{position:absolute;left:10px;bottom:10px;background:rgba(14,14,16,.78);color:#fff;font-size:12.5px;font-weight:600;padding:5px 10px;border-radius:999px}
.cb-post p{margin:0;padding:10px 12px 12px;font-size:14px;overflow-wrap:anywhere}
.cb-demo{display:block;padding:0 12px 10px;color:var(--muted);font-size:11.5px}
.cb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}
.cb-grid figure{position:relative;margin:0}
.cb-grid img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}
.cb-grid figcaption{position:absolute;left:6px;bottom:6px;background:rgba(14,14,16,.7);color:#fff;font-size:11px;padding:2px 7px;border-radius:999px}
.cb-foto .cb-thumb{display:block;width:100%;max-width:320px;aspect-ratio:1/1;object-fit:cover;border-radius:14px;margin:4px 0 10px}
.cb-foto label.btn{cursor:pointer}

/* Item 17: tipo da sala em "Alterar responsáveis" (evento, minha igreja, sozinho) */
.rt-mini{display:flex;flex-wrap:wrap;gap:6px}
.rt-mini button{display:inline-flex;gap:6px;align-items:center;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:7px 12px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.rt-mini button[aria-checked="true"]{border-color:var(--brand);background:var(--brand-tint);color:var(--brand-deep)}

/* Itens 36 e 37: nome da sala + número (#017), sempre como link sublinhado; número ao criar; Minhas salas / Participo */
.sala-lk{color:inherit;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}
.sala-lk:hover{text-decoration-color:var(--brand)}
.f-nome-row{display:flex;gap:8px;align-items:center}
.f-nome-row .input{flex:1;min-width:0}
.f-num{flex:none;font-family:var(--font-head);font-weight:800;font-size:15px;background:var(--brand-tint);color:var(--brand-deep);border-radius:10px;padding:10px 12px}
.f-num:empty{display:none}
.f-hint{display:block;margin-top:6px;font-family:Arial,Helvetica,sans-serif;font-weight:400;font-size:12.5px;color:var(--text)}
.sl-num{font-style:normal;font-family:var(--font-head);font-weight:800;font-size:clamp(18px,3vw,24px);color:var(--brand-deep)}
.own-seg{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}
.own-seg button{display:inline-flex;gap:8px;align-items:center;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:9px 16px;font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.own-seg button[aria-selected="true"]{border-color:var(--ink);background:var(--ink);color:#fff}

/* Item 46: "ID: 100.255BR" sublinhado = atalho para o perfil da pessoa */
.uid-lk{color:inherit;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px;white-space:nowrap}
.uid-lk:hover{text-decoration-color:var(--brand)}
.uid-tx{white-space:nowrap}

/* Item 23: barra do domínio do idioma (amarelo → verde, 3 marcas, bolinha com brilho, balãozinho com o nível) */
.lang-item .lv{position:relative;padding:18px 0 16px}
.lang-item .lv input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:10px;border-radius:999px;margin:0;cursor:pointer;background:linear-gradient(90deg,#FFC107 0%,#7CB342 var(--p,100%),#E7E3D8 var(--p,100%));outline:none}
.lang-item .lv input[type=range]:disabled{cursor:not-allowed;background:#ECE9E1;opacity:1}
.lang-item .lv input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:26px;height:26px;border-radius:50%;background:#fff;border:3px solid #FFC107;box-shadow:0 0 0 6px rgba(255,193,7,.22),0 2px 6px rgba(0,0,0,.18);transition:transform .15s,box-shadow .2s}
.lang-item .lv input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#fff;border:3px solid #FFC107;box-shadow:0 0 0 6px rgba(255,193,7,.22),0 2px 6px rgba(0,0,0,.18)}
.lang-item .lv input[type=range]:active::-webkit-slider-thumb,.lang-item .lv input[type=range]:focus-visible::-webkit-slider-thumb{transform:scale(1.12);box-shadow:0 0 0 9px rgba(124,179,66,.25),0 2px 8px rgba(0,0,0,.22)}
.lang-item .lv input[type=range]:disabled::-webkit-slider-thumb{border-color:#C9C4B8;box-shadow:none}
.lang-item.lv-hint .lv input[type=range]::-webkit-slider-thumb{animation:lvPulse 1.4s ease-in-out 3}
@keyframes lvPulse{0%,100%{box-shadow:0 0 0 6px rgba(255,193,7,.22),0 2px 6px rgba(0,0,0,.18)}50%{box-shadow:0 0 0 14px rgba(255,193,7,.05),0 0 18px 4px rgba(255,193,7,.55)}}
.lang-item .lv-bub{position:absolute;top:-14px;transform:translateX(-50%);white-space:nowrap;background:var(--ink);color:#fff;font-size:11.5px;font-weight:700;padding:3px 8px;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .2s}
.lang-item.lv-drag .lv-bub{opacity:1}
.lang-item .lv-marks{position:absolute;left:13px;right:13px;bottom:0;height:14px}
.lang-item .lv-marks i{position:absolute;transform:translateX(-50%);font-style:normal;font-size:11px;color:var(--muted);white-space:nowrap}
.lang-item .lv-marks i:first-child{transform:none;left:-13px!important}
.lang-item .lv-marks i:last-child{transform:none;left:auto!important;right:-13px}
.lang-item:not(.on) .lv-marks i{opacity:.55}
@media (prefers-reduced-motion:reduce){.lang-item.lv-hint .lv input[type=range]::-webkit-slider-thumb{animation:none}}
@media (max-width:820px){.lang-item .lv{grid-column:1 / -1;order:3}}

/* Item 28: menores de idade — selo na linha/cartão, aviso no perfil, janela de autorização */
.mn-tag{display:inline-flex;align-items:center;gap:5px;margin-top:4px;font-size:11.5px;font-weight:700;color:#9A3412;background:#FFEDD5;border:1px solid #FDBA74;border-radius:999px;padding:2px 9px;width:max-content}
.mn-tag.ok{color:#166534;background:#DCFCE7;border-color:#86EFAC}
.ig-who .mn-tag{display:flex}
.birth-note{display:flex;gap:8px;align-items:flex-start;margin:8px 0 0;font-size:13px;color:var(--text);line-height:1.45}
.birth-note i{margin-top:3px;color:#16A34A}
.birth-note.minor{background:#FFF7ED;border:1px solid #FDBA74;border-radius:12px;padding:10px 12px;color:#7C2D12}
.birth-note.minor i{color:#EA580C}
.mn-body{padding:4px 20px 8px;display:grid;gap:10px;font-size:14px;line-height:1.5}
.mn-note{display:flex;gap:8px;font-size:12.5px;color:var(--muted)}

/* Item 47: olhinho "Ver perfil" no topo do Painel */
.pn-eye{margin-left:auto;display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--ink);border-radius:999px;padding:8px 14px;font-weight:700;font-size:14px;color:var(--ink);text-decoration:none;background:#fff;transition:background .2s,color .2s}
.pn-eye:hover{background:var(--ink);color:#fff}
.pn-eye i{font-size:16px}
.pn-eye[hidden]{display:none}

/* Item 49: janela de confirmação e botões de destituir o discipulador */
.dsc-body{padding:4px 20px 8px;display:grid;gap:10px;font-size:14px;line-height:1.5}
.dsc-note{display:flex;gap:8px;background:#FFF7ED;border:1px solid #FDBA74;border-radius:12px;padding:10px 12px;color:#7C2D12;font-size:13px}
.dsc-note i{margin-top:3px}
.mentor-now .mentor-off{margin-top:8px;width:max-content}
.lib-btn{margin:8px auto 0;display:flex}

/* Vitrine do site (simulação pela página inicial, Lalo 30/09/2026): sem os botões de teste do protótipo */
html.ds-vitrine .demo-bar,html.ds-vitrine .proto-only,html.ds-vitrine .proto-dd{display:none!important}


/* Custos do Firebase no painel Tecnologia + alerta do master (Lalo, 05/10/2026) */
.eq-todo a.eq-cost-alert{background:#FDECEA;color:#8E1B12;font-weight:600}
.eq-todo a.eq-cost-alert .ic{background:#F8C9C3;color:#B3261E}
.eq-cost-msg{display:flex;gap:8px;align-items:flex-start;margin:0 0 12px;padding:10px 12px;border-radius:12px;background:#FDECEA;color:#8E1B12;font-size:14px}
.eq-cost-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px}
.eq-cost-row div{background:var(--bg);border-radius:12px;padding:10px 12px}
.eq-cost-row small{display:block;color:var(--muted);font-size:12px}
.eq-cost-row b{font-size:18px}
.eq-cost-bar{position:relative;height:14px;border-radius:999px;background:var(--bg);overflow:hidden;margin-bottom:8px}
.eq-cost-bar span{display:block;height:100%;border-radius:999px;background:#2E7D32;transition:width .5s var(--ease)}
.eq-cost.medio .eq-cost-bar span{background:#F9A825}
.eq-cost.alto .eq-cost-bar span{background:#C62828}
.eq-cost-bar i{position:absolute;top:0;bottom:0;width:2px;background:rgba(0,0,0,.18)}
@media (max-width:560px){.eq-cost-row{grid-template-columns:1fr 1fr}.eq-cost-row div:last-child{grid-column:1/-1}}
/* Financeiro do TI: limites do plano por dia e serviços/planos (Lalo, 05/10/2026) */
.eq-cost-msg>div{display:grid;gap:4px}
.eq-cost-msg small{opacity:.8}
.eq-lim{display:grid;grid-template-columns:minmax(180px,1.2fr) 2fr minmax(150px,auto);gap:12px;align-items:center;padding:6px 0}
.eq-lim .lbl{font-size:14px}
.eq-lim .eq-cost-bar{margin:0}
.eq-lim b{font-size:14px;text-align:right;white-space:nowrap}
.eq-lim b small{color:var(--muted);font-weight:500}
@media (max-width:640px){.eq-lim{grid-template-columns:1fr auto}.eq-lim .eq-cost-bar{grid-column:1/-1;order:3}}
.eq-plan{width:100%;border-collapse:collapse;font-size:14px}
.eq-plan th{text-align:left;color:var(--muted);font-weight:600;font-size:12px;padding:6px 8px;border-bottom:1px solid var(--line)}
.eq-plan td{padding:8px;border-bottom:1px solid var(--line);vertical-align:top}
.eq-plan td small{display:block;color:var(--muted);font-size:12px}
.eq-plan-falta{color:#9A6B00;background:#FFF3CD;border-radius:6px;padding:1px 6px;font-size:12px}
.eq-ren-soon{font-style:normal;color:#B3261E;font-weight:600;font-size:12px}
.eq-plan-edit fieldset{border:1px solid var(--line);border-radius:12px;padding:8px 12px;margin:0 0 10px}
.eq-plan-edit legend{font-weight:700;font-size:14px;padding:0 4px}

/* Logotipo da igreja no alto do Meu perfil (Lalo, 09/10/2026): só o pastor presidente; sem logo, vermelho pulsando */
.logo-igreja{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 16px;margin:0 0 16px;border:2px solid var(--line)}
.logo-igreja .th{width:64px;height:48px;border-radius:10px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;padding:4px;flex:none;font-size:20px;color:var(--muted)}
.logo-igreja .th img{max-width:100%;max-height:100%}
.logo-igreja .li-txt{flex:1;min-width:180px;display:grid;gap:2px}
.logo-igreja .li-txt small{color:var(--muted);font-size:13px}
.logo-igreja.falta{border-color:#DC2626;background:#FEF2F2;animation:liPulse 1.4s ease-in-out infinite}
.logo-igreja.falta .th{border:2px dashed #DC2626;color:#DC2626}
.logo-igreja.falta .li-txt b{color:#B91C1C}
@keyframes liPulse{0%,100%{box-shadow:0 0 0 0 rgba(220,38,38,.45)}50%{box-shadow:0 0 0 8px rgba(220,38,38,0)}}
@media (prefers-reduced-motion:reduce){.logo-igreja.falta{animation:none}}

/* Igreja: logotipo no cabeçalho; sem logo, quadro vermelho pulsando + aviso para o pastor presidente (Lalo, 09/10/2026) */
.ch-top .ic.logo{background:#fff;border:1px solid var(--line);padding:4px;overflow:hidden}
.ch-top .ic.logo img{max-width:100%;max-height:100%;object-fit:contain}
.ch-top .ic.sem-logo{background:#FEF2F2;color:#DC2626;border:2px dashed #DC2626;animation:liPulse 1.4s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.ch-top .ic.sem-logo{animation:none}}
.logo-alert{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0 0;padding:12px 14px;border-radius:14px;background:#FEF2F2;color:#7F1D1D;border:1.5px solid #DC2626;font-size:13px;line-height:1.45}
.logo-alert > i{color:#DC2626}
.logo-alert > span{flex:1;min-width:180px}
