/* Aprovação · Campanhas (plano, projeções e fechamento semanal). Tudo dentro de .mdw para não mexer no quadro. */
.mdw{--papel:#f3f4f7;--sup:#fff;--tinta:#141a26;--suave:#4a5366;--fraco:#8a93a6;--linha:#e3e6ed;--linha2:#eef0f4;
  --marca:#1a7a45;--marca-forte:#13613a;--marca-clara:#e6f3eb;--ambar:#9a5b00;--ambar-claro:#fff4dc;--verm:#c62828;--verm-claro:#fdecea;--azul:#1d5fa8;--azul-claro:#e8f1fb;
  --raio:14px;--sombra:0 1px 2px rgba(20,26,38,.06),0 4px 14px rgba(20,26,38,.06);--tit:var(--font);--txt:var(--font)}
#campanhas,#campanhas-cli{position:fixed;inset:0;z-index:40;background:var(--bg);overflow-y:auto;-webkit-overflow-scrolling:touch}
body.md-aberto{overflow:hidden}
.mdw .md-in{width:min(1160px,100% - 32px);margin:0 auto;padding:18px 0 60px}
.mdw h1,.mdw h2,.mdw h3{margin:0;line-height:1.2;letter-spacing:-.015em}
.mdw p{margin:0}
.mdw .cab{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:6px 0 16px}
.mdw .cab h1{font-size:26px;font-weight:800}
.mdw .cab p{color:var(--suave);margin-top:4px}
.mdw .voltar{display:inline-flex;align-items:center;gap:6px;color:var(--suave);font-weight:600;background:none;border:0;cursor:pointer;padding:0;font-size:14.5px}
.mdw .cartao{background:var(--sup);border:1px solid var(--linha);border-radius:var(--raio);box-shadow:var(--sombra)}
.mdw .bloco{padding:18px;display:flex;flex-direction:column;gap:12px}
.mdw .bloco h2{font-size:17px;display:flex;align-items:center;gap:10px}
.mdw .bloco h2 .n{width:24px;height:24px;border-radius:7px;background:var(--marca);color:#fff;font-size:13px;display:grid;place-items:center}
.mdw .dica{color:var(--suave);font-size:13.5px;margin-top:-4px}
.mdw .form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.mdw .col{display:flex;flex-direction:column;gap:16px}
.mdw .lin2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mdw .campo{display:flex;flex-direction:column;gap:5px;margin:0}
.mdw .campo>span{margin:0}
.mdw .campo small{color:var(--fraco);font-size:12.5px}
.mdw input[type=text],.mdw input[type=date],.mdw select,.mdw textarea{width:100%;border:1px solid var(--linha);border-radius:10px;padding:9px 11px;background:#fff;outline:none;font-size:15px;transition:border-color .15s,box-shadow .15s}
.mdw input:focus,.mdw select:focus,.mdw textarea:focus{border-color:var(--marca);box-shadow:0 0 0 3px var(--marca-clara)}
.mdw textarea{resize:vertical;min-height:70px;line-height:1.5}
.mdw .check{display:flex;gap:10px;align-items:flex-start;cursor:pointer;font-weight:500}
.mdw .check input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--marca);flex:none}
.mdw .lnk{background:none;border:0;padding:0;color:var(--marca-forte);font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:3px;font-size:14px}
.mdw .lnk.verm{color:var(--verm)}
.mdw .ico-bt{border:1px solid var(--linha);background:#fff;border-radius:8px;width:30px;height:30px;cursor:pointer;color:var(--suave);font-weight:700;flex:none}
.mdw .ico-bt:disabled{opacity:.4;cursor:default}
.mdw .seg{display:inline-flex;background:#fff;border:1px solid var(--linha);border-radius:99px;padding:4px;gap:4px}
.mdw .seg button{border:0;background:transparent;border-radius:99px;padding:7px 14px;font-weight:700;cursor:pointer;color:var(--suave)}
.mdw .seg button[aria-pressed=true]{background:var(--marca);color:#fff}
.mdw .kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.mdw .kpi{background:#fff;border:1px solid var(--linha);border-radius:12px;padding:10px 12px}
.mdw .kpi b{font-size:22px;display:block;line-height:1.15;font-weight:800}
.mdw .kpi span{font-size:12.5px;color:var(--suave)}
.mdw .aviso{border-radius:12px;padding:11px 14px;font-size:14.5px}
.mdw .aviso b{display:block;margin-bottom:2px}
.mdw .aviso.ambar{background:var(--ambar-claro);color:#6b4200;border:1px solid #f0d9a8}
.mdw .aviso.verde{background:var(--marca-clara);color:var(--marca-forte);border:1px solid #c6e8d3}
.mdw .rs-barra{display:flex;justify-content:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.mdw .rs-selo{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--marca)}
.mdw .vazio{text-align:center;color:var(--suave);padding:34px 16px}
.mdw .md-rel{background:var(--sup);border:1px solid var(--linha);border-radius:var(--raio);box-shadow:var(--sombra);padding:clamp(18px,4vw,38px);margin-bottom:30px}
.mdw .md-unis{display:flex;flex-direction:column;gap:8px}
.mdw .md-uni{display:flex;gap:8px;align-items:center}
.mdw .md-cc.fut{background:#fafbfc}
.mdw .md-cc-bt{display:flex;gap:6px;align-items:center}
.mdw .md-pick{display:flex;flex-wrap:wrap;gap:6px}
.mdw .md-pick label{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--linha);border-radius:20px;padding:5px 11px;font-size:13px;font-weight:600;cursor:pointer;background:#fff}
.mdw .md-pick label.on{background:var(--marca-clara);border-color:var(--marca);color:var(--marca-forte)}
.mdw .md-pick small{color:var(--fraco);font-weight:500}
.mdw .md-pick input{accent-color:var(--marca)}
.mdw .md-artes{display:flex;flex-direction:column;gap:6px}
.mdw .md-artes>div{display:flex;gap:10px;flex-wrap:wrap}
.mdw .md-artes figure{margin:0;width:128px}
.mdw .md-artes img,.mdw .md-sem-img{width:128px;height:128px;object-fit:cover;border-radius:10px;border:1px solid var(--linha);display:grid;place-items:center;background:#eef0f4;color:var(--fraco);font-size:13px}
.mdw .md-artes figcaption{font-size:12.5px;font-weight:600;margin-top:4px;line-height:1.3}
.mdw .md-artes figcaption small{display:block;color:var(--fraco);font-weight:500}
.mdw .md-modal{position:fixed;inset:0;background:rgba(15,20,30,.55);z-index:60;display:flex;align-items:flex-start;justify-content:center;padding:28px 14px;overflow:auto}
.mdw .md-modal>.cartao{width:min(560px,100%);padding:22px;display:flex;flex-direction:column;gap:12px}
.mdw .md-modal>.cartao.largo{width:min(880px,100%)}
.mdw .md-modal h3{font-size:19px}
.btn .md-ponto{margin-left:2px}
@media (max-width:900px){.mdw .form{grid-template-columns:1fr}.mdw .kpis{grid-template-columns:repeat(3,1fr)}}
@media (max-width:560px){.mdw .lin2{grid-template-columns:1fr}.mdw .kpis{grid-template-columns:repeat(2,1fr)}}
@media print{
  body.md-aberto>*:not(#campanhas):not(#campanhas-cli){display:none!important}
  #campanhas,#campanhas-cli{position:static;overflow:visible;background:#fff}
  body.md-aberto{overflow:visible}
  .mdw .noprint,.mdw .md-abas,.mdw .md-semb{display:none!important}
  .mdw .md-rel{border:0;box-shadow:none;padding:0}
  .mdw .md-camp,.mdw .md-sem,.mdw .md-tab{break-inside:avoid}
}

/* ── campanhas: plano, projeções e acompanhamento semanal ── */
.md-topo{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px}
.md-topo .voltar{margin:0}
.md-st{font-size:13px;color:var(--fraco);font-weight:600}
.md-st.erro{color:var(--verm)}
.md-abas{display:flex;gap:6px;flex-wrap:wrap;margin:18px 0 16px}
.md-abas button{border:1px solid var(--linha);background:var(--sup);border-radius:999px;padding:8px 15px;font-weight:650;font-size:14.5px;cursor:pointer;color:var(--suave)}
.md-abas button[aria-pressed=true]{background:var(--tinta);border-color:var(--tinta);color:#fff}
.md-pend{margin-bottom:14px}
.md-sm{display:block;color:var(--fraco);font-size:13px;font-weight:400}
.md-bri{display:flex;flex-direction:column;gap:8px}
.md-bri>div{border:1px solid var(--linha2);background:#fafcfa;border-radius:10px;padding:9px 12px;font-size:14px}
.md-bri b{display:block;font-size:13.5px}
.md-bri b small{color:var(--suave);font-weight:500}
.md-bri span{white-space:pre-wrap}
.md-fraco{color:var(--fraco)}
.md-verba{border:1px solid var(--linha);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:10px;background:#fff}
.md-verba.off{opacity:.6}
.md-vg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.md-vb{display:flex;justify-content:space-between;align-items:center;gap:10px}
.md-cc{border:1px solid var(--linha);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px}
.md-cc-tt{display:flex;justify-content:space-between;align-items:center;gap:8px}
.md-cc-tt b{font-size:12.5px;letter-spacing:.08em;color:var(--marca-forte)}
select.md-sel{width:auto;padding:6px 10px;font-size:14px}
.md-per{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.md-per small{max-width:62ch;font-size:13.5px}
.md-pcs{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:14px;margin-bottom:14px}
.md-pc{padding:18px;display:flex;flex-direction:column;gap:12px}
.md-pc-tt{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}
.md-pc-tt h3{font-size:18px}
.md-pc-tt small{color:var(--suave);font-size:13.5px}
.md-base{font-size:12px;font-weight:700;border-radius:99px;padding:3px 10px;background:var(--ambar-claro);color:var(--ambar);white-space:nowrap;display:inline-block}
.md-base.dados{background:var(--marca-clara);color:var(--marca-forte)}
.md-base.misto{background:var(--azul-claro);color:var(--azul)}
.md-tab{overflow-x:auto;-webkit-overflow-scrolling:touch}
.md-tab table{width:100%;border-collapse:collapse;font-size:14.5px}
.md-tab th,.md-tab td{padding:8px 10px;border-bottom:1px solid var(--linha2);text-align:left;vertical-align:top}
.md-tab thead th{font-size:12.5px;color:var(--suave);font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--linha)}
.md-tab tbody th{font-weight:600;color:var(--suave);white-space:nowrap}
.md-tab tbody th small{font-weight:500;color:var(--fraco)}
.md-tab td small{display:block;color:var(--fraco);font-size:12.5px}
.md-tab tr.forte td{font-weight:700}
.md-hip input{padding:7px 9px;font-size:15px;min-width:72px}
.md-h3{font-size:15px;margin-top:6px}
.md-rot{margin-bottom:4px}
.md-semc{padding:18px;margin-top:14px}
.md-semb{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}
.md-comp{display:inline-block;font-style:normal;font-size:12px;font-weight:700;border-radius:99px;padding:2px 8px;margin-top:4px}
.md-comp.acima{background:var(--marca-clara);color:var(--marca-forte)}
.md-comp.dentro{background:var(--azul-claro);color:var(--azul)}
.md-comp.abaixo{background:var(--verm-claro);color:var(--verm)}
.md-fs{border:1px solid var(--linha);border-radius:12px;padding:12px;margin:0}
.md-fs legend{font-weight:700;padding:0 6px}
.md-fs legend small{color:var(--fraco);font-weight:500}
.md-fg{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.md-fg .campo span{font-size:13px}
.md-fg input{padding:9px 10px}

.md-sug{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--linha);border-radius:12px;padding:12px;cursor:pointer}
.md-sug input{width:19px;height:19px;margin-top:2px;accent-color:var(--marca);flex:none}
.md-sug span{display:flex;flex-direction:column;gap:3px;font-size:14.5px}
.md-sug small{color:var(--suave)}
.md-ponto{width:8px;height:8px;border-radius:50%;background:#f1b23a;display:inline-block}
.md-chamada{margin-top:18px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;border-left:4px solid var(--marca)}
.md-chamada b{display:block;font-family:var(--tit);font-size:18px}
.md-chamada small{color:var(--suave);font-size:14.5px}

/* relatório de campanhas (painel e página do cliente) */
.md-rel .md-cab{padding-bottom:20px;border-bottom:2px solid var(--marca)}
.md-cab h1{font-size:clamp(28px,4vw,38px);margin:6px 0 12px}
.md-cab p{color:var(--suave);font-size:16.5px;max-width:65ch}
.md-cab p.md-sub{margin-top:8px;font-size:14px;color:var(--fraco)}
.md-sec{padding:24px 0;border-bottom:1px solid var(--linha2)}
.md-sec:last-child{border-bottom:0;padding-bottom:0}
.md-sec>h2{font-size:21px;margin-bottom:12px;color:var(--marca-forte)}
.md-sec>p{margin-bottom:12px}
.md-nota{margin-top:12px;color:var(--suave);font-size:15px}
.md-aviso{background:var(--ambar-claro);color:#6b4200;border-radius:12px;padding:12px 14px;font-size:15px;margin-bottom:12px}
.md-camp{border:1px solid var(--linha);border-left:4px solid var(--marca);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
.md-camp-tt{display:flex;justify-content:space-between;gap:10px;align-items:center}
.md-camp-tt span{font-size:12.5px;font-weight:800;letter-spacing:.08em;color:var(--marca-forte)}
.md-camp h3{font-size:20px}
.md-camp ul{margin:4px 0 0;padding-left:20px}
.md-conceito{font-family:var(--tit);font-size:17px}
.md-chip{font-style:normal;font-size:12px;font-weight:700;border-radius:99px;padding:2px 9px;background:#eef1ee;color:#5d6b62;white-space:nowrap}
.md-chip.ativa{background:var(--marca-clara);color:var(--marca-forte)}
.md-chip.futura{background:#f1ecfb;color:#5b3b9a}
.md-chip.pausada{background:var(--verm-claro);color:var(--verm)}
.md-proj td b{display:block;font-size:16px}
.md-ind tbody th{width:38%}
.md-sem{display:flex;flex-direction:column;gap:12px}
.md-sec .md-sem{padding:16px 0;border-top:1px dashed var(--linha)}
.md-sec .md-sem:first-of-type{border-top:0;padding-top:0}
.md-sem-tt{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.md-sem-tt h3{font-size:17px}
.md-sem-tt small{color:var(--fraco)}
.md-blk{background:var(--papel);border-radius:10px;padding:12px 14px;font-size:15px}
.md-blk b{display:block;margin-bottom:4px}
.md-fim p{font-family:var(--tit);font-size:18px;color:var(--marca-forte)}
@media (max-width:700px){.md-vg,.md-fg{grid-template-columns:1fr 1fr}.md-pcs{grid-template-columns:1fr}}
@media (max-width:420px){.md-vg{grid-template-columns:1fr}}

@media (max-width:560px){.md-tab tbody th{white-space:normal;min-width:104px}.md-tab td{min-width:112px}.md-rel{padding:18px 14px}}
.mdw .cab .acoes{display:flex;gap:8px;flex-wrap:wrap}
.mdw .aviso.verm{background:var(--verm-claro);color:#7a1a12;border:1px solid #f4cfca}
.mdw .md-lista{margin:4px 0 0;padding-left:18px}
.mdw .md-arq{display:flex;flex-direction:column;gap:4px;border:2px dashed #c8cfdc;border-radius:12px;padding:16px;text-align:center;cursor:pointer;color:var(--suave)}
.mdw .md-arq:hover{border-color:var(--marca);background:var(--marca-clara)}
.mdw .md-arq b{color:var(--marca-forte)}
.mdw .md-arq input{margin:0 auto;font-size:13px}
.mdw .md-prev{border:1px solid var(--linha);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:4px;font-size:14px}
.mdw .md-prev small{color:var(--suave)}
.mdw .md-prev ul{margin:2px 0;padding-left:18px}
.mdw .md-prev .md-chip{margin-left:6px;vertical-align:2px}

/* ===== link do cliente: campanhas para aprovar ===== */
.cap{padding:16px 16px 0}
.cap-in{max-width:1240px;margin:0 auto;background:#e9ebf0;border-radius:var(--radius,14px);padding:14px}
.cap-tt{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:0 0 10px}
.cap-tt h2{margin:0;font-size:17px}
.cap-tt span{color:var(--ink2);font-size:13.5px;font-weight:600}
.cap-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:12px}
.cap-card .corpo{padding:12px 14px}
.cap-num{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11.5px;font-weight:800;letter-spacing:.04em;color:var(--brand);margin-bottom:6px}
.cap-card h4{font-size:15.5px}
.cap-conc{font-style:italic;color:var(--ink2);margin:0 0 8px;font-size:14px}
.cap-mudou{margin-top:8px;font-size:12.5px;background:#fff7e6;color:#8a5a00;border:1px solid #f5d48a;border-radius:8px;padding:6px 8px}
.cap-mudou.grande{font-size:14px;padding:10px 12px;margin:0 0 14px}
.cap-det{display:flex;flex-direction:column;gap:12px}
.cap-rot{font-size:12px;font-weight:800;letter-spacing:.04em;color:var(--brand)}
.cap-bloco b{display:block;font-size:12.5px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink2);margin-bottom:3px}
.cap-bloco p{margin:0;font-size:14.5px}
.cap-bloco ul{margin:2px 0 0;padding-left:18px;font-size:14.5px}
.cap-per{margin:0 0 10px;font-weight:600}
.cap-fraco{color:var(--muted);font-size:13px;display:block}
.cap-tab{overflow-x:auto;border:1px solid var(--line);border-radius:12px}
.cap-tab table{width:100%;border-collapse:collapse;font-size:14px}
.cap-tab th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:var(--ink2);background:var(--surface2);padding:8px 10px;border-bottom:1px solid var(--line)}
.cap-tab td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.cap-tab tr:last-child td{border-bottom:0}
.cap-tab td small{display:block;color:var(--muted);font-size:12px}
.cap-tab tr.tot td{font-weight:800;background:var(--surface2)}
.cap-artes{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-top:6px}
.cap-arte{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:0;overflow:hidden;cursor:pointer;text-align:left;display:flex;flex-direction:column;font:inherit}
.cap-arte:hover{border-color:var(--brand)}
.cap-arte img,.cap-arte>span{width:100%;aspect-ratio:1;object-fit:cover;display:grid;place-items:center;background:#dfe3ea;color:var(--muted);font-size:12px}
.cap-arte em{font-style:normal;font-size:12px;font-weight:600;padding:5px 6px 0;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cap-arte small{font-size:11px;font-weight:700;padding:2px 6px 6px}
@media (max-width:760px){.cap{padding:12px 12px 0}.cap-in{padding:12px}.cap-grade{grid-template-columns:1fr}}

/* ===== painel: resposta do cliente na campanha ===== */
.mdw .md-ap{border-radius:10px;padding:9px 11px;font-size:13.5px;border:1px solid var(--linha);background:var(--sup);display:flex;flex-direction:column;gap:6px}
.mdw .md-ap.aprovado{background:#ecfdf3;border-color:#a7e3bd;color:#14632f}
.mdw .md-ap.ajuste{background:#fff4f4;border-color:#f3b7b9;color:#9b1c22}
.mdw .md-ap.aguardando{background:#fff7e6;border-color:#f5d48a;color:#7a5000}
.mdw .md-ap .md-ap-msgs{display:flex;flex-direction:column;gap:4px;color:var(--tinta)}
.mdw .md-ap .md-ap-msgs div{background:rgba(255,255,255,.7);border-radius:8px;padding:5px 8px;font-size:13px;white-space:pre-wrap}
.mdw .md-ap .md-ap-msgs small{color:var(--fraco);margin-left:4px}
.mdw .md-ap .md-ap-env{display:flex;gap:6px}
.mdw .md-ap .md-ap-env input{flex:1;min-width:0;border:1px solid var(--linha);border-radius:8px;padding:6px 9px;font:inherit;font-size:13px}
