@import url("https://fonts.googleapis.com/css2?family=Instrument+Sans:wght@400;500;600;700&family=Nunito:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap");
.la{
  /* Névoa 2.0: a landing lê os mesmos tokens do app — uma cara só. */
  --bg:var(--fundo);--card:var(--superficie);--ink:var(--texto);--sec:var(--texto-2);--label:var(--texto-3);--line:var(--linha);
  --blue:var(--acao);--blue-d:var(--azul-900);--blue-t:var(--acao-tonal);--red:#e5484d;--green:#1D8A66;
  --wa:#25D366;--wa-d:#075E54;--wa-bubble:#DCF8C6;
  background:var(--bg);color:var(--ink);line-height:1.5;-webkit-font-smoothing:antialiased;
}
.la, .la *{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',system-ui,sans-serif !important;box-sizing:border-box}
.la h1,.la h2,.la h3,.la p,.la ul,.la li,.la figure{margin:0;padding:0}
.la .wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.la a{color:inherit;text-decoration:none}
.la .btn{display:inline-block;background:var(--blue);color:#fff;font-weight:700;font-size:16px;padding:14px 26px;border-radius:10px;transition:.2s;border:none;cursor:pointer}
.la .btn:hover{background:var(--blue-d);transform:translateY(-1px)}
.la .btn-ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}
.la .btn-ghost:hover{border-color:var(--blue);color:var(--blue-d);background:#fff}
.la nav{position:sticky;top:0;z-index:20;background:rgba(247,248,250,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.la .nav-in{display:flex;align-items:center;justify-content:space-between;height:64px}
.la .logo{font-weight:800;font-size:20px;letter-spacing:-.02em}.la .logo b{color:var(--blue)}
.la .nav-cta{display:flex;gap:10px;align-items:center}
.la .nav-entrar{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--line);
  background:#fff;display:grid;place-items:center;cursor:pointer;color:var(--sec);
  transition:.15s;flex:none;padding:0}
.la .nav-entrar:hover{border-color:var(--blue);color:var(--blue-d)}
.la .nav-entrar:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.la .nav-link{font-weight:600;color:var(--sec);font-size:15px;padding:8px 12px}
.la .hero{padding:52px 0 40px;text-align:center}
.la .hero-top{max-width:760px;margin:0 auto 40px}
.la .pill{display:inline-flex;align-items:center;gap:8px;background:var(--blue-t);color:var(--blue-d);font-weight:700;font-size:15px;padding:7px 14px;border-radius:100px;margin-bottom:20px}
.la .dot{width:8px;height:8px;border-radius:50%;background:var(--wa);box-shadow:0 0 0 0 rgba(37,211,102,.6);animation:lapulse 2s infinite}
@keyframes lapulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.5)}70%{box-shadow:0 0 0 8px rgba(37,211,102,0)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0)}}
.la h1{font-size:47px;line-height:1.08;letter-spacing:-.03em;font-weight:800;text-wrap:balance}
.la h1 .hl{color:var(--blue)}
.la .lead{font-size:19px;color:var(--sec);margin:20px auto 26px;max-width:56ch}
.la .hero-cta{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:center}
.la .micro{font-size:15px;color:var(--label);margin-top:16px}.la .micro b{color:var(--ink)}
/* BADGE OFICIAL DA GOOGLE PLAY.
   Regras da marca (partnermarketinghub.withgoogle.com): usar a arte oficial sem
   modificar, não trocar cor, não redesenhar nem remover elementos, e manter o
   espaçamento livre de 1/4 da altura ao redor — que já vem embutido no PNG
   `*_badge_web_generic.png` que a própria Google distribui.
   Por isso NÃO há borda, fundo, padding, sombra ou hover de cor aqui: qualquer
   um desses violaria "não alterar a badge". O único efeito é opacidade, que não
   toca a arte. */
.la .playbadge{display:inline-block;margin-top:10px;line-height:0;text-decoration:none;transition:opacity .15s}
.la .playbadge:hover{opacity:.85}
.la .playbadge img{display:block;width:100%;max-width:200px;height:auto}
.la .playbadge-center{display:block;margin:10px auto 0;width:fit-content}
/* Atribuição de marca exigida quando há espaço para ela. */
.la .playlegal{display:block;font-size:15px;color:var(--ink-3,#8A93A3);margin:6px 0 0;line-height:1.35}
.la .playlegal-center{text-align:center}
.la .phasecap{text-align:center;margin-top:26px;font-size:15px;font-weight:700;color:var(--blue-d);background:var(--blue-t);display:inline-block;padding:7px 16px;border-radius:100px;position:relative;left:50%;transform:translateX(-50%);transition:.3s}
.la .devices{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap}
.la .dev{display:flex;flex-direction:column;align-items:center;gap:12px;transition:transform .5s cubic-bezier(.2,.8,.3,1),opacity .5s,filter .5s}
.la .dev.dim{transform:scale(.88);opacity:.45;filter:saturate(.75)}
.la .dev.focus{transform:scale(1.04)}
.la .dev-label{font-size:15px;font-weight:700;color:var(--ink);background:#fff;border:1px solid var(--line);padding:7px 15px;border-radius:100px;box-shadow:0 2px 6px -3px rgba(20,25,34,.2)}
.la .flow{color:var(--blue);font-size:26px;font-weight:300;transition:.4s}.la .flow.rev{transform:rotate(180deg)}
.la .appphone{width:300px;background:#0f1115;border-radius:38px;padding:12px;box-shadow:0 34px 66px -22px rgba(20,25,34,.4),0 0 0 1px rgba(0,0,0,.06)}
.la .app-screen{background:var(--bg);border-radius:28px;overflow:hidden;height:580px;position:relative}
.la .app-view{position:absolute;inset:0;display:flex;flex-direction:column;transition:transform .42s ease,opacity .42s ease;background:var(--bg)}
.la .app-view.conv{transform:translateX(100%);opacity:0;pointer-events:none}
.la .app-screen.showconv .app-view.inbox{transform:translateX(-24%);opacity:0;pointer-events:none}
.la .app-screen.showconv .app-view.conv{transform:translateX(0);opacity:1;pointer-events:auto}
.la .app-top{background:linear-gradient(135deg,var(--azul-500),var(--azul-700));color:#fff;padding:16px 16px 14px;display:flex;align-items:center;justify-content:space-between}
.la .brand{font-size:19px;font-weight:800;letter-spacing:-.02em}.la .brand b{opacity:.85}
.la .bell{position:relative;font-size:19px}
.la .badge{position:absolute;top:-6px;right:-7px;background:var(--red);color:#fff;font-size:15px;font-weight:800;min-width:17px;height:17px;border-radius:100px;display:grid;place-items:center;padding:0 4px;opacity:0;transform:scale(.4);transition:.3s}
.la .badge.on{opacity:1;transform:scale(1)}
.la .inbox-sub{padding:12px 16px 6px;font-size:15px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--label)}
.la .inbox-list{flex:1;overflow:hidden;display:flex;flex-direction:column}
.la .row{display:flex;gap:11px;align-items:center;padding:12px 16px;border-bottom:1px solid #eef0f3;transition:.3s;position:relative}
.la .row .rav{width:42px;height:42px;border-radius:50%;color:#fff;display:grid;place-items:center;font-weight:800;font-size:16px;flex:none}
.la .row .rmeta{flex:1;min-width:0}
.la .row .rn{font-size:15px;font-weight:700;display:flex;justify-content:space-between}
.la .row .rn .rt{font-size:15px;color:var(--label);font-weight:600}
.la .row .rp{font-size:15px;color:var(--sec);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.la .row .rtag{font-size:15px;font-weight:800;color:var(--red)}
.la .row.alert{animation:larow 1.4s infinite}
.la .row.alert::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--red)}
@keyframes larow{0%,100%{background:#FFF4F4}50%{background:#ffe9e9}}
.la .tap{position:absolute;right:16px;top:50%;width:26px;height:26px;border-radius:50%;border:2px solid var(--blue);opacity:0;transform:translateY(-50%) scale(.4);transition:.25s}
.la .tap.on{opacity:1;transform:translateY(-50%) scale(1);animation:latap .7s ease infinite}
@keyframes latap{0%,100%{box-shadow:0 0 0 0 rgba(46,91,215,.4)}50%{box-shadow:0 0 0 7px rgba(46,91,215,0)}}
.la .app-nav{display:flex;border-top:1px solid var(--line);background:#fff}
.la .nav-item{flex:1;text-align:center;padding:9px 0 8px;font-size:15px;color:var(--label);font-weight:700}
.la .nav-item span{display:block;font-size:18px;margin-bottom:1px;filter:grayscale(1);opacity:.7}
.la .nav-item.active{color:var(--blue)}.la .nav-item.active span{filter:none;opacity:1}
.la .conv-head{background:var(--blue);color:#fff;padding:12px 14px;display:flex;align-items:center;gap:10px}
.la .conv-head .back{font-size:24px;line-height:1;opacity:.95}
.la .cav{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.22);display:grid;place-items:center;font-weight:800;font-size:15px;flex:none}
.la .cmeta b{font-size:15px;font-weight:700;display:block;line-height:1.15}.la .cmeta span{font-size:15px;opacity:.85}
.la .app-conv{flex:1;padding:14px;display:flex;flex-direction:column;gap:7px;overflow:hidden;background:#eef1f6}
.la .am{max-width:82%;padding:7px 11px 5px;border-radius:12px;font-size:15px;line-height:1.35;opacity:0;transform:translateY(6px);animation:lain .3s forwards}
.la .am .who{font-size:15px;font-weight:800;display:block;margin-bottom:1px}
.la .am .at{font-size:15px;display:block;text-align:right;margin-top:2px;color:#9aa4b2}
.la .am.cli{align-self:flex-start;background:#fff;border:1px solid var(--line);color:var(--ink);border-top-left-radius:4px}.la .am.cli .who{color:#c2410c}
.la .am.me{align-self:flex-end;border-top-right-radius:4px}
.la .am.me.ai{background:#E9F5EF;color:#155e42}.la .am.me.ai .who{color:#1a8f5f}.la .am.me.ai .at{color:#7bbfa3}
.la .am.me.you{background:var(--blue);color:#fff}.la .am.me.you .who{color:#cfe0ff}.la .am.me.you .at{color:#bcd0ff}
.la .app-compose{border-top:1px solid var(--line);padding:9px 10px;display:flex;gap:8px;align-items:center;background:#fff}
.la .app-input{flex:1;background:var(--bg);border:1px solid var(--line);border-radius:100px;padding:9px 14px;font-size:15px;color:var(--ink);min-height:38px;display:flex;align-items:center}
.la .app-input.ph{color:var(--label)}
.la .app-send{width:38px;height:38px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;flex:none;font-size:15px}
.la .caret{display:inline-block;width:1.5px;height:15px;background:var(--blue);margin-left:1px;animation:lablink 1s steps(1) infinite;vertical-align:-2px}
@keyframes lablink{50%{opacity:0}}
.la .phone{width:300px;background:#0f1115;border-radius:38px;padding:12px;box-shadow:0 34px 66px -22px rgba(20,25,34,.4),0 0 0 1px rgba(0,0,0,.06)}
.la .screen{background:#E5DDD5;border-radius:28px;overflow:hidden;height:580px;display:flex;flex-direction:column}
.la .wa-head{background:var(--wa-d);color:#fff;padding:14px 16px;display:flex;align-items:center;gap:12px}
.la .wa-av{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--acao),#25D366);display:grid;place-items:center;font-weight:800;font-size:15px}
.la .wa-name{font-weight:700;font-size:15px}.la .wa-status{font-size:15px;opacity:.85}
.la .wa-body{flex:1;padding:14px;display:flex;flex-direction:column;gap:8px;overflow:hidden;background-image:linear-gradient(rgba(229,221,213,.55),rgba(229,221,213,.55))}
.la .bub{max-width:80%;padding:8px 12px;border-radius:12px;font-size:15px;line-height:1.4;box-shadow:0 1px 1px rgba(0,0,0,.08);opacity:0;transform:translateY(8px);animation:lain .35s forwards}
.la .bub .who{font-size:15px;font-weight:800;display:block;margin-bottom:2px}
.la .bub .t{font-size:15px;color:#667;display:block;text-align:right;margin-top:2px}
.la .bub.in{align-self:flex-start;background:#fff;border-top-left-radius:3px}.la .bub.in .who{color:#c2410c}
.la .bub.out{align-self:flex-end;border-top-right-radius:3px}
.la .bub.out.ai{background:var(--wa-bubble)}.la .bub.out.ai .who{color:#0a7d5a}
.la .bub.out.you{background:#D6E7FF}.la .bub.out.you .who{color:#3554d1}
.la .bub.out .t::after{content:' ✓✓';color:#34B7F1}
.la .typing{align-self:flex-start;background:#fff;padding:12px 14px;border-radius:12px;border-top-left-radius:3px;display:inline-flex;gap:4px}
.la .typing i{width:7px;height:7px;border-radius:50%;background:#9aa;animation:labl 1.2s infinite}
.la .typing i:nth-child(2){animation-delay:.2s}.la .typing i:nth-child(3){animation-delay:.4s}
@keyframes labl{0%,100%{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}
@keyframes lain{to{opacity:1;transform:none}}
.la section{padding:64px 0}
.la .band{background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.la .precoband{background:linear-gradient(180deg,#fff,var(--blue-t))}
.la .freedomband{background:linear-gradient(180deg,var(--blue-t),#fff);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.la .freedom-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:4px}
.la .fchip{background:var(--card);border:1px solid var(--line);border-radius:999px;padding:9px 16px;font-size:15px;font-weight:700;color:var(--ink)}
/* O rótulo usava o azul de AÇÃO (o mesmo dos botões), em peso 800. Cor de ação
   em texto que não se clica cansa a vista e rouba destaque de quem realmente é
   clicável — e o título logo abaixo é que deveria puxar o olho. */
.la .eyebrow{color:#7D8AA6;font-weight:700;font-size:15px;letter-spacing:.1em;text-transform:uppercase;text-align:center}
.la h2{font-size:34px;font-weight:800;letter-spacing:-.02em;text-align:center;margin:10px 0 8px;text-wrap:balance}
.la .sub{text-align:center;color:var(--sec);font-size:17px;max-width:52ch;margin:0 auto 40px}
.la .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.la .step{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px}
.la .step-n{width:36px;height:36px;border-radius:10px;background:var(--blue-t);color:var(--blue-d);display:grid;place-items:center;font-weight:800;margin-bottom:14px}
.la .step h3{font-size:18px;margin-bottom:6px}.la .step p{color:var(--sec);font-size:15px}
.la .feats{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;max-width:840px;margin:0 auto}
.la .feat{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;display:flex;gap:14px;align-items:flex-start}
.la .feat .ic{width:44px;height:44px;flex:none;border-radius:12px;background:var(--blue-t);display:grid;place-items:center;color:var(--blue-d)}
.la .feat .ic svg{width:22px;height:22px}
.la .feat h3{font-size:17px;margin-bottom:4px}.la .feat p{color:var(--sec);font-size:15px}
.la .seujeito{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding:72px 24px}
.la .sj-copy h2{text-align:left;font-size:38px;margin:8px 0 14px}.la .sj-copy .eyebrow{text-align:left}
.la .sj-copy p{color:var(--sec);font-size:17px;margin-bottom:20px;max-width:44ch}
.la .sj-list{list-style:none;display:flex;flex-direction:column;gap:10px}
.la .sj-list li{display:flex;gap:10px;font-size:15.5px;color:var(--ink)}.la .sj-list svg{flex:none;color:var(--blue)}
.la .sj-card{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:0 30px 60px -30px rgba(20,25,34,.35)}
.la .sj-card .tt{font-size:15px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--label);margin-bottom:16px}
.la .tc-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;font-size:15px;color:var(--sec);margin-bottom:16px}
.la .track{height:8px;border-radius:100px;background:var(--blue-t);position:relative}
.la .track i{position:absolute;top:50%;transform:translate(-50%,-50%);width:22px;height:22px;border-radius:50%;background:var(--blue);box-shadow:0 3px 8px -2px var(--blue)}
.la .tc-toggle{display:flex;align-items:center;justify-content:space-between;font-size:15px;color:var(--ink);padding:12px 0;border-top:1px solid var(--line)}
.la .sw{width:42px;height:24px;border-radius:100px;background:var(--blue);position:relative;flex:none}
.la .sw::after{content:"";position:absolute;top:3px;right:3px;width:18px;height:18px;border-radius:50%;background:#fff}
.la .sj-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
/* white-space:nowrap — a pílula inteira desce para a linha de baixo (o
   container já é flex-wrap) em vez de quebrar a frase no meio. */
.la .chip{font-size:15px;font-weight:600;padding:7px 12px;border-radius:100px;white-space:nowrap}
.la .chip.ok{background:#D9EEE5;color:#1a6b4f}.la .chip.no{background:#F5DFDB;color:var(--st-atrasado-tinta)}
.la .price-wrap{max-width:520px;margin:0 auto}
.la .price{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:34px;text-align:center;box-shadow:0 20px 40px -24px rgba(20,25,34,.25)}
.la .price .big{font-size:48px;font-weight:800;letter-spacing:-.03em}.la .price .per{color:var(--label);font-size:16px}
.la .price .big .was{font-size:26px;font-weight:700;color:var(--texto-3);text-decoration:line-through;margin-right:6px}
.la .price .promo-note{margin:6px 0 0;font-size:15px;color:#15803d;font-weight:700}
.la .price ul{list-style:none;text-align:left;margin:22px auto 26px;max-width:320px;display:flex;flex-direction:column;gap:10px}
.la .price li{display:flex;gap:10px;font-size:15px;color:var(--ink)}.la .price li svg{flex:none;color:var(--green)}
.la .price .btn{width:100%}.la .price .cancel{color:var(--label);font-size:15px;margin-top:12px}
.la footer{border-top:1px solid var(--line);padding:32px 0;color:var(--label);font-size:15px}
.la .foot-id p{margin:0 0 4px;line-height:1.55}
.la .foot-id strong{color:var(--ink,var(--texto))}
.la .foot-id a{color:inherit}
.la .foot-links{display:flex;gap:18px;flex-wrap:wrap;align-items:flex-start}
.la .foot-in{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px}.la .foot-in a{color:var(--sec);margin-left:16px}
@media(max-width:860px){
.la h1{font-size:36px}.la .lead{font-size:17px}
.la .steps{grid-template-columns:1fr}.la .feats{grid-template-columns:1fr}
.la .seujeito{grid-template-columns:1fr;gap:32px;padding:44px 24px}.la .sj-copy h2{font-size:30px}
.la .nav-link{display:none}
  /* Dois botões azuis idênticos na mesma tela competiam entre si, e o da barra
     ficava espremido. No celular o CTA vive embaixo, acima do Google. */
.la .nav-ativar{display:none}
}
@media(max-width:720px){.la .devices{gap:12px}.la .flow{transform:rotate(90deg)}.la .flow.rev{transform:rotate(-90deg)}.la .appphone,.la .phone{width:280px}}

.pp[data-v-9798adff] {
  position: fixed; inset: 0; display: flex; flex-direction: column;
  background: #F7F8FA; color: #141922; overflow-y: auto;
  font-family: 'Instrument Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}
.pp-top[data-v-9798adff] { display: flex; align-items: center; gap: 12px; padding: 16px 20px;
}
.pp-back[data-v-9798adff] { border: 0; background: none; font-size: 22px; cursor: pointer; color: #5B6572;
}
.pp-brand[data-v-9798adff] { font-weight: 800; font-size: 17px;
}
.pp-prog[data-v-9798adff] { display: flex; gap: 6px; margin-left: auto;
}
.pp-prog i[data-v-9798adff] { width: 26px; height: 4px; border-radius: 2px; background: #E2E5EA;
}
.pp-prog i.on[data-v-9798adff] { background: #3E5F8A;
}
.pp-corpo[data-v-9798adff] { flex: 1; width: 100%; max-width: 620px; margin: 0 auto; padding: 8px 20px 24px;
}
.pp-cartao[data-v-9798adff] { background: #fff; border: 1px solid #E2E5EA; border-radius: 18px; padding: 22px; text-align: center;
}
.pp-selo[data-v-9798adff] { display: inline-block; background: #D9EEE5; color: #1D8A66; font-size: 15px;
  font-weight: 800; padding: 5px 13px; border-radius: 999px; margin-bottom: 14px;
}
.pp-preco[data-v-9798adff] { display: flex; align-items: baseline; justify-content: center; gap: 7px;
}
.pp-preco s[data-v-9798adff] { color: #5B6572; font-size: 19px;
}
.pp-preco b[data-v-9798adff] { font-size: 42px; letter-spacing: -1.4px; line-height: 1;
}
.pp-preco span[data-v-9798adff] { color: #5B6572; font-size: 17px;
}
.pp-depois[data-v-9798adff] { margin: 8px 0 18px; color: #5B6572; font-size: 15.5px;
}
.pp-inclui[data-v-9798adff] { list-style: none; padding: 0; margin: 0; text-align: left; display: flex;
  flex-direction: column; gap: 10px;
}
.pp-inclui li[data-v-9798adff] { display: flex; gap: 9px; font-size: 15.5px; align-items: flex-start;
}
.pp-inclui li span[data-v-9798adff] { color: #1D8A66; font-weight: 800;
}
.pp-aceites[data-v-9798adff] { background: #fff; border: 1px solid #E2E5EA; border-radius: 18px;
  padding: 18px; margin-top: 14px;
}
.pp-aceites-t[data-v-9798adff] { margin: 0 0 12px; font-size: 15px; font-weight: 700; letter-spacing: .5px;
  text-transform: uppercase; color: #5B6572;
}
.pp-carregando[data-v-9798adff] { color: #5B6572; font-size: 15px; margin: 0;
}
.pp-ac[data-v-9798adff] { display: flex; gap: 10px; align-items: flex-start; margin: 0 0 13px;
  font-size: 15px; line-height: 1.45; color: #5B6572; cursor: pointer;
}
.pp-ac input[data-v-9798adff] { width: 21px; height: 21px; flex: none; margin-top: 1px; accent-color: #3E5F8A; cursor: pointer;
}
.pp-ac b[data-v-9798adff] { color: #141922;
}
.pp-doc[data-v-9798adff] { margin: 4px 0 0; font-size: 15px;
}
.pp-doc a[data-v-9798adff] { color: #2C4A73;
}
.pp-rodape[data-v-9798adff] { position: sticky; bottom: 0; background: #F7F8FA; padding: 14px 20px 22px;
  width: 100%; max-width: 620px; margin: 0 auto; border-top: 1px solid #E2E5EA;
}
.pp-cta[data-v-9798adff] { width: 100%; padding: 15px; border: 0; border-radius: 14px; background: #3E5F8A;
  color: #fff; font-size: 17px; font-weight: 800; cursor: pointer; font-family: inherit;
}
.pp-cta[data-v-9798adff]:disabled { background: #C7D2E0; cursor: not-allowed;
}
.pp-nota[data-v-9798adff] { margin: 10px 0 0; text-align: center; font-size: 15px; color: #5B6572;
}

.gsi[data-v-bf3bf445] { margin-top: 18px;
}
.gsi-divider[data-v-bf3bf445] { display: flex; align-items: center; gap: 12px; color: var(--faint, #8996A8); font-size: 15px; margin-bottom: 14px;
}
.gsi-divider[data-v-bf3bf445]::before, .gsi-divider[data-v-bf3bf445]::after { content: ''; flex: 1; height: 1px; background: var(--border, var(--linha));
}
.gsi-slot[data-v-bf3bf445] { display: flex; justify-content: center;
}
.gsi-err[data-v-bf3bf445] { color: #A9797B; font-size: 15px; text-align: center; margin-top: 8px;
}

.signup-container[data-v-4c9e4383] {
  min-height: 100vh;
  background: #F4F7FB;
  display: flex;
}

/* Two-panel: marca/valor à esquerda, formulário grande à direita.
   Ocupa a tela inteira — nada de card estreito perdido no meio. */
.signup-wrapper[data-v-4c9e4383] {
  display: grid;
  grid-template-columns: 44% 56%;
  width: 100%;
  min-height: 100vh;
}

/* ---- Painel de marca (esquerda) ---- */
.signup-header[data-v-4c9e4383] {
  background: linear-gradient(158deg, var(--marca) 0%, var(--acao) 100%);
  color: #fff;
  padding: 56px clamp(32px, 5vw, 72px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: left;
  margin: 0;
}
.signup-brand-top[data-v-4c9e4383] { display: flex; align-items: center; gap: 12px; margin-bottom: 44px;
}
.signup-logo-circle[data-v-4c9e4383] {
  display: inline-flex; align-items: center; justify-content: center;
  width: 52px; height: 52px; background: #fff; border-radius: 15px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22); margin: 0;
}
.signup-logo-icon[data-v-4c9e4383] { width: 34px; height: 34px; display: block;
}
.signup-brand-name[data-v-4c9e4383] { font-size: 22px; font-weight: 800; letter-spacing: -.01em; color: #fff;
}
.signup-title[data-v-4c9e4383] {
  font-size: clamp(30px, 3.2vw, 46px);
  font-weight: 800; line-height: 1.08; letter-spacing: -.022em;
  color: #fff; margin: 0 0 18px; max-width: 13ch;
}
.signup-subtitle[data-v-4c9e4383] {
  font-size: clamp(17px, 1.35vw, 21px); line-height: 1.5;
  color: rgba(255, 255, 255, 0.92); margin: 0 0 36px; max-width: 34ch;
}
.signup-benefits[data-v-4c9e4383] { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 20px;
}
.signup-benefits li[data-v-4c9e4383] { display: flex; gap: 15px; align-items: flex-start; font-size: 17px; line-height: 1.4; color: rgba(255, 255, 255, 0.95);
}
.signup-benefits .bi[data-v-4c9e4383] { font-size: 26px; line-height: 1.1; flex: none;
}
.signup-benefits b[data-v-4c9e4383] { font-weight: 800;
}

/* ---- Painel do formulário (direita) ---- */
.signup-card[data-v-4c9e4383] {
  background: #fff;
  /* O padding lateral define uma COLUNA única — todos os blocos (progresso,
     termos, campos, botões) alinham no mesmo eixo, sem centralização por filho
     (que desalinhava o bloco de termos). */
  padding: 48px clamp(26px, 7vw, 132px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-radius: 0;
  box-shadow: none;
}

/* ---- Mobile: empilha (marca compacta no topo, formulário embaixo) ---- */
@media (max-width: 860px) {
.signup-wrapper[data-v-4c9e4383] { grid-template-columns: 1fr;
}
.signup-header[data-v-4c9e4383] { padding: 30px 24px 26px; justify-content: flex-start;
}
.signup-brand-top[data-v-4c9e4383] { margin-bottom: 20px;
}
.signup-title[data-v-4c9e4383] { font-size: 28px; max-width: none; margin-bottom: 10px;
}
.signup-subtitle[data-v-4c9e4383] { font-size: 16px; margin-bottom: 0; max-width: none;
}
.signup-benefits[data-v-4c9e4383] { display: none;
}
.signup-card[data-v-4c9e4383] { padding: 30px 22px 44px;
}
}

/* Wizard Progress */
.wizard-progress[data-v-4c9e4383] {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 28px;
}
.wizard-step-block[data-v-4c9e4383] {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
.wizard-step-label[data-v-4c9e4383] {
  font-size: 15px;
  font-weight: 600;
  color: var(--texto-3);
  transition: color 0.3s;
}
.wizard-step-label.on[data-v-4c9e4383] {
  color: var(--acao);
}
.wizard-progress .wizard-line[data-v-4c9e4383] {
  margin-top: 15px;
}
.wizard-step[data-v-4c9e4383] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #f1f5f9;
  border: 2px solid #e2e8f0;
  font-weight: 600;
  color: #64748b;
  transition: all 0.3s;
}
.wizard-step.active[data-v-4c9e4383] {
  background: var(--marca);
  border-color: var(--marca);
  color: white;
}
.wizard-step.completed[data-v-4c9e4383] {
  background: #10b981;
  border-color: #10b981;
  color: white;
}
.wizard-step-number[data-v-4c9e4383] {
  font-size: 16px;
  font-weight: 700;
}
.wizard-line[data-v-4c9e4383] {
  flex: 1;
  height: 2px;
  background: #e2e8f0;
  transition: background 0.3s;
}
.wizard-line.active[data-v-4c9e4383] {
  background: var(--marca);
}
.wizard-step-header[data-v-4c9e4383] {
  margin-bottom: 24px;
}
.wizard-step-header h2[data-v-4c9e4383] {
  font-size: 32px;
  font-weight: 800;
  letter-spacing: -.02em;
  color: var(--texto);
  margin: 0 0 8px;
}
.wizard-step-header p[data-v-4c9e4383] {
  font-size: 17px;
  color: #64748b;
  margin: 0;
}
.signup-error[data-v-4c9e4383] {
  margin-bottom: 24px;
  padding: 16px;
  background: #fee2e2;
  border-left: 4px solid #dc2626;
  border-radius: 8px;
}
.signup-error p[data-v-4c9e4383] {
  color: #991b1b;
  font-size: 16px;
  font-weight: 500;
  margin: 0;
}
.signup-success[data-v-4c9e4383] {
  text-align: center;
  padding: 32px 0;
}
.signup-success-icon[data-v-4c9e4383] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  background: #EAF0F8;
  border-radius: 50%;
  margin: 0 auto 16px;
}
.signup-success-icon svg[data-v-4c9e4383] {
  width: 32px;
  height: 32px;
  stroke: var(--acao);
  stroke-width: 2;
}
.signup-success-title[data-v-4c9e4383] {
  font-size: 24px;
  font-weight: 700;
  color: var(--texto);
  margin-bottom: 8px;
}
.signup-success-message[data-v-4c9e4383] {
  font-size: 16px;
  color: #64748b;
  margin-bottom: 24px;
}
.signup-terms-hint[data-v-4c9e4383] {
  text-align: center;
  font-size: 15px;
  color: var(--texto-3);
  margin: 8px 0 4px;
}
.email-signup-btn[data-v-4c9e4383] {
  width: 100%;
  padding: 12px;
  background: linear-gradient(135deg, #16a34a 0%, #15803d 100%);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s;
  font-family: inherit;
}
.email-signup-btn[data-v-4c9e4383]:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(22, 163, 74, 0.3);
}
.email-signup-btn[data-v-4c9e4383]:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}
.signup-divider[data-v-4c9e4383] {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 16px 0;
  color: var(--texto-3);
  font-size: 15px;
}
.signup-divider[data-v-4c9e4383]::before,
.signup-divider[data-v-4c9e4383]::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--linha);
}
.signup-form[data-v-4c9e4383] {
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.signup-field[data-v-4c9e4383] {
  display: flex;
  flex-direction: column;
}
.signup-label[data-v-4c9e4383] {
  font-size: 16px;
  font-weight: 600;
  color: var(--texto);
  margin-bottom: 8px;
}
.signup-input[data-v-4c9e4383] {
  padding: 16px 18px;
  border: 1.5px solid #bfccde;
  border-radius: 12px;
  font-size: 18px;
  font-family: inherit;
  transition: all 200ms;
  outline: none;
}
.signup-input[data-v-4c9e4383]:hover {
  border-color: var(--texto-3);
}
.signup-input[data-v-4c9e4383]:focus {
  border-color: var(--marca);
  box-shadow: 0 0 0 3px rgba(94, 134, 184, 0.1);
}
.signup-input[data-v-4c9e4383]:disabled {
  background: #f0f4f9;
  color: var(--texto-3);
  cursor: not-allowed;
}
.signup-field-hint[data-v-4c9e4383] {
  font-size: 15px;
  color: var(--texto-3);
  margin-top: 4px;
}
.signup-code-input[data-v-4c9e4383] {
  font-size: 24px;
  letter-spacing: 12px;
  text-align: center;
  font-weight: 700;
}
.signup-field-error[data-v-4c9e4383] {
  font-size: 15px;
  color: #dc2626;
  margin-top: 4px;
  font-weight: 500;
}
.signup-requirements[data-v-4c9e4383] {
  margin-top: 12px;
  padding: 12px;
  background: #f1f5fb;
  border-radius: 8px;
}
.boas-vindas[data-v-4c9e4383] {
  text-align: left;
  background: #F4F8FF;
  border: 1px solid #D7E3F8;
  border-radius: 16px;
  padding: 14px;
  margin: 4px 0 18px;
}
.bv-topo[data-v-4c9e4383] { display: flex; align-items: center; gap: 10px; margin-bottom: 10px;
}
.bv-avatar[data-v-4c9e4383] {
  width: 38px; height: 38px; border-radius: 50%; flex: none;
  background: var(--acao); color: #fff; font-weight: 800; font-size: 15px;
  display: grid; place-items: center;
}
.bv-topo b[data-v-4c9e4383] { display: block; font-size: 16px; color: #17233A;
}
.bv-topo small[data-v-4c9e4383] { display: block; font-size: 15px; color: #1B7A4B;
}
.bv-palco[data-v-4c9e4383] { display: flex; flex-direction: column; gap: 8px;
}
.bv-bolha[data-v-4c9e4383] {
  background: #fff; border: 1px solid #E2E8F5; border-radius: 14px 14px 14px 4px;
  padding: 10px 13px; margin: 0; font-size: 16px; line-height: 1.5; color: #17233A;
  animation: bvEntra-4c9e4383 .28s ease-out;
}
@keyframes bvEntra-4c9e4383 {
from { opacity: 0; transform: translateY(6px);
}
to { opacity: 1; transform: none;
}
}
@media (prefers-reduced-motion: reduce) {
.bv-bolha[data-v-4c9e4383] { animation: none;
}
}
.bv-digitando[data-v-4c9e4383] { margin: 0; padding: 8px 13px;
}
.bv-digitando span[data-v-4c9e4383] {
  display: inline-block; width: 6px; height: 6px; border-radius: 50%;
  background: #9AA8C2; margin-right: 4px; animation: bvPula-4c9e4383 1s infinite;
}
.bv-digitando span[data-v-4c9e4383]:nth-child(2) { animation-delay: .15s;
}
.bv-digitando span[data-v-4c9e4383]:nth-child(3) { animation-delay: .3s;
}
@keyframes bvPula-4c9e4383 {
0%,60%,100% { opacity: .3
}
30% { opacity: 1
}
}
.signup-success-acoes[data-v-4c9e4383] { display: flex; flex-direction: column; gap: 10px;
}
.signup-btn-zap[data-v-4c9e4383] {
  background: #1B7A4B; color: #fff; text-decoration: none;
  display: flex; align-items: center; justify-content: center;
}
.signup-btn-zap[data-v-4c9e4383]:hover { background: #156039;
}
.signup-senha-difere[data-v-4c9e4383] {
  font-size: 15px;
  color: var(--st-atrasado-tinta);
  margin: 6px 0 0;
  line-height: 1.4;
}
.signup-requirements-title[data-v-4c9e4383] {
  font-size: 16px;
  font-weight: 600;
  color: var(--texto);
  margin: 0 0 8px;
}
.signup-requirements-list[data-v-4c9e4383] {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.signup-requirement[data-v-4c9e4383] {
  font-size: 16px;
  color: #64748b;
  display: flex;
  align-items: center;
  gap: 6px;
}
.signup-requirement.met[data-v-4c9e4383] {
  color: var(--acao);
  font-weight: 600;
}
.signup-requirement-icon[data-v-4c9e4383] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  font-size: 15px;
  color: inherit;
}
.signup-btn[data-v-4c9e4383] {
  padding: 17px 18px;
  border: none;
  border-radius: 13px;
  font-size: 18px;
  font-weight: 800;
  font-family: inherit;
  cursor: pointer;
  transition: all 200ms;
  display: flex;
  align-items: center;
  justify-content: center;
}
.signup-btn-primary[data-v-4c9e4383] {
  background: linear-gradient(135deg, #16a34a 0%, #15803d 100%);
  color: white;
}
.signup-btn-primary[data-v-4c9e4383]:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(22, 163, 74, 0.3);
}
.signup-btn-primary[data-v-4c9e4383]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.signup-btn-large[data-v-4c9e4383] {
  padding: 17px 16px;
  font-size: 18px;
  font-weight: 700;
}
.signup-btn-loading[data-v-4c9e4383] {
  display: flex;
  align-items: center;
  gap: 8px;
}
.signup-spinner[data-v-4c9e4383] {
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 3px solid rgba(255, 255, 255, 0.3);
  border-top: 3px solid white;
  border-radius: 50%;
  animation: spin-4c9e4383 0.8s linear infinite;
}
@keyframes spin-4c9e4383 {
to {
    transform: rotate(360deg);
}
}
.signup-footer[data-v-4c9e4383] {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid var(--linha);
  text-align: center;
}
.signup-footer-text[data-v-4c9e4383] {
  font-size: 16px;
  color: #64748b;
  margin: 0;
}
.signup-link[data-v-4c9e4383] {
  color: var(--marca);
  font-weight: 700;
  text-decoration: none;
  transition: color 200ms;
}
.signup-link[data-v-4c9e4383]:hover {
  color: var(--acao);
}

/* ⚠️ ESTE AVISO ESTAVA ILEGÍVEL (QA de 12/08/2026): branco sobre fundo claro.
   A cor foi desenhada para o painel azul da esquerda, mas o rodapé é
   renderizado embaixo, no claro — e o único texto que avisa da existência dos
   termos ficava invisível. Depois que o aceite formal saiu do cadastro, este
   aviso é a única menção legal aqui: precisa ser lido. */
.signup-page-footer[data-v-4c9e4383] {
  text-align: center;
  margin-top: 32px;
  font-size: 15px;
  color: #5B6572;
}
.signup-page-footer a[data-v-4c9e4383] {
  color: #2C4A73;
  text-decoration: underline;
  font-weight: 600;
}
.wizard-actions[data-v-4c9e4383] {
  display: flex;
  gap: 12px;
  justify-content: space-between;
}
.wizard-btn-back[data-v-4c9e4383] {
  flex: 1;
  padding: 17px 16px;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  border-radius: 13px;
  font-size: 17px;
  font-weight: 700;
  color: #475569;
  cursor: pointer;
  transition: all 0.2s;
  font-family: inherit;
}
.wizard-btn-back[data-v-4c9e4383]:hover:not(:disabled) {
  background: #e2e8f0;
  border-color: #cbd5e1;
}
.wizard-btn-back[data-v-4c9e4383]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.wizard-btn-next[data-v-4c9e4383] {
  flex: 1.4;
  padding: 17px 16px;
  background: linear-gradient(135deg, var(--marca) 0%, var(--acao) 100%);
  border: none;
  border-radius: 13px;
  font-size: 18px;
  font-weight: 800;
  color: white;
  cursor: pointer;
  transition: all 0.2s;
  font-family: inherit;
}
.wizard-btn-next[data-v-4c9e4383]:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(94, 134, 184, 0.3);
}
.wizard-btn-next[data-v-4c9e4383]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.signup-consent[data-v-4c9e4383] {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  margin: 4px 0 16px;
  font-size: 16px;
  line-height: 1.45;
  color: var(--texto-2);
  cursor: pointer;
}
.signup-consent input[data-v-4c9e4383] {
  margin-top: 2px;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  accent-color: var(--marca);
}

.verify-container[data-v-fb0b9276] {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: var(--fundo);
}
.verify-background[data-v-fb0b9276] {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, var(--marca) 0%, #b8ceea 50%, var(--marca) 100%);
  z-index: 0;
}
.verify-wrapper[data-v-fb0b9276] {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 420px;
}
.verify-card[data-v-fb0b9276] {
  background: white;
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
  padding: 32px;
  text-align: center;
}
.verify-card h2[data-v-fb0b9276] {
  font-size: 24px;
  font-weight: 700;
  color: var(--texto);
  margin: 16px 0 8px 0;
}
.verify-card p[data-v-fb0b9276] {
  font-size: 16px;
  color: #64748b;
  margin: 0 0 24px 0;
  line-height: 1.6;
}
.email-info[data-v-fb0b9276] {
  background: #f0f4f9;
  border-left: 3px solid var(--marca);
  padding: 12px 16px;
  border-radius: 4px;
  margin: 16px 0;
}
.email-text[data-v-fb0b9276] {
  font-size: 16px;
  color: var(--texto);
  margin: 0;
}
.email-text strong[data-v-fb0b9276] {
  color: var(--marca);
  font-weight: 600;
}
.hint-text[data-v-fb0b9276] {
  font-size: 16px;
  color: #64748b;
  margin: 16px 0 !important;
}
.success-text[data-v-fb0b9276] {
  color: var(--acao);
  font-size: 16px;
  margin-top: 16px !important;
}
svg[data-v-fb0b9276] {
  display: inline-block;
  width: 48px;
  height: 48px;
  margin: 16px 0;
  color: var(--marca);
  animation: spin-fb0b9276 2s linear infinite;
}
@keyframes spin-fb0b9276 {
to {
    transform: rotate(360deg);
}
}
.verify-icon[data-v-fb0b9276] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  background: #EAF0F8;
  border-radius: 50%;
  margin: 0 auto 16px;
}
.verify-icon svg[data-v-fb0b9276] {
  width: 32px;
  height: 32px;
  stroke: var(--acao);
  color: var(--acao);
  margin: 0;
  animation: none;
}
.error-icon[data-v-fb0b9276] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  background: #fee2e2;
  border-radius: 50%;
  margin: 0 auto 16px;
}
.error-icon svg[data-v-fb0b9276] {
  width: 32px;
  height: 32px;
  stroke: #dc2626;
  color: #dc2626;
  margin: 0;
  animation: none;
}
.warning-icon[data-v-fb0b9276] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  background: rgba(169,121,123,0.18);
  border-radius: 50%;
  margin: 0 auto 16px;
}
.warning-icon svg[data-v-fb0b9276] {
  width: 32px;
  height: 32px;
  stroke: #A9797B;
  color: #A9797B;
  margin: 0;
  animation: none;
}
button[data-v-fb0b9276] {
  padding: 12px 28px;
  background: linear-gradient(135deg, var(--marca) 0%, #759fd7 100%);
  color: white;
  border: none;
  border-radius: 8px;
  font-weight: 600;
  font-size: 16px;
  cursor: pointer;
  transition: all 200ms;
  font-family: inherit;
  margin-top: 8px;
}
button[data-v-fb0b9276]:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(99, 102, 241, 0.3);
}
button[data-v-fb0b9276]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  transform: none;
}
@media (max-width: 600px) {
.verify-card[data-v-fb0b9276] {
    padding: 24px;
}
.verify-card h2[data-v-fb0b9276] {
    font-size: 20px;
}
button[data-v-fb0b9276] {
    display: block;
    width: 100%;
}
}

.google-login[data-v-cdbf8357] { margin-top: 18px;
}
.google-divider[data-v-cdbf8357] {
  display: flex; align-items: center; gap: 12px;
  color: #8A93A3; font-size: 16px; margin-bottom: 14px;
}
.google-divider[data-v-cdbf8357]::before, .google-divider[data-v-cdbf8357]::after {
  content: ''; flex: 1; height: 1px; background: var(--linha);
}
.google-btn-slot[data-v-cdbf8357] { display: flex; justify-content: center;
}
.login-page[data-v-cdbf8357] {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: var(--fundo);
}
.login-background[data-v-cdbf8357] {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(135deg, var(--marca) 0%, var(--acao) 100%);
  z-index: 0;
}
.login-container[data-v-cdbf8357] {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 400px;
}
.login-logo[data-v-cdbf8357] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 40px;
}
.logo-icon[data-v-cdbf8357] {
  width: 48px;
  height: 48px;
}
.logo-text[data-v-cdbf8357] {
  font-size: 28px;
  font-weight: 700;
  color: white;
}
.login-card[data-v-cdbf8357] {
  background: white;
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
  padding: 32px;
}
.login-title[data-v-cdbf8357] {
  font-size: 32px;
  font-weight: 700;
  color: var(--texto);
  margin: 0 0 8px;
}
.login-subtitle[data-v-cdbf8357] {
  font-size: 16px;
  color: #64748b;
  margin: 0 0 24px;
}
.login-step-header[data-v-cdbf8357] {
  margin-bottom: 24px;
  position: relative;
}
.login-back-btn[data-v-cdbf8357] {
  background: none;
  border: none;
  color: var(--marca);
  cursor: pointer;
  font-weight: 600;
  font-size: 16px;
  margin-bottom: 16px;
  padding: 0;
  transition: color 0.2s;
}
.login-back-btn[data-v-cdbf8357]:hover:not(:disabled) {
  color: var(--acao);
}
.login-back-btn[data-v-cdbf8357]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.login-btn[data-v-cdbf8357] {
  padding: 17px 16px;
  background: linear-gradient(135deg, var(--marca) 0%, #759fd7 100%);
  color: white;
  border: none;
  border-radius: 12px;
  font-size: 18px;
  font-weight: 800;
  cursor: pointer;
  transition: all 0.3s;
  font-family: inherit;
  width: 100%;
  margin-bottom: 16px;
}
.login-btn[data-v-cdbf8357]:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(94, 134, 184, 0.3);
}
.login-btn[data-v-cdbf8357]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.email-login-btn[data-v-cdbf8357] {
  width: 100%;
  padding: 12px;
  background: linear-gradient(135deg, #16a34a 0%, #15803d 100%);
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s;
  font-family: inherit;
}
.email-login-btn[data-v-cdbf8357]:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(22, 163, 74, 0.3);
}
.email-login-btn[data-v-cdbf8357]:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}
.login-divider[data-v-cdbf8357] {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 16px 0;
  color: var(--texto-3);
  font-size: 15px;
}
.login-divider[data-v-cdbf8357]::before,
.login-divider[data-v-cdbf8357]::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--linha);
}
form[data-v-cdbf8357] {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-bottom: 24px;
}
.form-group[data-v-cdbf8357] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.form-group label[data-v-cdbf8357] {
  font-size: 16px;
  font-weight: 600;
  color: var(--texto);
}
.form-group input[data-v-cdbf8357] {
  padding: 16px 18px;
  border: 1.5px solid #bfccde;
  border-radius: 12px;
  font-size: 18px;
  font-family: inherit;
  transition: all 200ms;
  outline: none;
}
.form-group input[data-v-cdbf8357]:hover {
  border-color: var(--texto-3);
}
.form-group input[data-v-cdbf8357]:focus {
  border-color: var(--marca);
  box-shadow: 0 0 0 3px rgba(94, 134, 184, 0.1);
}
.form-group input[data-v-cdbf8357]:disabled {
  background: #f0f4f9;
  color: var(--texto-3);
  cursor: not-allowed;
}
.login-error[data-v-cdbf8357] {
  padding: 12px 16px;
  background: #fee2e2;
  border-left: 4px solid #dc2626;
  border-radius: 8px;
  margin-bottom: 16px;
}

/* Dica da nova senha: some no meio do formulário se for menor que isso — e o
   piso de leitura do projeto é 15px (tipografia_test.go quebra o build). */
.rec-dica-erro[data-v-cdbf8357] { color: var(--st-atrasado-tinta);
}
.rec-dica[data-v-cdbf8357] { margin-top: 8px; font-size: 15px; color: var(--texto-3); line-height: 1.45;
}
.login-error p[data-v-cdbf8357] {
  color: #991b1b;
  font-size: 16px;
  font-weight: 500;
  margin: 0;
}
.login-btn[data-v-cdbf8357] {
  padding: 17px 16px;
  background: linear-gradient(135deg, var(--marca) 0%, #759fd7 100%);
  color: white;
  border: none;
  border-radius: 12px;
  font-size: 18px;
  font-weight: 800;
  cursor: pointer;
  transition: all 0.3s;
  font-family: inherit;
}
.login-btn[data-v-cdbf8357]:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 10px 25px rgba(94, 134, 184, 0.3);
}
.login-btn[data-v-cdbf8357]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.login-footer[data-v-cdbf8357] {
  text-align: center;
  padding-top: 16px;
  border-top: 1px solid var(--linha);
  margin-top: 16px;
}
.login-footer p[data-v-cdbf8357] {
  font-size: 16px;
  color: #64748b;
  margin: 0;
}
.login-footer.signup-invite[data-v-cdbf8357] {
  border: none;
  padding: 0;
  margin-top: 24px;
}
.signup-text[data-v-cdbf8357] {
  font-size: 16px;
  color: #64748b;
}
.signup-cta[data-v-cdbf8357] {
  color: #16a34a;
  font-weight: 700;
  text-decoration: none;
  transition: color 0.2s;
}
.signup-cta[data-v-cdbf8357]:hover {
  color: #15803d;
}
.login-link[data-v-cdbf8357] {
  color: var(--marca);
  font-weight: 700;
  text-decoration: none;
  transition: color 0.2s;
}
.login-link[data-v-cdbf8357]:hover {
  color: var(--acao);
}
.login-footer.terms[data-v-cdbf8357] {
  border-top: none;
  padding: 0;
  margin-top: 16px;
  font-size: 15px;
}
.login-footer.terms a[data-v-cdbf8357] {
  color: var(--marca);
  text-decoration: underline;
}
.back-to-home-btn[data-v-cdbf8357] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 10px 16px;
  background: rgba(255, 255, 255, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 8px;
  color: white;
  font-weight: 500;
  font-size: 16px;
  cursor: pointer;
  transition: all 0.3s;
  margin-top: 24px;
  width: 100%;
  font-family: inherit;
}
.back-to-home-btn[data-v-cdbf8357]:hover {
  background: rgba(255, 255, 255, 0.3);
  border-color: rgba(255, 255, 255, 0.5);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.back-to-home-btn[data-v-cdbf8357]:active {
  transform: translateY(1px);
}

/* Step Progress */
.step-progress[data-v-cdbf8357] {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-bottom: 32px;
}
.step[data-v-cdbf8357] {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 16px;
  transition: all 0.3s;
  background: #e2e8f0;
  color: #64748b;
  border: 2px solid #cbd5e1;
}
.step.active[data-v-cdbf8357] {
  background: linear-gradient(135deg, var(--marca) 0%, #759fd7 100%);
  color: white;
  border-color: var(--marca);
}
.step.done[data-v-cdbf8357] {
  background: #16a34a;
  color: white;
  border-color: #16a34a;
}
.step-line[data-v-cdbf8357] {
  width: 24px;
  height: 2px;
  background: #cbd5e1;
  transition: all 0.3s;
}
.step-line.done[data-v-cdbf8357] {
  background: #16a34a;
}

/* Password Input Group */
.password-input-group[data-v-cdbf8357] {
  position: relative;
  display: flex;
  align-items: center;
}
.password-input-group input[data-v-cdbf8357] {
  width: 100%;
  padding-right: 40px;
}
.password-toggle[data-v-cdbf8357] {
  position: absolute;
  right: 12px;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 20px;
  padding: 4px 10px;
  transition: opacity 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #64748b;
}
.password-toggle[data-v-cdbf8357]:hover:not(:disabled) {
  opacity: 0.7;
}
.password-toggle[data-v-cdbf8357]:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

/* Step Buttons */
.step-buttons[data-v-cdbf8357] {
  display: flex;
  gap: 12px;
  margin-bottom: 0;
}
.step-buttons .login-btn[data-v-cdbf8357] {
  flex: 1;
  margin-bottom: 0;
}
.login-btn.secondary[data-v-cdbf8357] {
  background: linear-gradient(135deg, #e2e8f0 0%, #cbd5e1 100%);
  color: var(--texto);
}
.login-btn.secondary[data-v-cdbf8357]:hover:not(:disabled) {
  background: linear-gradient(135deg, #cbd5e1 0%, var(--texto-3) 100%);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

/* Info Messages */
.info-message[data-v-cdbf8357] {
  padding: 12px 16px;
  background: #dbeafe;
  border-left: 4px solid #0284c7;
  border-radius: 8px;
  margin-bottom: 16px;
  font-size: 16px;
  color: #0369a1;
  line-height: 1.5;
}
.info-message p[data-v-cdbf8357] {
  margin: 0;
}
.info-message.success[data-v-cdbf8357] {
  background: #dcfce7;
  border-left-color: #16a34a;
  color: #166534;
}

/* Small text for verification code hint */
.form-group small[data-v-cdbf8357] {
  font-size: 15px;
  color: var(--texto-3);
  margin-top: -4px;
}

.significance[data-v-817b973c] { margin-top: 16px; padding-top: 14px; border-top: 1px solid #eef2f8;
}
.sig-label[data-v-817b973c] { font-size: 15px; font-weight: 700; color: #64748b; margin-bottom: 8px;
}
.sig-chips[data-v-817b973c] { display: flex; flex-wrap: wrap; gap: 7px; align-items: center;
}
.sig-chip[data-v-817b973c] { border: 1px solid #e1eaf5; background: #fff; border-radius: 999px; padding: 6px 12px; font-size: 16px; cursor: pointer; color: #64748b; transition: all .12s;
}
.sig-chip.on[data-v-817b973c] { background: var(--marca); border-color: var(--marca); color: #fff; font-weight: 700;
}
.sig-chip.add[data-v-817b973c] { border-style: dashed;
}
.sig-chip.add[data-v-817b973c]:hover { background: #F1F5FB; color: var(--acao);
}
.sig-x[data-v-817b973c] { opacity: .8; margin-left: 2px;
}
/* Campo com ícone de confirmar DENTRO (mobile-first: toque em vez de Enter) */
.sig-inputwrap[data-v-817b973c] { position: relative; display: inline-flex; align-items: center;
}
.sig-input[data-v-817b973c] { border: 1px solid #e1eaf5; border-radius: 999px; padding: 8px 40px 8px 14px; font-size: 16px; outline: none; min-width: 130px; width: 100%; box-sizing: border-box;
}
.sig-input[data-v-817b973c]:focus { border-color: var(--marca);
}
.sig-go[data-v-817b973c] { position: absolute; right: 4px; top: 50%; transform: translateY(-50%); width: 30px; height: 30px; border: none; border-radius: 999px; background: var(--marca); color: #fff; font-size: 16px; font-weight: 800; line-height: 1; cursor: pointer; display: grid; place-items: center;
}
.sig-go[data-v-817b973c]:hover { background: var(--acao);
}

.client-editor[data-v-d444d260] {
  background: white;
  border: 1px solid var(--linha);
  border-radius: 12px;
  padding: 20px;
  margin-bottom: 24px;
}
.editor-header[data-v-d444d260] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 2px solid #f0f4f9;
}
.editor-header h3[data-v-d444d260] {
  margin: 0;
  font-size: 16px;
  color: var(--texto);
}
.edit-btn[data-v-d444d260],
.save-btn[data-v-d444d260],
.cancel-btn[data-v-d444d260] {
  padding: 8px 16px;
  border-radius: 6px;
  border: none;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
}
.edit-btn[data-v-d444d260] {
  background: #f0f4f9;
  color: var(--marca);
  border: 1px solid #C9D8EC;
}
.edit-btn[data-v-d444d260]:hover {
  background: #e5edf8;
}
.edit-actions[data-v-d444d260] {
  display: flex;
  gap: 8px;
}
.save-btn[data-v-d444d260] {
  background: var(--marca);
  color: white;
}
.save-btn[data-v-d444d260]:hover:not(:disabled) {
  background: var(--acao);
}
.save-btn[data-v-d444d260]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.cancel-btn[data-v-d444d260] {
  background: #f0f4f9;
  color: #64748b;
}
.cancel-btn[data-v-d444d260]:hover {
  background: var(--linha);
}
.editor-content[data-v-d444d260] {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.view-mode[data-v-d444d260] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
  gap: 20px;
}
.edit-mode[data-v-d444d260] {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.field-group[data-v-d444d260] {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.field-group label[data-v-d444d260] {
  font-size: 15px;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.field-value[data-v-d444d260] {
  margin: 0;
  font-size: 16px;
  color: var(--texto);
  line-height: 1.6;
  padding: 10px;
  background: var(--fundo);
  border-radius: 6px;
}
.field-input[data-v-d444d260],
.field-textarea[data-v-d444d260] {
  padding: 10px 12px;
  border: 1px solid var(--linha);
  border-radius: 6px;
  font-size: 16px;
  color: var(--texto);
  font-family: inherit;
  transition: all 0.2s;
}
.field-input[data-v-d444d260]:focus,
.field-textarea[data-v-d444d260]:focus {
  outline: none;
  border-color: var(--marca);
  box-shadow: 0 0 0 3px rgba(79, 143, 238, 0.1);
}
.field-textarea[data-v-d444d260] {
  resize: vertical;
  min-height: 80px;
}
.success-message[data-v-d444d260] {
  margin-top: 12px;
  padding: 12px;
  background: #EAF0F8;
  color: var(--acao);
  border: 1px solid #86efac;
  border-radius: 6px;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
}

/* ── Campos personalizados ── */
.custom-fields[data-v-d444d260] {
  margin-top: 20px;
  padding-top: 16px;
  border-top: 2px solid #f0f4f9;
}
.cf-header[data-v-d444d260] {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin-bottom: 12px;
  flex-wrap: wrap;
}
.cf-header label[data-v-d444d260] {
  font-size: 15px;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.cf-hint[data-v-d444d260] {
  font-size: 15px;
  color: var(--texto-3);
}
.cf-list[data-v-d444d260] {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 12px;
}
.cf-row[data-v-d444d260] {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  background: var(--fundo);
  border: 1px solid #ecf1f8;
  border-radius: 8px;
}
.cf-label[data-v-d444d260] {
  font-size: 16px;
  font-weight: 700;
  color: var(--texto);
  min-width: 140px;
}
.cf-value[data-v-d444d260] {
  flex: 1;
  font-size: 16px;
  color: #475569;
}
.cf-del[data-v-d444d260] {
  border: none;
  background: none;
  color: var(--texto-3);
  font-size: 16px;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 6px;
  transition: all 0.15s;
}
.cf-del[data-v-d444d260]:hover {
  background: #fee2e2;
  color: #dc2626;
}
.cf-empty[data-v-d444d260] {
  margin: 0 0 12px;
  font-size: 16px;
  color: var(--texto-3);
}
.cf-add[data-v-d444d260] {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.cf-add-label[data-v-d444d260] { flex: 1; min-width: 170px;
}
.cf-add-value[data-v-d444d260] { flex: 1; min-width: 150px;
}
.cf-add-btn[data-v-d444d260] {
  padding: 10px 16px;
  border-radius: 6px;
  border: 1px solid #C9D8EC;
  background: #f0f4f9;
  color: var(--marca);
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s;
  white-space: nowrap;
}
.cf-add-btn[data-v-d444d260]:hover:not(:disabled) { background: #e5edf8;
}
.cf-add-btn[data-v-d444d260]:disabled { opacity: 0.5; cursor: not-allowed;
}
@media (max-width: 768px) {
.view-mode[data-v-d444d260] {
    grid-template-columns: 1fr;
}
.editor-header[data-v-d444d260] {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
}
}

.cad-ic[data-v-b3cbfaf6] { flex: none; display: inline-block; vertical-align: -0.28em;
}

.financial-panel[data-v-a3a36c21] { background: white; border: 1px solid var(--linha); border-radius: 12px; padding: 20px;
}
.panel-header[data-v-a3a36c21] { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; padding-bottom: 16px; border-bottom: 2px solid #f0f4f9; flex-wrap: wrap; gap: 8px;
}
.panel-header h3[data-v-a3a36c21] { margin: 0; font-size: 16px; color: var(--texto);
}
.header-actions[data-v-a3a36c21] { display: flex; gap: 8px;
}
.add-btn[data-v-a3a36c21] { padding: 8px 14px; border-radius: 6px; font-size: 16px; font-weight: 600; cursor: pointer; border: none; background: var(--marca); color: white;
}
.add-btn[data-v-a3a36c21]:hover { background: var(--acao);
}
.add-btn.alt[data-v-a3a36c21] { background: var(--marca);
}
.add-btn.alt[data-v-a3a36c21]:hover { background: var(--acao);
}
.edit-form[data-v-a3a36c21] { background: var(--fundo); border: 1px solid var(--linha); border-radius: 8px; padding: 16px; margin-bottom: 20px; display: flex; flex-direction: column; gap: 10px;
}
.form-title[data-v-a3a36c21] { font-weight: 600; color: var(--texto);
}
.form-grid[data-v-a3a36c21] { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(160px, 100%), 1fr)); gap: 10px;
}
.form-grid label[data-v-a3a36c21] { font-size: 15px; color: #64748b; display: flex; flex-direction: column; gap: 4px;
}
.fld[data-v-a3a36c21] { width: 100%; padding: 8px 10px; border: 1px solid var(--linha); border-radius: 6px; font-family: inherit; font-size: 16px; box-sizing: border-box;
}
.fld[data-v-a3a36c21]:focus { outline: none; border-color: var(--marca);
}
.form-error[data-v-a3a36c21] { color: #dc2626; font-size: 15px;
}
.form-actions[data-v-a3a36c21] { display: flex; gap: 8px;
}
.save-btn[data-v-a3a36c21] { background: var(--marca); color: white; border: none; padding: 8px 16px; border-radius: 6px; font-weight: 600; font-size: 16px; cursor: pointer;
}
.save-btn[data-v-a3a36c21]:hover:not(:disabled) { background: var(--acao);
}
.save-btn[data-v-a3a36c21]:disabled { opacity: 0.6;
}
.cancel-btn[data-v-a3a36c21] { background: #f0f4f9; color: #64748b; border: none; padding: 8px 16px; border-radius: 6px; font-weight: 600; font-size: 16px; cursor: pointer;
}
.metrics-grid[data-v-a3a36c21] { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(140px, 100%), 1fr)); gap: 12px; margin-bottom: 24px;
}
.metric-card[data-v-a3a36c21] { background: var(--fundo); border: 1px solid var(--linha); border-radius: 8px; padding: 14px;
}
.metric-label[data-v-a3a36c21] { font-size: 15px; color: #64748b; margin-bottom: 6px;
}
.metric-value[data-v-a3a36c21] { font-size: 20px; font-weight: 700; color: var(--texto);
}
.metric-delta[data-v-a3a36c21] { font-size: 15px; font-weight: 600; margin-top: 4px;
}
.metric-delta.up[data-v-a3a36c21] { color: var(--acao);
}
.metric-delta.down[data-v-a3a36c21] { color: #dc2626;
}
.metric-delta.neutral[data-v-a3a36c21] { color: var(--texto-3);
}
.table-section[data-v-a3a36c21] { margin-bottom: 24px;
}
.trend-title[data-v-a3a36c21] { font-size: 16px; font-weight: 600; color: #334155; margin-bottom: 12px;
}
.snap-table[data-v-a3a36c21] { display: flex; flex-direction: column; gap: 8px;
}
.snap-row[data-v-a3a36c21] { display: flex; align-items: center; gap: 12px; border: 1px solid var(--linha); border-radius: 8px; padding: 10px 12px;
}
.snap-date[data-v-a3a36c21] { font-weight: 600; color: var(--marca); min-width: 60px; font-size: 16px;
}
.snap-vals[data-v-a3a36c21] { flex: 1; display: flex; gap: 14px; flex-wrap: wrap; font-size: 16px; color: #475569;
}
.snap-controls[data-v-a3a36c21] { display: flex; gap: 6px;
}
.goals-section[data-v-a3a36c21] { margin-top: 8px;
}
.goal-card[data-v-a3a36c21] { border: 1px solid var(--linha); border-radius: 8px; padding: 12px; margin-bottom: 10px;
}
.goal-head[data-v-a3a36c21] { display: flex; justify-content: space-between; margin-bottom: 8px; flex-wrap: wrap; gap: 6px; align-items: center;
}
.goal-title[data-v-a3a36c21] { font-weight: 600; color: var(--texto); font-size: 16px;
}
.goal-right[data-v-a3a36c21] { display: flex; align-items: center; gap: 8px;
}
.goal-amount[data-v-a3a36c21] { font-size: 16px; color: #64748b;
}
.goal-bar-track[data-v-a3a36c21] { background: #f0f4f9; border-radius: 10px; height: 8px; overflow: hidden;
}
.goal-bar-fill[data-v-a3a36c21] { height: 100%; background: linear-gradient(90deg, var(--marca), var(--marca)); border-radius: 10px; transition: width 0.4s;
}
.goal-foot[data-v-a3a36c21] { display: flex; justify-content: space-between; font-size: 15px; color: #64748b; margin-top: 6px;
}
.icon-btn[data-v-a3a36c21] { background: #f0f4f9; border: none; border-radius: 6px; padding: 5px 8px; cursor: pointer; font-size: 15px; transition: all 0.15s;
}
.icon-btn[data-v-a3a36c21]:hover { background: var(--linha);
}
.icon-btn.danger[data-v-a3a36c21]:hover { background: #fee2e2;
}
.empty[data-v-a3a36c21] { color: var(--texto-3); font-style: italic; padding: 24px; text-align: center; background: var(--fundo); border-radius: 8px;
}
.empty.small[data-v-a3a36c21] { padding: 12px;
}

.cft-backdrop[data-v-45cc0e31] { position: fixed; inset: 0; z-index: 80; background: rgba(15, 23, 42, .42); display: flex; align-items: center; justify-content: center; padding: 20px;
}
.cft-bubble[data-v-45cc0e31] { background: #fff; border-radius: 18px; padding: 22px 22px 16px; width: min(420px, 100%); box-shadow: 0 18px 48px rgba(15, 23, 42, .3);
}
.cft-tag[data-v-45cc0e31] { font-size: 15px; font-weight: 800; letter-spacing: 1.5px; color: var(--marca); margin-bottom: 8px;
}
.cft-title[data-v-45cc0e31] { margin: 0 0 8px; font-size: 18px; color: var(--texto);
}
.cft-body[data-v-45cc0e31] { margin: 0 0 14px; font-size: 16px; line-height: 1.55; color: #475569;
}
.cft-actions[data-v-45cc0e31] { display: flex; align-items: center; justify-content: space-between; gap: 10px;
}
.cft-skip[data-v-45cc0e31] { font-size: 16px; color: var(--texto-3); text-decoration: none;
}
.cft-skip[data-v-45cc0e31]:hover { color: #64748b; text-decoration: underline;
}
.cft-btn[data-v-45cc0e31] { padding: 10px 18px; border: none; border-radius: 12px; background: var(--acao); color: #fff; font-weight: 800; font-size: 16px; cursor: pointer;
}
.cft-btn[data-v-45cc0e31]:hover { background: #3A5B94;
}
.cft-dots[data-v-45cc0e31] { display: flex; gap: 6px; justify-content: center; margin-top: 12px;
}
.cft-dots span[data-v-45cc0e31] { width: 7px; height: 7px; border-radius: 50%; background: var(--linha);
}
.cft-dots span.on[data-v-45cc0e31] { background: var(--acao);
}
@media (max-width: 560px) {
.cft-backdrop[data-v-45cc0e31] { align-items: flex-end; padding: 12px;
}
}

.fv[data-v-8fcf2d05] { display: flex; flex-direction: column; gap: 12px;
}
.fv-loading[data-v-8fcf2d05], .fv-muted[data-v-8fcf2d05] { color: #8A93A3; font-size: 16px;
}
.fv-center[data-v-8fcf2d05] { text-align: center;
}
.fv-card[data-v-8fcf2d05] { background: #fff; border: 1px solid #E2E5EA; border-radius: 18px; padding: 16px 18px;
}
.fv-review[data-v-8fcf2d05] { border: 1.5px solid var(--acao);
}
.fv-review-title[data-v-8fcf2d05] { color: var(--azul-900); font-weight: 700; margin: 0 0 4px;
}
.fv-label[data-v-8fcf2d05] { font-size: 15px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--azul-900); margin: 0 0 8px;
}
.fv-worked[data-v-8fcf2d05] { color: #1D8A66;
}
.fv-avoid[data-v-8fcf2d05] { color: var(--st-atrasado-tinta);
}
.fv-item[data-v-8fcf2d05] { padding: 8px 0; cursor: pointer; border-bottom: 1px solid #F0F2F5;
}
.fv-item[data-v-8fcf2d05]:last-child { border-bottom: none;
}
.fv-item-text[data-v-8fcf2d05] { font-size: 16px; color: #141922;
}
.fv-src[data-v-8fcf2d05] { font-size: 15px; color: var(--acao); font-weight: 600; margin-left: 8px; white-space: nowrap;
}
.fv-pin[data-v-8fcf2d05] { font-size: 15px; color: #C9A24E; margin-left: 8px;
}
.fv-new[data-v-8fcf2d05] { background: #D9EEE5; border-radius: 12px; padding: 9px 12px; margin: 6px 0; cursor: pointer; font-size: 16px;
}
.fv-invite[data-v-8fcf2d05] { background: var(--acao-tonal); border-radius: 14px; padding: 14px; margin-top: 12px;
}
.fv-invite p[data-v-8fcf2d05] { margin: 0 0 10px; color: #141C33;
}
.fv-btn[data-v-8fcf2d05] { background: var(--acao); color: #fff; border: none; border-radius: 100px; padding: 11px 22px; font-weight: 700; cursor: pointer;
}
.fv-btn-wide[data-v-8fcf2d05] { width: 100%;
}
.fv-btn-ghost[data-v-8fcf2d05] { background: #fff; color: #141922; border: 1.5px solid #E2E5EA; border-radius: 100px; padding: 11px 18px; font-weight: 700; cursor: pointer;
}
.fv-btn-danger[data-v-8fcf2d05] { background: none; color: var(--st-atrasado-tinta); border: none; font-weight: 600; cursor: pointer;
}
/* Inner-body: aparece no fluxo (não é popup). */
.fv-overlay[data-v-8fcf2d05] { margin-top: 14px;
}
.fv-sheet[data-v-8fcf2d05] { background: #F7F8FA; border: 1px solid #E2E5EA; border-radius: 14px; padding: 18px; width: 100%; box-sizing: border-box;
}
.fv-excerpt[data-v-8fcf2d05] { background: #F7F8FA; border-radius: 14px; padding: 12px 14px; font-size: 16px; margin: 8px 0;
}
.fv-strong[data-v-8fcf2d05] { font-weight: 700; margin: 14px 0 6px;
}
.fv-input[data-v-8fcf2d05] { width: 100%; border: 1.5px solid #E2E5EA; border-radius: 12px; padding: 10px 12px; font-size: 16px; font-family: inherit; box-sizing: border-box;
}
.fv-actions[data-v-8fcf2d05] { display: flex; gap: 8px; align-items: center; margin: 14px 0 6px; flex-wrap: wrap;
}
.fv-chips[data-v-8fcf2d05] { display: flex; gap: 8px; margin: 10px 0 14px;
}
.fv-chip[data-v-8fcf2d05] { background: #F0F2F5; border: none; border-radius: 100px; padding: 7px 14px; font-size: 16px; cursor: pointer;
}
.fv-chip.on[data-v-8fcf2d05] { background: var(--acao-tonal); color: var(--azul-900); font-weight: 700;
}

.rcp[data-v-c62135aa] { margin-top: 10px; padding: 10px 12px; background: #fafcfe; border: 1px solid #eaeef4; border-radius: 12px;
}
.rcp-label[data-v-c62135aa] { display: flex; align-items: center; gap: 6px; font-size: 15px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: var(--marca); margin-bottom: 9px;
}
.rcp-spark[data-v-c62135aa] { color: var(--marca);
}
.rcp-outs[data-v-c62135aa] { display: flex; flex-direction: column; gap: 7px;
}
.rcp-out[data-v-c62135aa] {
  display: grid; grid-template-columns: 30px 1fr; align-items: start; gap: 10px;
  padding: 8px 10px; background: #fff; border: 1px solid #eaeef4; border-radius: 10px;
  opacity: 0; transform: translateY(5px); animation: rcpRise-c62135aa .38s cubic-bezier(.2,.7,.3,1) forwards;
}
.rcp-ico[data-v-c62135aa] { width: 30px; height: 30px; border-radius: 8px; display: grid; place-items: center; font-size: 16px; background: #f0f4f9;
}
.rcp-body[data-v-c62135aa] { min-width: 0;
}
.rcp-t[data-v-c62135aa] { font-size: 16px; color: #334155;
}
.rcp-t b[data-v-c62135aa] { color: var(--marca);
}
.rcp-why[data-v-c62135aa] { font-size: 15px; color: #6f8bb0; font-style: italic; margin-top: 1px;
}
.rcp-nothing[data-v-c62135aa] { margin-top: 10px; padding: 9px 12px; background: #f8fafc; border: 1px dashed #e2e8f0; border-radius: 10px; font-size: 15px; color: var(--texto-3);
}
@keyframes rcpRise-c62135aa {
to { opacity: 1; transform: none;
}
}
@media (prefers-reduced-motion: reduce) {
.rcp-out[data-v-c62135aa] { animation: none; opacity: 1; transform: none;
}
}

.wsb-banner[data-v-15f4aedb] { background: #ecfaf3; border: 1px solid #b9e6cf; border-radius: 12px; padding: 12px 16px; margin-bottom: 16px;
}
.wsb-txt[data-v-15f4aedb] { margin-bottom: 8px; font-size: 16px; color: var(--texto);
}
.wsb-row[data-v-15f4aedb] { display: flex; gap: 8px; align-items: center; flex-wrap: wrap;
}
.wsb-inp[data-v-15f4aedb] { flex: 1; min-width: 220px; padding: 10px 13px; border: 1px solid #b9e6cf; border-radius: 10px; font-size: 16px; font-family: inherit;
}
.wsb-code[data-v-15f4aedb] { max-width: 140px; text-align: center; font-size: 20px; font-weight: 800;
}
.wsb-hint[data-v-15f4aedb] { font-size: 15px; color: #157a49; margin: 8px 0 4px;
}
.wsb-btn[data-v-15f4aedb] { flex: none; background: #1fa564; color: #fff; font-weight: 800; font-size: 15px; padding: 8px 14px; border-radius: 10px; border: none; text-decoration: none; cursor: pointer; display: inline-block;
}
.wsb-btn[data-v-15f4aedb]:hover { filter: brightness(0.95);
}
.wsb-btn[data-v-15f4aedb]:disabled { opacity: .5; cursor: default;
}
.wsb-err[data-v-15f4aedb] { color: #9C3B3B; font-size: 15px; margin-top: 6px;
}

/* Banner simples: quando usuário já tem telefone */
.wsb-simple[data-v-15f4aedb] { background: linear-gradient(135deg, #f0fdf4 0%, #ecfdf5 100%); border: 1px solid #bbf7d0; border-radius: 12px; padding: 16px; margin-bottom: 16px;
}
.wsb-simple-content[data-v-15f4aedb] { display: flex; align-items: center; gap: 14px;
}
.wsb-simple-icon[data-v-15f4aedb] { font-size: 32px; flex-shrink: 0;
}
.wsb-simple-text[data-v-15f4aedb] { flex: 1;
}
.wsb-simple-text b[data-v-15f4aedb] { display: block; font-size: 16px; color: var(--texto); margin-bottom: 4px;
}
.wsb-simple-text p[data-v-15f4aedb] { margin: 0; font-size: 16px; color: #64748b;
}
.wsb-simple-btn[data-v-15f4aedb] { background: #16a34a; color: white; font-weight: 700; font-size: 16px; padding: 10px 16px; border-radius: 8px; text-decoration: none; display: inline-block; cursor: pointer; border: none; transition: background 0.2s ease; flex-shrink: 0;
}
.wsb-simple-btn[data-v-15f4aedb]:hover { background: #15803d;
}

.cwa-empty[data-v-9cd46abd] { color: #64748b; font-size: 16px; padding: 24px; text-align: center; background: var(--fundo); border-radius: 10px;
}
.cwa-list[data-v-9cd46abd] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px;
}
.cwa-item[data-v-9cd46abd] { border: 1px solid #ECF1F7; border-radius: 12px; padding: 12px 14px; background: #fff;
}
.cwa-top[data-v-9cd46abd] { display: flex; align-items: center; gap: 8px; margin-bottom: 6px;
}
.cwa-date[data-v-9cd46abd] { margin-left: auto;
}
.cwa-tag[data-v-9cd46abd] { font-size: 15px; font-weight: 700; padding: 2px 8px; border-radius: 999px;
}
.cwa-tag.audio[data-v-9cd46abd] { color: #b45309; background: #FBF3F3;
}
.cwa-tag.text[data-v-9cd46abd] { color: var(--acao); background: #EAF0F8;
}
.cwa-method[data-v-9cd46abd] { font-size: 15px; font-weight: 700; color: var(--acao); background: #f1f5fb; padding: 2px 8px; border-radius: 999px;
}
.cwa-method.linked[data-v-9cd46abd] { color: var(--acao); background: #EAF0F8;
}
.cwa-method.phone[data-v-9cd46abd] { color: var(--acao); background: #EAF0F8;
}
.cwa-date[data-v-9cd46abd] { font-size: 15px; color: var(--texto-3);
}
/* Névoa Clean — balão RECEBIDO (verde bem suave) */
.cwa-text[data-v-9cd46abd] { font-size: 16px; color: #3A4A44; line-height: 1.5; white-space: pre-wrap; background: #EEF4EC; border: 1px solid #E2ECDE; border-radius: 4px 12px 12px 12px; padding: 9px 12px; margin-top: 6px;
}
.cwa-phone[data-v-9cd46abd] { font-size: 15px; color: var(--texto-3);
}
.cwa-foot[data-v-9cd46abd] { display: flex; align-items: center; gap: 10px; margin-top: 8px;
}
.cwa-suggest[data-v-9cd46abd] { margin-left: auto; font-size: 15px; font-weight: 600; padding: 5px 10px; border: 1px solid var(--acao); border-radius: 8px; background: #fff; color: var(--acao); cursor: pointer;
}
.cwa-suggest[data-v-9cd46abd]:disabled { opacity: .6; cursor: default;
}
/* Resposta sugerida = balão soft azul-cinza */
.cwa-draft[data-v-9cd46abd] { margin-top: 8px; padding: 8px 10px; border-radius: 12px 4px 12px 12px; background: #EDF1F6; border: 1px solid var(--linha);
}
.cwa-draft-text[data-v-9cd46abd] { width: 100%; box-sizing: border-box; font-family: inherit; font-size: 16px; color: #42506A; line-height: 1.45; background: #fff; border: 1px solid var(--linha); border-radius: 8px; padding: 7px 9px; resize: vertical;
}
.cwa-draft-text[data-v-9cd46abd]:focus { outline: none; border-color: var(--marca);
}
.cwa-draft-actions[data-v-9cd46abd] { display: flex; align-items: center; gap: 8px; margin-top: 6px;
}
.cwa-copy[data-v-9cd46abd] { font-size: 15px; font-weight: 600; padding: 4px 9px; border: 1px solid var(--linha); border-radius: 7px; background: #fff; cursor: pointer;
}
/* "Enviar pelo meu WhatsApp" = azul da paleta (disciplina monocromática) */
.cwa-wa[data-v-9cd46abd] { display: inline-flex; align-items: center; gap: 5px; font-size: 15px; font-weight: 700; padding: 4px 10px; border-radius: 7px; background: var(--marca); color: #fff; text-decoration: none; border: none; cursor: pointer;
}
.cwa-wa[data-v-9cd46abd]:hover { background: var(--acao);
}
.cwa-wa[data-v-9cd46abd]:disabled { opacity: .5; cursor: default;
}
/* Cadastro inline do telefone quando o cliente não tem nenhum */
.cwa-nophone[data-v-9cd46abd] { margin-top: 8px; padding: 8px 10px; border-radius: 9px; background: #FBF3F3; border: 1px solid rgba(169,121,123,0.35);
}
.cwa-nophone-msg[data-v-9cd46abd] { display: block; font-size: 15px; color: #9a3412; line-height: 1.4; margin-bottom: 6px;
}
.cwa-nophone-row[data-v-9cd46abd] { display: flex; gap: 6px;
}
.cwa-phone-input[data-v-9cd46abd] { flex: 1; min-width: 0; font-family: inherit; font-size: 16px; color: var(--texto); background: #fff; border: 1px solid rgba(169,121,123,0.35); border-radius: 8px; padding: 7px 9px;
}
.cwa-phone-input[data-v-9cd46abd]:focus { outline: none; border-color: #A9797B;
}
.cwa-nophone-row .cwa-wa[data-v-9cd46abd] { flex-shrink: 0; padding: 7px 12px; font-size: 15px;
}

.ns[data-v-f66f2ae9] { --ink: #141922; --sec: #5B6572; --line: #E2E5EA; --blue: var(--acao); --blue-d: var(--azul-900); --green: #1D8A66; --green-t: #D9EEE5;
  --fnt: 'Instrument Sans', -apple-system, 'Segoe UI', Roboto, system-ui, sans-serif; text-align: center;
}
.ns[data-v-f66f2ae9] * { font-family: var(--fnt) !important; box-sizing: border-box;
}
/* ⚠️ Reset DESCENDENTE (0,1,1): vence qualquer regra de classe simples (0,1,0)
   e apaga o fundo dos botões coloridos. Foi assim que o CTA principal do
   onboarding ficou branco em produção. As regras de botão abaixo levam o
   prefixo do container para empatar em classes e vencer pela ordem. */
.ns button[data-v-f66f2ae9] { cursor: pointer; border: none; background: none;
}
.ns-card[data-v-f66f2ae9] { background: var(--green-t); border: 1px solid #c3e6d6; border-radius: 16px; padding: 20px 16px; margin: 0 0 16px;
}
.ns-label[data-v-f66f2ae9] { font-size: 15px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--green);
}
.ns-phone[data-v-f66f2ae9] { font-weight: 800; font-size: 30px; letter-spacing: -.02em; color: #1a6b4f; margin: 6px 0 12px;
}
.ns-copy[data-v-f66f2ae9] { background: #fff; border: 1px solid #c3e6d6; color: #1a6b4f; font-weight: 700; font-size: 15px; padding: 11px 18px; border-radius: 100px;
}
.ns-lead[data-v-f66f2ae9] { font-size: 15px; color: var(--sec); line-height: 1.5; margin: 0 0 14px;
}
.ns .ns-cta[data-v-f66f2ae9] { display: block; width: 100%; padding: 15px; border-radius: 9px; background: var(--blue); color: #fff; font-size: 16px; font-weight: 700; text-decoration: none;
}
.ns .ns-cta[data-v-f66f2ae9]:hover { background: var(--blue-d);
}
.ns-copy-msg[data-v-f66f2ae9] { color: var(--blue-d); font-weight: 600; font-size: 15px; padding: 11px; margin-top: 6px;
}
.ns-tip[data-v-f66f2ae9] { font-size: 15px; color: var(--sec); line-height: 1.45; margin: 14px 0 0;
}
.ns-tip b[data-v-f66f2ae9] { color: var(--ink);
}

/* Fila de espera: informativo e calmo — a pessoa pagou e vai receber. */
.ap-espera[data-v-6d65daa8] { font-size: 44px; text-align: center;
}
.ap-espera-p[data-v-6d65daa8] { font-size: 17px; color: #17233A; margin: 10px 0 0;
}
.ap-espera-sub[data-v-6d65daa8] { font-size: 16px; color: #55617A; margin: 10px 0 18px;
}
.f7.ap[data-v-6d65daa8] {
  --bg: #F7F8FA; --card: #fff; --ink: #141922; --sec: #5B6572; --label: #8A93A3;
  --line: #E2E5EA; --sep: #F0F2F5; --blue: var(--acao); --blue-d: var(--azul-900); --blue-t: var(--acao-tonal);
  --green: #1D8A66; --green-t: #D9EEE5;
  --fnt: 'Instrument Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, system-ui, sans-serif;
  position: absolute; inset: 0; overflow-y: auto; background: var(--bg); color: var(--ink);
  font-family: var(--fnt) !important; display: flex; flex-direction: column; justify-content: center;
}
.f7.ap[data-v-6d65daa8] * { font-family: var(--fnt) !important; box-sizing: border-box;
}
.f7.ap button[data-v-6d65daa8] { cursor: pointer; border: none; background: none;
}
.ap-wrap[data-v-6d65daa8] { width: 100%; max-width: 440px; margin: 0 auto; padding: 30px 22px;
}
.ap-h[data-v-6d65daa8] { font-weight: 700; font-size: 29px; letter-spacing: -.025em; margin: 0 0 8px;
}
.ap-h.center[data-v-6d65daa8] { text-align: center;
}
.ap-lead[data-v-6d65daa8] { font-size: 17px; color: var(--sec); line-height: 1.55; margin: 0 0 12px;
}
.ap-lead.center[data-v-6d65daa8] { text-align: center;
}
.ap-excl[data-v-6d65daa8] { font-size: 16px; color: var(--ink); line-height: 1.55; margin: 0 0 22px; padding: 12px 14px; background: var(--blue-t); border: 1px solid #c9d4ee; border-radius: 12px;
}
.ap-excl b[data-v-6d65daa8] { font-weight: 700;
}
.ap-excl.center[data-v-6d65daa8] { text-align: center; background: var(--green-t); border-color: #c3e6d6; margin: 12px 0 18px;
}
.ap-steps[data-v-6d65daa8] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px;
}
.ap-step[data-v-6d65daa8] { display: flex; align-items: center; gap: 13px; padding: 14px 16px; border-radius: 14px; border: 1px solid var(--line); background: var(--card); transition: all .25s;
}
.ap-step.is-active[data-v-6d65daa8] { background: var(--blue-t); border-color: #c9d4ee;
}
.ap-step.is-done[data-v-6d65daa8] { background: var(--green-t); border-color: #c3e6d6;
}
.ap-step.is-pending[data-v-6d65daa8] { opacity: .6;
}
.ap-ico[data-v-6d65daa8] { width: 34px; height: 34px; border-radius: 10px; background: #fff; display: grid; place-items: center; flex: none; color: var(--ink);
}
.ap-step.is-active .ap-ico[data-v-6d65daa8] { color: var(--blue-d);
}
.ap-step.is-done .ap-ico[data-v-6d65daa8] { color: var(--green); background: #fff;
}
.ap-ico svg[data-v-6d65daa8] { width: 19px; height: 19px;
}
.ap-lbl[data-v-6d65daa8] { flex: 1;
}
.ap-lbl b[data-v-6d65daa8] { font-size: 17px; font-weight: 700; display: block;
}
.ap-lbl small[data-v-6d65daa8] { font-size: 15px; color: var(--sec);
}
.ap-spin[data-v-6d65daa8] { width: 17px; height: 17px; border: 2.5px solid #c9d4ee; border-top-color: var(--blue); border-radius: 50%; animation: rot-6d65daa8 .8s linear infinite;
}
@keyframes rot-6d65daa8 {
to { transform: rotate(360deg)
}
}
.ap-stuck[data-v-6d65daa8] { margin-top: 18px; text-align: center;
}
.ap-stuck p[data-v-6d65daa8] { font-size: 15.5px; color: var(--sec); line-height: 1.5; margin: 0 0 14px;
}
.ap-mail[data-v-6d65daa8] { margin-top: 16px; display: flex; gap: 10px; align-items: flex-start; background: var(--blue-t); border: 1px solid #c9d4ee; border-radius: 12px; padding: 12px 14px; font-size: 15px; line-height: 1.5; color: var(--ink);
}
.ap-mail-ic[data-v-6d65daa8] { font-weight: 800; color: var(--blue-d); flex: none;
}
.ap-mail b[data-v-6d65daa8] { font-weight: 700;
}
.ap-todo-lbl[data-v-6d65daa8] { margin: 20px 0 8px; font-size: 15px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--label);
}
.ap-todo[data-v-6d65daa8] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px;
}
.ap-todo li[data-v-6d65daa8] { display: flex; align-items: center; gap: 10px; font-size: 15px; color: var(--ink); padding: 11px 13px; border: 1px solid var(--line); border-radius: 11px; background: var(--card);
}
.ap-k[data-v-6d65daa8] { width: 21px; height: 21px; border-radius: 6px; background: var(--blue-t); color: var(--blue-d); display: grid; place-items: center; font-size: 15px; font-weight: 800; flex: none;
}
.ap-check[data-v-6d65daa8] { width: 72px; height: 72px; border-radius: 50%; background: var(--green-t); color: var(--green); display: grid; place-items: center; margin: 0 auto 16px; animation: pop-6d65daa8 .5s cubic-bezier(.2, 1.4, .4, 1);
}
.ap-check svg[data-v-6d65daa8] { width: 34px; height: 34px;
}
@keyframes pop-6d65daa8 {
from { transform: scale(.5); opacity: 0
}
to { transform: scale(1); opacity: 1
}
}
.ap-numcard[data-v-6d65daa8] { background: var(--green-t); border: 1px solid #c3e6d6; border-radius: 16px; padding: 16px; text-align: center; margin: 16px 0;
}
.ap-numlabel[data-v-6d65daa8] { font-size: 15px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--green);
}
.ap-phone[data-v-6d65daa8] { font-weight: 700; font-size: 24px; letter-spacing: -.02em; color: #1a6b4f; margin: 4px 0 8px;
}
.ap-copy[data-v-6d65daa8] { background: #fff; border: 1px solid #c3e6d6; color: #1a6b4f; font-weight: 600; font-size: 15px; padding: 7px 14px; border-radius: 100px;
}
.f7-cta[data-v-6d65daa8] { width: 100%; padding: 15px; border-radius: 9px; background: var(--blue); color: #fff; font-size: 16px; font-weight: 700;
}
.f7-cta[data-v-6d65daa8]:hover { background: var(--blue-d);
}
.ap-grid[data-v-6d65daa8] { display: flex; gap: 10px; margin-top: 10px;
}
.ap-grid button[data-v-6d65daa8] { flex: 1; background: #fff; border: 1px solid var(--line); color: var(--blue-d); font-weight: 600; font-size: 15px; padding: 11px; border-radius: 10px;
}
.ap-tip[data-v-6d65daa8] { font-size: 15px; color: var(--sec); line-height: 1.45; margin: 14px 0 16px; text-align: center;
}
.ap-tip b[data-v-6d65daa8] { color: var(--ink);
}
.ap-ghost[data-v-6d65daa8] { background: #fff; border: 1px solid var(--line); color: var(--ink); font-weight: 700; font-size: 15px; padding: 11px 20px; border-radius: 9px;
}
.ap-ghost.full[data-v-6d65daa8] { width: 100%;
}

/* Tela de quem acabou de entrar: tudo grande, nada de letra miúda. */
.pp[data-v-52ad16ee] { min-height: 100vh; background: #F4F7FB; display: flex; justify-content: center; padding: 24px 16px 40px;
}
.pp-box[data-v-52ad16ee] { width: 100%; max-width: 520px;
}
.pp-h[data-v-52ad16ee] { font-size: 28px; font-weight: 800; color: #17233A; margin: 8px 0 0;
}
.pp-sub[data-v-52ad16ee] { font-size: 18px; color: #55617A; margin: 6px 0 20px;
}
.pp-num[data-v-52ad16ee] { background: #E7EEFB; border-radius: 16px; padding: 16px; text-align: center; margin-bottom: 22px;
}
.pp-num-cap[data-v-52ad16ee] { font-size: 15px; font-weight: 700; color: #3A5BA8;
}
.pp-num-val[data-v-52ad16ee] { font-size: 26px; font-weight: 800; color: #17233A; margin-top: 4px;
}
.pp-list[data-v-52ad16ee] { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 14px;
}
.pp-card[data-v-52ad16ee] { background: #fff; border: 1px solid #E2E8F2; border-radius: 16px; padding: 18px; display: flex; align-items: flex-start; gap: 14px; flex-wrap: wrap;
}
.pp-card.feito[data-v-52ad16ee] { border-color: #BFE3CF; background: #F6FCF8;
}
.pp-emoji[data-v-52ad16ee] { font-size: 30px; line-height: 1;
}
.pp-txt[data-v-52ad16ee] { flex: 1; min-width: 180px;
}
.pp-t[data-v-52ad16ee] { font-size: 20px; font-weight: 800; color: #17233A;
}
.pp-ok[data-v-52ad16ee] { color: #1D8A66;
}
.pp-p[data-v-52ad16ee] { font-size: 16px; line-height: 1.45; color: #55617A; margin: 4px 0 0;
}
.pp-btn[data-v-52ad16ee] { width: 100%; margin-top: 12px; background: var(--acao); color: #fff; border: 0; border-radius: 999px; padding: 14px 20px; font-size: 17px; font-weight: 700; cursor: pointer;
}
.pp-card.feito .pp-btn[data-v-52ad16ee] { background: #fff; color: var(--acao); border: 2px solid var(--acao);
}
.pp-depois[data-v-52ad16ee] { width: 100%; margin-top: 22px; background: transparent; border: 0; color: #55617A; font-size: 17px; font-weight: 700; padding: 14px; cursor: pointer;
}
@media (min-width: 520px) {
.pp-btn[data-v-52ad16ee] { width: auto; margin-top: 0;
}
}

.dc[data-v-92ab519c] { --ink: #141922; --sep: #F0F2F5; --blue: var(--acao); --blue-d: var(--azul-900); --bg: #F7F8FA; --line: #E2E5EA;
  --fnt: 'Instrument Sans', -apple-system, 'Segoe UI', Roboto, system-ui, sans-serif;
  background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 12px;
}
.dc[data-v-92ab519c] * { font-family: var(--fnt) !important; box-sizing: border-box;
}
/* ⚠️ Reset DESCENDENTE (0,1,1): vence qualquer regra de classe simples (0,1,0)
   e apaga o fundo dos botões coloridos. Foi assim que o CTA principal do
   onboarding ficou branco em produção. As regras de botão abaixo levam o
   prefixo do container para empatar em classes e vencer pela ordem. */
.dc button[data-v-92ab519c] { cursor: pointer; border: none; background: none;
}
.dc-thread[data-v-92ab519c] { display: flex; flex-direction: column; gap: 8px; min-height: 160px; max-height: 40vh; overflow-y: auto; padding: 2px;
}
.dc-bub[data-v-92ab519c] { max-width: 84%; padding: 9px 13px; border-radius: 14px; font-size: 15px; line-height: 1.42;
}
.dc-bub.cli[data-v-92ab519c] { align-self: flex-end; background: var(--blue); color: #fff; border-bottom-right-radius: 5px;
}
.dc-bub.ia[data-v-92ab519c] { align-self: flex-start; background: var(--sep); color: var(--ink); border-bottom-left-radius: 5px;
}
.dc-typ[data-v-92ab519c] { display: inline-flex; gap: 4px; align-items: center;
}
.dc-typ i[data-v-92ab519c] { width: 6px; height: 6px; border-radius: 50%; background: currentColor; opacity: .4; animation: bl-92ab519c 1s infinite;
}
.dc-typ i[data-v-92ab519c]:nth-child(2) { animation-delay: .2s
}
.dc-typ i[data-v-92ab519c]:nth-child(3) { animation-delay: .4s
}
@keyframes bl-92ab519c {
0%, 100% { opacity: .3
}
50% { opacity: 1
}
}
.dc-sug[data-v-92ab519c] { display: flex; gap: 7px; flex-wrap: wrap; margin: 10px 0 8px;
}
.dc-sug button[data-v-92ab519c] { background: var(--acao-tonal); color: var(--blue-d); font-weight: 600; font-size: 15px; padding: 7px 12px; border-radius: 100px;
}
.dc-in[data-v-92ab519c] { display: flex; gap: 8px;
}
.dc-in input[data-v-92ab519c] { flex: 1; border: 1px solid var(--line); border-radius: 100px; padding: 10px 15px; font-size: 15px; background: var(--bg);
}
.dc-in input[data-v-92ab519c]:focus { outline: none; border-color: var(--blue);
}
.dc .dc-send[data-v-92ab519c] { flex: none; width: 40px; height: 40px; border-radius: 50%; background: var(--blue); color: #fff; display: grid; place-items: center;
}
.dc .dc-send svg[data-v-92ab519c] { width: 20px; height: 20px;
}

.ta[data-v-8df9df5e] { display: flex; flex-direction: column; gap: 10px;
}
.ta-loading[data-v-8df9df5e] { color: #6b7280; font-size: 15px;
}
.ta-summary[data-v-8df9df5e] { font-size: 15px; color: #4b5563; line-height: 1.5; margin: 0; background: #f4f7ff; border: 1px solid #dbe4fb; border-radius: 10px; padding: 10px 12px;
}
.ta-item[data-v-8df9df5e] { display: flex; align-items: flex-start; gap: 9px; font-size: 15px; color: #374151; line-height: 1.4; cursor: pointer;
}
.ta-item input[data-v-8df9df5e] { margin-top: 2px; width: 18px; height: 18px; accent-color: var(--acao); flex: none;
}
.ta-links[data-v-8df9df5e] { display: flex; align-items: center; gap: 8px; font-size: 15px;
}
.ta-links a[data-v-8df9df5e] { color: var(--acao); text-decoration: none;
}
.ta-sep[data-v-8df9df5e] { color: #c0c6d0;
}
.ta-body[data-v-8df9df5e] { white-space: pre-wrap; font-size: 15px; color: #4b5563; background: #fafbfc; border: 1px solid #e2e5ea; border-radius: 10px; padding: 12px; max-height: 240px; overflow-y: auto; font-family: inherit;
}

.dd[data-v-56b06427] { --card: #fff; --ink: #141922; --sec: #5B6572; --label: #8A93A3; --sep: #F0F2F5; --blue: var(--acao); --blue-d: var(--azul-900); --blue-t: var(--acao-tonal);
  --fnt: 'Instrument Sans', -apple-system, 'Segoe UI', Roboto, system-ui, sans-serif;
}
.dd[data-v-56b06427] * { font-family: var(--fnt) !important; box-sizing: border-box;
}
/* ⚠️ Reset DESCENDENTE (0,1,1): vence qualquer regra de classe simples (0,1,0)
   e apaga o fundo dos botões coloridos. Foi assim que o CTA principal do
   onboarding ficou branco em produção. As regras de botão abaixo levam o
   prefixo do container para empatar em classes e vencer pela ordem. */
.dd button[data-v-56b06427] { cursor: pointer; border: none; background: none;
}
.dd .dd-fab[data-v-56b06427] { position: absolute; right: 16px; bottom: calc(84px + env(safe-area-inset-bottom)); z-index: 20; display: flex; align-items: center; gap: 7px;
  background: var(--ink); color: #fff; font-weight: 700; font-size: 15px; padding: 11px 15px; border-radius: 100px; box-shadow: 0 6px 18px rgba(20, 25, 34, .28);
}
.dd .dd-fab svg[data-v-56b06427] { width: 17px; height: 17px;
}
.dd-ov[data-v-56b06427] { position: absolute; inset: 0; z-index: 30; background: rgba(20, 25, 34, .4); display: flex; align-items: flex-end;
}
.dd-box[data-v-56b06427] { width: 100%; background: var(--card); border-radius: 20px 20px 0 0; display: flex; flex-direction: column; max-height: 82%; animation: up-56b06427 .25s ease;
}
@keyframes up-56b06427 {
from { transform: translateY(40px); opacity: .6
}
to { transform: none; opacity: 1
}
}
.dd-head[data-v-56b06427] { display: flex; align-items: center; padding: 16px 18px 10px; border-bottom: 1px solid var(--sep); color: var(--ink);
}
.dd-head b[data-v-56b06427] { font-size: 16px; font-weight: 700; display: block;
}
.dd-head small[data-v-56b06427] { font-size: 15px; color: var(--label);
}
.dd-head button[data-v-56b06427] { margin-left: auto; font-size: 17px; color: var(--label);
}
.dd-thread[data-v-56b06427] { flex: 1; overflow-y: auto; padding: 14px 16px; display: flex; flex-direction: column; gap: 8px;
}
.dd-bub[data-v-56b06427] { max-width: 84%; padding: 9px 13px; border-radius: 14px; font-size: 15px; line-height: 1.42;
}
.dd-bub.ia[data-v-56b06427] { align-self: flex-start; background: var(--sep); color: var(--ink); border-bottom-left-radius: 5px;
}
.dd-bub.cli[data-v-56b06427] { align-self: flex-end; background: var(--blue); color: #fff; border-bottom-right-radius: 5px;
}
.dd-typ[data-v-56b06427] { display: inline-flex; gap: 4px; align-items: center;
}
.dd-typ i[data-v-56b06427] { width: 6px; height: 6px; border-radius: 50%; background: currentColor; opacity: .4; animation: bl-56b06427 1s infinite;
}
.dd-typ i[data-v-56b06427]:nth-child(2) { animation-delay: .2s
}
.dd-typ i[data-v-56b06427]:nth-child(3) { animation-delay: .4s
}
@keyframes bl-56b06427 {
0%, 100% { opacity: .3
}
50% { opacity: 1
}
}
.dd-chips[data-v-56b06427] { display: flex; gap: 7px; overflow-x: auto; padding: 4px 16px 8px;
}
.dd-chips[data-v-56b06427]::-webkit-scrollbar { display: none;
}
.dd-chips button[data-v-56b06427] { flex: none; background: var(--blue-t); color: var(--blue-d); font-weight: 600; font-size: 15px; padding: 7px 12px; border-radius: 100px; white-space: nowrap;
}
.dd-in[data-v-56b06427] { display: flex; gap: 8px; padding: 8px 14px calc(14px + env(safe-area-inset-bottom)); border-top: 1px solid var(--sep);
}
.dd-in input[data-v-56b06427] { flex: 1; border: 1px solid #E2E5EA; border-radius: 100px; padding: 10px 15px; font-size: 15px;
}
.dd-in input[data-v-56b06427]:focus { outline: none; border-color: var(--blue);
}
.dd .dd-send[data-v-56b06427] { flex: none; width: 40px; height: 40px; border-radius: 50%; background: var(--blue); color: #fff; display: grid; place-items: center;
}
.dd .dd-send svg[data-v-56b06427] { width: 20px; height: 20px;
}

.f7[data-v-255f6c28] {
  --bg: #F7F8FA; --card: #fff; --ink: #141922; --sec: #5B6572; --label: #8A93A3;
  --line: #E2E5EA; --sep: #F0F2F5; --blue: var(--acao); --blue-d: var(--azul-900); --blue-t: var(--acao-tonal);
  --green: #1D8A66; --green-t: #D9EEE5; --sand: #7A5518; --sand-t: #F2E7D4; --clay: var(--st-atrasado-tinta);
  --fnt: 'Instrument Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, system-ui, sans-serif;
  position: absolute; inset: 0; display: flex; flex-direction: column; background: var(--bg);
  font-family: var(--fnt) !important; color: var(--ink); letter-spacing: -.005em;
}
.f7[data-v-255f6c28] * { font-family: var(--fnt) !important; box-sizing: border-box;
}
/* ⚠️ Este reset é um DESCENDENTE (.f7 button = especificidade 0,1,1) e vence
   qualquer regra de classe simples (.f7-cta = 0,1,0). Foi assim que o botão
   principal "Ativar número CadenceAI" ficou BRANCO em produção: o reset apagava
   o fundo azul, e a cor só voltava no :hover (0,2,0), que ganha do reset.
   Por isso as regras dos botões abaixo são prefixadas com .f7 — para empatar em
   quantidade de classes e vencer pela ordem. Não remova o prefixo. */
.f7 button[data-v-255f6c28] { cursor: pointer; border: none; background: none;
}
.f7-top[data-v-255f6c28] { display: flex; align-items: center; gap: 12px; padding: 42px 20px 12px;
}
.f7-back[data-v-255f6c28] { width: 30px; height: 30px; border-radius: 8px; display: grid; place-items: center; color: var(--sec); margin-left: -6px;
}
.f7-back[data-v-255f6c28]:hover { background: var(--sep); color: var(--ink);
}
.f7-back svg[data-v-255f6c28] { width: 20px; height: 20px;
}
.f7-brand[data-v-255f6c28] { font-weight: 700; font-size: 16px; letter-spacing: -.02em;
}
.f7-prog[data-v-255f6c28] { display: flex; gap: 5px; flex: 1;
}
.f7-prog i[data-v-255f6c28] { flex: 1; height: 4px; border-radius: 100px; background: var(--line); transition: background .3s;
}
.f7-prog i.on[data-v-255f6c28] { background: var(--blue);
}
.f7-scroll[data-v-255f6c28] { flex: 1; overflow-y: auto;
}
.f7-pad[data-v-255f6c28] { padding: 8px 20px 20px;
}
.f7-h1[data-v-255f6c28] { font-weight: 700; font-size: 30px; line-height: 1.12; letter-spacing: -.03em; margin: 8px 0 12px; text-wrap: balance;
}
.f7-h1 .hl[data-v-255f6c28] { color: var(--blue);
}
.f7-h2[data-v-255f6c28] { font-weight: 700; font-size: 24px; line-height: 1.15; letter-spacing: -.025em; margin: 8px 0 8px;
}
.f7-lead[data-v-255f6c28] { font-size: 15px; line-height: 1.5; color: var(--sec); margin: 0 0 18px;
}
.f7-cards[data-v-255f6c28] { display: flex; flex-direction: column; gap: 10px;
}
.f7-card[data-v-255f6c28] { display: flex; gap: 13px; align-items: flex-start; background: var(--card); border: 1px solid var(--line); border-radius: 16px; padding: 14px 15px; box-shadow: 0 1px 2px rgba(20, 25, 34, .04);
}
.f7-ico[data-v-255f6c28] { width: 40px; height: 40px; border-radius: 11px; display: grid; place-items: center; flex: none;
}
.f7-ico svg[data-v-255f6c28] { width: 21px; height: 21px;
}
.f7-ico.b[data-v-255f6c28] { background: var(--blue-t); color: var(--blue-d);
}
.f7-ico.g[data-v-255f6c28] { background: var(--green-t); color: var(--green);
}
.f7-ico.s[data-v-255f6c28] { background: var(--sand-t); color: var(--sand);
}
.f7-ico.c[data-v-255f6c28] { background: var(--sep); color: var(--ink);
}
.f7-card b[data-v-255f6c28] { font-size: 15px; font-weight: 700; display: block; margin-bottom: 2px;
}
.f7-card span[data-v-255f6c28] { font-size: 15px; color: var(--sec); line-height: 1.42;
}
.f7-plan[data-v-255f6c28] { background: var(--card); border: 1px solid var(--line); border-radius: 18px; padding: 18px; box-shadow: 0 1px 2px rgba(20, 25, 34, .04);
}
.f7-promo[data-v-255f6c28] { display: inline-block; font-size: 15px; font-weight: 800; color: #15803d; background: #E7F6EE; padding: 5px 11px; border-radius: 999px; margin-bottom: 10px;
}
.f7-price[data-v-255f6c28] { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap;
}
.f7-was[data-v-255f6c28] { font-size: 17px; font-weight: 700; color: var(--texto-3); text-decoration: line-through;
}
.f7-price b[data-v-255f6c28] { font-size: 34px; font-weight: 700; letter-spacing: -.03em;
}
.f7-price span[data-v-255f6c28] { color: var(--label); font-weight: 600;
}
.f7-free[data-v-255f6c28] { font-size: 15px; color: var(--green); font-weight: 600; margin: 6px 0 12px;
}
.f7-plan ul[data-v-255f6c28] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 9px;
}
.f7-plan li[data-v-255f6c28] { display: flex; gap: 9px; align-items: center; font-size: 15px;
}
.f7-plan .chk[data-v-255f6c28] { width: 18px; height: 18px; color: var(--green); flex: none;
}
.f7-sub[data-v-255f6c28] { font-size: 15px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--label); margin: 22px 0 10px;
}
.f7-after[data-v-255f6c28] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px;
}
.f7-after li[data-v-255f6c28] { display: flex; gap: 11px; align-items: flex-start; font-size: 15px; color: var(--ink); line-height: 1.4;
}
.f7-after .n[data-v-255f6c28] { flex: none; width: 22px; height: 22px; border-radius: 50%; background: var(--blue-t); color: var(--blue-d); font-size: 15px; font-weight: 700; display: grid; place-items: center;
}
/* "E o número que você já usa?" — a pergunta respondida ANTES do pagamento.
   Tonal, nunca vermelho: não ter a coexistência ainda não é defeito, é um passo
   que ainda vem. */
/* ── VEJA UM DIA SEU ──
   Os momentos entram sozinhos ao longo de 12s. O atraso é o recado: você não
   está olhando, e ela segue. Tudo de uma vez viraria mais uma lista — que é
   justamente o que a tela cortada fazia. */
.f7-dia[data-v-255f6c28] { margin: 14px 0 16px; padding: 13px; border-radius: 14px;
  background: var(--bg); border: 1px solid var(--line);
}
.f7-dia-t[data-v-255f6c28] { display: flex; align-items: center; gap: 7px; margin: 0 0 11px;
  font-size: 15px; font-weight: 700; letter-spacing: .5px; text-transform: uppercase; color: var(--label);
}
.f7-dia-t[data-v-255f6c28]::before { content: ''; width: 7px; height: 7px; border-radius: 50%;
  background: var(--green); animation: f7pulsa-255f6c28 2s ease-in-out infinite;
}
@keyframes f7pulsa-255f6c28 {
0%, 100% { opacity: 1
}
50% { opacity: .25
}
}
.f7-mom[data-v-255f6c28] { display: flex; gap: 10px; margin: 0 0 11px; opacity: 0;
  transform: translateY(8px); animation: f7entra-255f6c28 .5s ease forwards;
}
.f7-mom[data-v-255f6c28]:nth-of-type(1) { animation-delay: .3s
}
.f7-mom[data-v-255f6c28]:nth-of-type(2) { animation-delay: 3.2s
}
.f7-mom[data-v-255f6c28]:nth-of-type(3) { animation-delay: 6.1s
}
.f7-mom[data-v-255f6c28]:nth-of-type(4) { animation-delay: 9s
}
@keyframes f7entra-255f6c28 {
to { opacity: 1; transform: translateY(0)
}
}
.f7-h[data-v-255f6c28] { min-width: 44px; padding-top: 2px; font-size: 15px; color: var(--label);
  font-variant-numeric: tabular-nums;
}
.f7-b[data-v-255f6c28] { flex: 1; background: var(--card); border: 1px solid var(--line);
  border-radius: 12px; padding: 9px 11px; font-size: 15px;
}
.f7-b b[data-v-255f6c28] { display: block; font-size: 15px;
}
.f7-b small[data-v-255f6c28] { display: block; font-size: 15px; color: var(--sec);
}
.f7-b.ela[data-v-255f6c28] { background: var(--green-t); border-color: transparent;
}
.f7-b.ela b[data-v-255f6c28] { color: var(--green);
}
.f7-voce[data-v-255f6c28] { margin: 4px 0 0; text-align: center; font-size: 15.5px; color: var(--sec);
  opacity: 0; animation: f7entra-255f6c28 .5s ease 11s forwards;
}
.f7-voce b[data-v-255f6c28] { color: var(--ink);
}
/* Quem prefere menos movimento vê tudo, sem espera. */
@media (prefers-reduced-motion: reduce) {
.f7-mom[data-v-255f6c28], .f7-voce[data-v-255f6c28] { animation: none; opacity: 1; transform: none;
}
.f7-dia-t[data-v-255f6c28]::before { animation: none;
}
}
.f7-trust[data-v-255f6c28] { display: flex; gap: 10px; align-items: flex-start; margin-top: 18px; font-size: 15px; color: var(--sec); line-height: 1.45;
}
.f7-trust svg[data-v-255f6c28] { width: 20px; height: 20px; color: var(--green); flex: none; margin-top: 1px;
}
.f7-err[data-v-255f6c28] { color: var(--clay); font-size: 15px; font-weight: 600; margin-top: 12px;
}
.f7-foot[data-v-255f6c28] { padding: 12px 20px calc(18px + env(safe-area-inset-bottom)); background: linear-gradient(transparent, var(--bg) 30%);
}
.f7 .f7-cta[data-v-255f6c28] { width: 100%; padding: 15px; border-radius: 9px; background: var(--blue); color: #fff; font-size: 16px; font-weight: 700; letter-spacing: -.01em; transition: background .15s, transform .1s;
}
.f7 .f7-cta[data-v-255f6c28]:hover { background: var(--blue-d);
}
.f7 .f7-cta[data-v-255f6c28]:active { transform: translateY(1px);
}
.f7 .f7-cta[data-v-255f6c28]:disabled { background: var(--line); color: var(--label); cursor: default;
}
.f7-note[data-v-255f6c28] { font-size: 15px; color: var(--label); text-align: center; margin: 9px 0 0;
}
.f7 .f7-cta-ghost[data-v-255f6c28] { width: 100%; padding: 12px; border-radius: 9px; background: transparent; color: var(--sec); font-size: 15px; font-weight: 600; margin-top: 8px;
}
.f7 .f7-cta-ghost[data-v-255f6c28]:hover { color: var(--blue);
}
.f7-demotag[data-v-255f6c28] { display: inline-block; font-size: 15px; font-weight: 700; color: var(--blue-d); background: var(--blue-t); border-radius: 100px; padding: 5px 12px; margin: 0 0 10px;
}

/* Quadrado de canto arredondado, no tamanho do ícone que ele substitui. */
.mp[data-v-adcf2849] {
  display: inline-grid; place-items: center; flex: none;
  font-family: var(--fonte-titulo, inherit);
  /* 15px é o piso de leitura do projeto (tipografia_test.go quebra o build
     abaixo disso) — o selo cresce junto em vez de encolher a letra. */
  font-size: 15px; font-weight: 800; letter-spacing: -0.04em;
  line-height: 1; user-select: none;
}

.pml[data-v-263977c3] {
  margin: 12px;
  padding: 14px 16px;
  border-radius: 14px;
  background: #FFF8E8;
  border: 1px solid #F2D98C;
}
.pml-h[data-v-263977c3] { display: flex; align-items: center; gap: 8px;
}
.pml-h b[data-v-263977c3] { font-size: 17px;
}
.pml-n[data-v-263977c3] {
  min-width: 24px; height: 24px; padding: 0 7px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 12px; background: #E6B412; color: #3A2E00;
  font-size: 15px; font-weight: 700;
}
.pml-sub[data-v-263977c3] { margin: 4px 0 10px; font-size: 15px; color: var(--label, var(--texto-2));
}
.pml-item[data-v-263977c3] {
  padding: 12px 0 14px;
  border-top: 1px solid rgba(0,0,0,.07);
}
.pml-texto[data-v-263977c3] { margin: 0 0 4px; font-size: 16px; line-height: 1.45;
}
.pml-espera[data-v-263977c3] { font-size: 15px; color: #8A6D00; font-weight: 600;
}
.pml-erro[data-v-263977c3] { margin: 8px 0 0; font-size: 15px; color: var(--st-atrasado-tinta);
}
.pml-acoes[data-v-263977c3] { display: flex; gap: 10px; margin-top: 10px; flex-wrap: wrap;
}
.pml-btn[data-v-263977c3] {
  border: 0; border-radius: 10px; padding: 10px 16px;
  font-size: 15px; font-weight: 700; cursor: pointer;
  background: #FFE9A8; color: #3A2E00;
}
.pml-btn.publicar[data-v-263977c3] { background: #2E7D32; color: #fff;
}
.pml-btn.cancelar[data-v-263977c3] { background: transparent; color: var(--label, var(--texto-2));
}
.pml-btn[data-v-263977c3]:disabled { opacity: .6; cursor: default;
}
.pml-editor[data-v-263977c3] { margin-top: 10px;
}
.pml-editor label[data-v-263977c3] { display: block; font-size: 15px; margin-bottom: 6px; color: var(--label, var(--texto-2));
}
.pml-editor textarea[data-v-263977c3] {
  width: 100%; box-sizing: border-box;
  font: inherit; font-size: 16px; line-height: 1.45;
  border: 1px solid rgba(0,0,0,.18); border-radius: 10px;
  padding: 10px 12px; background: #fff; resize: vertical;
}

/* ── CONECTAR O WHATSAPP (convivência, ainda sem conexão) ──────────────────
   Tela de um assunto só: o profissional entrou e a única coisa que falta é
   plugar o número dele. Nada de jargão da Meta aqui. */
.cw[data-v-61667649] { padding: 14px; max-width: 620px; margin: 0 auto;
}
.cw-card[data-v-61667649] { border: 1px solid var(--acao-tonal); background: #F3F7FE; border-radius: 16px; padding: 18px 16px;
}
.cw-selo[data-v-61667649] {
  display: inline-block; font-size: 15px; font-weight: 700; color: var(--azul-900);
  background: #fff; border: 1px solid var(--acao-tonal); border-radius: 999px;
  padding: 3px 11px; margin-bottom: 12px;
}
.cw-card h2[data-v-61667649] { font-size: 20px; margin: 0 0 8px; color: #17233A; line-height: 1.3;
}
.cw-card p[data-v-61667649] { margin: 0 0 16px; font-size: 16px; color: #697082; line-height: 1.5;
}
.cw-btn[data-v-61667649] {
  display: block; width: 100%; background: var(--acao); color: #fff; border: 0;
  border-radius: 12px; padding: 15px 18px; font-size: 17px; font-weight: 800;
  font-family: inherit; cursor: pointer; box-shadow: 0 2px 0 var(--azul-900);
}
.cw-btn[data-v-61667649]:hover { background: var(--azul-900);
}
.cw-btn[data-v-61667649]:focus-visible { outline: 3px solid var(--azul-900); outline-offset: 2px;
}
/* A dúvida "vou perder meu WhatsApp?" respondida ANTES do clique. */
.cw-tranq[data-v-61667649] { margin: 12px 0 0 !important; font-size: 15px; color: #697082;
}
.cw-passos[data-v-61667649] { list-style: none; margin: 16px 0 0; padding: 0; display: flex; flex-direction: column; gap: 10px;
}
.cw-passos li[data-v-61667649] { display: flex; gap: 11px; align-items: flex-start; font-size: 15px; color: #697082;
}
.cw-num[data-v-61667649] {
  flex: none; width: 23px; height: 23px; border-radius: 50%; background: var(--superficie-suave);
  border: 1px solid var(--linha); color: #17233A; font-size: 15px; font-weight: 800;
  display: grid; place-items: center;
}
.cw-vazio[data-v-61667649] { margin-top: 20px; padding-top: 16px; border-top: 1px dashed var(--linha); color: #8A97A8; font-size: 15px;
}
.cw-vazio b[data-v-61667649] { display: block; color: #697082; font-size: 16px; margin-bottom: 4px;
}

/* Mensagem agendada: tracejada porque ainda não aconteceu. */
.ag-lista[data-v-61667649] { padding: 0 12px; display: flex; flex-direction: column; gap: 8px;
}
.ag-card[data-v-61667649] { border: 2px dashed #C9A24E; background: #FBF6EA; border-radius: 14px; padding: 12px 14px;
}
.ag-card.falhou[data-v-61667649] { border-color: var(--st-atrasado-tinta); background: #F9EFED;
}
.ag-quando[data-v-61667649] { font-size: 15px; font-weight: 800; color: #7A5518;
}
.ag-card.falhou .ag-quando[data-v-61667649] { color: var(--st-atrasado-tinta);
}
.ag-corpo[data-v-61667649] { font-size: 16px; color: #17233A; margin-top: 4px; line-height: 1.45;
}
.ag-motivo[data-v-61667649] { font-size: 15px; color: var(--st-atrasado-tinta); margin-top: 4px;
}
.ag-acoes[data-v-61667649] { display: flex; gap: 14px; margin-top: 8px;
}
.ag-acoes button[data-v-61667649] { background: none; border: 0; padding: 0; font-size: 15px; font-weight: 700; color: var(--acao); cursor: pointer;
}
/* Ícone centrado: sem place-items o relógio assentava na linha de base. */
.composer .mic[data-v-61667649] { background: none; border: 0; width: 40px; height: 40px; border-radius: 9px; cursor: pointer;
  display: grid; place-items: center; color: #46536A;
}
.composer .mic[data-v-61667649]:hover:not(:disabled) { background: #E7EDF8; color: var(--azul-900);
}
.composer .mic.rec[data-v-61667649] { background: #F9EFED; color: var(--st-atrasado-tinta);
}
.composer .mic[data-v-61667649]:disabled { opacity: .45; cursor: default;
}
.mic-t[data-v-61667649] { font-size: 15px; font-weight: 800; color: var(--st-atrasado-tinta); font-variant-numeric: tabular-nums;
}
.composer .agendar[data-v-61667649] { background: none; border: 0; border-radius: 9px; width: 40px; height: 40px; font-size: 18px; cursor: pointer; display: grid; place-items: center; color: #46536A;
}
.composer .agendar[data-v-61667649]:hover:not(:disabled) { background: #E7EDF8; color: var(--azul-900);
}
.composer .agendar[data-v-61667649]:disabled { opacity: .45; cursor: default;
}
.ag-sheet[data-v-61667649] { background: #fff; border-top: 1px solid var(--linha); padding: 14px 12px 16px;
}
.ag-sheet-t[data-v-61667649] { font-size: 17px; font-weight: 800; color: #17233A; margin-bottom: 10px;
}
.ag-opcoes[data-v-61667649] { display: flex; gap: 8px; flex-wrap: wrap;
}
.ag-opcoes button[data-v-61667649] { font-size: 16px; font-weight: 700; padding: 10px 16px; border-radius: 999px; border: 1px solid var(--acao-tonal); background: var(--acao-tonal); color: var(--azul-900); cursor: pointer;
}
.ag-manual[data-v-61667649] { display: flex; gap: 8px; margin-top: 12px; flex-wrap: wrap;
}
.ag-input[data-v-61667649] { flex: 1; min-width: 190px; font-size: 16px; padding: 10px 12px; border: 1px solid var(--linha); border-radius: 12px;
}
.ag-ok[data-v-61667649] { font-size: 16px; font-weight: 700; padding: 10px 18px; border-radius: 999px; border: 0; background: var(--acao); color: #fff; cursor: pointer;
}
.ag-ok[data-v-61667649]:disabled { opacity: .45; cursor: default;
}
.ag-fechar[data-v-61667649] { display: block; margin: 12px auto 0; background: none; border: 0; font-size: 16px; font-weight: 700; color: #55617A; cursor: pointer;
}

/* ANCORADA NA VIEWPORT: height:100% dependia da cadeia de alturas até o body
   e quebrava — a caixa crescia e rolava com a página inteira. Com a âncora,
   quem rola é o INBOX e o FIO da conversa, cada um com o próprio scroll. */
.ch[data-v-61667649] { display: grid; grid-template-columns: 340px 1fr;
  height: calc(100dvh - var(--topbar-h, 56px)); min-height: 0;
  font-family: 'Baloo 2', 'Nunito', system-ui, sans-serif; color: var(--texto); background: var(--fundo);
}
@media (max-width: 760px) {
.ch[data-v-61667649] { grid-template-columns: 1fr;
}
.ch.thread-open .inbox[data-v-61667649] { display: none;
}
.ch:not(.thread-open) .chat[data-v-61667649] { display: none;
}
}

/* inbox */
.grp-t[data-v-61667649] { display: flex; align-items: center; gap: 7px; padding: 14px 16px 6px; font-size: 15px;
  font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: #8A97A8;
}
.grp-n[data-v-61667649] { background: #EEF1F6; color: #697082; border-radius: 99px; padding: 0 7px; font-size: 15px;
}
.inbox[data-v-61667649] { background: #fff; border-right: 1px solid var(--linha); overflow-y: auto;
}
.ih[data-v-61667649] { padding: 14px 16px 6px; position: sticky; top: 0; background: #fff; z-index: 2;
}
.ih-recolher[data-v-61667649] { border: 1px solid var(--linha); background: var(--superficie); color: var(--texto-2);
  width: 28px; height: 28px; border-radius: var(--r-sm); cursor: pointer; font-size: 16px; line-height: 1;
  display: grid; place-items: center;
}
.ih-recolher[data-v-61667649]:hover { background: var(--superficie-suave);
}
.wa-info[data-v-61667649] { margin-top: 10px; border: 1px solid var(--st-ok-linha); background: var(--st-ok-bg);
  border-radius: var(--r-md); padding: 10px 12px; display: flex; flex-direction: column; gap: 4px;
}
.wa-info b[data-v-61667649] { font-size: 16px; font-family: var(--fonte-titulo);
}
.wa-info-pil[data-v-61667649] { display: inline-flex; align-items: center; gap: 6px; font-size: 15px; font-weight: 700; color: var(--st-ok-tinta);
}
.wa-info-pil i[data-v-61667649] { width: 7px; height: 7px; border-radius: 50%; background: currentColor; animation: waPulso-61667649 2s ease-in-out infinite;
}
@keyframes waPulso-61667649 {
0%,100% { opacity: .35
}
50% { opacity: 1
}
}
.wa-info small[data-v-61667649] { font-size: 15px; color: var(--texto-2);
}
.wa-meta[data-v-61667649] { margin-top: 10px; border: 1px solid var(--acao-tonal-linha); background: var(--acao-tonal);
  border-radius: var(--r-md); padding: 12px; display: block; width: 100%; text-align: left; cursor: pointer; font-family: inherit;
}
.wa-meta b[data-v-61667649] { display: block; font-size: 16px; color: var(--acao); font-family: var(--fonte-titulo);
}
.wa-meta small[data-v-61667649] { font-size: 15px; color: var(--texto-2);
}
.wa-meta[data-v-61667649]:hover { background: var(--acao-tonal-hover, #DFEAF5);
}
.inbox-trilho[data-v-61667649] { border-right: 1px solid var(--linha); background: var(--superficie);
  display: flex; align-items: flex-start; justify-content: center; padding-top: 14px;
}
.ch.inbox-fechada[data-v-61667649] { grid-template-columns: 46px 1fr;
}
.ih-top[data-v-61667649] { display: flex; align-items: center; justify-content: space-between; gap: 10px;
}
.ih h2[data-v-61667649] { font-size: 22px; font-weight: 800; margin: 0;
}
.mynum[data-v-61667649] { font-size: 15px; color: #697082; font-weight: 600; margin: 2px 0 8px;
}
.filters[data-v-61667649] { display: flex; gap: 6px; flex-wrap: wrap;
}
.mynum-hi[data-v-61667649] { display: flex; align-items: center; gap: 8px; background: linear-gradient(135deg, #F3F7FE, #E7EDFB); border: 1.5px solid var(--acao-tonal); border-radius: 13px; padding: 9px 12px; margin: 6px 0 10px;
}
.mn-l[data-v-61667649] { flex: 1; min-width: 0;
}
.mn-cap[data-v-61667649] { display: block; font-size: 15px; font-weight: 800; color: #8A97A8; text-transform: uppercase; letter-spacing: .3px;
}
/* ⚠️ QUEBRA DE LINHA: o HTML colapsa "\n" em espaço, o WhatsApp não.
   A CadenceAI manda listas com quebra ("1) quarta 08h00\n2) quarta 09h00") —
   no celular do cliente saía em linhas, e na web virava um bolo numa linha só.
   Duas telas contando a MESMA conversa de jeitos diferentes.
   pre-wrap preserva a quebra e continua quebrando sozinho no fim da bolha. */
.m .txt[data-v-61667649] { white-space: pre-wrap; overflow-wrap: anywhere;
}
.mn-num[data-v-61667649] { font-size: 17px; color: var(--azul-900); letter-spacing: .2px; white-space: nowrap;
}
.mn-btn[data-v-61667649] { border: 1.5px solid var(--acao-tonal); background: #fff; border-radius: 10px; padding: 7px 10px; font: inherit; font-weight: 800; font-size: 15px; color: var(--azul-900); cursor: pointer; text-decoration: none; flex: none;
}
.mn-btn.share[data-v-61667649] { background: linear-gradient(135deg, var(--marca), var(--acao)); color: #fff; border: 0;
}
.csearch[data-v-61667649] { position: relative; margin-top: 8px;
}
.csearch-in[data-v-61667649] { width: 100%; border: 1.5px solid var(--linha); border-radius: 11px; padding: 9px 34px 9px 12px; font: inherit; font-size: 15px; background: #fff;
}
.csearch-in[data-v-61667649]:focus { outline: none; border-color: var(--acao);
}
.csearch-x[data-v-61667649] { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); border: 0; background: #EAEEF5; border-radius: 50%; width: 24px; height: 24px; cursor: pointer; color: #8A97A8; font-size: 15px;
}
.fchip[data-v-61667649] { border: 1px solid var(--linha); background: var(--st-neutro-bg); border-radius: var(--r-pill); padding: 5px 11px;
  font: inherit; font-size: 15px; font-weight: 700; color: #697082; cursor: pointer;
}
.fchip.on[data-v-61667649] { border-color: var(--acao-tonal-linha); background: var(--acao-tonal); color: var(--acao);
}
.fchip .cnt[data-v-61667649] { margin-left: 5px; background: var(--acao); color: #fff; border-radius: var(--r-pill); padding: 0 6px; font-size: 15px;
}
.state[data-v-61667649] { padding: 24px 16px; color: #697082; font-size: 15px;
}

/* ── Primeiros passos (pós-contratação) ── */
.fs[data-v-61667649] { margin: 12px; border: 1px solid var(--linha); border-radius: 18px; background: #fff; padding: 16px 16px 8px; box-shadow: 0 8px 26px rgba(30,41,59,.06);
}
.fs-head[data-v-61667649] { display: flex; align-items: center; justify-content: space-between;
}
.fs-title[data-v-61667649] { font-size: 19px; font-weight: 800; letter-spacing: -.02em; color: var(--texto);
}
.fs-x[data-v-61667649] { border: none; background: none; color: var(--texto-3); font-size: 22px; cursor: pointer; padding: 2px 8px;
}
.fs-prog[data-v-61667649] { height: 7px; border-radius: 99px; background: #EEF2F7; margin-top: 10px; overflow: hidden;
}
.fs-prog i[data-v-61667649] { display: block; height: 100%; background: #1D8A66; border-radius: 99px; transition: width .3s;
}
.fs-progt[data-v-61667649] { font-size: 15px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; color: #8A97A8; margin: 6px 0 4px;
}
.fs-step[data-v-61667649] { display: flex; gap: 12px; align-items: flex-start; padding: 13px 0; border-bottom: 1px solid #F0F2F5;
}
.fs-step[data-v-61667649]:last-child { border-bottom: none;
}
.fs-mk[data-v-61667649] { width: 27px; height: 27px; border-radius: 50%; flex: none; display: grid; place-items: center; font-weight: 800; font-size: 15px; background: #1D8A66; color: #fff;
}
.fs-mk.todo[data-v-61667649] { background: #fff; border: 2px solid var(--linha); color: #8A97A8;
}
.fs-main[data-v-61667649] { flex: 1; min-width: 0;
}
.fs-t[data-v-61667649] { font-weight: 750; font-size: 15.5px; color: var(--texto);
}
.fs-step.done .fs-t[data-v-61667649] { color: #8A97A8;
}
.fs-s[data-v-61667649] { font-size: 15px; color: var(--texto-2); line-height: 1.45; margin-top: 2px;
}
.fs-num[data-v-61667649] { font-size: 21px; font-weight: 800; letter-spacing: -.01em; color: #1a6b4f; margin: 4px 0 8px;
}
.fs-mini[data-v-61667649] { border: 1px solid #c3e6d6; background: #EAF7F0; color: #1a6b4f; font-weight: 700; font-size: 15px; padding: 7px 13px; border-radius: 99px; cursor: pointer; font-family: inherit;
}
.fs-btn[data-v-61667649] { display: inline-block; margin-top: 9px; border: 1px solid #C9D8EC; background: #EAF0F8; color: #3A5B94; font-weight: 800; font-size: 15px; padding: 9px 14px; border-radius: 10px; cursor: pointer; font-family: inherit; text-decoration: none;
}
.fs-btn.wa[data-v-61667649] { background: #1fa564; border-color: #1fa564; color: #fff;
}
.fs-step.done .fs-btn[data-v-61667649], .fs-step.done .fs-s[data-v-61667649] { opacity: .55;
}
/* Passo em destaque (serviços + agenda): cartão com gradiente azul chip. */
.fs-step.fs-hi[data-v-61667649] { border: 1.5px solid #C9D8EC; border-radius: 14px; background: linear-gradient(135deg, #F3F7FE, var(--acao-tonal)); padding: 13px 12px; margin: 6px -4px;
}
.fs-step.fs-hi .fs-t[data-v-61667649] { color: var(--azul-900);
}
.fs-step.fs-hi .fs-mk.todo[data-v-61667649] { border-color: var(--marca); color: var(--azul-900); background: #fff;
}
.fs-btn.hi[data-v-61667649] { background: var(--marca); border-color: var(--marca); color: #fff; box-shadow: 0 6px 16px rgba(94,134,184,.35);
}
.fs-step.fs-hi.done[data-v-61667649] { background: none; border-color: var(--linha);
}
.convs[data-v-61667649] { list-style: none; margin: 0; padding: 0;
}
.conv[data-v-61667649] { display: flex; gap: 11px; padding: 14px 16px; border-bottom: 1px solid var(--separador); cursor: pointer; align-items: center; transition: background var(--mo-rapido) var(--mo-ease);
}
.conv[data-v-61667649]:hover { background: var(--superficie-suave);
}
.conv.on[data-v-61667649] { background: var(--acao-tonal);
}
/* 32px na lista: o avatar não identifica ninguém (não é foto), fica só pelo
   ritmo de leitura. Duas iniciais em 15px cabem com folga. */
.av[data-v-61667649] { width: 32px; height: 32px; border-radius: 50%; flex: none; display: grid; place-items: center;
  color: #fff; font-weight: 800; font-size: 15px;
}
.av.sm[data-v-61667649] { width: 38px; height: 38px; font-size: 15px;
}
.mid[data-v-61667649] { flex: 1; min-width: 0;
}
.nm[data-v-61667649] { font-weight: 800; font-size: 15px; display: flex; align-items: center; gap: 6px;
}
.tag.lead[data-v-61667649] { font-size: 15px; font-weight: 800; background: #f6ecd6; color: #b4791f; padding: 1px 7px; border-radius: 100px;
}
.tag.cliente[data-v-61667649] { font-size: 15px; font-weight: 800; background: #dff3e6; color: #157a3f; padding: 1px 7px; border-radius: 100px;
}
.tag.novo[data-v-61667649] { font-size: 15px; font-weight: 800; background: #eef1f6; color: #6b7686; padding: 1px 7px; border-radius: 100px;
}
.last[data-v-61667649] { font-size: 15px; color: #697082; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.last .mine[data-v-61667649] { color: #8a93a3;
}
.meta[data-v-61667649] { text-align: right; flex: none; display: flex; flex-direction: column; align-items: flex-end; gap: 4px;
}
.tm[data-v-61667649] { font-size: 15px; color: #a3a99b;
}
.unread[data-v-61667649] { background: var(--acao); color: #fff; border-radius: 100px; min-width: 20px; height: 20px; padding: 0 6px;
  font-size: 15px; font-weight: 800; display: grid; place-items: center;
}
.flag[data-v-61667649] { font-size: 15px; font-weight: 800; padding: 2px 8px; border-radius: 100px;
}
.flag.ia[data-v-61667649] { background: #e6ecfb; color: var(--acao);
}
.flag.you[data-v-61667649] { background: #f6ecd6; color: #b4791f;
}

/* chat */
.chat[data-v-61667649] { display: flex; flex-direction: column; min-height: 0;
}
/* Coluna de contexto: só existe onde há largura sobrando. Abaixo de 1180px
   ela sai da frente — o cockpit não pode espremer a conversa. */
.ctx[data-v-61667649] { display: none;
}
@media (min-width: 1180px) {
.ch[data-v-61667649]:has(.ctx) { grid-template-columns: 320px 1fr 260px;
}
.ctx[data-v-61667649] { display: block; background: #fff; border-left: 1px solid var(--linha); padding: 16px 15px; overflow-y: auto;
}
}
.ctx-t-btn[data-v-61667649] { display: flex; align-items: center; gap: 6px; width: 100%; border: 0;
  background: none; cursor: pointer; font-family: inherit; text-align: left; padding: 0;
}
.ctx-quem-atual[data-v-61667649] { font-weight: 600; color: var(--texto-2); text-transform: none; letter-spacing: 0;
}
.ctx-seta[data-v-61667649] { margin-left: auto; color: var(--texto-3); font-size: 15px;
}
.ctx-t[data-v-61667649] { margin: 0 0 11px; font-size: 15px; font-weight: 800; letter-spacing: .05em;
  text-transform: uppercase; color: #8A97A8;
}
.ctx-l[data-v-61667649] { margin: 0;
}
.ctx-f[data-v-61667649] { padding: 9px 0; border-bottom: 1px solid #EDF0F6;
}
.ctx-f dt[data-v-61667649] { font-size: 15px; color: #8A97A8;
}
.ctx-f dd[data-v-61667649] { margin: 1px 0 0; font-size: 16px; font-weight: 700; color: #17233A;
}
.ctx-f dd.at[data-v-61667649] { color: #b4791f;
}
.ctx-quem[data-v-61667649] { margin-top: 16px; padding-top: 14px; border-top: 1px solid #EDF0F6; display: flex; flex-direction: column; gap: 6px;
}
.ctx-w[data-v-61667649] { border: 1px solid var(--acao-tonal); background: #fff; color: #46536A; border-radius: 9px; padding: 8px 10px;
  font: inherit; font-size: 15px; font-weight: 700; text-align: left; cursor: pointer;
}
.ctx-w[data-v-61667649]:hover { background: #F3F7FE;
}
.ctx-w.on[data-v-61667649] { background: var(--acao-tonal); border-color: var(--acao); color: var(--azul-900);
}
.ctx-w[data-v-61667649]:disabled { opacity: .6; cursor: default;
}
.ctx-ac[data-v-61667649] { display: flex; flex-direction: column; gap: 8px; margin-top: 14px;
}
.ctx-b[data-v-61667649] { border: 1px solid var(--acao-tonal); background: #fff; color: #17233A; border-radius: 9px;
  padding: 10px 11px; font: inherit; font-size: 15px; font-weight: 700; text-align: left; cursor: pointer;
}
.ctx-b[data-v-61667649]:hover { background: #F3F7FE;
}
.ctx-b.p[data-v-61667649] { background: var(--acao); border-color: var(--acao); color: #fff;
}
.ctx-b.p[data-v-61667649]:hover { background: var(--azul-900);
}
.chat.empty[data-v-61667649] { display: grid; place-items: center; text-align: center; color: #697082;
}
.chat.empty .big[data-v-61667649] { font-size: 44px;
}
.chat-meta-link[data-v-61667649] {
  margin-top: 14px; border: 0; border-radius: 12px; padding: 12px 18px;
  font: inherit; font-size: 16px; font-weight: 700; cursor: pointer;
  background: #1877F2; color: #fff;
}
.chat-meta-link[data-v-61667649]:hover { background: #1466CE;
}

/* ── Empty state SEM conversas: prévia de como vai ser ── */
.ez[data-v-61667649] { max-width: 420px; padding: 28px 22px;
}
.ez-preview[data-v-61667649] { background: #fff; border: 1px solid var(--linha); border-radius: 20px; padding: 18px 16px; box-shadow: 0 14px 40px rgba(30,41,59,.08); display: flex; flex-direction: column; gap: 9px; text-align: left;
}
.ez-bub[data-v-61667649] { max-width: 84%; padding: 9px 13px; border-radius: 14px; font-size: calc(14px * var(--chat-s, 1)); line-height: 1.4; color: var(--texto);
}
.ez-bub.in[data-v-61667649] { background: #F2F5F9; border-bottom-left-radius: 5px; align-self: flex-start;
}
.ez-bub.out[data-v-61667649] { background: #D7F0DE; border-bottom-right-radius: 5px; align-self: flex-end;
}
.ez-who[data-v-61667649] { display: block; font-size: 15px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: #8A97A8; margin-bottom: 2px;
}
.ez-who.ia[data-v-61667649] { color: #1a6b4f;
}
.ez-h[data-v-61667649] { font-size: 20px; font-weight: 800; letter-spacing: -.02em; color: var(--texto); margin: 20px 0 6px;
}
.ez-p[data-v-61667649] { font-size: 15px; color: var(--texto-2); line-height: 1.55; margin: 0 0 18px;
}
.ez-cta[data-v-61667649] { display: inline-block; background: #1fa564; color: #fff; font-weight: 800; font-size: 15.5px; padding: 13px 22px; border-radius: 12px; text-decoration: none; box-shadow: 0 8px 20px rgba(31,165,100,.3);
}
.ez-cta[data-v-61667649]:hover { filter: brightness(.96);
}
.ez-cta2[data-v-61667649] { display: block; margin: 10px auto 0; border: 1px solid #C9D8EC; background: #EAF0F8; color: #3A5B94; font-weight: 800; font-size: 15px; padding: 12px 20px; border-radius: 12px; cursor: pointer; font-family: inherit;
}
.ez-cta3[data-v-61667649] { display: block; margin: 8px auto 0; border: none; background: none; color: #697082; font-weight: 750; font-size: 15px; padding: 8px 14px; cursor: pointer; font-family: inherit; text-decoration: underline;
}
/* Barra "quem responde este cliente" (override por contato) */
/* Cabeçalho da conversa: era verde #1fa855 (o verde do WhatsApp), que não é a
   nossa identidade e, numa barra cheia, cansa a vista. Virou um azul CLARO da
   nossa paleta — a cor forte fica reservada para o que precisa de atenção. */
.chead[data-v-61667649] { background: #F3F7FE; color: #17233A; border-bottom: 1px solid var(--acao-tonal);
  padding: 10px 14px; display: flex; align-items: center; gap: 11px;
}
.chead .back[data-v-61667649] { display: none; background: none; border: none; color: #46536A; width: 38px; height: 38px;
  border-radius: 9px; font-size: 19px; cursor: pointer;
}
.chead .back[data-v-61667649]:hover { background: #E7EDF8; color: var(--azul-900);
}
@media (max-width: 760px) {
.chead .back[data-v-61667649] { display: grid; place-items: center;
}
}
.chead .who-btn[data-v-61667649] { flex: 1; display: flex; align-items: center; gap: 11px; background: none; border: none; padding: 0; margin: 0; cursor: pointer; text-align: left; min-width: 0; font: inherit; color: inherit;
}
.chead .who-btn[data-v-61667649]:active { opacity: .8;
}
.chead .who[data-v-61667649] { display: flex; flex-direction: column; min-width: 0;
}
.chead .nm[data-v-61667649] { font-weight: 800; font-size: 15px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.chead .no[data-v-61667649] { font-size: 15px; color: var(--marca);
}
.chead .seg[data-v-61667649] { font-size: 15px; font-weight: 800; background: rgba(255,255,255,.22); padding: 3px 10px; border-radius: 100px;
}
.chead-act[data-v-61667649] { flex: none; display: flex; align-items: center; gap: 8px;
}
/* UM desenho para todas as ações do cabeçalho — o mesmo traço dos ícones do
   menu lateral. Quadrado fixo com place-items: é o que impede o ícone de
   "cair" na linha de base, que era a queixa dos botões tortos. */
/* SEM moldura: o menu lateral não põe caixa em volta dos ícones, e era a caixa
   que estava embaralhando a barra. O alvo de toque continua 34px — o realce só
   aparece no hover, quando você já mostrou intenção. */
.ch-btn[data-v-61667649] { flex: none; width: 38px; height: 38px; border-radius: 9px; cursor: pointer;
  border: 0; background: none; color: #46536A;
  display: grid; place-items: center; font: inherit; line-height: 1;
}
.ch-btn[data-v-61667649]:hover { background: #E7EDF8; color: var(--azul-900);
}
.ch-btn[data-v-61667649]:focus-visible { outline: 2px solid var(--acao); outline-offset: 2px;
}
.ch-btn[data-v-61667649]:disabled { opacity: .5; cursor: default;
}
.ch-btn.letra[data-v-61667649] { font-size: 18px; font-weight: 800;
}
/* Apagar é destrutivo: cor própria, sem gritar antes da hora. */
.ch-btn.perigo[data-v-61667649] { color: #A05650;
}
.ch-btn.perigo[data-v-61667649]:hover { background: #F9EFED; color: var(--st-atrasado-tinta);
}
.cli-badge[data-v-61667649] { font-size: 15px; font-weight: 800; background: rgba(255,255,255,.24); color: #fff; padding: 4px 10px; border-radius: 100px; white-space: nowrap;
}
/* Fundo LISO: o papel de parede pontilhado era o traço que mais imitava o
   WhatsApp — e imitar o mensageiro é ser comparado com ele. Superfície calma,
   com a mensagem sendo a única coisa que pede atenção. */
.thread[data-v-61667649] { flex: 1; overflow-y: auto; padding: 18px 16px; display: flex; flex-direction: column; gap: 9px;
  background: var(--nv-100);
}
.m[data-v-61667649] { max-width: 76%; padding: 10px 14px; border-radius: var(--r-lg); font-size: calc(15px * var(--chat-s, 1)); line-height: 1.5;
  box-shadow: var(--sh-1); position: relative;
}
/* ✕ de apagar: fica fora do caminho e só aparece ao passar o mouse na bolha.
   Em tela de toque não há hover — por isso :focus-within e o alvo de 26px, que
   é o mínimo que um dedo acerta. */
.m .m-del[data-v-61667649] { position: absolute; top: -8px; right: -8px; width: 26px; height: 26px; border-radius: 50%;
  border: 1px solid rgba(0,0,0,.08); background: #fff; color: #8a94a6; font-size: 15px; line-height: 1;
  cursor: pointer; opacity: 0; transition: opacity .12s ease; box-shadow: 0 1px 4px rgba(0,0,0,.14);
}
.m:hover .m-del[data-v-61667649], .m:focus-within .m-del[data-v-61667649] { opacity: 1;
}
.m .m-del[data-v-61667649]:hover { color: #c0392b; border-color: rgba(192,57,43,.35);
}
@media (hover: none) {
.m .m-del[data-v-61667649] { opacity: .55;
}
}
/* NÉVOA 2.0 — os três autores do kit de Conversas: cliente à esquerda em
   branco com borda; IA à direita em TONAL AZUL (etiqueta CADENCEAI); você à
   direita em TONAL VERDE (etiqueta VOCÊ). Preenchimento cheio saiu das
   bolhas: tonal distingue sem gritar, e o texto fica sempre em tinta. */
.m.cli[data-v-61667649] { align-self: flex-start; background: var(--superficie); border: 1px solid var(--linha);
  border-radius: var(--r-lg) var(--r-lg) var(--r-lg) 4px;
}
.m.pro[data-v-61667649] { align-self: flex-end; background: var(--st-ok-bg); color: var(--st-ok-tinta);
  border-radius: var(--r-lg) var(--r-lg) 4px var(--r-lg);
}
.m.ia[data-v-61667649] { align-self: flex-end; background: var(--acao-tonal); color: var(--texto-em-tonal);
  border-radius: var(--r-lg) var(--r-lg) 4px var(--r-lg);
}
.m.sys[data-v-61667649] { align-self: center; background: var(--st-atencao-bg); color: var(--st-atencao-tinta); font-size: 15px; font-weight: 700;
  padding: 5px 12px; border-radius: var(--r-pill); box-shadow: none;
}
.m .tg[data-v-61667649] { display: block; font-family: var(--fonte-titulo); font-size: calc(9.5px * var(--chat-s, 1)); font-weight: 700; letter-spacing: .09em; opacity: .9; margin-bottom: 3px;
}
.m .tm[data-v-61667649] { font-size: calc(9.5px * var(--chat-s, 1)); opacity: .55; margin-left: 8px;
}
.m .media[data-v-61667649] { display: inline-block; margin-bottom: 3px; color: inherit; text-decoration: underline; font-size: calc(13px * var(--chat-s, 1));
}
.typing[data-v-61667649] { align-self: flex-end; background: var(--acao-tonal); color: var(--texto-em-tonal); border-radius: var(--r-lg); padding: 9px 13px;
}
.typing span[data-v-61667649] { animation: blink-61667649 1s infinite;
}
.typing span[data-v-61667649]:nth-child(2){animation-delay:.2s}
.typing span[data-v-61667649]:nth-child(3){animation-delay:.4s}
@keyframes blink-61667649 {
0%,100%{opacity:.3}
50%{opacity:1}
}
.cockpit[data-v-61667649] { background: #fff; border-top: 1px solid var(--linha); padding: 8px 12px; display: flex; align-items: center; gap: 9px;
}
.cockpit .st[data-v-61667649] { display: flex; align-items: center; gap: 7px; font-size: 15px; font-weight: 800;
}
.cockpit .st.ia[data-v-61667649] { color: var(--acao);
}
.cockpit .st.you[data-v-61667649] { color: #b4791f;
}
.cockpit .st .d[data-v-61667649] { width: 8px; height: 8px; border-radius: 50%; background: currentColor;
}
.tgl[data-v-61667649] { margin-left: auto; font: inherit; font-size: 15px; font-weight: 800; color: #fff; background: var(--texto);
  border: none; padding: 7px 13px; border-radius: 100px; cursor: pointer;
}
/* DEVOLVER não é ação primária: sai do azul (que convida ao clique) para um
   âmbar de atenção. Junto com a confirmação, evita a devolução acidental. */
.cockpit .tgl.give[data-v-61667649] { background: #8A6414;
}
.composer[data-v-61667649] { background: #fff; border-top: 1px solid var(--linha); padding: 10px 12px; display: flex; gap: 9px; align-items: flex-end;
}
.attach[data-v-61667649] { border: 1.5px solid var(--linha); background: var(--superficie-suave); border-radius: 50%; width: 38px; height: 38px; cursor: pointer; font-size: 17px; flex: none;
}
.attach[data-v-61667649]:disabled { opacity: .55;
}
.m-img[data-v-61667649] { display: block; max-width: 240px; max-height: 240px; border-radius: 12px; cursor: zoom-in; margin-bottom: 4px;
}
.composer textarea[data-v-61667649] { flex: 1; resize: none; border: 1.5px solid var(--linha); border-radius: 18px; padding: 9px 13px;
  font: inherit; font-size: 15px; max-height: 96px; background: var(--superficie-suave);
}
.composer textarea[data-v-61667649]:focus { outline: none; border-color: var(--acao);
}
.send[data-v-61667649] { flex: none; width: 40px; height: 40px; border-radius: 50%; border: none; background: #1fa855; color: #fff;
  font-size: 17px; cursor: pointer;
}
.send[data-v-61667649]:disabled { opacity: .4; cursor: default;
}
.hint[data-v-61667649] { font-size: 15px; color: #697082; text-align: center; padding: 0 14px 8px; margin: 0;
}

/* ── SEPARADOR DE DATA ────────────────────────────────────────────────────── */
.dia-sep[data-v-61667649] { text-align: center; margin: 14px 0 10px;
}
.dia-sep span[data-v-61667649] { background: rgba(0,0,0,.07); color: #5b6572; font-size: calc(10px * var(--chat-s, 1));
  font-weight: 700; letter-spacing: .5px; padding: 3px 12px; border-radius: 99px;
}

/* ── CITAÇÃO ──────────────────────────────────────────────────────────────── */
.m .cit[data-v-61667649] { border-left: 3px solid var(--acao); background: rgba(46,91,215,.09); border-radius: 5px;
  padding: 5px 8px; margin-bottom: 5px; cursor: pointer;
}
.m .cit b[data-v-61667649] { display: block; font-size: calc(9.5px * var(--chat-s, 1)); color: var(--azul-900); margin-bottom: 1px;
}
.m .cit span[data-v-61667649] { display: block; font-size: calc(11px * var(--chat-s, 1)); color: #5b6572; line-height: 1.3;
}
/* Citou algo que não temos: cinza e em itálico, sem convidar ao clique. */
.m .cit.perdida[data-v-61667649] { border-left-color: #a3a99b; background: rgba(128,128,128,.1); cursor: default;
}
.m .cit.perdida span[data-v-61667649] { font-style: italic; color: #8A93A3;
}

/* Barra de citação acima do composer */
.citando[data-v-61667649] { display: flex; align-items: center; gap: 10px; padding: 8px 14px;
  background: rgba(46,91,215,.07); border-top: 1px solid rgba(46,91,215,.18);
}
.citando-txt[data-v-61667649] { flex: 1; min-width: 0; border-left: 3px solid var(--acao); padding-left: 9px;
}
.citando-txt b[data-v-61667649] { display: block; font-size: 15px; color: var(--azul-900);
}
.citando-txt span[data-v-61667649] { display: block; font-size: 15px; color: #5b6572;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.citando button[data-v-61667649] { flex: none; background: none; border: none; font-size: 16px; color: #697082; cursor: pointer;
}

/* ── ✓✓ ───────────────────────────────────────────────────────────────────── */
.m .tick[data-v-61667649] { margin-left: 3px; letter-spacing: -2px; font-weight: 700;
}
.m .tick.read[data-v-61667649] { color: #3B9BD8;
}
.m .tick.failed[data-v-61667649] { color: #c0392b; letter-spacing: 0;
}

/* ── REAÇÃO ───────────────────────────────────────────────────────────────── */
/* Pendurada na borda de baixo: não empurra o texto nem muda a altura da bolha. */
.m .reacao[data-v-61667649] { position: absolute; bottom: -11px; background: #fff; border: 1px solid rgba(0,0,0,.1);
  border-radius: 99px; padding: 1px 7px; font-size: 15px; box-shadow: 0 1px 3px rgba(0,0,0,.12);
}
.m.me .reacao[data-v-61667649], .m.pro .reacao[data-v-61667649] { right: 9px;
}
.m:not(.me):not(.pro) .reacao[data-v-61667649] { left: 9px;
}
.m .paleta[data-v-61667649] { display: flex; gap: 4px; margin-top: 7px; background: #fff; border: 1px solid rgba(0,0,0,.1);
  border-radius: 99px; padding: 4px 7px; box-shadow: 0 2px 8px rgba(0,0,0,.12);
}
.m .paleta button[data-v-61667649] { background: none; border: none; font-size: 19px; cursor: pointer; line-height: 1;
  padding: 2px; border-radius: 50%;
}
.m .paleta button[data-v-61667649]:hover { background: rgba(0,0,0,.06);
}
.m .paleta .tira[data-v-61667649] { font-size: 15px; color: #697082; padding: 0 6px;
}

/* ── AÇÕES DA BOLHA ───────────────────────────────────────────────────────── */
/* Aparecem ao passar o mouse. No toque ficam sempre visíveis: sem hover, um
   botão escondido é um botão que não existe. */
.m .m-acoes[data-v-61667649] { position: absolute; top: -10px; right: -6px; display: flex; gap: 3px; opacity: 0;
  transition: opacity .12s;
}
.m:hover .m-acoes[data-v-61667649] { opacity: 1;
}
@media (hover: none) {
.m .m-acoes[data-v-61667649] { opacity: .55;
}
}
.m .m-acoes button[data-v-61667649] { width: 28px; height: 28px; border-radius: 50%; border: 1px solid rgba(0,0,0,.12);
  background: #fff; color: #697082; font-size: 15px; line-height: 1; cursor: pointer; padding: 0;
}
.m .m-acoes button[data-v-61667649]:hover { color: #17233A;
}
.m .m-acoes button[data-v-61667649]:last-child:hover { color: #c0392b; border-color: rgba(192,57,43,.35);
}

/* Aviso "ainda não sei seus horários" — informativo, nunca alarmante. */
.ag-defh[data-v-eadc27ad] { background: #FFF7E6; border: 1px solid #FCD9A0; border-radius: 14px; padding: 14px 16px; margin-bottom: 14px;
}
.ag-defh-t[data-v-eadc27ad] { font-weight: 800; font-size: 16px; color: #8A5A00;
}
.ag-defh-p[data-v-eadc27ad] { margin: 6px 0 10px; font-size: 15px; line-height: 1.45; color: #6B4B12;
}
.ag-defh-b[data-v-eadc27ad] { background: #8A5A00; color: #fff; border: 0; border-radius: 999px; padding: 10px 16px; font-size: 15px; font-weight: 700; cursor: pointer;
}

/* z-index cobre o rodapé do Dashboard, que senão vaza por cima do dia vazio. */
.ag[data-v-eadc27ad] { position: absolute; inset: 0; z-index: 8; display: flex; flex-direction: column; background: #F4F7FB; overflow: hidden;
}
/* BUG DO TRILHO (fix 27/07): em desktop o menu lateral recolhido ocupa 74px
   fixos — a tela cheia começa depois dele (o expandido flutua por cima, ok). */
@media (min-width: 861px) {
.ag[data-v-eadc27ad] { left: 74px; top: var(--topbar-h, 48px);
}
}

/* topo fino (padrão ModeracaoView) */
.ag-top[data-v-eadc27ad] { display: flex; align-items: center; gap: 14px; padding: 12px 18px; background: #fff; border-bottom: 1px solid var(--linha); flex: none;
}
.ag-back[data-v-eadc27ad] { border: 1px solid var(--linha); background: #fff; color: var(--texto-2); font-weight: 750; font-size: 15px; padding: 8px 15px; border-radius: 10px; cursor: pointer; font-family: inherit;
}
.ag-title[data-v-eadc27ad] { font-size: 19px; font-weight: 800; letter-spacing: -.02em; color: var(--texto);
}
.ag-saved[data-v-eadc27ad] { margin-left: auto; font-size: 15px; font-weight: 750; color: #177C55; opacity: 0; transition: opacity .25s;
}
.ag-saved.show[data-v-eadc27ad] { opacity: 1;
}

/* ── cabeçalho fixo: modos + nav da semana + fita ── */
.ag-head[data-v-eadc27ad] { flex: none; background: #fff; border-bottom: 1px solid var(--linha);
}
.ag-head-in[data-v-eadc27ad] { max-width: 640px; width: 100%; margin: 0 auto; padding: 10px 14px 0;
}
.ag-head-in.wide[data-v-eadc27ad] { max-width: 1080px;
}
.ag-seg[data-v-eadc27ad] { display: flex; background: #ECF1F7; border-radius: 12px; padding: 4px; gap: 4px;
}
.ag-seg button[data-v-eadc27ad] { flex: 1; border: 0; background: none; font-family: inherit; font-weight: 800; font-size: 15px; color: var(--texto-2); padding: 9px 0; border-radius: 9px; cursor: pointer;
}
.ag-seg button.on[data-v-eadc27ad] { background: #fff; color: var(--acao); box-shadow: 0 2px 8px rgba(24,38,66,.10);
}
.ag-wnav[data-v-eadc27ad] { display: flex; align-items: center; gap: 10px; padding: 10px 0 6px;
}
.ag-nav[data-v-eadc27ad] { width: 40px; height: 40px; flex: none; border: 1px solid var(--linha); background: #fff; border-radius: 12px; font-size: 20px; color: var(--acao); cursor: pointer; font-family: inherit;
}
.ag-wlab[data-v-eadc27ad] { flex: 1; text-align: center; font-weight: 800; font-size: 15.5px; color: var(--texto);
}
.ag-hoje[data-v-eadc27ad] { border: none; background: none; color: var(--acao); font-weight: 750; font-size: 15px; cursor: pointer; font-family: inherit; text-decoration: underline; padding: 2px 6px;
}

/* fita da semana (protótipo C) */
.ag-strip[data-v-eadc27ad] { display: flex; gap: 6px; padding: 2px 0 12px;
}
.ag-dpill[data-v-eadc27ad] { flex: 1; min-width: 0; border: 1px solid var(--linha); border-radius: 13px; padding: 7px 0 6px; text-align: center; cursor: pointer; background: #fff; font-family: inherit;
}
.ag-dpill small[data-v-eadc27ad] { display: block; font-size: 15px; font-weight: 800; color: #8A97A8; text-transform: uppercase;
}
.ag-dpill b[data-v-eadc27ad] { font-size: 16px; color: var(--texto);
}
.ag-dpill .dots[data-v-eadc27ad] { height: 8px; display: flex; gap: 3px; justify-content: center; margin-top: 3px;
}
.ag-dpill .dots i[data-v-eadc27ad] { width: 6px; height: 6px; border-radius: 50%; background: var(--marca);
}
.ag-dpill .dots i.p[data-v-eadc27ad] { background: #F59E0B;
}
.ag-dpill.today[data-v-eadc27ad] { box-shadow: inset 0 0 0 1.5px #B9C8EE;
}          /* hoje: realce sutil */
.ag-dpill.today b[data-v-eadc27ad] { color: var(--acao);
}
.ag-dpill.sel[data-v-eadc27ad] { background: var(--acao-tonal); border-color: #B9C8EE;
}        /* selecionado */
.ag-dpill.sel b[data-v-eadc27ad] { color: var(--azul-900);
}
.ag-scroll[data-v-eadc27ad] { flex: 1; overflow-y: auto; padding: 16px 18px 90px; max-width: 640px; width: 100%; margin: 0 auto;
}
.ag-scroll.wide[data-v-eadc27ad] { max-width: 1080px;
}

/* pedidos pendentes */
.ag-pend[data-v-eadc27ad] { margin-bottom: 20px;
}
.ag-pend-h[data-v-eadc27ad] { font-size: 16px; font-weight: 800; color: #8A6A1F; margin: 0 0 10px;
}
.ag-pend-n[data-v-eadc27ad] { background: #B4791F; color: #fff; border-radius: 99px; font-size: 15px; padding: 1px 9px; margin-left: 4px;
}
/* O X fica no canto, discreto: é saída, não ação principal. */
.ag-px[data-v-eadc27ad] { position: absolute; top: 6px; right: 8px; width: 28px; height: 28px; border-radius: 50%;
  border: 1px solid rgba(0,0,0,.1); background: #fff; color: #8A93A3; font-size: 15px;
  line-height: 1; cursor: pointer; padding: 0;
}
.ag-px[data-v-eadc27ad]:hover { color: var(--st-atrasado-tinta); border-color: rgba(140,59,51,.35);
}
.ag-pcard[data-v-eadc27ad] { position: relative; background: #FDF6E7; border: 1px solid #EBD9AE; border-radius: 16px; padding: 14px 34px 14px 16px; margin-bottom: 10px;
}
.ag-pt[data-v-eadc27ad] { font-size: 16.5px; color: var(--texto);
}
.ag-ps[data-v-eadc27ad] { font-size: 15px; color: var(--texto-2); margin-top: 3px;
}
.ag-pph[data-v-eadc27ad] { color: #8A97A8;
}
.ag-conf[data-v-eadc27ad] { display: inline-block; margin-top: 7px; background: #FBEAEA; color: #A0433C; font-size: 15px; font-weight: 750; padding: 4px 11px; border-radius: 99px;
}
.ag-pacts[data-v-eadc27ad] { display: flex; gap: 9px; margin-top: 11px;
}
.ag-ok[data-v-eadc27ad] { border: none; background: #1fa564; color: #fff; font-weight: 800; font-size: 15.5px; padding: 12px 20px; border-radius: 12px; cursor: pointer; font-family: inherit;
}
.ag-ok.wide[data-v-eadc27ad] { width: 100%; margin-top: 12px;
}
.ag-ok[data-v-eadc27ad]:disabled { opacity: .5; cursor: default;
}
.ag-alt[data-v-eadc27ad] { border: 1px solid #C9D8EC; background: #fff; color: #3A5B94; font-weight: 750; font-size: 15px; padding: 12px 18px; border-radius: 12px; cursor: pointer; font-family: inherit;
}
.ag-alt.on[data-v-eadc27ad] { background: var(--marca); border-color: var(--marca); color: #fff;
}
.ag-alt.red[data-v-eadc27ad] { background: #C25450; border-color: #C25450; color: #fff;
}
.ag-alt[data-v-eadc27ad]:disabled { opacity: .5; cursor: default;
}
.ag-decl[data-v-eadc27ad] { margin-top: 11px;
}
.ag-as-diz[data-v-eadc27ad] { font-size: 15px; color: var(--texto-2); line-height: 1.45; margin: 8px 0 2px;
}
.ag-decl-b[data-v-eadc27ad] { display: flex; gap: 10px; align-items: center; margin-top: 9px;
}
.ag-x2[data-v-eadc27ad] { border: none; background: none; color: #8A97A8; font-weight: 700; font-size: 15px; cursor: pointer; font-family: inherit;
}

/* dias abertos */
.ag-state[data-v-eadc27ad] { color: #8A97A8; font-size: 16px; text-align: center; padding: 26px 10px; line-height: 1.5;
}
.ag-days[data-v-eadc27ad] { display: flex; flex-direction: column;
}
.ag-dayblock[data-v-eadc27ad] { display: flex; flex-direction: column; gap: 8px;
}
.ag-dayh[data-v-eadc27ad] { font-size: 15px; font-weight: 800; color: #8A97A8; letter-spacing: .4px; margin: 12px 2px 0;
}
.ag-dayh.today[data-v-eadc27ad] { color: var(--acao);
}
.ag-dayblock:first-child .ag-dayh[data-v-eadc27ad] { margin-top: 0;
}
.ag-empty[data-v-eadc27ad] { border: 1px solid var(--linha); background: #fff; color: #8A97A8; border-radius: 13px; padding: 11px 13px; font-size: 15px; font-weight: 700; line-height: 1.4;
}
.ag-slot[data-v-eadc27ad] { display: flex; align-items: center; gap: 14px; background: #fff; border: 1px solid var(--linha); border-radius: 14px; padding: 13px 15px; width: 100%; text-align: left; font-family: inherit;
}
.ag-hr[data-v-eadc27ad] { flex: none; width: 52px; text-align: center;
}
.ag-hr b[data-v-eadc27ad] { display: block; font-size: 17px; font-weight: 800; color: var(--azul-900); letter-spacing: -.01em;
}
.ag-hr small[data-v-eadc27ad] { font-size: 15px; color: #8A97A8; font-weight: 600;
}
.ag-info[data-v-eadc27ad] { flex: 1; min-width: 0;
}
.ag-nm[data-v-eadc27ad] { font-size: 16px; font-weight: 750; color: var(--texto); display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
}
.ag-svc[data-v-eadc27ad] { font-size: 15px; color: var(--texto-2); margin-top: 1px;
}
.ag-slot.book[data-v-eadc27ad] { border-left: 4px solid var(--marca); cursor: pointer; transition: transform .08s;
}
.ag-slot.book[data-v-eadc27ad]:active { transform: scale(.98);
}
.ag-slot.book.pend[data-v-eadc27ad] { border-left-color: #B4791F; background: #FFFDF6;
}
.ag-slot.book.done[data-v-eadc27ad] { opacity: .55; border-left-color: #1fa564;
}     /* concluído: esmaece + ✓ */
.ag-slot.book.noshow[data-v-eadc27ad] { opacity: .55; border-left-color: #C9D2DE;
}   /* não veio: esmaece + 😕 */
.ag-st[data-v-eadc27ad] { font-size: 15px;
}
.ag-st.ok[data-v-eadc27ad] { color: #1fa564; font-weight: 800;
}
.ag-pill[data-v-eadc27ad] { background: #F6ECD6; color: #8A6A1F; font-size: 15px; font-weight: 800; padding: 2px 10px; border-radius: 99px;
}
.ag-pill.passou[data-v-eadc27ad] { background: #EDF1F7; color: #4A5C74; font-weight: 700;
}
.ag-as-passou[data-v-eadc27ad] { font-size: 15px; line-height: 1.45; color: #4A5C74; background: #EDF1F7; border: 1px solid #D6DFEB; border-radius: 12px; padding: 10px 13px; margin: 0 0 10px;
}
.ag-slot.block[data-v-eadc27ad] { background: #EEF1F5; border-style: solid;
}
.ag-slot.block .ag-hr b[data-v-eadc27ad] { color: var(--texto-2);
}
.ag-slot.block .ag-nm[data-v-eadc27ad] { color: var(--texto-2); font-weight: 700;
}
.ag-x[data-v-eadc27ad] { border: none; background: none; color: #8A97A8; font-weight: 800; font-size: 20px; cursor: pointer; padding: 4px 8px; flex: none;
}
.ag-free-w[data-v-eadc27ad] { display: flex; flex-direction: column;
}
.ag-slot.free[data-v-eadc27ad] { border: 1.5px dashed #9CCDB4; background: #F6FBF8; cursor: pointer;
}
.ag-slot.free .ag-hr b[data-v-eadc27ad] { color: #177C55;
}
.ag-fr[data-v-eadc27ad] { font-size: 15px; font-weight: 750; color: #177C55;
}
.ag-freeform[data-v-eadc27ad] { border: 1px solid var(--linha); border-top: none; background: #fff; border-radius: 0 0 14px 14px; margin: -6px 8px 0; padding: 14px 14px 12px;
}
.ag-ff-t[data-v-eadc27ad] { font-size: 15px; font-weight: 800; color: var(--texto); margin-bottom: 8px;
}

/* desktop: 3 dias/Semana abrem em COLUNAS lado a lado (mesmo markup) */
@media (min-width: 861px) {
.ag-days.m3[data-v-eadc27ad], .ag-days.mw[data-v-eadc27ad] { display: grid; align-items: start;
}
.ag-days.m3[data-v-eadc27ad] { grid-template-columns: repeat(3, 1fr); gap: 14px;
}
.ag-days.mw[data-v-eadc27ad] { grid-template-columns: repeat(7, 1fr); gap: 8px;
}
.ag-days.m3 .ag-dayh[data-v-eadc27ad], .ag-days.mw .ag-dayh[data-v-eadc27ad] { margin-top: 0;
}
.ag-days.m3 .ag-slot[data-v-eadc27ad] { padding: 11px 12px; gap: 10px;
}
  /* Semana: colunas compactas — nome trunca, serviço some */
.ag-days.mw .ag-dayh[data-v-eadc27ad] { text-align: center; font-size: 15px;
}
.ag-days.mw .ag-slot[data-v-eadc27ad] { flex-direction: column; align-items: flex-start; gap: 2px; padding: 8px 9px; border-left-width: 4px;
}
.ag-days.mw .ag-hr[data-v-eadc27ad] { width: auto; text-align: left; display: flex; align-items: baseline; gap: 4px;
}
.ag-days.mw .ag-hr b[data-v-eadc27ad] { font-size: 15px;
}
.ag-days.mw .ag-hr small[data-v-eadc27ad] { display: none;
}
.ag-days.mw .ag-nm[data-v-eadc27ad] { display: block; width: 100%; font-size: 15px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.ag-days.mw .ag-svc[data-v-eadc27ad], .ag-days.mw .ag-pill[data-v-eadc27ad] { display: none;
}
.ag-days.mw .ag-empty[data-v-eadc27ad] { font-size: 15px; padding: 8px 9px; text-align: center;
}
.ag-days.mw .ag-x[data-v-eadc27ad] { align-self: flex-end; padding: 0 2px; font-size: 16px;
}
}

/* campos */
.ag-field[data-v-eadc27ad] { width: 100%; border: 1.5px solid var(--linha); border-radius: 12px; padding: 12px 14px; font-size: 16px; color: var(--texto); background: #fff; font-family: inherit;
}
.ag-field[data-v-eadc27ad]:focus { outline: none; border-color: var(--marca); box-shadow: 0 0 0 3px rgba(94,134,184,.12);
}
.ag-field.tm[data-v-eadc27ad] { width: auto; padding: 9px 10px;
}
textarea.ag-field[data-v-eadc27ad] { resize: vertical; min-height: 62px; margin-top: 2px;
}

/* rodapé fixo */
.ag-foot[data-v-eadc27ad] { flex: none; display: flex; gap: 10px; padding: 12px 18px; background: #fff; border-top: 1px solid var(--linha); justify-content: center;
}
.ag-fbtn[data-v-eadc27ad] { flex: 1; max-width: 300px; border: 1px solid #C9D8EC; background: #EAF0F8; color: #3A5B94; font-weight: 800; font-size: 15.5px; padding: 14px 12px; border-radius: 13px; cursor: pointer; font-family: inherit; display: inline-flex; align-items: center; justify-content: center; gap: 7px;
}
.ag-fbtn.on[data-v-eadc27ad] { background: var(--marca); border-color: var(--marca); color: #fff;
}

/* sheet de bloqueio manual */
.ag-sheet[data-v-eadc27ad] { position: absolute; left: 0; right: 0; bottom: 71px; margin: 0 auto; max-width: 560px; background: #fff; border: 1px solid var(--linha); border-radius: 18px 18px 0 0; box-shadow: 0 -12px 36px rgba(24,38,66,.14); padding: 16px 18px; z-index: 5;
}
.ag-sh-t[data-v-eadc27ad] { font-size: 16px; font-weight: 800; color: var(--texto); margin-bottom: 10px;
}
.ag-sh-row[data-v-eadc27ad] { display: flex; gap: 14px; margin-bottom: 10px; flex-wrap: wrap;
}
.ag-sh-l[data-v-eadc27ad] { display: flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 700; color: var(--texto-2);
}

/* ── cartão de ações do evento (bottom sheet) ── */
.ag-scrim[data-v-eadc27ad] { position: absolute; inset: 0; background: rgba(15,23,42,.4); z-index: 58;
}
.ag-as[data-v-eadc27ad] { position: absolute; left: 0; right: 0; bottom: 0; margin: 0 auto; max-width: 560px; max-height: 82%; overflow-y: auto; background: #fff; border-radius: 22px 22px 0 0; box-shadow: 0 -14px 44px rgba(24,38,66,.25); padding: 14px 18px 22px; z-index: 59;
}
.ag-as-grab[data-v-eadc27ad] { width: 44px; height: 5px; border-radius: 99px; background: var(--linha); margin: 0 auto 12px;
}
.ag-as-who[data-v-eadc27ad] { font-size: 18px; font-weight: 800; color: var(--texto);
}
.ag-as-meta[data-v-eadc27ad] { color: var(--texto-2); font-size: 15px; margin: 2px 0 14px;
}
.ag-as-row[data-v-eadc27ad] { display: flex; gap: 10px; margin-bottom: 10px; flex-wrap: wrap;
}
.ag-as-note[data-v-eadc27ad] { background: #FBF1F1; border: 1px solid #F1D8D8; color: #8C3A34; border-radius: 12px; padding: 10px 13px; font-size: 15px; margin: 0 0 12px; line-height: 1.4;
}
.ag-act[data-v-eadc27ad] { display: flex; align-items: center; gap: 12px; width: 100%; border: 1px solid var(--linha); background: #fff; border-radius: 14px; padding: 13px 14px; font-family: inherit; font-weight: 800; font-size: 15.5px; color: var(--texto); cursor: pointer; margin-bottom: 8px; text-align: left;
}
.ag-act[data-v-eadc27ad]:disabled { opacity: .5; cursor: default;
}
.ag-act .em[data-v-eadc27ad] { font-size: 19px; flex: none;
}
.ag-act.primary[data-v-eadc27ad] { background: linear-gradient(135deg, var(--marca), var(--acao)); color: #fff; border: 0;
}
.ag-act.danger[data-v-eadc27ad] { color: #B4232A;
}
.ag-act small[data-v-eadc27ad] { display: block; font-weight: 600; color: #8A97A8; font-size: 15px;
}
.ag-act.primary small[data-v-eadc27ad] { color: #DCE7F5;
}
.ag-ntog[data-v-eadc27ad] { display: flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 700; color: var(--texto); cursor: pointer; margin: 6px 0 10px;
}
.ag-ntog input[data-v-eadc27ad] { display: none;
}
.ag-up-enter-active[data-v-eadc27ad], .ag-up-leave-active[data-v-eadc27ad] { transition: transform .28s cubic-bezier(.3, 1, .4, 1), opacity .2s;
}
.ag-up-enter-from[data-v-eadc27ad], .ag-up-leave-to[data-v-eadc27ad] { transform: translateY(100%); opacity: .6;
}

/* modal expediente */
.ag-overlay[data-v-eadc27ad] { position: fixed; inset: 0; z-index: 220; background: rgba(15,23,42,.45); display: grid; place-items: center; padding: 16px;
}
.ag-modal[data-v-eadc27ad] { width: min(94vw, 480px); max-height: 88vh; overflow-y: auto; background: #fff; border-radius: 20px; padding: 20px 20px 22px; box-shadow: 0 24px 70px rgba(24,38,66,.3);
}
.ag-m-head[data-v-eadc27ad] { display: flex; align-items: center; justify-content: space-between;
}
.ag-m-head b[data-v-eadc27ad] { font-size: 20px; font-weight: 800; letter-spacing: -.02em; color: var(--texto);
}
.ag-m-x[data-v-eadc27ad] { border: none; background: none; color: #8A97A8; font-size: 26px; cursor: pointer; padding: 0 6px;
}
.ag-m-sub[data-v-eadc27ad] { font-size: 15px; color: var(--texto-2); margin: 4px 0 16px;
}
.ag-m-tpl[data-v-eadc27ad] { background: #F3F7FE; border: 1.5px solid var(--acao-tonal); color: #33415C; border-radius: 12px; padding: 11px 14px; font-size: 15px; margin: -6px 0 16px; line-height: 1.4;
}
.ag-m-tpl b[data-v-eadc27ad] { color: var(--azul-900);
}
.ag-m-sep[data-v-eadc27ad] { height: 1px; background: var(--linha); margin: 18px 0 14px;
}
.ag-wday[data-v-eadc27ad] { display: flex; align-items: center; gap: 12px; padding: 9px 0; border-bottom: 1px solid #F0F2F5; flex-wrap: wrap;
}
.ag-wday.off[data-v-eadc27ad] { opacity: .72;
}
.ag-wtog[data-v-eadc27ad] { display: flex; align-items: center; gap: 10px; cursor: pointer; font-size: 16px; font-weight: 750; color: var(--texto); width: 128px; flex: none;
}
.ag-wtog input[data-v-eadc27ad] { display: none;
}
.ag-wtog .sw[data-v-eadc27ad], .ag-mtog .sw[data-v-eadc27ad], .ag-ntog .sw[data-v-eadc27ad] { width: 42px; height: 25px; border-radius: 99px; background: #D6DEE9; position: relative; flex: none; transition: background .2s;
}
.ag-wtog .sw[data-v-eadc27ad]::after, .ag-mtog .sw[data-v-eadc27ad]::after, .ag-ntog .sw[data-v-eadc27ad]::after { content: ''; position: absolute; top: 3px; left: 3px; width: 19px; height: 19px; border-radius: 50%; background: #fff; transition: left .2s;
}
.ag-wtog input:checked + .sw[data-v-eadc27ad], .ag-mtog input:checked + .sw[data-v-eadc27ad], .ag-ntog input:checked + .sw[data-v-eadc27ad] { background: var(--marca);
}
.ag-wtog input:checked + .sw[data-v-eadc27ad]::after, .ag-mtog input:checked + .sw[data-v-eadc27ad]::after, .ag-ntog input:checked + .sw[data-v-eadc27ad]::after { left: 20px;
}
.ag-whrs[data-v-eadc27ad] { display: flex; align-items: center; gap: 8px;
}
.ag-wsep[data-v-eadc27ad] { font-size: 15px; color: #8A97A8; font-weight: 600;
}
.ag-wfolga[data-v-eadc27ad] { font-size: 15px; color: #8A97A8; font-weight: 700;
}
.ag-mtog[data-v-eadc27ad] { display: flex; align-items: center; justify-content: space-between; gap: 14px; border: 1px solid var(--linha); border-radius: 14px; padding: 13px 15px; margin-bottom: 10px; cursor: pointer; background: #fff;
}
.ag-mtog .tt[data-v-eadc27ad] { font-size: 15.5px; font-weight: 700; color: var(--texto);
}
.ag-mtog .tt small[data-v-eadc27ad] { display: block; font-weight: 600; color: #8A97A8; font-size: 15px;
}
.ag-mtog input[data-v-eadc27ad] { display: none;
}
.ag-mtog.sub[data-v-eadc27ad] { margin-left: 16px;
}
.ag-mtog.dim[data-v-eadc27ad] { opacity: .55;
}

/* toast */
.ag-toast[data-v-eadc27ad] { position: absolute; left: 50%; transform: translateX(-50%); bottom: 86px; background: var(--texto); color: #fff; font-size: 15px; font-weight: 700; padding: 12px 20px; border-radius: 99px; box-shadow: 0 10px 30px rgba(24,38,66,.3); z-index: 60; max-width: 90%; text-align: center;
}
.ag-fade-enter-active[data-v-eadc27ad], .ag-fade-leave-active[data-v-eadc27ad] { transition: opacity .22s;
}
.ag-fade-enter-from[data-v-eadc27ad], .ag-fade-leave-to[data-v-eadc27ad] { opacity: 0;
}

/* mobile empilha (os dias viram rolo vertical; sheets viram fixed) */
@media (max-width: 860px) {
.ag[data-v-eadc27ad] { position: relative; inset: auto; min-height: 100vh; overflow: visible;
}
.ag-head[data-v-eadc27ad] { position: sticky; top: 0; z-index: 7;
}
.ag-scroll[data-v-eadc27ad] { padding: 14px 14px 100px;
}
.ag-foot[data-v-eadc27ad] { position: fixed; left: 0; right: 0; bottom: 0; z-index: 6;
}
.ag-sheet[data-v-eadc27ad] { position: fixed; bottom: 67px;
}
.ag-scrim[data-v-eadc27ad] { position: fixed;
}
.ag-as[data-v-eadc27ad] { position: fixed; padding-bottom: calc(22px + env(safe-area-inset-bottom));
}
.ag-toast[data-v-eadc27ad] { position: fixed;
}
}

/* tema escuro básico (tokens do app) */
:root[data-theme="dark"] .ag[data-v-eadc27ad] { background: #0F1622;
}
:root[data-theme="dark"] .ag-top[data-v-eadc27ad], :root[data-theme="dark"] .ag-foot[data-v-eadc27ad], :root[data-theme="dark"] .ag-head[data-v-eadc27ad] { background: #151E2B; border-color: #243244;
}
:root[data-theme="dark"] .ag-title[data-v-eadc27ad], :root[data-theme="dark"] .ag-wlab[data-v-eadc27ad] { color: #EAF0F8;
}
:root[data-theme="dark"] .ag-back[data-v-eadc27ad], :root[data-theme="dark"] .ag-nav[data-v-eadc27ad] { background: #1B2534; border-color: #243244; color: #9AA7B8;
}
:root[data-theme="dark"] .ag-seg[data-v-eadc27ad] { background: #1B2534;
}
:root[data-theme="dark"] .ag-seg button[data-v-eadc27ad] { color: #9AA7B8;
}
:root[data-theme="dark"] .ag-seg button.on[data-v-eadc27ad] { background: #243244; color: #9FB6F2; box-shadow: none;
}
:root[data-theme="dark"] .ag-dpill[data-v-eadc27ad] { background: #1B2534; border-color: #243244;
}
:root[data-theme="dark"] .ag-dpill b[data-v-eadc27ad] { color: #EAF0F8;
}
:root[data-theme="dark"] .ag-dpill.sel[data-v-eadc27ad] { background: #20305A; border-color: #2A3E6E;
}
:root[data-theme="dark"] .ag-dpill.sel b[data-v-eadc27ad], :root[data-theme="dark"] .ag-dpill.today b[data-v-eadc27ad] { color: #9FB6F2;
}
:root[data-theme="dark"] .ag-slot[data-v-eadc27ad] { background: #151E2B; border-color: #243244;
}
:root[data-theme="dark"] .ag-slot.block[data-v-eadc27ad] { background: #1B2534;
}
:root[data-theme="dark"] .ag-slot.free[data-v-eadc27ad] { background: #14201B;
}
:root[data-theme="dark"] .ag-slot.book.pend[data-v-eadc27ad] { background: #241E10;
}
:root[data-theme="dark"] .ag-nm[data-v-eadc27ad], :root[data-theme="dark"] .ag-pt[data-v-eadc27ad] { color: #EAF0F8;
}
:root[data-theme="dark"] .ag-empty[data-v-eadc27ad] { background: #151E2B; border-color: #243244;
}
:root[data-theme="dark"] .ag-pcard[data-v-eadc27ad] { background: #241E10; border-color: #4A3C1B;
}
:root[data-theme="dark"] .ag-sheet[data-v-eadc27ad], :root[data-theme="dark"] .ag-modal[data-v-eadc27ad], :root[data-theme="dark"] .ag-freeform[data-v-eadc27ad] { background: #151E2B; border-color: #243244;
}
:root[data-theme="dark"] .ag-as[data-v-eadc27ad] { background: #151E2B;
}
:root[data-theme="dark"] .ag-as-who[data-v-eadc27ad] { color: #EAF0F8;
}
:root[data-theme="dark"] .ag-act[data-v-eadc27ad] { background: #1B2534; border-color: #243244; color: #EAF0F8;
}
:root[data-theme="dark"] .ag-act small[data-v-eadc27ad] { color: #9AA7B8;
}
:root[data-theme="dark"] .ag-act.primary[data-v-eadc27ad] { color: #fff;
}
:root[data-theme="dark"] .ag-act.primary small[data-v-eadc27ad] { color: #DCE7F5;
}
:root[data-theme="dark"] .ag-act.danger[data-v-eadc27ad] { color: #F1A0A0;
}
:root[data-theme="dark"] .ag-ntog[data-v-eadc27ad] { color: #EAF0F8;
}
:root[data-theme="dark"] .ag-as-note[data-v-eadc27ad] { background: #2A1A1A; border-color: #4A2A2A; color: #E7B9B9;
}
:root[data-theme="dark"] .ag-as-passou[data-v-eadc27ad] { background: #1A2534; border-color: #2C3B4F; color: #B7C6D8;
}
:root[data-theme="dark"] .ag-pill.passou[data-v-eadc27ad] { background: #22303F; color: #B7C6D8;
}
:root[data-theme="dark"] .ag-m-head b[data-v-eadc27ad], :root[data-theme="dark"] .ag-sh-t[data-v-eadc27ad], :root[data-theme="dark"] .ag-ff-t[data-v-eadc27ad], :root[data-theme="dark"] .ag-wtog[data-v-eadc27ad], :root[data-theme="dark"] .ag-mtog .tt[data-v-eadc27ad] { color: #EAF0F8;
}
:root[data-theme="dark"] .ag-field[data-v-eadc27ad] { background: #1B2534; border-color: #243244; color: #EAF0F8;
}
:root[data-theme="dark"] .ag-mtog[data-v-eadc27ad] { background: #151E2B; border-color: #243244;
}
:root[data-theme="dark"] .ag-fbtn[data-v-eadc27ad] { background: #20305A; border-color: #2A3E6E; color: #9FB6F2;
}

/* ── dark REAL (fix 28/07) ──
   O dark global do app é uma INVERSÃO de filtro no body (styles/dark-theme.css);
   ela re-invertia os overrides escuros acima de volta pro claro. O contra-filtro
   (mesma conta do .no-invert) anula a inversão nesta tela e deixa a paleta valer.
   color-scheme: dark escurece os controles nativos (type=date/time). */
:root[data-theme="dark"] .ag[data-v-eadc27ad] { filter: invert(1.087) hue-rotate(180deg); color-scheme: dark; color: #EAF0F8;
}

/* cabeçalho + fita da semana */
:root[data-theme="dark"] .ag-saved[data-v-eadc27ad] { color: #2BBF7F;
}
:root[data-theme="dark"] .ag-hoje[data-v-eadc27ad], :root[data-theme="dark"] .ag-dayh.today[data-v-eadc27ad] { color: #9FB6F2;
}
:root[data-theme="dark"] .ag-dpill small[data-v-eadc27ad] { color: #9AA7B8;
}
:root[data-theme="dark"] .ag-dpill.today[data-v-eadc27ad] { box-shadow: inset 0 0 0 1.5px #2A3E6E;
}

/* textos secundários / apagados */
:root[data-theme="dark"] .ag-ps[data-v-eadc27ad], :root[data-theme="dark"] .ag-svc[data-v-eadc27ad], :root[data-theme="dark"] .ag-sh-l[data-v-eadc27ad],
:root[data-theme="dark"] .ag-as-meta[data-v-eadc27ad], :root[data-theme="dark"] .ag-m-sub[data-v-eadc27ad], :root[data-theme="dark"] .ag-state[data-v-eadc27ad],
:root[data-theme="dark"] .ag-wsep[data-v-eadc27ad], :root[data-theme="dark"] .ag-wfolga[data-v-eadc27ad], :root[data-theme="dark"] .ag-x2[data-v-eadc27ad],
:root[data-theme="dark"] .ag-dayh[data-v-eadc27ad], :root[data-theme="dark"] .ag-hr small[data-v-eadc27ad], :root[data-theme="dark"] .ag-x[data-v-eadc27ad],
:root[data-theme="dark"] .ag-m-x[data-v-eadc27ad], :root[data-theme="dark"] .ag-empty[data-v-eadc27ad], :root[data-theme="dark"] .ag-mtog .tt small[data-v-eadc27ad] { color: #9AA7B8;
}
:root[data-theme="dark"] .ag-pph[data-v-eadc27ad] { color: #6B7A90;
}

/* pedidos pendentes */
:root[data-theme="dark"] .ag-pend-h[data-v-eadc27ad] { color: #E8B04B;
}
:root[data-theme="dark"] .ag-conf[data-v-eadc27ad] { background: #2A1A1A; color: #E86A6A;
}

/* botões */
:root[data-theme="dark"] .ag-alt[data-v-eadc27ad] { background: #1B2534; border-color: #2A3E6E; color: #9FB6F2;
}
/* restatement: o .ag-alt genérico acima ganha por especificidade — os estados
   cheios (on/red) precisam vir depois pra não perder o fundo */
:root[data-theme="dark"] .ag-alt.on[data-v-eadc27ad] { background: var(--marca); border-color: var(--marca); color: #fff;
}
:root[data-theme="dark"] .ag-alt.red[data-v-eadc27ad] { background: #C25450; border-color: #C25450; color: #fff;
}
:root[data-theme="dark"] .ag-fbtn.on[data-v-eadc27ad] { background: var(--marca); border-color: var(--marca); color: #fff;
}

/* cartões da linha do tempo */
:root[data-theme="dark"] .ag-hr b[data-v-eadc27ad] { color: #9FB6F2;
}
:root[data-theme="dark"] .ag-slot.book.noshow[data-v-eadc27ad] { border-left-color: #243244;
}
:root[data-theme="dark"] .ag-st.ok[data-v-eadc27ad] { color: #2BBF7F;
}
:root[data-theme="dark"] .ag-pill[data-v-eadc27ad] { background: #2A2113; color: #E8B04B;
}
:root[data-theme="dark"] .ag-slot.block .ag-hr b[data-v-eadc27ad], :root[data-theme="dark"] .ag-slot.block .ag-nm[data-v-eadc27ad] { color: #9AA7B8;
}
:root[data-theme="dark"] .ag-slot.free[data-v-eadc27ad] { background: #12291F; border-color: #235C41;
}
:root[data-theme="dark"] .ag-slot.free .ag-hr b[data-v-eadc27ad], :root[data-theme="dark"] .ag-fr[data-v-eadc27ad] { color: #2BBF7F;
}

/* campos + sheets + modal */
:root[data-theme="dark"] .ag-field[data-v-eadc27ad]::placeholder { color: #6B7A90;
}
:root[data-theme="dark"] .ag-scrim[data-v-eadc27ad], :root[data-theme="dark"] .ag-overlay[data-v-eadc27ad] { background: rgba(0, 0, 0, .55);
}
:root[data-theme="dark"] .ag-as-grab[data-v-eadc27ad] { background: #243244;
}
:root[data-theme="dark"] .ag-act.primary[data-v-eadc27ad] { background: linear-gradient(135deg, var(--marca), var(--acao)); border: 0;
}
:root[data-theme="dark"] .ag-m-tpl[data-v-eadc27ad] { background: #1B2534; border-color: #2A3E6E; color: #C6D2E4;
}
:root[data-theme="dark"] .ag-m-tpl b[data-v-eadc27ad] { color: #9FB6F2;
}
:root[data-theme="dark"] .ag-m-sep[data-v-eadc27ad] { background: #243244;
}
:root[data-theme="dark"] .ag-wday[data-v-eadc27ad] { border-color: #243244;
}
:root[data-theme="dark"] .ag-wtog .sw[data-v-eadc27ad], :root[data-theme="dark"] .ag-mtog .sw[data-v-eadc27ad], :root[data-theme="dark"] .ag-ntog .sw[data-v-eadc27ad] { background: #243244;
}
:root[data-theme="dark"] .ag-wtog input:checked + .sw[data-v-eadc27ad], :root[data-theme="dark"] .ag-mtog input:checked + .sw[data-v-eadc27ad],
:root[data-theme="dark"] .ag-ntog input:checked + .sw[data-v-eadc27ad] { background: var(--marca);
}

/* toast */
:root[data-theme="dark"] .ag-toast[data-v-eadc27ad] { background: #243244; color: #EAF0F8; box-shadow: 0 10px 30px rgba(0, 0, 0, .5);
}

.pf[data-v-e762607b] { display: flex; flex-direction: column; gap: 10px;
}
.pf-lead[data-v-e762607b] { font-size: 15px; color: var(--muted, #738091); line-height: 1.5; margin: 0 0 4px;
}
.pf-lead b[data-v-e762607b] { color: var(--ink, #344050);
}
.pf-list[data-v-e762607b] { display: flex; flex-direction: column; gap: 9px;
}
.pf-q[data-v-e762607b] { border: 1px solid var(--border, #e6ecf4); border-radius: 12px; padding: 10px 12px; background: var(--surface-2, var(--fundo));
}
.pf-qt[data-v-e762607b] { font-weight: 700; font-size: 15px; color: var(--ink, #344050); display: flex; align-items: center; gap: 7px; margin-bottom: 7px;
}
.pf-badge[data-v-e762607b] { background: #5d8fd0; color: #fff; border-radius: 7px; padding: 1px 7px; font-size: 15px; font-weight: 800;
}
.pf-x[data-v-e762607b] { margin-left: auto; background: none; border: none; color: #b0b9c6; font-size: 19px; line-height: 1; cursor: pointer; padding: 0 4px;
}
.pf-x[data-v-e762607b]:hover { color: #dc2626;
}
.pf-inp[data-v-e762607b] { display: flex; align-items: center; gap: 8px; background: var(--surface, #fff); border: 1.5px solid var(--border, #e6ecf4); border-radius: 10px; padding: 2px 10px;
}
.pf-inp input[data-v-e762607b] { flex: 1; border: none; background: transparent; font: inherit; font-size: 15px; color: var(--ink, #344050); padding: 9px 0; outline: none; min-width: 0;
}
.pf-ok[data-v-e762607b] { color: #16a34a; font-weight: 800; flex: none;
}
.pf-save[data-v-e762607b] { flex: none; font: inherit; font-size: 15px; font-weight: 800; color: #fff; background: #5d8fd0; border: none; border-radius: 8px; padding: 7px 13px; cursor: pointer;
}
.pf-save[data-v-e762607b]:hover { background: #4b80c5;
}
.pf-save.done[data-v-e762607b] { background: #16a34a;
}
.pf-sub[data-v-e762607b] { margin: 14px 0 2px; font-size: 15px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: #8a93a3;
}
.pf-empty[data-v-e762607b] { font-size: 15px; color: var(--texto-3); margin: 2px 0;
}
.pf-add[data-v-e762607b] { display: flex; flex-direction: column; gap: 8px; margin-top: 10px; padding: 12px; border: 1px dashed var(--border, #d8e0ec); border-radius: 12px;
}
.pf-add-in[data-v-e762607b] { border: 1.5px solid var(--border, #e6ecf4); background: var(--surface, #fff); border-radius: 10px; padding: 10px 12px; font: inherit; font-size: 15px; color: var(--ink, #344050); outline: none;
}
.pf-add-in[data-v-e762607b]:focus { border-color: #5d8fd0;
}
.pf-add-btn[data-v-e762607b] { align-self: flex-start; background: #5d8fd0; color: #fff; border: none; font: inherit; font-weight: 800; font-size: 15px; padding: 10px 16px; border-radius: 10px; cursor: pointer;
}
.pf-add-btn[data-v-e762607b]:hover:not(:disabled) { background: #4b80c5;
}
.pf-add-btn[data-v-e762607b]:disabled { opacity: .5; cursor: default;
}

/* Piso de leitura do projeto: nada abaixo de 15px. */
.ap[data-v-66d982b2] { background: #F3F7FC; border: 1px solid #DCE6F2; border-radius: 14px; padding: 15px; margin-bottom: 18px;
}
.ap-h[data-v-66d982b2] { font-size: 17px; font-weight: 800; color: #2F3A4A; margin: 0 0 4px;
}
.ap-sub[data-v-66d982b2] { font-size: 15px; line-height: 1.45; color: #5A6A80; margin: 0 0 14px;
}
.ap-item[data-v-66d982b2] { background: #fff; border: 1px solid #E3E9F1; border-radius: 12px; padding: 12px; margin-bottom: 10px;
}
.ap-sinal[data-v-66d982b2] { display: inline-block; font-size: 15px; font-weight: 700; color: #5A6A80; background: #EDF1F7; border-radius: 99px; padding: 2px 10px; margin-bottom: 8px;
}
.ap-sinal.forte[data-v-66d982b2] { color: #2F6B3D; background: #E6F4EA;
}
.ap-q[data-v-66d982b2] { font-size: 16px; font-weight: 700; color: #2F3A4A; margin: 0 0 8px; line-height: 1.4;
}
.ap-r[data-v-66d982b2] { width: 100%; box-sizing: border-box; font-family: inherit; font-size: 15px; line-height: 1.45; color: #2F3A4A; border: 1px solid #D6DFEB; border-radius: 10px; padding: 10px 12px; resize: vertical; background: #fff;
}
.ap-acoes[data-v-66d982b2] { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px;
}
.ap-sim[data-v-66d982b2] { border: none; background: #3D7A40; color: #fff; font-family: inherit; font-size: 15px; font-weight: 800; padding: 10px 16px; border-radius: 12px; cursor: pointer;
}
.ap-nao[data-v-66d982b2] { border: 1px solid #D6DFEB; background: #fff; color: #5A6A80; font-family: inherit; font-size: 15px; font-weight: 600; padding: 10px 16px; border-radius: 12px; cursor: pointer;
}
.ap-sim[data-v-66d982b2]:disabled, .ap-nao[data-v-66d982b2]:disabled { opacity: .55; cursor: default;
}
.ap-rodape[data-v-66d982b2] { font-size: 15px; color: #5A6A80; margin: 12px 0 0;
}
:root[data-theme="dark"] .ap[data-v-66d982b2] { background: #131C28; border-color: #243244;
}
:root[data-theme="dark"] .ap-h[data-v-66d982b2], :root[data-theme="dark"] .ap-q[data-v-66d982b2] { color: #EAF0F8;
}
:root[data-theme="dark"] .ap-sub[data-v-66d982b2], :root[data-theme="dark"] .ap-rodape[data-v-66d982b2] { color: #9AA7B8;
}
:root[data-theme="dark"] .ap-item[data-v-66d982b2] { background: #151E2B; border-color: #243244;
}
:root[data-theme="dark"] .ap-r[data-v-66d982b2] { background: #0F1720; border-color: #2C3B4F; color: #EAF0F8;
}
:root[data-theme="dark"] .ap-sinal[data-v-66d982b2] { background: #22303F; color: #B7C6D8;
}
:root[data-theme="dark"] .ap-sinal.forte[data-v-66d982b2] { background: #17321F; color: #8FD3A2;
}
:root[data-theme="dark"] .ap-nao[data-v-66d982b2] { background: #151E2B; border-color: #2C3B4F; color: #B7C6D8;
}

.md[data-v-53b99b11] { position: absolute; inset: 0; display: flex; flex-direction: column; background: #F4F7FB; overflow: hidden;
}
/* BUG DO TRILHO (fix 27/07): em desktop o menu lateral recolhido ocupa 74px
   fixos — a tela cheia começa depois dele (o expandido flutua por cima, ok). */
@media (min-width: 861px) {
.md[data-v-53b99b11] { left: 74px; top: var(--topbar-h, 48px);
}
}

/* topo fino */
.md-top[data-v-53b99b11] { display: flex; align-items: center; gap: 14px; padding: 12px 18px; background: #fff; border-bottom: 1px solid var(--linha); flex: none;
}
.md-back[data-v-53b99b11] { border: 1px solid var(--linha); background: #fff; color: var(--texto-2); font-weight: 750; font-size: 15px; padding: 8px 15px; border-radius: 10px; cursor: pointer; font-family: inherit;
}
.md-title[data-v-53b99b11] { font-size: 19px; font-weight: 800; letter-spacing: -.02em; color: var(--texto);
}
.md-saved[data-v-53b99b11] { margin-left: auto; font-size: 15px; font-weight: 750; color: #177C55; opacity: 0; transition: opacity .25s;
}
.md-saved.show[data-v-53b99b11] { opacity: 1;
}
.md-cols[data-v-53b99b11] { flex: 1; display: flex; min-height: 0;
}

/* abas */
.md-tabs[data-v-53b99b11] { width: 225px; flex: none; background: #EEF2F7; border-right: 1px solid var(--linha); padding: 16px 0; display: flex; flex-direction: column; overflow-y: auto;
}
.md-tabs-h[data-v-53b99b11] { font-size: 15px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; color: #8A97A8; padding: 0 20px 12px;
}
.md-t[data-v-53b99b11] { display: flex; align-items: center; gap: 12px; padding: 14px 20px; font-size: 16px; font-weight: 750; color: var(--texto-2); border: none; border-left: 4px solid transparent; background: none; cursor: pointer; text-align: left; font-family: inherit;
}
.md-t .ic[data-v-53b99b11] { font-size: 21px;
}
.md-t .tx small[data-v-53b99b11] { display: block; font-size: 15px; font-weight: 600; color: #8A97A8;
}
.md-t.on[data-v-53b99b11] { background: #fff; color: var(--acao); border-left-color: var(--marca);
}
.md-t[data-v-53b99b11]:hover:not(.on) { color: var(--texto);
}
.md-tabs-foot[data-v-53b99b11] { margin-top: auto; padding: 14px 20px 4px; font-size: 15px; color: #8A97A8; line-height: 1.45;
}

/* painel central */
.md-pane[data-v-53b99b11] { flex: 1; min-width: 0; padding: 28px 34px; overflow-y: auto; background: #fff;
}
.md-loading[data-v-53b99b11] { color: #8A97A8; font-size: 16px;
}
.md-h[data-v-53b99b11] { font-size: 28px; font-weight: 800; letter-spacing: -.022em; color: var(--texto); margin: 0 0 6px;
}
.md-sub[data-v-53b99b11] { font-size: 16px; color: var(--texto-2); margin: 0 0 24px; max-width: 56ch; line-height: 1.5;
}
.md-lab[data-v-53b99b11] { font-size: 16px; font-weight: 800; color: var(--texto); margin: 22px 0 10px;
}
.md-nota[data-v-53b99b11] { font-size: 15px; color: var(--texto-2); line-height: 1.5; margin: -4px 0 10px;
}
.md-lab small[data-v-53b99b11] { font-weight: 600; color: #8A97A8; font-size: 15px;
}
.md-tip[data-v-53b99b11] { font-size: 15px; color: var(--texto-2); margin-top: 10px;
}
.md-slider[data-v-53b99b11] { margin-bottom: 22px;
}
.md-slider .ends[data-v-53b99b11] { display: flex; justify-content: space-between; font-size: 15.5px; font-weight: 750; margin-bottom: 8px;
}
.md-slider .ends span[data-v-53b99b11] { color: #8A97A8;
}
.md-slider .ends .on[data-v-53b99b11] { color: var(--acao);
}
.md-slider input[type="range"][data-v-53b99b11] { width: 100%; height: 12px; border-radius: 99px; background: #EEF2F7; appearance: none; -webkit-appearance: none; outline: none;
}
.md-slider input[type="range"][data-v-53b99b11]::-webkit-slider-thumb { -webkit-appearance: none; width: 28px; height: 28px; border-radius: 50%; background: var(--marca); box-shadow: 0 3px 10px rgba(70,103,154,.4); cursor: pointer;
}
.md-slider input[type="range"][data-v-53b99b11]::-moz-range-thumb { width: 28px; height: 28px; border: none; border-radius: 50%; background: var(--marca); cursor: pointer;
}
.md-check[data-v-53b99b11] { display: flex; align-items: center; gap: 12px; font-size: 16.5px; font-weight: 650; color: var(--texto); cursor: pointer; margin-top: 4px;
}
.md-check input[data-v-53b99b11] { width: 24px; height: 24px; accent-color: var(--marca);
}
.md-field[data-v-53b99b11] { width: 100%; border: 1.5px solid var(--linha); border-radius: 12px; padding: 14px 16px; font-size: 17px; color: var(--texto); background: #fff; font-family: inherit;
}
.md-field[data-v-53b99b11]:focus { outline: none; border-color: var(--marca); box-shadow: 0 0 0 3px rgba(94,134,184,.12);
}
.md-field.mt[data-v-53b99b11] { margin-top: 12px;
}
.md-grid2[data-v-53b99b11] { display: grid; grid-template-columns: 1fr 1fr; gap: 12px;
}
.md-area[data-v-53b99b11] { resize: vertical; line-height: 1.5;
}
.md-toggle[data-v-53b99b11] { display: flex; align-items: center; justify-content: space-between; gap: 14px; border: 1px solid var(--linha); border-radius: 14px; padding: 15px 17px; margin-bottom: 10px; cursor: pointer; background: #fff;
}
.md-toggle .tt[data-v-53b99b11] { font-size: 16.5px; font-weight: 700; color: var(--texto);
}
.md-toggle .tt small[data-v-53b99b11] { display: block; font-weight: 600; color: #8A97A8; font-size: 15px;
}
.md-toggle input[data-v-53b99b11] { display: none;
}
.md-toggle .sw[data-v-53b99b11] { width: 46px; height: 27px; border-radius: 99px; background: #D6DEE9; position: relative; flex: none; transition: background .2s;
}
.md-toggle .sw[data-v-53b99b11]::after { content: ''; position: absolute; top: 3px; left: 3px; width: 21px; height: 21px; border-radius: 50%; background: #fff; transition: left .2s;
}
.md-toggle input:checked + .sw[data-v-53b99b11] { background: var(--marca);
}
.md-toggle input:checked + .sw[data-v-53b99b11]::after { left: 22px;
}
.md-toggle.warn[data-v-53b99b11] { margin-top: 20px;
}
.md-toggle.warn.paused[data-v-53b99b11] { border-color: #E8C9C9; background: #FBF3F3;
}
.md-mode[data-v-53b99b11] { display: flex; align-items: center; justify-content: space-between; gap: 14px; width: 100%; border: 1px solid var(--linha); border-radius: 14px; padding: 15px 17px; margin-bottom: 10px; cursor: pointer; background: #fff; font-family: inherit; text-align: left;
}
.md-mode .tt[data-v-53b99b11] { font-size: 16.5px; font-weight: 700; color: var(--texto);
}
.md-mode .tt small[data-v-53b99b11] { display: block; font-weight: 600; color: #8A97A8; font-size: 15px;
}
.md-mode.on[data-v-53b99b11] { border-color: var(--marca); background: #EAF0F8;
}
.md-mode b[data-v-53b99b11] { color: var(--acao); font-size: 18px;
}
.md-chips[data-v-53b99b11] { display: flex; gap: 8px; flex-wrap: wrap; margin: 4px 0 12px;
}
.md-chip[data-v-53b99b11] { border: 1px solid var(--linha); background: #fff; color: var(--texto-2); font-weight: 750; font-size: 15px; padding: 8px 15px; border-radius: 99px; cursor: pointer; font-family: inherit;
}
.md-chip.on[data-v-53b99b11] { background: var(--marca); border-color: var(--marca); color: #fff;
}
.md-rule[data-v-53b99b11] { display: flex; align-items: center; gap: 10px; border: 1px solid var(--linha); border-radius: 12px; padding: 12px 15px; font-size: 15.5px; color: var(--texto); margin-bottom: 8px; background: #fff;
}
.md-rule .tag[data-v-53b99b11] { font-size: 15px; font-weight: 900; letter-spacing: .05em; padding: 3px 9px; border-radius: 6px; flex: none;
}
.md-rule .tag.s[data-v-53b99b11] { background: #DCF3E7; color: #177C55;
}
.md-rule .tag.n[data-v-53b99b11] { background: #FBEAEA; color: #A0433C;
}
.md-rule .rt[data-v-53b99b11] { flex: 1; min-width: 0;
}
.md-rule .x[data-v-53b99b11] { margin-left: auto; border: none; background: none; color: #8A97A8; font-weight: 800; font-size: 18px; cursor: pointer;
}
.md-addrow[data-v-53b99b11] { display: flex; gap: 10px; margin-top: 10px;
}
.md-addrow .md-field[data-v-53b99b11] { flex: 1;
}
.md-add[data-v-53b99b11] { border: none; background: var(--marca); color: #fff; font-weight: 800; font-size: 15px; padding: 0 22px; border-radius: 12px; cursor: pointer; font-family: inherit;
}
.md-add[data-v-53b99b11]:disabled { opacity: .5; cursor: default;
}

/* atalho pra tela de Serviços (o cardápio agora vive no menu lateral) */
.md-svclink[data-v-53b99b11] { margin: 14px 14px 0; border: 1px solid #C9D8EC; background: #EAF0F8; color: #3A5B94; font-weight: 800; font-size: 15px; padding: 11px 14px; border-radius: 12px; cursor: pointer; font-family: inherit; text-align: left;
}
.md-svclink[data-v-53b99b11]:hover { background: #DCE7F5;
}

/* prévia viva */
.md-live[data-v-53b99b11] { width: 330px; flex: none; background: #EEF2F7; border-left: 1px solid var(--linha); display: flex; flex-direction: column; align-items: center; padding: 18px 16px; overflow: hidden;
}
.md-live-lab[data-v-53b99b11] { font-size: 15px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; color: #177C55; margin-bottom: 10px;
}
.md-live-lab[data-v-53b99b11]::before { content: '●  ';
}
.md-phone[data-v-53b99b11] { width: 100%; max-width: 290px; background: #fff; border: 1px solid var(--linha); border-radius: 24px; box-shadow: 0 14px 40px rgba(24,38,66,.16); overflow: hidden; display: flex; flex-direction: column; flex: 1; min-height: 0;
}
.mp-head[data-v-53b99b11] { background: #1fa564; color: #fff; padding: 11px 15px; font-size: 15px; font-weight: 800; flex: none;
}
.mp-head small[data-v-53b99b11] { display: block; font-weight: 600; opacity: .85; font-size: 15px;
}
.mp-body[data-v-53b99b11] { padding: 12px; display: flex; flex-direction: column; gap: 8px; flex: 1; overflow-y: auto; min-height: 0;
}
.mp-empty[data-v-53b99b11] { font-size: 15px; color: #8A97A8; line-height: 1.5; margin: auto 6px; text-align: center;
}
.mb[data-v-53b99b11] { max-width: 88%; padding: 9px 12px; border-radius: 13px; font-size: 15px; line-height: 1.42; color: var(--texto);
}
.mb.in[data-v-53b99b11] { background: #F2F5F9; align-self: flex-end; border-bottom-right-radius: 4px;
}
.mb.out[data-v-53b99b11] { background: #D7F0DE; align-self: flex-start; border-bottom-left-radius: 4px;
}
.mb .who[data-v-53b99b11] { display: block; font-size: 15px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; color: #177C55; margin-bottom: 2px;
}
.mb.typing[data-v-53b99b11] { color: #8A97A8; letter-spacing: 3px;
}
.mp-teach[data-v-53b99b11] { display: flex; gap: 6px; padding: 9px 10px; border-top: 1px solid var(--linha); background: #EAF0F8; flex: none;
}
.mp-teach-k[data-v-53b99b11] { border: 1px solid #C9D8EC; border-radius: 9px; font-size: 15px; font-weight: 700; color: #3A5B94; padding: 7px 6px; background: #fff; font-family: inherit;
}
.mp-teach-i[data-v-53b99b11] { flex: 1; min-width: 0; border: 1px solid #C9D8EC; border-radius: 9px; padding: 7px 10px; font-size: 15px; font-family: inherit;
}
.mp-teach-b[data-v-53b99b11] { border: none; background: var(--marca); color: #fff; font-weight: 800; font-size: 15px; padding: 0 13px; border-radius: 9px; cursor: pointer; font-family: inherit;
}
.mp-teach-b[data-v-53b99b11]:disabled { opacity: .5;
}
.mp-input[data-v-53b99b11] { display: flex; gap: 8px; padding: 10px 12px; border-top: 1px solid var(--linha); flex: none;
}
.mp-input input[data-v-53b99b11] { flex: 1; min-width: 0; background: #F2F5F9; border: none; border-radius: 99px; padding: 10px 14px; font-size: 15px; font-family: inherit;
}
.mp-input input[data-v-53b99b11]:focus { outline: 2px solid #C9D8EC;
}
.mp-input button[data-v-53b99b11] { width: 36px; height: 36px; border: none; border-radius: 50%; background: #1fa564; color: #fff; font-size: 15px; cursor: pointer; flex: none;
}
.mp-input button[data-v-53b99b11]:disabled { opacity: .5;
}
.md-live-hint[data-v-53b99b11] { font-size: 15px; color: #8A97A8; margin-top: 10px; text-align: center; line-height: 1.45;
}
.md-live-hint a[data-v-53b99b11] { color: var(--acao); font-weight: 750;
}

/* mobile: empilha (abas horizontais, telefone embaixo) */
@media (max-width: 980px) {
.md[data-v-53b99b11] { position: relative; inset: auto; min-height: 100vh; overflow: visible;
}
.md-cols[data-v-53b99b11] { flex-direction: column;
}
.md-tabs[data-v-53b99b11] { width: 100%; flex-direction: row; overflow-x: auto; padding: 0; border-right: none; border-bottom: 1px solid var(--linha);
}
.md-tabs-h[data-v-53b99b11], .md-tabs-foot[data-v-53b99b11] { display: none;
}
.md-t[data-v-53b99b11] { border-left: none; border-bottom: 4px solid transparent; padding: 12px 14px; white-space: nowrap;
}
.md-t.on[data-v-53b99b11] { border-bottom-color: var(--marca);
}
.md-t .tx small[data-v-53b99b11] { display: none;
}
.md-svclink[data-v-53b99b11] { flex: none; align-self: center; margin: 6px 10px; white-space: nowrap;
}
.md-pane[data-v-53b99b11] { padding: 22px 18px; overflow: visible;
}
.md-grid2[data-v-53b99b11] { grid-template-columns: 1fr;
}
.md-live[data-v-53b99b11] { width: 100%; border-left: none; border-top: 1px solid var(--linha);
}
.md-phone[data-v-53b99b11] { min-height: 420px;
}
}

/* Piso de leitura do projeto: nada abaixo de 15px. */
.mlc-nota[data-v-2b7dbe44] { font-size: 15px; line-height: 1.5; color: var(--texto-2); margin: 8px 2px 0;
}
.mlc-conectar[data-v-2b7dbe44] {
  width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 14px;
  background: #FFF8E8; border: 1px solid #F2D98C; border-radius: 14px;
  padding: 15px 16px; margin: 4px 0 16px; cursor: pointer; text-align: left;
  font-family: inherit; color: var(--texto);
}
.mlc-conectar[data-v-2b7dbe44]:hover:not(:disabled) { background: #FDF2D4; border-color: #E8C96A;
}
.mlc-conectar[data-v-2b7dbe44]:disabled { opacity: .7; cursor: default;
}
.mlc-conectar b[data-v-2b7dbe44] { display: block; font-size: 16px;
}
.mlc-conectar small[data-v-2b7dbe44] { display: block; font-size: 15px; color: var(--texto-3); margin-top: 3px; line-height: 1.45;
}
.mlc-seta[data-v-2b7dbe44] { transform: rotate(180deg); flex: none; color: #9A7B14;
}
.mlc-conectado[data-v-2b7dbe44] {
  display: flex; align-items: center; gap: 14px;
  background: #F2FAF4; border: 1px solid #CDE8D4; border-radius: 14px;
  padding: 15px 16px; margin: 4px 0 16px;
}
.mlc-conectado span[data-v-2b7dbe44] { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px;
}
.mlc-conectado b[data-v-2b7dbe44] { font-size: 16px;
}
.mlc-conectado small[data-v-2b7dbe44] { font-size: 15px; color: var(--label, var(--texto-2));
}
.mlc-desconectar[data-v-2b7dbe44] {
  border: 1px solid rgba(0,0,0,.15); background: transparent; border-radius: 10px;
  padding: 8px 14px; font-size: 15px; font-family: inherit; cursor: pointer; color: var(--texto-2);
}
.mlc-desconectar[data-v-2b7dbe44]:hover:not(:disabled) { background: rgba(0,0,0,.03);
}
.mlc-aviso[data-v-2b7dbe44] { margin: 0 0 12px; font-size: 15px; line-height: 1.5; color: var(--st-atrasado-tinta);
}

/* Chave de assuntos — mesmo peso visual dos outros blocos de Serviços. */
.sv-assuntos[data-v-e88dd21b]{display:flex;gap:13px;align-items:flex-start;background:#fff;border:1px solid #E2E5EA;
  border-radius:14px;padding:15px;margin:0 0 16px}
.sv-assuntos b[data-v-e88dd21b]{display:block;font-size:16px;color:#17233A}
.sv-assuntos small[data-v-e88dd21b]{display:block;color:#5B6572;font-size:15px;margin-top:3px;line-height:1.45}
.sv-chave[data-v-e88dd21b]{flex:none;width:52px;height:30px;border-radius:99px;background:#CBD3E0;border:0;
  position:relative;cursor:pointer;transition:background .15s}
.sv-chave[data-v-e88dd21b]::after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;
  background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.sv-chave.on[data-v-e88dd21b]{background:#1B7A4B}
.sv-chave.on[data-v-e88dd21b]::after{transform:translateX(22px)}
.sv-chave[data-v-e88dd21b]:disabled{opacity:.6;cursor:default}
.sv[data-v-e88dd21b] { position: absolute; inset: 0; z-index: 8; display: flex; flex-direction: column; background: #F4F7FB; overflow: hidden;
}
/* BUG DO TRILHO (fix 27/07): em desktop o menu recolhido ocupa 74px fixos à
   esquerda — a tela cheia começa DEPOIS dele (o expandido flutua por cima, ok). */
/* desktop: desvia do trilho E do topo fixo do Dashboard (senão o cabeçalho
   da tela — com o botão voltar — fica escondido embaixo dele). */
@media (min-width: 861px) {
.sv[data-v-e88dd21b] { left: 74px; top: var(--topbar-h, 48px);
}
}

/* topo fino (padrão ModeracaoView) */
.sv-top[data-v-e88dd21b] { display: flex; align-items: center; gap: 14px; padding: 12px 18px; background: #fff; border-bottom: 1px solid var(--linha); flex: none;
}
.sv-back[data-v-e88dd21b] { border: 1px solid var(--linha); background: #fff; color: var(--texto-2); font-weight: 750; font-size: 15px; padding: 8px 15px; border-radius: 10px; cursor: pointer; font-family: inherit;
}
.sv-back.sq[data-v-e88dd21b] { width: 38px; height: 38px; padding: 0; font-size: 19px; flex: none;
}
.sv-title[data-v-e88dd21b] { font-size: 19px; font-weight: 800; letter-spacing: -.02em; color: var(--texto);
}
.sv-saved[data-v-e88dd21b] { margin-left: auto; font-size: 15px; font-weight: 750; color: #177C55; opacity: 0; transition: opacity .25s; flex: none;
}
.sv-saved.show[data-v-e88dd21b] { opacity: 1;
}
.sv-body[data-v-e88dd21b] { flex: 1; overflow-y: auto; padding: 18px;
}
.sv-wrap[data-v-e88dd21b] { max-width: 680px; margin: 0 auto;
}
.sv-sub[data-v-e88dd21b] { font-size: 16px; color: var(--texto-2); margin: 0 0 16px; line-height: 1.5;
}
.sv-ml-t[data-v-e88dd21b] { font-size: 17px; margin: 28px 0 6px; display: flex; align-items: center; gap: 8px;
}
.sv-loading[data-v-e88dd21b], .sv-tip[data-v-e88dd21b] { color: #8A97A8; font-size: 15px; margin: 6px 0;
}
.sv-tplnote[data-v-e88dd21b] { background: #F3F7FE; border: 1.5px solid var(--acao-tonal); color: #33415C; border-radius: 14px; padding: 13px 16px; font-size: 15px; margin-bottom: 14px; line-height: 1.45;
}
.sv-tplnote b[data-v-e88dd21b] { color: var(--azul-900);
}

/* cartão-resumo da lista */
.sv-item[data-v-e88dd21b] { display: flex; align-items: center; gap: 12px; width: 100%; background: #fff; border: 1px solid var(--linha); border-radius: 14px; padding: 14px 16px; margin-bottom: 10px; cursor: pointer; font-family: inherit; text-align: left;
}
.sv-item[data-v-e88dd21b]:hover { border-color: #C9D8EC;
}
.sv-item.off[data-v-e88dd21b] { opacity: .55;
}
.sv-item .em[data-v-e88dd21b] { font-size: 22px; flex: none;
}
.sv-item .mid[data-v-e88dd21b] { flex: 1; min-width: 0;
}
.sv-item .nm[data-v-e88dd21b] { display: block; font-weight: 800; font-size: 16.5px; color: var(--texto);
}
.sv-item .ln[data-v-e88dd21b] { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; color: var(--texto-2); font-size: 15px; margin-top: 4px;
}
.sv-item .ar[data-v-e88dd21b] { color: #8A97A8; font-weight: 800; font-size: 19px; flex: none;
}
.badge[data-v-e88dd21b] { font-size: 15px; font-weight: 800; border-radius: 99px; padding: 2px 9px;
}
.badge.ok[data-v-e88dd21b] { background: #E7F6EE; color: #177C55;
}
.badge.sp[data-v-e88dd21b] { background: #FEF3C7; color: #B45309;
}
.badge.ad[data-v-e88dd21b] { background: var(--acao-tonal); color: var(--azul-900);
}
.badge.pz[data-v-e88dd21b] { background: #EEF2F7; color: var(--texto-2);
}
.badge.oferece[data-v-e88dd21b] { background: var(--st-ok-bg); color: var(--st-ok-tinta); border: 1px solid var(--st-ok-linha);
}
.sv-addbtn[data-v-e88dd21b] { width: 100%; border: 1.5px dashed #C9D8EC; background: #fff; color: #3A5B94; font-weight: 800; font-size: 16px; padding: 14px; border-radius: 14px; cursor: pointer; font-family: inherit; margin-top: 4px;
}
.sv-addbtn[data-v-e88dd21b]:hover { background: #F3F7FE;
}

/* ficha por página (desliza da direita) */
.sv-page[data-v-e88dd21b] { position: absolute; inset: 0; background: #F4F7FB; display: flex; flex-direction: column; z-index: 12;
}
.svp-enter-active[data-v-e88dd21b], .svp-leave-active[data-v-e88dd21b] { transition: transform .28s cubic-bezier(.3, 1, .4, 1);
}
.svp-enter-from[data-v-e88dd21b], .svp-leave-to[data-v-e88dd21b] { transform: translateX(105%);
}
.sv-ptitle[data-v-e88dd21b] { flex: 1; min-width: 0;
}
.sv-name[data-v-e88dd21b] { width: 100%; border: 1.5px solid transparent; border-radius: 10px; padding: 5px 10px; font-size: 19px; font-weight: 800; color: var(--texto); background: transparent; font-family: inherit; letter-spacing: -.02em;
}
.sv-name[data-v-e88dd21b]:hover, .sv-name[data-v-e88dd21b]:focus { border-color: var(--linha); background: #fff; outline: none;
}
.sv-psub[data-v-e88dd21b] { font-size: 15px; font-weight: 700; color: #8A97A8; padding: 0 10px;
}
.sv-pbody[data-v-e88dd21b] { flex: 1; overflow-y: auto; padding: 4px 18px 120px;
}
.secH[data-v-e88dd21b] { font-size: 15px; font-weight: 800; color: #8A97A8; text-transform: uppercase; letter-spacing: .4px; margin: 22px 2px 10px;
}
.secH i[data-v-e88dd21b] { color: #B4232A; font-style: normal; text-transform: none; letter-spacing: 0;
}
.sv-chips[data-v-e88dd21b] { display: flex; gap: 8px; flex-wrap: wrap;
}
.sv-dch[data-v-e88dd21b] { border: 1.5px solid var(--linha); background: #fff; border-radius: 99px; padding: 10px 17px; font-weight: 800; font-size: 15px; color: var(--texto-2); cursor: pointer; font-family: inherit;
}
.sv-dch.on[data-v-e88dd21b] { background: var(--acao-tonal); border-color: #B9C8EE; color: var(--azul-900);
}
.sv-durother[data-v-e88dd21b] { display: flex; align-items: center; gap: 8px; margin-top: 10px; font-size: 15px; font-weight: 700; color: var(--texto-2);
}
.sv-durother .num[data-v-e88dd21b] { max-width: 120px; text-align: right;
}
.fld[data-v-e88dd21b] { margin-bottom: 12px;
}
.fld label[data-v-e88dd21b] { display: block; font-size: 15px; font-weight: 800; color: var(--texto-2); margin-bottom: 6px;
}
.sv-field[data-v-e88dd21b] { width: 100%; border: 1.5px solid var(--linha); border-radius: 12px; padding: 13px 15px; font-size: 16.5px; color: var(--texto); background: #fff; font-family: inherit;
}
.sv-field[data-v-e88dd21b]::placeholder { color: #A9B4C4;
}
.sv-field[data-v-e88dd21b]:focus { outline: none; border-color: var(--marca); box-shadow: 0 0 0 3px rgba(94, 134, 184, .12);
}
.sv-area[data-v-e88dd21b] { resize: vertical; line-height: 1.5;
}
.sv-tgl[data-v-e88dd21b] { display: flex; align-items: center; justify-content: space-between; gap: 14px; background: #fff; border: 1.5px solid var(--linha); border-radius: 13px; padding: 13px 15px; cursor: pointer;
}
.sv-tgl .tt[data-v-e88dd21b] { font-size: 16px; font-weight: 800; color: var(--texto);
}
.sv-tgl .tt small[data-v-e88dd21b] { display: block; font-weight: 600; color: #8A97A8; font-size: 15px;
}
.sv-tgl input[data-v-e88dd21b] { display: none;
}
.sv-tgl .sw[data-v-e88dd21b] { width: 46px; height: 27px; border-radius: 99px; background: #D6DEE9; position: relative; flex: none; transition: background .2s;
}
.sv-tgl .sw[data-v-e88dd21b]::after { content: ''; position: absolute; top: 3px; left: 3px; width: 21px; height: 21px; border-radius: 50%; background: #fff; transition: left .2s;
}
.sv-tgl input:checked + .sw[data-v-e88dd21b] { background: var(--marca);
}
.sv-tgl input:checked + .sw[data-v-e88dd21b]::after { left: 22px;
}
.sv-subfld[data-v-e88dd21b] { margin: 12px 0 0 8px; padding-left: 14px; border-left: 3px solid var(--acao-tonal); max-width: 240px;
}

/* FAQs (mesma malha da Moderação) */
.sv-faq[data-v-e88dd21b] { display: grid; grid-template-columns: 1fr 1.3fr auto; gap: 8px; align-items: start; margin-bottom: 8px;
}
.sv-faq .sv-field[data-v-e88dd21b] { padding: 10px 12px; font-size: 15px;
}
.sv-faq .x[data-v-e88dd21b] { align-self: center; border: none; background: none; color: #8A97A8; font-weight: 800; font-size: 19px; cursor: pointer; padding: 2px 6px;
}
.sv-add[data-v-e88dd21b] { border: none; background: var(--marca); color: #fff; font-weight: 800; font-size: 15px; padding: 10px 16px; border-radius: 12px; cursor: pointer; font-family: inherit; align-self: center;
}
.sv-add[data-v-e88dd21b]:disabled { opacity: .5; cursor: default;
}
.sv-nota[data-v-e88dd21b] { font-size: 15px; color: #8A6A1F; background: #FDF6E7; border: 1px solid #EBD9AE; border-radius: 10px; padding: 10px 13px; margin: 12px 0 0; line-height: 1.45;
}

/* Jeitos de cobrar. Piso de leitura do projeto: nada abaixo de 15px. */
.sv-cond[data-v-e88dd21b] { display: flex; align-items: center; gap: 9px; padding: 10px 12px; border: 1px solid #E3E9F1; border-radius: 12px; margin-bottom: 8px; background: #fff;
}
.sv-cond .txt[data-v-e88dd21b] { flex: 1; font-size: 15px; color: #2F3A4A;
}
.sv-cond .x[data-v-e88dd21b] { border: none; background: none; color: #8A97A8; font-weight: 800; font-size: 19px; cursor: pointer; padding: 2px 6px;
}
.sv-cond .pill[data-v-e88dd21b] { font-size: 15px; font-weight: 700; padding: 3px 10px; border-radius: 999px; white-space: nowrap;
}
.pill.p-promocao[data-v-e88dd21b] { background: #FDECEC; color: #B4453F;
}
.pill.p-pacote[data-v-e88dd21b] { background: #E9F1FB; color: #37618E;
}
.pill.p-fidelidade[data-v-e88dd21b] { background: #EDF6EC; color: #3D7A40;
}
.pill.p-recorrencia[data-v-e88dd21b] { background: #F1EDFA; color: #5B4A8C;
}
.pill.p-desconto_ate[data-v-e88dd21b] { background: #FDF6E7; color: #8A6A1F;
}
.sv-condnew[data-v-e88dd21b] { border: 1px dashed #CBD6E4; border-radius: 12px; padding: 12px; margin-top: 10px;
}
.sv-condnew .sv-chips[data-v-e88dd21b] { margin-bottom: 10px;
}
.sv-erro[data-v-e88dd21b] { font-size: 15px; color: #B4453F; background: #FDECEC; border: 1px solid #F0C9C6; border-radius: 10px; padding: 10px 13px; margin: 10px 0; line-height: 1.45;
}

/* secundários (agem na hora) */
.sv-sec[data-v-e88dd21b] { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 26px; border-top: 1px solid #E7EBF2; padding-top: 16px;
}
.sv-ghost[data-v-e88dd21b] { border: 1px solid var(--linha); background: #fff; color: var(--texto-2); font-weight: 750; font-size: 15px; padding: 10px 16px; border-radius: 11px; cursor: pointer; font-family: inherit;
}
.sv-ghost.danger[data-v-e88dd21b] { color: #A0433C; border-color: #E8C9C9;
}

/* rodapé fixo da ficha */
.sv-save[data-v-e88dd21b] { position: absolute; left: 0; right: 0; bottom: 0; padding: 12px 18px calc(14px + env(safe-area-inset-bottom)); background: linear-gradient(180deg, rgba(244, 247, 251, 0), #F4F7FB 40%);
}
.sv-savebtn[data-v-e88dd21b] { width: 100%; border: none; border-radius: 14px; background: linear-gradient(135deg, var(--marca), var(--acao)); color: #fff; font-weight: 800; font-size: 17px; padding: 15px; cursor: pointer; font-family: inherit; box-shadow: 0 10px 26px rgba(70, 103, 154, .35);
}
.sv-savebtn[data-v-e88dd21b]:disabled { opacity: .5; cursor: default;
}

/* mobile: a tela entra no fluxo da página; a ficha vira tela cheia fixa */
@media (max-width: 860px) {
.sv[data-v-e88dd21b] { position: relative; inset: auto; min-height: 100vh; overflow: visible;
}
.sv-page[data-v-e88dd21b] { position: fixed; inset: 0; z-index: 230;
}
.sv-faq[data-v-e88dd21b] { grid-template-columns: 1fr;
}
.sv-faq .x[data-v-e88dd21b] { justify-self: end;
}
}

/* tema escuro básico (tokens do app) */
:root[data-theme="dark"] .sv[data-v-e88dd21b], :root[data-theme="dark"] .sv-page[data-v-e88dd21b] { background: #0F1622;
}
:root[data-theme="dark"] .sv-top[data-v-e88dd21b] { background: #151E2B; border-color: #243244;
}
:root[data-theme="dark"] .sv-title[data-v-e88dd21b], :root[data-theme="dark"] .sv-name[data-v-e88dd21b], :root[data-theme="dark"] .sv-item .nm[data-v-e88dd21b], :root[data-theme="dark"] .sv-tgl .tt[data-v-e88dd21b] { color: #EAF0F8;
}
:root[data-theme="dark"] .sv-sub[data-v-e88dd21b], :root[data-theme="dark"] .sv-item .ln[data-v-e88dd21b] { color: #9AA7B8;
}
:root[data-theme="dark"] .sv-back[data-v-e88dd21b], :root[data-theme="dark"] .sv-ghost[data-v-e88dd21b] { background: #1B2534; border-color: #243244; color: #9AA7B8;
}
:root[data-theme="dark"] .sv-item[data-v-e88dd21b], :root[data-theme="dark"] .sv-tgl[data-v-e88dd21b], :root[data-theme="dark"] .sv-dch[data-v-e88dd21b] { background: #151E2B; border-color: #243244;
}
:root[data-theme="dark"] .sv-cond[data-v-e88dd21b] { background: #151E2B; border-color: #243244;
}
:root[data-theme="dark"] .sv-cond .txt[data-v-e88dd21b] { color: #EAF0F8;
}
:root[data-theme="dark"] .sv-condnew[data-v-e88dd21b] { border-color: #2C3B4F;
}
:root[data-theme="dark"] .sv-dch[data-v-e88dd21b] { color: #9AA7B8;
}
:root[data-theme="dark"] .sv-dch.on[data-v-e88dd21b] { background: #20305A; border-color: #2A3E6E; color: #9FB6F2;
}
:root[data-theme="dark"] .sv-field[data-v-e88dd21b] { background: #1B2534; border-color: #243244; color: #EAF0F8;
}
:root[data-theme="dark"] .sv-name[data-v-e88dd21b]:hover, :root[data-theme="dark"] .sv-name[data-v-e88dd21b]:focus { background: #1B2534; border-color: #243244;
}
:root[data-theme="dark"] .sv-tplnote[data-v-e88dd21b] { background: #1B2534; border-color: #2A3E6E; color: #C6D2E4;
}
:root[data-theme="dark"] .sv-addbtn[data-v-e88dd21b] { background: #151E2B; border-color: #2A3E6E; color: #9FB6F2;
}
:root[data-theme="dark"] .sv-nota[data-v-e88dd21b] { background: #241E10; border-color: #4A3C1B; color: #D8C08A;
}
:root[data-theme="dark"] .badge.pz[data-v-e88dd21b] { background: #1B2534; color: #9AA7B8;
}
:root[data-theme="dark"] .sv-sec[data-v-e88dd21b] { border-color: #243244;
}
:root[data-theme="dark"] .sv-save[data-v-e88dd21b] { background: linear-gradient(180deg, rgba(15, 22, 34, 0), #0F1622 40%);
}

/* ── dark REAL (fix 28/07) ──
   O dark global do app é uma INVERSÃO de filtro no body (styles/dark-theme.css);
   ela re-invertia os overrides escuros acima de volta pro claro. O contra-filtro
   (mesma conta do .no-invert) anula a inversão nesta tela e deixa a paleta valer.
   A ficha (.sv-page) é filha do .sv, então herda o contra-filtro. */
:root[data-theme="dark"] .sv[data-v-e88dd21b] { filter: invert(1.087) hue-rotate(180deg); color-scheme: dark; color: #EAF0F8;
}

/* topo + textos secundários */
:root[data-theme="dark"] .sv-saved[data-v-e88dd21b] { color: #2BBF7F;
}
:root[data-theme="dark"] .sv-loading[data-v-e88dd21b], :root[data-theme="dark"] .sv-tip[data-v-e88dd21b], :root[data-theme="dark"] .sv-psub[data-v-e88dd21b],
:root[data-theme="dark"] .sv-item .ar[data-v-e88dd21b], :root[data-theme="dark"] .sv-durother[data-v-e88dd21b], :root[data-theme="dark"] .fld label[data-v-e88dd21b],
:root[data-theme="dark"] .secH[data-v-e88dd21b], :root[data-theme="dark"] .sv-faq .x[data-v-e88dd21b], :root[data-theme="dark"] .sv-tgl .tt small[data-v-e88dd21b] { color: #9AA7B8;
}
:root[data-theme="dark"] .secH i[data-v-e88dd21b] { color: #E86A6A;
}
:root[data-theme="dark"] .sv-tplnote b[data-v-e88dd21b] { color: #9FB6F2;
}

/* lista */
:root[data-theme="dark"] .sv-item[data-v-e88dd21b]:hover { border-color: #2A3E6E;
}
:root[data-theme="dark"] .badge.ok[data-v-e88dd21b] { background: #12291F; color: #2BBF7F;
}
:root[data-theme="dark"] .badge.sp[data-v-e88dd21b] { background: #2A2113; color: #E8B04B;
}
:root[data-theme="dark"] .badge.ad[data-v-e88dd21b] { background: #20305A; color: #9FB6F2;
}
:root[data-theme="dark"] .sv-addbtn[data-v-e88dd21b]:hover { background: #1B2534;
}

/* ficha: campos, toggle, seções */
:root[data-theme="dark"] .sv-field[data-v-e88dd21b]::placeholder { color: #6B7A90;
}
:root[data-theme="dark"] .sv-tgl .sw[data-v-e88dd21b] { background: #243244;
}
/* restatement: o override genérico do .sw acima ganha por especificidade —
   o estado LIGADO precisa vir depois pra continuar azul */
:root[data-theme="dark"] .sv-tgl input:checked + .sw[data-v-e88dd21b] { background: var(--marca);
}
:root[data-theme="dark"] .sv-subfld[data-v-e88dd21b] { border-left-color: #2A3E6E;
}
/* restatement: o .sv-ghost genérico do bloco acima ganha do .danger claro */
:root[data-theme="dark"] .sv-ghost.danger[data-v-e88dd21b] { color: #E86A6A; border-color: #4A2A2A;
}

.sh[data-v-f030308a] { margin-bottom: 18px; animation: cadFadeUp .34s ease both;
}
.sh-eyebrow[data-v-f030308a] { font-size: 15px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--acao);
}
.sh-row[data-v-f030308a] { display: flex; align-items: flex-end; gap: 14px; margin-top: 5px; flex-wrap: wrap;
}
.sh-lead[data-v-f030308a] { min-width: 0; flex: 1;
}
.sh-metric[data-v-f030308a] { font-size: clamp(23px, 5vw, 28px); font-weight: 800; letter-spacing: -.025em; line-height: 1.05; margin: 0; color: #141922;
}
.sh-sub[data-v-f030308a] { font-size: 16px; color: #5B6572; margin: 6px 0 0;
}
.sh-actions[data-v-f030308a] { display: flex; gap: 8px; flex-wrap: wrap; align-items: center;
}
@media (max-width: 560px){
.sh-row[data-v-f030308a] { align-items: stretch;
}
.sh-actions[data-v-f030308a] { width: 100%;
}
}

.ac[data-v-34be3077] {
  background: #fff; border: 1px solid #E2E5EA; border-radius: 14px;
  padding: 14px 15px; margin-bottom: 10px;
}
/* A barra do tipo orienta, não grita: tom suave, o suficiente para diferenciar
   de relance sem competir com o texto. */
.ac.problema[data-v-34be3077] { border-left: 3px solid #E0A79F;
}
.ac.pedido[data-v-34be3077]   { border-left: 3px solid #D9BE84;
}
.ac.duvida[data-v-34be3077]   { border-left: 3px solid #A9BDF0;
}
.ac header[data-v-34be3077] { display: flex; align-items: center; gap: 9px;
}
.ac header b[data-v-34be3077] { font-size: 17px; color: #17233A;
}
.ac-tipo[data-v-34be3077] {
  font-size: 15px; color: #697082; background: #F0F2F5;
  border-radius: 99px; padding: 2px 9px;
}
/* O texto é a ESTRELA do cartão: é o que a pessoa lê para decidir. Maior que
   o resto, e curto — o backend já tira o rótulo do motor e encurta. */
.ac-resumo[data-v-34be3077] { margin: 8px 0 0; font-size: 18px; color: #17233A; line-height: 1.45;
}
.ac-meta[data-v-34be3077] {
  display: flex; flex-wrap: wrap; gap: 7px; align-items: center;
  margin-top: 9px; font-size: 15px; color: #8A93A3;
}
.ac-chave[data-v-34be3077] {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  background: #F0F2F5; border-radius: 6px; padding: 1px 7px; color: #5B6572;
}
.ac-reab[data-v-34be3077] { color: var(--st-atrasado-tinta); font-weight: 700;
}
.ac-validado[data-v-34be3077] { color: #1B7A4B; font-weight: 700;
}
.ac-acoes[data-v-34be3077] { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px;
}
.ac-bt[data-v-34be3077] {
  border: 1px solid #E2E5EA; background: #fff; border-radius: 10px;
  padding: 9px 13px; font: inherit; font-size: 15px; cursor: pointer;
  color: #17233A; text-decoration: none;
}
.ac-bt[data-v-34be3077]:hover { background: #F7F8FA;
}
/* HIERARQUIA POR PESO, NÃO POR SATURAÇÃO.
   Três botões sólidos por cartão, numa lista de cartões, viram parede de cor —
   e cor forte demais cansa quem abre isto todo dia. A ação principal continua
   sendo a mais visível, só que em tom suave; as outras ficam tonais e fantasma. */
.ac-bt.zap[data-v-34be3077] {
  background: #E9F5EE; border-color: #BFE0CE; color: #1B7A4B; font-weight: 700;
}
.ac-bt.zap[data-v-34be3077]:hover { background: #DCEEE4; border-color: #9FCFB5;
}
.ac-bt.ok[data-v-34be3077] {
  background: #EEF3FE; border-color: #D7E3F8; color: var(--azul-900); font-weight: 700;
}
.ac-bt.ok[data-v-34be3077]:hover { background: #E2EBFD; border-color: #BFD3F3;
}
.ac-bt.fraco[data-v-34be3077] { border-color: transparent; color: #8A93A3;
}
.ac-bt.fraco[data-v-34be3077]:hover { background: #F0F2F5; color: #5B6572;
}

.as[data-v-69ffc9f0] { max-width: 760px; margin: 2rem auto; padding: 0 1.5rem 3rem;
}
.as-estado[data-v-69ffc9f0] { font-size: 16px; color: #697082;
}
.as-vazio[data-v-69ffc9f0] {
  background: #E9F5EE; border: 1px solid #BFE0CE; border-radius: 14px;
  padding: 20px; font-size: 16px; color: #1B7A4B; line-height: 1.55;
}
.as-vazio b[data-v-69ffc9f0] { display: block; font-size: 17px; margin-bottom: 4px;
}
.as-grupo[data-v-69ffc9f0] { margin-top: 22px;
}
.as-grupo h3[data-v-69ffc9f0] {
  font-size: 15px; text-transform: uppercase; letter-spacing: .5px;
  color: #8A93A3; margin: 0 0 10px; display: flex; align-items: center; gap: 8px;
}
.as-grupo h3 span[data-v-69ffc9f0] {
  background: var(--acao-tonal); color: var(--azul-900); border-radius: 99px;
  padding: 1px 9px; font-size: 15px; letter-spacing: 0;
}
.as-erro[data-v-69ffc9f0] {
  font-size: 15px; color: var(--st-atrasado-tinta); background: #F9EFED;
  border-radius: 10px; padding: 10px 12px; margin-top: 14px;
}

.pp-head[data-v-cb3100ba] { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; margin-bottom: 12px;
}
.pp-head h2[data-v-cb3100ba] { font-size: 18px; margin: 0;
}
.pp-sub[data-v-cb3100ba] { color: var(--texto-2); font-size: 15px; margin-top: 3px; line-height: 1.45;
}
.pp-saved[data-v-cb3100ba] { font-size: 15px; font-weight: 800; color: #1fa564; opacity: 0; transition: opacity .25s; white-space: nowrap;
}
.pp-saved.show[data-v-cb3100ba] { opacity: 1;
}
.pp-loading[data-v-cb3100ba] { color: #8A97A8; font-size: 15px;
}
.pp-row[data-v-cb3100ba] { display: flex; align-items: center; gap: 11px; background: #fff; border: 1.5px solid var(--linha); border-radius: 13px; padding: 11px 13px; margin-bottom: 8px; cursor: pointer;
}
.pp-row input[data-v-cb3100ba] { display: none;
}
.pp-em[data-v-cb3100ba] { font-size: 19px; flex: none;
}
.pp-tt[data-v-cb3100ba] { flex: 1; font-weight: 800; font-size: 15px; color: var(--texto);
}
.pp-tt small[data-v-cb3100ba] { display: block; font-weight: 600; color: #8A97A8; font-size: 15px; margin-top: 1px;
}
.pp-sw[data-v-cb3100ba] { width: 42px; height: 25px; border-radius: 99px; background: #D6DEE9; position: relative; flex: none; transition: background .2s;
}
.pp-sw[data-v-cb3100ba]::after { content: ''; position: absolute; top: 3px; left: 3px; width: 19px; height: 19px; border-radius: 50%; background: #fff; transition: left .2s;
}
.pp-row input:checked + .pp-sw[data-v-cb3100ba], .pp-sw.on[data-v-cb3100ba] { background: #1fa564;
}
.pp-row input:checked + .pp-sw[data-v-cb3100ba]::after, .pp-sw.on[data-v-cb3100ba]::after { left: 20px;
}
.pp-row.locked[data-v-cb3100ba] { cursor: default; background: #F8FAFC;
}
.pp-row.locked .pp-sw[data-v-cb3100ba] { opacity: .65;
}
.pp-quiet[data-v-cb3100ba] { border-top: 1px dashed var(--linha); margin-top: 12px; padding-top: 12px;
}
.pp-qh[data-v-cb3100ba] { display: flex; align-items: center; gap: 8px; margin: 10px 0 0 44px; font-size: 15px; color: var(--texto-2); font-weight: 700;
}
.pp-qh input[data-v-cb3100ba] { border: 1.5px solid var(--linha); border-radius: 10px; padding: 8px 10px; font: inherit; font-size: 15px; background: #fff;
}
.pp-test[data-v-cb3100ba] { margin-top: 14px; border: 1.5px solid var(--acao-tonal); background: #F3F7FE; color: var(--azul-900); font: inherit; font-weight: 800; font-size: 15px; border-radius: 12px; padding: 11px 16px; cursor: pointer;
}
.pp-test[data-v-cb3100ba]:disabled { opacity: .6;
}
.pp-testmsg[data-v-cb3100ba] { margin-top: 8px; font-size: 15px; color: var(--texto-2);
}
:root[data-theme="dark"] .pp-row[data-v-cb3100ba] { background: #151E2B; border-color: #243244;
}
:root[data-theme="dark"] .pp-row.locked[data-v-cb3100ba] { background: #1B2534;
}
:root[data-theme="dark"] .pp-tt[data-v-cb3100ba] { color: #EAF0F8;
}
:root[data-theme="dark"] .pp-qh input[data-v-cb3100ba] { background: #151E2B; border-color: #243244; color: #EAF0F8;
}
:root[data-theme="dark"] .pp-test[data-v-cb3100ba] { background: #20305A; border-color: #2B3E6E; color: #9FB6F2;
}
/* complemento dark (o contra-filtro da inversão global mora no .av da AvisosView,
   que embrulha este componente — aqui só faltavam os pares escuros) */
:root[data-theme="dark"] .pp-head h2[data-v-cb3100ba] { color: #EAF0F8;
}
:root[data-theme="dark"] .pp-sub[data-v-cb3100ba], :root[data-theme="dark"] .pp-qh[data-v-cb3100ba],
:root[data-theme="dark"] .pp-testmsg[data-v-cb3100ba], :root[data-theme="dark"] .pp-loading[data-v-cb3100ba],
:root[data-theme="dark"] .pp-tt small[data-v-cb3100ba] { color: #9AA7B8;
}
:root[data-theme="dark"] .pp-saved[data-v-cb3100ba] { color: #2BBF7F;
}
:root[data-theme="dark"] .pp-sw[data-v-cb3100ba] { background: #243244;
}
/* restatement: o override genérico do .pp-sw acima ganha por especificidade —
   o estado LIGADO precisa vir depois pra continuar verde */
:root[data-theme="dark"] .pp-row input:checked + .pp-sw[data-v-cb3100ba], :root[data-theme="dark"] .pp-sw.on[data-v-cb3100ba] { background: #2BBF7F;
}
:root[data-theme="dark"] .pp-quiet[data-v-cb3100ba] { border-color: #243244;
}

.av[data-v-a08b9815] { position: absolute; inset: 0; z-index: 8; display: flex; flex-direction: column; background: #F4F7FB; overflow: hidden;
}
@media (min-width: 861px) {
.av[data-v-a08b9815] { left: 74px; top: var(--topbar-h, 48px);
}
}
.av-top[data-v-a08b9815] { display: flex; align-items: center; gap: 12px; padding: 12px 16px; background: #fff; border-bottom: 1px solid var(--linha); flex: none;
}
.av-back[data-v-a08b9815] { border: 1px solid var(--linha); background: #fff; color: var(--texto-2); font-weight: 750; font-size: 15px; padding: 8px 15px; border-radius: 10px; cursor: pointer; font-family: inherit;
}
.av-title[data-v-a08b9815] { font-weight: 800; font-size: 18px; color: var(--texto);
}
.av-scroll[data-v-a08b9815] { flex: 1; overflow: auto; padding: 18px 16px 40px;
}
.av-wrap[data-v-a08b9815] { max-width: 620px; margin: 0 auto;
}
@media (max-width: 860px) {
.av[data-v-a08b9815] { position: relative; inset: auto; min-height: 100vh; overflow: visible;
}
}
:root[data-theme="dark"] .av[data-v-a08b9815] { background: #0F1622;
}
:root[data-theme="dark"] .av-top[data-v-a08b9815] { background: #151E2B; border-color: #243244;
}
:root[data-theme="dark"] .av-title[data-v-a08b9815] { color: #EAF0F8;
}
/* O dark global do app é uma INVERSÃO de filtro no body (styles/dark-theme.css);
   ela re-invertia os overrides escuros de volta pro claro. O contra-filtro
   (mesma conta do .no-invert) anula a inversão aqui e deixa a paleta valer.
   color-scheme: dark escurece os controles nativos (type=time do PushPrefs). */
:root[data-theme="dark"] .av[data-v-a08b9815] { filter: invert(1.087) hue-rotate(180deg); color-scheme: dark; color: #EAF0F8;
}
:root[data-theme="dark"] .av-back[data-v-a08b9815] { background: #1B2534; border-color: #243244; color: #9AA7B8;
}

/* ── trilho desktop ── */
.sn[data-v-3a6408dd] {
  position: fixed; left: 0; top: 0; bottom: 0; z-index: 60;
  width: 74px; background: #fff; border-right: 1px solid var(--linha);
  display: flex; flex-direction: column; padding: 12px 11px; overflow: hidden;
  transition: width .28s cubic-bezier(.3, 1, .4, 1);
}
.sn[data-v-3a6408dd]:hover, .sn.pinned[data-v-3a6408dd] { width: 255px; box-shadow: 18px 0 40px rgba(24, 38, 66, .08);
}

/* Sem caixa: o ícone fala sozinho, igual aos itens do próprio menu. */
.sn-burger[data-v-3a6408dd] {
  width: 36px; height: 36px; flex: none; border: none; background: none;
  border-radius: 11px; display: grid; place-items: center; cursor: pointer;
  color: var(--texto-2); margin: 2px 8px 16px;
}
.sn.pinned .sn-burger[data-v-3a6408dd] { background: var(--acao-tonal); color: var(--azul-900);
}
.sn-it[data-v-3a6408dd] {
  display: flex; align-items: center; gap: 14px; padding: 12px 13px;
  border-radius: 14px; color: var(--texto-2); font-size: 15.5px; font-weight: 750;
  cursor: pointer; min-width: 230px; margin-bottom: 3px; position: relative;
  border: none; background: none; text-align: left; font-family: inherit;
  transition: background .15s;
}
/* O SVG herda a cor do botão (cinza → azul quando ativo) — sem filtro. */
.sn-it .em[data-v-3a6408dd] { line-height: 1; flex: none; width: 26px; display: inline-flex; align-items: center; justify-content: center;
}
.sn-it .lb[data-v-3a6408dd] { opacity: 0; transition: opacity .2s .05s; white-space: nowrap;
}
.sn:hover .sn-it .lb[data-v-3a6408dd], .sn.pinned .sn-it .lb[data-v-3a6408dd] { opacity: 1;
}
.sn-it[data-v-3a6408dd]:hover { background: #ECF1F7;
}
.sn-burger[data-v-3a6408dd]:hover { background: #ECF1F7; color: var(--azul-900);
}
.sn-it.on[data-v-3a6408dd] { background: var(--acao-tonal); color: var(--azul-900);
}
.sn-sep[data-v-3a6408dd] { height: 1px; background: var(--linha); margin: 10px 8px; min-width: 210px; flex: none;
}
.sn-it.cad .st[data-v-3a6408dd] { position: absolute; top: 8px; left: 34px; width: 10px; height: 10px; border-radius: 50%; background: #1fa564; border: 2px solid #fff;
}
.sn:hover .sn-it.cad .st[data-v-3a6408dd], .sn.pinned .sn-it.cad .st[data-v-3a6408dd] { opacity: 0;
}
.sn-it.cad .stx[data-v-3a6408dd] { margin-left: auto; font-size: 15px; font-weight: 750; color: #1fa564; opacity: 0; transition: opacity .2s .05s; white-space: nowrap;
}
.sn:hover .sn-it.cad .stx[data-v-3a6408dd], .sn.pinned .sn-it.cad .stx[data-v-3a6408dd] { opacity: 1;
}

/* ── gaveta mobile ── */
.sn-overlay[data-v-3a6408dd] { position: fixed; inset: 0; z-index: 200; background: rgba(15, 23, 42, .45);
}
.sn-drawer[data-v-3a6408dd] {
  position: absolute; top: 0; bottom: 0; left: 0; width: min(78vw, 300px);
  background: #fff; border-right: 1px solid var(--linha); padding: 18px 12px;
  display: flex; flex-direction: column; overflow-y: auto;
  animation: snSlide-3a6408dd .28s cubic-bezier(.3, 1, .4, 1);
}
@keyframes snSlide-3a6408dd {
from { transform: translateX(-102%);
}
}
.sn-brand[data-v-3a6408dd] { display: flex; align-items: center; gap: 9px; font-size: 17px; padding: 2px 10px 16px; color: var(--texto);
}
.sn-it.open[data-v-3a6408dd] { min-width: 0;
}
.sn-it.open .lb[data-v-3a6408dd], .sn-it.open .stx[data-v-3a6408dd] { opacity: 1;
}
.sn-fade-enter-active[data-v-3a6408dd], .sn-fade-leave-active[data-v-3a6408dd] { transition: opacity .22s;
}
.sn-fade-enter-from[data-v-3a6408dd], .sn-fade-leave-to[data-v-3a6408dd] { opacity: 0;
}

/* trilho some no mobile (a gaveta assume) */
@media (max-width: 860px) {
.sn[data-v-3a6408dd] { display: none;
}
}

/* tema escuro (tokens do app) */
:root[data-theme="dark"] .sn[data-v-3a6408dd], :root[data-theme="dark"] .sn-drawer[data-v-3a6408dd] { background: #151E2B; border-color: #243244;
}
:root[data-theme="dark"] .sn-it[data-v-3a6408dd] { color: #9AA7B8;
}
:root[data-theme="dark"] .sn-it[data-v-3a6408dd]:hover { background: #1B2534;
}
:root[data-theme="dark"] .sn-it.on[data-v-3a6408dd] { background: #20305A; color: #9FB6F2;
}
:root[data-theme="dark"] .sn-sep[data-v-3a6408dd] { background: #243244;
}
:root[data-theme="dark"] .sn-burger[data-v-3a6408dd] { background: #1B2534; color: #9AA7B8;
}
:root[data-theme="dark"] .sn-brand[data-v-3a6408dd] { color: #EAF0F8;
}
/* O dark global do app é uma INVERSÃO de filtro no body (styles/dark-theme.css);
   ela re-invertia os overrides escuros acima de volta pro claro. O contra-filtro
   (mesma conta do .no-invert) anula a inversão aqui e deixa a paleta valer. */
:root[data-theme="dark"] .sn[data-v-3a6408dd], :root[data-theme="dark"] .sn-overlay[data-v-3a6408dd] { filter: invert(1.087) hue-rotate(180deg);
}
:root[data-theme="dark"] .sn[data-v-3a6408dd]:hover, :root[data-theme="dark"] .sn.pinned[data-v-3a6408dd] { box-shadow: 18px 0 40px rgba(0, 0, 0, .55);
}
:root[data-theme="dark"] .sn.pinned .sn-burger[data-v-3a6408dd] { background: #20305A; color: #9FB6F2;
}
:root[data-theme="dark"] .sn-it.cad .st[data-v-3a6408dd] { background: #2BBF7F; border-color: #151E2B;
}
:root[data-theme="dark"] .sn-it.cad .stx[data-v-3a6408dd] { color: #2BBF7F;
}
:root[data-theme="dark"] .sn-overlay[data-v-3a6408dd] { background: rgba(0, 0, 0, .55);
}

/* ── DESIGN DA COMANDA ──────────────────────────────────────────────────────
   Paleta e desenho vindos do protótipo `cadence-aux/Comanda.html`, aplicados
   sobre a tela real (que faz muito mais que o protótipo: SSE, cancelamento com
   motivos do iFood, pausa da loja, negociações, conta aberta, impressão).

   A ideia que organiza tudo: CADA ETAPA TEM UMA COR TERROSA PRÓPRIA, e ela
   aparece sempre nos mesmos três lugares — a bolinha do título da coluna, a
   pílula de estado e o botão que leva à etapa seguinte. Assim a cor deixa de
   ser enfeite e vira o jeito de saber onde o pedido está sem ler.

     chegou     var(--st-atrasado-tinta)  terroso — precisa de você agora
     cozinha    #8A6B3B  areia   — está no fogo
     pronto     var(--acao)  azul    — pode sair
     na rua     #4E8C7A  verde   — já foi

   Os neutros são frios (viés azulado) para as cores terrosas das etapas terem
   contra o que se destacar. */
[data-v-7ef02a3d]:host, .cm[data-v-7ef02a3d] {
  --cm-tinta:    var(--texto);
  --cm-tinta-2:  #3D4655;
  --cm-tinta-3:  var(--texto-2);
  --cm-fraco:    #8A93A3;
  --cm-fraco-2:  #AEB8C6;
  --cm-fundo:    var(--fundo);
  --cm-papel:    #FFFFFF;
  --cm-papel-2:  #F7F8FA;
  --cm-papel-3:  #FDFDFE;
  --cm-linha:    var(--linha);
  --cm-linha-2:  #EFF3F8;

  --cm-azul:     var(--acao);
  --cm-azul-2:   var(--marca);
  --cm-azul-bg:  var(--acao-tonal);
  --cm-azul-br:  #CFDEEE;
  --cm-azul-hv:  #DFEAF5;

  --cm-terra:    var(--st-atrasado-tinta);
  --cm-terra-bg: #F6E3E0;
  --cm-terra-br: #E4C7C2;
  --cm-terra-hv: #F0D8D3;

  --cm-areia:    #8A6B3B;
  --cm-areia-bg: #F4EDE0;
  --cm-areia-br: #E4D6BC;
  --cm-areia-hv: #EFE4D0;

  --cm-verde:    #4E8C7A;
  --cm-verde-fg: #3A6E5E;
  --cm-verde-bg: #E6F1EE;
  --cm-verde-br: #C8DFD7;
  --cm-verde-hv: #DAEBE5;

  --cm-sombra:   0 1px 2px rgba(20, 25, 34, 0.05);
  --cm-sombra-2: 0 1px 2px rgba(20, 25, 34, 0.06);
  --cm-sobe:     0 12px 26px -18px rgba(20, 25, 34, 0.4);
}
.cm[data-v-7ef02a3d] {
  min-height: 100%;
  padding: 0 0 70px;
  background: var(--cm-fundo);
  color: var(--cm-tinta);
  font-family: 'Instrument Sans', 'Baloo 2', system-ui, -apple-system, sans-serif;
}

/* ── TOPO ─────────────────────────────────────────────────────────────────
   Gruda no alto: no pico a pessoa rola a lista e ainda precisa do som, da troca
   de visão e do "pausar" à mão. */
.cm-top[data-v-7ef02a3d] {
  position: sticky; top: 0; z-index: 20;
  display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
  padding: 14px 28px;
  background: var(--cm-papel);
  border-bottom: 1px solid var(--cm-linha);
  box-shadow: 0 1px 3px rgba(20, 25, 34, 0.05);
}
.cm-title[data-v-7ef02a3d] {
  display: flex; align-items: baseline; gap: 12px;
  font-weight: 700; font-size: 22px; letter-spacing: -0.02em;
  margin-right: auto;
}
.cm-title small[data-v-7ef02a3d] {
  display: inline-flex; align-items: center; gap: 7px;
  font-size: 15.5px; font-weight: 400; color: var(--cm-tinta-3);
}
/* A loja aberta/fechada é uma pílula, não um texto solto: é estado, e estado
   se lê de relance. */
.cm-aberta[data-v-7ef02a3d], .cm-fechada[data-v-7ef02a3d] {
  display: inline-flex; align-items: center; gap: 6px;
  border-radius: 100px; padding: 3px 11px;
  font-weight: 600; font-size: 15px;
}
.cm-aberta[data-v-7ef02a3d] { background: var(--cm-verde-bg); color: var(--cm-verde-fg);
}
.cm-aberta[data-v-7ef02a3d]::before {
  content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--cm-verde);
}
.cm-fechada[data-v-7ef02a3d] { background: var(--cm-terra-bg); color: var(--cm-terra);
}
.cm-fechada[data-v-7ef02a3d]::before {
  content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--cm-terra);
}
.cm-som[data-v-7ef02a3d], .cm-atualizar[data-v-7ef02a3d], .cm-btn.claro[data-v-7ef02a3d], .cm-lote[data-v-7ef02a3d] {
  display: inline-flex; align-items: center; gap: 8px;
  border: 1px solid var(--cm-linha); border-radius: 8px;
  background: var(--cm-papel); color: var(--cm-tinta-3);
  padding: 9px 15px; font: inherit; font-weight: 600; font-size: 15.5px;
  cursor: pointer; transition: background .15s, border-color .15s;
}
.cm-som[data-v-7ef02a3d]:hover, .cm-btn.claro[data-v-7ef02a3d]:hover, .cm-lote[data-v-7ef02a3d]:hover { background: var(--cm-papel-2);
}
.cm-som.on[data-v-7ef02a3d] { color: var(--cm-verde-fg);
}

/* "atualiza sozinha" não é botão de aparência: é o sinal de que a tela está
   viva. A bolinha pulsa; parada, ninguém confia no que está vendo. */
.cm-atualizar[data-v-7ef02a3d] {
  border: none; background: none; color: var(--cm-fraco);
  font-weight: 400; font-size: 15px; padding-right: 4px;
}
.cm-atualizar[data-v-7ef02a3d]:hover { background: none; color: var(--cm-tinta-3);
}
.cm-pulso[data-v-7ef02a3d] {
  width: 7px; height: 7px; border-radius: 50%; background: var(--cm-fraco-2);
}
.cm-pulso.vivo[data-v-7ef02a3d] { background: var(--cm-verde); animation: cm-pulsar-7ef02a3d 2s ease-in-out infinite;
}
@keyframes cm-pulsar-7ef02a3d {
0%, 100% { opacity: .35; transform: scale(.85);
}
50%      { opacity: 1;   transform: scale(1);
}
}

/* Mural × Lista: um controle segmentado, com a escolhida em relevo. */
.cm-visao[data-v-7ef02a3d] { display: flex; gap: 0; background: var(--cm-linha-2); border-radius: 9px; padding: 3px;
}
.cm-visao-b[data-v-7ef02a3d] {
  border: none; background: none; color: var(--cm-tinta-3);
  border-radius: 7px; padding: 8px 15px;
  font: inherit; font-weight: 600; font-size: 15.5px; cursor: pointer;
  transition: background .15s, color .15s, box-shadow .15s;
}
.cm-visao-b.on[data-v-7ef02a3d] {
  background: var(--cm-papel); color: var(--cm-tinta);
  box-shadow: 0 1px 3px rgba(20, 25, 34, .12);
}
.cm-contagem[data-v-7ef02a3d] { font-size: 15px; color: var(--cm-fraco);
}
.cm-pausa-menu[data-v-7ef02a3d] {
  display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
  margin: 14px 28px 0; padding: 14px 18px;
  background: var(--cm-papel); border: 1px solid var(--cm-linha);
  border-radius: 12px; box-shadow: var(--cm-sombra);
  font-size: 15.5px; color: var(--cm-tinta-3);
}

/* ── AVISOS ───────────────────────────────────────────────────────────────
   Todos com o mesmo desenho: cartão branco, barra de 4px na cor do assunto e
   um ícone em quadrado arredondado. A barra é o que os diferencia à distância —
   terra = você perdeu algo, areia = tem prazo correndo. */
.cm-erro[data-v-7ef02a3d], .cm-perda[data-v-7ef02a3d], .cm-pausada[data-v-7ef02a3d], .cm-negoc-item[data-v-7ef02a3d] {
  display: flex; align-items: center; gap: 15px;
  margin: 0 28px 14px; padding: 16px 20px;
  background: var(--cm-papel);
  border: 1px solid var(--cm-linha);
  border-radius: 12px; box-shadow: var(--cm-sombra);
  font-size: 15.5px; color: var(--cm-tinta-3);
}
.cm-erro[data-v-7ef02a3d]   { border-left: 4px solid var(--cm-terra); color: var(--cm-terra); font-weight: 600;
}
.cm-perda[data-v-7ef02a3d]  { border-left: 4px solid var(--cm-terra);
}
.cm-pausada[data-v-7ef02a3d]{ border-left: 4px solid var(--cm-areia);
}
.cm-negoc-item[data-v-7ef02a3d] { border-left: 4px solid var(--cm-areia); margin: 0 0 12px;
}
.cm-negoc[data-v-7ef02a3d] { display: flex; flex-direction: column;
}
.cm-perda-txt[data-v-7ef02a3d], .cm-negoc-txt[data-v-7ef02a3d] { flex: 1; display: flex; flex-direction: column; gap: 3px;
}
.cm-perda-txt b[data-v-7ef02a3d], .cm-negoc-txt b[data-v-7ef02a3d] { font-weight: 700; font-size: 17px; color: var(--cm-tinta);
}
.cm-perda-txt span[data-v-7ef02a3d], .cm-negoc-txt span[data-v-7ef02a3d] { font-size: 15.5px; line-height: 1.55; color: var(--cm-tinta-3);
}
.cm-prazo[data-v-7ef02a3d] { color: var(--cm-areia) !important; font-weight: 700;
}
.cm-pausada[data-v-7ef02a3d] { justify-content: space-between;
}

/* ── ABAS ─────────────────────────────────────────────────────────────────
   Sublinhado na ativa, e não pílula: a barra de cima já tem pílulas demais
   (som, visão, pausar) e mais uma faria as três disputarem o olho. */
.cm-abas[data-v-7ef02a3d] {
  display: flex; gap: 4px; max-width: 1420px; margin: 0 auto;
  padding: 18px 28px 0; border-bottom: 1px solid var(--cm-linha);
}
.cm-aba[data-v-7ef02a3d] {
  display: inline-flex; align-items: center; gap: 8px;
  border: none; background: none; color: var(--cm-tinta-3);
  padding: 11px 16px; margin-bottom: -1px;
  border-bottom: 2px solid transparent;
  font: inherit; font-weight: 600; font-size: 15.5px; cursor: pointer;
  transition: color .15s, border-color .15s;
}
.cm-aba[data-v-7ef02a3d]:hover { color: var(--cm-tinta);
}
.cm-aba.on[data-v-7ef02a3d] { color: var(--cm-tinta); border-bottom-color: var(--cm-azul);
}
.cm-aba i[data-v-7ef02a3d] {
  font-style: normal; background: var(--cm-linha-2); border-radius: 100px;
  padding: 1px 8px; font-weight: 700; font-size: 15px; color: var(--cm-tinta-3);
}
.cm-aba.on i[data-v-7ef02a3d] { background: var(--cm-azul-bg); color: var(--cm-azul);
}
/* Reclamação tem prazo do outro lado: a aba precisa chamar mesmo fechada. */
.cm-aba.alerta i[data-v-7ef02a3d] { background: var(--cm-areia-bg); color: var(--cm-areia);
}
.cm-aba.alerta.on[data-v-7ef02a3d] { border-bottom-color: var(--cm-areia);
}
.cm-aba.alerta.on i[data-v-7ef02a3d] { background: var(--cm-areia-bg); color: var(--cm-areia);
}
.cm-negoc[data-v-7ef02a3d], .cm-clientes[data-v-7ef02a3d], .cm-analises[data-v-7ef02a3d] { max-width: 1420px; margin: 0 auto; padding: 22px 28px 0;
}

/* ── HISTÓRICO ────────────────────────────────────────────────────────────
   Blocos com respiro entre si: é tela de ler sentado, não de operar em pé. */
.cm-periodo[data-v-7ef02a3d] { display: flex; gap: 6px; margin-bottom: 20px;
}
.cm-per-b[data-v-7ef02a3d] {
  border: 1px solid var(--cm-linha); border-radius: 100px;
  background: var(--cm-papel); color: var(--cm-tinta-3);
  padding: 7px 16px; font: inherit; font-weight: 600; font-size: 15px; cursor: pointer;
  transition: all .15s;
}
.cm-per-b[data-v-7ef02a3d]:hover { background: var(--cm-papel-2);
}
.cm-per-b.on[data-v-7ef02a3d] { background: var(--cm-azul-bg); color: var(--cm-azul); border-color: #BCD0E6;
}
.cm-cartoes[data-v-7ef02a3d] {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px; margin-bottom: 30px;
}
.cm-cartao[data-v-7ef02a3d] {
  background: var(--cm-papel); border: 1px solid var(--cm-linha);
  border-radius: 14px; padding: 18px 20px;
  display: flex; flex-direction: column; gap: 4px; box-shadow: var(--cm-sombra);
}
.cm-cartao b[data-v-7ef02a3d] { font-size: 26px; font-weight: 700; letter-spacing: -0.02em;
}
.cm-ct-rot[data-v-7ef02a3d] {
  font-size: 15px; font-weight: 600; letter-spacing: .04em;
  text-transform: uppercase; color: var(--cm-fraco);
}
.cm-ct-pe[data-v-7ef02a3d] { font-size: 15px; color: var(--cm-tinta-3);
}
/* O único cartão que acusa a operação fica em terra — os outros são fatos, este
   é uma conta a pagar. */
.cm-cartao.ruim[data-v-7ef02a3d] { border-left: 4px solid var(--cm-terra);
}
.cm-cartao.ruim b[data-v-7ef02a3d] { color: var(--cm-terra);
}
.cm-an-tit[data-v-7ef02a3d] {
  margin: 0 0 12px; font-size: 17.5px; font-weight: 700; letter-spacing: -0.01em;
}
.cm-an-vazio[data-v-7ef02a3d] {
  margin: 0 0 26px; padding: 26px; text-align: center;
  background: var(--cm-papel); border: 1px solid var(--cm-linha); border-radius: 12px;
  font-size: 15px; color: var(--cm-fraco);
}
.cm-duplo[data-v-7ef02a3d] {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 26px; margin-bottom: 30px;
}

/* BARRAS. Sem biblioteca de gráfico: são divs com altura em porcentagem, e o
   dado inteiro está no title de cada uma. */
.cm-barras[data-v-7ef02a3d] {
  display: flex; align-items: flex-end; gap: 5px;
  height: 190px; margin-bottom: 30px; padding: 14px 16px 0;
  background: var(--cm-papel); border: 1px solid var(--cm-linha);
  border-radius: 14px; overflow-x: auto;
}
.cm-barras.baixas[data-v-7ef02a3d] { height: 150px; margin-bottom: 0;
}
.cm-barra[data-v-7ef02a3d] {
  flex: 1 0 26px; display: flex; flex-direction: column; align-items: center;
  justify-content: flex-end; height: 100%; gap: 4px; min-width: 26px;
}
.cm-br-topo[data-v-7ef02a3d] { font-size: 15px; font-weight: 600; color: var(--cm-tinta-3);
}
.cm-br-corpo[data-v-7ef02a3d] {
  width: 100%; max-width: 34px; border-radius: 5px 5px 0 0;
  background: var(--cm-azul); opacity: .82; transition: opacity .15s;
}
.cm-barra:hover .cm-br-corpo[data-v-7ef02a3d] { opacity: 1;
}
.cm-br-pe[data-v-7ef02a3d] { font-size: 15px; color: var(--cm-fraco); white-space: nowrap;
}

/* RANKING. Nome, barra e número — a barra existe para comparar de relance, o
   número para conferir. */
.cm-ranking[data-v-7ef02a3d] {
  list-style: none; margin: 0; padding: 14px 18px;
  background: var(--cm-papel); border: 1px solid var(--cm-linha); border-radius: 14px;
}
.cm-ranking li[data-v-7ef02a3d] {
  display: grid; grid-template-columns: minmax(0, 1fr) 90px auto;
  gap: 12px; align-items: center; padding: 7px 0; font-size: 15.5px;
}
.cm-rk-nome[data-v-7ef02a3d] { overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.cm-rk-barra[data-v-7ef02a3d] { height: 8px; background: var(--cm-linha-2); border-radius: 100px; overflow: hidden;
}
.cm-rk-barra i[data-v-7ef02a3d] { display: block; height: 100%; background: var(--cm-azul); opacity: .75;
}
.cm-rk-val[data-v-7ef02a3d] { font-weight: 600; white-space: nowrap; text-align: right;
}
.cm-tabela[data-v-7ef02a3d] { width: 100%; border-collapse: collapse; background: var(--cm-papel); font-size: 15.5px;
}
.cm-tabela th[data-v-7ef02a3d] {
  text-align: left; padding: 12px 16px; background: var(--cm-papel-2);
  font-size: 15px; font-weight: 600; letter-spacing: .04em;
  text-transform: uppercase; color: var(--cm-fraco); border-bottom: 1px solid var(--cm-linha);
}
.cm-tabela td[data-v-7ef02a3d] { padding: 12px 16px; border-bottom: 1px solid var(--cm-linha-2);
}
.cm-tabela tr:last-child td[data-v-7ef02a3d] { border-bottom: none;
}
.cm-rolagem[data-v-7ef02a3d] {
  overflow-x: auto; border: 1px solid var(--cm-linha); border-radius: 14px;
  margin-bottom: 30px;
}

/* ── QUEM COMPRA ──────────────────────────────────────────────────────────
   O aviso vem ANTES da lista, e não como nota de rodapé: sem ele o dono lê
   nomes numa tela do Cadence e assume que pode mandar mensagem para eles. */
.cm-aviso-canal[data-v-7ef02a3d] {
  margin: 0 0 14px; padding: 13px 18px;
  background: var(--cm-areia-bg); border-radius: 10px;
  font-size: 15px; line-height: 1.5; color: var(--cm-areia);
}
.cm-comprador[data-v-7ef02a3d] {
  background: var(--cm-papel); border: 1px solid var(--cm-linha);
  border-radius: 12px; padding: 16px 20px; margin-bottom: 10px;
  box-shadow: var(--cm-sombra);
}
.cm-cp-topo[data-v-7ef02a3d] { display: flex; align-items: center; gap: 12px; margin-bottom: 6px;
}
.cm-cp-topo b[data-v-7ef02a3d] { font-weight: 700; font-size: 16.5px;
}
/* Há quanto tempo sumiu é o número que faz agir — por isso é pílula, e a cor
   sobe conforme o tempo passa. */
.cm-cp-sumiu[data-v-7ef02a3d] {
  margin-left: auto; border-radius: 100px; padding: 3px 11px;
  font-weight: 600; font-size: 15px; white-space: nowrap;
  background: var(--cm-linha-2); color: var(--cm-tinta-3);
}
.cm-cp-sumiu.atencao[data-v-7ef02a3d] { background: var(--cm-areia-bg); color: var(--cm-areia);
}
.cm-cp-sumiu.urgente[data-v-7ef02a3d] { background: var(--cm-terra-bg); color: var(--cm-terra);
}
.cm-cp-linha[data-v-7ef02a3d] {
  display: flex; flex-wrap: wrap; gap: 6px;
  font-size: 15px; line-height: 1.5; color: var(--cm-tinta-2);
}
.cm-cp-linha + .cm-cp-linha[data-v-7ef02a3d] { margin-top: 3px;
}
.cm-cp-linha b[data-v-7ef02a3d] { font-weight: 600;
}
.cm-enc-nada[data-v-7ef02a3d] { margin: 0; padding: 46px 20px; text-align: center; font-size: 15px; color: var(--cm-fraco);
}
.cm-corpo[data-v-7ef02a3d], .cm-mural[data-v-7ef02a3d], .cm-lista[data-v-7ef02a3d], .cm-encerrados[data-v-7ef02a3d] { max-width: 1420px; margin: 0 auto;
}
.cm-mural[data-v-7ef02a3d], .cm-lista[data-v-7ef02a3d] { padding: 22px 28px 0;
}

/* ── MURAL ────────────────────────────────────────────────────────────────
   Colunas que se ajustam sozinhas: com pouco pedido elas se alargam, com muito
   se estreitam até 250px e quebram para baixo. */
.cm-mural[data-v-7ef02a3d] {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 14px; align-items: start;
}
.cm-col[data-v-7ef02a3d] {
  background: var(--cm-papel-2); border: 1px solid var(--cm-linha);
  border-radius: 16px; padding: 6px 6px 10px; min-width: 0;
}
.cm-col h3[data-v-7ef02a3d] {
  display: flex; align-items: center; gap: 9px;
  margin: 0; padding: 12px 14px 11px;
  font-weight: 700; font-size: 16px; letter-spacing: -0.005em;
}
/* A bolinha da cor da etapa, o primeiro dos três lugares onde ela aparece. */
.cm-col h3[data-v-7ef02a3d]::before { content: ''; width: 9px; height: 9px; border-radius: 50%; background: var(--cm-fraco-2);
}
.cm-col:nth-child(1) h3[data-v-7ef02a3d]::before { background: var(--cm-terra);
}
.cm-col:nth-child(2) h3[data-v-7ef02a3d]::before { background: var(--cm-areia);
}
.cm-col:nth-child(3) h3[data-v-7ef02a3d]::before { background: var(--cm-azul);
}
.cm-col:nth-child(4) h3[data-v-7ef02a3d]::before { background: var(--cm-verde);
}
.cm-col h3 i[data-v-7ef02a3d] {
  margin-left: auto; font-style: normal;
  background: var(--cm-papel); border: 1px solid var(--cm-linha);
  border-radius: 100px; min-width: 22px; text-align: center;
  padding: 2px 8px; font-weight: 700; font-size: 15px; color: var(--cm-tinta-3);
}
.cm-vazio[data-v-7ef02a3d] {
  margin: 0; padding: 26px 16px 30px; text-align: center;
  font-size: 15px; color: var(--cm-fraco);
}

/* ── CARTÃO ───────────────────────────────────────────────────────────────
   Sobe um fio ao passar o mouse: dá o retorno de "isto é tocável" sem precisar
   de borda nem sombra pesada parada na tela. */
.cm-card[data-v-7ef02a3d] {
  background: var(--cm-papel); border: 1px solid var(--cm-linha);
  border-radius: 13px; margin: 0 6px 9px; padding: 13px 14px 12px;
  box-shadow: var(--cm-sombra-2); cursor: pointer;
  transition: box-shadow .2s, transform .2s, border-color .2s;
  animation: cm-entra-7ef02a3d .25s ease-out;
}
.cm-card[data-v-7ef02a3d]:hover { box-shadow: var(--cm-sobe); transform: translateY(-1px);
}
@keyframes cm-entra-7ef02a3d {
from { opacity: 0; transform: translateY(-6px);
}
to   { opacity: 1; transform: none;
}
}
/* Prestes a estourar o prazo: a borda avisa antes de a pessoa ler o relógio. */
.cm-card.urge[data-v-7ef02a3d] { border-color: #D6ADA7;
}
.cm-card-topo[data-v-7ef02a3d] { display: flex; align-items: center; gap: 8px; margin-bottom: 10px;
}
.cm-n[data-v-7ef02a3d] { font-weight: 700; font-size: 17.5px; letter-spacing: -0.01em;
}
.cm-canal[data-v-7ef02a3d], .cm-l-canal[data-v-7ef02a3d], .cm-enc-canal[data-v-7ef02a3d] { display: inline-flex; align-items: center; gap: 6px;
}
.cm-canal[data-v-7ef02a3d] {
  border: 1px solid var(--cm-linha); border-radius: 5px; padding: 2px 7px;
  font-weight: 600; font-size: 15px; color: var(--cm-tinta-3); letter-spacing: .04em;
}
.cm-teste[data-v-7ef02a3d] {
  border-radius: 5px; padding: 2px 7px; background: var(--cm-linha-2);
  font-weight: 600; font-size: 15px; color: var(--cm-fraco);
}
/* O RELÓGIO. Pílula, sempre à direita, sempre no mesmo lugar — é o número que
   decide a ação, e procurar por ele custa segundos que não existem no pico. */
.cm-t[data-v-7ef02a3d] {
  margin-left: auto; display: inline-flex; align-items: center; gap: 5px;
  border-radius: 100px; padding: 3px 10px;
  font-weight: 700; font-size: 15px; white-space: nowrap; flex-shrink: 0;
  background: var(--cm-linha-2); color: var(--cm-tinta-3);
}
.cm-t.calmo[data-v-7ef02a3d]   { background: var(--cm-linha-2);  color: var(--cm-tinta-3);
}
.cm-t.atencao[data-v-7ef02a3d] { background: var(--cm-areia-bg); color: var(--cm-areia);
}
.cm-t.urgente[data-v-7ef02a3d] { background: var(--cm-terra-bg); color: var(--cm-terra);
}
.cm-t.neutro[data-v-7ef02a3d]  { background: var(--cm-linha-2);  color: var(--cm-tinta-3);
}
.cm-agendado[data-v-7ef02a3d] {
  display: flex; align-items: center; gap: 8px;
  background: var(--cm-areia-bg); border-radius: 8px;
  padding: 8px 11px; margin-bottom: 10px;
  font-size: 15px; font-weight: 600; color: var(--cm-areia);
}
.cm-como[data-v-7ef02a3d] { display: flex; align-items: center; gap: 7px; margin-bottom: 10px;
}
.cm-tag[data-v-7ef02a3d] {
  display: inline-flex; align-items: center; gap: 6px;
  border-radius: 6px; padding: 4px 9px;
  font-weight: 600; font-size: 15px;
  background: var(--cm-linha-2); color: var(--cm-tinta-3);
}
.cm-tag.t-delivery[data-v-7ef02a3d] { background: var(--cm-azul-bg);  color: var(--cm-azul);
}
.cm-tag.t-takeout[data-v-7ef02a3d]  { background: var(--cm-areia-bg); color: var(--cm-areia);
}
.cm-tag.t-indoor[data-v-7ef02a3d]   { background: var(--cm-verde-bg); color: var(--cm-verde-fg);
}
.cm-quem[data-v-7ef02a3d] { font-size: 15px; color: var(--cm-fraco);
}
/* O convite para abrir. Discreto de propósito: é dica, não conteúdo. */
.cm-mais[data-v-7ef02a3d] { margin: 8px 0 0; font-size: 15px; color: var(--cm-fraco);
}

/* ITENS. A quantidade em azul é a âncora do olho: de relance a pessoa conta
   quantas pizzas saem, sem ler os nomes. */
.cm-itens[data-v-7ef02a3d] { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 5px;
}
.cm-itens > li[data-v-7ef02a3d] {
  display: block; font-size: 16px; line-height: 1.45;
  color: var(--cm-tinta); overflow-wrap: anywhere;
}
.cm-itens > li > b[data-v-7ef02a3d] { font-weight: 700; color: var(--cm-azul); margin-right: 6px;
}
.cm-opc[data-v-7ef02a3d] { list-style: none; margin: 2px 0 0; padding: 0 0 0 26px; width: 100%;
}
.cm-opc li[data-v-7ef02a3d] { font-size: 15px; line-height: 1.5; color: var(--cm-tinta-2);
}
.cm-opc li.fundo[data-v-7ef02a3d] { color: var(--cm-fraco);
}
.cm-g[data-v-7ef02a3d] { color: var(--cm-fraco);
}
.cm-obs[data-v-7ef02a3d] {
  width: 100%; margin: 4px 0 0 26px;
  font-size: 15px; font-weight: 600; color: var(--cm-areia);
}

/* DETALHE. Rótulo curto à esquerda, valor à direita — o formato de ficha, que
   se varre com o olho sem ler tudo. */
.cm-detalhe[data-v-7ef02a3d], .cm-dinheiro[data-v-7ef02a3d], .cm-conta[data-v-7ef02a3d] {
  border-top: 1px solid var(--cm-linha-2);
  margin-top: 11px; padding-top: 11px;
  background: var(--cm-papel-3);
  display: flex; flex-direction: column; gap: 7px;
  font-size: 15px; line-height: 1.5; color: var(--cm-tinta-2);
}
.cm-contato a[data-v-7ef02a3d] { color: var(--cm-azul-2); font-weight: 600; text-decoration: none;
}
.cm-contato a[data-v-7ef02a3d]:hover { color: var(--cm-azul);
}
.cm-contato.vencido[data-v-7ef02a3d] { color: var(--cm-fraco);
}
.cm-fregues[data-v-7ef02a3d], .cm-novo[data-v-7ef02a3d] { font-style: normal; font-size: 15px; color: var(--cm-fraco);
}
.cm-pag[data-v-7ef02a3d] { font-weight: 600; color: var(--cm-tinta-2);
}
.cm-desc[data-v-7ef02a3d] { color: var(--cm-verde-fg);
}
.cm-conta div[data-v-7ef02a3d] { display: flex; justify-content: space-between; align-items: center;
}
.cm-conta .soma[data-v-7ef02a3d] { border-top: 1px solid var(--cm-linha-2); padding-top: 9px;
}
.cm-conta .soma b[data-v-7ef02a3d] { font-weight: 700; font-size: 18px; letter-spacing: -0.01em;
}
.cm-conta .neg[data-v-7ef02a3d] { color: var(--cm-verde-fg);
}
.cm-prazo-entrega[data-v-7ef02a3d] {
  margin-top: 10px; border-radius: 8px; padding: 8px 11px;
  font-size: 15px; font-weight: 600;
  background: var(--cm-linha-2); color: var(--cm-tinta-3);
}
.cm-prazo-entrega.atencao[data-v-7ef02a3d] { background: var(--cm-areia-bg); color: var(--cm-areia);
}
.cm-prazo-entrega.urgente[data-v-7ef02a3d] { background: var(--cm-terra-bg); color: var(--cm-terra);
}

/* RODAPÉ do cartão: total, se já pagou, e imprimir. O selo de pagamento é o que
   evita o erro caro — o entregador cobrar de novo de quem já pagou. */
.cm-rodape[data-v-7ef02a3d] {
  display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
  border-top: 1px solid var(--cm-linha-2);
  margin-top: 11px; padding-top: 11px; margin-bottom: 10px;
}
.cm-valor[data-v-7ef02a3d] { font-weight: 700; font-size: 16.5px; letter-spacing: -0.01em; white-space: nowrap;
}
.cm-coleta[data-v-7ef02a3d] {
  border-radius: 5px; padding: 3px 9px; background: var(--cm-azul-bg);
  font-weight: 700; font-size: 15px; color: var(--cm-azul); letter-spacing: .04em;
}
.cm-pago[data-v-7ef02a3d], .cm-cobrar[data-v-7ef02a3d] {
  border-radius: 5px; padding: 3px 9px;
  font-weight: 600; font-size: 15px; white-space: nowrap;
}
.cm-pago[data-v-7ef02a3d]   { background: var(--cm-verde-bg); color: var(--cm-verde-fg);
}
.cm-cobrar[data-v-7ef02a3d] { background: var(--cm-areia-bg); color: var(--cm-areia); margin-left: auto;
}
.cm-aguardando[data-v-7ef02a3d] {
  border-radius: 8px; padding: 10px;
  background: var(--cm-areia-bg); color: var(--cm-areia);
  font-weight: 600; font-size: 15px; text-align: center;
}
.cm-pedecancel[data-v-7ef02a3d] {
  border-top: 1px solid var(--cm-linha-2); margin-top: 10px; padding-top: 11px;
}
.cm-pedecancel p[data-v-7ef02a3d] { margin: 0 0 8px; font-weight: 700; font-size: 15.5px; color: var(--cm-terra);
}

/* ── AÇÕES ────────────────────────────────────────────────────────────────
   O botão principal ocupa a largura do cartão e usa a cor da ETAPA SEGUINTE —
   o terceiro lugar onde a cor aparece. "Aceitar" é terroso, "Ficou pronto" é
   areia, "Saiu para entrega" é azul: a pessoa aprende o caminho pela cor. */
.cm-acoes[data-v-7ef02a3d] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
}
.cm-btn[data-v-7ef02a3d] {
  flex: 1 1 auto; min-width: 132px;
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  border: 1px solid var(--cm-azul-br); border-radius: 9px;
  background: var(--cm-azul-bg); color: var(--cm-azul);
  padding: 11px; font: inherit; font-weight: 600; font-size: 16px;
  cursor: pointer; transition: background .15s;
}
.cm-btn[data-v-7ef02a3d]:hover:not(:disabled) { background: var(--cm-azul-hv);
}
.cm-btn[data-v-7ef02a3d]:disabled { opacity: .55; cursor: default;
}
.cm-btn.claro[data-v-7ef02a3d] {
  flex: 0 0 auto;
  background: var(--cm-papel); border-color: var(--cm-linha); color: var(--cm-tinta-3);
}
.cm-btn.ghost[data-v-7ef02a3d] {
  flex: 0 0 auto;
  width: 34px; height: 34px; padding: 0;
  background: var(--cm-papel); border-color: var(--cm-linha); color: var(--cm-tinta-3);
  border-radius: 8px; font-size: 16px;
}
.cm-btn.ghost[data-v-7ef02a3d]:hover:not(:disabled) { background: var(--cm-papel-2);
}
.cm-btn.perigo[data-v-7ef02a3d] { color: var(--cm-terra);
}
.cm-btn.perigo-cheio[data-v-7ef02a3d] {
  background: var(--cm-terra-bg); border-color: var(--cm-terra-br); color: var(--cm-terra);
}
.cm-btn.perigo-cheio[data-v-7ef02a3d]:hover:not(:disabled) { background: var(--cm-terra-hv);
}

/* A cor do botão principal segue a coluna em que o cartão está. */
.cm-col:nth-child(1) .cm-card .cm-acoes > .cm-btn[data-v-7ef02a3d]:first-child:not(.claro):not(.ghost) {
  background: var(--cm-terra-bg); border-color: var(--cm-terra-br); color: var(--cm-terra);
}
.cm-col:nth-child(1) .cm-card .cm-acoes > .cm-btn[data-v-7ef02a3d]:first-child:not(.claro):not(.ghost):hover:not(:disabled) {
  background: var(--cm-terra-hv);
}
.cm-col:nth-child(2) .cm-card .cm-acoes > .cm-btn[data-v-7ef02a3d]:first-child:not(.claro):not(.ghost) {
  background: var(--cm-areia-bg); border-color: var(--cm-areia-br); color: var(--cm-areia);
}
.cm-col:nth-child(2) .cm-card .cm-acoes > .cm-btn[data-v-7ef02a3d]:first-child:not(.claro):not(.ghost):hover:not(:disabled) {
  background: var(--cm-areia-hv);
}
.cm-col:nth-child(4) .cm-card .cm-acoes > .cm-btn[data-v-7ef02a3d]:first-child:not(.claro):not(.ghost) {
  background: var(--cm-verde-bg); border-color: var(--cm-verde-br); color: var(--cm-verde-fg);
}
.cm-col:nth-child(4) .cm-card .cm-acoes > .cm-btn[data-v-7ef02a3d]:first-child:not(.claro):not(.ghost):hover:not(:disabled) {
  background: var(--cm-verde-hv);
}

/* ── LISTA ────────────────────────────────────────────────────────────────
   O paredão de sábado: o estado deixa de ser posição e vira filtro, e cada
   pedido ocupa uma linha só. */
.cm-filtros[data-v-7ef02a3d] { display: flex; gap: 8px; margin-bottom: 14px; flex-wrap: wrap;
}
.cm-filtro[data-v-7ef02a3d] {
  display: inline-flex; align-items: center; gap: 8px;
  border: 1px solid var(--cm-linha); border-radius: 100px;
  background: var(--cm-papel); color: var(--cm-tinta-3);
  padding: 8px 16px; font: inherit; font-weight: 600; font-size: 15.5px;
  cursor: pointer; transition: all .15s;
}
.cm-filtro[data-v-7ef02a3d]:hover { background: var(--cm-papel-2);
}
.cm-filtro.on[data-v-7ef02a3d] { background: var(--cm-azul-bg); color: var(--cm-azul); border-color: #BCD0E6;
}
.cm-filtro i[data-v-7ef02a3d] {
  font-style: normal; background: var(--cm-linha-2); border-radius: 100px;
  padding: 1px 8px; font-weight: 700; font-size: 15px;
}
.cm-filtro.on i[data-v-7ef02a3d] { background: var(--cm-papel);
}
.cm-lista > .cm-linha[data-v-7ef02a3d]:first-of-type { border-radius: 14px 14px 0 0;
}
.cm-linha[data-v-7ef02a3d] {
  display: grid;
  grid-template-columns: 88px 74px 68px minmax(0, 1fr) 130px 110px;
  gap: 14px; align-items: center;
  padding: 15px 20px;
  background: var(--cm-papel);
  border: 1px solid var(--cm-linha); border-bottom: none;
  cursor: pointer; transition: background .15s;
}
.cm-linha[data-v-7ef02a3d]:last-of-type { border-bottom: 1px solid var(--cm-linha); border-radius: 0 0 14px 14px;
}
.cm-linha[data-v-7ef02a3d]:hover { background: var(--cm-papel-2);
}
.cm-linha.aberto[data-v-7ef02a3d] { background: var(--cm-papel-2);
}
.cm-l-tempo[data-v-7ef02a3d] {
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 100px; padding: 4px 10px;
  font-weight: 700; font-size: 15px; white-space: nowrap;
  background: var(--cm-linha-2); color: var(--cm-tinta-3);
}
.cm-l-tempo.atencao[data-v-7ef02a3d] { background: var(--cm-areia-bg); color: var(--cm-areia);
}
.cm-l-tempo.urgente[data-v-7ef02a3d] { background: var(--cm-terra-bg); color: var(--cm-terra);
}
.cm-l-n[data-v-7ef02a3d] { font-weight: 700; font-size: 16.5px;
}
.cm-l-canal[data-v-7ef02a3d] {
  font-size: 15px; font-weight: 600; letter-spacing: .04em; color: var(--cm-tinta-3);
  border: 1px solid var(--cm-linha); border-radius: 5px; padding: 2px 7px;
  text-align: center; white-space: nowrap;
}
.cm-l-resumo[data-v-7ef02a3d] { min-width: 0;
}
.cm-l-resumo b[data-v-7ef02a3d] { display: block; font-weight: 600; font-size: 16.5px;
}
.cm-l-resumo em[data-v-7ef02a3d] { display: block; font-style: normal; font-size: 15px; color: var(--cm-fraco);
}
/* A bolinha da etapa também aqui: é o mesmo código de cor do mural. */
.cm-l-estado[data-v-7ef02a3d] {
  display: inline-flex; align-items: center; gap: 7px;
  font-size: 15.5px; font-weight: 600; color: var(--cm-tinta-3);
}
.cm-l-estado[data-v-7ef02a3d]::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--cm-fraco-2);
}
.cm-l-valor[data-v-7ef02a3d] { font-weight: 700; font-size: 16.5px; white-space: nowrap; text-align: right;
}
.cm-l-detalhe[data-v-7ef02a3d] {
  grid-column: 1 / -1;
  border-top: 1px solid var(--cm-linha-2); margin-top: 4px; padding-top: 12px;
  display: flex; flex-direction: column; gap: 10px;
}
.cm-vazio-lista[data-v-7ef02a3d] {
  background: var(--cm-papel); border: 1px solid var(--cm-linha); border-radius: 14px;
  padding: 46px 20px; text-align: center; font-size: 16.5px; color: var(--cm-fraco);
}

/* ── FECHADOS HOJE ────────────────────────────────────────────────────────
   Recolhido por padrão: a comanda é do agora. Aberto, é o fechamento do dia. */
.cm-encerrados[data-v-7ef02a3d] {
  margin: 16px 28px 0;
  background: var(--cm-papel); border: 1px solid var(--cm-linha);
  border-radius: 14px; overflow: hidden; box-shadow: var(--cm-sombra);
}
.cm-enc-topo[data-v-7ef02a3d] {
  width: 100%; display: flex; align-items: center; gap: 13px;
  padding: 16px 22px; border: none; background: none;
  font: inherit; font-weight: 700; font-size: 17px; color: var(--cm-tinta);
  cursor: pointer; text-align: left; transition: background .15s;
}
.cm-enc-topo[data-v-7ef02a3d]:hover { background: var(--cm-papel-2);
}
.cm-enc-resumo[data-v-7ef02a3d] { margin-left: auto; font-weight: 400; font-size: 15.5px; color: var(--cm-tinta-3);
}
.cm-enc-dia[data-v-7ef02a3d] {
  display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
  padding: 13px 22px; border-top: 1px solid var(--cm-linha-2);
  font-size: 15px; color: var(--cm-tinta-3);
}
.cm-enc-input[data-v-7ef02a3d] {
  border: 1px solid var(--cm-linha); border-radius: 8px; padding: 7px 11px;
  font: inherit; font-size: 15.5px; color: var(--cm-tinta);
}
.cm-enc-hoje[data-v-7ef02a3d] {
  border: none; background: none; color: var(--cm-azul-2);
  font: inherit; font-weight: 600; font-size: 15.5px; cursor: pointer;
}
.cm-enc-lista[data-v-7ef02a3d] { border-top: 1px solid var(--cm-linha-2);
}
.cm-enc-linha[data-v-7ef02a3d] {
  display: grid; grid-template-columns: 64px 74px 68px 1fr 190px 110px;
  gap: 14px; align-items: center;
  padding: 13px 22px; border-bottom: 1px solid var(--cm-papel-2);
  font-size: 15.5px;
}
.cm-enc-hora[data-v-7ef02a3d] { font-size: 15px; color: var(--cm-fraco);
}
.cm-enc-canal[data-v-7ef02a3d] {
  font-size: 15px; font-weight: 600; letter-spacing: .04em; color: var(--cm-fraco);
  border: 1px solid var(--cm-linha); border-radius: 5px; padding: 2px 7px;
  text-align: center; white-space: nowrap;
}
.cm-enc-n[data-v-7ef02a3d] { font-weight: 600;
}
.cm-enc-cliente[data-v-7ef02a3d] { color: var(--cm-tinta-2); overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.cm-enc-estado[data-v-7ef02a3d] {
  display: inline-flex; align-items: center; gap: 7px; flex-wrap: wrap;
  font-size: 15px; color: var(--cm-verde-fg);
}
.cm-enc-estado[data-v-7ef02a3d]::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: var(--cm-verde);
}
.cm-enc-linha.cancelado .cm-enc-estado[data-v-7ef02a3d] { color: var(--cm-terra);
}
.cm-enc-linha.cancelado .cm-enc-estado[data-v-7ef02a3d]::before { background: var(--cm-terra);
}
.cm-enc-estado i[data-v-7ef02a3d] { font-style: normal; width: 100%; font-size: 15px; color: var(--cm-fraco); padding-left: 13px;
}
.cm-enc-valor[data-v-7ef02a3d] { font-weight: 600; text-align: right; white-space: nowrap;
}
.cm-enc-valor.riscado[data-v-7ef02a3d] { color: var(--cm-fraco-2); text-decoration: line-through;
}
.cm-carregando[data-v-7ef02a3d], .cm-nenhum[data-v-7ef02a3d] {
  margin: 22px 28px 0; padding: 46px 20px; text-align: center;
  background: var(--cm-papel); border: 1px solid var(--cm-linha); border-radius: 14px;
  font-size: 16.5px; color: var(--cm-fraco);
}

/* ── CANCELAR ─────────────────────────────────────────────────────────────
   Um motivo por linha, grande e tocável: os motivos vêm do iFood com código, e
   no meio de um pico ninguém acerta alvo pequeno. */
.cm-fundo[data-v-7ef02a3d] {
  position: fixed; inset: 0; z-index: 60;
  display: flex; align-items: center; justify-content: center;
  padding: 20px; background: rgba(20, 25, 34, .45);
}
.cm-modal[data-v-7ef02a3d] {
  width: min(520px, 100%); max-height: 86vh; overflow: auto;
  background: var(--cm-papel); border-radius: 16px; padding: 24px;
  box-shadow: 0 24px 60px -20px rgba(20, 25, 34, .5);
}
.cm-modal h3[data-v-7ef02a3d] { margin: 0 0 6px; font-size: 20px; font-weight: 700; letter-spacing: -0.01em;
}
.cm-modal-sub[data-v-7ef02a3d] { margin: 0 0 16px; font-size: 15.5px; line-height: 1.55; color: var(--cm-tinta-3);
}
.cm-modal-sub b[data-v-7ef02a3d] { color: var(--cm-terra);
}
.cm-modal-vazio[data-v-7ef02a3d] { margin: 0 0 16px; font-size: 15.5px; color: var(--cm-fraco);
}
.cm-motivos[data-v-7ef02a3d] { display: flex; flex-direction: column; gap: 8px; margin-bottom: 18px;
}
.cm-motivo[data-v-7ef02a3d] {
  border: 1px solid var(--cm-linha); border-radius: 10px;
  background: var(--cm-papel); color: var(--cm-tinta);
  padding: 13px 15px; font: inherit; font-weight: 600; font-size: 16px;
  text-align: left; cursor: pointer; transition: all .15s;
}
.cm-motivo[data-v-7ef02a3d]:hover { background: var(--cm-papel-2);
}
.cm-motivo.on[data-v-7ef02a3d] { background: var(--cm-azul-bg); border-color: #BCD0E6; color: var(--cm-azul);
}
.cm-modal-acoes[data-v-7ef02a3d] { display: flex; gap: 10px; justify-content: flex-end;
}
.cm-modal-acoes .cm-btn[data-v-7ef02a3d] { flex: 0 0 auto;
}

/* ── TELAS ESTREITAS ──────────────────────────────────────────────────────
   O tablet da cozinha costuma ser 10", mas o dono confere pelo celular. Abaixo
   de 900px a lista vira duas linhas e o mural vira coluna única. */
@media (max-width: 900px) {
.cm-top[data-v-7ef02a3d] { padding: 12px 16px;
}
.cm-mural[data-v-7ef02a3d], .cm-lista[data-v-7ef02a3d] { padding: 16px 16px 0;
}
.cm-abas[data-v-7ef02a3d] { padding: 14px 12px 0; overflow-x: auto;
}
.cm-aba[data-v-7ef02a3d] { padding: 10px 12px; white-space: nowrap;
}
.cm-negoc[data-v-7ef02a3d], .cm-clientes[data-v-7ef02a3d], .cm-analises[data-v-7ef02a3d] { padding: 16px 16px 0;
}
.cm-duplo[data-v-7ef02a3d] { gap: 20px;
}
.cm-erro[data-v-7ef02a3d], .cm-perda[data-v-7ef02a3d], .cm-pausada[data-v-7ef02a3d], .cm-encerrados[data-v-7ef02a3d], .cm-pausa-menu[data-v-7ef02a3d] { margin-left: 16px; margin-right: 16px;
}
.cm-linha[data-v-7ef02a3d] { grid-template-columns: 84px 1fr 100px; grid-auto-rows: min-content; row-gap: 6px;
}
.cm-l-n[data-v-7ef02a3d] { order: 2;
}
.cm-l-canal[data-v-7ef02a3d] { display: none;
}
.cm-l-resumo[data-v-7ef02a3d] { grid-column: 1 / -1;
}
.cm-l-estado[data-v-7ef02a3d] { grid-column: 1 / span 2;
}
.cm-enc-linha[data-v-7ef02a3d] { grid-template-columns: 60px 70px 1fr 100px;
}
.cm-enc-canal[data-v-7ef02a3d], .cm-enc-cliente[data-v-7ef02a3d] { display: none;
}
}

/* Piso de leitura do projeto: nada abaixo de 15px. */
.fx[data-v-692ab734] { display: flex; flex-direction: column; gap: 12px;
}
.fx-card[data-v-692ab734] { background: #fff; border: 1px solid var(--linha); border-radius: 16px; padding: 18px 20px;
}
.fx-topo[data-v-692ab734] { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; flex-wrap: wrap;
}
.fx-card h2[data-v-692ab734] { font-size: 21px; font-weight: 800; letter-spacing: -.01em; color: var(--texto);
}
.fx-hint[data-v-692ab734] { font-size: 16px; color: #7E8A9C; margin-top: 2px;
}
.fx-muted[data-v-692ab734] { color: #7E8A9C; font-size: 16px; margin-top: 12px;
}
.fx-erro[data-v-692ab734] { color: #C0392F; font-size: 16px; margin-top: 12px;
}
.fx-resumao[data-v-692ab734] { font-size: 17px; line-height: 1.55; color: var(--texto-2); margin: 16px 0 14px;
}
.fx-resumao b[data-v-692ab734] { color: var(--texto); font-weight: 800; font-variant-numeric: tabular-nums;
}
.fx-resumao b.fx-verde[data-v-692ab734] { color: #2F7D63;
}
.fx-vermelho[data-v-692ab734] { color: #C0392F; font-weight: 800; font-variant-numeric: tabular-nums;
}

/* ── Gráfico ───────────────────────────────────────────────────────────── */
.fx-gr[data-v-692ab734] { display: flex; align-items: flex-end; gap: 8px; height: 160px; margin-top: 6px;
}
.fx .fx-barra[data-v-692ab734] {
  flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: flex-end;
  gap: 8px; height: 100%; background: none; border: none; padding: 0 2px; cursor: pointer; font-family: inherit;
}
.fx-col[data-v-692ab734] {
  width: 100%; max-width: 40px; border-radius: 7px 7px 0 0; background: #2F7D63;
  display: flex; flex-direction: column; justify-content: flex-start; min-height: 3px;
}
.fx-custo[data-v-692ab734] { width: 100%; background: #C0392F; border-radius: 7px 7px 0 0;
}
.fx-mes[data-v-692ab734] { font-size: 15px; font-weight: 700; color: #7E8A9C;
}
.fx .fx-barra[data-v-692ab734]:focus-visible { outline: 2px solid #3A5DA0; outline-offset: 3px; border-radius: 8px;
}
/* Mês em aberto listrado: ainda não fechou, e fingir que fechou é mentir. */
.fx-barra.aberta .fx-col[data-v-692ab734] { background: repeating-linear-gradient(135deg, #2F7D63 0 6px, #3E9377 6px 12px);
}
.fx-barra.aberta .fx-custo[data-v-692ab734] { background: repeating-linear-gradient(135deg, #C0392F 0 6px, #D25348 6px 12px);
}
.fx-barra.aberta .fx-mes[data-v-692ab734] { color: #3A5DA0;
}
.fx-legenda[data-v-692ab734] { display: flex; gap: 18px; margin-top: 12px; font-size: 15px; color: var(--texto-2);
}
.fx-legenda .pt[data-v-692ab734] { display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: 6px;
}
.fx-legenda .pt.sobrou[data-v-692ab734] { background: #2F7D63;
}
.fx-legenda .pt.custo[data-v-692ab734] { background: #C0392F;
}

/* ── Lista de meses ────────────────────────────────────────────────────── */
.fx-lista-titulo[data-v-692ab734] { font-size: 18px; font-weight: 800; color: var(--texto); margin-bottom: 4px;
}
.fx .fx-linha[data-v-692ab734] {
  width: 100%; display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 10px;
  background: none; border: none; border-bottom: 1px solid #F0F3F8;
  padding: 14px 0; cursor: pointer; text-align: left; font-family: inherit;
}
.fx .fx-linha[data-v-692ab734]:last-of-type { border-bottom: none;
}
.fx .fx-linha[data-v-692ab734]:hover { background: #F8FAFC;
}
.fx .fx-linha[data-v-692ab734]:focus-visible { outline: 2px solid #3A5DA0; outline-offset: -2px; border-radius: 8px;
}
.fx-l-esq[data-v-692ab734] { display: flex; flex-direction: column; gap: 2px; min-width: 0;
}
.fx-l-mes[data-v-692ab734] { font-size: 17px; font-weight: 700; color: var(--texto);
}
.fx-l-mes i[data-v-692ab734] { font-style: normal; font-weight: 400; color: #7E8A9C;
}
.fx-l-meta[data-v-692ab734] { font-size: 15px; color: #7E8A9C;
}
.fx-l-dir[data-v-692ab734] { display: flex; flex-direction: column; align-items: flex-end; gap: 3px;
}
.fx-l-valor[data-v-692ab734] { font-size: 18px; font-weight: 800; color: #2F7D63; font-variant-numeric: tabular-nums;
}
.fx-l-valor.negativo[data-v-692ab734] { color: #C0392F;
}
.fx-selo[data-v-692ab734] { font-size: 15px; font-weight: 700; color: #7E8A9C;
}
.fx-selo.aberta[data-v-692ab734] { color: #3A5DA0;
}
.fx-seta[data-v-692ab734] { font-size: 22px; color: #C3CBD6; line-height: 1;
}

/* ── Mês aberto ────────────────────────────────────────────────────────── */
.fx .fx-voltar[data-v-692ab734] {
  background: none; border: none; padding: 0 0 10px; cursor: pointer;
  font-family: inherit; font-size: 16px; font-weight: 700; color: #3A5DA0;
}
.fx-barra-linha[data-v-692ab734] { display: flex; height: 16px; border-radius: 8px; overflow: hidden; background: #EEF1F6;
}
.b-sobrou[data-v-692ab734] { background: #2F7D63;
}
.b-custo[data-v-692ab734] { background: #C0392F;
}
.fx-bloco[data-v-692ab734] { font-size: 17px; font-weight: 800; color: var(--texto); margin: 22px 0 3px;
}
.fx-bloco-nota[data-v-692ab734] { font-size: 15px; color: #7E8A9C; line-height: 1.45; margin-bottom: 10px;
}
.fx-linhas[data-v-692ab734] { border: 1px solid var(--linha); border-radius: 12px; overflow: hidden;
}
.fx-item[data-v-692ab734] { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 11px 14px; font-size: 16px; color: var(--texto-2); border-bottom: 1px solid #F0F3F8;
}
.fx-item[data-v-692ab734]:last-child { border-bottom: none;
}
.fx-item b[data-v-692ab734] { font-weight: 800; color: var(--texto); font-variant-numeric: tabular-nums; white-space: nowrap;
}
.fx-item b.neg[data-v-692ab734] { color: #C0392F;
}
.fx-item b.pos[data-v-692ab734] { color: #2F7D63;
}
.fx-item.total[data-v-692ab734] { background: #F8FAFC; color: var(--texto); font-weight: 700;
}
.fx-item i[data-v-692ab734] { display: block; font-style: normal; font-size: 15px; color: #7E8A9C;
}
.fx-item em[data-v-692ab734] { display: inline-block; margin-top: 2px; font-style: normal; font-size: 15px; font-weight: 700;
  color: #8A5A00; background: #FFF8EC; border: 1px solid #F3DFB8; border-radius: 999px; padding: 1px 9px;
}
.fx .fx-cta[data-v-692ab734] {
  margin-top: 12px; border: none; background: #3A5DA0; color: #fff; font-family: inherit;
  font-weight: 800; font-size: 16px; padding: 11px 18px; border-radius: 11px; cursor: pointer;
}
.fx .fx-cta[data-v-692ab734]:hover { background: #2C4880;
}

/* Piso de leitura do projeto: nada abaixo de 15px. */
.fif[data-v-d0ff1543] { margin-top: 16px; display: flex; flex-direction: column; gap: 12px;
}
.fif-card[data-v-d0ff1543] { background: #fff; border: 1px solid #E2E5EA; border-radius: 16px; padding: 18px 20px;
}
.fif-topo[data-v-d0ff1543] { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; flex-wrap: wrap;
}
.fif-card h2[data-v-d0ff1543] { font-size: 20px; font-weight: 800; letter-spacing: -.01em; color: #141922;
}
.fif-hint[data-v-d0ff1543] { font-size: 16px; color: #8A93A3; margin-top: 2px;
}

/* Cor de fundo declarada com a classe do container junto: um `.card button
   { background: none }` acima venceria por especificidade e sumiria com o
   botão — já aconteceu no onboarding. */
.fif .fif-atualizar[data-v-d0ff1543] {
  border: none; background: #3A5DA0; color: #fff; font-family: inherit;
  font-weight: 800; font-size: 15px; padding: 9px 15px; border-radius: 10px;
  cursor: pointer; white-space: nowrap;
}
.fif .fif-atualizar[data-v-d0ff1543]:hover:not(:disabled) { background: #2C4880;
}
.fif .fif-atualizar[data-v-d0ff1543]:disabled { background: #A7B4CE; cursor: default;
}
.fif-muted[data-v-d0ff1543] { color: #8A93A3; font-size: 16px; margin-top: 12px;
}
.fif-erro[data-v-d0ff1543] { color: #B42318; font-size: 16px; margin-top: 12px;
}
.fif-aviso[data-v-d0ff1543] { color: #6B4E12; font-size: 16px; margin-top: 12px;
}
.fif-resumao[data-v-d0ff1543] { font-size: 17px; line-height: 1.55; color: #334155; margin: 16px 0 14px;
}
.fif-resumao b[data-v-d0ff1543] { color: #141922; font-weight: 800; font-variant-numeric: tabular-nums;
}
.fif-vermelho[data-v-d0ff1543] { color: #B42318; font-weight: 800; font-variant-numeric: tabular-nums;
}

/* ── Gráfico ───────────────────────────────────────────────────────────── */
.fif-gr[data-v-d0ff1543] { display: flex; align-items: flex-end; gap: 8px; height: 160px; margin-top: 6px;
}
.fif .fif-barra[data-v-d0ff1543] {
  flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: flex-end;
  gap: 8px; height: 100%; background: none; border: none; padding: 0 2px;
  cursor: pointer; font-family: inherit;
}
.fif-col[data-v-d0ff1543] {
  width: 100%; max-width: 40px; border-radius: 7px 7px 0 0; background: #1F9254;
  display: flex; flex-direction: column; justify-content: flex-start; min-height: 3px;
}
.fif-com[data-v-d0ff1543] { width: 100%; background: #E5544B; border-radius: 7px 7px 0 0;
}
.fif-mes[data-v-d0ff1543] { font-size: 15px; font-weight: 700; color: #8A93A3;
}
.fif .fif-barra[data-v-d0ff1543]:focus-visible { outline: 2px solid #3A5DA0; outline-offset: 3px; border-radius: 8px;
}
/* Mês em aberto listrado: ainda não fechou, e fingir que fechou é mentir. */
.fif-barra.aberta .fif-col[data-v-d0ff1543] { background: repeating-linear-gradient(135deg, #1F9254 0 6px, #2FA867 6px 12px);
}
.fif-barra.aberta .fif-com[data-v-d0ff1543] { background: repeating-linear-gradient(135deg, #E5544B 0 6px, #EE6D65 6px 12px);
}
.fif-barra.aberta .fif-mes[data-v-d0ff1543] { color: #3A5DA0;
}
.fif-legenda[data-v-d0ff1543] { display: flex; gap: 18px; margin-top: 12px; font-size: 15px; color: #5B6572;
}
.fif-legenda .pt[data-v-d0ff1543] { display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: 6px;
}
.fif-legenda .pt.seu[data-v-d0ff1543] { background: #1F9254;
}
.fif-legenda .pt.deles[data-v-d0ff1543] { background: #E5544B;
}

/* ── Lista ─────────────────────────────────────────────────────────────── */
.fif-lista-titulo[data-v-d0ff1543] { font-size: 18px; font-weight: 800; color: #141922; margin-bottom: 4px;
}
.fif .fif-linha[data-v-d0ff1543] {
  width: 100%; display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 10px;
  background: none; border: none; border-bottom: 1px solid #EEF1F6;
  padding: 14px 0; cursor: pointer; text-align: left; font-family: inherit;
}
.fif .fif-linha[data-v-d0ff1543]:last-of-type { border-bottom: none;
}
.fif .fif-linha[data-v-d0ff1543]:hover { background: #FAFBFD;
}
.fif .fif-linha[data-v-d0ff1543]:focus-visible { outline: 2px solid #3A5DA0; outline-offset: -2px; border-radius: 8px;
}
.fif-linha-esq[data-v-d0ff1543] { display: flex; flex-direction: column; gap: 2px; min-width: 0;
}
.fif-linha-mes[data-v-d0ff1543] { font-size: 17px; font-weight: 700; color: #141922;
}
.fif-linha-meta[data-v-d0ff1543] { font-size: 15px; color: #8A93A3;
}
.fif-linha-dir[data-v-d0ff1543] { display: flex; flex-direction: column; align-items: flex-end; gap: 3px;
}
.fif-linha-valor[data-v-d0ff1543] { font-size: 18px; font-weight: 800; color: #1F9254; font-variant-numeric: tabular-nums;
}
.fif-selo[data-v-d0ff1543] { font-size: 15px; font-weight: 700; color: #8A93A3;
}
.fif-selo.aberta[data-v-d0ff1543] { color: #3A5DA0;
}
.fif-seta[data-v-d0ff1543] { font-size: 22px; color: #C3CBD6; line-height: 1;
}

/* ── Detalhe ───────────────────────────────────────────────────────────── */
.fif .fif-voltar[data-v-d0ff1543] {
  background: none; border: none; padding: 0 0 10px; cursor: pointer;
  font-family: inherit; font-size: 16px; font-weight: 700; color: #3A5DA0;
}
.fif .fif-voltar[data-v-d0ff1543]:focus-visible { outline: 2px solid #3A5DA0; outline-offset: 2px; border-radius: 6px;
}
.fif-linha-barra[data-v-d0ff1543] { display: flex; height: 16px; border-radius: 8px; overflow: hidden; background: #EEF1F6;
}
.b-seu[data-v-d0ff1543] { background: #1F9254;
}
.b-deles[data-v-d0ff1543] { background: #E5544B;
}
.fif-pendente[data-v-d0ff1543] { margin-top: 14px; padding: 12px 14px; border-radius: 12px; background: #FFF8EC; border: 1px solid #F3DFB8; font-size: 16px; line-height: 1.5; color: #6B4E12;
}
.fif-bloco[data-v-d0ff1543] { font-size: 17px; font-weight: 800; color: #141922; margin: 22px 0 3px;
}
.fif-bloco-nota[data-v-d0ff1543] { font-size: 15px; color: #8A93A3; line-height: 1.45; margin-bottom: 10px;
}
.fif-linhas[data-v-d0ff1543] { border: 1px solid #E2E5EA; border-radius: 12px; overflow: hidden;
}
.fif-item[data-v-d0ff1543] { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 11px 14px; font-size: 16px; color: #5B6572; border-bottom: 1px solid #EEF1F6;
}
.fif-item[data-v-d0ff1543]:last-child { border-bottom: none;
}
.fif-item b[data-v-d0ff1543] { font-weight: 800; color: #141922; font-variant-numeric: tabular-nums; white-space: nowrap;
}
.fif-item b.neg[data-v-d0ff1543] { color: #B42318;
}
.fif-item b.pos[data-v-d0ff1543] { color: #1F9254;
}
.fif-item.total[data-v-d0ff1543] { background: #FAFBFD; color: #141922; font-weight: 700;
}
.fif-ciclos[data-v-d0ff1543] { display: flex; flex-direction: column; gap: 8px; margin-bottom: 12px;
}
.fif-ciclo[data-v-d0ff1543] { display: grid; grid-template-columns: auto 1fr auto; align-items: baseline; gap: 10px; padding: 11px 14px; border: 1px solid #E2E5EA; border-radius: 12px; background: #FAFBFD;
}
.c-periodo[data-v-d0ff1543] { font-size: 15px; font-weight: 700; color: #5B6572; font-variant-numeric: tabular-nums;
}
.c-valor[data-v-d0ff1543] { font-size: 17px; font-weight: 800; color: #1F9254; font-variant-numeric: tabular-nums;
}
.c-quando[data-v-d0ff1543] { font-size: 15px; color: #8A93A3; white-space: nowrap;
}
/* Ciclo não pago: tracejado, para não ter cara de dinheiro na mão. */
.fif-ciclo.futuro[data-v-d0ff1543] { background: #fff; border-style: dashed;
}
.fif-ciclo.futuro .c-valor[data-v-d0ff1543] { color: #8A93A3;
}
.fif-comp[data-v-d0ff1543] { display: grid; grid-template-columns: 1fr 1fr; gap: 12px;
}
.fif-canal[data-v-d0ff1543] { border: 1px solid #E2E5EA; border-radius: 12px; padding: 14px; background: #FAFBFD;
}
.fif-canal.whats[data-v-d0ff1543] { border-color: #BFE6CE; background: #F3FBF6;
}
.c-nome[data-v-d0ff1543] { font-size: 15px; font-weight: 700; color: #5B6572;
}
.c-valor[data-v-d0ff1543] { font-size: 21px; font-weight: 800; letter-spacing: -.02em; margin: 6px 0 4px; color: #141922; font-variant-numeric: tabular-nums;
}
.fif-canal .c-valor[data-v-d0ff1543] { font-size: 21px; color: #141922;
}
.c-meta[data-v-d0ff1543] { font-size: 15px; color: #8A93A3; line-height: 1.4;
}
.c-selo[data-v-d0ff1543] { display: inline-block; margin-top: 8px; font-size: 15px; font-weight: 700; color: #1F9254;
}
.fif-conclusao[data-v-d0ff1543] { margin-top: 16px; padding: 13px 15px; border-radius: 12px; background: #F3FBF6; border: 1px solid #BFE6CE; font-size: 16px; line-height: 1.5; color: #26543C;
}
.fif-conclusao b[data-v-d0ff1543] { font-weight: 800; font-variant-numeric: tabular-nums;
}
.fif-quando[data-v-d0ff1543] { margin-top: 14px; font-size: 15px; color: #8A93A3;
}

/* Mobile-first: em tela estreita as colunas viram lista, senão o valor quebra
   no meio e deixa de ser legível. */
@media (max-width: 560px) {
.fif-comp[data-v-d0ff1543] { grid-template-columns: 1fr;
}
}
/* ── Todos os custos ───────────────────────────────────────────────────── */
.fif-custo-frase[data-v-d0ff1543] { font-size: 17px; line-height: 1.55; color: #334155; margin: 14px 0 12px;
}
.fif-custo-frase b[data-v-d0ff1543] { color: #141922; font-weight: 800; font-variant-numeric: tabular-nums;
}
.fif-custo-frase b.fif-sobrou[data-v-d0ff1543] { color: #1F9254;
}
.fif-custo-pct[data-v-d0ff1543] { margin-top: 9px; margin-bottom: 14px; font-size: 16px; color: #5B6572;
}
.fif-custo-pct b[data-v-d0ff1543] { color: #B42318; font-weight: 800; font-variant-numeric: tabular-nums;
}
.fif-item i[data-v-d0ff1543] { display: block; font-style: normal; font-size: 15px; color: #8A93A3;
}
/* "Você escolheu este" separa o custo que dá para mudar do que não dá. */
.fif-item em[data-v-d0ff1543] { display: inline-block; margin-top: 2px; font-style: normal; font-size: 15px;
  font-weight: 700; color: #8A5A00; background: #FFF8EC; border: 1px solid #F3DFB8;
  border-radius: 999px; padding: 1px 9px;
}
.fif h2[data-v-d0ff1543] { display: flex; align-items: center; gap: 8px;
}

/* Piso de leitura do projeto: nada abaixo de 15px. */
.fp[data-v-347d342a] { display: flex; flex-direction: column; gap: 12px;
}
.fp-vazio[data-v-347d342a] {
  background: #fff; border: 1px solid var(--linha); border-radius: 16px;
  padding: 26px 22px; text-align: center;
}
.fp-vazio h3[data-v-347d342a] { font-size: 19px; font-weight: 800; color: var(--texto); margin-bottom: 8px;
}
.fp-vazio p[data-v-347d342a] { font-size: 16px; line-height: 1.55; color: var(--texto-2); max-width: 52ch; margin: 0 auto;
}

/* tela cheia, padrão AgendaView (desktop começa depois do trilho de 74px) */
.cv[data-v-e7cbadb6] { position: absolute; inset: 0; z-index: 8; display: flex; flex-direction: column; background: #F4F7FB; overflow: hidden;
}
@media (min-width: 861px) {
.cv[data-v-e7cbadb6] { left: 74px; top: var(--topbar-h, 48px);
}
}

/* topo fino */
.cv-top[data-v-e7cbadb6] { display: flex; align-items: center; gap: 12px; padding: 12px 18px; background: #fff; border-bottom: 1px solid var(--linha); flex: none;
}
.cv-back[data-v-e7cbadb6] { border: 1px solid var(--linha); background: #fff; color: var(--texto-2); font-weight: 750; font-size: 15px; padding: 8px 15px; border-radius: 10px; cursor: pointer; font-family: inherit; flex: none;
}
.cv-back.sq[data-v-e7cbadb6] { width: 38px; height: 38px; padding: 0; font-size: 19px; border-radius: 10px;
}
.cv-title[data-v-e7cbadb6] { font-size: 19px; font-weight: 800; letter-spacing: -.02em; color: var(--texto); flex: 1; min-width: 0;
}
.cv-title.trunc[data-v-e7cbadb6] { white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.cv-saved[data-v-e7cbadb6] { font-size: 15px; font-weight: 750; color: #177C55; opacity: 0; transition: opacity .25s; flex: none;
}
.cv-saved.show[data-v-e7cbadb6] { opacity: 1;
}
.cv-new[data-v-e7cbadb6] { border: 0; background: linear-gradient(135deg, var(--marca), var(--acao)); color: #fff; font-family: inherit; font-weight: 800; font-size: 15px; padding: 10px 16px; border-radius: 12px; cursor: pointer; flex: none; white-space: nowrap;
}
.cv-new[data-v-e7cbadb6]:active { transform: scale(.97);
}
.cv-new.big[data-v-e7cbadb6] { font-size: 16px; padding: 13px 22px; margin-top: 14px;
}
.cv-scroll[data-v-e7cbadb6] { flex: 1; overflow-y: auto; padding: 16px 18px 40px; max-width: 720px; width: 100%; margin: 0 auto;
}
.cv-state[data-v-e7cbadb6] { color: #8A97A8; font-size: 16px; text-align: center; padding: 26px 10px; line-height: 1.5;
}

/* KPIs que viram filtro */
.cv-kpis[data-v-e7cbadb6] { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; margin-bottom: 12px;
}
.cv-kpi[data-v-e7cbadb6] { background: #fff; border: 1px solid var(--linha); border-radius: 14px; padding: 11px 12px; cursor: pointer; text-align: left; font-family: inherit;
}
.cv-kpi b[data-v-e7cbadb6] { font-size: 22px; display: block; color: var(--texto); letter-spacing: -.01em;
}
.cv-kpi small[data-v-e7cbadb6] { font-size: 15px; font-weight: 800; color: #8A97A8; text-transform: uppercase; letter-spacing: .3px; line-height: 1.2; display: block; margin-top: 2px;
}
.cv-kpi.ok b[data-v-e7cbadb6] { color: #1fa564;
}
.cv-kpi.warn[data-v-e7cbadb6] { background: #FFFBEB; border-color: #FDE68A;
}
.cv-kpi.warn b[data-v-e7cbadb6] { color: #B45309;
}
.cv-kpi.sel[data-v-e7cbadb6] { box-shadow: inset 0 0 0 2px var(--marca);
}
.cv-kpi[data-v-e7cbadb6]:active { transform: scale(.97);
}

/* busca + pills */
.cv-search input[data-v-e7cbadb6] { width: 100%; border: 1.5px solid var(--linha); border-radius: 12px; padding: 12px 14px; font: inherit; font-size: 16px; color: var(--texto); background: #fff; margin-bottom: 10px;
}
.cv-search input[data-v-e7cbadb6]:focus { outline: none; border-color: var(--marca); box-shadow: 0 0 0 3px rgba(94,134,184,.12);
}
.cv-filters[data-v-e7cbadb6] { display: flex; gap: 7px; margin-bottom: 14px; flex-wrap: wrap;
}
.cv-fc[data-v-e7cbadb6] { border: 1.5px solid var(--linha); background: #fff; border-radius: 99px; padding: 7px 14px; font-size: 15px; font-weight: 800; color: var(--texto-2); cursor: pointer; font-family: inherit;
}
.cv-fc.warn[data-v-e7cbadb6] { color: #B45309;
}
.cv-fc.on[data-v-e7cbadb6] { background: var(--acao-tonal); border-color: #B9C8EE; color: var(--azul-900);
}
.cv-fc[data-v-e7cbadb6]:active { transform: scale(.96);
}

/* lista rica */
.cv-cli[data-v-e7cbadb6] { display: flex; gap: 12px; align-items: center; background: #fff; border: 1px solid var(--linha); border-radius: 15px; padding: 12px 14px; margin-bottom: 8px; cursor: pointer; transition: transform .08s, box-shadow .15s;
}
.cv-cli[data-v-e7cbadb6]:hover { box-shadow: 0 10px 24px -18px rgba(24,38,66,.35);
}
.cv-cli[data-v-e7cbadb6]:active { transform: scale(.99);
}
.cv-av[data-v-e7cbadb6] { width: 44px; height: 44px; border-radius: 50%; color: #fff; display: grid; place-items: center; font-weight: 800; font-size: 15px; flex: none;
}
.cv-mid[data-v-e7cbadb6] { flex: 1; min-width: 0;
}
.cv-nm[data-v-e7cbadb6] { font-weight: 800; font-size: 16px; color: var(--texto);
}
.cv-st[data-v-e7cbadb6] { color: var(--texto-2); font-size: 15px; margin-top: 2px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.cv-right[data-v-e7cbadb6] { text-align: right; flex: none;
}
.cv-money[data-v-e7cbadb6] { font-weight: 800; font-size: 15px; color: #B45309;
}
.cv-when[data-v-e7cbadb6] { color: #8A97A8; font-size: 15px; font-weight: 700; line-height: 1.3;
}
.cv-call[data-v-e7cbadb6] { border: 0; background: none; color: #B45309; font-size: 15px; font-weight: 800; line-height: 1.3; cursor: pointer; font-family: inherit; text-align: right; padding: 4px 0;
}
.cv-tag[data-v-e7cbadb6] { display: inline-block; font-size: 15px; font-weight: 800; border-radius: 99px; padding: 2px 9px; margin-left: 6px; vertical-align: 2px;
}
.cv-tag.emdia[data-v-e7cbadb6] { background: #E7F6EE; color: #1fa564;
}
.cv-tag.sum[data-v-e7cbadb6] { background: #FEF3C7; color: #B45309;
}
.cv-tag.novo[data-v-e7cbadb6] { background: var(--acao-tonal); color: var(--azul-900);
}

/* carteira vazia */
.cv-empty[data-v-e7cbadb6] { text-align: center; padding: 40px 20px; color: var(--texto-2);
}
.cv-empty-emoji[data-v-e7cbadb6] { font-size: 40px;
}
.cv-empty h3[data-v-e7cbadb6] { font-size: 19px; font-weight: 800; color: var(--texto); margin: 10px 0 6px;
}
.cv-empty p[data-v-e7cbadb6] { font-size: 16px; line-height: 1.5; max-width: 340px; margin: 0 auto;
}

/* ═══ ficha por cima (desliza da direita) ═══ */
.cv-panel[data-v-e7cbadb6] { position: absolute; inset: 0; background: #F4F7FB; transform: translateX(105%); transition: transform .3s cubic-bezier(.3, 1, .4, 1); display: flex; flex-direction: column; z-index: 12;
}
.cv-panel.open[data-v-e7cbadb6] { transform: none;
}
.cv-minik[data-v-e7cbadb6] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px;
}
.cv-mini[data-v-e7cbadb6] { background: #fff; border: 1px solid var(--linha); border-radius: 13px; padding: 10px 12px;
}
.cv-mini b[data-v-e7cbadb6] { display: block; font-size: 16.5px; color: var(--texto); letter-spacing: -.01em;
}
.cv-mini small[data-v-e7cbadb6] { font-size: 15px; font-weight: 800; color: #8A97A8; text-transform: uppercase;
}
.cv-mini.warn[data-v-e7cbadb6] { background: #FFFBEB; border-color: #FDE68A;
}
.cv-mini.warn b[data-v-e7cbadb6] { color: #B45309;
}
.cv-actbar[data-v-e7cbadb6] { display: flex; gap: 8px; margin: 12px 0 4px;
}
.cv-abtn[data-v-e7cbadb6] { flex: 1; border: 1.5px solid var(--linha); background: #fff; border-radius: 12px; font-family: inherit; font-weight: 800; font-size: 15px; color: var(--texto); padding: 12px 4px; cursor: pointer; white-space: nowrap; display: inline-flex; align-items: center; justify-content: center; gap: 6px;
}
.cv-abtn.p[data-v-e7cbadb6] { background: linear-gradient(135deg, var(--marca), var(--acao)); color: #fff; border: 0;
}
.cv-abtn.sm[data-v-e7cbadb6] { flex: none; padding: 10px 18px; font-size: 15px;
}
.cv-abtn[data-v-e7cbadb6]:disabled { opacity: .5; cursor: default;
}
.cv-abtn[data-v-e7cbadb6]:active { transform: scale(.97);
}
.cv-sec[data-v-e7cbadb6] { font-size: 15px; font-weight: 800; color: #8A97A8; text-transform: uppercase; letter-spacing: .4px; margin: 18px 2px 8px;
}
.cv-fld[data-v-e7cbadb6] { background: #fff; border: 1.5px solid var(--linha); border-radius: 13px; padding: 10px 13px; margin-bottom: 8px; display: flex; justify-content: space-between; align-items: center; gap: 10px;
}
.cv-fld-v[data-v-e7cbadb6] { min-width: 0;
}
.cv-fld-v label[data-v-e7cbadb6] { display: block; font-size: 15px; font-weight: 800; color: #8A97A8; text-transform: uppercase;
}
.cv-fld-v b[data-v-e7cbadb6] { font-size: 16px; color: var(--texto); overflow-wrap: anywhere;
}
.cv-fld-v b.dim[data-v-e7cbadb6] { color: #8A97A8; font-weight: 600;
}
.cv-edit[data-v-e7cbadb6] { border: 0; background: none; font-size: 16px; cursor: pointer; flex: none; padding: 6px;
}
.cv-fld-edit[data-v-e7cbadb6] { flex: 1; min-width: 0;
}
.cv-fld-edit label[data-v-e7cbadb6] { display: block; font-size: 15px; font-weight: 800; color: #8A97A8; text-transform: uppercase; margin-bottom: 5px;
}
.cv-input[data-v-e7cbadb6] { width: 100%; border: 1.5px solid var(--marca); border-radius: 11px; padding: 11px 13px; font: inherit; font-size: 16px; color: var(--texto); background: #fff; box-shadow: 0 0 0 3px rgba(94,134,184,.12);
}
.cv-input[data-v-e7cbadb6]:focus { outline: none;
}
.cv-edit-b[data-v-e7cbadb6] { display: flex; gap: 10px; align-items: center; margin-top: 8px;
}
.cv-x2[data-v-e7cbadb6] { border: none; background: none; color: #8A97A8; font-weight: 700; font-size: 15px; cursor: pointer; font-family: inherit;
}
.cv-hist[data-v-e7cbadb6] { background: #fff; border: 1px solid var(--linha); border-radius: 13px; padding: 11px 13px; margin-bottom: 7px; font-size: 15px; color: var(--texto); line-height: 1.45; overflow-wrap: anywhere;
}
.cv-hist small[data-v-e7cbadb6] { display: block; color: #8A97A8; font-size: 15px; margin-top: 2px;
}
.cv-hist.vazio[data-v-e7cbadb6] { color: #8A97A8; font-weight: 600;
}
.cv-alt[data-v-e7cbadb6] { display: block; margin: 10px auto 0; background: none; border: 0;
  color: #5B6572; font-size: 15px; cursor: pointer; text-decoration: underline;
}
.cv-full[data-v-e7cbadb6] { width: 100%; margin-top: 16px; background: none; border: 1px solid var(--linha); border-radius: 12px; padding: 12px 16px; font-family: inherit; font-size: 15.5px; font-weight: 750; color: #3A5B94; cursor: pointer;
}
.cv-full[data-v-e7cbadb6]:hover { background: #fff;
}

/* mobile: a tela vira fluxo normal e a ficha cobre a janela inteira */
@media (max-width: 860px) {
.cv[data-v-e7cbadb6] { position: relative; inset: auto; min-height: 100vh; overflow: visible;
}
.cv-top[data-v-e7cbadb6] { position: sticky; top: 0; z-index: 9; flex-wrap: wrap;
}
.cv-scroll[data-v-e7cbadb6] { padding: 14px 14px 90px;
}
.cv-kpis[data-v-e7cbadb6] { grid-template-columns: repeat(2, 1fr);
}
.cv-panel[data-v-e7cbadb6] { position: fixed; inset: 0; z-index: 240;
}
.cv-panel .cv-top[data-v-e7cbadb6] { position: static;
}
.cv-panel .cv-scroll[data-v-e7cbadb6] { padding-bottom: calc(24px + env(safe-area-inset-bottom));
}
}

/* tema escuro básico (tokens do app) */
:root[data-theme="dark"] .cv[data-v-e7cbadb6], :root[data-theme="dark"] .cv-panel[data-v-e7cbadb6] { background: #0F1622;
}
:root[data-theme="dark"] .cv-top[data-v-e7cbadb6] { background: #151E2B; border-color: #243244;
}
:root[data-theme="dark"] .cv-title[data-v-e7cbadb6] { color: #EAF0F8;
}
:root[data-theme="dark"] .cv-back[data-v-e7cbadb6] { background: #1B2534; border-color: #243244; color: #9AA7B8;
}
:root[data-theme="dark"] .cv-kpi[data-v-e7cbadb6], :root[data-theme="dark"] .cv-cli[data-v-e7cbadb6], :root[data-theme="dark"] .cv-mini[data-v-e7cbadb6],
:root[data-theme="dark"] .cv-fld[data-v-e7cbadb6], :root[data-theme="dark"] .cv-hist[data-v-e7cbadb6], :root[data-theme="dark"] .cv-fc[data-v-e7cbadb6],
:root[data-theme="dark"] .cv-abtn[data-v-e7cbadb6]:not(.p) { background: #151E2B; border-color: #243244;
}
:root[data-theme="dark"] .cv-kpi b[data-v-e7cbadb6], :root[data-theme="dark"] .cv-nm[data-v-e7cbadb6], :root[data-theme="dark"] .cv-mini b[data-v-e7cbadb6],
:root[data-theme="dark"] .cv-fld-v b[data-v-e7cbadb6], :root[data-theme="dark"] .cv-hist[data-v-e7cbadb6], :root[data-theme="dark"] .cv-abtn[data-v-e7cbadb6]:not(.p),
:root[data-theme="dark"] .cv-empty h3[data-v-e7cbadb6] { color: #EAF0F8;
}
:root[data-theme="dark"] .cv-kpi.warn[data-v-e7cbadb6], :root[data-theme="dark"] .cv-mini.warn[data-v-e7cbadb6] { background: #241E10; border-color: #4A3C1B;
}
:root[data-theme="dark"] .cv-kpi.warn b[data-v-e7cbadb6], :root[data-theme="dark"] .cv-mini.warn b[data-v-e7cbadb6] { color: #E8B04B;
}
:root[data-theme="dark"] .cv-kpi.ok b[data-v-e7cbadb6] { color: #4BC98A;
}
:root[data-theme="dark"] .cv-fc[data-v-e7cbadb6] { color: #9AA7B8;
}
:root[data-theme="dark"] .cv-fc.on[data-v-e7cbadb6] { background: #20305A; border-color: #2A3E6E; color: #9FB6F2;
}
:root[data-theme="dark"] .cv-search input[data-v-e7cbadb6], :root[data-theme="dark"] .cv-input[data-v-e7cbadb6] { background: #1B2534; border-color: #243244; color: #EAF0F8;
}
:root[data-theme="dark"] .cv-tag.emdia[data-v-e7cbadb6] { background: #14251C;
}
:root[data-theme="dark"] .cv-tag.sum[data-v-e7cbadb6] { background: #241E10;
}
:root[data-theme="dark"] .cv-tag.novo[data-v-e7cbadb6] { background: #20305A;
}
:root[data-theme="dark"] .cv-full[data-v-e7cbadb6] { color: #9FB6F2; border-color: #243244;
}
:root[data-theme="dark"] .cv-full[data-v-e7cbadb6]:hover { background: #151E2B;
}

/* ── dark REAL (fix 28/07) ──
   O dark global do app é uma INVERSÃO de filtro no body (styles/dark-theme.css);
   ela re-invertia os overrides escuros acima de volta pro claro. O contra-filtro
   (mesma conta do .no-invert) anula a inversão nesta tela e deixa a paleta valer.
   A ficha (.cv-panel) é filha do .cv, então herda o contra-filtro. */
:root[data-theme="dark"] .cv[data-v-e7cbadb6] { filter: invert(1.087) hue-rotate(180deg); color-scheme: dark; color: #EAF0F8;
}

/* topo + textos secundários */
:root[data-theme="dark"] .cv-saved[data-v-e7cbadb6] { color: #2BBF7F;
}
:root[data-theme="dark"] .cv-state[data-v-e7cbadb6], :root[data-theme="dark"] .cv-st[data-v-e7cbadb6], :root[data-theme="dark"] .cv-when[data-v-e7cbadb6],
:root[data-theme="dark"] .cv-empty[data-v-e7cbadb6], :root[data-theme="dark"] .cv-x2[data-v-e7cbadb6], :root[data-theme="dark"] .cv-sec[data-v-e7cbadb6],
:root[data-theme="dark"] .cv-kpi small[data-v-e7cbadb6], :root[data-theme="dark"] .cv-mini small[data-v-e7cbadb6],
:root[data-theme="dark"] .cv-fld-v label[data-v-e7cbadb6], :root[data-theme="dark"] .cv-fld-edit label[data-v-e7cbadb6],
:root[data-theme="dark"] .cv-hist small[data-v-e7cbadb6], :root[data-theme="dark"] .cv-hist.vazio[data-v-e7cbadb6],
:root[data-theme="dark"] .cv-fld-v b.dim[data-v-e7cbadb6] { color: #9AA7B8;
}

/* âmbar dos sumidos / valores em aberto */
:root[data-theme="dark"] .cv-money[data-v-e7cbadb6], :root[data-theme="dark"] .cv-call[data-v-e7cbadb6], :root[data-theme="dark"] .cv-fc.warn[data-v-e7cbadb6] { color: #E8B04B;
}
/* restatement: o .cv-fc.on precisa vir depois do .cv-fc.warn pra seguir azul quando ligado */
:root[data-theme="dark"] .cv-fc.on[data-v-e7cbadb6] { background: #20305A; border-color: #2A3E6E; color: #9FB6F2;
}

/* etiquetas de estado do cliente (fundo dark já existia; faltava o texto) */
:root[data-theme="dark"] .cv-tag.emdia[data-v-e7cbadb6] { color: #2BBF7F;
}
:root[data-theme="dark"] .cv-tag.sum[data-v-e7cbadb6] { color: #E8B04B;
}
:root[data-theme="dark"] .cv-tag.novo[data-v-e7cbadb6] { color: #9FB6F2;
}

/* busca + edição campo a campo */
:root[data-theme="dark"] .cv-search input[data-v-e7cbadb6]::placeholder, :root[data-theme="dark"] .cv-input[data-v-e7cbadb6]::placeholder { color: #6B7A90;
}
/* o input de edição ativa mantém a borda azul (o override genérico apagava) */
:root[data-theme="dark"] .cv-input[data-v-e7cbadb6] { border-color: var(--marca);
}

/* ── O primeiro alô ─────────────────────────────────────────────────────── */
/* Verde do WhatsApp: é sobre falar com cliente, e a cor já diz isso sem gastar
   uma palavra. Piso de leitura 15px vale aqui como em todo lugar. */
.cv-alo[data-v-e7cbadb6] { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 2px 12px;
  width: 100%; text-align: left; margin: 0 0 14px; padding: 14px 16px; cursor: pointer;
  background: #D9EEE5; border: 1px solid #BEDFD1; border-radius: 14px;
}
.cv-alo[data-v-e7cbadb6]:hover { background: #CFE8DC;
}
.cv-alo-t[data-v-e7cbadb6] { grid-column: 1; font-size: 16px; font-weight: 700; color: #14532D;
}
.cv-alo-s[data-v-e7cbadb6] { grid-column: 1; font-size: 15px; color: #3F6B55;
}
.cv-alo-x[data-v-e7cbadb6] { grid-column: 2; grid-row: 1 / span 2; font-size: 26px; color: #1D8A66;
}
.cv-alo-wrap[data-v-e7cbadb6] { position: fixed; inset: 0; background: rgba(20,25,34,.45); display: flex;
  align-items: center; justify-content: center; padding: 16px; z-index: 60;
}
.cv-alo-box[data-v-e7cbadb6] { background: #fff; border-radius: 16px; width: min(560px, 100%);
  max-height: 88vh; display: flex; flex-direction: column; overflow: hidden;
}
.cv-alo-head[data-v-e7cbadb6] { display: flex; align-items: center; justify-content: space-between;
  padding: 16px 18px; border-bottom: 1px solid #E2E5EA; font-size: 17px;
}
.cv-alo-fechar[data-v-e7cbadb6] { background: none; border: 0; font-size: 18px; color: #8A97A8; cursor: pointer;
}
.cv-alo-body[data-v-e7cbadb6] { padding: 16px 18px; overflow-y: auto;
}
.cv-alo-sub[data-v-e7cbadb6] { margin: 0 0 12px; font-size: 15px; color: #5B6572;
}
.cv-alo-msg[data-v-e7cbadb6] { background: #D9EEE5; border-radius: 10px; padding: 12px 14px; margin-bottom: 12px;
}
.cv-alo-msg small[data-v-e7cbadb6] { font-size: 15px; font-weight: 700; color: #3F6B55;
}
.cv-alo-msg p[data-v-e7cbadb6] { margin: 6px 0 0; font-size: 16px; color: #141922;
}
.cv-alo-teto[data-v-e7cbadb6] { margin: 0 0 12px; font-size: 15px; color: #7A5518; background: #F2E7D4;
  border-radius: 8px; padding: 10px 12px;
}
.cv-alo-erro[data-v-e7cbadb6] { margin: 0 0 12px; font-size: 15px; color: var(--st-atrasado-tinta);
}
.cv-alo-lista[data-v-e7cbadb6] { list-style: none; margin: 0 0 14px; padding: 0;
}
.cv-alo-lista li[data-v-e7cbadb6] { display: flex; align-items: center; gap: 10px; padding: 9px 10px;
  border-radius: 9px; cursor: pointer;
}
.cv-alo-lista li.on[data-v-e7cbadb6] { background: var(--acao-tonal);
}
.cv-alo-nome[data-v-e7cbadb6] { flex: 1; font-size: 16px;
}
.cv-alo-tel[data-v-e7cbadb6] { font-size: 15px; color: #8A97A8;
}
.cv-alo-btn[data-v-e7cbadb6] { width: 100%; padding: 13px; border: 0; border-radius: 12px; cursor: pointer;
  background: #1D8A66; color: #fff; font-size: 16px; font-weight: 700;
}
.cv-alo-btn[data-v-e7cbadb6]:disabled { background: #A9BDF0; cursor: default;
}
.cv-alo-ok[data-v-e7cbadb6] { margin: 0 0 6px; font-size: 18px; font-weight: 700; color: #14532D;
}
.cv-alo-sobra[data-v-e7cbadb6] { margin: 0 0 16px; font-size: 15px; color: #5B6572;
}


/* ── Onde a pessoa fala com você (canais da ficha) ── */
.cv-canais[data-v-e7cbadb6] { padding: 12px 14px; border-top: 1px solid var(--linha, #E7EAF0);
}
.cv-canais > label[data-v-e7cbadb6] { display: block; font-size: 15px; color: var(--texto-2, #5A6577); margin-bottom: 8px;
}
.cv-canais-lista[data-v-e7cbadb6] { display: flex; flex-wrap: wrap; gap: 10px;
}
.cv-canal[data-v-e7cbadb6] { display: flex; align-items: center; gap: 8px; background: #fff;
  border: 1px solid var(--linha, #E7EAF0); border-radius: 12px; padding: 7px 11px 7px 8px;
}
.cv-canal-txt[data-v-e7cbadb6] { display: flex; flex-direction: column; line-height: 1.25;
}
.cv-canal-txt b[data-v-e7cbadb6] { font-size: 15px; color: var(--texto, #1B2230);
}
.cv-canal-txt small[data-v-e7cbadb6] { font-size: 15px; color: var(--texto-2, #5A6577);
}

.es[data-v-e43c4522] { text-align: center; padding: 30px 18px; display: flex; flex-direction: column; align-items: center; animation: cadFadeUp .32s ease both;
}
.es-emo[data-v-e43c4522] { font-size: 34px; line-height: 1; animation: cadPop .5s ease .1s both;
}
.es-title[data-v-e43c4522] { font-size: 16px; font-weight: 800; letter-spacing: -.01em; margin-top: 12px; color: #141922;
}
.es-text[data-v-e43c4522] { font-size: 16px; color: #5B6572; line-height: 1.55; margin: 8px 0 0; max-width: 44ch;
}
.es-action[data-v-e43c4522] { margin-top: 16px;
}

.av[data-v-5b525d25] { border-radius: 50%; flex: none; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; line-height: 1;
}

.chip[data-v-7e0f0ac0] { font-size: 15px; font-weight: 700; padding: 3px 10px; border-radius: 100px; white-space: nowrap; display: inline-block;
}
.st-ac[data-v-7e0f0ac0] { color: #5B6572; background: #EDEFF3;
}
.st-aguard[data-v-7e0f0ac0] { color: #7A5518; background: #F2E7D4;
}
.st-atr[data-v-7e0f0ac0] { color: var(--st-atrasado-tinta); background: #F5DFDB;
}
.st-nego[data-v-7e0f0ac0] { color: #5B4A8A; background: #E9E4F2;
}
.st-pago[data-v-7e0f0ac0] { color: #155D46; background: #D9EEE5;
}
.st-perd[data-v-7e0f0ac0] { color: #8A93A3; background: #F0F2F5;
}

.cr[data-v-638c56c9] { display: flex; align-items: center; gap: 12px; padding: 14px 10px; margin: 0 -10px; border-radius: 12px; border-bottom: 1px solid #F0F2F5; transition: background .15s ease;
}
.cr[data-v-638c56c9]:last-child { border-bottom: none;
}
.cr.click .cr-main[data-v-638c56c9] { cursor: pointer;
}
.cr.click[data-v-638c56c9]:hover { background: #FAFBFD;
}
.cr-main[data-v-638c56c9] { flex: 1; min-width: 0;
}
.cr-nm[data-v-638c56c9] { font-weight: 700; font-size: 16px;
}
.cr-edit[data-v-638c56c9] { font-size: 15px; color: var(--acao); font-weight: 600; opacity: 0; transition: opacity .15s; margin-left: 6px;
}
.cr.click:hover .cr-edit[data-v-638c56c9] { opacity: 1;
}
.cr-sub[data-v-638c56c9] { font-size: 15px; color: #8A93A3;
}
.cr-falta[data-v-638c56c9] { color: #7A5518; font-weight: 600;
}
.cr-right[data-v-638c56c9] { text-align: right; display: flex; flex-direction: column; gap: 5px; align-items: flex-end; flex: none;
}
.cr-amt[data-v-638c56c9] { font-weight: 800; font-size: 16px; font-variant-numeric: tabular-nums;
}
.cr-actions[data-v-638c56c9] { display: flex; gap: 7px; flex: none; align-items: center;
}

.fin[data-v-5d5d7447] { width: 100%; max-width: 1200px; margin: 0 auto; padding: 26px clamp(16px, 2.5vw, 36px) 80px; color: #141922;
}
/* Header = conteúdo do corpo (mesma identidade do feed de clientes; nav fica no topo do app). */
.fin-head[data-v-5d5d7447] { margin-bottom: 4px;
}
.fin-title-row[data-v-5d5d7447] { display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
}
.fin-spring[data-v-5d5d7447] { flex: 1;
}
.fin-title[data-v-5d5d7447] { font-size: 24px; font-weight: 800; letter-spacing: -.015em; margin: 0;
}
.fin-sub[data-v-5d5d7447] { color: #5B6572; font-size: 16px; margin: 8px 0 22px;
}
.fin-sub b[data-v-5d5d7447] { color: #141922; font-weight: 700;
}
.fin-muted[data-v-5d5d7447] { color: #8A93A3; font-size: 16px;
}
.fin-empty[data-v-5d5d7447] { color: #5B6572; font-size: 16px; padding: 8px 0;
}
.fin-kpis[data-v-5d5d7447] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-bottom: 16px;
}
@media (max-width: 560px) {
.fin-kpis[data-v-5d5d7447] { grid-template-columns: repeat(2, 1fr);
}
}
.kpi[data-v-5d5d7447] { background: #fff; border: 1px solid #E2E5EA; border-radius: 16px; padding: 16px 18px; transition: transform .18s ease, box-shadow .18s ease;
}
.kpi[data-v-5d5d7447]:hover { transform: translateY(-2px); box-shadow: 0 14px 28px -22px rgba(20,25,34,.28);
}
.kpi .lab[data-v-5d5d7447] { font-size: 15px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #8A93A3;
}
.kpi .val[data-v-5d5d7447] { font-size: 24px; font-weight: 800; letter-spacing: -.02em; margin: 8px 0 2px; font-variant-numeric: tabular-nums;
}
.kpi .meta[data-v-5d5d7447] { font-size: 16px; color: #5B6572;
}
.kpi.rec .val[data-v-5d5d7447] { color: #1D8A66;
}
.kpi.ar .val[data-v-5d5d7447] { color: var(--azul-900);
}
.kpi.atr .val[data-v-5d5d7447] { color: var(--st-atrasado-tinta);
}
.grid2[data-v-5d5d7447] { display: grid; grid-template-columns: 1fr 380px; gap: 16px; align-items: start;
}
@media (max-width: 960px) {
.grid2[data-v-5d5d7447] { grid-template-columns: 1fr;
}
}
.col[data-v-5d5d7447] { display: flex; flex-direction: column; gap: 16px; min-width: 0;
}
.card[data-v-5d5d7447] { background: #fff; border: 1px solid #E2E5EA; border-radius: 16px; padding: 18px 20px;
}
.fin-sech[data-v-5d5d7447] { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
}
.fin-newbtn[data-v-5d5d7447] { border: none; background: var(--acao); color: #fff; font-family: inherit; font-weight: 800; font-size: 15px; padding: 9px 15px; border-radius: 10px; cursor: pointer; white-space: nowrap;
}
.fin-newbtn[data-v-5d5d7447]:hover { background: var(--azul-900);
}
.fin-newform[data-v-5d5d7447] { margin: 12px 0 6px; padding: 14px; border: 1px solid #dbe3f0; border-radius: 12px; background: #f6f9fd; display: flex; flex-direction: column; gap: 10px;
}
.nf-row[data-v-5d5d7447] { display: flex; flex-direction: column; gap: 5px;
}
.nf-row label[data-v-5d5d7447] { font-size: 15px; font-weight: 700; color: #334155;
}
.nf-row label small[data-v-5d5d7447] { font-weight: 500; color: var(--texto-3);
}
.nf-in[data-v-5d5d7447] { border: 1.5px solid #d8e0ec; border-radius: 9px; padding: 10px 12px; font-family: inherit; font-size: 15px; color: var(--texto); background: #fff; outline: none;
}
.nf-in[data-v-5d5d7447]:focus { border-color: var(--acao);
}
.nf-money[data-v-5d5d7447] { display: flex; align-items: center; gap: 8px;
}
.nf-money span[data-v-5d5d7447] { font-weight: 700; color: #64748b;
}
.nf-money .nf-in[data-v-5d5d7447] { flex: 1;
}
.nf-actions[data-v-5d5d7447] { display: flex; align-items: center; gap: 10px; margin-top: 2px;
}
.nf-cancel[data-v-5d5d7447] { border: none; background: none; color: #64748b; font-family: inherit; font-size: 15px; font-weight: 700; cursor: pointer;
}
.card h2[data-v-5d5d7447] { font-size: 18px; font-weight: 800; letter-spacing: -.01em; margin-bottom: 4px;
}
.card .hint[data-v-5d5d7447] { font-size: 16px; color: #8A93A3; margin-bottom: 14px;
}
.chart[data-v-5d5d7447] { display: flex; align-items: flex-end; gap: 12px; height: 150px; padding-top: 8px;
}
.bar[data-v-5d5d7447] { flex: 1; display: flex; flex-direction: column; align-items: center; gap: 7px; height: 100%; justify-content: flex-end;
}
.bar .bcol[data-v-5d5d7447] { width: 100%; max-width: 46px; border-radius: 7px 7px 0 0; background: var(--acao-tonal);
}
.bar.cur .bcol[data-v-5d5d7447] { background: var(--azul-900);
}
.bar .bv[data-v-5d5d7447] { font-size: 15px; font-weight: 700; color: #5B6572; font-variant-numeric: tabular-nums;
}
.bar .bm[data-v-5d5d7447] { font-size: 15px; color: #8A93A3; font-weight: 600;
}
.bar.cur .bm[data-v-5d5d7447] { color: var(--azul-900);
}
.cyc[data-v-5d5d7447] { display: flex; flex-direction: column; gap: 12px;
}
.cyc-b[data-v-5d5d7447] { display: flex; flex-direction: column; gap: 3px; padding: 12px 14px; border: 1px solid #E2E5EA; border-radius: 12px;
}
.cyc-t[data-v-5d5d7447] { font-size: 15px; font-weight: 700; letter-spacing: .04em; color: #8A93A3;
}
.cyc-v[data-v-5d5d7447] { font-size: 20px; font-weight: 800; font-variant-numeric: tabular-nums; letter-spacing: -.02em;
}
.cyc-m[data-v-5d5d7447] { font-size: 16px; color: #5B6572;
}
.cyc-bar[data-v-5d5d7447] { margin-top: 8px; height: 5px; border-radius: 100px; background: #F0F2F5; position: relative;
}
.cyc-bar[data-v-5d5d7447]::after { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: var(--p); background: var(--c); border-radius: 100px;
}
.cyc-list[data-v-5d5d7447] { margin-top: 14px; border-top: 1px solid #F0F2F5; padding-top: 4px;
}
.cyc-row[data-v-5d5d7447] { display: flex; align-items: center; gap: 10px; padding: 9px 0; border-bottom: 1px solid #F0F2F5;
}
.cyc-row[data-v-5d5d7447]:last-child { border-bottom: none;
}
.cyc-rc[data-v-5d5d7447] { font-weight: 700; font-size: 16px; flex: none; max-width: 130px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.cyc-rd[data-v-5d5d7447] { font-size: 16px; color: #8A93A3; flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.cyc-rv[data-v-5d5d7447] { font-weight: 700; font-size: 16px; color: #1D8A66; font-variant-numeric: tabular-nums;
}
.charge[data-v-5d5d7447] { display: flex; align-items: center; gap: 12px; padding: 14px 10px; margin: 0 -10px; border-radius: 12px; border-bottom: 1px solid #F0F2F5; transition: background .15s ease;
}
.charge[data-v-5d5d7447]:hover { background: #FAFBFD;
}
.charge[data-v-5d5d7447]:last-child { border-bottom: none;
}
.av[data-v-5d5d7447] { width: 46px; height: 46px; border-radius: 50%; flex: none; font-weight: 700; font-size: 16px; display: flex; align-items: center; justify-content: center;
}
.ci[data-v-5d5d7447] { flex: 1; min-width: 0;
}
.ci .nm[data-v-5d5d7447] { font-weight: 700; font-size: 16px;
}
.ci .svc[data-v-5d5d7447] { font-size: 16px; color: #8A93A3;
}
.charge-right[data-v-5d5d7447] { text-align: right; display: flex; flex-direction: column; gap: 5px; align-items: flex-end;
}
.amt[data-v-5d5d7447] { font-weight: 800; font-size: 18px; font-variant-numeric: tabular-nums;
}
.status[data-v-5d5d7447] { font-size: 16px; font-weight: 700; padding: 3px 10px; border-radius: 100px; white-space: nowrap;
}
.st-atr[data-v-5d5d7447] { color: var(--st-atrasado-tinta); background: #F5DFDB;
}
.st-ok[data-v-5d5d7447] { color: var(--azul-900); background: var(--acao-tonal);
}
.st-pago[data-v-5d5d7447] { color: #155D46; background: #D9EEE5;
}
.st-ac[data-v-5d5d7447] { color: #5B6572; background: #EDEFF3;
}
.st-aguard[data-v-5d5d7447] { color: #7A5518; background: #F2E7D4;
}
.st-nego[data-v-5d5d7447] { color: #5B4A8A; background: #E9E4F2;
}
.st-perd[data-v-5d5d7447] { color: #8A93A3; background: #F0F2F5;
}
.pago-tag[data-v-5d5d7447] { font-size: 16px; color: #155D46; font-weight: 700;
}

/* ferramentas (corpo) + toast */
.fin-tool[data-v-5d5d7447] { background: #fff; border: 1px solid #D3D8E0; border-radius: 100px; font-family: inherit; font-size: 16px; font-weight: 700; color: var(--azul-900); padding: 8px 15px; cursor: pointer;
}
.fin-tool[data-v-5d5d7447]:hover { background: #F3F6FD;
}
.fin-tool[data-v-5d5d7447]:disabled { opacity: .55; cursor: default;
}
.fin-toast[data-v-5d5d7447] { background: #D9EEE5; color: #155D46; border: 1px solid #B7E0CE; border-radius: 12px; padding: 11px 15px; font-size: 16px; font-weight: 600; margin: 10px 0 0;
}
.nego-toggle[data-v-5d5d7447] { display: flex; align-items: center; gap: 9px; padding: 12px 14px; margin: 2px 0 4px; border: 1px solid #E9E4F2; background: #F6F3FB; border-radius: 12px; font-size: 16px; color: #3E4444; cursor: pointer;
}
.nego-toggle input[data-v-5d5d7447] { width: 18px; height: 18px; accent-color: #5B4A8A;
}
.nego-toggle b[data-v-5d5d7447] { color: #5B4A8A;
}
.parc-prog[data-v-5d5d7447] { font-size: 16px; color: #3E4444; background: #F2E7D4; border-radius: 9px; padding: 9px 12px; margin-bottom: 8px;
}
.parc-prog b[data-v-5d5d7447] { color: #7A5518;
}
.parc-falta[data-v-5d5d7447] { color: var(--st-atrasado-tinta) !important;
}
.parc-row[data-v-5d5d7447] { display: flex; gap: 9px; align-items: center; flex-wrap: wrap;
}
.parc-hint[data-v-5d5d7447] { font-size: 16px; color: #8A93A3; margin-top: 6px;
}
.svc-parc[data-v-5d5d7447] { color: #7A5518; font-weight: 600;
}
.cta[data-v-5d5d7447] { border: none; font-family: inherit; font-weight: 600; font-size: 16px; cursor: pointer; border-radius: 8px; padding: 10px 18px; white-space: nowrap; transition: transform .12s ease, background .15s ease, filter .15s ease;
}
.cta[data-v-5d5d7447]:active, .fin-tool[data-v-5d5d7447]:active { transform: scale(.96);
}
.fin-tool[data-v-5d5d7447] { transition: transform .12s ease, background .15s ease;
}
.cta-deep[data-v-5d5d7447] { background: var(--azul-900); color: #fff;
}
.cta-deep[data-v-5d5d7447]:hover { background: var(--acao);
}
.cta-wa[data-v-5d5d7447] { background: #1D8A66; color: #fff;
}
.cta-wa[data-v-5d5d7447]:hover { filter: brightness(.95);
}
.cta-ghost[data-v-5d5d7447] { background: transparent; border: 1px solid #E2E5EA; color: #5B6572;
}
.cta-ghost[data-v-5d5d7447]:hover { background: #F7F8FA;
}
.cobrabox[data-v-5d5d7447] { margin: 0 0 14px 54px; border: 1px solid #E2E5EA; border-radius: 12px; padding: 13px 15px; background: #EAF0FC;
}
.cobrabox.sent[data-v-5d5d7447] { display: flex; align-items: center; gap: 8px;
}
.cobrabox .lab[data-v-5d5d7447] { font-size: 15px; font-weight: 700; letter-spacing: .06em; color: #8A93A3; margin-bottom: 6px;
}
.cobrabox .msg[data-v-5d5d7447] { font-size: 16px; line-height: 1.6; color: #3E4444; font-style: italic; margin-bottom: 12px;
}
.cbrow[data-v-5d5d7447] { display: flex; gap: 8px; align-items: center;
}
.spring[data-v-5d5d7447] { flex: 1;
}
.sent-note[data-v-5d5d7447] { font-size: 16px; color: #155D46;
}
.mini[data-v-5d5d7447] { display: flex; align-items: center; justify-content: space-between; padding: 11px 0; border-bottom: 1px solid #F0F2F5; font-size: 16px;
}
.mini[data-v-5d5d7447]:last-child { border-bottom: none;
}
.mini .l[data-v-5d5d7447] { color: #3E4444;
}
.mini .r[data-v-5d5d7447] { font-weight: 700; font-variant-numeric: tabular-nums;
}

/* entidade cobrança: linha clicável + painel de detalhe/edição */
.ci-click[data-v-5d5d7447] { cursor: pointer;
}
.ci-edit[data-v-5d5d7447] { font-size: 16px; color: var(--acao); font-weight: 600; opacity: 0; transition: opacity .15s;
}
.ci-click:hover .ci-edit[data-v-5d5d7447] { opacity: 1;
}
/* Painel de transição (desliza da direita) — vira tela cheia no celular. */
/* Inner-body: VIEW no fluxo (como "ver ficha completa") — barra do topo do app fica visível. */
.fin-detail[data-v-5d5d7447] { width: 100%; max-width: 620px; margin: 0 auto;
}
.fd-top[data-v-5d5d7447] { display: flex; align-items: center; justify-content: space-between; padding: 2px 0 14px;
}
.fd-back[data-v-5d5d7447] { background: none; border: none; font-family: inherit; font-size: 16px; font-weight: 700; color: var(--azul-900); cursor: pointer; padding: 4px 0;
}
.fd-body[data-v-5d5d7447] { padding: 0;
}
.fd-title[data-v-5d5d7447] { font-size: 24px; font-weight: 800; letter-spacing: -.01em;
}
.fd-sub[data-v-5d5d7447] { font-size: 16px; color: #8A93A3; margin-bottom: 18px;
}
.fd-actions[data-v-5d5d7447] { display: flex; gap: 10px; align-items: center; padding: 18px 0 calc(24px + env(safe-area-inset-bottom));
}
.fd-actions .cta[data-v-5d5d7447] { flex: 1; justify-content: center; text-align: center;
}
.slide-detail-enter-active[data-v-5d5d7447], .slide-detail-leave-active[data-v-5d5d7447] { transition: transform .26s cubic-bezier(.4,0,.2,1), opacity .26s;
}
.slide-detail-enter-from[data-v-5d5d7447], .slide-detail-leave-to[data-v-5d5d7447] { transform: translateX(4%); opacity: 0;
}
@media (prefers-reduced-motion: reduce) {
.slide-detail-enter-active[data-v-5d5d7447], .slide-detail-leave-active[data-v-5d5d7447] { transition: opacity .2s;
}
.slide-detail-enter-from[data-v-5d5d7447], .slide-detail-leave-to[data-v-5d5d7447] { transform: none;
}
}
.field[data-v-5d5d7447] { margin-bottom: 12px;
}
.field label[data-v-5d5d7447] { display: block; font-size: 15px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #8A93A3; margin-bottom: 5px;
}
.field input[data-v-5d5d7447], .field textarea[data-v-5d5d7447] { width: 100%; box-sizing: border-box; border: 1px solid #E2E5EA; border-radius: 10px; padding: 11px 13px; font-family: inherit; font-size: 16px; color: #141922;
}
.field input[data-v-5d5d7447]:focus, .field textarea[data-v-5d5d7447]:focus { outline: none; border-color: var(--acao);
}
.field-row[data-v-5d5d7447] { display: flex; gap: 12px;
}
.field-row .field[data-v-5d5d7447] { flex: 1;
}
.money[data-v-5d5d7447] { display: flex; align-items: center; border: 1px solid #E2E5EA; border-radius: 10px; padding-left: 12px;
}
.money span[data-v-5d5d7447] { color: #8A93A3; font-weight: 700;
}
.money span[data-v-5d5d7447] { font-size: 16px;
}
.money input[data-v-5d5d7447] { border: none; flex: 1; padding: 11px 12px; font-size: 16px;
}
.money input[data-v-5d5d7447]:focus { outline: none;
}
.pills[data-v-5d5d7447] { display: flex; gap: 6px; flex-wrap: wrap;
}
.pill[data-v-5d5d7447] { border: 1px solid #E2E5EA; background: #fff; border-radius: 100px; padding: 8px 15px; font-family: inherit; font-size: 16px; font-weight: 600; color: #5B6572; cursor: pointer;
}
.pill.on[data-v-5d5d7447] { background: var(--acao-tonal); border-color: var(--acao-tonal); color: var(--azul-900);
}
.sheet-meta[data-v-5d5d7447] { font-size: 16px; color: #8A93A3; margin: 6px 0 14px;
}
.sheet-actions[data-v-5d5d7447] { display: flex; gap: 8px; align-items: center;
}

[data-v-ea1cf0a9] {
  box-sizing: border-box;
}
.my-plan[data-v-ea1cf0a9] {
  min-height: 100vh;
  background: #f4f7fb;
  color: var(--texto);
  font-family: 'Nunito', sans-serif;
}

/* CONTAINER */
.mp-container[data-v-ea1cf0a9] {
  max-width: 680px;
  margin: 0 auto;
  padding: 18px 24px 60px;
}

/* STATE CARDS */
.state-card[data-v-ea1cf0a9] {
  background: #fff;
  border: 1px solid #e1e8f1;
  border-radius: 18px;
  padding: 26px 28px;
  margin-bottom: 16px;
}
.trial-card[data-v-ea1cf0a9] {
  border: 1px solid #e1e8f1;
}
.inactive-card[data-v-ea1cf0a9] {
  border: 1.5px solid rgba(169, 121, 123, 0.45);
}
.state-header[data-v-ea1cf0a9] {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  flex-wrap: wrap;
  margin-bottom: 14px;
}
.state-label[data-v-ea1cf0a9] {
  font-size: 15px;
  color: #8996a8;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  margin-bottom: 4px;
}
.state-title[data-v-ea1cf0a9] {
  font-size: 28px;
  margin: 0;
  font-weight: 800;
  font-family: 'Baloo 2', sans-serif;
}
.state-right[data-v-ea1cf0a9] {
  text-align: right;
}
.trial-days[data-v-ea1cf0a9] {
  font-size: 28px;
  font-weight: 800;
  font-family: 'Baloo 2', sans-serif;
  color: var(--acao);
}
.trial-label[data-v-ea1cf0a9] {
  font-size: 16px;
  color: #8996a8;
  font-weight: 700;
  line-height: 1.3;
}
.trial-progress-bar[data-v-ea1cf0a9] {
  height: 10px;
  background: #edf2f9;
  border-radius: 100px;
  overflow: hidden;
  margin-bottom: 10px;
}
.progress-fill[data-v-ea1cf0a9] {
  height: 100%;
  background: linear-gradient(90deg, var(--marca), var(--acao));
  border-radius: 100px;
}
.trial-dates[data-v-ea1cf0a9] {
  display: flex;
  justify-content: space-between;
  font-size: 15px;
  color: #8996a8;
  font-weight: 700;
  margin-bottom: 16px;
}
.state-desc[data-v-ea1cf0a9] {
  font-size: 16px;
  line-height: 1.6;
  color: #475569;
  margin: 0;
}

/* ACTIVE STATE */
.active-subtext[data-v-ea1cf0a9] {
  font-size: 16px;
  color: #55617b;
  margin: 8px 0 0;
}
.price-display[data-v-ea1cf0a9] {
  font-size: 28px;
  font-weight: 800;
  font-family: 'Baloo 2', sans-serif;
}
.price-period[data-v-ea1cf0a9] {
  font-size: 16px;
  color: #8996a8;
  font-weight: 700;
}
.client-count[data-v-ea1cf0a9] {
  font-size: 15px;
  color: #8996a8;
  font-weight: 700;
}
.active-buttons[data-v-ea1cf0a9] {
  display: flex;
  gap: 9px;
  margin-top: 18px;
  flex-wrap: wrap;
}
.secondary-btn[data-v-ea1cf0a9] {
  background: #fff;
  border: 1.5px solid #e1e8f1;
  color: var(--acao);
  padding: 12px 20px;
  font-size: 16px;
  border-radius: 8px;
  cursor: pointer;
  font-weight: 700;
  transition: all 0.2s;
}
.secondary-btn[data-v-ea1cf0a9]:hover {
  background: #f8f9fb;
  border-color: #d1d9e6;
}
.small-text[data-v-ea1cf0a9] {
  font-size: 15px;
  color: #8996a8;
  margin: 12px 0 0;
}

/* DISCOUNT BANNER */
.discount-banner[data-v-ea1cf0a9] {
  background: #f0f6f1;
  border: 1px solid #d8e7da;
  border-radius: 16px;
  padding: 16px 20px;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  gap: 14px;
}
.discount-icon[data-v-ea1cf0a9] {
  font-size: 24px;
}
.discount-text[data-v-ea1cf0a9] {
  flex: 1;
  font-size: 16px;
  color: #3e6b4a;
  margin: 0;
  line-height: 1.5;
}

/* SUBSCRIBE CARD */
.subscribe-card[data-v-ea1cf0a9] {
  background: #fff;
  border: 2px solid var(--marca);
  border-radius: 18px;
  padding: 28px;
  margin-bottom: 16px;
  box-shadow: 0 16px 40px rgba(91, 135, 199, 0.14);
}
.subscribe-header[data-v-ea1cf0a9] {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 6px;
}
.subscribe-title[data-v-ea1cf0a9] {
  font-size: 24px;
  margin: 0;
  font-weight: 800;
  font-family: 'Baloo 2', sans-serif;
}
.price-section[data-v-ea1cf0a9] {
  display: flex;
  align-items: baseline;
  gap: 8px;
}
.original-price[data-v-ea1cf0a9] {
  font-size: 16px;
  color: #a6b0bf;
  text-decoration: line-through;
  font-weight: 700;
}
.plan-price[data-v-ea1cf0a9] {
  font-size: 34px;
  font-weight: 800;
  font-family: 'Baloo 2', sans-serif;
}
.plan-period[data-v-ea1cf0a9] {
  font-size: 16px;
  color: #8996a8;
  font-weight: 700;
}
.subscribe-tagline[data-v-ea1cf0a9] {
  font-size: 16px;
  color: #55617b;
  margin: 0 0 18px;
}
.features-grid[data-v-ea1cf0a9] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px 18px;
  margin-bottom: 20px;
}
.feature-row[data-v-ea1cf0a9] {
  font-size: 16px;
  color: #42506a;
  display: flex;
  gap: 9px;
}
.subscribe-btn[data-v-ea1cf0a9] {
  width: 100%;
  background: var(--marca);
  color: #fff;
  padding: 16px;
  font-size: 16px;
  border: none;
  border-radius: 13px;
  cursor: pointer;
  font-weight: 800;
  font-family: 'Nunito', sans-serif;
  transition: all 0.2s;
}
.subscribe-btn[data-v-ea1cf0a9]:hover:not(:disabled) {
  background: var(--acao);
}
.subscribe-btn[data-v-ea1cf0a9]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.subscribe-trust[data-v-ea1cf0a9] {
  display: flex;
  justify-content: center;
  gap: 14px;
  margin-top: 12px;
  font-size: 15px;
  color: #8996a8;
  font-weight: 700;
  flex-wrap: wrap;
}

/* TRUST CARD */
.trust-card[data-v-ea1cf0a9] {
  background: #fff;
  border: 1px solid #e1e8f1;
  border-radius: 18px;
  padding: 20px 24px;
  display: flex;
  flex-direction: column;
  gap: 11px;
}
.trust-item[data-v-ea1cf0a9] {
  display: flex;
  gap: 11px;
  font-size: 16px;
  color: #55617b;
  line-height: 1.5;
}
.trust-item a[data-v-ea1cf0a9] {
  color: var(--acao);
  text-decoration: none;
  font-weight: 700;
  transition: color 0.2s;
}
.trust-item a[data-v-ea1cf0a9]:hover {
  color: #3a5b94;
  text-decoration: underline;
}
.trust-icon[data-v-ea1cf0a9] {
  flex-shrink: 0;
}
@media (max-width: 768px) {
.topbar[data-v-ea1cf0a9] {
    padding: 12px 16px;
}
.mp-container[data-v-ea1cf0a9] {
    padding: 12px 16px 40px;
}
.subscribe-header[data-v-ea1cf0a9] {
    flex-direction: column;
    align-items: flex-start;
}
.price-section[data-v-ea1cf0a9] {
    width: 100%;
}
.features-grid[data-v-ea1cf0a9] {
    grid-template-columns: 1fr;
}
.subscribe-trust[data-v-ea1cf0a9] {
    flex-direction: column;
    gap: 8px;
}
}

.sg-profession-selector[data-v-52986534] {
  margin: 1.5rem 0;
}
.sg-prof-loading[data-v-52986534] {
  text-align: center;
  color: #666;
  font-size: 0.9rem;
  padding: 1rem;
}

/* PRIMARY: Select dropdown */
.sg-prof-select[data-v-52986534] {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #bfccde;
  border-radius: 8px;
  font-size: 16px;
  font-family: inherit;
  background: white;
  color: var(--texto);
  cursor: pointer;
  transition: border-color 0.2s;
}
.sg-prof-select[data-v-52986534]:hover {
  border-color: var(--texto-3);
}
.sg-prof-select[data-v-52986534]:focus {
  outline: none;
  border-color: var(--marca);
  box-shadow: 0 0 0 3px rgba(94, 134, 184, 0.1);
}
.sg-prof-select option[data-v-52986534] {
  padding: 8px;
  color: var(--texto);
}

/* Selected display */
.sg-selected-display[data-v-52986534] {
  margin-top: 12px;
  padding: 12px 14px;
  background: #f0f4f9;
  border: 1px solid #bfccde;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.sg-selected-item[data-v-52986534] {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: space-between;
  padding: 8px;
  background: white;
  border-radius: 6px;
  border: 1px solid #e2e8f0;
}
.sg-item-icon[data-v-52986534] {
  font-size: 1.2rem;
}
.sg-item-name[data-v-52986534] {
  flex: 1;
  font-size: 16px;
  font-weight: 500;
  color: var(--texto);
}
.sg-item-delete[data-v-52986534] {
  background: none;
  border: none;
  color: var(--texto-3);
  cursor: pointer;
  font-size: 16px;
  padding: 4px 8px;
  transition: all 0.2s;
  flex-shrink: 0;
}
.sg-item-delete[data-v-52986534]:hover {
  color: #dc2626;
  transform: scale(1.2);
}
.optional[data-v-52986534] {
  font-size: 15px;
  color: var(--texto-3);
  font-weight: normal;
}
.sg-err[data-v-52986534] {
  color: #d32f2f;
  font-size: 0.85rem;
  margin-top: 0.5rem;
}

.skills-container[data-v-caadea5b] {
  padding: 20px;
  max-width: 800px;
}
.skills-section[data-v-caadea5b] {
  margin-bottom: 28px;
}
.skills-section h3[data-v-caadea5b] {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 4px;
  color: #333;
  display: flex;
  align-items: center;
  gap: 8px;
}
.profession[data-v-caadea5b] {
  font-size: 16px;
  color: #667eea;
  font-weight: 500;
}
.count[data-v-caadea5b] {
  font-size: 15px;
  color: #999;
  font-weight: normal;
}
.section-hint[data-v-caadea5b] {
  font-size: 15px;
  color: #999;
  margin-bottom: 12px;
  line-height: 1.4;
}
.skills-cloud[data-v-caadea5b] {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}
.skill-pill[data-v-caadea5b] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 20px;
  cursor: pointer;
  transition: all 0.2s;
  border: 1px solid transparent;
  position: relative;
  user-select: none;
}
.skill-pill.default[data-v-caadea5b] {
  background: #f0f4f9;
  border-color: #d4dce6;
}
.skill-pill.default[data-v-caadea5b]:hover {
  background: #e8f0f9;
  border-color: #667eea;
}
.skill-pill.custom[data-v-caadea5b] {
  background: #ecfdf5;
  border-color: #d1fae5;
}
.skill-pill.custom[data-v-caadea5b]:hover {
  background: #d1fae5;
  border-color: #10b981;
}
.skill-pill.removed[data-v-caadea5b] {
  background: #f3f4f6;
  border-color: #d1d5db;
  opacity: 0.6;
}
.skill-pill .name[data-v-caadea5b] {
  font-size: 16px;
  font-weight: 500;
  color: #333;
}
.skill-pill .level[data-v-caadea5b] {
  font-size: 15px;
  color: #667eea;
  letter-spacing: -2px;
}
.remove-btn[data-v-caadea5b], .restore-btn[data-v-caadea5b], .delete-btn[data-v-caadea5b] {
  width: 20px;
  height: 20px;
  padding: 0;
  background: none;
  border: none;
  color: #999;
  font-size: 16px;
  cursor: pointer;
  transition: color 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.remove-btn[data-v-caadea5b]:hover, .restore-btn[data-v-caadea5b]:hover {
  color: #667eea;
}
.delete-btn[data-v-caadea5b]:hover {
  color: #ef4444;
}
.edit-inline[data-v-caadea5b] {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  gap: 4px;
  background: white;
  border-radius: 20px;
  padding: 4px;
  z-index: 10;
}
.edit-inline input[data-v-caadea5b],
.edit-inline select[data-v-caadea5b] {
  flex: 1;
  border: 1px solid #ddd;
  border-radius: 16px;
  padding: 4px 8px;
  font-size: 15px;
  font-family: inherit;
}
.add-section[data-v-caadea5b] {
  margin-top: 20px;
}
.add-btn[data-v-caadea5b] {
  width: 100%;
  padding: 12px 16px;
  border: 2px dashed #ddd;
  background: white;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 500;
  color: #667eea;
  cursor: pointer;
  transition: all 0.2s;
}
.add-btn[data-v-caadea5b]:hover {
  border-color: #667eea;
  background: var(--fundo);
}
.add-form[data-v-caadea5b] {
  display: flex;
  gap: 8px;
  margin-top: 12px;
  animation: slideDown-caadea5b 0.3s ease-out;
}
@keyframes slideDown-caadea5b {
from {
    opacity: 0;
    transform: translateY(-10px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}
.add-form input[data-v-caadea5b],
.add-form select[data-v-caadea5b] {
  padding: 10px 14px;
  border: 2px solid #f0f4f9;
  border-radius: 8px;
  font-size: 16px;
  font-family: inherit;
  transition: all 0.2s;
}
.add-form input[data-v-caadea5b] {
  flex: 1;
}
.add-form input[data-v-caadea5b]:focus,
.add-form select[data-v-caadea5b]:focus {
  outline: none;
  border-color: #667eea;
  background: var(--fundo);
}
.removed-section[data-v-caadea5b] {
  opacity: 0.7;
  border-top: 1px dashed #ddd;
  padding-top: 16px;
}
.removed-section h4[data-v-caadea5b] {
  font-size: 15px;
  color: #999;
  margin-bottom: 8px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.wt[data-v-db3095c3] { display: flex; flex-direction: column; gap: 14px; margin-top: 12px;
}
.wt-empty[data-v-db3095c3] {
  background: linear-gradient(135deg, #f0f6ff 0%, #e8f0fa 100%);
  border: 1.5px solid #cfdff2; border-radius: 14px; padding: 18px;
  display: flex; flex-direction: column; gap: 10px;
}
.wt-empty-title[data-v-db3095c3] { font-size: 16px; font-weight: 800; text-transform: uppercase; letter-spacing: 0.4px; color: var(--acao); margin: 0;
}
.wt-empty-text[data-v-db3095c3] { font-size: 16px; color: #334155; line-height: 1.55; margin: 0;
}
.wt-default-card[data-v-db3095c3] {
  display: flex; flex-direction: column; gap: 2px;
  background: #fff; border-radius: 12px; padding: 13px 16px;
}
.wt-default-label[data-v-db3095c3] { font-size: 15px; color: var(--texto-3); font-weight: 700;
}
.wt-default-value[data-v-db3095c3] { font-size: 18px; font-weight: 800; color: var(--texto);
}
.wt-empty-actions[data-v-db3095c3] { display: flex; gap: 8px; flex-wrap: wrap;
}
.wt-btn[data-v-db3095c3] {
  border: none; border-radius: 11px; padding: 13px 20px;
  font-size: 16px; font-weight: 800; cursor: pointer; font-family: inherit;
}
.wt-btn.primary[data-v-db3095c3] { background: var(--acao); color: #fff;
}
.wt-btn.primary[data-v-db3095c3]:disabled { opacity: 0.5;
}
.wt-btn.ghost[data-v-db3095c3] { background: #fff; border: 1.5px solid #dbe6f3; color: var(--acao);
}
.wt-btn.small[data-v-db3095c3] { padding: 10px 14px; font-size: 16px; background: #eef3f9; color: var(--acao);
}
.wt-summary-line[data-v-db3095c3] { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap;
}
.wt-summary-text[data-v-db3095c3] { font-size: 16px; color: var(--texto);
}
.wt-link[data-v-db3095c3] { border: none; background: none; font-size: 16px; font-weight: 800; color: var(--acao); cursor: pointer; font-family: inherit; padding: 4px 0;
}
.wt-link.danger[data-v-db3095c3] { color: #b45309;
}
.wt-hint[data-v-db3095c3] { font-size: 16px; color: var(--texto-3); line-height: 1.5; margin: 4px 0 0;
}
.wt-editor[data-v-db3095c3] { display: flex; flex-direction: column; gap: 8px;
}
.wt-label[data-v-db3095c3] { font-size: 16px; font-weight: 800; color: var(--acao); text-transform: uppercase; letter-spacing: 0.3px; margin: 6px 0 0;
}
.wt-days[data-v-db3095c3] { display: flex; gap: 6px; flex-wrap: wrap;
}
.wt-day[data-v-db3095c3] {
  min-width: 52px; padding: 11px 0; border-radius: 999px; text-align: center;
  border: 1.5px solid #dbe6f3; background: #fff; font-size: 16px; font-weight: 700;
  color: #475569; cursor: pointer; font-family: inherit;
}
.wt-day.on[data-v-db3095c3] { background: var(--acao); border-color: var(--acao); color: #fff;
}
.wt-hours[data-v-db3095c3] { display: flex; align-items: center; gap: 10px;
}
.wt-sep[data-v-db3095c3] { font-size: 16px; color: #64748b;
}
.wt-input[data-v-db3095c3] {
  border: 1px solid #dbe6f3; border-radius: 10px; padding: 12px 13px;
  font-size: 16px; color: var(--texto); font-family: inherit; background: #fbfdff;
}
.wt-error[data-v-db3095c3] { color: #dc2626; font-size: 16px; margin: 2px 0 0;
}
.wt-exceptions[data-v-db3095c3] { display: flex; flex-direction: column; gap: 8px;
}
.wt-exc[data-v-db3095c3] {
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
  background: #fbfdff; border: 1px solid #e5ecf5; border-radius: 10px; padding: 11px 14px;
}
.wt-exc-text[data-v-db3095c3] { font-size: 16px; color: var(--texto);
}
.wt-exc-add[data-v-db3095c3] { display: flex; gap: 8px; flex-wrap: wrap; align-items: center;
}

.account-container[data-v-0a2cefd8] { max-width: 900px; margin: 2rem auto; padding: 0 2rem;
}
.public-link-desc[data-v-0a2cefd8] { font-size: 16px; color: #64748b; margin: 6px 0 14px; line-height: 1.5;
}

/* Atalho para a conexão do WhatsApp (a seta é o ícone "voltar" espelhado). */
.conectar-wa[data-v-0a2cefd8] {
  width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 14px;
  background: #F4F8FF; border: 1px solid #D7E3F8; border-radius: 14px;
  padding: 15px 16px; margin: 4px 0 16px; cursor: pointer; text-align: left;
  font-family: inherit; color: var(--texto);
}
.conectar-wa[data-v-0a2cefd8]:hover { background: #EAF1FE; border-color: #BFD3F3;
}
.conectar-wa b[data-v-0a2cefd8] { display: block; font-size: 16px;
}
.conectar-wa small[data-v-0a2cefd8] { display: block; font-size: 15px; color: var(--texto-3); margin-top: 3px; line-height: 1.45;
}
.conectar-wa-seta[data-v-0a2cefd8] { transform: rotate(180deg); flex: none; color: var(--acao);
}
.senha-msg[data-v-0a2cefd8] { font-size: 15px; border-radius: 10px; padding: 10px 12px; margin: 2px 0 12px; line-height: 1.45;
}
.senha-msg.erro[data-v-0a2cefd8] { color: var(--st-atrasado-tinta); background: #F9EFED;
}
.senha-msg.ok[data-v-0a2cefd8] { color: #1B7A4B; background: #E9F5EE;
}
.public-link-row[data-v-0a2cefd8] { display: flex; gap: 8px; align-items: center; margin-bottom: 14px;
}
.public-link-input[data-v-0a2cefd8] { flex: 1; padding: 10px 12px; border: 1px solid #bfccde; border-radius: 8px; font-size: 16px; font-family: inherit; color: var(--texto); background: #f8fafc;
}
.public-link-qr[data-v-0a2cefd8] { display: flex; align-items: center; gap: 14px;
}
.public-link-qr img[data-v-0a2cefd8] { border: 1px solid var(--linha); border-radius: 10px; padding: 6px; background: white;
}
.public-link-qr-hint[data-v-0a2cefd8] { font-size: 15px; color: var(--texto-3);
}
@media (max-width: 640px) {
.public-link-row[data-v-0a2cefd8] { flex-direction: column; align-items: stretch;
}
.public-link-input[data-v-0a2cefd8] { font-size: 15px;
}
.public-link-qr[data-v-0a2cefd8] { flex-direction: column; text-align: center;
}
}
.account-card[data-v-0a2cefd8] { background: white; border-radius: 12px; box-shadow: 0 2px 8px rgba(0,0,0,0.06); overflow: hidden;
}
.account-header[data-v-0a2cefd8] { background: linear-gradient(135deg, var(--marca) 0%, #759fd7 100%); padding: 3rem; color: white; display: flex; align-items: center; gap: 2rem;
}
.avatar[data-v-0a2cefd8] { width: 100px; height: 100px; background: rgba(255,255,255,0.25); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 40px; font-weight: 700; flex-shrink: 0; border: 3px solid rgba(255,255,255,0.4);
}
.header-info h1[data-v-0a2cefd8] { margin: 0; font-size: 28px; font-weight: 700;
}
.header-info .email[data-v-0a2cefd8] { margin: 0.5rem 0 0; opacity: 0.95; font-size: 16px;
}
.account-content[data-v-0a2cefd8] { padding: 3rem;
}
.section-group[data-v-0a2cefd8] { margin-bottom: 4rem;
}
.privacy-list[data-v-0a2cefd8] { margin: 0.5rem 0 1rem; padding-left: 1.2rem; display: flex; flex-direction: column; gap: 0.5rem;
}
.privacy-list li[data-v-0a2cefd8] { font-size: 0.95rem; color: #475569; line-height: 1.5;
}
.group-title[data-v-0a2cefd8] { font-size: 16px; font-weight: 800; color: var(--texto); margin: 0 0 1.5rem; padding-bottom: 0.75rem; border-bottom: 2px solid #e2e8f0; text-transform: uppercase; letter-spacing: 0.5px;
}
.card-section[data-v-0a2cefd8] { background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 12px; padding: 2rem; margin-bottom: 1rem;
}
.info-group[data-v-0a2cefd8] { margin-bottom: 2rem; display: flex; flex-direction: column;
}
.info-group label[data-v-0a2cefd8] { display: block; font-size: 16px; font-weight: 600; color: #475569; text-transform: uppercase; letter-spacing: 0.6px; margin-bottom: 0.75rem;
}
.info-value[data-v-0a2cefd8] { font-size: 18px; color: #0f172a; font-weight: 500; padding: 1rem; background: var(--fundo); border-radius: 8px; border: 1px solid var(--linha); line-height: 1.5;
}
.badge[data-v-0a2cefd8] { display: inline-block; padding: 0.5rem 1rem; background: linear-gradient(135deg, var(--acao-tonal) 0%, var(--acao-tonal) 100%); color: var(--marca); border-radius: 20px; font-size: 16px; font-weight: 600;
}
.info-input[data-v-0a2cefd8] { width: 100%; box-sizing: border-box; padding: 10px 12px; border: 1px solid #d7dce3; border-radius: 10px; font-size: 16px; font-family: inherit; outline: none; background: #fff;
}
.info-input[data-v-0a2cefd8]:focus { border-color: var(--marca);
}
.info-hint[data-v-0a2cefd8] { font-size: 15px; color: var(--texto-3); margin-top: 4px;
}
.section-head[data-v-0a2cefd8] { display: flex; align-items: center; justify-content: space-between; gap: 10px;
}
.section-head h2[data-v-0a2cefd8] { margin: 0;
}
.edit-btn[data-v-0a2cefd8] { padding: 7px 14px; border: 1px solid #d6e3f3; background: #fff; border-radius: 999px; color: #4076bb; font-weight: 700; font-size: 16px; cursor: pointer;
}
.edit-btn[data-v-0a2cefd8]:hover { background: #F1F5FB;
}
.edit-actions[data-v-0a2cefd8] { display: flex; gap: 10px; margin-top: 14px;
}
.edit-actions .btn-primary[data-v-0a2cefd8] { padding: 10px 22px; border: none; border-radius: 10px; background: var(--marca); color: #fff; font-weight: 700; cursor: pointer;
}
.edit-actions .btn-ghost[data-v-0a2cefd8] { padding: 10px 18px; border: 1px solid #e6eaef; border-radius: 10px; background: transparent; color: var(--texto-3); font-weight: 700; cursor: pointer;
}
.edit-actions button[data-v-0a2cefd8]:disabled { opacity: .6; cursor: default;
}
.save-msg[data-v-0a2cefd8] { margin-top: 10px; font-size: 16px; font-weight: 700;
}
.save-msg.ok[data-v-0a2cefd8] { color: var(--acao);
}
.save-msg.err[data-v-0a2cefd8] { color: #dc2626;
}
.theme-row[data-v-0a2cefd8] { display: flex; align-items: center; justify-content: space-between; gap: 16px;
}
.theme-hint[data-v-0a2cefd8] { font-size: 15px; color: var(--texto-3); margin-top: 4px;
}
.theme-switch[data-v-0a2cefd8] { width: 64px; height: 34px; border-radius: 17px; border: 1px solid var(--linha); background: #f0f4f9; cursor: pointer; position: relative; transition: background 0.2s; flex-shrink: 0;
}
.theme-switch.dark[data-v-0a2cefd8] { background: #334155;
}
.theme-switch-knob[data-v-0a2cefd8] { position: absolute; top: 2px; left: 3px; width: 28px; height: 28px; border-radius: 50%; background: white; display: flex; align-items: center; justify-content: center; font-size: 16px; transition: left 0.2s; box-shadow: 0 1px 3px rgba(0,0,0,0.15);
}
.theme-switch.dark .theme-switch-knob[data-v-0a2cefd8] { left: 31px;
}
@media (max-width: 600px) {
.account-header[data-v-0a2cefd8] { flex-direction: column; text-align: center;
}
.account-header h1[data-v-0a2cefd8] { font-size: 20px;
}
.account-container[data-v-0a2cefd8] { margin: 1rem auto;
}
.account-content[data-v-0a2cefd8] { padding: 1.5rem;
}
}
.secao-ajuda[data-v-0a2cefd8] {
  font-size: 16px;
  line-height: 1.6;
  color: #64748b;
  margin: 0 0 14px;
}

/* Os estilos do cartão do Mercado Livre moram em MercadoLivreConexao.vue. */

/* Piso de leitura do projeto: nada abaixo de 15px. */
.cx[data-v-294fb3ff] { display: flex; flex-direction: column; min-height: 100%;
}
.cx-top[data-v-294fb3ff] { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-bottom: 1px solid var(--separador); background: #fff;
}
.cx-back[data-v-294fb3ff] { border: 0; background: none; font: inherit; font-size: 15px; color: var(--acao); cursor: pointer; padding: 6px 8px;
}
.cx-title[data-v-294fb3ff] { font-size: 19px; font-weight: 800; color: var(--texto); display: flex; align-items: center; gap: 8px;
}
.cx-body[data-v-294fb3ff] { flex: 1; padding: 16px 14px 40px;
}
.cx-wrap[data-v-294fb3ff] { max-width: 640px; margin: 0 auto; display: flex; flex-direction: column; gap: 14px;
}
.cx-sub[data-v-294fb3ff] { font-size: 16px; color: var(--texto-2); line-height: 1.5; margin: 2px 0 4px;
}
.cx-card[data-v-294fb3ff] { background: #fff; border: 1px solid var(--linha); border-radius: 16px; padding: 16px;
}
.cx-card h3[data-v-294fb3ff] { font-size: 17px; margin: 0 0 8px; display: flex; align-items: center; gap: 8px; color: var(--texto);
}
.cx-desc[data-v-294fb3ff] { font-size: 15px; color: var(--texto-2); line-height: 1.5; margin: 0 0 10px;
}
.cx-ok[data-v-294fb3ff], .cx-pend[data-v-294fb3ff] {
  display: flex; flex-direction: column; gap: 2px;
  border-radius: 12px; padding: 13px 15px;
}
.cx-ok[data-v-294fb3ff] { background: #F2FAF4; border: 1px solid #CDE8D4;
}
/* Aviso de validade da autorização (Shopee): âmbar, sem alarme. */
.cx-validade[data-v-294fb3ff] { color: #8A6D00; font-weight: 700;
}
.cx-desde[data-v-294fb3ff] { color: var(--texto-2); font-size: 15px;
}
.cx-esperando[data-v-294fb3ff] {
  display: block; width: 100%; text-align: left; cursor: pointer; font: inherit;
  background: #FFF8E8; border: 1px solid #F2D98C; border-left: 4px solid #E8B931;
  border-radius: 14px; padding: 12px 14px;
}
.cx-esperando.urgente[data-v-294fb3ff] { background: #FBEDEB; border-color: #EBC7C1; border-left-color: #B05B50;
}
.cx-pessoas[data-v-294fb3ff] {
  display: block; width: 100%; text-align: left; cursor: pointer; font: inherit;
  background: #fff; border: 1px solid var(--linha); border-left: 4px solid var(--acao);
  border-radius: 14px; padding: 12px 14px;
}
.cx-pessoas b[data-v-294fb3ff] { display: block; font-size: 16px; color: var(--texto);
}
.cx-pessoas small[data-v-294fb3ff] { display: block; font-size: 15px; color: var(--texto-2); line-height: 1.45; margin-top: 2px;
}
.cx-esperando b[data-v-294fb3ff] { display: block; font-size: 16px; color: var(--texto);
}
.cx-esperando small[data-v-294fb3ff] { display: block; font-size: 15px; color: var(--texto-2); line-height: 1.45; margin-top: 2px;
}
.cx-passos[data-v-294fb3ff] { display: flex; flex-direction: column; gap: 10px; margin-top: 4px;
}
.cx-passo[data-v-294fb3ff] { font-size: 15px; line-height: 1.55; color: var(--texto); margin: 0;
}
.cx-passo a[data-v-294fb3ff] { color: var(--acao); font-weight: 700;
}
.cx-codigo[data-v-294fb3ff] {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 17px; font-weight: 700;
  background: #F2F4F8; border: 1px solid var(--linha); border-radius: 8px; padding: 3px 8px;
  letter-spacing: .06em; margin: 0 6px;
}
.cx-prazo[data-v-294fb3ff] { display: block; font-size: 15px; color: var(--texto-2); margin-top: 2px;
}
.cx-prazo.vencido[data-v-294fb3ff] { color: #9C3D31; font-weight: 700;
}
.cx-meta[data-v-294fb3ff] {
  display: block; width: 100%; text-align: left; margin-top: 10px; cursor: pointer;
  background: #fff; border: 1px solid var(--linha); border-radius: 14px; padding: 12px 14px; font: inherit;
}
.cx-meta[data-v-294fb3ff]:hover { background: #FAFBFD;
}
.cx-meta b[data-v-294fb3ff] { display: block; font-size: 16px; color: var(--acao);
}
.cx-meta small[data-v-294fb3ff] { display: block; font-size: 15px; color: var(--texto-2); line-height: 1.45; margin-top: 2px;
}
.cx-soltar[data-v-294fb3ff] {
  align-self: flex-start; margin-top: 8px;
  border: 1px solid rgba(0,0,0,.15); background: transparent; border-radius: 10px;
  padding: 7px 13px; font: inherit; font-size: 15px; cursor: pointer; color: var(--texto-2);
}
.cx-soltar[data-v-294fb3ff]:hover:not(:disabled) { background: rgba(0,0,0,.03);
}
.cx-pend[data-v-294fb3ff] { background: #FFF8E8; border: 1px solid #F2D98C;
}
.cx-ok b[data-v-294fb3ff], .cx-pend b[data-v-294fb3ff] { font-size: 16px;
}
.cx-ok small[data-v-294fb3ff], .cx-pend small[data-v-294fb3ff] { font-size: 15px; color: var(--texto-2); line-height: 1.45;
}
.cx-btn[data-v-294fb3ff] {
  width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 14px;
  background: #F4F8FF; border: 1px solid #D7E3F8; border-radius: 12px;
  padding: 14px 15px; cursor: pointer; text-align: left; font-family: inherit; color: var(--texto);
}
.cx-btn[data-v-294fb3ff]:hover { background: #EAF1FE;
}
.cx-btn b[data-v-294fb3ff] { display: block; font-size: 16px;
}
.cx-btn small[data-v-294fb3ff] { display: block; font-size: 15px; color: var(--texto-3); margin-top: 3px; line-height: 1.45;
}
.cx-seta[data-v-294fb3ff] { transform: rotate(180deg); flex: none; color: var(--acao);
}
.cx-linha[data-v-294fb3ff] { display: flex; gap: 10px; flex-wrap: wrap;
}
.cx-linha input[data-v-294fb3ff] {
  flex: 1; min-width: 200px; font: inherit; font-size: 16px;
  border: 1px solid #C6CFDC; border-radius: 10px; padding: 11px 13px;
}
.cx-btn-solido[data-v-294fb3ff] {
  border: 0; border-radius: 10px; padding: 11px 16px; cursor: pointer;
  font: inherit; font-size: 15px; font-weight: 700; background: var(--marca); color: #fff;
}
.cx-btn-solido[data-v-294fb3ff]:disabled { opacity: .6; cursor: default;
}
.cx-erro[data-v-294fb3ff] { font-size: 15px; color: var(--st-atrasado-tinta); margin: 0 0 8px;
}
.cx-link[data-v-294fb3ff] {
  border: 0; background: none; font: inherit; font-size: 15px; font-weight: 700;
  color: var(--acao); cursor: pointer; padding: 4px 0 0; text-align: left;
}
.cx-link[data-v-294fb3ff]:hover { text-decoration: underline;
}
.cx-combinado[data-v-294fb3ff] { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0 0 12px;
}
.cx-combinado ul[data-v-294fb3ff] { list-style: none; margin: 0; padding: 10px 12px; border-radius: var(--r-md); font-size: 15px; line-height: 1.5;
}
.cx-combinado li[data-v-294fb3ff] { padding-left: 20px; position: relative; margin-bottom: 4px;
}
.cx-combinado li[data-v-294fb3ff]:last-child { margin-bottom: 0;
}
.cx-faz[data-v-294fb3ff] { background: var(--st-ok-bg); border: 1px solid var(--st-ok-linha); color: var(--st-ok-tinta);
}
.cx-faz li[data-v-294fb3ff]::before { content: '✓'; position: absolute; left: 0; font-weight: 700;
}
.cx-nunca[data-v-294fb3ff] { background: var(--st-atrasado-bg); border: 1px solid var(--st-atrasado-linha); color: var(--st-atrasado-tinta);
}
.cx-nunca li[data-v-294fb3ff]::before { content: '×'; position: absolute; left: 0; font-weight: 700;
}
@media (max-width: 560px) {
.cx-combinado[data-v-294fb3ff] { grid-template-columns: 1fr;
}
}

/* ── O movimento do canal ─────────────────────────────────────────────────
   O estado é dito de forma serena: um ponto e uma frase. A cor forte fica
   reservada ao que tem HORA MARCADA — estar quieto não é defeito. */
.cx-estado[data-v-294fb3ff] { display:flex; align-items:center; gap:7px; margin:8px 0 0; font-size:15px; color:var(--texto-2);
}
.cx-estado b[data-v-294fb3ff] { color:var(--texto); font-weight:600;
}
.cx-ponto[data-v-294fb3ff] { width:9px; height:9px; border-radius:50%; flex:none; background:var(--ok-600, #2F6E5B);
}
.cx-ponto.quieto[data-v-294fb3ff] { background:transparent; border:1px solid var(--texto-2);
}
.cx-numeros[data-v-294fb3ff] { display:flex; gap:18px; margin:10px 0 0; flex-wrap:wrap;
}
.cx-numeros span[data-v-294fb3ff] { display:flex; flex-direction:column;
}
.cx-numeros b[data-v-294fb3ff] { font-size:18px; color:var(--texto); font-variant-numeric:tabular-nums;
}
.cx-numeros small[data-v-294fb3ff] { font-size:15px; color:var(--texto-2);
}

/* ── O convite ────────────────────────────────────────────────────────────
   Separado por uma linha e não por cor de alerta: é outro assunto dentro do
   mesmo cartão, não um aviso. Fica DENTRO do cartão do WhatsApp de propósito —
   banner no topo da tela é lido como propaganda e some da vista em dois dias. */
.cx-convite[data-v-294fb3ff] {
  margin:14px -16px -16px; padding:13px 16px 14px;
  border-top:1px solid var(--borda); background:var(--marca-fraca, #EAF1F9);
  border-radius:0 0 15px 15px;
}
.cx-convite p[data-v-294fb3ff] { margin:0; font-size:15px; color:var(--texto);
}
.cx-convite.na-fila[data-v-294fb3ff] { background:#E7F3EE;
}
.cx-check[data-v-294fb3ff] { color:#2F6E5B; font-weight:800; margin-right:5px;
}
.cx-quero[data-v-294fb3ff] {
  margin:11px 0 0; padding:10px 18px; border-radius:999px; cursor:pointer;
  font-size:15px; font-weight:700; border:1px solid var(--marca);
  background:var(--marca); color:#fff;
}
.cx-desfaz[data-v-294fb3ff] {
  margin:9px 0 0; padding:6px 0; border:0; background:transparent; cursor:pointer;
  font-size:15px; font-weight:600; color:var(--texto-2); text-decoration:underline;
}
.cx-quero[data-v-294fb3ff]:disabled, .cx-desfaz[data-v-294fb3ff]:disabled { opacity:.6; cursor:default;
}

/* Trabalho esperando — não é erro, é uma coisa para o dono fazer. */
.cx-tarefa[data-v-294fb3ff] {
  margin:10px 0 0; padding:9px 12px; border-radius:11px;
  background:#FFF6E0; color:#8A6D00; font-size:15px; font-weight:600;
}

/* Piso de leitura do projeto: nada abaixo de 15px. */
.tp[data-v-337ef4c4] { display: flex; flex-direction: column; min-height: 100%;
}
.tp-top[data-v-337ef4c4] { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-bottom: 1px solid var(--separador); background: #fff;
}
.tp-back[data-v-337ef4c4] { border: 0; background: none; font: inherit; font-size: 15px; color: var(--acao); cursor: pointer; padding: 6px 8px;
}
.tp-title[data-v-337ef4c4] { font-size: 19px; font-weight: 800; color: var(--texto); display: flex; align-items: center; gap: 8px;
}
.tp-body[data-v-337ef4c4] { flex: 1; padding: 16px 14px 40px;
}
.tp-wrap[data-v-337ef4c4] { max-width: 680px; margin: 0 auto; display: flex; flex-direction: column; gap: 12px;
}
.tp-estado[data-v-337ef4c4] { font-size: 16px; color: var(--texto-2);
}
.tp-aviso[data-v-337ef4c4] {
  background: #FFF8E8; border: 1px solid #F2D98C; border-radius: 14px;
  padding: 12px 14px; font-size: 15px; color: #8A6D00; display: flex; gap: 10px;
  align-items: center; flex-wrap: wrap;
}
.tp-link[data-v-337ef4c4] { border: 0; background: none; font: inherit; font-size: 15px; font-weight: 700; color: var(--acao); cursor: pointer; padding: 0;
}
.tp-tiles[data-v-337ef4c4] { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 10px;
}
.tp-tile[data-v-337ef4c4] {
  background: #fff; border: 1px solid var(--linha); border-radius: 14px;
  padding: 14px 16px; display: flex; flex-direction: column; gap: 2px;
}
.tp-tile b[data-v-337ef4c4] { font-size: 26px; line-height: 1.15; color: var(--texto);
}
.tp-tile small[data-v-337ef4c4] { font-size: 15px; color: var(--texto-2); line-height: 1.4;
}
.tp-tile.atencao[data-v-337ef4c4] { background: #FFF8E8; border-color: #F2D98C;
}

/* Precisa de você agora: o único bloco com cor de chamada. */
.tp-agora[data-v-337ef4c4] { display: flex; flex-direction: column; gap: 8px;
}
.tp-agora h3[data-v-337ef4c4] { font-size: 17px; font-weight: 800; color: var(--texto); margin: 4px 0 0;
}
.tp-acao[data-v-337ef4c4] {
  display: flex; align-items: center; gap: 10px; width: 100%; text-align: left;
  background: #fff; border: 1px solid #F2D98C; border-left: 4px solid #E8B931;
  border-radius: 14px; padding: 12px 14px; cursor: pointer; font: inherit;
}
.tp-acao[data-v-337ef4c4]:hover { background: #FFFDF6;
}
.tp-acao-txt[data-v-337ef4c4] { flex: 1; min-width: 0; display: flex; flex-direction: column;
}
.tp-acao-txt b[data-v-337ef4c4] { font-size: 16px; color: var(--texto); overflow-wrap: anywhere;
}
.tp-acao-txt small[data-v-337ef4c4] { font-size: 15px; color: var(--texto-2); margin-top: 2px; overflow-wrap: anywhere;
}
.tp-acao-quando[data-v-337ef4c4] { font-size: 15px; color: #8A6D00; font-weight: 700; flex: none;
}
.tp-nota[data-v-337ef4c4] { font-size: 15px; color: var(--texto-2); line-height: 1.5; margin: 0;
}
.tp-carteira[data-v-337ef4c4] { padding-top: 4px;
}
.tp-vazio[data-v-337ef4c4] { background: #fff; border: 1px solid var(--linha); border-radius: 16px; padding: 26px 22px; text-align: center;
}
.tp-vazio h3[data-v-337ef4c4] { font-size: 18px; color: var(--texto); margin: 0 0 8px;
}
.tp-vazio p[data-v-337ef4c4] { font-size: 16px; color: var(--texto-2); line-height: 1.55; margin: 0;
}
.tp-btn[data-v-337ef4c4] {
  margin-top: 14px; border: 0; border-radius: 10px; padding: 11px 18px; cursor: pointer;
  font: inherit; font-size: 15px; font-weight: 700; background: var(--marca); color: #fff;
}

/* Piso de leitura do projeto: nada abaixo de 15px. */
.mlv-item[data-v-b18583ab] {
  display: flex; align-items: center; gap: 12px;
  background: #fff; border: 1px solid var(--linha); border-radius: 14px; padding: 12px 14px;
}
.mlv-item.off[data-v-b18583ab] { opacity: .65;
}
.mlv-foto[data-v-b18583ab] { width: 52px; height: 52px; border-radius: 10px; object-fit: cover; flex: none; background: #F2F4F8;
}
.mlv-meio[data-v-b18583ab] { flex: 1; min-width: 0;
}
.mlv-nome[data-v-b18583ab] { display: block; font-size: 16px; font-weight: 700; color: var(--texto); text-decoration: none; overflow-wrap: anywhere;
}
.mlv-nome[data-v-b18583ab]:hover { text-decoration: underline;
}
.mlv-linha[data-v-b18583ab] { display: flex; flex-wrap: wrap; gap: 6px; font-size: 15px; color: var(--texto-2); margin-top: 3px; align-items: center;
}
.mlv-preco[data-v-b18583ab] { font-weight: 700; color: var(--texto);
}
.mlv-selo[data-v-b18583ab] { font-size: 15px; font-weight: 700; border-radius: 10px; padding: 4px 10px; flex: none;
}
.mlv-selo.espera[data-v-b18583ab] { background: #FFF8E8; color: #8A6D00; border: 1px solid #F2D98C;
}
.mlv-selo.pausado[data-v-b18583ab] { background: #F2F4F8; color: var(--texto-2); padding: 2px 8px;
}

/* Piso de leitura do projeto: nada abaixo de 15px. */
.spv-item[data-v-0b2cf48e] {
  display: flex; align-items: center; gap: 12px;
  background: #fff; border: 1px solid var(--linha); border-radius: 14px; padding: 12px 14px;
}
.spv-meio[data-v-0b2cf48e] { flex: 1; min-width: 0;
}
.spv-nome[data-v-0b2cf48e] { display: block; font-size: 16px; font-weight: 700; color: var(--texto); overflow-wrap: anywhere;
}
.spv-linha[data-v-0b2cf48e] { display: flex; flex-wrap: wrap; gap: 6px; font-size: 15px; color: var(--texto-2); margin-top: 3px; align-items: center;
}
.spv-recado[data-v-0b2cf48e] { font-style: italic; overflow-wrap: anywhere;
}
.spv-selo[data-v-0b2cf48e] { font-size: 15px; font-weight: 700; border-radius: 10px; padding: 4px 10px; flex: none;
}
.spv-selo.espera[data-v-0b2cf48e] { background: #FFF8E8; color: #8A6D00; border: 1px solid #F2D98C;
}
.spv-selo.ok[data-v-0b2cf48e] { background: var(--st-ok-bg); color: var(--st-ok-tinta); border: 1px solid var(--st-ok-linha);
}
.spv-selo.ruim[data-v-0b2cf48e] { background: #FBEDEB; color: #9C3D31; border: 1px solid #EBC7C1;
}
.spv-selo.neutro[data-v-0b2cf48e] { background: #F2F4F8; color: var(--texto-2);
}

/* Piso de leitura do projeto: nada abaixo de 15px. */
.mgv-item[data-v-a5d85934] {
  display: flex; align-items: center; gap: 12px;
  background: #fff; border: 1px solid var(--linha); border-radius: 14px; padding: 12px 14px;
}
.mgv-meio[data-v-a5d85934] { flex: 1; min-width: 0;
}
.mgv-nome[data-v-a5d85934] { display: block; font-size: 16px; font-weight: 700; color: var(--texto); overflow-wrap: anywhere;
}
.mgv-linha[data-v-a5d85934] { display: flex; flex-wrap: wrap; gap: 6px; font-size: 15px; color: var(--texto-2); margin-top: 3px; align-items: center;
}
.mgv-selo[data-v-a5d85934] { font-size: 15px; font-weight: 700; border-radius: 10px; padding: 4px 10px; flex: none;
}
.mgv-selo.espera[data-v-a5d85934] { background: #FFF8E8; color: #8A6D00; border: 1px solid #F2D98C;
}
.mgv-selo.ok[data-v-a5d85934] { background: var(--st-ok-bg); color: var(--st-ok-tinta); border: 1px solid var(--st-ok-linha);
}
.mgv-selo.ruim[data-v-a5d85934] { background: #FBEDEB; color: #9C3D31; border: 1px solid #EBC7C1;
}
.mgv-selo.neutro[data-v-a5d85934] { background: #F2F4F8; color: var(--texto-2);
}

/* Piso de leitura do projeto: nada abaixo de 15px. */
.aqv-item[data-v-5794f411] {
  display: flex; align-items: center; gap: 12px;
  background: #fff; border: 1px solid var(--linha); border-radius: 14px; padding: 12px 14px;
}
.aqv-meio[data-v-5794f411] { flex: 1; min-width: 0;
}
.aqv-nome[data-v-5794f411] { display: block; font-size: 16px; font-weight: 700; color: var(--texto); overflow-wrap: anywhere;
}
.aqv-linha[data-v-5794f411] { display: flex; flex-wrap: wrap; gap: 6px; font-size: 15px; color: var(--texto-2); margin-top: 3px; align-items: center;
}
.aqv-selo[data-v-5794f411] { font-size: 15px; font-weight: 700; border-radius: 10px; padding: 4px 10px; flex: none;
}
.aqv-selo.espera[data-v-5794f411] { background: #FFF8E8; color: #8A6D00; border: 1px solid #F2D98C;
}
.aqv-selo.ok[data-v-5794f411] { background: var(--st-ok-bg); color: var(--st-ok-tinta); border: 1px solid var(--st-ok-linha);
}
.aqv-selo.ruim[data-v-5794f411] { background: #FBEDEB; color: #9C3D31; border: 1px solid #EBC7C1;
}
.aqv-selo.neutro[data-v-5794f411] { background: #F2F4F8; color: var(--texto-2);
}

/* Piso de leitura do projeto: nada abaixo de 15px. */
.esp[data-v-2fee5011] { display: flex; flex-direction: column; min-height: 100%;
}
.esp-top[data-v-2fee5011] { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-bottom: 1px solid var(--separador); background: #fff;
}
.esp-back[data-v-2fee5011] { border: 0; background: none; font: inherit; font-size: 15px; color: var(--acao); cursor: pointer; padding: 6px 8px;
}
.esp-title[data-v-2fee5011] { font-size: 19px; font-weight: 800; color: var(--texto);
}
.esp-conta[data-v-2fee5011] {
  margin-left: auto; font-size: 15px; font-weight: 800; color: #8A6D00;
  background: #FFF8E8; border: 1px solid #F2D98C; border-radius: 999px; padding: 2px 11px;
}
.esp-body[data-v-2fee5011] { flex: 1; padding: 16px 14px 40px;
}
.esp-wrap[data-v-2fee5011] { max-width: 680px; margin: 0 auto; display: flex; flex-direction: column; gap: 10px;
}
.esp-estado[data-v-2fee5011] { font-size: 16px; color: var(--texto-2);
}
.esp-alerta[data-v-2fee5011] {
  background: #FBEDEB; border: 1px solid #EBC7C1; border-radius: 14px;
  padding: 12px 14px; font-size: 15px; color: #9C3D31; line-height: 1.5; margin: 0;
}
.esp-item[data-v-2fee5011] {
  background: #fff; border: 1px solid var(--linha); border-radius: 14px;
  padding: 12px 14px; display: flex; flex-direction: column; gap: 6px;
  border-left: 4px solid var(--linha);
}
.esp-item.vencendo[data-v-2fee5011] { border-left-color: #B05B50;
}
.esp-item.atencao[data-v-2fee5011]  { border-left-color: #E8B931;
}
.esp-item.calmo[data-v-2fee5011]    { border-left-color: var(--linha-forte, #CFDAE6);
}
.esp-cabeca[data-v-2fee5011] { display: flex; align-items: center; gap: 8px;
}
.esp-tipo[data-v-2fee5011] { font-size: 16px; font-weight: 700; color: var(--texto); overflow-wrap: anywhere;
}
.esp-relogio[data-v-2fee5011] {
  margin-left: auto; flex: none; font-size: 15px; font-weight: 700;
  border-radius: 999px; padding: 3px 10px; white-space: nowrap;
}
.esp-relogio.vencendo[data-v-2fee5011] { background: #FBEDEB; color: #9C3D31; border: 1px solid #EBC7C1;
}
.esp-relogio.atencao[data-v-2fee5011]  { background: #FFF8E8; color: #8A6D00; border: 1px solid #F2D98C;
}
.esp-relogio.calmo[data-v-2fee5011]    { background: #F2F4F8; color: var(--texto-2);
}
.esp-texto[data-v-2fee5011] { font-size: 16px; color: var(--texto); line-height: 1.5; margin: 0; overflow-wrap: anywhere;
}
.esp-quem[data-v-2fee5011] { font-size: 15px; color: var(--texto-2); margin: 0;
}
.esp-consequencia[data-v-2fee5011] { font-size: 15px; color: var(--texto-2); line-height: 1.5; margin: 0;
}
.esp-acao[data-v-2fee5011] {
  align-self: flex-start; margin-top: 2px; border: 0; background: none; padding: 0;
  font: inherit; font-size: 15px; font-weight: 700; color: var(--acao); cursor: pointer;
}
.esp-vazio[data-v-2fee5011] { background: #fff; border: 1px solid var(--linha); border-radius: 16px; padding: 26px 22px; text-align: center;
}
.esp-vazio h3[data-v-2fee5011] { font-size: 18px; color: var(--texto); margin: 0 0 8px;
}
.esp-vazio p[data-v-2fee5011] { font-size: 16px; color: var(--texto-2); line-height: 1.55; margin: 0;
}
.esp-vazio.limpo h3[data-v-2fee5011] { color: var(--ok-700, #3A6E5E);
}
.esp-btn[data-v-2fee5011] {
  margin-top: 14px; border: 0; border-radius: 10px; padding: 11px 18px; cursor: pointer;
  font: inherit; font-size: 15px; font-weight: 700; background: var(--marca); color: #fff;
}

/* Piso de leitura do projeto: nada abaixo de 15px. */
.pc[data-v-67dcdaf1] { display: flex; flex-direction: column; min-height: 100%;
}
.pc-top[data-v-67dcdaf1] { display: flex; align-items: center; gap: 10px; padding: 10px 14px; border-bottom: 1px solid var(--separador); background: #fff;
}
.pc-back[data-v-67dcdaf1] { border: 0; background: none; font: inherit; font-size: 15px; color: var(--acao); cursor: pointer; padding: 6px 8px;
}
.pc-title[data-v-67dcdaf1] { font-size: 19px; font-weight: 800; color: var(--texto);
}
.pc-body[data-v-67dcdaf1] { flex: 1; padding: 16px 14px 40px;
}
.pc-wrap[data-v-67dcdaf1] { max-width: 680px; margin: 0 auto; display: flex; flex-direction: column; gap: 10px;
}
.pc-estado[data-v-67dcdaf1] { font-size: 16px; color: var(--texto-2);
}
.pc-tiles[data-v-67dcdaf1] { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 10px;
}
.pc-tile[data-v-67dcdaf1] { background: #fff; border: 1px solid var(--linha); border-radius: 14px; padding: 14px 16px; display: flex; flex-direction: column; gap: 2px;
}
.pc-tile b[data-v-67dcdaf1] { font-size: 24px; line-height: 1.15; color: var(--texto);
}
.pc-tile small[data-v-67dcdaf1] { font-size: 15px; color: var(--texto-2); line-height: 1.4;
}
.pc-tile.atencao[data-v-67dcdaf1] { background: #FFF8E8; border-color: #F2D98C;
}
.pc-nota[data-v-67dcdaf1] { font-size: 15px; color: var(--texto-2); line-height: 1.5; margin: 0;
}
.pc-item[data-v-67dcdaf1] { background: #fff; border: 1px solid var(--linha); border-radius: 14px; padding: 12px 14px; display: flex; flex-direction: column; gap: 7px;
}
.pc-linha1[data-v-67dcdaf1] { display: flex; align-items: center; gap: 10px;
}
.pc-nome[data-v-67dcdaf1] { font-size: 16px; font-weight: 700; color: var(--texto); overflow-wrap: anywhere;
}
.pc-ausencia[data-v-67dcdaf1] { margin-left: auto; flex: none; font-size: 15px; font-weight: 700; border-radius: 999px; padding: 3px 10px; white-space: nowrap;
}
.pc-ausencia.sumiu[data-v-67dcdaf1]   { background: #FBEDEB; color: #9C3D31; border: 1px solid #EBC7C1;
}
.pc-ausencia.atencao[data-v-67dcdaf1] { background: #FFF8E8; color: #8A6D00; border: 1px solid #F2D98C;
}
.pc-ausencia.ok[data-v-67dcdaf1]      { background: #F2F4F8; color: var(--texto-2);
}
.pc-canais[data-v-67dcdaf1] { display: flex; gap: 6px; flex-wrap: wrap;
}
.pc-gasto[data-v-67dcdaf1] { font-size: 15px; color: var(--texto-2); margin: 0;
}
.pc-gasto b[data-v-67dcdaf1] { font-size: 16px; color: var(--texto);
}
.pc-gasto.sem[data-v-67dcdaf1] { font-style: italic;
}
.pc-acoes[data-v-67dcdaf1] { margin-top: 2px;
}
.pc-chamar[data-v-67dcdaf1] { border: 0; background: none; padding: 0; font: inherit; font-size: 15px; font-weight: 700; color: var(--acao); cursor: pointer;
}
.pc-inalcancavel[data-v-67dcdaf1] { display: block; font-size: 15px; color: var(--texto-2); line-height: 1.45;
}
.pc-vazio[data-v-67dcdaf1] { background: #fff; border: 1px solid var(--linha); border-radius: 16px; padding: 26px 22px; text-align: center;
}
.pc-vazio h3[data-v-67dcdaf1] { font-size: 18px; color: var(--texto); margin: 0 0 8px;
}
.pc-vazio p[data-v-67dcdaf1] { font-size: 16px; color: var(--texto-2); line-height: 1.55; margin: 0;
}
.pc-btn[data-v-67dcdaf1] { margin-top: 14px; border: 0; border-radius: 10px; padding: 11px 18px; cursor: pointer; font: inherit; font-size: 15px; font-weight: 700; background: var(--marca); color: #fff;
}

.cwa[data-v-1b8492ae] { background: var(--bg, #F7F8FA); min-height: 100vh;
}
.cwa-top[data-v-1b8492ae] { display: flex; align-items: center; gap: 12px; padding: 14px 20px; background: #fff; border-bottom: 1px solid #E2E5EA; position: sticky; top: 0; z-index: 10;
}
.cwa-back[data-v-1b8492ae] { font-size: 22px; color: #5B6572; background: none; border: 0; cursor: pointer; line-height: 1;
}
.cwa-top b[data-v-1b8492ae] { font-size: 17px;
}
.cwa-wrap[data-v-1b8492ae] { max-width: 560px; margin: 0 auto; padding: 24px 20px 70px;
}
.cwa-eyebrow[data-v-1b8492ae] { font-size: 15px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--acao);
}
.cwa-t[data-v-1b8492ae] { font-size: 26px; letter-spacing: -.015em; line-height: 1.15; margin: 8px 0 10px;
}
.cwa-sub[data-v-1b8492ae] { color: #5B6572; font-size: 16.5px;
}
.cwa-mini[data-v-1b8492ae] { font-size: 15.5px; margin-top: 4px;
}
.cwa-centro[data-v-1b8492ae] { text-align: center; margin-top: 14px;
}
.cwa-hero[data-v-1b8492ae] { background: linear-gradient(135deg, #D9EEE5, #fff); border: 1px solid #E2E5EA; border-radius: 20px; padding: 24px 22px;
}
.cwa-selo-hero[data-v-1b8492ae] { width: 54px; height: 54px; border-radius: 16px; background: #1D8A66; color: #fff; display: grid; place-items: center; font-size: 26px; margin-bottom: 14px;
}
.cwa-card[data-v-1b8492ae] { background: #fff; border: 1px solid #E2E5EA; border-radius: 18px; padding: 20px; margin-top: 12px;
}
/* Privacidade: linhas chave+switch, texto no piso de leitura (15px). */
.cwa-priv[data-v-1b8492ae] { text-align: left;
}
.cwa-priv-t[data-v-1b8492ae] { font-size: 17px; margin: 0 0 10px;
}
.cwa-priv-sub[data-v-1b8492ae] { font-size: 15px; color: #55617B; margin: 14px 0 4px;
}
.cwa-priv-linha[data-v-1b8492ae] { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 0; font-size: 15px; cursor: pointer;
}
.cwa-priv-linha span b[data-v-1b8492ae] { display: block; font-size: 15px;
}
.cwa-priv-linha span small[data-v-1b8492ae] { display: block; font-size: 15px; color: #55617B;
}
.cwa-priv-linha input[type="checkbox"][data-v-1b8492ae] { width: 22px; height: 22px; accent-color: #46679A; flex: none;
}
.cwa-lista[data-v-1b8492ae] { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 11px;
}
.cwa-lista li[data-v-1b8492ae] { display: flex; gap: 11px; font-size: 15.5px; align-items: flex-start;
}
.cwa-lista .ic[data-v-1b8492ae] { flex: none; width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; margin-top: 1px;
}
.cwa-lista .ic.ok[data-v-1b8492ae] { background: #D9EEE5; color: #1D8A66;
}
.cwa-lista .ic.info[data-v-1b8492ae] { background: var(--acao-tonal); color: var(--azul-900);
}
.cwa-lista .ic.warn[data-v-1b8492ae] { background: #F2E7D4; color: #7A5518;
}
.cwa-consent[data-v-1b8492ae] { background: #FBFCFE; border: 1px dashed #E2E5EA; border-radius: 14px; padding: 16px; margin-top: 18px;
}
.cwa-consent label[data-v-1b8492ae] { display: flex; gap: 11px; align-items: flex-start; font-size: 15.5px; cursor: pointer;
}
.cwa-consent input[data-v-1b8492ae] { margin-top: 3px; width: 19px; height: 19px; accent-color: var(--acao); flex: none;
}
.cwa-consent-mini[data-v-1b8492ae] { color: #8A93A3; font-size: 15px; margin-top: 9px; padding-left: 30px;
}
.cwa-atencao[data-v-1b8492ae] { background: #FFF8E9; border: 1px solid #F2DCA9; border-radius: 14px; padding: 14px 16px; margin-top: 14px; font-size: 15px; color: #6B5423; line-height: 1.5;
}
.cwa-link.mini[data-v-1b8492ae] { font-size: 15px; color: #8A93A3; margin-top: 6px;
}
.cwa-token[data-v-1b8492ae] { margin-top: 12px; background: #FBFCFE; border: 1px dashed #E2E5EA; border-radius: 14px; padding: 16px; text-align: left;
}
.cwa-token label[data-v-1b8492ae] { display: block; font-size: 15px; font-weight: 700; margin-bottom: 7px;
}
.cwa-token input[data-v-1b8492ae] { width: 100%; border: 1px solid #D9DFE8; border-radius: 11px; padding: 11px 12px; font-family: inherit; font-size: 15px;
}
.cwa-token textarea[data-v-1b8492ae] { width: 100%; border: 1px solid #D9DFE8; border-radius: 11px; padding: 11px 12px; font-family: inherit; font-size: 15px; resize: vertical;
}
.cwa-token-nota[data-v-1b8492ae] { font-size: 15px; color: #8A93A3; margin: 9px 0 13px; line-height: 1.45;
}
.cwa-btn[data-v-1b8492ae] { display: flex; align-items: center; justify-content: center; gap: 9px; width: 100%; background: var(--acao); color: #fff; font-weight: 700; font-size: 17px; padding: 15px 22px; border-radius: 13px; border: 0; cursor: pointer; margin-top: 16px;
}
.cwa-btn[data-v-1b8492ae]:hover { background: var(--azul-900);
}
.cwa-btn.wa[data-v-1b8492ae] { background: #1D8A66;
}
.cwa-btn.wa[data-v-1b8492ae]:hover { filter: brightness(.94);
}
.cwa-btn.perigo[data-v-1b8492ae] { background: #fff; color: var(--st-atrasado-tinta); border: 1px solid var(--st-atrasado-tinta);
}
.cwa-btn[data-v-1b8492ae]:disabled { background: #A9BDF0; cursor: not-allowed;
}
.cwa-link[data-v-1b8492ae] { display: block; width: 100%; text-align: center; margin-top: 14px; color: var(--azul-900); font-size: 15.5px; font-weight: 600; background: none; border: 0; cursor: pointer;
}
.cwa-status[data-v-1b8492ae] { display: flex; align-items: center; gap: 11px; background: var(--acao-tonal); color: var(--azul-900); border-radius: 13px; padding: 15px 17px; font-size: 15.5px; font-weight: 600;
}
.cwa-spin[data-v-1b8492ae] { width: 17px; height: 17px; border: 2.5px solid #A9BDF0; border-top-color: var(--azul-900); border-radius: 50%; animation: cwaGira-1b8492ae .8s linear infinite; flex: none;
}
@keyframes cwaGira-1b8492ae {
to { transform: rotate(360deg);
}
}
@media (prefers-reduced-motion: reduce) {
.cwa-spin[data-v-1b8492ae] { animation-duration: 3s;
}
}
.cwa-passos[data-v-1b8492ae] { display: flex; flex-direction: column;
}
.cwa-passo[data-v-1b8492ae] { display: flex; gap: 13px;
}
.cwa-passo .col[data-v-1b8492ae] { display: flex; flex-direction: column; align-items: center;
}
.cwa-passo .bolha[data-v-1b8492ae] { width: 28px; height: 28px; border-radius: 50%; background: #F0F2F5; color: #8A93A3; display: grid; place-items: center; font-size: 15px; font-weight: 800; flex: none;
}
.cwa-passo.done .bolha[data-v-1b8492ae] { background: #D9EEE5; color: #1D8A66;
}
.cwa-passo.now .bolha[data-v-1b8492ae] { background: var(--acao); color: #fff;
}
.cwa-passo .linha[data-v-1b8492ae] { width: 2px; flex: 1; background: #E2E5EA; min-height: 14px;
}
.cwa-passo .txt[data-v-1b8492ae] { padding-bottom: 16px;
}
.cwa-passo .txt b[data-v-1b8492ae] { font-size: 15.5px; display: block;
}
.cwa-passo .txt small[data-v-1b8492ae] { color: #5B6572; font-size: 15px;
}
.cwa-passo.now .txt b[data-v-1b8492ae] { color: var(--azul-900);
}
.cwa-aviso[data-v-1b8492ae] { display: flex; gap: 11px; background: #F2E7D4; color: #7A5518; border-radius: 13px; padding: 14px 16px; font-size: 15px; margin-top: 16px;
}
.cwa-erro[data-v-1b8492ae] { background: #F5DFDB; color: var(--st-atrasado-tinta); border-radius: 12px; padding: 12px 14px; font-size: 15.5px; margin-top: 14px;
}
.cwa-sucesso[data-v-1b8492ae] { text-align: center; padding: 6px 0 2px;
}
.cwa-selo[data-v-1b8492ae] { width: 64px; height: 64px; border-radius: 50%; background: #D9EEE5; color: #1D8A66; display: grid; place-items: center; font-size: 31px; margin: 0 auto 14px;
}
.cwa-sucesso h2[data-v-1b8492ae] { font-size: 26px; margin-bottom: 4px;
}
.cwa-numero[data-v-1b8492ae] { font-size: 21px;
}
.cwa-resumo[data-v-1b8492ae] { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; margin-top: 16px;
}
.cwa-box[data-v-1b8492ae] { background: #FBFCFE; border: 1px solid #E2E5EA; border-radius: 14px; padding: 14px 10px; text-align: center;
}
.cwa-box b[data-v-1b8492ae] { display: block; font-size: 22px;
}
.cwa-box small[data-v-1b8492ae] { color: #5B6572; font-size: 15px;
}

.dh[data-v-0a2a4a03] { display: flex; flex-direction: column; min-height: 100vh; background: #F7F8FA;
}
.dh-top[data-v-0a2a4a03] { display: flex; align-items: center; gap: 10px; padding: 16px 20px;
}
.dh-top h1[data-v-0a2a4a03] { font-size: 19px; margin: 0; color: #17233A;
}
.voltar[data-v-0a2a4a03] { background: none; border: none; font-size: 26px; color: #5B6572; cursor: pointer; line-height: 1;
}
.dh-corpo[data-v-0a2a4a03] { flex: 1; padding: 4px 20px 24px; max-width: 640px; width: 100%; margin: 0 auto;
}
h2[data-v-0a2a4a03] { font-size: 21px; margin: 8px 0 6px; color: #17233A; letter-spacing: -.01em;
}
.ajuda[data-v-0a2a4a03] { font-size: 16px; color: #5B6572; line-height: 1.5; margin: 0 0 14px;
}
.exemplo[data-v-0a2a4a03] { background: #fff; border: 1px solid #E2E5EA; border-radius: 12px; padding: 13px 15px;
  font-size: 15.5px; color: #5B6572; line-height: 1.5; margin-bottom: 14px;
}
.mic[data-v-0a2a4a03] { width: 100%; background: var(--acao-tonal); color: var(--azul-900); border: 0; border-radius: 12px;
  padding: 14px; font-size: 16px; font-weight: 700; cursor: pointer; margin-bottom: 12px;
}
.mic.rec[data-v-0a2a4a03] { background: #F9EFED; color: var(--st-atrasado-tinta);
}
.mic[data-v-0a2a4a03]:disabled { opacity: .6; cursor: default;
}
textarea[data-v-0a2a4a03] { width: 100%; border: 1px solid #E2E5EA; border-radius: 12px; padding: 13px 15px;
  font-size: 16px; line-height: 1.5; color: #17233A; font-family: inherit; resize: vertical;
}
.cartao[data-v-0a2a4a03] { background: #fff; border: 1px solid #E2E5EA; border-radius: 12px; padding: 14px 16px; margin-bottom: 10px;
}
.cab[data-v-0a2a4a03] { display: flex; align-items: center; gap: 10px;
}
.cab b[data-v-0a2a4a03] { flex: 1; font-size: 17px; color: #17233A;
}
.tirar[data-v-0a2a4a03] { background: none; border: none; font-size: 15px; color: #8A93A3; cursor: pointer;
}
.linha[data-v-0a2a4a03] { margin: 6px 0 0; font-size: 15px; color: #5B6572;
}
.linha b[data-v-0a2a4a03] { color: #17233A;
}
.linha.falta[data-v-0a2a4a03] { color: var(--st-atrasado-tinta);
}
.falou[data-v-0a2a4a03] { color: #8A93A3;
}
.pilulas[data-v-0a2a4a03] { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px;
}
.pilulas button[data-v-0a2a4a03] { background: var(--acao-tonal); color: var(--azul-900); border: 0; border-radius: 99px;
  padding: 6px 12px; font-size: 15px; font-weight: 700; cursor: pointer;
}
.cartao.sumido[data-v-0a2a4a03] { display: flex; align-items: center; gap: 12px;
}
.quem[data-v-0a2a4a03] { flex: 1; min-width: 0;
}
.quem b[data-v-0a2a4a03] { display: block; font-size: 17px; color: #17233A;
}
.quem span[data-v-0a2a4a03] { font-size: 15px; color: #8A93A3;
}
.chamar[data-v-0a2a4a03] { background: #1FA855; color: #fff; border-radius: 9px; padding: 9px 15px;
  font-size: 16px; font-weight: 700; text-decoration: none; white-space: nowrap;
}
.sem-fone[data-v-0a2a4a03] { font-size: 15px; color: #8A93A3;
}
.aviso[data-v-0a2a4a03] { margin-top: 14px; background: #FBF1DC; border: 1px solid #E8D5A8; border-radius: 10px;
  padding: 11px 13px; font-size: 15.5px; color: #7A5518;
}
.dh-acao[data-v-0a2a4a03] { position: sticky; bottom: 0; background: #fff; border-top: 1px solid #E2E5EA;
  padding: 14px 20px; display: flex; flex-direction: column; gap: 8px;
}
.principal[data-v-0a2a4a03] { background: var(--acao); color: #fff; border: 0; border-radius: 12px; padding: 15px;
  font-size: 17px; font-weight: 700; cursor: pointer;
}
.principal[data-v-0a2a4a03]:disabled { opacity: .45; cursor: default;
}
.secundaria[data-v-0a2a4a03] { background: none; border: 0; color: #5B6572; font-size: 16px; cursor: pointer; padding: 4px;
}

.ficha[data-v-5ef4bd92] { display: flex; flex-direction: column; gap: 18px;
}
.fx-loading[data-v-5ef4bd92] { padding: 16px; color: var(--texto-3);
}
.fx-field[data-v-5ef4bd92] { display: flex; flex-direction: column; gap: 7px;
}
.fx-label[data-v-5ef4bd92] { font-size: 16px; font-weight: 700; color: #475569;
}
.fx-none[data-v-5ef4bd92] { font-size: 15px; color: #b0bac8; font-style: italic;
}
.fx-mini[data-v-5ef4bd92] { padding: 7px 13px; border: none; border-radius: 8px; background: var(--marca); color: #fff; font-weight: 700; font-size: 15px; cursor: pointer;
}
.fx-mini[data-v-5ef4bd92]:disabled { opacity: .45; cursor: default;
}
.fx-input[data-v-5ef4bd92] { padding: 9px 12px; border: 1px solid var(--linha); border-radius: 9px; font-size: 16px; max-width: 320px;
}

/* Palavras-chave */
.fx-tags[data-v-5ef4bd92] { display: flex; flex-wrap: wrap; align-items: center; gap: 7px;
}
.fx-chip[data-v-5ef4bd92] { display: inline-flex; align-items: center; gap: 4px; padding: 5px 10px; background: #f0f4f9; border: 1px solid #e1eaf5; border-radius: 999px; font-size: 16px; color: #4b668a;
}
.fx-chip.ai[data-v-5ef4bd92] { background: #fdeef4; border-color: #f6d9e6;
}
.fx-chip-ai[data-v-5ef4bd92] { font-size: 15px;
}
.fx-chip-x[data-v-5ef4bd92] { border: none; background: none; color: #8399b7; cursor: pointer; font-size: 16px; line-height: 1; padding: 0;
}
.fx-chip-x[data-v-5ef4bd92]:hover { color: #ef7a8f;
}
.fx-chip-add[data-v-5ef4bd92] { display: inline-flex; gap: 6px;
}
.fx-chip-input[data-v-5ef4bd92] { padding: 6px 12px; border: 1px dashed #C9D8EC; border-radius: 999px; font-size: 16px; width: 150px;
}

/* Chave e valor */
.fx-kv[data-v-5ef4bd92] { display: flex; flex-direction: column; gap: 6px;
}
.fx-kv-item[data-v-5ef4bd92] { display: flex; align-items: center; gap: 8px; padding: 7px 11px; background: #fbfcfe; border: 1px solid #eef2f8; border-radius: 9px;
}
.fx-kv-k[data-v-5ef4bd92] { font-weight: 700; color: #4b668a; font-size: 16px;
}
.fx-kv-k[data-v-5ef4bd92]::after { content: ':';
}
.fx-kv-v[data-v-5ef4bd92] { flex: 1; color: #334155; font-size: 16px;
}
.fx-kv-add[data-v-5ef4bd92] { display: flex; gap: 7px; flex-wrap: wrap;
}
.fx-kv-add .fx-input[data-v-5ef4bd92] { max-width: 180px;
}

/* Anotações */
.fx-notes[data-v-5ef4bd92] { display: flex; flex-direction: column; gap: 8px;
}
.fx-note[data-v-5ef4bd92] { display: flex; gap: 9px; align-items: flex-start; padding: 9px 11px; background: #fbfcfe; border: 1px solid #eef2f8; border-radius: 10px;
}
.fx-note-src[data-v-5ef4bd92] { font-size: 16px; margin-top: 1px;
}
.fx-note-body[data-v-5ef4bd92] { flex: 1;
}
.fx-note-text[data-v-5ef4bd92] { font-size: 16px; color: #334155; line-height: 1.45; white-space: pre-wrap;
}
.fx-note-date[data-v-5ef4bd92] { font-size: 15px; color: #a3aab8; margin-top: 3px;
}
.fx-note-x[data-v-5ef4bd92] { border: none; background: none; color: #cbd5e1; cursor: pointer; font-size: 16px;
}
.fx-note-x[data-v-5ef4bd92]:hover { color: #ef7a8f;
}
.fx-note-add[data-v-5ef4bd92] { display: flex; gap: 8px; align-items: flex-end;
}
.fx-note-add textarea[data-v-5ef4bd92] { flex: 1; padding: 9px 12px; border: 1px solid var(--linha); border-radius: 10px; font-size: 16px; resize: vertical; font-family: inherit;
}

/* valores únicos */
.fx-scale[data-v-5ef4bd92] { display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
}
.fx-scale input[type=range][data-v-5ef4bd92] { flex: 1; min-width: 160px; max-width: 260px; accent-color: var(--marca);
}
.fx-scale-v[data-v-5ef4bd92] { font-weight: 800; color: var(--marca); font-size: 16px; min-width: 24px;
}
.fx-scale-v.muted[data-v-5ef4bd92] { color: #cbd5e1;
}
.fx-scale input.unset[data-v-5ef4bd92] { opacity: .5;
}
.fx-tip[data-v-5ef4bd92] { margin: 0 0 4px; padding: 10px 12px; background: #F1F5FB; border: 1px solid #e9eff8; border-radius: 10px; font-size: 15px; color: var(--acao); line-height: 1.5;
}
.fx-empty[data-v-5ef4bd92] { margin: 0; padding: 16px 14px; background: #fafbfd; border: 1px dashed var(--linha); border-radius: 12px; font-size: 16px; color: var(--acao); line-height: 1.55;
}
.fx-group-div[data-v-5ef4bd92] { margin-top: 6px; padding-top: 12px; border-top: 1px dashed #e1eaf5; font-size: 15px; font-weight: 800; color: #759fd7; text-transform: uppercase; letter-spacing: .3px;
}
.fx-series[data-v-5ef4bd92] { font-size: 15px; color: #a3aab8;
}
.fx-bool[data-v-5ef4bd92] { display: inline-flex; align-items: center; gap: 8px; font-size: 16px; color: #475569;
}

/* Personalizar */
.fx-custom-toggle[data-v-5ef4bd92] { align-self: flex-start; margin-top: 4px; border: none; background: none; color: var(--marca); font-size: 16px; font-weight: 700; cursor: pointer;
}
.fx-manage[data-v-5ef4bd92] { padding: 14px; background: #fafbfd; border: 1px solid #e9eff8; border-radius: 12px; display: flex; flex-direction: column; gap: 8px;
}
.fx-manage-row[data-v-5ef4bd92] { display: flex; align-items: center; justify-content: space-between; font-size: 16px; color: #334155;
}
.fx-manage-row em[data-v-5ef4bd92] { font-style: normal; color: #759fd7; font-size: 15px;
}
.fx-new[data-v-5ef4bd92] { display: flex; flex-direction: column; gap: 9px; margin-top: 8px; padding-top: 12px; border-top: 1px solid #e9eff8;
}
.fx-new-label[data-v-5ef4bd92] { padding: 10px 12px; border: 1px solid var(--linha); border-radius: 9px; font-size: 16px;
}
.fx-new-q[data-v-5ef4bd92] { font-size: 15px; font-weight: 700; color: #64748b;
}
.fx-opts[data-v-5ef4bd92] { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(200px, 100%), 1fr)); gap: 8px;
}
.fx-opt[data-v-5ef4bd92] { display: flex; align-items: center; gap: 10px; padding: 10px 12px; background: #fff; border: 1.5px solid #e9eff8; border-radius: 10px; cursor: pointer; text-align: left;
}
.fx-opt.on[data-v-5ef4bd92] { border-color: var(--marca); background: #F1F5FB;
}
.fx-opt-ico[data-v-5ef4bd92] { font-size: 20px;
}
.fx-opt-txt[data-v-5ef4bd92] { display: flex; flex-direction: column;
}
.fx-opt-txt strong[data-v-5ef4bd92] { font-size: 16px; color: #334155;
}
.fx-opt-txt em[data-v-5ef4bd92] { font-style: normal; font-size: 15px; color: var(--texto-3);
}
.fx-create[data-v-5ef4bd92] { align-self: flex-start; padding: 9px 18px;
}

.clr[data-v-9baf9288] { display: flex; align-items: center; gap: 12px;
}
.clr-who[data-v-9baf9288] { flex: 1; min-width: 0;
}
.clr-name[data-v-9baf9288] { font-weight: 700; font-size: 16px;
}
.clr-sub[data-v-9baf9288] { font-size: 15px; font-weight: 600; color: #8A93A3;
}
.clr-trailing[data-v-9baf9288] { flex: none;
}

.ah[data-v-42115a5e] { display: flex; flex-direction: column; gap: 16px;
}
.ah-bloco[data-v-42115a5e] { display: flex; flex-direction: column; gap: 8px;
}
.ah-cab[data-v-42115a5e] { display: flex; align-items: center; gap: 8px; padding: 0 4px;
}
.ah-cab h3[data-v-42115a5e] { margin: 0; font-size: var(--text-h4); font-weight: 750;
}
.ah-n[data-v-42115a5e] { margin-left: auto; font-size: var(--text-label); color: var(--text-faint);
}
.ah-todos[data-v-42115a5e] {
  margin-left: auto; background: var(--primary-soft); color: var(--primary-deep);
  border: none; border-radius: 8px; padding: 8px 12px;
  font: inherit; font-size: var(--text-body-sm); font-weight: 700; cursor: pointer;
  min-height: 38px;
}
.ah-todos[data-v-42115a5e]:focus-visible { outline: 2px solid var(--primary-deep); outline-offset: 2px;
}
.ah-item[data-v-42115a5e] {
  background: var(--bg-surface); border: 1px solid var(--border);
  border-radius: 12px; padding: 12px 13px;
  display: flex; align-items: flex-start; gap: 10px;
}
.ah-emoji[data-v-42115a5e] { font-size: 18px; line-height: 1.3; flex: none;
}
.ah-item-b[data-v-42115a5e] { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px;
}
.ah-quem[data-v-42115a5e] { font-size: var(--text-body); font-weight: 700;
}
.ah-quando[data-v-42115a5e] { font-weight: 400; color: var(--text-faint);
}
.ah-msg[data-v-42115a5e] { margin: 0; font-size: var(--text-body-sm); color: var(--text-secondary);
}
.ah-btn[data-v-42115a5e] {
  flex: none; background: var(--primary); color: #fff; border: none;
  border-radius: 8px; padding: 9px 13px; font: inherit;
  font-size: var(--text-body-sm); font-weight: 700; cursor: pointer; min-height: 38px;
}
.ah-btn[data-v-42115a5e]:focus-visible { outline: 2px solid var(--primary-deep); outline-offset: 2px;
}

/* SEM prefers-color-scheme aqui de propósito: o tema escuro do Cadence é
 * inversão de filtro no body (dark-theme.css), ligada por preferência do
 * usuário — não pelo sistema operacional. Um bloco escuro próprio dispararia
 * pelo SO mesmo com o app em claro, e inverteria duas vezes com o dark ligado. */
.ad[data-v-1d70ea97] {
  --atrasado: var(--st-atrasado-tinta);
  --acento: var(--azul-900);
  --neutro: #8A93A3;
  --linha: var(--linha);
  --tinta: var(--texto);
  --tinta-2: #5B6572;

  display: flex; flex-direction: column; gap: 22px;
  padding: 20px 18px 32px;
  background: #FFFFFF;
  font-family: 'Nunito', system-ui, sans-serif;
  color: var(--tinta);
}
.ad-topo[data-v-1d70ea97] { display: flex; flex-direction: column; gap: 1px;
}
.ad-topo h2[data-v-1d70ea97] {
  margin: 0; font-size: 24px; font-weight: 700;
  letter-spacing: -.022em; line-height: 1.2;
}
.ad-sub[data-v-1d70ea97] { margin: 0; font-size: 16px; color: var(--neutro);
}

/* ── chips de eixo ── */
.ad-eixos[data-v-1d70ea97] {
  display: flex; gap: 6px; flex-wrap: wrap;
  padding-bottom: 2px;
}
.ad-eixo[data-v-1d70ea97] {
  background: none; border: 1px solid var(--linha); border-radius: 999px;
  padding: 7px 13px; font: inherit; font-size: 16px; font-weight: 600;
  color: var(--tinta-2); cursor: pointer; min-height: 36px;
}
.ad-eixo.on[data-v-1d70ea97] {
  background: var(--acento); border-color: var(--acento);
  color: #fff; font-weight: 700;
}
.ad-eixo[data-v-1d70ea97]:focus-visible { outline: 2px solid var(--acento); outline-offset: 2px;
}
.ad-nota[data-v-1d70ea97], .ad-calmo[data-v-1d70ea97] { margin: 0; font-size: 16px; color: var(--tinta-2);
}

/* ── grupo ── */
.ad-grupo[data-v-1d70ea97] { display: flex; flex-direction: column; gap: 8px;
}
.ad-rot[data-v-1d70ea97] { display: flex; align-items: baseline; gap: 10px;
}
.ad-rot-t[data-v-1d70ea97] {
  font-size: 15px; font-weight: 800; letter-spacing: .07em;
  text-transform: uppercase; color: var(--tinta-2);
}
.ad-rot-n[data-v-1d70ea97] {
  margin-left: auto; font-size: 15px; color: var(--neutro);
  font-variant-numeric: tabular-nums;
}

/* ── linhas ── */
.ad-lista[data-v-1d70ea97] { list-style: none; margin: 0; padding: 0;
}
.ad-linha[data-v-1d70ea97] {
  display: flex; align-items: center; gap: 12px;
  padding: 13px 0;
  border-top: 1px solid var(--linha);
}
.ad-lista li[data-v-1d70ea97]:last-child { border-bottom: 1px solid var(--linha);
}
.ad-abrir[data-v-1d70ea97] {
  flex: 1; min-width: 0; background: none; border: none; padding: 0;
  font: inherit; text-align: left; cursor: pointer;
  display: grid; grid-template-columns: 1fr auto; gap: 2px 10px;
}
.ad-abrir[data-v-1d70ea97]:focus-visible { outline: 2px solid var(--acento); outline-offset: 3px; border-radius: 2px;
}
.ad-nome[data-v-1d70ea97] {
  font-size: 16px; font-weight: 700; letter-spacing: -.01em;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.ad-quando[data-v-1d70ea97] {
  grid-row: 1; grid-column: 2; align-self: baseline;
  font-size: 15px; color: var(--neutro); white-space: nowrap;
}
.ad-quando.tarde[data-v-1d70ea97] { color: var(--atrasado); font-weight: 700;
}
.ad-motivo[data-v-1d70ea97] {
  grid-column: 1 / -1;
  font-size: 16px; color: var(--tinta-2);
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.ad-clr[data-v-1d70ea97] { flex: 1; min-width: 0; cursor: pointer;
}
.ad-acoes[data-v-1d70ea97] { display: flex; gap: 6px; flex: none;
}

/* Ação em contorno: numa lista de 13 linhas, 13 botões cheios competem entre
   si e nenhum ganha. */
.ad-btn[data-v-1d70ea97] {
  background: none; border: 1px solid var(--linha); border-radius: 6px;
  padding: 8px 12px; font: inherit; font-size: 16px; font-weight: 700;
  color: var(--acento); cursor: pointer; min-height: 38px; white-space: nowrap;
}
.ad-btn[data-v-1d70ea97]:hover { border-color: var(--acento);
}
.ad-btn.secundario[data-v-1d70ea97] { color: var(--tinta-2); font-weight: 600;
}
.ad-btn[data-v-1d70ea97]:focus-visible { outline: 2px solid var(--acento); outline-offset: 2px;
}

.nb[data-v-d7479044] { position: relative;
}
.nb-btn[data-v-d7479044] {
  display: inline-grid; place-items: center;
  position: relative;
  background: none;
  border: 1.5px solid transparent;
  border-radius: 10px;
  padding: 7px 10px;
  cursor: pointer;
  font-size: 20px;
  line-height: 1;
  transition: all 0.15s;
}
.nb-btn[data-v-d7479044]:hover, .nb-btn.on[data-v-d7479044] { background: #eef3f9; border-color: #dbe6f3;
}
.nb-badge[data-v-d7479044] {
  position: absolute;
  top: 1px;
  right: 1px;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  border-radius: 999px;
  background: #dc2626;
  color: #fff;
  font-size: 15px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
}
.nb-panel[data-v-d7479044] {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  width: min(360px, calc(100vw - 24px));
  background: #fff;
  border: 1px solid #dbe6f3;
  border-radius: 14px;
  box-shadow: 0 16px 44px rgba(30, 41, 59, 0.18);
  z-index: 90;
  overflow: hidden;
}

/* No celular o sino fica à esquerda do topo; ancorar por 'right:0' jogava o
   painel para fora da tela. Aqui ele vira uma faixa fixa, largura da tela. */
@media (max-width: 768px) {
.nb-panel[data-v-d7479044] {
    position: fixed;
    top: 62px;
    left: 12px;
    right: 12px;
    width: auto;
    max-height: calc(100vh - 80px);
    overflow-y: auto;
}
}
.nb-head[data-v-d7479044] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-size: 16px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--acao);
  padding: 13px 16px 9px;
  border-bottom: 1px solid #eef3f9;
}
.nb-clear[data-v-d7479044] {
  border: none; background: none; cursor: pointer; font: inherit;
  font-size: 15px; font-weight: 700; text-transform: none; letter-spacing: 0;
  color: #7b8aa3; padding: 2px 4px; border-radius: 6px;
}
.nb-clear[data-v-d7479044]:hover { color: #c0392b; background: #fdf0ee;
}
/* ✕ do aviso: alvo de 26px (o mínimo que um dedo acerta) e discreto até o hover. */
.nb-item-x[data-v-d7479044] {
  flex: none; width: 26px; height: 26px; border-radius: 50%;
  border: none; background: none; color: #b6c0cf; font-size: 15px; line-height: 1; cursor: pointer;
}
.nb-item:hover .nb-item-x[data-v-d7479044] { color: #8a94a6;
}
.nb-item-x[data-v-d7479044]:hover { color: #c0392b; background: #fdf0ee;
}
.nb-empty[data-v-d7479044] {
  padding: 22px 16px;
  text-align: center;
  font-size: 16px;
  color: #475569;
  line-height: 1.5;
}
.nb-empty-sub[data-v-d7479044] { font-size: 16px; color: var(--texto-3);
}
.nb-item[data-v-d7479044] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  text-align: left;
  background: none;
  border: none;
  border-bottom: 1px solid #f1f5fa;
  padding: 12px 16px;
  font-family: inherit;
  font-size: 16px;
  color: var(--texto);
  line-height: 1.4;
  cursor: default;
}
.nb-item[data-v-d7479044]:last-child { border-bottom: none;
}
.nb-item.clickable[data-v-d7479044] { cursor: pointer;
}
.nb-item.clickable[data-v-d7479044]:hover { background: #f6f9fc;
}
.nb-item-go[data-v-d7479044] {
  flex-shrink: 0;
  font-size: 16px;
  font-weight: 700;
  color: var(--acao);
}
.nb-item-send[data-v-d7479044] {
  flex-shrink: 0;
  font-size: 16px;
  font-weight: 800;
  color: #fff;
  background: #16a34a;
  border-radius: 999px;
  padding: 7px 13px;
  text-decoration: none;
}
.nb-item-send[data-v-d7479044]:hover { background: #15803d;
}
.nb-item-teach[data-v-d7479044] {
  flex-shrink: 0;
  font: inherit;
  font-size: 15px;
  font-weight: 800;
  color: #fff;
  background: #5d8fd0;
  border: none;
  border-radius: 999px;
  padding: 7px 15px;
  cursor: pointer;
}
.nb-item-teach[data-v-d7479044]:hover { background: #4b80c5;
}
.nb-pop-enter-active[data-v-d7479044], .nb-pop-leave-active[data-v-d7479044] { transition: all 0.16s ease-out;
}
.nb-pop-enter-from[data-v-d7479044], .nb-pop-leave-to[data-v-d7479044] { opacity: 0; transform: translateY(-6px);
}

.dashboard[data-v-b9afdefa] {
  min-height: 100vh;
  background: var(--fundo);
  display: flex;
  flex-direction: column;
  /* Trava anti-estouro: nada empurra a página para além da largura da tela no
     celular (antes botões/banners eram cortados na direita). Usa `clip` (não
     `hidden`) para NÃO criar um container de scroll — senão quebra o
     `position: sticky` de filhos (composer do feed). */
  max-width: 100vw;
  overflow-x: clip;
}
[data-v-b9afdefa],[data-v-b9afdefa]::before,[data-v-b9afdefa]::after { box-sizing: border-box;
}

/* ── Topbar ── */
.topbar[data-v-b9afdefa] {
  position: sticky;
  top: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 14px 28px;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(8px);
  border-bottom: 1px solid var(--linha);
}
.brand[data-v-b9afdefa] {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}
.brand-dot[data-v-b9afdefa] {
  width: 40px;
  height: 40px;
  border-radius: 14px;
  background: linear-gradient(135deg, var(--marca), var(--acao));
  color: white;
  font-weight: 800;
  font-size: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 6px 16px rgba(91, 135, 199, 0.28);
}
.brand-name[data-v-b9afdefa] {
  font-weight: 800;
  font-size: 20px;
  color: #344050;
  letter-spacing: -0.02em;
}
.nav[data-v-b9afdefa] {
  display: flex;
  gap: 8px;
  flex: 1;
}
.nav button[data-v-b9afdefa] {
  padding: 11px 20px;
  border: none;
  border-radius: 999px;
  background: transparent;
  color: #738091;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.2s, color 0.2s, box-shadow 0.2s;
}
.nav button[data-v-b9afdefa]:hover {
  background: #f0f4f9;
  color: #344050;
}

/* Névoa Clean: nav ativa = pílula soft (sem preenchimento vivo) */
.nav button.active[data-v-b9afdefa] {
  background: var(--nav-active-bg);
  color: var(--nav-active-text);
  box-shadow: none;
}

/* WhatsApp: ícone em teal calmo (Névoa Clean), não o verde vivo */
.nav button.wa-nav .bn-icon[data-v-b9afdefa], .bottom-nav button.wa-nav .bn-icon[data-v-b9afdefa] { color: #4E7E70;
}
.logout-btn[data-v-b9afdefa] {
  padding: 10px 18px;
  background: white;
  border: 1.5px solid var(--linha);
  border-radius: 999px;
  cursor: pointer;
  font-size: 16px;
  font-weight: 700;
  color: #738091;
  transition: all 0.2s;
}
.logout-btn[data-v-b9afdefa]:hover {
  border-color: #fca5a5;
  color: #dc2626;
  background: #fef2f2;
}
.top-actions[data-v-b9afdefa] {
  display: flex;
  gap: 10px;
  align-items: center;
}
.account-btn[data-v-b9afdefa] {
  padding: 10px 18px;
  background: white;
  border: 1.5px solid var(--linha);
  border-radius: 999px;
  cursor: pointer;
  font-size: 16px;
  font-weight: 700;
  color: #738091;
  transition: all 0.2s;
}
.account-btn[data-v-b9afdefa]:hover {
  border-color: #C9D8EC;
  color: var(--marca);
  background: #f1f5fb;
}

/* ── View transition ── */
.view-enter-active[data-v-b9afdefa],
.view-leave-active[data-v-b9afdefa] {
  transition: opacity 0.18s ease, transform 0.18s ease;
}
.view-enter-from[data-v-b9afdefa] {
  opacity: 0;
  transform: translateY(8px);
}
.view-leave-to[data-v-b9afdefa] {
  opacity: 0;
  transform: translateY(-8px);
}

/* ── Clients layout ── */
/* UM scroll só (o da página): o layout cresce com o conteúdo; quem rola é o
   body. A sidebar vira sticky com scroll próprio quando maior que a tela.
   (Antes: altura fixa + .main com overflow-y => DUPLO scroll quando qualquer
   banner em fluxo empurrava o body além da viewport.) */
.layout[data-v-b9afdefa] {
  display: flex;
  align-items: flex-start;
  min-height: calc(100vh - 53px);
}
.sidebar[data-v-b9afdefa] {
  width: 280px;
  background: white;
  border-right: 1px solid var(--linha);
  padding: 20px 16px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  /* acompanha a rolagem da página; rola por dentro se a lista for maior */
  position: sticky;
  top: 53px;
  max-height: calc(100vh - 53px);
  overflow-y: auto;
}
.sidebar.collapsed[data-v-b9afdefa] { width: 66px; min-width: 66px; padding: 16px 8px;
}
.sidebar-sort[data-v-b9afdefa] { display: flex; align-items: center; gap: 6px; margin-bottom: 12px;
}
.sidebar-sort .ss-label[data-v-b9afdefa] { font-size: 15px; color: var(--texto-3); font-weight: 600;
}
.ss-btn[data-v-b9afdefa] { border: 1px solid #e6eaef; background: #fff; color: #64748b; font-size: 15px; font-weight: 700; padding: 5px 10px; border-radius: 8px; cursor: pointer; transition: all .12s;
}
.ss-btn[data-v-b9afdefa]:hover { border-color: #C9D8EC;
}
.ss-btn.on[data-v-b9afdefa] { background: #f0f4f9; border-color: var(--marca); color: #4076bb;
}
.sidebar-head[data-v-b9afdefa] { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 12px;
}
.sidebar-head .sidebar-title[data-v-b9afdefa] { margin: 0 0 0 4px;
}

/* Botão "Recolher" (estado expandido): rótulo + seta, some dúvida sobre o que faz */
.sidebar-toggle[data-v-b9afdefa] { flex-shrink: 0; display: inline-flex; align-items: center; gap: 5px; height: 30px; padding: 0 10px; border: 1px solid var(--linha); background: #fff; border-radius: 999px; cursor: pointer; color: var(--marca); font-size: 15px; font-weight: 700; font-family: inherit; transition: background .15s, border-color .15s, color .15s;
}
.sidebar-toggle[data-v-b9afdefa]:hover { background: #EAF0F8; border-color: #b9d2f0; color: #3f74bb;
}
.sidebar-toggle-label[data-v-b9afdefa] { line-height: 1;
}
.sidebar-toggle-icon[data-v-b9afdefa] { display: grid; place-items: center;
}

/* Pílula "Expandir" (estado recolhido): alvo grande e óbvio, ocupa a faixa toda */
.sidebar-expand[data-v-b9afdefa] { width: 100%; display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 12px 4px; border: 1px solid #dbe6f3; background: linear-gradient(180deg, #f6f9fd, #eef4fb); border-radius: 12px; cursor: pointer; color: var(--acao); transition: background .15s, border-color .15s, box-shadow .15s;
}
.sidebar-expand[data-v-b9afdefa]:hover { background: #e9f1fb; border-color: #b9d2f0; box-shadow: 0 3px 10px rgba(91,135,199,.16);
}
.se-ico[data-v-b9afdefa] { font-size: 20px; line-height: 1;
}
.se-count[data-v-b9afdefa] { min-width: 20px; text-align: center; background: var(--marca); color: #fff; font-size: 15px; font-weight: 800; padding: 1px 7px; border-radius: 999px;
}
.se-chevron[data-v-b9afdefa] { display: grid; place-items: center; opacity: .8;
}
.sidebar.collapsed .sidebar-head[data-v-b9afdefa] { justify-content: center; margin-bottom: 0;
}
.sidebar-count[data-v-b9afdefa] { background: #eff4fa; color: var(--marca); font-size: 15px; font-weight: 700; padding: 1px 8px; border-radius: 999px; text-transform: none; letter-spacing: 0;
}
.sidebar-search[data-v-b9afdefa] { width: 100%; box-sizing: border-box; margin: 0 0 12px; padding: 9px 12px; border: 1px solid #e6eaef; border-radius: 10px; font-size: 16px; outline: none;
}
.sidebar-search[data-v-b9afdefa]:focus { border-color: var(--marca);
}
.sidebar-noresult[data-v-b9afdefa] { font-size: 15px; color: var(--texto-3); text-align: center; padding: 14px 4px;
}
.sidebar-title[data-v-b9afdefa] {
  margin: 0 0 16px 4px;
  font-size: 16px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--texto-3);
}
.back-to-dashboard-btn[data-v-b9afdefa] {
  width: 100%;
  padding: 10px 12px;
  margin-bottom: 12px;
  border: 1px solid var(--linha);
  background: white;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 500;
  color: var(--marca);
  cursor: pointer;
  transition: all 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
.back-to-dashboard-btn[data-v-b9afdefa]:hover {
  border-color: var(--marca);
  background: #f1f5fb;
  box-shadow: 0 2px 8px rgba(99, 102, 241, 0.1);
}
.back-to-dashboard-btn[data-v-b9afdefa]:active {
  transform: translateY(1px);
}

/* Lista rolável: com muitos clientes rola DENTRO de si, sem esticar a barra */
.client-list[data-v-b9afdefa] {
  display: flex;
  flex-direction: column;
  gap: 3px;
  overflow-y: auto;
  max-height: calc(100vh - 340px);
  margin: 6px -4px 4px;
  padding: 2px 4px;
}
.client-list[data-v-b9afdefa]::-webkit-scrollbar { width: 6px;
}
.client-list[data-v-b9afdefa]::-webkit-scrollbar-thumb { background: var(--linha); border-radius: 3px;
}
.client-list[data-v-b9afdefa]::-webkit-scrollbar-track { background: transparent;
}
.client-item[data-v-b9afdefa] {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 7px 10px;
  border: 1px solid transparent;
  border-radius: 10px;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s;
}
.client-item[data-v-b9afdefa]:hover {
  background: var(--fundo);
  border-color: var(--linha);
}
.client-item.active[data-v-b9afdefa] {
  background: #f1f5fb;
  border-color: #C9D8EC;
}

/* Clientes arquivados/inativos: opacos, com etiqueta — distintos dos ativos sem sumir da lista */
.client-item.inactive[data-v-b9afdefa] {
  opacity: 0.55;
}
.client-item.inactive[data-v-b9afdefa]:hover {
  opacity: 0.85;
}
.inactive-tag[data-v-b9afdefa] {
  font-size: 15px;
  font-weight: 700;
  color: #8996A8;
  background: #EEF2F7;
  border: 1px solid var(--linha);
  border-radius: 6px;
  padding: 1px 6px;
  vertical-align: middle;
  margin-left: 4px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.client-avatar[data-v-b9afdefa] {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: var(--avatar-bg, #E9EEF6);
  color: var(--avatar-text, var(--acao));
  font-weight: 800;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.client-item-info[data-v-b9afdefa] {
  min-width: 0;
}
.channel-signals[data-v-b9afdefa] { display: flex; gap: 8px; flex-wrap: wrap; align-items: center;
}
.channel-signals .sig-warn[data-v-b9afdefa] { color: #A9797B;
}
.channel-signals .sig-star[data-v-b9afdefa] { color: #F5B301; font-weight: 600;
}
.ph-top[data-v-b9afdefa] { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
}
.ph-status[data-v-b9afdefa] { display: flex; align-items: center; gap: 8px;
}
.star-rating[data-v-b9afdefa] { display: inline-flex; gap: 1px; margin-right: 6px;
}
.star-rating[data-v-b9afdefa] { position: relative;
}
.star-tip[data-v-b9afdefa] { position: absolute; top: calc(100% + 8px); left: 50%; transform: translateX(-50%); width: 240px; background: #243040; color: #f4f7fc; font-size: 15px; line-height: 1.5; padding: 10px 13px; border-radius: 10px; box-shadow: 0 8px 22px rgba(42,36,64,0.3); opacity: 0; visibility: hidden; transition: opacity .15s, visibility .15s; pointer-events: none; z-index: 30;
}
.star-tip strong[data-v-b9afdefa] { display: block; margin-bottom: 3px; font-size: 15px; color: #cadbf0;
}
.star-tip[data-v-b9afdefa]::before { content: ''; position: absolute; bottom: 100%; left: 50%; transform: translateX(-50%); border: 6px solid transparent; border-bottom-color: #243040;
}
.star-rating:hover .star-tip[data-v-b9afdefa], .star-rating:focus-within .star-tip[data-v-b9afdefa] { opacity: 1; visibility: visible;
}
.star-btn[data-v-b9afdefa] { background: none; border: none; font-size: 20px; line-height: 1; color: #d6dee8; cursor: pointer; padding: 1px 2px; transition: color .12s, transform .12s;
}
.star-btn[data-v-b9afdefa]:hover { transform: scale(1.15); color: #f0b429;
}
.star-btn.filled[data-v-b9afdefa] { color: #f0b429;
}
.star-btn[data-v-b9afdefa]:disabled { opacity: .6; cursor: default;
}
.status-pill[data-v-b9afdefa] { font-size: 15px; font-weight: 700; padding: 2px 10px; border-radius: 999px;
}
.status-pill.on[data-v-b9afdefa] { background: #EAF0F8; color: var(--acao);
}
.status-pill.off[data-v-b9afdefa] { background: #fee2e2; color: #dc2626;
}
.status-toggle[data-v-b9afdefa] { padding: 6px 12px; border-radius: 8px; border: 1px solid #d6e3f3; background: #fff; color: #4076bb; font-weight: 700; font-size: 15px; cursor: pointer;
}
.status-toggle[data-v-b9afdefa]:hover { background: #f4f7fc;
}
.status-toggle[data-v-b9afdefa]:disabled { opacity: .5; cursor: default;
}
.agenda-tabs[data-v-b9afdefa] { display: flex; gap: 6px; flex-wrap: wrap; margin: 4px 0 12px;
}
.agenda-tab[data-v-b9afdefa] { padding: 7px 14px; border: 1px solid var(--linha); background: #fff; color: #64748b; border-radius: 999px; font-size: 15px; font-weight: 700; cursor: pointer;
}
.agenda-tab.on[data-v-b9afdefa] { background: var(--acao); border-color: var(--acao); color: #fff;
}
.agenda-sub[data-v-b9afdefa] { font-size: 15px; font-weight: 700; color: #64748b; margin: 2px 0 10px;
}
.agenda-manual[data-v-b9afdefa] { margin-top: 20px; padding-top: 16px; border-top: 1px dashed #e6eaef;
}
.reg-transcript[data-v-b9afdefa] { margin-bottom: 4px;
}

/* ── Menu/hub do cliente (lista de seções, drill-down mobile-first) ── */
.client-menu[data-v-b9afdefa] { display: flex; flex-direction: column; gap: 8px; margin-top: 14px;
}
.menu-row[data-v-b9afdefa] { display: flex; align-items: center; gap: 10px; width: 100%; padding: 15px 16px; background: #fff; border: 1px solid #e9eff8; border-radius: 14px; font-size: 16px; font-weight: 600; color: #334155; cursor: pointer; text-align: left; transition: background .12s, transform .08s;
}
.menu-row[data-v-b9afdefa]:hover { background: #F1F5FB;
}
.menu-row[data-v-b9afdefa]:active { transform: scale(0.99);
}
.menu-title[data-v-b9afdefa] { flex: 1;
}
.menu-react[data-v-b9afdefa] { font-size: 16px;
}
.menu-arrow[data-v-b9afdefa] { color: #c6d5e9; font-size: 20px; font-weight: 700;
}
.menu-more[data-v-b9afdefa] { align-self: flex-start; margin-top: 2px; border: none; background: none; color: #759fd7; font-size: 16px; font-weight: 700; cursor: pointer; padding: 6px 4px;
}
.menu-more[data-v-b9afdefa]:hover { color: var(--marca);
}
.menu-row-extra[data-v-b9afdefa] { opacity: .78;
}

/* Reorganizar seções (drag-and-drop + setas ▲▼) */
.menu-tools[data-v-b9afdefa] { display: flex; justify-content: flex-end; margin-bottom: 2px;
}
.menu-tools-bottom[data-v-b9afdefa] { justify-content: center; margin-top: 12px; margin-bottom: 0; padding-top: 12px; border-top: 1px solid #eef2f8;
}
.reorder-toggle[data-v-b9afdefa] { border: 1px solid var(--linha); background: #fff; color: var(--marca); font-size: 15px; font-weight: 700; padding: 7px 13px; border-radius: 999px; cursor: pointer; transition: background .12s, color .12s;
}
.reorder-toggle[data-v-b9afdefa]:hover { background: #F1F5FB;
}
.reorder-toggle.active[data-v-b9afdefa] { background: var(--marca); color: #fff; border-color: var(--marca);
}
.reorder-hint[data-v-b9afdefa] { font-size: 15px; color: var(--texto-3); margin: 2px 2px 6px; line-height: 1.45;
}
.reorder-row[data-v-b9afdefa] { cursor: grab; user-select: none;
}
.reorder-row[data-v-b9afdefa]:active { cursor: grabbing;
}
.reorder-row.dragging[data-v-b9afdefa] { opacity: .45;
}
.reorder-row.dragover[data-v-b9afdefa] { border-color: var(--marca); box-shadow: inset 0 0 0 2px var(--linha);
}
.reorder-handle[data-v-b9afdefa] { color: #c6d5e9; font-size: 18px; line-height: 1; flex-shrink: 0;
}
.reorder-arrows[data-v-b9afdefa] { display: flex; gap: 4px; flex-shrink: 0;
}
.reorder-arrow[data-v-b9afdefa] { width: 30px; height: 30px; border: 1px solid #e9eff8; background: #fff; color: var(--marca); border-radius: 8px; font-size: 15px; cursor: pointer; display: grid; place-items: center; transition: background .12s;
}
.reorder-arrow[data-v-b9afdefa]:hover:not(:disabled) { background: #f0f4f9;
}
.reorder-arrow[data-v-b9afdefa]:disabled { opacity: .35; cursor: default;
}

/* Seção aberta (drill-down): topo CONGELADO logo abaixo do header do app */
.section-topbar[data-v-b9afdefa] { display: flex; align-items: center; gap: 10px; position: sticky; top: var(--topbar-h, 56px); z-index: 20; background: var(--fundo); padding: 4px 0 8px; margin-bottom: 2px; box-shadow: 0 8px 12px -10px rgba(62, 104, 166, 0.3);
}
.sec-back[data-v-b9afdefa] { border: none; background: #f0f4f9; color: var(--marca); font-weight: 800; font-size: 24px; line-height: 1; width: 38px; height: 38px; border-radius: 50%; cursor: pointer; flex-shrink: 0; display: flex; align-items: center; justify-content: center;
}
.sec-back[data-v-b9afdefa]:hover { background: #e4ecf7;
}
.sec-topbar-text[data-v-b9afdefa] { display: flex; flex-direction: column; min-width: 0;
}
.sec-topbar-client[data-v-b9afdefa] { font-size: 16px; font-weight: 800; color: var(--texto); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.sec-topbar-title[data-v-b9afdefa] { font-size: 15px; font-weight: 600; color: var(--texto-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.profession-header.in-section[data-v-b9afdefa] { padding: 14px 16px; margin-bottom: 14px; box-shadow: 0 6px 14px -8px rgba(62, 104, 166, 0.35);
}

/* Tipo do cliente: combo com autocomplete (substitui ativar/desativar) */
.client-type[data-v-b9afdefa] { display: inline-flex; align-items: center;
}
.client-type-input[data-v-b9afdefa] { width: 118px; padding: 6px 12px; border: 1px solid var(--linha); border-radius: 999px; font-size: 15px; font-weight: 700; color: #4b668a; background: #f6f9fd; text-align: center; cursor: pointer; font-family: inherit;
}
.client-type-input[data-v-b9afdefa]:hover { border-color: #C9D8EC;
}
.client-type-input[data-v-b9afdefa]:focus { outline: none; border-color: var(--marca); background: #fff; box-shadow: 0 0 0 3px rgba(139,127,240,.12); cursor: text;
}
.client-type-input[data-v-b9afdefa]:disabled { opacity: .6;
}
.section-content[data-v-b9afdefa] { animation: secIn-b9afdefa .18s ease; min-height: 160px;
}
@keyframes secIn-b9afdefa {
from { opacity: 0; transform: translateX(6px);
}
to { opacity: 1; transform: none;
}
}

/* Reação por seção (curtir / amei / não curtir) */
.sec-feedback[data-v-b9afdefa] { display: flex; align-items: center; gap: 8px; margin-top: 22px; padding-top: 14px; border-top: 1px solid #eef2f8;
}
.sec-feedback-q[data-v-b9afdefa] { font-size: 15px; color: var(--texto-3); margin-right: auto;
}
.fb-btn[data-v-b9afdefa] { border: 1px solid #e9eff8; background: #fff; border-radius: 999px; padding: 6px 12px; font-size: 16px; cursor: pointer; line-height: 1; transition: all .12s;
}
.fb-btn[data-v-b9afdefa]:hover { background: #F1F5FB; transform: scale(1.08);
}
.fb-btn.on[data-v-b9afdefa] { border-color: var(--marca); background: #f0f4f9;
}

/* Container que permite reordenar as seções via CSS order */
.reorder-container[data-v-b9afdefa] { display: flex; flex-direction: column;
}
.reorder-container[data-v-b9afdefa] > * { margin-bottom: 0;
}
.toolbar-btn.active[data-v-b9afdefa] { background: var(--marca); color: #fff; border-color: var(--marca);
}
.reorder-panel[data-v-b9afdefa] { background: #f6f9fd; border: 1px solid var(--linha); border-radius: 14px; padding: 12px 14px; margin-bottom: 14px;
}
.reorder-panel-head[data-v-b9afdefa] { display: flex; flex-direction: column; margin-bottom: 8px;
}
.reorder-panel-head strong[data-v-b9afdefa] { font-size: 16px;
}
.reorder-panel-head span[data-v-b9afdefa] { font-size: 15px; color: var(--texto-3);
}
.reorder-line[data-v-b9afdefa] { display: flex; align-items: center; justify-content: space-between; padding: 7px 8px; border-radius: 8px;
}
.reorder-line[data-v-b9afdefa]:hover { background: #eff4fa;
}
.rl-title[data-v-b9afdefa] { font-size: 16px; font-weight: 600; color: #334155;
}
.rl-btns[data-v-b9afdefa] { display: flex; gap: 4px;
}
.rl-btn[data-v-b9afdefa] { width: 30px; height: 28px; border: 1px solid #d6e3f3; background: #fff; border-radius: 8px; cursor: pointer; font-size: 16px; color: var(--marca);
}
.rl-btn[data-v-b9afdefa]:disabled { opacity: .4; cursor: default;
}
.rl-btn[data-v-b9afdefa]:not(:disabled):hover { background: var(--marca); color: #fff;
}
.connect-banner[data-v-b9afdefa] {
  display: flex; align-items: center; gap: 14px;
  max-width: 1180px; margin: 16px auto 0; padding: 14px 18px;
  background: linear-gradient(135deg, #eff4fa, #EDF2F9);
  border: 1px solid var(--linha); border-radius: 16px;
}
.connect-banner .cb-icon[data-v-b9afdefa] { font-size: 24px;
}
.connect-banner .cb-text[data-v-b9afdefa] { flex: 1; display: flex; flex-direction: column; gap: 2px;
}
.connect-banner .cb-text strong[data-v-b9afdefa] { font-size: 16px; color: var(--texto);
}
.connect-banner .cb-text span[data-v-b9afdefa] { font-size: 15px; color: #64748b; line-height: 1.45;
}
.connect-banner .cb-actions[data-v-b9afdefa] { display: flex; gap: 8px; flex-shrink: 0;
}
.connect-banner .cb-close[data-v-b9afdefa] { flex-shrink: 0; width: 30px; height: 30px; border: none; background: transparent; color: var(--texto-3); font-size: 16px; cursor: pointer; border-radius: 8px;
}
.connect-banner .cb-close[data-v-b9afdefa]:hover { background: rgba(0,0,0,.05); color: #475569;
}
.cb-connect[data-v-b9afdefa] { display: inline-flex; align-items: center; gap: 7px; padding: 8px 16px; border: 1px solid #dadce0; border-radius: 10px; background: #fff; color: #3c4043; font-weight: 700; font-size: 16px; cursor: pointer; transition: box-shadow .15s, background .15s;
}
.cb-connect[data-v-b9afdefa]:hover { background: #f8faff; box-shadow: 0 1px 5px rgba(60,64,67,.18);
}
@media (max-width: 640px) {
.connect-banner[data-v-b9afdefa] { flex-wrap: wrap;
}
.cb-actions[data-v-b9afdefa] { width: 100%;
}
.cb-connect[data-v-b9afdefa] { flex: 1;
}
}
.client-item .name[data-v-b9afdefa] {
  font-weight: 800;
  font-size: 16px;
  letter-spacing: -0.01em;
  color: var(--texto);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.2;
}
.client-item .meta[data-v-b9afdefa] { font-size: 15px; margin-top: 1px;
}
.client-item .sig-star[data-v-b9afdefa] { color: #F5B301; letter-spacing: -1px;
}
.client-item .meta[data-v-b9afdefa] {
  font-size: 15px;
  color: var(--texto-3);
}
.main[data-v-b9afdefa] {
  flex: 1;
  min-width: 0;
  padding: 24px;
}
/* Cliente aberto: o cabeçalho (sticky) encosta no menu superior, sem faixa vazia. */
.layout.profession-theme .main[data-v-b9afdefa] { padding-top: 0;
}
.empty-state[data-v-b9afdefa] {
  text-align: center;
  padding: 40px;
  color: #64748b;
}
.clients-dashboard-container[data-v-b9afdefa] {
  height: 100%;
  padding: 0;
  margin: 0;
}
.detail-toolbar[data-v-b9afdefa] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin: 16px 0 20px;
  padding: 10px 14px;
  background: #f1f5fb;
  border: 1px solid #e5edf8;
  border-radius: 10px;
}
.toolbar-hint[data-v-b9afdefa] { font-size: 16px; color: #475569;
}
.toolbar-btns[data-v-b9afdefa] { display: flex; gap: 8px;
}
.font-controls[data-v-b9afdefa] { display: inline-flex; gap: 4px;
}
.font-btn[data-v-b9afdefa] { font-weight: 800; min-width: 42px; padding: 6px 12px; border: 1px solid var(--linha); background: #fff; border-radius: 8px; color: var(--acao); cursor: pointer; font-size: 16px;
}
.font-btn[data-v-b9afdefa]:hover { background: #F1F5FB;
}
.font-ctl[data-v-b9afdefa] { display: flex; align-items: center; gap: 8px; justify-content: flex-end; margin-top: 18px; padding-top: 14px; border-top: 1px solid #eef2f8;
}
.font-ctl-label[data-v-b9afdefa] { font-size: 15px; color: var(--texto-3); font-weight: 600;
}

/* "⋯ Mais": único gatilho das ações secundárias da ficha (menos poluição na tela) */
.ph-more[data-v-b9afdefa] { margin-left: auto; border: 1px solid var(--linha); background: #fff; color: var(--acao); width: 40px; height: 40px; border-radius: 12px; font-size: 20px; line-height: 1; cursor: pointer; flex-shrink: 0;
}
.ph-more[data-v-b9afdefa]:hover { background: #F1F5FB;
}
/* Controle de tamanho da letra, agora dentro da gaveta */
.bs-font[data-v-b9afdefa] { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 52px; padding: 8px 16px; border: 1px solid #e9eff8; border-radius: 14px;
}
.bs-font-label[data-v-b9afdefa] { font-size: 16px; font-weight: 600; color: #334155;
}
.bs-font-btns[data-v-b9afdefa] { display: flex; gap: 8px;
}
.bs-font-btn[data-v-b9afdefa] { font-weight: 800; min-width: 48px; min-height: 44px; border: 1px solid var(--linha); background: #fff; border-radius: 10px; color: var(--acao); cursor: pointer; font-size: 16px;
}
.bs-font-btn[data-v-b9afdefa]:hover { background: #F1F5FB;
}

/* ── Ficha mobile-first: alvos grandes e fáceis pro dedo (≥44px) ── */
@media (max-width: 768px) {
.menu-row[data-v-b9afdefa] { padding: 18px 16px; font-size: 16px; min-height: 58px; border-radius: 16px;
}
.menu-arrow[data-v-b9afdefa] { font-size: 24px;
}
  /* Cabeçalho: estrelas numa linha, tipo + "⋯" na outra — nada cortado */
.ph-status[data-v-b9afdefa] { flex-wrap: wrap; row-gap: 8px; width: 100%;
}
.star-rating[data-v-b9afdefa] { flex: 1 1 100%;
}
.star-btn[data-v-b9afdefa] { font-size: 28px; padding: 4px 4px;
}
.client-type-input[data-v-b9afdefa] { min-height: 44px; flex: 1; width: auto; min-width: 110px; font-size: 16px;
}
.ph-more[data-v-b9afdefa] { width: 44px; height: 44px; font-size: 24px; flex-shrink: 0;
}
}
.toolbar-btn[data-v-b9afdefa] {
  padding: 6px 14px;
  border-radius: 6px;
  border: 1px solid #C9D8EC;
  background: white;
  color: var(--marca);
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s;
}
.toolbar-btn[data-v-b9afdefa]:hover { background: #e5edf8;
}
.empty[data-v-b9afdefa] {
  color: var(--texto-3);
  font-style: italic;
  padding: 24px;
  text-align: center;
  background: var(--fundo);
  border-radius: 8px;
}
.empty-instruction[data-v-b9afdefa] {
  padding: 32px 20px;
  text-align: center;
  background: linear-gradient(135deg, #FBF3F3 0%, var(--fundo) 100%);
  border-radius: 12px;
  border: 1px solid var(--acao-tonal);
  margin: 12px;
}
.instruction-icon[data-v-b9afdefa] {
  font-size: 56px;
  display: block;
  margin-bottom: 16px;
}
.instruction-title[data-v-b9afdefa] {
  font-weight: 700;
  font-size: 18px;
  color: var(--texto);
  margin: 0 0 8px 0;
}
.instruction-text[data-v-b9afdefa] {
  font-size: 16px;
  color: #64748b;
  margin: 0 0 20px 0;
  line-height: 1.5;
}
.instruction-features[data-v-b9afdefa] {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin-top: 16px;
}
.instruction-feature[data-v-b9afdefa] {
  padding: 12px;
  background: white;
  border-radius: 8px;
  border: 1px solid var(--linha);
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 16px;
  color: #475569;
  transition: all 0.2s;
}
.instruction-feature[data-v-b9afdefa]:hover {
  border-color: var(--marca);
  background: #FBF3F3;
}
.instr-icon[data-v-b9afdefa] {
  font-size: 20px;
  flex-shrink: 0;
}
.tabs[data-v-b9afdefa] {
  display: flex;
  gap: 16px;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--linha);
  padding-bottom: 0;
}
.tabs button[data-v-b9afdefa] {
  padding: 12px 16px;
  border: none;
  background: transparent;
  cursor: pointer;
  color: #64748b;
  border-bottom: 2px solid transparent;
  font-weight: 400;
  transition: all 0.2s;
}
.tabs button.active[data-v-b9afdefa] {
  color: var(--marca);
  border-bottom-color: var(--marca);
  font-weight: 600;
}
.tab-content[data-v-b9afdefa] {
  animation: fadeIn-b9afdefa 0.2s;
}
@keyframes fadeIn-b9afdefa {
from { opacity: 0;
}
to { opacity: 1;
}
}
.session-card[data-v-b9afdefa] {
  background: #fff;
  border: 1px solid var(--linha);
  border-radius: 8px;
  padding: 16px;
  margin-bottom: 12px;
  cursor: pointer;
  transition: all 0.2s;
}
.session-card[data-v-b9afdefa]:hover {
  border-color: var(--marca);
  background: var(--fundo);
}
.session-card.expanded[data-v-b9afdefa] {
  background: #f0f4f9;
  border-color: var(--marca);
  box-shadow: 0 2px 8px rgba(79, 143, 238, 0.15);
}
.session-header[data-v-b9afdefa] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
}
.expand-icon[data-v-b9afdefa] {
  font-size: 15px;
  color: var(--marca);
  transition: transform 0.2s;
}
.date[data-v-b9afdefa] {
  font-weight: 600;
  color: var(--texto);
}
.duration[data-v-b9afdefa] {
  color: #64748b;
  font-size: 16px;
}
.preview[data-v-b9afdefa] {
  color: #64748b;
  font-size: 16px;
  line-height: 1.5;
  margin: 0;
}
.full-transcript[data-v-b9afdefa] {
  background: #fff;
  border: 1px solid var(--linha);
  border-radius: 6px;
  padding: 12px;
  margin-top: 12px;
  color: var(--texto);
  font-size: 16px;
  line-height: 1.6;
  max-height: 400px;
  overflow-y: auto;
  animation: slideDown-b9afdefa 0.3s ease-out;
}
.full-transcript p[data-v-b9afdefa] {
  margin: 0;
}
@keyframes slideDown-b9afdefa {
from {
    opacity: 0;
    max-height: 0;
}
to {
    opacity: 1;
    max-height: 400px;
}
}
.empty[data-v-b9afdefa] {
  text-align: center;
  padding: 20px;
  color: #64748b;
}
.session-detail-container[data-v-b9afdefa] {
  margin-top: 20px;
}
.back-btn[data-v-b9afdefa] {
  background: transparent;
  border: none;
  color: var(--marca);
  cursor: pointer;
  font-weight: 600;
  font-size: 16px;
  margin-bottom: 20px;
  padding: 8px 12px;
  border-radius: 6px;
  transition: all 0.2s;
}
.back-btn[data-v-b9afdefa]:hover {
  background: #f0f4f9;
}
.sessions-list[data-v-b9afdefa] {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.session-card[data-v-b9afdefa] {
  cursor: pointer;
}
.session-card:hover .expand-icon[data-v-b9afdefa] {
  color: var(--acao);
  transform: translateX(4px);
}
.new-client-btn[data-v-b9afdefa] {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 12px 16px;
  margin-top: 12px;
  background: #f0f4f9;
  border: 1px dashed #bfccde;
  border-radius: 8px;
  color: var(--marca);
  font-weight: 600;
  font-size: 16px;
  cursor: pointer;
  transition: all 0.2s;
}
.new-client-btn[data-v-b9afdefa]:hover {
  background: #e5edf8;
  border-color: var(--marca);
}
.add-from-contacts[data-v-b9afdefa] {
  width: 100%;
  margin-top: 8px;
  padding: 9px 14px;
  background: transparent;
  border: none;
  border-radius: 8px;
  color: var(--muted);
  font-weight: 600;
  font-size: 15px;
  text-align: left;
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
.add-from-contacts[data-v-b9afdefa]:hover { background: var(--soft); color: var(--soft-text);
}
.sidebar-font[data-v-b9afdefa] { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 10px; padding: 8px 10px; border: 1px solid #eef2f7; border-radius: 10px;
}
.sidebar-font-label[data-v-b9afdefa] { font-size: 15px; font-weight: 600; color: #64748b;
}
.sidebar-font-btns[data-v-b9afdefa] { display: flex; gap: 6px;
}
.sidebar-font-btn[data-v-b9afdefa] { font-weight: 800; min-width: 40px; min-height: 34px; border: 1px solid var(--linha); background: #fff; border-radius: 8px; color: var(--acao); cursor: pointer; font-size: 16px;
}
.sidebar-font-btn[data-v-b9afdefa]:hover { background: #F1F5FB;
}

/* ═══ SEÇÕES DO SIDEBAR ═══ */
.sidebar-section[data-v-b9afdefa] { margin-bottom: 16px; padding-bottom: 16px; border-bottom: 1px solid var(--linha);
}
.sidebar-section[data-v-b9afdefa]:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0;
}

/* Seção de Ações (Novo Cliente, Adicionar Contatos) */
.sidebar-actions[data-v-b9afdefa] { display: flex; flex-direction: column; gap: 8px;
}

/* Seção de Busca e Filtros */
.sidebar-filters[data-v-b9afdefa] { display: flex; flex-direction: column; gap: 10px;
}

/* Seção de Clientes - ocupa espaço restante com scroll */
.sidebar-clients-section[data-v-b9afdefa] {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-height: 0;
  margin-bottom: 16px;
}

/* Seção de Ferramentas (Voltar, Tamanho da letra) */
.sidebar-tools[data-v-b9afdefa] { display: flex; flex-direction: column; gap: 10px; margin-bottom: 0;
}
.plus-icon[data-v-b9afdefa] {
  font-size: 16px;
}

/* Modal styles */
/* View no corpo (como "ver ficha completa"): abaixo da barra do topo, que fica
   visível — não é overlay que cobre tudo, nem popup com dimming. */
.modal-overlay[data-v-b9afdefa] {
  position: fixed; top: 62px; left: 0; right: 0; bottom: 0; z-index: 30;
  background: #F7F8FA; overflow-y: auto;
  animation: cadFadeUp .24s ease both;
}
@media (max-width: 640px) {
.modal-overlay[data-v-b9afdefa] { top: 57px;
}
}
.modal-content[data-v-b9afdefa] {
  background: #fff; border: 1px solid #E2E5EA; box-shadow: none;
  border-radius: 16px; max-width: 560px; width: calc(100% - 32px);
  margin: 20px auto 40px;
}
.modal-header[data-v-b9afdefa] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px;
  border-bottom: 1px solid var(--linha);
}
.modal-header h3[data-v-b9afdefa] {
  margin: 0;
  font-size: 18px;
  color: var(--texto);
}
.close-btn[data-v-b9afdefa] {
  background: none;
  border: none;
  font-size: 24px;
  cursor: pointer;
  color: #64748b;
  transition: color 0.2s;
}
.close-btn[data-v-b9afdefa]:hover {
  color: var(--texto);
}
.modal-body[data-v-b9afdefa] {
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.form-group[data-v-b9afdefa] {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.form-group label[data-v-b9afdefa] {
  font-size: 15px;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.optional[data-v-b9afdefa] {
  font-weight: 400;
  text-transform: none;
  font-size: 15px;
  color: var(--texto-3);
  letter-spacing: 0;
}
.form-input[data-v-b9afdefa],
.form-textarea[data-v-b9afdefa] {
  padding: 10px 12px;
  border: 1px solid var(--linha);
  border-radius: 6px;
  font-size: 16px;
  color: var(--texto);
  font-family: inherit;
  transition: all 0.2s;
}
.form-input[data-v-b9afdefa]:focus,
.form-textarea[data-v-b9afdefa]:focus {
  outline: none;
  border-color: var(--marca);
  box-shadow: 0 0 0 3px rgba(79, 143, 238, 0.1);
}
.form-textarea[data-v-b9afdefa] {
  resize: vertical;
  min-height: 80px;
}
.modal-footer[data-v-b9afdefa] {
  display: flex;
  gap: 12px;
  padding: 20px;
  border-top: 1px solid var(--linha);
}
.btn-cancel[data-v-b9afdefa],
.btn-create[data-v-b9afdefa] {
  flex: 1;
  padding: 10px 16px;
  border-radius: 6px;
  border: none;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
}
.btn-cancel[data-v-b9afdefa] {
  background: #f0f4f9;
  color: #64748b;
}
.btn-cancel[data-v-b9afdefa]:hover {
  background: var(--linha);
}
.btn-create[data-v-b9afdefa] {
  background: var(--marca);
  color: white;
}
.btn-create[data-v-b9afdefa]:hover {
  background: var(--acao);
}

/* ── Tipografia do detalhe do cliente ──
   Os componentes internos (editor, memória, seções) usam fontes de 12-13px,
   pequenas demais para leitura — pior ainda no celular. O zoom escala o painel
   inteiro de uma vez, sem precisar ajustar componente por componente. */
/* Zoom de legibilidade SÓ no desktop. No celular o zoom escalava a ficha para
   130% da largura da tela → estourava a horizontal e quebrava o layout. No
   mobile a ficha usa o tamanho natural (a media query ≤768px cuida do resto). */
@media (min-width: 769px) {
.client-detail[data-v-b9afdefa] { zoom: 1.30;
}
}

/* Seções completas da ficha, empilhadas e SEMPRE visíveis (não colapsam).
   Largura TOTAL, igual à análise contextual — nada trava em 860px. */
.detail-sections[data-v-b9afdefa] { display: flex; flex-direction: column; gap: 16px; margin-top: 22px;
}
.dsec[data-v-b9afdefa] { background: #fff; border: 1px solid var(--linha); border-radius: 16px; padding: 18px;
}
/* Trilho "adicionar à ficha": discreto, recupera seções escondidas */
.dsec-more[data-v-b9afdefa] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding: 4px 2px;
}
.dsec-more-l[data-v-b9afdefa] { font-size: 16px; font-weight: 700; color: var(--texto-3);
}
.dsec-more-chip[data-v-b9afdefa] {
  border: 1.5px dashed #c9d8ec; background: #fbfdff; border-radius: 999px;
  padding: 8px 14px; font-size: 16px; font-weight: 700; color: var(--acao);
  cursor: pointer; font-family: inherit;
}
.dsec-more-chip[data-v-b9afdefa]:hover { border-style: solid; background: #eef4fb;
}
.dsec.collapsed[data-v-b9afdefa] { padding: 10px 18px; opacity: 0.75;
}
.dsec-head[data-v-b9afdefa] { display: flex; align-items: center; justify-content: space-between; gap: 10px;
}
.dsec-head .dsec-h[data-v-b9afdefa] { margin: 0;
}
.dsec-toggle[data-v-b9afdefa] {
  flex: none; border: 1px solid var(--linha); background: #fff; color: var(--texto-3);
  border-radius: 8px; padding: 3px 9px; font-size: 15px; font-weight: 700;
  cursor: pointer; font-family: inherit; transition: color .15s, border-color .15s;
}
.dsec-toggle[data-v-b9afdefa]:hover { color: var(--marca); border-color: var(--marca);
}
.dsec-h[data-v-b9afdefa] {
  font-size: 16px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em;
  color: var(--acao); margin: 0 0 14px; padding-bottom: 9px; border-bottom: 2px solid var(--linha);
}
.dsec .agenda-sub[data-v-b9afdefa] { font-size: 15px; font-weight: 700; color: #64748b; margin: 18px 0 8px;
}
.dsec .agenda-sub[data-v-b9afdefa]:first-of-type { margin-top: 2px;
}
.dsec-hint[data-v-b9afdefa] { font-weight: 500; text-transform: none; letter-spacing: 0; color: var(--texto-3); font-size: 15px;
}

/* ═══════════════ Mobile-first (≤768px): experiência de app no celular ═══════════════ */

/* Navegação inferior e botão voltar: existem só no celular */
.bottom-nav[data-v-b9afdefa] { display: none;
}
/* Voltar para a lista de clientes — sempre visível (a sidebar saiu, então este é
   o único caminho de volta em qualquer tela). */
.mobile-back[data-v-b9afdefa] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #fff;
  border: 1px solid var(--linha);
  color: var(--acao);
  font-weight: 700;
  font-size: 16px;
  font-family: inherit;
  padding: 9px 16px;
  border-radius: 999px;
  cursor: pointer;
  margin-bottom: 14px;
}
.mobile-back[data-v-b9afdefa]:hover { background: #EAF0F8; border-color: #b9d2f0;
}

/* Navegação persistente — barra inferior (só no celular; desktop usa a barra do topo).
   Reaproveita as classes bn-icon/bn-label/active já estiladas no bloco @768px abaixo. */
.bottom-nav[data-v-b9afdefa] { display: none;
}
.bottom-nav button[data-v-b9afdefa] { color: #5B6572;
}
.bottom-nav button.active[data-v-b9afdefa] { color: var(--azul-900);
}
.bn-icon[data-v-b9afdefa] { opacity: .5; transition: opacity .15s, transform .15s; display: inline-block;
}
.bottom-nav button.active .bn-icon[data-v-b9afdefa] { opacity: 1; animation: cadPop .42s ease;
}
.bottom-nav button:active .bn-icon[data-v-b9afdefa] { transform: scale(.86);
}
@media (max-width: 768px) {

  /* Topbar enxuta: só a marca e o sair — a navegação vive embaixo, à mão do polegar */
.topbar[data-v-b9afdefa] { gap: 12px; padding: 10px 14px; justify-content: space-between;
}
.nav[data-v-b9afdefa] { display: none;
}
.account-btn[data-v-b9afdefa] { display: none;
}
.logout-btn[data-v-b9afdefa] { padding: 8px 12px; font-size: 16px; white-space: nowrap;
}

  /* Barra de navegação inferior estilo app */
.bottom-nav[data-v-b9afdefa] {
    display: flex;
    position: fixed;
    bottom: 0; left: 0; right: 0;
    z-index: 40; /* abaixo do painel de detalhe do Financeiro (60) e do menu Mais (62) */
    background: #fff;
    border-top: 1px solid var(--linha);
    box-shadow: 0 -4px 16px rgba(62, 104, 166, 0.08);
    padding-bottom: env(safe-area-inset-bottom);
}
.bottom-nav button[data-v-b9afdefa] {
    flex: 1;
    display: flex; flex-direction: column; align-items: center; gap: 2px;
    padding: 8px 4px 7px;
    border: none; background: none; cursor: pointer;
    color: #738091; font-family: inherit;
}
.bottom-nav button.active[data-v-b9afdefa] { color: #3770ba;
}
.bottom-nav button.active .bn-label[data-v-b9afdefa] { font-weight: 800;
}
.bn-icon[data-v-b9afdefa] { font-size: 20px; line-height: 1;
}
.bn-label[data-v-b9afdefa] { font-size: 15px; font-weight: 600;
}

  /* Espaço para o conteúdo não ficar atrás da barra inferior */
.dashboard[data-v-b9afdefa] { padding-bottom: calc(64px + env(safe-area-inset-bottom));
}

  /* Voltar do detalhe: drill-down estilo app */
.mobile-back[data-v-b9afdefa] {
    display: block;
    width: 100%;
    margin: 0 0 12px;
    padding: 12px 14px;
    border: 1px solid var(--linha); border-radius: 12px;
    background: #fff; color: #3770ba;
    font-weight: 800; font-size: 16px; text-align: left;
    cursor: pointer; font-family: inherit;
}

  /* Alvos de toque confortáveis (~44px) */
.toolbar-btn[data-v-b9afdefa], .status-toggle[data-v-b9afdefa], .cb-connect[data-v-b9afdefa] { min-height: 42px;
}
.client-item[data-v-b9afdefa] { padding: 12px 10px;
}

  /* Layout de clientes: empilha — lista em cima (rolável), conteúdo embaixo */
.layout[data-v-b9afdefa] { flex-direction: column; height: auto;
}
.sidebar[data-v-b9afdefa] { width: 100%; max-height: 42vh; border-right: none; border-bottom: 1px solid var(--linha); padding: 12px 16px;
}
.sidebar.collapsed[data-v-b9afdefa] { width: 100%; min-width: 0; max-height: none; padding: 8px 16px;
}
  /* Cliente aberto no celular: some com a sidebar (a "pílula 👥") — o detalhe
     ocupa a tela toda; volta-se pela "← Todos os clientes" ou pela nav inferior. */
.layout.profession-theme .sidebar[data-v-b9afdefa] { display: none;
}
.main[data-v-b9afdefa] { padding: 16px 12px; overflow: visible;
}
  /* Cliente aberto: encosta o conteúdo no topo (sem faixa vazia acima do nome) */
.layout.profession-theme .main[data-v-b9afdefa] { padding-top: 6px;
}

  /* Cabeçalho do cliente detalhado */
.profession-header[data-v-b9afdefa] { padding: 16px;
}
.profession-header h3[data-v-b9afdefa] { font-size: 20px;
}
.ph-top[data-v-b9afdefa] { flex-direction: column; align-items: flex-start; gap: 10px;
}

  /* Barra de ferramentas do detalhe: botões em linha cheia */
.detail-toolbar[data-v-b9afdefa] { flex-direction: column; align-items: stretch;
}
.toolbar-hint[data-v-b9afdefa] { display: none;
}
.toolbar-btns[data-v-b9afdefa] { flex-wrap: wrap;
}
.toolbar-btns .toolbar-btn[data-v-b9afdefa] { flex: 1; min-width: 96px;
}

  /* Tooltip das estrelas: alinhado à esquerda para não estourar a tela */
.star-tip[data-v-b9afdefa] { left: 0; transform: none; width: min(250px, 80vw);
}
.star-tip[data-v-b9afdefa]::before { left: 22px; transform: none;
}

  /* Modais ocupam a tela com rolagem própria */
.modal-content[data-v-b9afdefa] { width: calc(100vw - 24px); max-width: none; max-height: 92vh; max-height: 92dvh; overflow-y: auto;
}

  /* Painel de reordenação e banner de conexão */
.reorder-panel[data-v-b9afdefa] { padding: 12px;
}
.connect-banner[data-v-b9afdefa] { margin: 10px 12px;
}

  /* Ficha 100% adaptativa: sem zoom e nada estoura a largura da tela */
.client-detail[data-v-b9afdefa] { zoom: 1;
}
.main[data-v-b9afdefa], .client-detail[data-v-b9afdefa], .detail-sections[data-v-b9afdefa], .dsec[data-v-b9afdefa] {
    max-width: 100%; box-sizing: border-box; min-width: 0;
}
.dsec[data-v-b9afdefa] { padding: 14px;
}
  /* Quebra textos longos (e-mails, links, nomes) em vez de empurrar a largura */
.client-detail .dsec[data-v-b9afdefa], .client-detail .cp-goal[data-v-b9afdefa],
  .client-detail .cp-note-main[data-v-b9afdefa], .client-detail .cp-fact-val[data-v-b9afdefa],
  .client-detail .cp-li[data-v-b9afdefa], .client-detail .cp-finline[data-v-b9afdefa] {
    overflow-wrap: anywhere; word-break: break-word;
}
  /* Tabelas dentro da ficha rolam sozinhas, sem alargar a página */
.client-detail table[data-v-b9afdefa] { display: block; width: 100%; overflow-x: auto;
}
}

/* ── Profession Theming ── */
.profession-header[data-v-b9afdefa] {
  /* Header suave: fundo pastel claro + texto escuro (antes era gradiente forte). */
  background: linear-gradient(135deg, #f4f7fc 0%, #fdf3f8 100%);
  color: #344050;
  padding: 20px;
  border-radius: 14px;
  margin-bottom: 16px;
  border: 1px solid #e9eff8;
  box-shadow: 0 1px 3px rgba(62, 104, 166, 0.05);
  /* Fixo no topo do .main (que já começa logo abaixo do menu do app) — sem espaço */
  position: sticky;
  top: 0;
  z-index: 20;
}
.ph-title[data-v-b9afdefa] { display: flex; align-items: center; gap: 10px; min-width: 0;
}
.ph-back[data-v-b9afdefa] { border: none; background: rgba(139,127,240,0.14); color: #4076bb; font-weight: 800; font-size: 24px; line-height: 1; width: 34px; height: 34px; border-radius: 50%; cursor: pointer; flex-shrink: 0; display: flex; align-items: center; justify-content: center;
}
.ph-back[data-v-b9afdefa]:hover { background: rgba(139,127,240,0.24);
}
.ph-section-label[data-v-b9afdefa] { margin: 8px 0 0; font-size: 16px; font-weight: 700; color: #4076bb;
}
.profession-header h3[data-v-b9afdefa] {
  margin: 0 0 8px 0;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: -0.5px;
  color: #243040;
}
.profession-subtitle[data-v-b9afdefa] {
  margin: 0;
  font-size: 16px;
  color: #738091;
  font-weight: 500;
  text-transform: capitalize;
}
.layout.profession-theme[data-v-b9afdefa] {
  --theme-primary: var(--marca);
  --theme-secondary: var(--acao-tonal);
  --theme-accent: var(--acao);
  --theme-gradient: linear-gradient(135deg, var(--marca), #759fd7);
}

/* Footer */
.dashboard-footer[data-v-b9afdefa] {
  background: #f0f4f9;
  border-top: 1px solid var(--linha);
  padding: 24px 20px;
  margin-top: 40px;
}
.dashboard-footer .footer-content[data-v-b9afdefa] {
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  text-align: center;
}
.dashboard-footer .footer-links[data-v-b9afdefa] {
  font-size: 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: center;
}
.dashboard-footer .footer-links a[data-v-b9afdefa] {
  color: var(--marca);
  text-decoration: none;
  transition: color 0.2s;
}
.dashboard-footer .footer-links a[data-v-b9afdefa]:hover {
  color: var(--acao);
  text-decoration: underline;
}
.dashboard-footer .footer-separator[data-v-b9afdefa] {
  color: #bfccde;
}
.dashboard-footer .footer-company[data-v-b9afdefa] {
  font-size: 15px;
  color: #64748b;
}
.dashboard-footer p[data-v-b9afdefa] {
  margin: 0;
}
/* ── A−/A+ da tela inteira ─────────────────────────────────────────────── */
.st-fonte[data-v-b9afdefa] { display: flex; gap: 4px; align-items: center;
}
.st-fonte-b[data-v-b9afdefa] {
  min-width: 34px; height: 34px; border: 1px solid #DFE3EB; border-radius: 9px;
  background: #fff; color: #47526B; font-family: inherit; font-size: 15px;
  font-weight: 800; cursor: pointer; line-height: 1;
}
.st-fonte-b[data-v-b9afdefa]:hover:not(:disabled) { background: #F3F6FA; border-color: #C3CBD6;
}
.st-fonte-b[data-v-b9afdefa]:disabled { color: #C3CBD6; cursor: default;
}
.st-fonte-b[data-v-b9afdefa]:focus-visible { outline: 2px solid var(--acao); outline-offset: 2px;
}

/* O contêiner que cresce. `zoom` reflui o layout — o scroll acompanha. */
.dash-escala[data-v-b9afdefa] {
}

/* Em telas estreitas o A−/A+ some do cabeçalho: lá o espaço é do menu e da
   marca. Quem usa celular ajusta pelo zoom do próprio navegador, que é o gesto
   que essa pessoa já conhece. */
@media (max-width: 560px) {
.st-fonte[data-v-b9afdefa] { display: none;
}
}

.social-top[data-v-b9afdefa] {
  display: flex; align-items: center; gap: 18px;
  background: #fff; border-bottom: 1px solid #E2E5EA;
  padding: 12px 28px; position: sticky; top: 0; z-index: 40;
}
/* ── menu lateral expansível (27/07): o trilho ocupa 74px à esquerda ── */
@media (min-width: 861px) {
.dashboard.has-sidenav[data-v-b9afdefa] { padding-left: 74px;
}
}
/* Sem caixa: mesmo desenho dos ícones do menu lateral (pedido do dono 03/08). */
.st-burger[data-v-b9afdefa] { display: none; border: none; background: none; color: var(--texto-2); width: 38px; height: 38px; border-radius: 11px; place-items: center; cursor: pointer; flex: none;
}
.st-burger[data-v-b9afdefa]:hover { background: #E7EDF8; color: var(--azul-900);
}
@media (max-width: 860px) {
.st-burger[data-v-b9afdefa] { display: grid;
}
}
/* bottom-nav aposentada: no mobile a GAVETA do menu lateral assume */
.bottom-nav[data-v-b9afdefa] { display: none !important;
}
.st-brand[data-v-b9afdefa] { display: flex; align-items: center; gap: 10px; cursor: pointer;
}
.st-name[data-v-b9afdefa] { font-weight: 700; font-size: 18px; letter-spacing: -0.01em; color: #141922;
}
.st-home[data-v-b9afdefa] {
  display: inline-flex; align-items: center; gap: 8px; border: 1px solid #E2E5EA;
  border-radius: 100px; padding: 8px 16px; font-weight: 600; font-size: 16px;
  color: var(--azul-900); background: #fff; cursor: pointer; font-family: inherit;
}
.st-home[data-v-b9afdefa]:hover, .st-home.on[data-v-b9afdefa] { background: var(--acao-tonal); border-color: var(--acao-tonal);
}
.st-cad[data-v-b9afdefa] { margin-left: 6px;
}
.st-cad-ico[data-v-b9afdefa] { font-size: 15px; line-height: 1;
}
.st-spring[data-v-b9afdefa] { flex: 1;
}
.st-clients[data-v-b9afdefa] {
  display: inline-flex; align-items: center; gap: 8px; border: 1px solid #E2E5EA;
  border-radius: 100px; padding: 8px 16px; font-weight: 600; font-size: 16px;
  color: var(--azul-900); background: #fff; cursor: pointer; font-family: inherit;
}
.st-clients[data-v-b9afdefa]:hover, .st-clients.on[data-v-b9afdefa] { background: var(--acao-tonal); border-color: var(--acao-tonal);
}
.st-fin[data-v-b9afdefa] {
  display: inline-flex; align-items: center; gap: 7px; border: 1px solid #CFE3D8;
  border-radius: 100px; padding: 8px 15px; font-weight: 700; font-size: 16px;
  color: #155D46; background: #EAF6F0; cursor: pointer; font-family: inherit;
}
.st-fin[data-v-b9afdefa]:hover, .st-fin.on[data-v-b9afdefa] { background: #D9EEE5; border-color: #B7E0CE;
}
.st-fin-ico[data-v-b9afdefa] { font-size: 16px; line-height: 1;
}
.st-me-wrap[data-v-b9afdefa] { position: relative;
}
.st-me[data-v-b9afdefa] {
  width: 38px; height: 38px; border-radius: 9px; background: none; color: var(--texto-2);
  font-weight: 700; font-size: 16px; border: none; cursor: pointer; font-family: inherit;
  display: grid; place-items: center;
}
.st-me[data-v-b9afdefa]:hover { background: #E7EDF8; color: var(--azul-900);
}
/* Polish: press feedback nos controles do topo + entrada do menu */
.st-home[data-v-b9afdefa], .st-clients[data-v-b9afdefa], .st-fin[data-v-b9afdefa], .st-me[data-v-b9afdefa], .st-menu button[data-v-b9afdefa] { transition: transform .12s ease, background .15s ease, border-color .15s ease;
}
.st-home[data-v-b9afdefa]:active, .st-clients[data-v-b9afdefa]:active, .st-fin[data-v-b9afdefa]:active, .st-me[data-v-b9afdefa]:active { transform: scale(.95);
}
.st-menu[data-v-b9afdefa] { animation: cadFadeUp .18s ease both; transform-origin: top right;
}
.st-menu button[data-v-b9afdefa]:active { transform: scale(.98);
}
.st-menu-backdrop[data-v-b9afdefa] { position: fixed; inset: 0; z-index: 45;
}
.st-menu[data-v-b9afdefa] {
  position: absolute; right: 0; top: 46px; z-index: 46;
  background: #fff; border: 1px solid #E2E5EA; border-radius: 14px;
  box-shadow: 0 20px 44px -18px rgba(20,25,34,0.35); padding: 6px; min-width: 226px;
  display: flex; flex-direction: column;
}
.st-menu button[data-v-b9afdefa] {
  /* flex: os itens agora têm ícone SVG antes do texto (antes eram emoji, que
     alinhavam sozinhos na linha de base e ficavam tortos). */
  display: flex; align-items: center; gap: 10px;
  text-align: left; background: none; border: none; font-family: inherit;
  font-size: 16px; color: #141922; padding: 11px 14px; border-radius: 9px; cursor: pointer;
}
.st-menu button[data-v-b9afdefa]:hover { background: #F7F8FA;
}
.st-menu-sep[data-v-b9afdefa] { height: 1px; background: #F0F2F5; margin: 5px 8px;
}
.st-menu-out[data-v-b9afdefa] { color: var(--st-atrasado-tinta) !important; font-weight: 600;
}
@media (max-width: 640px) {
.social-top[data-v-b9afdefa] { padding: 10px 14px; gap: 10px;
}
.st-home-label[data-v-b9afdefa] { display: none;
}
.st-home[data-v-b9afdefa] { padding: 8px 12px;
}
.st-clients-label[data-v-b9afdefa] { display: none;
}
.st-clients[data-v-b9afdefa] { padding: 8px 12px;
}
.st-fin-label[data-v-b9afdefa] { display: none;
}
.st-fin[data-v-b9afdefa] { padding: 8px 12px;
}
}
/* No celular a navegação do topo some (Início/Todos os clientes/Financeiro):
   quem navega é a barra inferior persistente. Ficam só marca + sino + avatar.
   "Mais" abre este menu como painel colado embaixo, acima da barra. */
@media (max-width: 768px) {
.st-home[data-v-b9afdefa], .st-clients[data-v-b9afdefa], .st-fin[data-v-b9afdefa] { display: none;
}
.st-menu[data-v-b9afdefa] {
    position: fixed; left: 12px; right: 12px; top: auto;
    bottom: calc(70px + env(safe-area-inset-bottom));
    min-width: 0; z-index: 62;
}
}

.profession-flow[data-v-9f82edc9] {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  z-index: 1000;
}
.bg-blur[data-v-9f82edc9] {
  position: absolute;
  inset: 0;
  backdrop-filter: blur(10px);
  opacity: 0.5;
}
.card-container[data-v-9f82edc9] {
  position: relative;
  z-index: 2;
  background: white;
  border-radius: 20px;
  padding: 48px 40px;
  max-width: 500px;
  width: 90vw;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
  text-align: center;
}

/* Loading State */
.loading-state[data-v-9f82edc9] {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 200px;
}
.spinner[data-v-9f82edc9] {
  width: 40px;
  height: 40px;
  border: 3px solid #f0f0f0;
  border-top: 3px solid #667eea;
  border-radius: 50%;
  animation: spin-9f82edc9 1s linear infinite;
}
@keyframes spin-9f82edc9 {
to { transform: rotate(360deg);
}
}

/* Choose State */
.choose-state h1[data-v-9f82edc9] {
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 8px;
  color: #1a1a1a;
}
.choose-state .subtitle[data-v-9f82edc9] {
  font-size: 16px;
  color: #999;
  margin-bottom: 24px;
  font-weight: 500;
}
.professions[data-v-9f82edc9] {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-bottom: 24px;
}
.profession-btn[data-v-9f82edc9] {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 20px 16px;
  border: 2px solid #f0f0f0;
  border-radius: 12px;
  background: #fafafa;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.profession-btn[data-v-9f82edc9]:hover {
  background: #f0f4f9;
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(102, 126, 234, 0.2);
}
.profession-btn.selected[data-v-9f82edc9] {
  background: #667eea;
  border-color: #667eea;
  color: white;
  box-shadow: 0 8px 20px rgba(102, 126, 234, 0.3);
}
.profession-btn.selected .name[data-v-9f82edc9] {
  color: white;
}
.profession-btn[data-v-9f82edc9]:active {
  transform: translateY(-2px);
}
.profession-btn .emoji[data-v-9f82edc9] {
  font-size: 32px;
}
.profession-btn .name[data-v-9f82edc9] {
  font-size: 16px;
  font-weight: 600;
  color: #333;
}
.profession-btn .checkmark[data-v-9f82edc9] {
  position: absolute;
  top: 4px;
  right: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  background: white;
  border-radius: 50%;
  font-size: 15px;
  color: #667eea;
  font-weight: bold;
}
.selected-chips[data-v-9f82edc9] {
  margin-bottom: 20px;
  padding: 16px;
  background: #f7f9ff;
  border-radius: 8px;
}
.chips-label[data-v-9f82edc9] {
  font-size: 15px;
  font-weight: 600;
  color: #667eea;
  margin-bottom: 8px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.chips[data-v-9f82edc9] {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.chip[data-v-9f82edc9] {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  background: white;
  border: 1px solid #e0e0e0;
  border-radius: 20px;
  font-size: 16px;
  font-weight: 500;
  color: #333;
}
.chip-emoji[data-v-9f82edc9] {
  font-size: 16px;
}
.chip-remove[data-v-9f82edc9] {
  background: none;
  border: none;
  color: #999;
  cursor: pointer;
  font-size: 16px;
  padding: 0;
  margin-left: 4px;
  transition: color 0.2s;
}
.chip-remove[data-v-9f82edc9]:hover {
  color: #dc2626;
}
.continue-btn[data-v-9f82edc9] {
  width: 100%;
  padding: 14px 20px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  border: none;
  border-radius: 8px;
  font-weight: 600;
  font-size: 16px;
  cursor: pointer;
  transition: all 0.3s;
  font-family: inherit;
}
.continue-btn[data-v-9f82edc9]:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(102, 126, 234, 0.3);
}
.continue-btn[data-v-9f82edc9]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

/* Confirming State */
.confirming-state[data-v-9f82edc9] {
  animation: fadeIn-9f82edc9 0.3s ease-in;
}
.check-animation[data-v-9f82edc9] {
  font-size: 64px;
  margin-bottom: 16px;
  animation: checkmark-9f82edc9 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}
@keyframes checkmark-9f82edc9 {
0% {
    transform: scale(0);
    opacity: 0;
}
50% {
    transform: scale(1.1);
}
100% {
    transform: scale(1);
    opacity: 1;
}
}
.confirming-state h2[data-v-9f82edc9] {
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 12px;
  color: #1a1a1a;
}
.subtext[data-v-9f82edc9] {
  font-size: 16px;
  color: #666;
  margin-bottom: 20px;
}
.confirming-tags[data-v-9f82edc9] {
  display: flex;
  gap: 8px;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 16px;
}
.tag[data-v-9f82edc9] {
  display: inline-block;
  padding: 8px 14px;
  background: white;
  border: 1px solid #e0e0e0;
  border-radius: 20px;
  font-size: 16px;
  font-weight: 500;
  color: #333;
  animation: slideIn-9f82edc9 0.4s cubic-bezier(0.4, 0, 0.2, 1) backwards;
}
.tag[data-v-9f82edc9]:nth-child(1) { animation-delay: 0.1s;
}
.tag[data-v-9f82edc9]:nth-child(2) { animation-delay: 0.2s;
}
.tag[data-v-9f82edc9]:nth-child(3) { animation-delay: 0.3s;
}
.skill-preview-mini[data-v-9f82edc9] {
  display: flex;
  gap: 8px;
  justify-content: center;
  flex-wrap: wrap;
}
.skill-dot[data-v-9f82edc9] {
  display: inline-block;
  padding: 6px 10px;
  background: #f0f4f9;
  border-radius: 16px;
  font-size: 15px;
  font-weight: 500;
  color: #667eea;
  animation: slideIn-9f82edc9 0.4s cubic-bezier(0.4, 0, 0.2, 1) backwards;
}
.skill-dot[data-v-9f82edc9]:nth-child(1) { animation-delay: 0.2s;
}
.skill-dot[data-v-9f82edc9]:nth-child(2) { animation-delay: 0.3s;
}
.skill-dot[data-v-9f82edc9]:nth-child(3) { animation-delay: 0.4s;
}
@keyframes slideIn-9f82edc9 {
from {
    opacity: 0;
    transform: translateY(10px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}

/* Done State */
.done-state[data-v-9f82edc9] {
  animation: fadeIn-9f82edc9 0.3s ease-in;
}
.done-emoji[data-v-9f82edc9] {
  font-size: 72px;
  margin-bottom: 16px;
  animation: bounce-9f82edc9 0.6s ease-out;
}
@keyframes bounce-9f82edc9 {
0% { transform: scale(0) translateY(-20px); opacity: 0;
}
50% { transform: scale(1.1);
}
100% { transform: scale(1) translateY(0); opacity: 1;
}
}
.done-state h2[data-v-9f82edc9] {
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 8px;
  color: #1a1a1a;
}
.continue-btn[data-v-9f82edc9] {
  margin-top: 24px;
  padding: 12px 32px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  border: none;
  border-radius: 8px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s;
  font-size: 16px;
}
.continue-btn[data-v-9f82edc9]:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(102, 126, 234, 0.3);
}
@keyframes fadeIn-9f82edc9 {
from { opacity: 0;
}
to { opacity: 1;
}
}

/* Other State */
.other-state[data-v-9f82edc9] {
  animation: fadeIn-9f82edc9 0.3s ease-in;
}
.other-state h1[data-v-9f82edc9] {
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 8px;
  color: #1a1a1a;
}
.other-subtitle[data-v-9f82edc9] {
  font-size: 16px;
  color: #666;
  margin-bottom: 24px;
}
.profession-input[data-v-9f82edc9] {
  width: 100%;
  padding: 14px 16px;
  border: 2px solid #e0e0e0;
  border-radius: 8px;
  font-size: 16px;
  font-family: inherit;
  margin-bottom: 20px;
  transition: all 0.3s;
  outline: none;
}
.profession-input[data-v-9f82edc9]:focus {
  border-color: #667eea;
  box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}
.profession-input[data-v-9f82edc9]::placeholder {
  color: #999;
}
.other-buttons[data-v-9f82edc9] {
  display: flex;
  gap: 12px;
  margin-top: 24px;
}
.back-btn[data-v-9f82edc9],
.submit-btn[data-v-9f82edc9] {
  flex: 1;
  padding: 12px 20px;
  border: none;
  border-radius: 8px;
  font-weight: 600;
  font-size: 16px;
  cursor: pointer;
  transition: all 0.3s;
  font-family: inherit;
}
.back-btn[data-v-9f82edc9] {
  background: #f0f0f0;
  color: #333;
}
.back-btn[data-v-9f82edc9]:hover {
  background: #e0e0e0;
}
.submit-btn[data-v-9f82edc9] {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
}
.submit-btn[data-v-9f82edc9]:hover:not(:disabled) {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(102, 126, 234, 0.3);
}
.submit-btn[data-v-9f82edc9]:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.other-btn[data-v-9f82edc9] {
  border: 2px dashed #667eea !important;
  background: #f7f9ff !important;
}
.other-btn[data-v-9f82edc9]:hover {
  background: #eef2ff !important;
  border-color: #764ba2 !important;
}
@media (max-width: 600px) {
.card-container[data-v-9f82edc9] {
    padding: 32px 24px;
}
.choose-state h1[data-v-9f82edc9] {
    font-size: 24px;
    margin-bottom: 24px;
}
.other-state h1[data-v-9f82edc9] {
    font-size: 24px;
    margin-bottom: 16px;
}
.professions[data-v-9f82edc9] {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}
.profession-btn[data-v-9f82edc9] {
    padding: 16px 12px;
}
.profession-btn .emoji[data-v-9f82edc9] {
    font-size: 28px;
}
.profession-btn .name[data-v-9f82edc9] {
    font-size: 15px;
}
.other-buttons[data-v-9f82edc9] {
    flex-direction: column;
}
}

/* ── Suporte (fixer) ────────────────────────────────────────────────────── */
.sup-aviso[data-v-2963b490]{background:#3a2f16;border:1px solid #6b5520;color:#e8cf94;border-radius:10px;
  padding:10px 12px;font-size:15px;margin-bottom:12px}
.sup-grade[data-v-2963b490]{display:grid;grid-template-columns:320px 1fr;gap:14px;align-items:start}
.sup-lista[data-v-2963b490]{display:flex;flex-direction:column;gap:8px;max-height:70vh;overflow:auto}
.sup-item[data-v-2963b490]{display:flex;flex-direction:column;gap:2px;text-align:left;background:#161b25;
  border:1px solid #232c3a;border-radius:12px;padding:11px 12px;cursor:pointer;font:inherit;color:#e6ecf5}
.sup-item[data-v-2963b490]:hover{background:#1b2230}
.sup-item.on[data-v-2963b490]{border-color:#4a7cf0;background:#1a2434}
.sup-item b[data-v-2963b490]{font-size:16px}
.sup-item small[data-v-2963b490]{font-size:14px;color:#8996a8}
.sup-semdono[data-v-2963b490]{color:#d09b7a !important}
.sup-ultima[data-v-2963b490]{font-size:15px;color:#b9c4d4;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sup-quando[data-v-2963b490]{font-size:14px;color:#6d7a8c;margin-top:2px}
.sup-thread[data-v-2963b490]{background:#0f1420;border:1px solid #232c3a;border-radius:12px;padding:14px;
  max-height:70vh;overflow:auto;display:flex;flex-direction:column;gap:8px}
.sup-bolha[data-v-2963b490]{max-width:80%;padding:9px 12px;border-radius:12px;font-size:16px;line-height:1.45;
  background:#1b2230;color:#e6ecf5;white-space:pre-line}
.sup-bolha.cadenceai[data-v-2963b490],.sup-bolha.equipe[data-v-2963b490]{margin-left:auto;background:#1e3a2c}
.sup-quem[data-v-2963b490]{display:block;font-size:14px;font-weight:700;color:#8996a8;margin-bottom:2px}
.sup-hora[data-v-2963b490]{display:block;font-size:13px;color:#6d7a8c;margin-top:3px}
.erro-zap[data-v-2963b490] { font-size: 15px; font-weight: 700; color: #1D8A66; text-decoration: none;
}

/* Erros de negócio — fila de quem apaga incêndio: gravidade antes do texto. */
.erros-lista[data-v-2963b490] { display: flex; flex-direction: column; gap: 10px;
}
.erro-card[data-v-2963b490] { background: #fff; border: 1px solid #e1e8f1; border-left: 4px solid #cbd5e1; border-radius: 12px; padding: 14px 16px;
}
.erro-card.critico[data-v-2963b490] { border-left-color: #8C3B33; background: #fdf7f6;
}
.erro-topo[data-v-2963b490] { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 15px;
}
.erro-area[data-v-2963b490] { font-weight: 800; text-transform: uppercase; letter-spacing: .05em; color: #55617A;
}
.erro-grav[data-v-2963b490] { font-weight: 700; padding: 2px 9px; border-radius: 999px; background: #eef2f7; color: #55617A;
}
.erro-grav.critico[data-v-2963b490] { background: #F5DFDB; color: #8C3B33;
}
.erro-vezes[data-v-2963b490] { font-weight: 800; color: #8C3B33;
}
.erro-quando[data-v-2963b490] { margin-left: auto; color: #8996a8;
}
.erro-resumo[data-v-2963b490] { font-size: 17px; font-weight: 700; margin-top: 6px; color: #17233A;
}
.erro-quem[data-v-2963b490] { font-size: 15px; color: #55617A; margin-top: 3px;
}
.erro-det[data-v-2963b490] { margin-top: 8px; font-size: 15px; color: #55617A;
}
.erro-det pre[data-v-2963b490] { white-space: pre-wrap; word-break: break-word; background: #f6f8fb; padding: 10px; border-radius: 8px; font-size: 15px; overflow-x: auto;
}
.erro-acoes[data-v-2963b490] { display: flex; gap: 8px; align-items: center; margin-top: 10px;
}
.erro-acoes button[data-v-2963b490] { font-size: 15px; font-weight: 700; padding: 7px 14px; border-radius: 999px; border: 1px solid #2E5BD7; background: #fff; color: #2E5BD7; cursor: pointer;
}
.erro-sit[data-v-2963b490] { margin-left: auto; font-size: 15px; color: #8996a8;
}
.erros-filtro[data-v-2963b490] { font-size: 15px; padding: 7px 10px; border-radius: 8px; border: 1px solid #e1e8f1;
}
.ab[data-v-2963b490] { max-width: 1280px; margin: 0 auto; padding: 24px 28px 60px;
}
.ab-top[data-v-2963b490] { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;
}
.ab-brand[data-v-2963b490] { font-family: 'Baloo 2', sans-serif; font-weight: 800; font-size: 20px; color: #1E293B;
}
.ab-back[data-v-2963b490] { background: #fff; border: 1px solid var(--border, #E1E8F1); color: var(--primary-deep, #46679A); font-weight: 700; padding: 8px 14px; border-radius: 10px; cursor: pointer;
}
.ab-denied[data-v-2963b490] { background: #FBF3F3; border: 1px solid rgba(169,121,123,.4); color: #A9797B; padding: 18px; border-radius: 12px; font-weight: 600;
}
.ab-filters[data-v-2963b490] { display: flex; gap: 8px; align-items: center; margin-bottom: 14px; flex-wrap: wrap;
}
.ab-chip[data-v-2963b490] { background: #fff; border: 1px solid var(--border, #E1E8F1); color: var(--muted, #55617B); font-weight: 700; font-size: 16px; padding: 7px 13px; border-radius: 10px; cursor: pointer;
}
.ab-chip.on[data-v-2963b490] { background: var(--soft, #EAF0F8); color: var(--soft-text, #3A5B94); border-color: #C9D8EC;
}
.ab-count[data-v-2963b490] { margin-left: auto; color: var(--faint, #8996A8); font-size: 15px;
}
.ab-table[data-v-2963b490] { background: #fff; border: 1px solid var(--border, #E1E8F1); border-radius: 14px; overflow: hidden;
}
.ab-row[data-v-2963b490] { display: grid; grid-template-columns: 1.1fr 2fr 1.8fr 0.9fr 1.6fr; gap: 12px; padding: 12px 16px; border-top: 1px solid var(--border-soft, #ECF1F7); font-size: 16px; align-items: start;
}
.ab-row.ab-head[data-v-2963b490] { background: #F7F9FC; border-top: none; font-weight: 800; font-size: 14px; text-transform: uppercase; letter-spacing: .03em; color: var(--muted, #55617B);
}
.ab-row.corrected[data-v-2963b490] { background: #F4FAF6;
}
.ab-user[data-v-2963b490] { font-weight: 700; color: #1E293B; word-break: break-all;
}
.ab-when[data-v-2963b490] { font-size: 14px; color: var(--faint, #8996A8);
}
.ab-wrote[data-v-2963b490] { color: #334155; font-style: italic;
}
.ab-did[data-v-2963b490] { display: flex; flex-direction: column; gap: 3px;
}
.ab-kind[data-v-2963b490] { font-weight: 800; color: var(--primary-deep, #46679A);
}
.ab-summary[data-v-2963b490] { color: var(--muted, #55617B);
}
.ab-client[data-v-2963b490] { font-size: 14px; color: var(--soft-text, #3A5B94);
}
.ab-via[data-v-2963b490] { font-size: 14px; font-weight: 800; padding: 3px 9px; border-radius: 999px; border: 1px solid var(--border, #E1E8F1); color: var(--muted, #55617B); white-space: nowrap;
}
.ab-via.via-ai[data-v-2963b490] { color: #A9797B; border-color: rgba(169,121,123,.5); background: #FBF3F3;
}
.ab-teach[data-v-2963b490] { display: flex; gap: 6px; align-items: center;
}
.ab-select[data-v-2963b490] { flex: 1; min-width: 0; border: 1px solid var(--border, #E1E8F1); border-radius: 8px; padding: 6px 8px; font-size: 15px; font-family: inherit;
}
.ab-save[data-v-2963b490] { border: none; background: var(--primary, #5E86B8); color: #fff; border-radius: 8px; padding: 6px 11px; font-weight: 700; font-size: 15px; cursor: pointer;
}
.ab-save[data-v-2963b490]:disabled { opacity: .5;
}
.ab-channel[data-v-2963b490] {
  margin-left: 8px; font-size: 14px; color: #8a93a3; background: #f0f2f5;
  border-radius: 6px; padding: 2px 7px; white-space: nowrap;
}
.ab-audio-btn[data-v-2963b490] {
  margin-left: 8px; font-size: 15px; border: 1px solid #c9d6f3; background: #dce4f9;
  color: #20408f; border-radius: 8px; padding: 3px 10px; cursor: pointer;
}
.ab-audio-btn[data-v-2963b490]:disabled { opacity: 0.6; cursor: wait;
}
.ab-audio-gone[data-v-2963b490] { margin-left: 8px; font-size: 14px; color: #8a93a3;
}
.wh-sender[data-v-2963b490] { background: #F0F2F5; border-radius: 12px; padding: 12px 14px; margin-bottom: 12px; font-size: 16px;
}
.wh-sender.q-green[data-v-2963b490] { background: #D9EEE5;
}
.wh-sender.q-yellow[data-v-2963b490] { background: #F2E7D4;
}
.wh-sender.q-red[data-v-2963b490] { background: #F5DFDB;
}
.wh-sender-err[data-v-2963b490] { color: #8A93A3; font-size: 15px; margin-left: 6px;
}
.wh-sender-warn[data-v-2963b490] { margin: 8px 0 0; font-size: 16px; color: #8C3B33;
}
.cost-over[data-v-2963b490] { background: #F5DFDB;
}
.ab-muted[data-v-2963b490] { color: #5B6572; font-size: 16px; margin: 8px 0 14px;
}
.rx-table[data-v-2963b490] { width: 100%; border-collapse: collapse; font-size: 16px;
}
.rx-table th[data-v-2963b490], .rx-table td[data-v-2963b490] { padding: 8px 10px; border-bottom: 1px solid #E2E5EA; text-align: left; vertical-align: top;
}
.rx-up[data-v-2963b490] { color: #1D8A66; font-weight: 700;
}
.rx-down[data-v-2963b490] { color: #8C3B33; font-weight: 700;
}
.rx-comments[data-v-2963b490] { color: #5B6572; max-width: 380px;
}
.ab-empty[data-v-2963b490] { padding: 24px; text-align: center; color: var(--faint, #8996A8);
}

/* 🕓 Aprovações da Meta. A cor É a informação: o fixer abre esta tela para
   saber se há algo esperando, e precisa responder isso sem ler linha por linha.
   ⚠️ A tabela é .ab-grade, e não .ab-tab — esta última já é a classe dos
   BOTÕES de aba, e reusá-la aqui desmontava o cabeçalho. */
.ab-grade[data-v-2963b490] { width: 100%; border-collapse: collapse; font-size: 15px; margin-bottom: 8px;
}
.ab-grade th[data-v-2963b490] { text-align: left; font-size: 13px; text-transform: uppercase; letter-spacing: .04em;
  color: var(--faint, #8996A8); font-weight: 700; padding: 8px 10px; border-bottom: 2px solid var(--border, #E1E8F1);
}
.ab-grade td[data-v-2963b490] { padding: 10px; border-bottom: 1px solid var(--border, #E1E8F1); vertical-align: top;
}
.ab-grade tr.destaque td[data-v-2963b490] { background: #EEF4FC;
}
.ab-grade small[data-v-2963b490] { color: var(--faint, #8996A8);
}
.ab-selo[data-v-2963b490] { display: inline-block; font-size: 14px; font-weight: 700; padding: 2px 10px; border-radius: 999px; white-space: nowrap;
}
.s-aprovado[data-v-2963b490]    { background: #E2EFE7; color: #2F6B4F;
}
.s-em-revisão[data-v-2963b490]  { background: #F6EBD9; color: #91642A;
}
.s-recusado[data-v-2963b490]    { background: #F7E4E1; color: #9E3F35;
}
.s-sem-pedido[data-v-2963b490]  { background: #EDF1F7; color: #55617B;
}
.ab-erro[data-v-2963b490] { background: #F7E4E1; color: #9E3F35; border: 1px solid #F0C9C6; border-radius: 10px;
  padding: 10px 14px; font-size: 16px; margin: 0 0 14px;
}
@media (max-width: 900px) {
.ab-row[data-v-2963b490] { grid-template-columns: 1fr; gap: 6px;
}
.ab-row.ab-head[data-v-2963b490] { display: none;
}
}

/* Abas Conversas × Central de Feedbacks */
.ab-tabs[data-v-2963b490] { display: flex; gap: 8px; margin-bottom: 16px; border-bottom: 1px solid var(--border, #E1E8F1);
}
.ab-tab[data-v-2963b490] { background: transparent; border: none; border-bottom: 2px solid transparent; color: var(--muted, #55617B); font-family: 'Baloo 2', sans-serif; font-weight: 700; font-size: 16px; padding: 8px 4px; margin-bottom: -1px; cursor: pointer;
}
.ab-tab.on[data-v-2963b490] { color: var(--primary-deep, #46679A); border-bottom-color: var(--primary, #5E86B8);
}

/* Central de Feedbacks: lista de threads + conversa */
.fbc[data-v-2963b490] { display: grid; grid-template-columns: 320px 1fr; gap: 16px; align-items: start;
}
.fbc-list[data-v-2963b490] { background: #fff; border: 1px solid var(--border, #E1E8F1); border-radius: 14px; overflow: hidden;
}
.fbc-count[data-v-2963b490] { padding: 12px 14px; font-size: 15px; font-weight: 800; text-transform: uppercase; letter-spacing: .03em; color: var(--muted, #55617B); background: #F7F9FC; border-bottom: 1px solid var(--border-soft, #ECF1F7);
}
.fbc-item[data-v-2963b490] { display: block; width: 100%; text-align: left; background: #fff; border: none; border-bottom: 1px solid var(--border-soft, #ECF1F7); padding: 11px 14px; cursor: pointer;
}
.fbc-item.on[data-v-2963b490] { background: var(--soft, #EAF0F8);
}
.fbc-item-top[data-v-2963b490] { display: flex; justify-content: space-between; align-items: center; gap: 6px;
}
.fbc-user[data-v-2963b490] { font-weight: 700; color: #1E293B; font-size: 16px;
}
.fbc-badge[data-v-2963b490] { font-size: 14px; font-weight: 800; color: #fff; background: var(--primary, #5E86B8); border-radius: 999px; padding: 1px 7px;
}
.fbc-prof[data-v-2963b490] { font-size: 14px; color: var(--soft-text, #3A5B94); margin-top: 1px;
}
.fbc-last[data-v-2963b490] { font-size: 15px; color: var(--faint, #8996A8); margin-top: 3px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.fbc-thread[data-v-2963b490] { background: #fff; border: 1px solid var(--border, #E1E8F1); border-radius: 14px; display: flex; flex-direction: column; min-height: 420px; max-height: 72vh;
}
.fbc-th-head[data-v-2963b490] { padding: 13px 16px; border-bottom: 1px solid var(--border-soft, #ECF1F7); font-weight: 800; color: #1E293B;
}
.fbc-th-head span[data-v-2963b490] { font-weight: 500; color: var(--faint, #8996A8); font-size: 15px; margin-left: 6px;
}
.fbc-th-body[data-v-2963b490] { flex: 1; overflow-y: auto; padding: 16px; display: flex; flex-direction: column; gap: 10px; background: #F7F9FC;
}
.fbc-msg[data-v-2963b490] { display: flex;
}
.fbc-msg.user[data-v-2963b490] { justify-content: flex-start;
}
.fbc-msg.staff[data-v-2963b490] { justify-content: flex-end;
}
.fbc-bubble[data-v-2963b490] { max-width: 78%; padding: 9px 12px; border-radius: 14px; font-size: 16px; line-height: 1.4;
}
.fbc-msg.user .fbc-bubble[data-v-2963b490] { background: #fff; color: #1E293B; border: 1px solid var(--border, #E1E8F1); border-bottom-left-radius: 5px;
}
.fbc-msg.staff .fbc-bubble[data-v-2963b490] { background: var(--primary, #5E86B8); color: #fff; border-bottom-right-radius: 5px;
}
.fbc-text[data-v-2963b490] { white-space: pre-wrap; word-break: break-word;
}
.fbc-time[data-v-2963b490] { font-size: 14px; margin-top: 4px; opacity: .7;
}
.fbc-reply[data-v-2963b490] { display: flex; gap: 8px; padding: 10px 12px; border-top: 1px solid var(--border-soft, #ECF1F7);
}
.fbc-input[data-v-2963b490] { flex: 1; resize: none; border: 1px solid var(--border, #E1E8F1); border-radius: 10px; padding: 8px 10px; font-family: inherit; font-size: 16px; color: #1E293B;
}
.fbc-input[data-v-2963b490]:focus { outline: none; border-color: var(--primary, #5E86B8);
}
@media (max-width: 760px) {
.fbc[data-v-2963b490] { grid-template-columns: 1fr;
}
}

/* ══ Funil de marketing ══ */
.fn[data-v-2963b490] { display: flex; flex-direction: column; gap: 18px;
}
.fn-stages[data-v-2963b490] { background: #fff; border: 1px solid #E1E8F1; border-radius: 14px; padding: 18px; display: flex; flex-direction: column; gap: 12px;
}
.fn-stage-head[data-v-2963b490] { display: flex; justify-content: space-between; align-items: baseline;
}
.fn-label[data-v-2963b490] { font-size: 16px; font-weight: 700; color: #334155;
}
.fn-n[data-v-2963b490] { font-size: 18px; font-weight: 800; color: #1e293b; font-variant-numeric: tabular-nums;
}
.fn-bar-wrap[data-v-2963b490] { background: #f1f5fb; border-radius: 6px; height: 14px; overflow: hidden;
}
.fn-bar[data-v-2963b490] { background: linear-gradient(90deg, #5E86B8, #46679A); height: 100%; border-radius: 6px; transition: width .4s;
}
.fn-bar.jn[data-v-2963b490] { background: linear-gradient(90deg, #1fa564, #157a49);
}
.fn-sub[data-v-2963b490] { margin: 0 0 4px; font-size: 16px; color: #334155;
}
.fn-rate[data-v-2963b490] { font-size: 14px; color: #64748b; margin-top: 2px;
}
.fn-rate b[data-v-2963b490] { color: #46679A;
}
.fn-cols[data-v-2963b490] { display: grid; grid-template-columns: 1fr 1.4fr; gap: 18px;
}
@media (max-width: 860px) {
.fn-cols[data-v-2963b490] { grid-template-columns: 1fr;
}
}
.fn-card[data-v-2963b490] { background: #fff; border: 1px solid #E1E8F1; border-radius: 14px; padding: 16px;
}
.fn-card h4[data-v-2963b490] { margin: 0 0 12px; font-size: 16px; color: #334155;
}
.fn-weeks[data-v-2963b490] { display: flex; align-items: flex-end; gap: 10px; min-height: 90px;
}
.fn-week[data-v-2963b490] { display: flex; flex-direction: column; align-items: center; gap: 3px;
}
.fn-week-bar[data-v-2963b490] { width: 22px; background: #5E86B8; border-radius: 4px 4px 0 0;
}
.fn-week-n[data-v-2963b490] { font-size: 14px; font-weight: 700; color: #334155;
}
.fn-week-l[data-v-2963b490] { font-size: 14px; color: #94a3b8;
}
.fn-recent[data-v-2963b490] { display: flex; flex-direction: column; gap: 8px; max-height: 320px; overflow-y: auto;
}
.fn-ru[data-v-2963b490] { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 7px 10px; background: #f9fbfd; border-radius: 8px;
}
.fn-ru-who[data-v-2963b490] { min-width: 0; font-size: 15px;
}
.fn-ru-who b[data-v-2963b490] { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 220px;
}
.fn-ru-who span[data-v-2963b490] { color: #94a3b8; font-size: 14px;
}
.fn-ru-badges[data-v-2963b490] { display: flex; gap: 5px; flex: none;
}
.fn-b[data-v-2963b490] { font-size: 14px; font-weight: 700; padding: 2px 8px; border-radius: 12px; background: #f1f5fb; color: #94a3b8;
}
.fn-b.ok[data-v-2963b490] { color: #1fa564; background: #ecfaf3;
}
.fn-b.pay[data-v-2963b490] { color: #b45309; background: #fdf6e7;
}
/* Segundo fator do backoffice */
.ab-2fa[data-v-2963b490] { display: flex; justify-content: center; padding: 40px 16px;
}
.ab-2fa-card[data-v-2963b490] { background: #fff; border: 1px solid var(--border, #E1E8F1); border-radius: 16px; padding: 24px; max-width: 380px; width: 100%; text-align: center;
}
.ab-2fa-card h3[data-v-2963b490] { margin: 0 0 8px; font-size: 18px; color: #1e293b;
}
.ab-2fa-card p[data-v-2963b490] { font-size: 16px; color: #55617B; line-height: 1.5; margin: 0 0 14px;
}
.ab-2fa-input[data-v-2963b490] { width: 100%; text-align: center; letter-spacing: 8px; font-size: 28px; font-weight: 800; border: 1px solid #E2E8F0; border-radius: 12px; padding: 12px; color: #1e293b;
}
.ab-2fa-err[data-v-2963b490] { color: #dc2626; font-size: 16px; margin: 10px 0 0;
}
.ab-2fa-actions[data-v-2963b490] { display: flex; flex-direction: column; gap: 8px; margin-top: 16px;
}
.ab-2fa-btn[data-v-2963b490] { background: #46679A; color: #fff; border: none; border-radius: 12px; padding: 12px; font-size: 16px; font-weight: 800; cursor: pointer;
}
.ab-2fa-btn[data-v-2963b490]:disabled { opacity: .5; cursor: default;
}
.ab-2fa-resend[data-v-2963b490] { background: none; border: none; color: #46679A; font-size: 16px; font-weight: 700; cursor: pointer;
}
.ab-2fa-resend[data-v-2963b490]:disabled { opacity: .5; cursor: default;
}

/* Saúde do sender do WhatsApp */
.wh-cards[data-v-2963b490] { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(140px, 100%), 1fr)); gap: 12px; margin-bottom: 14px;
}
.wh-card[data-v-2963b490] { background: #fff; border: 1px solid var(--border, #E1E8F1); border-radius: 12px; padding: 14px; display: flex; flex-direction: column; gap: 4px; align-items: flex-start;
}
.wh-card.warn[data-v-2963b490] { border-color: #f0c36d; background: #fffaf0;
}
.wh-n[data-v-2963b490] { font-size: 24px; font-weight: 800; color: var(--primary-deep, #46679A);
}
.wh-l[data-v-2963b490] { font-size: 15px; color: var(--muted, #55617B);
}
.wh-hint[data-v-2963b490] { font-size: 16px; color: var(--muted, #55617B); line-height: 1.5; margin: 0 0 12px;
}
.wh-badge[data-v-2963b490] { font-size: 15px; font-weight: 700; padding: 3px 9px; border-radius: 999px; white-space: nowrap;
}
.wh-badge.ok[data-v-2963b490] { background: #e6f5ec; color: #16794a;
}
.wh-badge.paused[data-v-2963b490] { background: #fdeaea; color: #b03535;
}

/* Usuários */
.ab-user-search[data-v-2963b490] { width: 100%; max-width: 360px; border: 1px solid var(--border, #E1E8F1); border-radius: 10px; padding: 9px 12px; font-size: 16px; margin: 6px 0 14px;
}
.us-row[data-v-2963b490] { cursor: pointer;
}
.us-row[data-v-2963b490]:hover { background: #f7fafd;
}
.us-row.on[data-v-2963b490] { background: #eef4fb;
}

/* Botão genérico (usado no Balde) */
.ab-btn[data-v-2963b490] { border: 1px solid var(--border, #E1E8F1); background: #fff; color: #1b2230; border-radius: 10px; padding: 9px 14px; cursor: pointer; font-size: 16px;
}
.ab-btn.primary[data-v-2963b490] { background: #3f6a95; color: #fff; border-color: #3f6a95;
}
.ab-btn.danger[data-v-2963b490] { color: #b3403f; border-color: #e6c4c4;
}
.ab-btn[data-v-2963b490]:disabled { opacity: .6; cursor: default;
}
.us-email[data-v-2963b490] { font-size: 15px; color: #94a3b8;
}
.us-muted[data-v-2963b490] { font-size: 15px; color: #94a3b8;
}
.us-modal[data-v-2963b490] { position: fixed; inset: 0; background: rgba(20,30,50,.45); display: flex; align-items: center; justify-content: center; z-index: 50; padding: 16px;
}
.us-card[data-v-2963b490] { background: #fff; border-radius: 16px; padding: 22px; max-width: 520px; width: 100%; max-height: 82vh; overflow-y: auto; position: relative;
}
.us-close[data-v-2963b490] { position: absolute; top: 12px; right: 14px; background: none; border: none; font-size: 18px; color: #94a3b8; cursor: pointer;
}
.us-card h3[data-v-2963b490] { margin: 0; font-size: 20px; color: #1e293b;
}
.us-card h4[data-v-2963b490] { margin: 16px 0 8px; font-size: 16px; color: #46679A;
}
.us-facts[data-v-2963b490] { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0; font-size: 16px; color: #475569;
}
.us-facts span[data-v-2963b490] { background: #f5f8fc; border-radius: 999px; padding: 4px 11px;
}
.us-clients[data-v-2963b490] { display: flex; flex-direction: column; gap: 6px;
}
.us-client[data-v-2963b490] { display: flex; justify-content: space-between; padding: 8px 10px; border-radius: 8px; background: #fbfcff; border: 1px solid #eff2f5; font-size: 16px;
}

/* Receita / MRR */
.rev-hero[data-v-2963b490] { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; justify-content: space-between; background: linear-gradient(135deg, #46679A, #5E86B8); border-radius: 16px; padding: 20px 22px; color: #fff; margin-bottom: 14px;
}
.rev-mrr[data-v-2963b490] { display: flex; flex-direction: column;
}
.rev-mrr-n[data-v-2963b490] { font-size: 34px; font-weight: 800;
}
.rev-mrr-l[data-v-2963b490] { font-size: 16px; opacity: .9;
}
.rev-mrr-side[data-v-2963b490] { display: flex; gap: 22px;
}
.rev-mrr-side > div[data-v-2963b490] { display: flex; flex-direction: column;
}
.rev-mrr-side b[data-v-2963b490] { font-size: 18px;
}
.rev-mrr-side span[data-v-2963b490] { font-size: 15px; opacity: .9;
}
.rev-h4[data-v-2963b490] { margin: 18px 0 10px; font-size: 16px; color: #46679A;
}
.rev-chart[data-v-2963b490] { display: flex; align-items: flex-end; gap: 12px; height: 170px; padding: 8px; overflow-x: auto;
}
.rev-bar-wrap[data-v-2963b490] { display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 6px; min-width: 60px;
}
.rev-bar[data-v-2963b490] { width: 40px; background: #5E86B8; border-radius: 6px 6px 0 0;
}
.rev-bar-v[data-v-2963b490] { font-size: 14px; font-weight: 700; color: #46679A; white-space: nowrap;
}
.rev-bar-x[data-v-2963b490] { font-size: 14px; color: #94a3b8;
}

/* ── Fixer: painel de push ── */
.push-cols[data-v-2963b490] { display: grid; grid-template-columns: 1fr 1fr; gap: 16px;
}
.push-h[data-v-2963b490] { font-size: 16px; font-weight: 700; margin: 0 0 10px; display: flex; align-items: center; gap: 8px;
}
.push-item[data-v-2963b490] { border: 1px solid #e5e7eb; border-radius: 10px; padding: 10px 12px; margin-bottom: 8px; background: #fff;
}
.push-when[data-v-2963b490] { font-size: 14px; color: #8A93A3; font-weight: 600; display: flex; align-items: center; gap: 6px;
}
.push-who[data-v-2963b490] { font-size: 16px; margin: 3px 0;
}
.push-body[data-v-2963b490] { font-size: 15px; color: #5B6572; line-height: 1.45;
}
@media (max-width: 760px) {
.push-cols[data-v-2963b490] { grid-template-columns: 1fr;
}
}

/* ⚠️ Ativação (fluxo crítico) */
.ab-badge[data-v-2963b490] { display: inline-block; margin-left: 6px; min-width: 18px; padding: 1px 6px; border-radius: 999px; background: #A9797B; color: #fff; font-size: 12px; font-weight: 800;
}
.prov-head[data-v-2963b490] { display: flex; align-items: center; gap: 12px; margin-bottom: 12px;
}
.prov-summary[data-v-2963b490] { font-weight: 800; color: var(--primary-deep, #46679A);
}
.prov-summary.warn[data-v-2963b490] { color: #A9797B;
}
.prov-refresh[data-v-2963b490] { margin-left: auto; background: #fff; border: 1px solid var(--border, #E1E8F1); color: var(--muted, #55617B); font-weight: 700; padding: 6px 12px; border-radius: 10px; cursor: pointer;
}
.prov-table td[data-v-2963b490] { vertical-align: middle;
}
.prov-pill[data-v-2963b490] { font-size: 13px; font-weight: 800; padding: 3px 10px; border-radius: 999px; white-space: nowrap;
}
.prov-pill.st-ready[data-v-2963b490] { background: #F0F8F3; color: #3C8A5C;
}
.prov-pill.st-needs_attention[data-v-2963b490] { background: #FBF3F3; color: #A9797B;
}
.prov-pill.st-in_progress[data-v-2963b490] { background: #EAF0F8; color: #3A5B94;
}
.prov-steps[data-v-2963b490] { white-space: nowrap; font-size: 17px;
}
.prov-step[data-v-2963b490] { opacity: .3; filter: grayscale(1); margin-right: 3px;
}
.prov-step.s-done[data-v-2963b490] { opacity: 1; filter: none;
}
.prov-step.s-failed[data-v-2963b490] { opacity: 1; filter: none;
}
.prov-step.s-failed[data-v-2963b490]::after { content: '❗'; font-size: 11px;
}
.prov-err[data-v-2963b490] { color: #A9797B; font-weight: 600;
}
.prov-manual[data-v-2963b490] { color: #A9797B; font-weight: 700;
}
.prov-ok[data-v-2963b490] { color: #3C8A5C; font-weight: 600;
}
.prov-retry[data-v-2963b490] { background: var(--primary-deep, #46679A); color: #fff; border: none; font-weight: 700; padding: 6px 12px; border-radius: 10px; cursor: pointer;
}
.prov-retry[data-v-2963b490]:disabled { opacity: .5; cursor: default;
}
tr.prov-needs_attention[data-v-2963b490] { background: #FDF7F7;
}
.funnel-bars[data-v-2963b490] { display: flex; gap: 8px; overflow-x: auto; margin-bottom: 14px;
}
.fbar[data-v-2963b490] { flex: 1; min-width: 66px; background: #fff; border: 1px solid var(--border, #E1E8F1); border-radius: 12px; padding: 12px 8px; text-align: center;
}
.fbar-n[data-v-2963b490] { display: block; font-family: 'Baloo 2', sans-serif; font-weight: 800; font-size: 22px; color: var(--primary-deep, #46679A);
}
.fbar-l[data-v-2963b490] { display: block; font-size: 11.5px; color: var(--muted, #55617B); font-weight: 700; margin-top: 2px;
}

/* 💳 Pagamentos: pílula de ativação */
.pay-pill[data-v-2963b490] { font-size: 13px; font-weight: 800; padding: 3px 10px; border-radius: 999px; white-space: nowrap;
}
.pay-pill.act-waiting_payment[data-v-2963b490] { background: #EEF1F5; color: #55617B;
}
.pay-pill.act-waiting_number[data-v-2963b490], .pay-pill.act-waiting_whats[data-v-2963b490] { background: #FBF3E3; color: #9A6B2F;
}
.pay-pill.act-active[data-v-2963b490] { background: #E6F5EC; color: #16794A;
}

/* 🪣 Balde de números */
.pool-red[data-v-2963b490] { color: #C23B33 !important;
}
.wh-card.pool-empty[data-v-2963b490] { border-color: #E7A7A0; background: #FDF3F1;
}
.pool-warn[data-v-2963b490] { font-weight: 800; color: #C23B33; margin: 0 0 12px; font-size: 16px;
}
.pool-msg[data-v-2963b490] { font-size: 15px; color: var(--muted, #55617B);
}
.pool-pill[data-v-2963b490] { font-size: 13px; font-weight: 800; padding: 3px 10px; border-radius: 999px; white-space: nowrap;
}
.pool-pill.pl-available[data-v-2963b490] { background: #E6F5EC; color: #16794A;
}
.pool-pill.pl-preparing[data-v-2963b490] { background: #FBF3E3; color: #9A6B2F;
}
.pool-pill.pl-assigned[data-v-2963b490] { background: #EAF0F8; color: #3A5B94;
}
.pool-pill.pl-disabled[data-v-2963b490] { background: #EEF1F5; color: #8996A8;
}
.pool-cap[data-v-2963b490] { border: 1px solid #C9D8EC; background: #fff; color: #3A5B94; font-weight: 700; font-size: 13px; padding: 6px 11px; border-radius: 8px; cursor: pointer; white-space: nowrap;
}
.pool-cap[data-v-2963b490]:hover { background: #EAF0F8;
}
.pool-cap[data-v-2963b490]:disabled { opacity: .6; cursor: default;
}
.pool-cap-msg[data-v-2963b490] { font-size: 13px; color: var(--muted, #55617B); margin-top: 4px;
}
.pool-cap-msg.ok b[data-v-2963b490] { display: inline-block; font-size: 18px; font-weight: 900; letter-spacing: 2px; color: #16794A; background: #E6F5EC; padding: 2px 10px; border-radius: 8px; margin-right: 6px;
}

/* Situação do modelo. As cores seguem a urgência: recusado e "não chegou a
   pedir" são os que exigem alguém — aprovado é o repouso. */
.tpl-s[data-v-2963b490] { font-size: 15px; font-weight: 700; border-radius: 99px; padding: 2px 9px; white-space: nowrap;
}
.tpl-s.aprovado[data-v-2963b490] { background: #E9F5EE; color: #1B7A4B;
}
.tpl-s.pendente[data-v-2963b490] { background: #FBF1DC; color: #7A5518;
}
.tpl-s.rejeitado[data-v-2963b490], .tpl-s.erro[data-v-2963b490] { background: #F9EFED; color: #8C3B33;
}
.tpl-s.sem_pedido[data-v-2963b490] { background: #DCE4F9; color: #20408F;
}

/* 🍔 iFood — mesma gramática de cor das outras situações: verde é repouso,
   âmbar é espera, vermelho pede alguém. */
.if-topo[data-v-2963b490] { display: flex; align-items: center; gap: 14px; margin-bottom: 14px; flex-wrap: wrap;
}
.if-msg[data-v-2963b490] { font-size: 16px; color: var(--muted, #55617B);
}
.if-orfas[data-v-2963b490] { margin-bottom: 22px;
}
.if-orfas h4[data-v-2963b490] { font-family: 'Baloo 2', sans-serif; font-size: 17px; margin: 0 0 8px; color: var(--primary-deep, #46679A);
}
.if-s[data-v-2963b490] { font-size: 15px; font-weight: 700; border-radius: 99px; padding: 2px 9px; white-space: nowrap;
}
.if-s.aprovado[data-v-2963b490] { background: #E9F5EE; color: #1B7A4B;
}
.if-s.solicitado[data-v-2963b490] { background: #FBF1DC; color: #7A5518;
}
.if-s.revogado[data-v-2963b490], .if-s.recusado[data-v-2963b490] { background: #F9EFED; color: #8C3B33;
}
/* O ID do iFood é lido caractere a caractere quando alguém confere no portal —
   fonte proporcional atrapalha justamente nessa hora. */
.if-mono[data-v-2963b490] { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 15px;
}
.if-teste[data-v-2963b490] { font-size: 15px; font-weight: 700; border-radius: 99px; padding: 2px 8px; margin-left: 6px;
  background: #EEE6F7; color: #5B3E8C;
}
.if-perigo[data-v-2963b490] { margin-left: 6px; color: #8C3B33; border-color: #E4C2BD;
}

/* 🧭 Jornada — fila de trabalho, não relatório. */
.jor-topo[data-v-2963b490] { display: flex; align-items: center; gap: 16px; margin-bottom: 14px; flex-wrap: wrap;
}
.jor-alerta[data-v-2963b490] { font-size: 16px; font-weight: 700; color: #8C3B33; background: #F5DFDB;
  border-radius: 8px; padding: 8px 12px;
}
.jor-ok[data-v-2963b490] { font-size: 16px; color: #1D8A66;
}
.jor-filtro[data-v-2963b490] { font-size: 15px; color: #5B6572; display: flex; align-items: center; gap: 6px; cursor: pointer;
}
.jor-email[data-v-2963b490] { font-size: 15px; color: #8A97A8;
}
/* Quem travou fica marcado na LINHA, não só num ícone: a varredura do olho é
   por linha, e um ícone no fim da tabela some. */
.jor-travado[data-v-2963b490] { background: #FDF3F1;
}
.jor-velho[data-v-2963b490] { font-weight: 700; color: #8C3B33;
}
.jor-erro[data-v-2963b490] { font-size: 15px; max-width: 380px;
}


.terms-container[data-v-b0ac59f1] {
  min-height: 100vh;
  background: white;
  display: flex;
  flex-direction: column;
}
.terms-header[data-v-b0ac59f1] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px;
  border-bottom: 1px solid #e0e0e0;
  background: var(--fundo);
  position: sticky;
  top: 0;
}
.terms-header h1[data-v-b0ac59f1] {
  margin: 0;
  font-size: 24px;
  color: var(--texto);
}
.terms-close[data-v-b0ac59f1] {
  background: none;
  border: none;
  font-size: 24px;
  cursor: pointer;
  color: #64748b;
  padding: 0;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  transition: all 0.2s;
}
.terms-close[data-v-b0ac59f1]:hover {
  background: #e2e8f0;
  color: var(--texto);
}
.terms-content[data-v-b0ac59f1] {
  flex: 1;
  padding: 40px;
  max-width: 900px;
  margin: 0 auto;
  overflow-y: auto;
}
.terms-content section[data-v-b0ac59f1] {
  margin-bottom: 30px;
}
.terms-content h2[data-v-b0ac59f1] {
  font-size: 18px;
  color: #334155;
  margin-bottom: 10px;
  margin-top: 0;
}
.terms-content p[data-v-b0ac59f1] {
  color: #475569;
  line-height: 1.6;
  margin: 0 0 10px 0;
}
.terms-content ul[data-v-b0ac59f1] {
  color: #475569;
  line-height: 1.6;
  margin: 10px 0;
  padding-left: 20px;
}
.terms-content li[data-v-b0ac59f1] {
  margin-bottom: 8px;
}
.terms-footer[data-v-b0ac59f1] {
  padding: 20px;
  border-top: 1px solid #e0e0e0;
  background: var(--fundo);
  display: flex;
  justify-content: center;
}
.terms-close-btn[data-v-b0ac59f1] {
  padding: 10px 24px;
  background: var(--acao);
  color: white;
  border: none;
  border-radius: 6px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
}
.terms-close-btn[data-v-b0ac59f1]:hover {
  background: #334566;
  transform: translateY(-1px);
}
@media (max-width: 768px) {
.terms-content[data-v-b0ac59f1] {
    padding: 20px;
}
.terms-header h1[data-v-b0ac59f1] {
    font-size: 18px;
}
}

.privacy-container[data-v-80a17c9c] {
  min-height: 100vh;
  background: white;
  display: flex;
  flex-direction: column;
}
.privacy-header[data-v-80a17c9c] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 20px;
  border-bottom: 1px solid #e0e0e0;
  background: var(--fundo);
  position: sticky;
  top: 0;
}
.privacy-header h1[data-v-80a17c9c] {
  margin: 0;
  font-size: 24px;
  color: var(--texto);
}
.privacy-close[data-v-80a17c9c] {
  background: none;
  border: none;
  font-size: 24px;
  cursor: pointer;
  color: #64748b;
  padding: 0;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  transition: all 0.2s;
}
.privacy-close[data-v-80a17c9c]:hover {
  background: #e2e8f0;
  color: var(--texto);
}
.privacy-content[data-v-80a17c9c] {
  flex: 1;
  padding: 40px;
  max-width: 900px;
  margin: 0 auto;
  overflow-y: auto;
}
.privacy-content section[data-v-80a17c9c] {
  margin-bottom: 30px;
}
.privacy-content h2[data-v-80a17c9c] {
  font-size: 18px;
  color: #334155;
  margin-bottom: 10px;
  margin-top: 0;
}
.privacy-content p[data-v-80a17c9c] {
  color: #475569;
  line-height: 1.6;
  margin: 0 0 10px 0;
}
.privacy-content ul[data-v-80a17c9c] {
  color: #475569;
  line-height: 1.6;
  margin: 10px 0;
  padding-left: 20px;
}
.privacy-content li[data-v-80a17c9c] {
  margin-bottom: 8px;
}
.privacy-footer[data-v-80a17c9c] {
  padding: 20px;
  border-top: 1px solid #e0e0e0;
  background: var(--fundo);
  display: flex;
  justify-content: center;
}
.privacy-close-btn[data-v-80a17c9c] {
  padding: 10px 24px;
  background: var(--acao);
  color: white;
  border: none;
  border-radius: 6px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
}
.privacy-close-btn[data-v-80a17c9c]:hover {
  background: #334566;
  transform: translateY(-1px);
}
@media (max-width: 768px) {
.privacy-content[data-v-80a17c9c] {
    padding: 20px;
}
.privacy-header h1[data-v-80a17c9c] {
    font-size: 18px;
}
}

.del-container[data-v-66c38cf0] {
  min-height: 100vh;
  background: white;
  display: flex;
  flex-direction: column;
}
.del-header[data-v-66c38cf0] {
  padding: 20px;
  border-bottom: 1px solid #e0e0e0;
  background: var(--fundo);
}
.del-header h1[data-v-66c38cf0] {
  margin: 0;
  font-size: 24px;
  color: var(--texto);
}
.del-content[data-v-66c38cf0] {
  flex: 1;
  padding: 20px;
  max-width: 760px;
  margin: 0 auto;
  width: 100%;
  box-sizing: border-box;
}
.del-content section[data-v-66c38cf0] {
  margin-bottom: 28px;
}
.del-content h2[data-v-66c38cf0] {
  font-size: 18px;
  color: var(--texto);
  margin: 0 0 10px;
}
.del-content p[data-v-66c38cf0],
.del-content li[data-v-66c38cf0] {
  font-size: 16px;
  line-height: 1.6;
  color: #475569;
}
.del-content ul[data-v-66c38cf0],
.del-content ol[data-v-66c38cf0] {
  margin: 8px 0 0;
  padding-left: 20px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.del-lead[data-v-66c38cf0] {
  font-size: 18px;
  color: var(--texto);
}
.del-note[data-v-66c38cf0] {
  font-size: 16px;
  color: #64748b;
  border-top: 1px solid #e2e8f0;
  padding-top: 16px;
}
.del-content a[data-v-66c38cf0] {
  color: #2563eb;
}

/* ═══ FAB Button ═══ */
/* No celular sobe acima da barra de navegação inferior (não cobre as abas). */
@media (max-width: 768px) {
.fc-fab[data-v-05b20b38] { bottom: calc(78px + env(safe-area-inset-bottom)) !important; right: 14px !important;
}
}
.fc-fab[data-v-05b20b38] {
  position: fixed; right: 20px; bottom: 20px; z-index: 900;
  display: flex; align-items: center; gap: 8px;
  background: linear-gradient(135deg, var(--primary, var(--marca)), var(--acao));
  color: #fff; border: none;
  padding: 12px 18px; border-radius: 999px; cursor: pointer;
  font-family: 'Nunito', sans-serif; font-weight: 800; font-size: 16px;
  box-shadow: 0 6px 20px rgba(70, 103, 154, .35);
  transition: all 200ms ease;
}
.fc-fab[data-v-05b20b38]:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(70, 103, 154, .45);
}
.fc-fab-ico[data-v-05b20b38] { font-size: 18px;
}
.fc-badge[data-v-05b20b38] {
  position: absolute; top: -6px; right: -6px;
  background: #E84C3D; color: white; font-size: 15px; font-weight: 800;
  width: 20px; height: 20px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  border: 2px solid white;
}

/* ═══ Overlay & Panel ═══ */
.fc-overlay[data-v-05b20b38] {
  position: fixed; inset: 0; z-index: 950;
  background: rgba(30, 41, 59, .28);
  display: flex; align-items: flex-end; justify-content: flex-end;
  padding: 18px;
  animation: fadeIn-05b20b38 200ms ease;
}
@keyframes fadeIn-05b20b38 {
from { opacity: 0;
}
to { opacity: 1;
}
}
.fc-panel[data-v-05b20b38] {
  width: 400px; max-width: 100%; height: min(680px, 88vh);
  background: #fff; border: 1px solid var(--border, var(--linha));
  border-radius: 16px; display: flex; flex-direction: column; overflow: hidden;
  box-shadow: 0 18px 50px rgba(30, 41, 59, .22);
  animation: slideUp-05b20b38 200ms ease;
}
@keyframes slideUp-05b20b38 {
from { transform: translateY(40px); opacity: 0;
}
to { transform: translateY(0); opacity: 1;
}
}
.fc-head[data-v-05b20b38] {
  display: flex; justify-content: space-between; align-items: flex-start; gap: 8px;
  padding: 16px 18px; border-bottom: 1px solid var(--border-soft, #ECF1F7);
  background: #FAFBFC;
}
.fc-title[data-v-05b20b38] { font-family: 'Baloo 2', sans-serif; font-weight: 800; font-size: 18px; color: var(--texto);
}
.fc-sub[data-v-05b20b38] { font-size: 15px; color: var(--muted, var(--texto-2)); margin-top: 2px;
}
.fc-x[data-v-05b20b38] {
  border: none; background: transparent; font-size: 16px;
  color: var(--faint, #8996A8); cursor: pointer;
  padding: 4px 8px; border-radius: 4px;
  transition: all 150ms;
}
.fc-x[data-v-05b20b38]:hover { background: #ECF1F7;
}

/* ═══ Tabs ═══ */
.fc-tabs[data-v-05b20b38] {
  display: flex; gap: 0; border-bottom: 1px solid var(--border-soft, #ECF1F7);
  background: #FAFBFC;
  padding: 0 12px;
}
.fc-tab[data-v-05b20b38] {
  flex: 1; padding: 12px 16px; border: none; background: transparent;
  color: var(--muted, var(--texto-2)); font-weight: 700; font-size: 16px;
  cursor: pointer; border-bottom: 2px solid transparent;
  transition: all 150ms;
}
.fc-tab.active[data-v-05b20b38] {
  color: var(--primary, var(--marca)); border-bottom-color: var(--primary, var(--marca));
}

/* ═══ Content Area ═══ */
.fc-content[data-v-05b20b38] {
  flex: 1; display: flex; flex-direction: column; overflow: hidden;
}
.fc-view[data-v-05b20b38] {
  display: flex; flex-direction: column; flex: 1; overflow: hidden;
}

/* ═══ Body / Messages ═══ */
.fc-body[data-v-05b20b38] {
  flex: 1; overflow-y: auto; padding: 16px;
  display: flex; flex-direction: column; gap: 10px;
  background: var(--superficie-suave);
}
.fc-empty[data-v-05b20b38] {
  color: var(--faint, #8996A8); font-size: 16px;
  text-align: center; margin: auto; max-width: 260px;
  display: flex; align-items: center; justify-content: center; gap: 8px;
}
.fc-spinner[data-v-05b20b38] {
  display: inline-block; width: 12px; height: 12px;
  border: 2px solid #ddd; border-top-color: var(--primary, var(--marca));
  border-radius: 50%; animation: spin-05b20b38 600ms linear infinite;
}
@keyframes spin-05b20b38 {
to { transform: rotate(360deg);
}
}

/* ═══ Messages ═══ */
.fc-msg[data-v-05b20b38] {
  display: flex; animation: slideIn-05b20b38 200ms ease;
}
@keyframes slideIn-05b20b38 {
from { opacity: 0; transform: translateY(8px);
}
to { opacity: 1; transform: translateY(0);
}
}
.fc-msg.user[data-v-05b20b38] { justify-content: flex-end;
}
.fc-msg.staff[data-v-05b20b38] { justify-content: flex-start;
}
.fc-bubble[data-v-05b20b38] {
  max-width: 82%; padding: 9px 12px; border-radius: 14px;
  font-size: 16px; line-height: 1.4;
}
.fc-msg.user .fc-bubble[data-v-05b20b38] {
  background: var(--primary, var(--marca)); color: #fff;
  border-bottom-right-radius: 5px; box-shadow: 0 2px 8px rgba(94, 134, 184, .2);
}
.fc-msg.staff .fc-bubble[data-v-05b20b38] {
  background: #fff; color: var(--texto); border: 1px solid var(--border, var(--linha));
  border-bottom-left-radius: 5px;
}
.fc-bubble.ai[data-v-05b20b38] {
  background: #f1f5fb; border: 1px solid #d7e3f4;
}
.fc-bubble.typing[data-v-05b20b38] {
  display: flex; gap: 4px; align-items: center; padding: 10px 14px;
}
.fc-dot[data-v-05b20b38] {
  width: 6px; height: 6px; background: #8996A8; border-radius: 50%;
  animation: bounce-05b20b38 1.4s infinite;
}
.fc-dot[data-v-05b20b38]:nth-child(2) { animation-delay: 0.2s;
}
.fc-dot[data-v-05b20b38]:nth-child(3) { animation-delay: 0.4s;
}
@keyframes bounce-05b20b38 {
0%, 60%, 100% { transform: translateY(0);
}
30% { transform: translateY(-8px);
}
}
.fc-tag[data-v-05b20b38] {
  display: inline-block; font-size: 15px; font-weight: 800;
  opacity: .85; margin-bottom: 3px;
  background: rgba(255, 255, 255, .25); padding: 2px 6px; border-radius: 4px;
}
.fc-text[data-v-05b20b38] {
  white-space: pre-wrap; word-break: break-word;
}
.fc-time[data-v-05b20b38] {
  font-size: 15px; margin-top: 4px; opacity: .7;
}

/* ═══ Actions ═══ */
.fc-human[data-v-05b20b38] {
  display: block; margin: 6px auto 2px;
  background: #fff; border: 1px dashed #b9d2f0;
  color: var(--acao); font-weight: 700; font-size: 15px;
  padding: 7px 14px; border-radius: 20px; cursor: pointer;
  font-family: inherit; transition: all 150ms;
}
.fc-human[data-v-05b20b38]:hover { border-style: solid; background: #F1F5FB;
}
.fc-human[data-v-05b20b38]:disabled { opacity: .5; cursor: default;
}
.fc-human-hint[data-v-05b20b38] { font-weight: 600; color: var(--texto-3);
}

/* ═══ Compose ═══ */
.fc-compose[data-v-05b20b38] {
  border-top: 1px solid var(--border-soft, #ECF1F7);
  padding: 10px 12px 12px; background: #fff;
}
.fc-cats[data-v-05b20b38] {
  display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 8px;
}
.fc-chip[data-v-05b20b38] {
  border: 1px solid var(--border, var(--linha)); background: #fff;
  color: var(--muted, var(--texto-2)); font-size: 15px; font-weight: 700;
  padding: 5px 10px; border-radius: 999px; cursor: pointer;
  transition: all 150ms;
}
.fc-chip[data-v-05b20b38]:hover { border-color: var(--primary, var(--marca));
}
.fc-chip.on[data-v-05b20b38] {
  background: var(--soft, #EAF0F8); color: var(--soft-text, #3A5B94);
  border-color: #C9D8EC;
}
.fc-inrow[data-v-05b20b38] {
  display: flex; gap: 8px; align-items: flex-end;
}
.fc-input[data-v-05b20b38] {
  flex: 1; resize: none; border: 1px solid var(--border, var(--linha));
  border-radius: 10px; padding: 8px 10px;
  font-family: 'Nunito', sans-serif; font-size: 16px; color: var(--texto);
  transition: all 150ms;
}
.fc-input[data-v-05b20b38]:focus {
  outline: none; border-color: var(--primary, var(--marca));
  box-shadow: 0 0 0 3px rgba(94, 134, 184, 0.1);
}
.fc-send[data-v-05b20b38] {
  border: none; background: var(--primary, var(--marca));
  color: #fff; font-weight: 800; font-size: 16px;
  padding: 10px 16px; border-radius: 10px; cursor: pointer;
  transition: all 150ms;
}
.fc-send[data-v-05b20b38]:hover:not(:disabled) {
  background: var(--acao); transform: translateY(-1px);
}
.fc-send[data-v-05b20b38]:disabled {
  opacity: .5; cursor: default;
}
.fc-err[data-v-05b20b38] {
  color: #A9797B; font-size: 15px; margin-top: 6px;
}

/* ═══ Threads List (Admin) ═══ */
.fc-threads-list[data-v-05b20b38] {
  flex: 1; overflow-y: auto; padding: 8px;
}
.fc-thread-item[data-v-05b20b38] {
  padding: 12px; border: 1px solid var(--border, var(--linha));
  border-radius: 10px; cursor: pointer; margin-bottom: 8px;
  transition: all 150ms;
}
.fc-thread-item[data-v-05b20b38]:hover {
  border-color: var(--primary, var(--marca)); background: #F7FAFC;
}
.fc-thread-header[data-v-05b20b38] {
  display: flex; justify-content: space-between; align-items: center;
  font-weight: 700; color: var(--texto); margin-bottom: 4px;
}
.fc-unanswered-badge[data-v-05b20b38] {
  font-size: 15px; background: #FEE2E2; color: #991B1B;
  padding: 2px 6px; border-radius: 4px; font-weight: 800;
}
.fc-thread-preview[data-v-05b20b38] {
  font-size: 16px; color: var(--muted, var(--texto-2));
  white-space: truncate; margin-bottom: 4px;
}
.fc-thread-meta[data-v-05b20b38] {
  font-size: 15px; color: var(--faint, #8996A8);
}

/* ═══ Responsive ═══ */
@media (max-width: 560px) {
.fc-overlay[data-v-05b20b38] { padding: 0;
}
.fc-panel[data-v-05b20b38] { width: 100%; height: 100%; border-radius: 0;
}
}

.ec[data-v-f6ff397a] { max-width: 560px; margin: 0 auto; padding: 26px 16px 40px;
}
.ec-t[data-v-f6ff397a] { font-size: 22px; margin: 0 0 6px; color: #17233A; letter-spacing: -.01em;
}
.ec-s[data-v-f6ff397a] { font-size: 16px; color: #697082; margin: 0 0 20px;
}
.ec-resp[data-v-f6ff397a] {
  display: flex; flex-direction: column; gap: 3px; width: 100%; text-align: left;
  background: #fff; border: 1.5px solid var(--acao-tonal); border-radius: 14px;
  padding: 14px 16px; margin-bottom: 10px; cursor: pointer; font: inherit;
}
.ec-resp[data-v-f6ff397a]:hover:not(:disabled) { background: var(--superficie-suave);
}
.ec-resp.on[data-v-f6ff397a] { border-color: var(--acao); background: #F3F7FE; box-shadow: 0 0 0 1px var(--acao);
}
.ec-resp[data-v-f6ff397a]:disabled { opacity: .6; cursor: default;
}
.ec-resp b[data-v-f6ff397a] { font-size: 17px; color: #17233A;
}
.ec-resp small[data-v-f6ff397a] { font-size: 15px; color: #697082;
}
.ec-rec[data-v-f6ff397a] { background: #fff; border: 1px solid var(--acao-tonal); border-radius: 16px;
  padding: 16px; margin-top: 4px; animation: ec-sobe-f6ff397a .28s ease;
}
@media (prefers-reduced-motion: reduce) {
.ec-rec[data-v-f6ff397a] { animation: none;
}
}
@keyframes ec-sobe-f6ff397a {
from { opacity: 0; transform: translateY(8px);
}
to { opacity: 1; transform: none;
}
}
.ec-selo[data-v-f6ff397a] { display: inline-block; font-size: 15px; font-weight: 700; color: #1B7A4B;
  background: #E9F5EE; border-radius: 99px; padding: 2px 10px; margin-bottom: 8px;
}
.ec-rec-t[data-v-f6ff397a] { display: block; font-size: 18px; color: #17233A; margin-bottom: 8px;
}
.ec-ganhos[data-v-f6ff397a] { margin: 0 0 12px; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 7px;
}
.ec-ganhos li[data-v-f6ff397a] { display: flex; gap: 8px; font-size: 15px; color: #3D4655; line-height: 1.4;
}
.ec-ganhos li[data-v-f6ff397a]::before { content: "✓"; color: #1B7A4B; font-weight: 800;
}
.ec-aviso[data-v-f6ff397a] { font-size: 15px; line-height: 1.45; color: #5A5140; background: #F2E7D4;
  border-radius: 10px; padding: 9px 11px; margin: 0 0 10px;
}
.ec-vigencia[data-v-f6ff397a] { font-size: 15px; line-height: 1.45; color: #55617A;
  border-left: 3px solid var(--acao-tonal); padding-left: 10px; margin: 0 0 10px;
}
.ec-confere[data-v-f6ff397a] { font-size: 15px; line-height: 1.45; color: #3D4655; background: #EAF1F9;
  border-radius: 12px; padding: 11px 13px; margin: 0 0 12px;
}
.ec-ok[data-v-f6ff397a] {
  width: 100%; background: var(--acao); color: #fff; border: 0; border-radius: 12px;
  padding: 15px 18px; font: inherit; font-size: 17px; font-weight: 800; cursor: pointer;
  box-shadow: 0 2px 0 var(--azul-900);
}
.ec-ok[data-v-f6ff397a]:hover:not(:disabled) { background: var(--azul-900);
}
.ec-ok[data-v-f6ff397a]:disabled { opacity: .5; cursor: default; box-shadow: none;
}
.ec-outro[data-v-f6ff397a] { width: 100%; margin-top: 8px; background: transparent; color: var(--acao);
  border: 1.5px solid var(--acao-tonal); border-radius: 12px; padding: 13px; font: inherit;
  font-size: 16px; font-weight: 700; cursor: pointer;
}
.ec-outro[data-v-f6ff397a]:hover:not(:disabled) { background: var(--superficie-suave);
}
.ec-erro[data-v-f6ff397a] { font-size: 15px; color: var(--st-atrasado-tinta); background: #F9EFED; border-radius: 10px;
  padding: 10px 12px; margin: 12px 0 0;
}
.ec-muda[data-v-f6ff397a] { text-align: center; font-size: 15px; color: #8996a8; margin-top: 14px;
}

.wa-fixo[data-v-eba70647] { font-size: 15px; color: #8996a8; margin-top: 2px;
}
.wa-provedor[data-v-eba70647] { font-size: 15px; color: #55617A; margin-top: 8px;
}
.wa-aviso[data-v-eba70647] { font-size: 15px; line-height: 1.45; color: #55617A; background: #F2E7D4; border-radius: 12px; padding: 12px 14px; margin: 4px 0 12px;
}

/* O documento na tela: resumo em destaque, texto rolável, versão à vista. */
.doc-resumo[data-v-eba70647] { background: #E7EEFB; border-radius: 12px; padding: 12px 14px; font-size: 16px; color: #17233A; margin-bottom: 10px;
}
.doc-corpo[data-v-eba70647] { background: #fff; border: 1px solid #E2E8F2; border-radius: 12px; padding: 12px 14px; font-size: 15px; color: #55617A; max-height: 220px; overflow-y: auto; white-space: pre-wrap;
}
.doc-versao[data-v-eba70647] { font-size: 15px; color: #8996a8; margin: 6px 0 10px;
}

/* "Antes de ativar, me confirma": o que faltou no cadastro. */
.pend[data-v-eba70647] { border: 1px solid #E2E8F2; border-radius: 14px; padding: 16px; margin: 16px 0; background: #F8FAFD;
}
.pend-t[data-v-eba70647] { font-size: 17px; font-weight: 800; color: #17233A; margin-bottom: 12px;
}
.pend-item[data-v-eba70647] { margin-bottom: 14px;
}
.pend-label[data-v-eba70647] { display: block; font-size: 16px; font-weight: 700; color: #17233A; margin-bottom: 6px;
}
.pend-por[data-v-eba70647] { display: block; font-size: 15px; font-weight: 400; color: #55617A;
}
.pend-aviso[data-v-eba70647] { font-size: 16px; color: #7A5518; background: #F2E7D4; border-radius: 12px; padding: 12px 14px;
}
.sg-doc-aviso[data-v-eba70647] { margin: 6px 2px 0; font-size: 15px; color: var(--st-atrasado-tinta);
}
.sg-root[data-v-eba70647] { min-height: 100%;
}
.sg-center[data-v-eba70647] { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 24px; background: var(--bg, #F4F7FB);
}
.sg-card[data-v-eba70647] { background: #fff; border: 1px solid var(--border, var(--linha)); border-radius: 18px; padding: 32px 28px; max-width: 420px; width: 100%; text-align: center; box-shadow: 0 12px 40px rgba(30,41,59,.08);
}
.sg-wide[data-v-eba70647] { max-width: 480px;
}
.sg-steps[data-v-eba70647] { display: flex; align-items: center; justify-content: center; gap: 8px; margin: 6px 0 14px;
}
.sg-step[data-v-eba70647] { display: flex; flex-direction: column; align-items: center; gap: 3px;
}
.sg-step-n[data-v-eba70647] { width: 30px; height: 30px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 800; background: #fff; color: #8996A8; border: 1.5px solid var(--linha);
}
.sg-step.done .sg-step-n[data-v-eba70647] { background: var(--acao); border-color: var(--acao); color: #fff;
}
.sg-step.cur .sg-step-n[data-v-eba70647] { background: #EAF0F8; border-color: #C6D5EC; color: #3A5B94;
}
.sg-step-l[data-v-eba70647] { font-size: 15px; font-weight: 700; color: #8996A8;
}
.sg-step.cur .sg-step-l[data-v-eba70647] { color: var(--texto);
}
.sg-step-line[data-v-eba70647] { width: 30px; height: 2px; background: var(--linha); border-radius: 2px; margin-bottom: 14px;
}
.sg-step-line.done[data-v-eba70647] { background: var(--acao);
}
.sg-welcome-wrap[data-v-eba70647] { display: flex; flex-direction: column; align-items: center; gap: 0; width: 100%;
}
.sg-welcome[data-v-eba70647] { max-width: 640px; padding: 44px 44px 34px;
}
.sg-title-lg[data-v-eba70647] { font-size: 34px; margin: 10px 0 12px;
}
.sg-sub-lg[data-v-eba70647] { font-size: 18px; line-height: 1.6; margin-bottom: 26px;
}
.sg-sub-lg b[data-v-eba70647] { color: var(--texto);
}
.sg-vp-lg[data-v-eba70647] { gap: 18px; margin-bottom: 26px;
}
.sg-vp-lg li[data-v-eba70647] { font-size: 16px; line-height: 1.55;
}
.sg-vp-lg li span[data-v-eba70647] { font-size: 28px;
}
/* Erro em destaque (código errado precisa GRITAR, não sussurrar) */
.sg-welcome .sg-err[data-v-eba70647] { font-size: 16px; font-weight: 800; color: #dc2626; background: #FEF2F2; border: 1px solid #FECACA; border-radius: 10px; padding: 10px 14px; margin-top: 10px;
}
.sg-how[data-v-eba70647] { font-size: 16px; color: var(--acao); font-weight: 700; background: #F1F6FC; border-radius: 12px; padding: 11px 16px; margin: 0 0 22px;
}
.sg-footer[data-v-eba70647] { margin-top: 18px; text-align: center; color: var(--texto-3); font-size: 15px; line-height: 1.7;
}
.sg-footer p[data-v-eba70647] { margin: 0;
}
@media (max-width: 560px) {
.sg-welcome[data-v-eba70647] { padding: 30px 20px 24px;
}
.sg-title-lg[data-v-eba70647] { font-size: 28px;
}
}
.sg-emoji[data-v-eba70647] { font-size: 40px;
}
.sg-title[data-v-eba70647] { font-family: 'Baloo 2', sans-serif; font-weight: 800; font-size: 24px; color: var(--texto); margin: 8px 0 6px;
}
.sg-sub[data-v-eba70647] { color: var(--muted, var(--texto-2)); font-size: 16px; line-height: 1.5; margin-bottom: 22px;
}
.sg-vp[data-v-eba70647] { list-style: none; text-align: left; margin: 0 0 22px; padding: 0; display: flex; flex-direction: column; gap: 14px;
}
.sg-vp li[data-v-eba70647] { display: flex; gap: 12px; align-items: flex-start; font-size: 16px; color: var(--muted, var(--texto-2)); line-height: 1.45;
}
.sg-vp li span[data-v-eba70647] { font-size: 20px; line-height: 1.2;
}
.sg-vp li b[data-v-eba70647] { color: var(--texto);
}
.sg-doc[data-v-eba70647] { text-align: left; margin-bottom: 14px;
}
.sg-doc-label[data-v-eba70647] { display: block; font-size: 16px; font-weight: 700; color: #334155; margin-bottom: 6px;
}
.sg-doc-hint[data-v-eba70647] { font-weight: 500; color: var(--texto-3); font-size: 15px;
}
.sg-doc-err[data-v-eba70647] { margin: 6px 0 0; color: #dc2626; font-size: 16px; font-weight: 600;
}
.sg-doc-input[data-v-eba70647] { width: 100%; padding: 11px 13px; border: 1px solid var(--linha); border-radius: 10px; font-size: 16px; font-family: inherit; color: var(--texto);
}
.sg-doc-input[data-v-eba70647]:focus { outline: none; border-color: var(--marca);
}
.sg-wa-btn[data-v-eba70647] { display: inline-block; background: #1fa564; color: #fff; border: none; font-weight: 800; font-size: 16px; padding: 11px 18px; border-radius: 10px; cursor: pointer; text-decoration: none; font-family: inherit;
}
.sg-wa-btn[data-v-eba70647]:hover { filter: brightness(0.95);
}
.sg-wa-wait[data-v-eba70647] { margin-top: 6px;
}
.sg-code-row[data-v-eba70647] { display: flex; gap: 8px; align-items: center;
}
.sg-code-input[data-v-eba70647] { max-width: 140px; text-align: center; font-size: 20px; letter-spacing: 4px; font-weight: 800;
}
.sg-phone-ok[data-v-eba70647] { font-weight: 700; color: #157a49; font-size: 16px; padding: 8px 0;
}
.sg-consent[data-v-eba70647] { display: flex; gap: 10px; align-items: flex-start; text-align: left; font-size: 16px; color: var(--muted, var(--texto-2)); line-height: 1.45; margin-bottom: 20px; cursor: pointer;
}
.sg-consent input[data-v-eba70647] { margin-top: 2px; width: 18px; height: 18px; flex-shrink: 0; accent-color: var(--primary, var(--marca));
}
.sg-link[data-v-eba70647] { color: var(--primary-deep, var(--acao)); font-weight: 600;
}
.sg-btn[data-v-eba70647] { width: 100%; border: none; background: var(--primary, var(--marca)); color: #fff; font-weight: 800; font-size: 16px; padding: 14px; border-radius: 12px; cursor: pointer;
}
.sg-btn[data-v-eba70647]:disabled { opacity: .55; cursor: default;
}
.sg-btn-ghost[data-v-eba70647] { background: #fff; color: var(--primary-deep, var(--acao)); border: 1px solid var(--border, var(--linha)); margin-top: 8px;
}
.sg-fine[data-v-eba70647] { font-size: 15px; color: var(--faint, #8996A8); margin-top: 10px;
}
.sg-err[data-v-eba70647] { color: #A9797B; font-size: 16px; margin-top: 12px;
}
.sg-churn-toggle[data-v-eba70647] { margin-top: 18px;
}
.sg-churn-toggle a[data-v-eba70647] { color: var(--muted, var(--texto-2)); font-size: 16px; text-decoration: underline;
}
.sg-churn[data-v-eba70647] { margin-top: 20px; border-top: 1px solid var(--border-soft, #ECF1F7); padding-top: 18px; text-align: left;
}
.sg-churn-h[data-v-eba70647] { font-weight: 700; color: var(--texto); font-size: 16px; margin-bottom: 14px;
}
.sg-thanks[data-v-eba70647] { color: var(--soft-text, #3A5B94); font-weight: 700; text-align: center; padding: 12px 0;
}
.sg-field[data-v-eba70647] { margin-bottom: 16px; font-size: 16px; color: var(--muted, var(--texto-2));
}
.sg-field > span[data-v-eba70647] { display: block; margin-bottom: 8px;
}
.sg-money[data-v-eba70647] { display: flex; align-items: center; gap: 8px;
}
.sg-money span[data-v-eba70647] { color: var(--muted, var(--texto-2)); font-weight: 700;
}
.sg-money input[data-v-eba70647] { flex: 1; border: 1px solid var(--border, var(--linha)); border-radius: 10px; padding: 10px; font-size: 16px;
}
.sg-chips[data-v-eba70647] { display: flex; flex-wrap: wrap; gap: 7px;
}
.sg-chip[data-v-eba70647] { border: 1px solid var(--border, var(--linha)); background: #fff; color: var(--muted, var(--texto-2)); font-size: 15px; font-weight: 600; padding: 6px 11px; border-radius: 999px; cursor: pointer;
}
.sg-chip.on[data-v-eba70647] { background: var(--soft, #EAF0F8); color: var(--soft-text, #3A5B94); border-color: #C9D8EC;
}
.sg-textarea[data-v-eba70647] { width: 100%; margin-top: 8px; border: 1px solid var(--border, var(--linha)); border-radius: 10px; padding: 9px; font-family: inherit; font-size: 16px; resize: vertical;
}
.sg-banner[data-v-eba70647] { display: flex; align-items: center; justify-content: center; gap: 14px; flex-wrap: wrap; background: var(--soft, #EAF0F8); color: var(--soft-text, #3A5B94); font-size: 16px; font-weight: 600; padding: 10px 16px;
}
.sg-banner-warn[data-v-eba70647] { background: #FBF3F3; color: #A9797B;
}
.sg-banner-btn[data-v-eba70647] { border: none; background: var(--primary, var(--marca)); color: #fff; font-weight: 700; font-size: 15px; padding: 6px 13px; border-radius: 8px; cursor: pointer;
}
.sg-exit[data-v-eba70647] { position: fixed; top: 14px; right: 16px; z-index: 20; background: #fff; border: 1px solid var(--border, var(--linha)); color: var(--muted, var(--texto-2)); font-weight: 700; font-size: 15px; padding: 8px 16px; border-radius: 10px; cursor: pointer;
}
.sg-exit[data-v-eba70647]:hover { background: #F4F7FB;
}

/* ===== TELA DE VENDA (paywall / ativação) — uma tela só, névoa ===== */
/* O passo da promessa (painel azul + "Veja um dia seu") saiu em 16/08/2026:
   quem chegou aqui já entendeu a proposta na landing. Ficou o cartão do plano,
   com o título de contexto (primeira vez / estorno / pagamento falho) dentro. */
.pw[data-v-eba70647] { min-height: 100vh; display: grid; grid-template-columns: 1fr; background: #fff;
}
.pw-plan[data-v-eba70647] { width: 100%;
}
/* Título de contexto DENTRO do cartão claro: tinta escura, tamanho de cartão. */
.pw-hero[data-v-eba70647] { font-size: 24px; font-weight: 800; line-height: 1.15; letter-spacing: -.015em; margin: 0 0 8px; color: var(--texto, #17233A);
}
.pw-hero-sub[data-v-eba70647] { font-size: 16px; line-height: 1.5; color: var(--texto-2, #55617A); margin: 0 0 22px;
}
.fe-emoji[data-v-eba70647] { font-size: 44px; margin-bottom: 10px;
}
.fe-status[data-v-eba70647] { font-size: 16px; font-weight: 700; color: #1B7A4B; background: #E9F5EE;
  border-radius: 12px; padding: 12px 14px;
}
.pw-plan[data-v-eba70647] { display: flex; align-items: center; justify-content: center; padding: 48px clamp(26px, 5vw, 80px); background: #F4F7FB;
}
.pw-plan-inner[data-v-eba70647] { width: 100%; max-width: 460px; background: #fff; border: 1px solid var(--linha); border-radius: 22px; padding: 34px 32px; box-shadow: 0 24px 60px rgba(30,41,59,.10);
}
.pw-badge[data-v-eba70647] { font-size: 15px; font-weight: 800; letter-spacing: .06em; color: var(--acao); background: #EAF0F8; padding: 6px 12px; border-radius: 999px; display: inline-block;
}
.pw-badge-promo[data-v-eba70647] { color: #15803d; background: #E7F6EE;
}
.pw-price[data-v-eba70647] { margin: 16px 0 2px; display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap;
}
.pw-was[data-v-eba70647] { font-size: 22px; font-weight: 700; color: var(--texto-3); text-decoration: line-through;
}
.pw-price b[data-v-eba70647] { font-size: 52px; font-weight: 800; letter-spacing: -.02em; color: var(--texto);
}
.pw-price span[data-v-eba70647] { font-size: 20px; font-weight: 700; color: #64748b;
}
.pw-price-note[data-v-eba70647] { font-size: 15px; color: #64748b; margin: 0 0 20px;
}
.pw-incl[data-v-eba70647] { display: flex; flex-direction: column; gap: 11px; padding: 18px 0; border-top: 1px solid #EEF2F7; border-bottom: 1px solid #EEF2F7; margin-bottom: 22px;
}
.pw-incl-row[data-v-eba70647] { font-size: 16px; color: #334155; display: flex; gap: 10px; align-items: center;
}
.pw-incl-row span[data-v-eba70647] { color: #16794A; font-weight: 900;
}
.pw-cta[data-v-eba70647] { width: 100%; border: none; border-radius: 14px; padding: 18px; font-size: 19px; font-weight: 800; font-family: inherit; color: #fff; background: linear-gradient(135deg, var(--marca) 0%, var(--acao) 100%); cursor: pointer; box-shadow: 0 12px 26px rgba(70,103,154,.34); transition: transform .15s, box-shadow .15s;
}
.pw-cta[data-v-eba70647]:hover:not(:disabled) { transform: translateY(-2px); box-shadow: 0 16px 32px rgba(70,103,154,.42);
}
.pw-cta[data-v-eba70647]:disabled { opacity: .6; cursor: default;
}
.pw-secure[data-v-eba70647] { font-size: 15px; color: #64748b; line-height: 1.5; margin: 14px 0 0; text-align: center;
}
.pw-secure b[data-v-eba70647] { color: #334155;
}
.pw-churn-toggle[data-v-eba70647] { text-align: center; margin-top: 18px;
}
.pw-churn-toggle a[data-v-eba70647] { color: #8996A8; font-size: 15px; text-decoration: underline;
}
.pw-help[data-v-eba70647] { text-align: center; font-size: 15px; color: var(--texto-3); margin: 16px 0 0;
}
.pw-churn[data-v-eba70647] { text-align: left;
}
.pw-back-link[data-v-eba70647] { display: inline-block; margin-top: 14px; color: var(--acao); font-weight: 700; font-size: 15px;
}
@media (max-width: 860px) {
.pw[data-v-eba70647] { grid-template-columns: 1fr;
}
.pw-hero[data-v-eba70647] { font-size: 22px;
}
.pw-plan[data-v-eba70647] { padding: 22px 16px 44px;
}
.pw-plan-inner[data-v-eba70647] { padding: 26px 22px;
}
.pw-price b[data-v-eba70647] { font-size: 44px;
}
}
.sg-spin[data-v-eba70647] { width: 26px; height: 26px; border: 3px solid var(--border, var(--linha)); border-top-color: var(--primary, var(--marca)); border-radius: 50%; animation: sgspin-eba70647 .8s linear infinite;
}
@keyframes sgspin-eba70647 {
to { transform: rotate(360deg);
}
}

/* ===== Passo "Sua cara no WhatsApp" — cartão de visita (Protótipo B) ===== */
.wa-card-inner[data-v-eba70647] { text-align: center;
}
.wa-step-head[data-v-eba70647] { display: flex; justify-content: center; margin-bottom: 14px;
}
.wa-badge[data-v-eba70647] { font-size: 15px; font-weight: 800; letter-spacing: .06em; color: #157a49; background: #E7F6EE; padding: 6px 12px; border-radius: 999px;
}
.wa-phone[data-v-eba70647] { background: #0c1620; border-radius: 30px; padding: 8px; max-width: 260px; margin: 0 auto 20px; box-shadow: 0 16px 40px rgba(30,41,59,.16);
}
.wa-screen[data-v-eba70647] { background: #f0f2f5; border-radius: 24px; overflow: hidden; padding-bottom: 16px;
}
.wa-cover[data-v-eba70647] { background: #075e54; height: 30px;
}
.wa-avatar[data-v-eba70647] { width: 88px; height: 88px; border-radius: 50%; margin: -44px auto 0; display: grid; place-items: center; color: #fff; font-weight: 800; font-size: 32px; letter-spacing: .5px; border: 3px solid #f0f2f5;
}
.wa-name[data-v-eba70647] { font-weight: 800; font-size: 19px; color: #111b21; margin: 12px 14px 2px; word-break: break-word;
}
.wa-phone-num[data-v-eba70647] { color: #54656f; font-size: 15px;
}
.wa-cat[data-v-eba70647] { color: #128c7e; font-size: 15px; font-weight: 700; margin-top: 4px;
}
.wa-recado[data-v-eba70647] { background: #fff; margin: 12px 12px 0; border-radius: 12px; padding: 10px 13px; font-size: 15px; color: #54656f; text-align: left;
}
.wa-recado b[data-v-eba70647] { color: #111b21;
}
.wa-field[data-v-eba70647] { display: block; text-align: left; margin-bottom: 18px;
}
.wa-flabel[data-v-eba70647] { display: block; font-size: 16px; font-weight: 800; color: var(--texto); margin-bottom: 7px;
}
.wa-inp[data-v-eba70647] { display: flex; align-items: center; gap: 8px; background: #F4F7FB; border: 2px solid var(--linha); border-radius: 13px; padding: 2px 8px 2px 12px; transition: border-color .15s;
}
.wa-inp[data-v-eba70647]:focus-within { border-color: var(--marca);
}
.wa-inp input[data-v-eba70647] { flex: 1; border: none; background: transparent; font: inherit; font-size: 17px; font-weight: 700; color: var(--texto); padding: 11px 0; outline: none; min-width: 0;
}
.wa-count[data-v-eba70647] { font-size: 15px; color: #8996A8; font-variant-numeric: tabular-nums; flex: none;
}
.wa-fhint[data-v-eba70647] { display: block; font-size: 15px; color: #64748b; margin-top: 7px; line-height: 1.4;
}
.wa-card-inner .pw-back-link[data-v-eba70647] { display: block; text-align: center; margin-top: 14px;
}

/* ===== Passo "Conte quem você é" (Protótipo B) ===== */
.ab-textarea[data-v-eba70647] { width: 100%; min-height: 118px; resize: vertical; border: 2px solid var(--linha); background: #F4F7FB; color: var(--texto); border-radius: 13px; padding: 12px 13px; font-family: inherit; font-size: 16px; line-height: 1.45; outline: none; transition: border-color .15s;
}
.ab-textarea[data-v-eba70647]:focus { border-color: var(--marca);
}
.ab-hooks[data-v-eba70647] { display: flex; flex-wrap: wrap; gap: 7px; margin: 12px 0 2px;
}
.ab-chip[data-v-eba70647] { border: 1.5px solid var(--linha); background: #fff; color: var(--acao); font-family: inherit; font-size: 15px; font-weight: 700; padding: 7px 12px; border-radius: 999px; cursor: pointer; transition: transform .12s, border-color .12s;
}
.ab-chip[data-v-eba70647]:hover { transform: translateY(-1px); border-color: var(--marca);
}
.ab-prev[data-v-eba70647] { margin-top: 14px; background: #EFF4FB; border: 1px solid #D8E4F3; border-radius: 14px; padding: 12px 14px; text-align: left;
}
.ab-prev-cap[data-v-eba70647] { font-size: 15px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--acao); margin-bottom: 8px;
}
.ab-prev-msg[data-v-eba70647] { background: #d9fdd3; color: #111b21; border-radius: 12px 12px 12px 3px; padding: 9px 12px; font-size: 15px; line-height: 1.45;
}

.ac-fab[data-v-a87f55ba] { position: fixed; left: 20px; bottom: 20px; z-index: 900; display: flex; align-items: center; gap: 8px; background: #fff; color: var(--primary-deep, var(--acao)); border: 1px solid var(--border, var(--linha)); padding: 11px 16px; border-radius: 999px; cursor: pointer; font-family: 'Nunito', sans-serif; font-weight: 800; font-size: 16px; box-shadow: 0 6px 20px rgba(30,41,59,.14);
}
.ac-fab-ico[data-v-a87f55ba] { font-size: 16px;
}
.ac-overlay[data-v-a87f55ba] { position: fixed; inset: 0; z-index: 950; background: rgba(30,41,59,.28); display: flex; align-items: flex-end; justify-content: flex-start; padding: 18px;
}
.ac-panel[data-v-a87f55ba] { width: 400px; max-width: 100%; height: min(600px, 86vh); background: #fff; border: 1px solid var(--border, var(--linha)); border-radius: 16px; display: flex; flex-direction: column; overflow: hidden; box-shadow: 0 18px 50px rgba(30,41,59,.22);
}
.ac-head[data-v-a87f55ba] { display: flex; justify-content: space-between; align-items: flex-start; padding: 16px 18px; border-bottom: 1px solid var(--border-soft, #ECF1F7);
}
.ac-title[data-v-a87f55ba] { font-family: 'Baloo 2', sans-serif; font-weight: 800; font-size: 18px; color: var(--texto);
}
.ac-sub[data-v-a87f55ba] { font-size: 15px; color: var(--muted, var(--texto-2)); margin-top: 2px;
}
.ac-x[data-v-a87f55ba] { border: none; background: transparent; font-size: 16px; color: var(--faint, #8996A8); cursor: pointer;
}
.ac-lead[data-v-a87f55ba] { padding: 18px; display: flex; flex-direction: column; gap: 10px;
}
.ac-lead-h[data-v-a87f55ba] { font-size: 16px; color: var(--texto); font-weight: 700;
}
.ac-body[data-v-a87f55ba] { flex: 1; overflow-y: auto; padding: 16px; display: flex; flex-direction: column; gap: 10px; background: var(--superficie-suave);
}
.ac-msg[data-v-a87f55ba] { display: flex;
}
.ac-msg.user[data-v-a87f55ba] { justify-content: flex-end;
}
.ac-msg.bot[data-v-a87f55ba] { justify-content: flex-start;
}
.ac-bubble[data-v-a87f55ba] { max-width: 84%; padding: 9px 12px; border-radius: 14px; font-size: 16px; line-height: 1.4; white-space: pre-wrap;
}
.ac-bubble.user[data-v-a87f55ba] { background: var(--primary, var(--marca)); color: #fff; border-bottom-right-radius: 5px;
}
.ac-bubble.bot[data-v-a87f55ba] { background: #fff; color: var(--texto); border: 1px solid var(--border, var(--linha)); border-bottom-left-radius: 5px;
}
.ac-typing[data-v-a87f55ba] { color: var(--faint, #8996A8); letter-spacing: 2px;
}
.ac-support[data-v-a87f55ba] { font-size: 15px; color: var(--muted, var(--texto-2)); text-align: center; padding: 8px; border-top: 1px solid var(--border-soft, #ECF1F7);
}
.ac-support a[data-v-a87f55ba] { color: var(--primary-deep, var(--acao)); font-weight: 700;
}
.ac-human[data-v-a87f55ba] { border: none; background: none; padding: 0; color: var(--primary-deep, var(--acao)); font-family: 'Nunito', sans-serif; font-size: 15px; font-weight: 700; text-decoration: underline; cursor: pointer;
}
.ac-human[data-v-a87f55ba]:disabled { opacity: .5; cursor: default;
}
.ac-compose[data-v-a87f55ba] { display: flex; gap: 8px; padding: 10px 12px 12px;
}
.ac-input[data-v-a87f55ba] { flex: 1; border: 1px solid var(--border, var(--linha)); border-radius: 10px; padding: 10px; font-family: 'Nunito', sans-serif; font-size: 16px; color: var(--texto);
}
.ac-input[data-v-a87f55ba]:focus { outline: none; border-color: var(--primary, var(--marca));
}
.ac-send[data-v-a87f55ba] { border: none; background: var(--primary, var(--marca)); color: #fff; font-weight: 800; font-size: 16px; padding: 10px 15px; border-radius: 10px; cursor: pointer;
}
.ac-send.full[data-v-a87f55ba] { width: 100%; padding: 12px;
}
.ac-send[data-v-a87f55ba]:disabled { opacity: .5; cursor: default;
}
.ac-err[data-v-a87f55ba] { color: #A9797B; font-size: 15px;
}
@media (max-width: 560px) {
.ac-overlay[data-v-a87f55ba] { padding: 0;
}
.ac-panel[data-v-a87f55ba] { width: 100%; height: 100%; border-radius: 0;
}
}

.pr-page[data-v-9762ae3d] {
  position: relative; min-height: 100vh;
  display: flex; align-items: center; justify-content: center;
  padding: 20px; background: var(--fundo);
}
.pr-background[data-v-9762ae3d] {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, var(--marca) 0%, var(--acao) 100%);
}
.pr-container[data-v-9762ae3d] { position: relative; z-index: 1; width: 100%; max-width: 440px;
}
.pr-logo[data-v-9762ae3d] { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 28px;
}
.pr-logo-icon[data-v-9762ae3d] { width: 40px; height: 40px;
}
.pr-logo-text[data-v-9762ae3d] { font-size: 24px; font-weight: 700; color: white;
}
.pr-card[data-v-9762ae3d] {
  background: white; border-radius: 16px; padding: 32px;
  box-shadow: 0 20px 60px rgba(0,0,0,0.15);
}
.pr-head[data-v-9762ae3d] { text-align: center; margin-bottom: 20px;
}
.pr-avatar[data-v-9762ae3d] {
  display: inline-flex; align-items: center; justify-content: center;
  width: 56px; height: 56px; border-radius: 50%;
  background: linear-gradient(135deg, var(--marca) 0%, #759fd7 100%);
  color: white; font-weight: 700; font-size: 20px; margin-bottom: 10px;
}
.pr-title[data-v-9762ae3d] { font-size: 24px; font-weight: 700; color: var(--texto); margin: 0 0 4px;
}
.pr-prof[data-v-9762ae3d] { font-size: 16px; color: var(--marca); font-weight: 600; margin: 0 0 10px;
}
.pr-sub[data-v-9762ae3d] { font-size: 16px; color: #64748b; margin: 0 0 4px; line-height: 1.5;
}
.pr-center[data-v-9762ae3d] { text-align: center; padding: 16px 0;
}
.pr-icon[data-v-9762ae3d] { font-size: 44px; margin-bottom: 10px;
}
.pr-form[data-v-9762ae3d] { display: flex; flex-direction: column; gap: 14px;
}
.pr-field[data-v-9762ae3d] { display: flex; flex-direction: column; gap: 6px;
}
.pr-field label[data-v-9762ae3d] { font-size: 16px; font-weight: 600; color: var(--texto);
}
.pr-field input[data-v-9762ae3d], .pr-field textarea[data-v-9762ae3d] {
  padding: 11px 14px; border: 1px solid #bfccde; border-radius: 8px;
  font-size: 16px; font-family: inherit; outline: none; resize: vertical;
}
.pr-field input[data-v-9762ae3d]:focus, .pr-field textarea[data-v-9762ae3d]:focus {
  border-color: var(--marca); box-shadow: 0 0 0 3px rgba(94,134,184,0.1);
}
.pr-hp[data-v-9762ae3d] { position: absolute; left: -9999px; opacity: 0; height: 0;
}
.pr-btn[data-v-9762ae3d] {
  padding: 13px 16px; border: none; border-radius: 8px;
  background: linear-gradient(135deg, #16a34a 0%, #15803d 100%);
  color: white; font-size: 16px; font-weight: 700; cursor: pointer;
  font-family: inherit; transition: all 0.2s;
}
.pr-btn[data-v-9762ae3d]:hover:not(:disabled) { transform: translateY(-2px); box-shadow: 0 10px 25px rgba(22,163,74,0.3);
}
.pr-btn[data-v-9762ae3d]:disabled { opacity: 0.5; cursor: not-allowed;
}
.pr-privacy[data-v-9762ae3d] { font-size: 15px; color: var(--texto-3); text-align: center; margin: 4px 0 0;
}
.pr-error[data-v-9762ae3d] {
  padding: 10px 14px; background: #fee2e2; border-left: 4px solid #dc2626;
  border-radius: 8px;
}
.pr-error p[data-v-9762ae3d] { color: #991b1b; font-size: 16px; font-weight: 500; margin: 0;
}
.pr-footer[data-v-9762ae3d] { text-align: center; margin-top: 20px; font-size: 15px; color: rgba(255,255,255,0.85);
}

.client-portal[data-v-b01d59b5] {
  min-height: 100vh;
  background: linear-gradient(135deg, #f5f7fa 0%, #f0f4f9 100%);
  padding: 40px 20px;
}
.loading[data-v-b01d59b5],
.error[data-v-b01d59b5] {
  text-align: center;
  padding: 60px 20px;
  font-size: 18px;
  color: #666;
}
.error[data-v-b01d59b5] {
  color: #d32f2f;
  background: #ffebee;
  border-radius: 12px;
  padding: 40px;
}
.portal-content[data-v-b01d59b5] {
  max-width: 1000px;
  margin: 0 auto;
}
.portal-header[data-v-b01d59b5] {
  text-align: center;
  margin-bottom: 40px;
}
.portal-header h1[data-v-b01d59b5] {
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 8px;
  color: var(--texto);
}
.subtitle[data-v-b01d59b5] {
  font-size: 16px;
  color: #667eea;
}

/* Metrics Section */
.metrics-section[data-v-b01d59b5] {
  margin-bottom: 40px;
}
.metrics-section h2[data-v-b01d59b5] {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 20px;
  color: var(--texto);
}
.metrics-grid[data-v-b01d59b5] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
  gap: 16px;
}
.metric-card[data-v-b01d59b5] {
  background: white;
  padding: 20px;
  border-radius: 12px;
  border: 1px solid #e2e8f0;
  text-align: center;
  transition: all 0.3s;
}
.metric-card[data-v-b01d59b5]:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}
.metric-card.primary[data-v-b01d59b5] {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  border: none;
}
.metric-card.highlight[data-v-b01d59b5] {
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  color: white;
  border: none;
}
.metric-value[data-v-b01d59b5] {
  font-size: 32px;
  font-weight: 700;
  margin-bottom: 8px;
}
.metric-label[data-v-b01d59b5] {
  font-size: 16px;
  color: inherit;
  opacity: 0.9;
  font-weight: 500;
}
.metric-detail[data-v-b01d59b5] {
  font-size: 15px;
  margin-top: 8px;
  opacity: 0.7;
}
.metric-card.primary .metric-detail[data-v-b01d59b5],
.metric-card.highlight .metric-detail[data-v-b01d59b5] {
  opacity: 0.8;
}
.metric-progress[data-v-b01d59b5] {
  margin-top: 12px;
  height: 6px;
  background: rgba(0, 0, 0, 0.1);
  border-radius: 3px;
  overflow: hidden;
}
.progress-bar[data-v-b01d59b5] {
  height: 100%;
  background: rgba(255, 255, 255, 0.9);
  border-radius: 3px;
  transition: width 0.3s;
}

/* Outcomes Section */
.outcomes-section[data-v-b01d59b5] {
  margin-bottom: 40px;
}
.outcomes-section h2[data-v-b01d59b5] {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 20px;
  color: var(--texto);
}
.outcomes-list[data-v-b01d59b5] {
  display: grid;
  gap: 20px;
}
.outcome-item[data-v-b01d59b5] {
  background: white;
  padding: 20px;
  border-radius: 12px;
  border-left: 4px solid #667eea;
}
.outcome-header[data-v-b01d59b5] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
}
.outcome-header h3[data-v-b01d59b5] {
  font-size: 16px;
  font-weight: 600;
  color: var(--texto);
}
.outcome-change[data-v-b01d59b5] {
  font-size: 18px;
  font-weight: 700;
  color: #667eea;
}
.outcome-change.positive[data-v-b01d59b5] {
  color: #10b981;
}
.outcome-change.negative[data-v-b01d59b5] {
  color: #ef4444;
}
.outcome-values[data-v-b01d59b5] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(120px, 100%), 1fr));
  gap: 12px;
  margin-bottom: 12px;
  font-size: 16px;
}
.outcome-values div[data-v-b01d59b5] {
  display: flex;
  flex-direction: column;
}
.outcome-values .label[data-v-b01d59b5] {
  color: #999;
  font-weight: 500;
  margin-bottom: 4px;
}
.outcome-values .value[data-v-b01d59b5] {
  font-size: 18px;
  font-weight: 600;
  color: var(--texto);
}
.outcome-values .value.primary[data-v-b01d59b5] {
  color: #667eea;
}
.outcome-bar[data-v-b01d59b5] {
  height: 8px;
  background: #e2e8f0;
  border-radius: 4px;
  overflow: hidden;
}
.bar-fill[data-v-b01d59b5] {
  height: 100%;
  background: linear-gradient(90deg, #667eea 0%, #764ba2 100%);
  border-radius: 4px;
  transition: width 0.5s ease;
}

/* Chat Section */
.chat-section[data-v-b01d59b5] {
  margin-bottom: 40px;
}
.chat-section h2[data-v-b01d59b5] {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 20px;
  color: var(--texto);
}
.chat-container[data-v-b01d59b5] {
  background: white;
  border-radius: 12px;
  border: 1px solid #e2e8f0;
  min-height: 200px;
  padding: 20px;
  margin-bottom: 16px;
  max-height: 400px;
  overflow-y: auto;
}
.chat-empty[data-v-b01d59b5] {
  text-align: center;
  color: #999;
  padding: 40px 20px;
}
.messages-list[data-v-b01d59b5] {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.message[data-v-b01d59b5] {
  padding: 12px;
  border-radius: 8px;
  background: var(--fundo);
  border-left: 3px solid #ddd;
}
.message.cadenceai[data-v-b01d59b5] {
  background: #f0f4f9;
  border-left-color: #667eea;
}
.message.professional[data-v-b01d59b5] {
  background: #ecfdf5;
  border-left-color: #10b981;
}
.message-sender[data-v-b01d59b5] {
  margin-bottom: 4px;
}
.badge[data-v-b01d59b5] {
  font-size: 15px;
  font-weight: 600;
  padding: 3px 8px;
  border-radius: 12px;
  background: #e2e8f0;
  color: var(--texto);
}
.badge.cadenceai[data-v-b01d59b5] {
  background: #667eea;
  color: white;
}
.badge.professional[data-v-b01d59b5] {
  background: #10b981;
  color: white;
}
.message-content[data-v-b01d59b5] {
  font-size: 16px;
  color: var(--texto);
  line-height: 1.5;
  margin-bottom: 4px;
}
.message-time[data-v-b01d59b5] {
  font-size: 15px;
  color: #999;
}
.chat-input[data-v-b01d59b5] {
  display: flex;
  gap: 8px;
}
.chat-input textarea[data-v-b01d59b5] {
  flex: 1;
  padding: 10px 14px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  font-family: inherit;
  font-size: 16px;
  resize: vertical;
}
.chat-input textarea[data-v-b01d59b5]:focus {
  outline: none;
  border-color: #667eea;
  background: var(--fundo);
}
.send-btn[data-v-b01d59b5] {
  padding: 10px 20px;
  background: #667eea;
  color: white;
  border: none;
  border-radius: 8px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
}
.send-btn[data-v-b01d59b5]:hover {
  background: #764ba2;
  transform: translateY(-2px);
}

/* Summary */
.summary-section[data-v-b01d59b5] {
  margin-bottom: 40px;
}
.summary-section h2[data-v-b01d59b5] {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 16px;
  color: var(--texto);
}
.summary-text[data-v-b01d59b5] {
  background: white;
  padding: 20px;
  border-radius: 12px;
  border-left: 4px solid #667eea;
  line-height: 1.7;
  color: var(--texto);
}

/* CTA */
.cta-section[data-v-b01d59b5] {
  margin-bottom: 40px;
}
.cta-card[data-v-b01d59b5] {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  padding: 30px;
  border-radius: 12px;
  text-align: center;
}
.cta-card h3[data-v-b01d59b5] {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 8px;
}
.cta-card p[data-v-b01d59b5] {
  margin-bottom: 16px;
  opacity: 0.9;
}
.cta-btn[data-v-b01d59b5] {
  padding: 12px 30px;
  background: white;
  color: #667eea;
  border: none;
  border-radius: 8px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
}
.cta-btn[data-v-b01d59b5]:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
}

/* Alerts Section */
.alerts-section[data-v-b01d59b5],
.recaps-section[data-v-b01d59b5] {
  margin-bottom: 40px;
}
.alerts-section h2[data-v-b01d59b5],
.recaps-section h2[data-v-b01d59b5] {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 20px;
  color: var(--texto);
}
.alerts-list[data-v-b01d59b5],
.recaps-list[data-v-b01d59b5] {
  display: grid;
  gap: 16px;
}
.alert-card[data-v-b01d59b5],
.recap-card[data-v-b01d59b5] {
  background: white;
  padding: 20px;
  border-radius: 12px;
  border-left: 4px solid #667eea;
}
.alert-header[data-v-b01d59b5],
.recap-header[data-v-b01d59b5] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 12px;
}
.alert-header h3[data-v-b01d59b5],
.recap-header h3[data-v-b01d59b5] {
  font-size: 16px;
  font-weight: 600;
  color: var(--texto);
  margin: 0;
}
.badge[data-v-b01d59b5] {
  font-size: 15px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 12px;
  background: #f3f4f6;
  color: #6b7280;
}
.badge.unsent[data-v-b01d59b5] {
  background: #fef3c7;
  color: #b45309;
}
.badge.sent[data-v-b01d59b5] {
  background: #d1fae5;
  color: #065f46;
}
.alert-text[data-v-b01d59b5] {
  background: var(--fundo);
  padding: 12px;
  border-radius: 8px;
  margin-bottom: 12px;
  font-size: 16px;
  color: var(--texto);
  line-height: 1.6;
  white-space: pre-wrap;
  word-break: break-word;
}
.recap-preview[data-v-b01d59b5] {
  background: var(--fundo);
  padding: 12px;
  border-radius: 8px;
  margin-bottom: 12px;
  font-size: 16px;
  color: #666;
  line-height: 1.5;
}
.alert-actions[data-v-b01d59b5],
.recap-actions[data-v-b01d59b5] {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.action-btn[data-v-b01d59b5] {
  padding: 8px 14px;
  border: 1px solid #e2e8f0;
  background: white;
  border-radius: 6px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
  color: var(--texto);
}
.action-btn[data-v-b01d59b5]:hover {
  border-color: #667eea;
  color: #667eea;
}
.action-btn.copy[data-v-b01d59b5] {
  border-color: #667eea;
  color: #667eea;
}
.action-btn.copy.copied[data-v-b01d59b5] {
  background: #667eea;
  color: white;
  border-color: #667eea;
}
.action-btn.whatsapp[data-v-b01d59b5] {
  background: #25d366;
  color: white;
  border-color: #25d366;
}
.action-btn.whatsapp[data-v-b01d59b5]:hover {
  background: #1dbb56;
  border-color: #1dbb56;
}
.action-btn.email[data-v-b01d59b5] {
  background: #667eea;
  color: white;
  border-color: #667eea;
}
.action-btn.email[data-v-b01d59b5]:hover {
  background: #764ba2;
  border-color: #764ba2;
}
@media (max-width: 768px) {
.portal-header h1[data-v-b01d59b5] {
    font-size: 24px;
}
.metrics-grid[data-v-b01d59b5] {
    grid-template-columns: repeat(2, 1fr);
}
.chat-input[data-v-b01d59b5] {
    flex-direction: column;
}
.send-btn[data-v-b01d59b5] {
    width: 100%;
}
.alert-actions[data-v-b01d59b5],
  .recap-actions[data-v-b01d59b5] {
    flex-direction: column;
}
.action-btn[data-v-b01d59b5] {
    width: 100%;
    text-align: center;
}
}

.fh-overlay[data-v-6bb2e6e0] {
  position: fixed; inset: 0; z-index: 400;
  background: rgba(20, 16, 40, 0.45);
  display: flex; align-items: center; justify-content: center;
  padding: 20px;
}
.fh-dialog[data-v-6bb2e6e0] {
  background: var(--bg-surface, #fff);
  border-radius: var(--radius-lg, 18px);
  padding: 24px 22px 20px;
  width: 100%; max-width: 400px;
  box-shadow: 0 18px 50px -12px rgba(30, 41, 59, 0.35);
}
.fh-title[data-v-6bb2e6e0] {
  font-family: var(--font-heading, inherit);
  font-size: var(--text-h4, 17.5px);
  color: var(--text-primary, var(--texto));
  margin: 0 0 8px;
}
.fh-msg[data-v-6bb2e6e0] {
  font-size: var(--text-body, 16px);
  color: var(--text-secondary, #475569);
  line-height: 1.5;
  margin: 0 0 18px;
}
.fh-actions[data-v-6bb2e6e0] { display: flex; gap: 10px; justify-content: flex-end; flex-wrap: wrap;
}
.fh-btn[data-v-6bb2e6e0] {
  min-height: var(--button-height-sm, 44px);
  padding: 11px 18px;
  border-radius: var(--radius-sm, 12px);
  font-size: var(--text-body-sm, 15.5px);
  font-weight: 800;
  font-family: inherit;
  border: none;
  cursor: pointer;
}
.fh-cancel[data-v-6bb2e6e0] {
  background: var(--bg-soft, #F8FBFE);
  border: 1px solid var(--border, var(--linha));
  color: var(--text-secondary, #475569);
}
.fh-ok[data-v-6bb2e6e0] { background: var(--primary, var(--marca)); color: #fff;
}
.fh-ok[data-v-6bb2e6e0]:hover { background: var(--primary-deep, var(--acao));
}
.fh-ok.danger[data-v-6bb2e6e0] { background: #b3403f;
}
.fh-ok.danger[data-v-6bb2e6e0]:hover { background: #9a3534;
}

/* Toasts: no celular ficam acima da navegação inferior, à mão do polegar */
.fh-toasts[data-v-6bb2e6e0] {
  position: fixed; z-index: 410;
  left: 50%; transform: translateX(-50%);
  bottom: calc(88px + env(safe-area-inset-bottom));
  display: flex; flex-direction: column; gap: 8px;
  width: min(440px, calc(100vw - 24px));
  pointer-events: none;
}
@media (min-width: 769px) {
.fh-toasts[data-v-6bb2e6e0] { bottom: 24px;
}
}
.fh-toast[data-v-6bb2e6e0] {
  pointer-events: auto;
  display: flex; align-items: center; gap: 10px;
  background: #273349;
  color: #fff;
  border-radius: var(--radius-md, 14px);
  padding: 13px 14px;
  font-size: var(--text-body-sm, 15.5px);
  font-weight: 600;
  box-shadow: 0 10px 30px -8px rgba(30, 41, 59, 0.45);
}
.fh-toast.warn[data-v-6bb2e6e0] { background: #6b4341;
}
.fh-toast-msg[data-v-6bb2e6e0] { flex: 1; line-height: 1.4;
}
.fh-undo[data-v-6bb2e6e0] {
  border: none; background: rgba(255, 255, 255, 0.16);
  color: #fff; font-weight: 800; font-family: inherit;
  font-size: var(--text-body-sm, 15.5px);
  padding: 8px 14px; border-radius: 10px; cursor: pointer;
  flex-shrink: 0;
}
.fh-undo[data-v-6bb2e6e0]:hover { background: rgba(255, 255, 255, 0.28);
}
.fh-close[data-v-6bb2e6e0] {
  border: none; background: none; color: rgba(255, 255, 255, 0.6);
  font-size: 16px; cursor: pointer; padding: 6px; flex-shrink: 0;
}
.fh-close[data-v-6bb2e6e0]:hover { color: #fff;
}
.fh-fade-enter-active[data-v-6bb2e6e0], .fh-fade-leave-active[data-v-6bb2e6e0] { transition: opacity 0.18s ease;
}
.fh-fade-enter-from[data-v-6bb2e6e0], .fh-fade-leave-to[data-v-6bb2e6e0] { opacity: 0;
}
.fh-toast-enter-active[data-v-6bb2e6e0], .fh-toast-leave-active[data-v-6bb2e6e0] { transition: all 0.22s ease;
}
.fh-toast-enter-from[data-v-6bb2e6e0], .fh-toast-leave-to[data-v-6bb2e6e0] { opacity: 0; transform: translateY(10px);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* ── Polish: microanimações reutilizáveis + respeito ao movimento reduzido ── */
@keyframes cadFadeUp {
from { opacity: 0; transform: translateY(9px);
}
to { opacity: 1; transform: none;
}
}
@keyframes cadPop {
0% { transform: scale(.7);
}
55% { transform: scale(1.18);
}
100% { transform: scale(1);
}
}
@media (prefers-reduced-motion: reduce) {
*, *::before, *::after {
    animation-duration: .001ms !important; animation-iteration-count: 1 !important;
    transition-duration: .001ms !important; scroll-behavior: auto !important;
}
}
body {
  /* Névoa Clean: corpo em Nunito; títulos usam Baloo 2 (regra global no index.html) */
  font-family: 'Nunito', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  /* Base legível (leigo, mobile-first): mesmo porte da ficha do cliente. */
  font-size: 16px;
  line-height: 1.5;
  background: #F4F7FB;
  color: #1E293B;
  /* Guarda contra estouro horizontal no celular: nada deve rolar de lado.
     `clip` (não `hidden`) não vira container de scroll → preserva sticky. */
  overflow-x: clip;
}
img, video {
  max-width: 100%;
}

/* Mobile-first: no celular, campos com fonte ≥16px (o iOS dá zoom automático
   em inputs menores que isso, desconfigurando a tela) e alvos de toque maiores. */
@media (max-width: 768px) {
input, select, textarea {
    font-size: 16px !important;
}
}
#app {
  width: 100%;
  min-height: 100vh;
}
/* CadenceAI Design Tokens - App Fluido */

:root {
  /* ===== Paleta Névoa Clean (monocromática azul-cinza) ===== */
  --bg-primary: #F4F7FB;
  --bg-surface: #fff;
  --bg-soft: #F8FBFE;

  --border: #E1E8F1;
  --border-light: #ECF1F7;

  --text-primary: #1E293B;
  --text-secondary: #475569;
  --text-muted: #55617B;
  --text-faint: #8996A8;

  /* ===== Cores Primárias ===== */
  --primary: #5E86B8;
  --primary-deep: #46679A;
  --primary-soft: #EAF0F8;
  --primary-faint: #3A5B94;

  /* ===== Exceções (risco + confirmação) ===== */
  --risk: #A9797B;
  --risk-light: rgba(169, 121, 123, 0.55);
  --success: #16a34a;
  --success-light: #F0F6F1;
  --success-text: #3E6B4A;

  /* ===== WhatsApp ===== */
  --whatsapp-bg: #EDF1EC;
  --whatsapp-text: #3E4A3E;

  /* ===== Donut (estatísticas) ===== */
  --donut-primary: #5E86B8;
  --donut-secondary: #C9A47E;
  --donut-tertiary: #B58C8C;

  /* ===== Tipografia ===== */
  --font-heading: 'Baloo 2', 'Arial Rounded MT Bold', 'Nunito', Arial, sans-serif;
  --font-body: 'Nunito', Arial, sans-serif;

  --text-h1: 28px;
  --text-h2: 24px;
  --text-h3: 19px;
  --text-h4: 17.5px;
  --text-body-lg: 17.5px;
  --text-body: 16px;
  --text-body-sm: 15.5px;
  --text-label: 14.5px;
  --text-caption: 13px;
  --text-tiny: 12px;

  /* ===== Espaçamento ===== */
  --radius-sm: 12px;
  --radius-md: 14px;
  --radius-lg: 18px;
  --radius-full: 999px;

  --gap-xs: 8px;
  --gap-sm: 10px;
  --gap-md: 14px;
  --gap-lg: 16px;
  --gap-xl: 20px;

  /* ===== Componentes ===== */
  --button-height: 48px;
  --button-height-lg: 52px;
  --button-height-sm: 44px;

  /* ===== Transições ===== */
  --transition-fast: 0.2s ease;
  --transition-normal: 0.34s ease;
  --transition-slow: 0.5s ease;
}

/* ===== Tipografia Base ===== */
body {
  font-family: var(--font-body);
  font-size: var(--text-body);
  line-height: 1.5;
  color: var(--text-primary);
  background: var(--bg-primary);
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: -0.01em;
}

h1 {
  font-size: var(--text-h1);
}

h2 {
  font-size: var(--text-h2);
}

h3 {
  font-size: var(--text-h3);
}

h4 {
  font-size: var(--text-h4);
}

/* ===== Componentes Globais ===== */
button {
  font-family: var(--font-body);
  font-weight: 800;
  transition: all var(--transition-fast);
  border-radius: var(--radius-sm);
  cursor: pointer;
  border: none;
}

button:hover {
  transform: translateY(-2px);
}

button:active {
  transform: translateY(0);
}

/* ===== Card Base ===== */
.card {
  background: var(--bg-surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  padding: var(--gap-lg);
}

.card-pad-lg {
  padding: var(--gap-xl);
}

/* ===== Botões ===== */
.btn {
  min-height: var(--button-height);
  padding: 13px 20px;
  font-size: var(--text-body-sm);
  border-radius: var(--radius-sm);
}

.btn-primary {
  background: var(--primary);
  color: #fff;
}

.btn-primary:hover {
  background: var(--primary-deep);
  box-shadow: 0 8px 20px rgba(94, 134, 184, 0.3);
}

.btn-secondary {
  background: var(--bg-surface);
  border: 1.5px solid var(--primary);
  color: var(--primary-faint);
}

.btn-secondary:hover {
  background: var(--primary-soft);
}

.btn-ghost {
  background: none;
  border: none;
  color: var(--primary-faint);
}

.btn-ghost:hover {
  color: var(--primary-deep);
}

/* ===== Gradientes ===== */
.gradient-primary {
  background: linear-gradient(135deg, var(--primary), var(--primary-deep));
  color: #fff;
}

.gradient-success {
  background: linear-gradient(135deg, var(--success), var(--success-text));
  color: #fff;
}

/* ===== Utilidades ===== */
.text-primary {
  color: var(--text-primary);
}

.text-secondary {
  color: var(--text-secondary);
}

.text-muted {
  color: var(--text-muted);
}

.text-faint {
  color: var(--text-faint);
}

.text-risk {
  color: var(--risk);
}

.text-success {
  color: var(--success-text);
}

.gap-xs { gap: var(--gap-xs); }
.gap-sm { gap: var(--gap-sm); }
.gap-md { gap: var(--gap-md); }
.gap-lg { gap: var(--gap-lg); }
.gap-xl { gap: var(--gap-xl); }

/* ===== Padding ===== */
.p-xs { padding: var(--gap-xs); }
.p-sm { padding: var(--gap-sm); }
.p-md { padding: var(--gap-md); }
.p-lg { padding: var(--gap-lg); }
.p-xl { padding: var(--gap-xl); }

/* ===== Margin ===== */
.mb-xs { margin-bottom: var(--gap-xs); }
.mb-sm { margin-bottom: var(--gap-sm); }
.mb-md { margin-bottom: var(--gap-md); }
.mb-lg { margin-bottom: var(--gap-lg); }
.mb-xl { margin-bottom: var(--gap-xl); }

/* ===== Responsividade ===== */
@media (max-width: 768px) {
  :root {
    --text-h1: 24px;
    --text-h2: 20px;
  }
}

@media (max-width: 480px) {
  :root {
    --text-h1: 22px;
    --text-h2: 18px;
  }
}
/* CadenceAI App Fluido - Redesign Overrides & Enhancements */

/* ===== LAYOUT GLOBAL ===== */
.dashboard {
  padding-bottom: 120px;
  background: var(--bg-primary);
}

/* ===== TOPBAR REDESENHADA ===== */
.topbar {
  position: sticky;
  top: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 28px;
  background: rgba(255, 255, 255, 0.94);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--border);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.brand {
  display: flex;
  align-items: center;
  gap: 11px;
  cursor: pointer;
  flex-shrink: 0;
}

.brand-dot {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--primary), var(--primary-deep));
  color: #fff;
  font-weight: 800;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.brand-name {
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.01em;
  color: var(--text-primary);
  font-family: var(--font-heading);
}

.nav {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.nav button {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  border-radius: 13px;
  cursor: pointer;
  font-family: var(--font-body);
  font-size: 16.5px;
  font-weight: 800;
  min-height: 48px;
  background: transparent;
  color: var(--text-muted);
  border: none;
  transition: all var(--transition-fast);
}

.nav button:hover {
  background: var(--bg-soft);
  color: var(--primary);
}

.nav button.active {
  background: var(--primary-soft);
  color: var(--primary-faint);
}

.nav button span {
  font-size: 18px;
}

.top-actions {
  display: flex;
  gap: 8px;
  flex-shrink: 0;
}

.top-actions button {
  padding: 11px 18px;
  border-radius: 22px;
  cursor: pointer;
  font-family: var(--font-body);
  font-size: 15px;
  font-weight: 700;
  color: var(--text-muted);
  min-height: 46px;
  border: 1px solid var(--border);
  background: #fff;
  transition: all var(--transition-fast);
}

.top-actions button:hover {
  background: var(--bg-soft);
  border-color: var(--primary-soft);
  color: var(--primary);
}

/* ===== HOME PAGE REDESIGN ===== */
.home-header {
  max-width: 1080px;
  margin: 0 auto;
  padding: 30px 24px 20px;
}

.home-greeting {
  background: var(--bg-surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  padding: 28px 30px;
  margin-bottom: 18px;
  display: flex;
  align-items: center;
  gap: 20px;
}

.greeting-donut {
  width: 110px;
  height: 110px;
  border-radius: 50%;
  background: conic-gradient(
    var(--primary) 0% 67%,
    var(--donut-secondary) 67% 85%,
    var(--donut-tertiary) 85% 100%
  );
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}

.greeting-donut-inner {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.greeting-donut-count {
  font-size: 26px;
  color: var(--primary-faint);
  font-weight: 800;
  font-family: var(--font-heading);
}

.greeting-donut-label {
  font-size: 15px;
  color: var(--text-faint);
  font-weight: 700;
}

.greeting-content {
  flex: 1;
}

.greeting-content h1 {
  font-size: 28px;
  margin: 0 0 8px;
  letter-spacing: -0.01em;
}

.greeting-content p {
  font-size: 17.5px;
  line-height: 1.6;
  color: var(--text-secondary);
  margin: 0;
}

.greeting-content strong {
  color: var(--text-primary);
  font-weight: 800;
}

.greeting-stats {
  display: flex;
  gap: 16px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--border-light);
  font-size: 15.5px;
  color: var(--text-muted);
  flex-wrap: wrap;
}

.greeting-stat {
  display: flex;
  align-items: center;
  gap: 7px;
}

.greeting-stat-dot {
  width: 11px;
  height: 11px;
  border-radius: 50%;
}

.greeting-stat strong {
  color: var(--text-primary);
}

/* ===== CLIENTS GRID REDESIGN ===== */
.clients-grid {
  max-width: 1080px;
  margin: 0 auto;
  padding: 30px 24px 20px;
}

.clients-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 20px;
  flex-wrap: wrap;
  gap: 14px;
}

.clients-header h1 {
  font-size: 28px;
  margin: 0;
}

.clients-header p {
  color: var(--text-muted);
  font-size: 16.5px;
  margin: 8px 0 0;
}

.clients-header-right {
  display: flex;
  align-items: center;
  gap: 12px;
}

.clients-search {
  background: var(--bg-primary);
  border: 1.5px solid var(--border);
  border-radius: 13px;
  padding: 13px 18px;
  color: var(--text-faint);
  font-size: 16px;
  min-width: 260px;
  font-family: var(--font-body);
}

.clients-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 16px;
}

.client-card {
  background: var(--bg-surface);
  border: 1.5px solid var(--border);
  border-radius: 18px;
  padding: 20px;
  cursor: pointer;
  transition: all var(--transition-fast);
}

.client-card:hover {
  border-color: var(--primary);
  box-shadow: 0 8px 24px rgba(94, 134, 184, 0.12);
  transform: translateY(-4px);
}

.client-card.hot {
  border-color: var(--primary);
  background: linear-gradient(135deg, rgba(94, 134, 184, 0.02), rgba(70, 103, 154, 0.02));
}

.client-card-header {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 12px;
}

.client-card-avatar {
  width: 52px;
  height: 52px;
  border-radius: 15px;
  background: var(--primary-soft);
  color: var(--primary-faint);
  font-weight: 800;
  font-size: 17px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.client-card-info {
  flex: 1;
  min-width: 0;
}

.client-card-name {
  font-weight: 800;
  font-size: 18px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.client-card-meta {
  font-size: 15px;
  color: var(--text-faint);
}

.client-card-next {
  display: flex;
  align-items: center;
  gap: 10px;
  background: var(--bg-primary);
  border-radius: 12px;
  padding: 11px 14px;
}

.client-card-next-icon {
  font-size: 16px;
  flex-shrink: 0;
}

.client-card-next-text {
  font-size: 15px;
  color: var(--text-secondary);
  font-weight: 700;
  line-height: 1.4;
}

/* ===== PROFILE REDESIGN ===== */
.profile-container {
  max-width: 760px;
  margin: 0 auto;
  padding: 24px 24px 20px;
}

.profile-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
  gap: 12px;
}

.profile-nav-back {
  background: none;
  border: none;
  color: var(--primary-faint);
  font-weight: 800;
  font-size: 16.5px;
  cursor: pointer;
  padding: 8px 0;
  font-family: var(--font-body);
}

.profile-nav-next {
  background: var(--bg-surface);
  border: 1.5px solid var(--border);
  color: var(--primary-faint);
  font-weight: 800;
  font-size: 15px;
  cursor: pointer;
  padding: 11px 18px;
  border-radius: 12px;
  font-family: var(--font-body);
}

.profile-header {
  background: var(--bg-surface);
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 22px 24px;
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 16px;
}

.profile-avatar {
  width: 60px;
  height: 60px;
  border-radius: 17px;
  background: var(--primary-soft);
  color: var(--primary-faint);
  font-weight: 800;
  font-size: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.profile-title {
  flex: 1;
}

.profile-title h1 {
  font-size: 24px;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 10px;
}

.profile-title-meta {
  font-size: 15.5px;
  color: var(--text-faint);
  margin-top: 3px;
}

.profile-risk-badge {
  border: 1.5px solid var(--risk-light);
  color: var(--risk);
  font-size: 15px;
  font-weight: 800;
  padding: 8px 14px;
  border-radius: 100px;
  white-space: nowrap;
  flex-shrink: 0;
}

.profile-action {
  background: linear-gradient(135deg, var(--primary), var(--primary-deep));
  border-radius: 18px;
  padding: 22px 24px;
  color: #fff;
  margin-bottom: 14px;
}

.profile-action-label {
  font-size: 15px;
  font-weight: 800;
  letter-spacing: 0.04em;
  opacity: 0.9;
  margin-bottom: 8px;
}

.profile-action-message {
  font-size: 17.5px;
  line-height: 1.6;
  margin: 0 0 16px;
}

.profile-action-buttons {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.profile-action-buttons button {
  flex: 1;
  min-width: 220px;
  min-height: 52px;
  border-radius: 13px;
  padding: 15px;
  font-family: var(--font-body);
  font-weight: 800;
  font-size: 16.5px;
  cursor: pointer;
  border: none;
}

.profile-action-approve {
  background: #fff;
  color: var(--primary-faint);
}

.profile-action-edit {
  background: rgba(255, 255, 255, 0.15);
  color: #fff;
}

.profile-action-hint {
  font-size: 15px;
  opacity: 0.85;
  margin-top: 10px;
}

.profile-memory {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-bottom: 14px;
}

.profile-memory-card {
  background: var(--bg-surface);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 14px 16px;
}

.profile-memory-label {
  font-size: 15px;
  color: var(--text-faint);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.profile-memory-text {
  font-size: 16.5px;
  font-weight: 800;
  color: var(--primary-faint);
  margin-top: 3px;
}

.profile-whatsapp {
  background: var(--bg-surface);
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 20px 22px;
  margin-bottom: 14px;
}

.profile-whatsapp h3 {
  font-size: 18px;
  margin: 0 0 4px;
}

.profile-whatsapp-meta {
  font-size: 15px;
  color: var(--text-faint);
  margin: 0 0 12px;
}

.profile-whatsapp-msg {
  background: var(--whatsapp-bg);
  border-radius: 13px;
  padding: 13px 15px;
  font-size: 15.5px;
  line-height: 1.55;
  color: var(--whatsapp-text);
}

/* ===== CALENDAR REDESIGN ===== */
.calendar-container {
  max-width: 900px;
  margin: 0 auto;
  padding: 30px 24px 20px;
}

.calendar-header h1 {
  font-size: 28px;
  margin: 0;
}

.calendar-header p {
  color: var(--text-muted);
  font-size: 16.5px;
  margin: 8px 0 20px;
}

.calendar-header-strong {
  color: var(--text-primary);
}

.calendar-events {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.calendar-event {
  background: var(--bg-surface);
  border: 1.5px solid var(--border);
  border-radius: 18px;
  padding: 20px 22px;
  display: flex;
  align-items: center;
  gap: 18px;
}

.calendar-event.highlight {
  border-color: var(--primary);
  background: linear-gradient(135deg, rgba(94, 134, 184, 0.02), rgba(70, 103, 154, 0.02));
}

.calendar-event-date {
  min-width: 66px;
  padding: 10px 6px;
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 13px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.calendar-event-dow {
  font-size: 15px;
  text-transform: uppercase;
  color: var(--text-faint);
  font-weight: 800;
}

.calendar-event-day {
  font-size: 24px;
  color: var(--primary-faint);
  font-weight: 800;
  font-family: var(--font-heading);
}

.calendar-event-info {
  flex: 1;
  min-width: 0;
}

.calendar-event-title {
  font-weight: 800;
  font-size: 18px;
}

.calendar-event-meta {
  font-size: 15.5px;
  color: var(--text-muted);
  margin-top: 2px;
}

.calendar-event-cta {
  background: var(--bg-surface);
  color: var(--primary-faint);
  border: 1.5px solid var(--primary);
  border-radius: 12px;
  padding: 13px 20px;
  font-family: var(--font-body);
  font-weight: 800;
  font-size: 15.5px;
  cursor: pointer;
  white-space: nowrap;
  min-height: 50px;
}

.calendar-event.highlight .calendar-event-cta {
  background: var(--primary);
  color: #fff;
  border-color: var(--primary);
}

.calendar-proactive {
  margin-top: 18px;
  background: #EDF2F9;
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 18px 22px;
  display: flex;
  align-items: center;
  gap: 14px;
}

.calendar-proactive-icon {
  font-size: 20px;
  flex-shrink: 0;
}

.calendar-proactive-text {
  font-size: 15.5px;
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.55;
}

.calendar-proactive-btn {
  background: var(--primary);
  color: #fff;
  border: none;
  border-radius: 12px;
  padding: 12px 20px;
  font-family: var(--font-body);
  font-weight: 800;
  font-size: 15px;
  cursor: pointer;
  white-space: nowrap;
  flex-shrink: 0;
  min-height: 48px;
}

/* ===== WHATSAPP REDESIGN ===== */
.whatsapp-container {
  max-width: 760px;
  margin: 0 auto;
  padding: 30px 24px 20px;
}

.whatsapp-header h1 {
  font-size: 28px;
  margin: 0;
}

.whatsapp-header p {
  color: var(--text-muted);
  font-size: 16.5px;
  margin: 8px 0 20px;
}

.whatsapp-header-strong {
  color: var(--text-primary);
}

.whatsapp-groups {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.whatsapp-group {
  background: var(--bg-surface);
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 20px 22px;
}

.whatsapp-group-header {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 12px;
}

.whatsapp-group-avatar {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: #EAEEF3;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  flex-shrink: 0;
}

.whatsapp-group-info {
  flex: 1;
}

.whatsapp-group-from {
  font-weight: 800;
  font-size: 17px;
}

.whatsapp-group-meta {
  font-size: 15px;
  color: var(--text-faint);
}

.whatsapp-group-preview {
  background: var(--whatsapp-bg);
  border-radius: 12px;
  padding: 12px 15px;
  font-size: 15.5px;
  line-height: 1.55;
  color: var(--whatsapp-text);
  margin-bottom: 12px;
}

.whatsapp-group-guess {
  display: flex;
  align-items: center;
  gap: 12px;
  background: var(--primary-soft);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 12px 15px;
  margin-bottom: 14px;
}

.whatsapp-group-guess-icon {
  font-size: 17px;
  flex-shrink: 0;
}

.whatsapp-group-guess-text {
  font-size: 15.5px;
  color: var(--primary-faint);
  font-weight: 700;
  flex: 1;
}

.whatsapp-group-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.whatsapp-group-confirm {
  flex: 1;
  min-width: 180px;
  background: var(--primary);
  color: #fff;
  border: none;
  border-radius: 12px;
  padding: 14px;
  font-family: var(--font-body);
  font-weight: 800;
  font-size: 16px;
  cursor: pointer;
  min-height: 50px;
}

.whatsapp-group-other {
  background: #fff;
  border: 1.5px solid var(--border);
  color: var(--primary-faint);
  border-radius: 12px;
  padding: 14px 20px;
  font-family: var(--font-body);
  font-weight: 800;
  font-size: 15.5px;
  cursor: pointer;
  flex-shrink: 0;
  min-height: 50px;
}

/* ===== RESPONSIVIDADE ===== */
@media (max-width: 768px) {
  .topbar {
    flex-wrap: wrap;
    padding: 12px 16px;
  }

  .nav {
    order: 3;
    width: 100%;
  }

  .home-greeting {
    flex-direction: column;
    text-align: center;
  }

  .greeting-stats {
    justify-content: center;
  }

  .clients-grid {
    padding-left: 16px;
    padding-right: 16px;
  }

  .clients-cards {
    grid-template-columns: 1fr;
  }

  .client-card-header {
    justify-content: center;
  }

  .profile-nav {
    flex-wrap: wrap;
  }

  .profile-header {
    flex-wrap: wrap;
    gap: 12px;
  }

  .profile-memory {
    grid-template-columns: 1fr;
  }

  .calendar-event {
    flex-wrap: wrap;
  }

  .calendar-event-date {
    width: 100%;
    order: -1;
  }

  .calendar-proactive {
    flex-wrap: wrap;
  }

  .whatsapp-group-actions {
    flex-direction: column;
  }

  .whatsapp-group-confirm {
    min-width: unset;
  }
}

@media (max-width: 480px) {
  .topbar {
    padding: 12px;
    gap: 8px;
  }

  .nav button {
    padding: 10px 12px;
    font-size: 15px;
  }

  .top-actions {
    gap: 4px;
  }

  .top-actions button {
    padding: 8px 12px;
    font-size: 15px;
  }

  .home-greeting {
    padding: 16px;
  }

  .greeting-donut {
    width: 80px;
    height: 80px;
  }

  .greeting-donut-inner {
    width: 60px;
    height: 60px;
  }

  .greeting-donut-count {
    font-size: 20px;
  }

  .greeting-content h1 {
    font-size: 22px;
  }

  .clients-header {
    flex-direction: column;
    align-items: flex-start;
  }

  .clients-search {
    width: 100%;
    min-width: unset;
  }

  .profile-action-buttons {
    flex-direction: column;
  }

  .profile-action-buttons button {
    min-width: unset;
  }
}
/* CadenceAI App Fluido Mobile - Specific Optimizations for 390px Viewport */

/* ===== MOBILE LAYOUT (390px) ===== */
@media (max-width: 640px) {
  body {
    font-size: 16px;
    padding-bottom: 72px;
  }

  .dashboard {
    padding-bottom: 80px;
  }

  /* ===== TOPBAR MOBILE ===== */
  .topbar {
    padding: 12px 14px;
    gap: 10px;
  }

  .brand {
    gap: 8px;
  }

  .brand-dot {
    width: 32px;
    height: 32px;
    font-size: 16px;
  }

  .brand-name {
    font-size: 18px;
  }

  .nav {
    display: none;
  }

  .top-actions {
    gap: 4px;
  }

  .top-actions button {
    padding: 8px 12px;
    font-size: 15px;
    min-height: 40px;
  }

  /* ===== BOTTOM TABS (Abas embaixo) ===== */
  .bottom-tabs {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 40;
    background: var(--bg-surface);
    border-top: 1px solid var(--border);
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.04);
    display: flex;
    justify-content: space-around;
    padding: 0;
    height: 56px;
  }

  .bottom-tabs button {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    border: none;
    background: none;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 700;
    color: var(--text-muted);
    cursor: pointer;
    transition: all var(--transition-fast);
    padding: 8px;
    min-height: 56px;
  }

  .bottom-tabs button:hover {
    background: var(--bg-soft);
  }

  .bottom-tabs button.active {
    color: var(--primary-faint);
    background: var(--primary-soft);
  }

  .bottom-tabs button span {
    font-size: 20px;
    line-height: 1;
  }

  /* ===== GUIDE BAR MOBILE (Flutuante acima das abas) ===== */
  .guide-bar {
    bottom: 56px;
    padding: 0 12px 12px;
    max-width: none;
    width: calc(100% - 24px);
  }

  .guide-bar {
    padding: 0 12px 12px;
    border-radius: 12px;
  }

  .guide-content {
    font-size: 15px;
  }

  .guide-label {
    font-size: 15px;
  }

  .guide-text {
    font-size: 15px;
    white-space: normal;
    overflow: visible;
    text-overflow: visible;
  }

  .guide-btn {
    min-height: 44px;
    padding: 12px 16px;
    font-size: 15px;
  }

  /* ===== HOME PAGE MOBILE ===== */
  .home-header {
    padding: 16px 16px 12px;
  }

  .home-greeting {
    flex-direction: column;
    text-align: center;
    padding: 20px 16px;
    gap: 16px;
  }

  .greeting-donut {
    width: 90px;
    height: 90px;
  }

  .greeting-donut-inner {
    width: 68px;
    height: 68px;
  }

  .greeting-donut-count {
    font-size: 22px;
  }

  .greeting-content h1 {
    font-size: 22px;
  }

  .greeting-content p {
    font-size: 15px;
  }

  .greeting-stats {
    flex-direction: column;
    gap: 8px;
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid var(--border-light);
  }

  .greeting-stat {
    justify-content: center;
  }

  /* ===== FILA (Queue) MOBILE ===== */
  .fila-section {
    padding: 16px;
  }

  .fila-section h2 {
    font-size: 18px;
  }

  .fila-item {
    min-height: 56px;
    padding: 12px;
    gap: 12px;
  }

  .fila-avatar {
    width: 44px;
    height: 44px;
    font-size: 15px;
  }

  .fila-name {
    font-size: 15px;
  }

  .fila-reason {
    font-size: 15px;
  }

  .fila-cta {
    font-size: 15px;
    padding: 8px 12px;
    white-space: nowrap;
  }

  /* ===== CARDS-PONTE MOBILE ===== */
  .cards-ponte {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 16px;
  }

  .card-ponte {
    padding: 16px;
  }

  .card-ponte h2 {
    font-size: 16px;
    margin-bottom: 8px;
  }

  .card-ponte button {
    width: 100%;
    min-height: 50px;
    padding: 14px;
    font-size: 15px;
  }

  /* ===== CLIENTS GRID MOBILE ===== */
  .clients-grid {
    padding: 16px;
  }

  .clients-header {
    margin-bottom: 16px;
  }

  .clients-header h1 {
    font-size: 22px;
  }

  .clients-header-right {
    flex-direction: column;
    width: 100%;
  }

  .clients-search {
    width: 100%;
    min-width: unset;
  }

  .clients-cards {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .client-card {
    padding: 16px;
  }

  .client-card-header {
    gap: 12px;
  }

  .client-card-avatar {
    width: 44px;
    height: 44px;
    font-size: 15px;
  }

  .client-card-name {
    font-size: 16px;
  }

  .client-card-meta {
    font-size: 15px;
  }

  /* ===== PROFILE MOBILE ===== */
  .profile-container {
    padding: 16px;
  }

  .profile-nav {
    margin-bottom: 12px;
    gap: 8px;
  }

  .profile-nav-back {
    font-size: 15px;
    flex-shrink: 0;
  }

  .profile-nav-next {
    font-size: 15px;
    padding: 10px 14px;
    flex: 1;
  }

  .profile-header {
    padding: 16px;
    gap: 12px;
    margin-bottom: 12px;
  }

  .profile-avatar {
    width: 48px;
    height: 48px;
    font-size: 18px;
  }

  .profile-title h1 {
    font-size: 20px;
  }

  .profile-title-meta {
    font-size: 15px;
  }

  .profile-action {
    padding: 18px 16px;
    margin-bottom: 12px;
  }

  .profile-action-label {
    font-size: 15px;
  }

  .profile-action-message {
    font-size: 15px;
  }

  .profile-action-buttons {
    flex-direction: column;
    gap: 8px;
  }

  .profile-action-buttons button {
    min-width: unset;
    width: 100%;
    min-height: 50px;
    font-size: 15px;
  }

  .profile-memory {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .profile-memory-card {
    padding: 12px 14px;
  }

  .profile-memory-label {
    font-size: 15px;
  }

  .profile-memory-text {
    font-size: 15px;
  }

  .profile-whatsapp {
    padding: 16px;
    margin-bottom: 12px;
  }

  .profile-whatsapp h3 {
    font-size: 16px;
  }

  .profile-whatsapp-msg {
    font-size: 15px;
  }

  /* ===== CALENDAR MOBILE ===== */
  .calendar-container {
    padding: 16px;
  }

  .calendar-header h1 {
    font-size: 22px;
  }

  .calendar-events {
    gap: 12px;
  }

  .calendar-event {
    padding: 16px;
    gap: 12px;
  }

  .calendar-event-info {
    flex: 1;
  }

  .calendar-event-title {
    font-size: 16px;
  }

  .calendar-event-meta {
    font-size: 15px;
  }

  .calendar-event-cta {
    font-size: 15px;
    padding: 11px 16px;
    min-height: 48px;
    width: 100%;
  }

  .calendar-proactive {
    padding: 14px 16px;
    gap: 10px;
    margin-top: 12px;
  }

  .calendar-proactive-btn {
    width: 100%;
    min-height: 48px;
    font-size: 15px;
  }

  /* ===== WHATSAPP MOBILE ===== */
  .whatsapp-container {
    padding: 16px;
  }

  .whatsapp-header h1 {
    font-size: 22px;
  }

  .whatsapp-groups {
    gap: 12px;
  }

  .whatsapp-group {
    padding: 16px;
  }

  .whatsapp-group-header {
    gap: 12px;
  }

  .whatsapp-group-avatar {
    width: 40px;
    height: 40px;
  }

  .whatsapp-group-from {
    font-size: 15px;
  }

  .whatsapp-group-meta {
    font-size: 15px;
  }

  .whatsapp-group-preview {
    font-size: 15px;
  }

  .whatsapp-group-guess {
    gap: 10px;
    padding: 10px 12px;
  }

  .whatsapp-group-guess-text {
    font-size: 15px;
  }

  .whatsapp-group-actions {
    flex-direction: column;
    gap: 8px;
  }

  .whatsapp-group-confirm {
    min-width: unset;
    width: 100%;
    min-height: 50px;
    font-size: 15px;
  }

  .whatsapp-group-other {
    width: 100%;
    min-height: 50px;
    font-size: 15px;
  }

  /* ===== ACCOUNT PAGE MOBILE ===== */
  .my-account {
    padding: 16px;
    padding-bottom: 80px;
  }

  .my-account-section {
    padding: 16px;
  }

  /* ===== PLAN PAGE MOBILE ===== */
  .my-plan {
    padding: 16px;
    padding-bottom: 80px;
  }

  .mp-container {
    padding: 0;
  }

  .plans-grid {
    grid-template-columns: 1fr;
  }

  .mp-plan-card {
    padding: 16px;
  }

  .plan-actions button {
    width: 100%;
    min-height: 50px;
  }

  /* ===== GENERAL MOBILE ADJUSTMENTS ===== */
  .card {
    border-radius: var(--radius-md);
  }

  button {
    font-size: 16px;
  }

  .btn {
    width: 100%;
    min-height: 50px;
  }

  /* ===== TOUCH-FRIENDLY TARGETS ===== */
  button:active {
    opacity: 0.8;
  }

  input,
  textarea {
    font-size: 16px;
    padding: 12px;
    min-height: 48px;
  }
}

/* ===== EXTRA SMALL DEVICES (320px) ===== */
@media (max-width: 380px) {
  .topbar {
    padding: 10px 12px;
  }

  .brand-name {
    display: none;
  }

  .top-actions {
    display: none;
  }

  .home-greeting {
    padding: 14px;
  }

  .greeting-donut {
    width: 70px;
    height: 70px;
  }

  .greeting-donut-inner {
    width: 52px;
    height: 52px;
  }

  .greeting-donut-count {
    font-size: 18px;
  }

  .greeting-content h1 {
    font-size: 20px;
  }

  .greeting-content p {
    font-size: 15px;
  }

  .clients-cards {
    gap: 10px;
  }

  .client-card {
    padding: 12px;
  }

  .profile-header {
    padding: 12px;
  }

  .profile-action {
    padding: 14px;
  }

  .guide-bar {
    padding: 0 10px 10px;
    width: calc(100% - 20px);
  }

  .guide-bar {
    border-radius: 10px;
  }
}
/* Profession-based Visual Themes */

:root {
  /* Psicólogo - Calming Purple */
  --profession-psicologo-primary: #759fd7;
  --profession-psicologo-secondary: #edf3fa;
  --profession-psicologo-accent: #6893cc;
  --profession-psicologo-gradient: linear-gradient(135deg, #759fd7, #6e9ad5);

  /* Coach - Dynamic Blue */
  --profession-coach-primary: #3b82f6;
  --profession-coach-secondary: #dbeafe;
  --profession-coach-accent: #32609b;
  --profession-coach-gradient: linear-gradient(135deg, #3b82f6, #60a5fa);

  /* Advogado - Authority Brown */
  --profession-advogado-primary: #92400e;
  --profession-advogado-secondary: #fef3c7;
  --profession-advogado-accent: #b45309;
  --profession-advogado-gradient: linear-gradient(135deg, #d97706, #f59e0b);

  /* Nutricionista - Natural Green */
  --profession-nutricionista-primary: #10b981;
  --profession-nutricionista-secondary: #dcfce7;
  --profession-nutricionista-accent: #059669;
  --profession-nutricionista-gradient: linear-gradient(135deg, #10b981, #34d399);

  /* Personal Trainer - Energetic Red */
  --profession-personal_trainer-primary: #ef4444;
  --profession-personal_trainer-secondary: #fee2e2;
  --profession-personal_trainer-accent: #dc2626;
  --profession-personal_trainer-gradient: linear-gradient(135deg, #ef4444, #f87171);

  /* Mentor de Negócios - Growth Orange */
  --profession-mentor_negocios-primary: #f97316;
  --profession-mentor_negocios-secondary: #fed7aa;
  --profession-mentor_negocios-accent: #ea580c;
  --profession-mentor_negocios-gradient: linear-gradient(135deg, #f97316, #fb923c);

  /* Corretor de Imóveis - Earthy Warm */
  --profession-corretor_imoveis-primary: #b45309;
  --profession-corretor_imoveis-secondary: #fef3c7;
  --profession-corretor_imoveis-accent: #d97706;
  --profession-corretor_imoveis-gradient: linear-gradient(135deg, #b45309, #d97706);

  /* Arquiteto - Precision Grey */
  --profession-arquiteto-primary: #64748b;
  --profession-arquiteto-secondary: #f1f5f9;
  --profession-arquiteto-accent: #475569;
  --profession-arquiteto-gradient: linear-gradient(135deg, #64748b, #94a3b8);

  /* Fisioterapeuta - Wellness Teal */
  --profession-fisioterapeuta-primary: #06b6d4;
  --profession-fisioterapeuta-secondary: #cffafe;
  --profession-fisioterapeuta-accent: #0891b2;
  --profession-fisioterapeuta-gradient: linear-gradient(135deg, #06b6d4, #22d3ee);

  /* Consultor Financeiro - Prosperity Darkgreen */
  --profession-consultor_financeiro-primary: #059669;
  --profession-consultor_financeiro-secondary: #d1fae5;
  --profession-consultor_financeiro-accent: #047857;
  --profession-consultor_financeiro-gradient: linear-gradient(135deg, #059669, #10b981);
}

/* Theme Application */

.profession-theme {
  --theme-primary: var(--profession-psicologo-primary);
  --theme-secondary: var(--profession-psicologo-secondary);
  --theme-accent: var(--profession-psicologo-accent);
  --theme-gradient: var(--profession-psicologo-gradient);
}

.profession-theme.psicologo {
  --theme-primary: var(--profession-psicologo-primary);
  --theme-secondary: var(--profession-psicologo-secondary);
  --theme-accent: var(--profession-psicologo-accent);
  --theme-gradient: var(--profession-psicologo-gradient);
}

.profession-theme.coach {
  --theme-primary: var(--profession-coach-primary);
  --theme-secondary: var(--profession-coach-secondary);
  --theme-accent: var(--profession-coach-accent);
  --theme-gradient: var(--profession-coach-gradient);
}

.profession-theme.advogado {
  --theme-primary: var(--profession-advogado-primary);
  --theme-secondary: var(--profession-advogado-secondary);
  --theme-accent: var(--profession-advogado-accent);
  --theme-gradient: var(--profession-advogado-gradient);
}

.profession-theme.nutricionista {
  --theme-primary: var(--profession-nutricionista-primary);
  --theme-secondary: var(--profession-nutricionista-secondary);
  --theme-accent: var(--profession-nutricionista-accent);
  --theme-gradient: var(--profession-nutricionista-gradient);
}

.profession-theme.personal_trainer {
  --theme-primary: var(--profession-personal_trainer-primary);
  --theme-secondary: var(--profession-personal_trainer-secondary);
  --theme-accent: var(--profession-personal_trainer-accent);
  --theme-gradient: var(--profession-personal_trainer-gradient);
}

.profession-theme.mentor_negocios {
  --theme-primary: var(--profession-mentor_negocios-primary);
  --theme-secondary: var(--profession-mentor_negocios-secondary);
  --theme-accent: var(--profession-mentor_negocios-accent);
  --theme-gradient: var(--profession-mentor_negocios-gradient);
}

.profession-theme.corretor_imoveis {
  --theme-primary: var(--profession-corretor_imoveis-primary);
  --theme-secondary: var(--profession-corretor_imoveis-secondary);
  --theme-accent: var(--profession-corretor_imoveis-accent);
  --theme-gradient: var(--profession-corretor_imoveis-gradient);
}

.profession-theme.arquiteto {
  --theme-primary: var(--profession-arquiteto-primary);
  --theme-secondary: var(--profession-arquiteto-secondary);
  --theme-accent: var(--profession-arquiteto-accent);
  --theme-gradient: var(--profession-arquiteto-gradient);
}

.profession-theme.fisioterapeuta {
  --theme-primary: var(--profession-fisioterapeuta-primary);
  --theme-secondary: var(--profession-fisioterapeuta-secondary);
  --theme-accent: var(--profession-fisioterapeuta-accent);
  --theme-gradient: var(--profession-fisioterapeuta-gradient);
}

.profession-theme.consultor_financeiro {
  --theme-primary: var(--profession-consultor_financeiro-primary);
  --theme-secondary: var(--profession-consultor_financeiro-secondary);
  --theme-accent: var(--profession-consultor_financeiro-accent);
  --theme-gradient: var(--profession-consultor_financeiro-gradient);
}

/* Themed Elements */

.profession-header {
  background: var(--theme-gradient);
  color: white;
  padding: 20px;
  border-radius: 12px;
  margin-bottom: 16px;
}

.profession-header h3 {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
}

.profession-stat {
  background: var(--theme-secondary);
  border-left: 4px solid var(--theme-primary);
  padding: 12px;
  border-radius: 6px;
  font-size: 15px;
}

.profession-stat strong {
  color: var(--theme-accent);
}

.profession-badge {
  background: var(--theme-secondary);
  color: var(--theme-primary);
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 15px;
  font-weight: 600;
  display: inline-block;
}

.profession-progress {
  background: var(--theme-secondary);
  border-radius: 8px;
  overflow: hidden;
  height: 8px;
}

.profession-progress-fill {
  background: var(--theme-gradient);
  height: 100%;
  transition: width 300ms ease;
}

.profession-accent-text {
  color: var(--theme-primary);
  font-weight: 600;
}

.profession-card {
  border: 1px solid var(--theme-secondary);
  border-left: 4px solid var(--theme-primary);
  background: linear-gradient(to right, var(--theme-secondary) 0%, transparent 100%);
  border-radius: 8px;
  padding: 12px;
}

.profession-section-title {
  color: var(--theme-primary);
  border-bottom: 2px solid var(--theme-secondary);
  padding-bottom: 8px;
  margin-bottom: 12px;
}

.profession-highlight {
  background: var(--theme-secondary);
  padding: 8px 12px;
  border-radius: 6px;
  color: var(--theme-accent);
  font-weight: 600;
}
/*
 * Dark theme do Cadence — inversão calibrada (estilo Dark Reader).
 *
 * Por quê: os 30+ componentes usam cores hardcoded em styles scoped; a inversão
 * no body cobre TODAS as telas de uma vez. invert(0.92) suaviza o contraste e
 * hue-rotate(180deg) mantém as cores de marca reconhecíveis.
 * Imagens/vídeos são re-invertidos para ficarem naturais.
 *
 * A preferência é do usuário (tabela user_settings, alterada em Minha Conta).
 */

/*
 * NÃO usar `color-scheme: dark` aqui: ele muda o texto padrão dos controles
 * nativos (botões/inputs) para branco. Componentes que definem fundo claro sem
 * cor de texto explícita ficam branco-no-branco → depois da inversão global,
 * preto-no-preto (texto some). Sem color-scheme, o controle mantém texto escuro
 * padrão que a inversão transforma em claro — legível.
 */
:root[data-theme='dark'] {
  background: #0b0f19;
}

:root[data-theme='dark'] body {
  filter: invert(0.92) hue-rotate(180deg);
  background: #101623;
}

/* Conteúdo visual volta ao normal (dupla inversão) */
:root[data-theme='dark'] img,
:root[data-theme='dark'] video,
:root[data-theme='dark'] iframe,
:root[data-theme='dark'] .no-invert {
  filter: invert(1.087) hue-rotate(180deg);
}
/* ═══════════════════════════════════════════════════════════════════════════
   Detalhe do cliente — mesma linguagem do cartão "⚡ Antes do atendimento":
   texto grande, títulos de seção em azul caps, ações claras e fáceis de achar.
   Global (não-scoped) de propósito: eleva TODOS os componentes filhos da ficha
   (ClientProfile, Traits, Dates, Transcripts, WhatsApp, Documents, Timeline…)
   de uma vez, sem tocar em cada arquivo.
   ═══════════════════════════════════════════════════════════════════════════ */

/* Base maior no desktop (o celular já tem zoom 1.1; A+/A− do usuário vence). */
@media (min-width: 769px) {
  .client-detail { zoom: 1.15; }
}

/* ── Títulos de seção: UM padrão só (o do prep-card) ── */
.client-detail .dsec-h,
.client-detail .cp-sech,
.client-detail .cp-ch,
.client-detail .agenda-sub {
  font-size: 15px !important;
  font-weight: 800 !important;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #46679A !important;
}

/* ── Corpo: piso de legibilidade nos padrões da ficha ── */
.client-detail .cp-goal { font-size: 16px; line-height: 1.55; }
.client-detail .cp-sub { font-size: 15px !important; }
.client-detail .cp-li,
.client-detail .cp-note-main,
.client-detail .cp-fact-val,
.client-detail .cp-fk,
.client-detail .cp-finline,
.client-detail .cp-empty {
  font-size: 15px !important;
  line-height: 1.5;
}
.client-detail .cp-note-src { font-size: 15px !important; }
.client-detail .menu-title { font-size: 16px; font-weight: 700; }

/* ── Ações: dedo e olho acham fácil ── */
.client-detail .dsec-toggle {
  font-size: 15px;
  padding: 8px 14px;
  border-radius: 10px;
  color: #46679A;
  background: #f1f5fb;
  border-color: #dbe6f3;
}
.client-detail .dsec-toggle:hover { background: #e3edf9; }

.client-detail .agenda-tab {
  font-size: 15px;
  padding: 10px 18px;
}

.client-detail .cp-add,
.client-detail .cp-ok {
  font-size: 15px;
  padding: 8px 14px;
}
.client-detail .cp-min {
  font-size: 15px;
  padding: 6px 12px;
}
.client-detail .cp-archive { font-size: 15px; padding: 9px 14px; }

/* Campos de digitação legíveis em toda a ficha */
.client-detail input,
.client-detail textarea,
.client-detail select {
  font-size: 15px;
}

/* ── Atratividade: profundidade suave e respiro entre os blocos ── */
.client-detail .cp-head,
.client-detail .dsec,
.client-detail .cp-card {
  box-shadow: 0 2px 10px rgba(30, 41, 59, 0.05);
}
.client-detail .dsec:hover,
.client-detail .cp-card:hover {
  box-shadow: 0 4px 16px rgba(30, 41, 59, 0.08);
}
.client-detail .detail-sections { gap: 18px; }

/* Estrelas de importância: fáceis de ver e de tocar */
.client-detail .cp-star { font-size: 22px !important; padding: 2px 3px !important; }

/* "O que importa": faixa destacada, no estilo do balão da CadenceAI */
.client-detail .cp-goal {
  background: #f8fafc !important;
  border: 1px solid #dbe6f3 !important;
  font-size: 16px !important;
}

/* Botões de acrescentar ("＋ fato", "＋ anotação"): convites claros */
.client-detail .cp-add {
  background: #f1f5fb !important;
  color: #46679A !important;
  border: 1px dashed #94b0d0 !important;
  border-radius: 10px !important;
  font-weight: 700 !important;
}
.client-detail .cp-add:hover { background: #e3edf9 !important; }

/* Chip do WhatsApp: estado óbvio de longe */
.client-detail .cp-wa-status { font-weight: 700; }
.client-detail .cp-wa-status.verified { color: #15803d; }

/* ── Largura total garantida (17/07/2026) ─────────────────────────────────
   Nenhum componente da ficha do cliente pode travar a largura: tudo estica
   100%, como a análise contextual. Vale para os roots dos componentes dentro
   das seções — limites internos (inputs, avatares) não são afetados. */
.client-detail .detail-sections > *,
.client-detail .dsec > * {
  max-width: none;
}
/*
 * Cadence — Identidade visual acolhedora (2026)
 * ------------------------------------------------------------------
 * Uma cara nova, calorosa e simples: pensada para que qualquer pessoa,
 * sem nenhum conhecimento técnico, consiga usar sem treinamento.
 *
 * Princípios:
 *  - Cores suaves e acolhedoras (uva + coral + pastéis) sobre creme.
 *  - Cantos bem arredondados e botões grandes e óbvios.
 *  - Tipografia amigável e arredondada, com bastante respiro.
 *  - Muito espaço em branco, ícones grandes, feedback claro.
 *
 * IMPORTANTE (dark mode): NÃO usar `color-scheme: dark` aqui. O tema
 * escuro é feito por inversão global do body (styles/dark-theme.css).
 * Ver o comentário daquele arquivo antes de mexer.
 *
 * Este arquivo é importado por ÚLTIMO em main.js, então suas regras
 * vencem os estilos globais de App.vue. Onde há CSS "scoped" de
 * componente (com [data-v-*]) usamos !important pontualmente para
 * garantir os arredondamentos e o toque amigável em toda a UI.
 */

:root {
  /* Paleta da marca */
  --cad-grape: #5d8fd0;        /* primária — botões, links, ícones */
  --cad-grape-deep: #4b80c5;   /* hover / gradiente escuro */
  --cad-coral: #ffb499;        /* acento quente */
  --cad-pink: #ffa6c2;         /* acento alegre */
  --cad-mint: #37c9a8;         /* sucesso suave */
  --cad-sun: #ffcf5c;          /* destaque solar */

  /* Neutros quentes */
  --cad-cream: #f9fbfd;        /* fundo geral */
  --cad-surface: #ffffff;      /* cartões */
  --cad-ink: #344050;          /* texto principal (suave, legível) */
  --cad-muted: #738091;        /* texto secundário */
  --cad-border: #e6ecf4;       /* bordas suaves */

  /* Formas amigáveis */
  --cad-radius: 18px;
  --cad-radius-lg: 26px;
  --cad-radius-pill: 999px;
  --cad-shadow: 0 10px 30px rgba(91, 135, 199, 0.10);
  --cad-shadow-soft: 0 4px 14px rgba(91, 135, 199, 0.08);

  --cad-font: 'Baloo 2', 'Nunito', 'Quicksand', 'Comfortaa', ui-rounded,
              'SF Pro Rounded', 'Segoe UI', system-ui, -apple-system, sans-serif;
}

/* ── Base / tipografia amigável ─────────────────────────────────── */
html body {
  font-family: var(--cad-font) !important;
  background:
    radial-gradient(1200px 600px at 100% -10%, #fff2fb 0%, transparent 55%),
    radial-gradient(1000px 500px at -10% 110%, #f1f5fb 0%, transparent 55%),
    var(--cad-cream) !important;
  color: var(--cad-ink);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  letter-spacing: 0.1px;
}

button, input, textarea, select {
  font-family: var(--cad-font) !important;
}

h1, h2, h3, h4, h5, h6 {
  letter-spacing: -0.2px;
  line-height: 1.25;
}

/* Um pouco mais de peso deixa a leitura mais acolhedora */
h1 { font-weight: 800; }
h2, h3 { font-weight: 750; }

/* ── Botões grandes e óbvios ────────────────────────────────────── */
button {
  border-radius: var(--cad-radius) !important;
  font-weight: 700 !important;
  cursor: pointer;
  transition: transform 0.12s ease, box-shadow 0.15s ease, filter 0.15s ease,
              background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
button:hover:not(:disabled) {
  transform: translateY(-1px);
}
button:active:not(:disabled) {
  transform: translateY(0);
}

/* ── Campos de formulário arredondados e confortáveis ───────────── */
input, textarea, select {
  border-radius: 14px !important;
  font-size: 15px;
}
input:focus, textarea:focus, select:focus {
  outline: none;
}
input:focus-visible, textarea:focus-visible, select:focus-visible {
  box-shadow: 0 0 0 4px rgba(91, 135, 199, 0.16) !important;
  border-color: var(--cad-grape) !important;
}

/* ── Superfícies (cartões, painéis, modais) mais macias ─────────── */
.card, .panel, .modal-content, .login-card, .signup-card,
.account-card, .stat-card, .client-card, .session-card,
.gmail-empty, .stats-bar {
  border-radius: var(--cad-radius-lg) !important;
}

/* ── Links amigáveis ────────────────────────────────────────────── */
a {
  color: var(--cad-grape);
  font-weight: 600;
}

/* ── Seleção de texto e barra de rolagem no tom da marca ────────── */
::selection {
  background: rgba(91, 135, 199, 0.18);
}
* {
  scrollbar-width: thin;
  scrollbar-color: #d2dfef transparent;
}
*::-webkit-scrollbar { width: 12px; height: 12px; }
*::-webkit-scrollbar-thumb {
  background: #d2dfef;
  border-radius: var(--cad-radius-pill);
  border: 3px solid transparent;
  background-clip: content-box;
}
*::-webkit-scrollbar-thumb:hover { background: #b9cce6; background-clip: content-box; }



/*
 * CadenceAI — Névoa 2.0 (design system oficial, 07/08/2026)
 * ------------------------------------------------------------------
 * Fonte da verdade: o pacote "Redesenho do site Cadence AI" (cadence-aux/
 * design-system/). Este arquivo instala a FUNDAÇÃO do sistema — tokens,
 * fontes e a ponte com as variáveis legadas — e é importado por ÚLTIMO no
 * main.js, vencendo o kids-theme.
 *
 * As quatro decisões do Névoa 2.0 (ver readme do pacote):
 *  1. Emoji deixa de ser ícone (vai para ícone de traço, passe por telas).
 *  2. Baloo 2 sai dos títulos → Instrument Sans. Nunito fica no corpo.
 *  3. Raios caem de 12/14/18px para 6-10px em controles.
 *  4. Preenchimento saturado vira tonal (fundo claro + texto na cor + borda);
 *     preenchimento cheio só no CTA de aquisição.
 *
 * ⚠️ PISO DE LEITURA: o DS original põe corpo em 14,5px e apoio em 13,5px; o
 * projeto tem regra permanente de 15px (tipografia_test.go quebra o build).
 * Aqui a escala respeita o piso — corpo/apoio/micro ficam em 15px — até o
 * dono decidir derrubá-lo. Só --t-rotulo (11px) fica menor, e é EXCLUSIVO
 * para rótulos em caixa alta com tracking, nunca texto de leitura.
 */

:root {
  /* ─── Neutros Névoa ─── */
  --nv-0:   #FFFFFF;
  --nv-25:  #F7F9FC;
  --nv-50:  #F1F4F8;
  --nv-100: #EFF3F8;
  --nv-200: #E1E8F1;
  --nv-300: #CFDAE6;
  --nv-400: #AEB8C6;
  --nv-500: #8A93A3;
  --nv-600: #55617B;
  --nv-700: #3D4655;
  --nv-800: #2C3E5C;
  --nv-900: #171C24;

  /* ─── Azul de marca ─── */
  --azul-50:  #F7F9FC;
  --azul-100: #EAF1F9;
  --azul-200: #DFEAF5;
  --azul-300: #CFDEEE;
  --azul-400: #BCD0E6;
  --azul-500: #5E86B8;
  --azul-600: #4E76A8;
  --azul-700: #46679A;
  --azul-900: #2C4A73;

  /* ─── Estados ─── */
  --ok-100: #E6F1EE;  --ok-200: #DAEBE5;  --ok-300: #C8DFD7;
  --ok-500: #4E8C7A;  --ok-700: #3A6E5E;  --ok-900: #2F5A4C;

  --atencao-100: #F4EDE0; --atencao-200: #EFE4D0; --atencao-300: #E4D6BC;
  --atencao-500: #B08A4F; --atencao-700: #8A6B3B; --atencao-900: #6B5229;

  --atrasado-100: #F6E3E0; --atrasado-200: #F0D8D3; --atrasado-300: #E4C7C2;
  --atrasado-500: #B05B50; --atrasado-700: #8C3B33; --atrasado-900: #6E2C26;

  --dourado-500: #C9A24E;

  /* ─── Aliases semânticos: use SEMPRE estes na UI ─── */
  --fundo:            var(--nv-50);
  --superficie:       var(--nv-0);
  --superficie-suave: var(--nv-25);
  --linha:            var(--nv-200);
  --separador:        var(--nv-100);

  --texto:            var(--nv-900);
  --texto-2:          var(--nv-600);
  --texto-3:          var(--nv-500);
  --texto-inativo:    var(--nv-400);
  --texto-em-tonal:   var(--azul-900);

  --acao:             var(--azul-700);
  --acao-hover:       var(--azul-600);
  --acao-tonal:       var(--azul-100);
  --acao-tonal-hover: var(--azul-200);
  --acao-tonal-linha: var(--azul-300);
  --foco-anel:        rgba(94, 134, 184, 0.15);

  --marca:            var(--azul-500);
  --marca-profunda:   var(--azul-700);

  --st-ok-bg: var(--ok-100);             --st-ok-linha: var(--ok-300);           --st-ok-tinta: var(--ok-700);
  --st-atencao-bg: var(--atencao-100);   --st-atencao-linha: var(--atencao-300); --st-atencao-tinta: var(--atencao-700);
  --st-atrasado-bg: var(--atrasado-100); --st-atrasado-linha: var(--atrasado-300); --st-atrasado-tinta: var(--atrasado-700);
  --st-neutro-bg: var(--nv-100);         --st-neutro-linha: var(--nv-200);       --st-neutro-tinta: var(--nv-600);
  --st-info-bg: var(--azul-100);         --st-info-linha: var(--azul-300);       --st-info-tinta: var(--azul-700);

  --veu: rgba(23, 28, 36, 0.42);

  /* ─── Tipografia ─── */
  --fonte-titulo: "Instrument Sans", system-ui, -apple-system, sans-serif;
  --fonte-corpo:  "Nunito", system-ui, -apple-system, sans-serif;
  --fonte-mono:   "IBM Plex Mono", ui-monospace, monospace;

  --peso-normal: 400;
  --peso-medio: 500;
  --peso-forte: 600;
  --peso-titulo: 700;

  /* Escala com o piso de leitura do projeto (15px). */
  --t-display: 46px;  --t-display-lh: 1.10;  --t-display-ls: -0.03em;
  --t-h1: 30px;       --t-h1-lh: 1.15;       --t-h1-ls: -0.02em;
  --t-h2: 21px;       --t-h2-lh: 1.25;       --t-h2-ls: -0.015em;
  --t-h3: 17px;       --t-h3-lh: 1.3;        --t-h3-ls: -0.01em;
  --t-corpo-g: 16px;  --t-corpo-g-lh: 1.6;
  --t-corpo: 15px;    --t-corpo-lh: 1.55;
  --t-apoio: 15px;    --t-apoio-lh: 1.55;
  --t-micro: 15px;    --t-micro-lh: 1.5;
  --t-rotulo: 11px;   --t-rotulo-ls: 0.08em; /* SÓ caixa alta com tracking */

  /* ─── Espaço ─── */
  --e-1: 2px;   --e-2: 4px;   --e-3: 6px;   --e-4: 8px;
  --e-5: 10px;  --e-6: 12px;  --e-7: 14px;  --e-8: 16px;
  --e-9: 20px;  --e-10: 22px; --e-11: 26px; --e-12: 30px;
  --e-14: 40px; --e-16: 56px; --e-18: 72px;

  --pad-cartao: var(--e-9) var(--e-10);
  --pad-cartao-compacto: var(--e-7) var(--e-8);
  --pad-botao: 12px 22px;
  --pad-botao-compacto: 9px 16px;
  --gap-lista: var(--e-6);
  --gap-grade: var(--e-7);
  --larg-conteudo: 1080px;
  --larg-painel: 520px;

  /* ─── Forma ─── */
  --r-xs: 6px;
  --r-sm: 8px;
  --r-md: 10px;
  --r-lg: 14px;
  --r-xl: 18px;
  --r-pill: 999px;

  --b-fina: 1px solid var(--linha);
  --b-tonal: 1px solid var(--acao-tonal-linha);

  --sh-0: none;
  --sh-1: 0 1px 2px rgba(23, 28, 36, 0.05);
  --sh-2: 0 1px 3px rgba(23, 28, 36, 0.06);
  --sh-3: 0 10px 26px -20px rgba(23, 28, 36, 0.40);
  --sh-4: 0 14px 32px -20px rgba(23, 28, 36, 0.35);
  --sh-5: 0 40px 80px -50px rgba(23, 28, 36, 0.70);

  /* ─── Movimento: curto, explica mudança de estado, nunca chama atenção ─── */
  --mo-rapido: 150ms;
  --mo-base: 200ms;
  --mo-calmo: 250ms;
  --mo-ease: cubic-bezier(0.2, 0.8, 0.3, 1);
  --mo-saida: cubic-bezier(0.4, 0, 1, 1);
  --lift-hover: translateY(-1px);
  --press: scale(0.985);

  /* ─── PONTE COM O LEGADO ────────────────────────────────────────────
     Os componentes existentes leem estas variáveis (kids-theme, Dashboard,
     Agenda). Reapontá-las para os tokens do Névoa restyla o grosso do app
     sem tocar arquivo por arquivo; o passe fino vem tela a tela. */
  --cad-grape: var(--acao);
  --cad-grape-deep: var(--azul-900);
  --cad-mint: var(--ok-500);
  --cad-sun: var(--dourado-500);
  --cad-cream: var(--fundo);
  --cad-surface: var(--superficie);
  --cad-ink: var(--texto);
  --cad-muted: var(--texto-2);
  --cad-border: var(--linha);
  --cad-radius: var(--r-md);
  --cad-radius-lg: var(--r-lg);
  --cad-shadow: var(--sh-2);
  --cad-shadow-soft: var(--sh-1);
  --cad-font: var(--fonte-corpo);

  --theme-primary: var(--azul-500);
  --theme-secondary: var(--azul-100);
  --theme-accent: var(--azul-700);

  /* AgendaDoDia e afins */
  --atrasado: var(--atrasado-700);
  --tinta: var(--texto);
  --tinta-2: var(--texto-2);
  --label: var(--texto-2);
  --line: var(--linha);
}

/* ── Base: corpo em Nunito, títulos em Instrument Sans ─────────────── */
body {
  font-family: var(--fonte-corpo);
  color: var(--texto);
  background: var(--fundo);
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--fonte-titulo);
  letter-spacing: -0.015em;
}

/* Títulos que os componentes marcam por classe (sem tag de heading). */
.sv-title, .cx-title, .mlv-title, .mn-cap, .sn-brand b {
  font-family: var(--fonte-titulo);
}

/* ── Controles: raio de ferramenta, não de brinquedo ───────────────── */
button, .btn, input, select, textarea {
  border-radius: var(--r-md);
}

/* O kids-theme forçava raios grandes com !important em controles; aqui o
   Névoa recoloca a régua por cima (importado depois, especificidade igual,
   ordem vence). Contêineres grandes continuam com --r-lg/--r-xl. */
button { border-radius: var(--r-md) !important; }
.cartao, .card, .card-section { border-radius: var(--r-lg); }

/* Pílulas continuam pílulas (chips de filtro, selos). */
.pill, .cfil button, .sn-it, .pml-n { border-radius: var(--r-pill) !important; }
