/* ============================================================
   CRM · Núcleo de dados do Psicosphera OS
   Camada visual do módulo CRM. Herda os tokens de styles.css.
   ============================================================ */

/* ---------- barra de substituição ---------- */
.replace-bar{display:grid;grid-template-columns:1fr 40px 1.15fr;gap:16px;align-items:center;background:#fff;border:1px solid #d5e0e7;border-radius:10px;padding:16px 20px;margin-bottom:16px;box-shadow:0 2px 7px #24384a0c}
.rep-out,.rep-in{display:flex;flex-direction:column;gap:10px;min-width:0}
.rep-out{opacity:.62;position:relative}
.rep-out>p{font-size:9px;font-weight:700;letter-spacing:1.2px;color:#9d5a37;margin:0}
.rep-sys{display:flex;align-items:center;gap:10px;min-width:0}
.rep-out .rep-sys b{text-decoration:line-through;text-decoration-color:#c98f6a}
.rep-sys b{display:block;font-size:11.5px;color:#20364a}
.rep-sys em{display:block;font-style:normal;font-size:9.5px;color:#74879a;margin-top:2px}
.rep-arrow{text-align:center;font-size:22px;color:#8fb6d1}
.rep-progress{margin-top:2px}
.rep-bar{display:flex;height:8px;border-radius:4px;overflow:hidden;background:#eef3f6;margin-bottom:8px}
.rep-bar i{display:block;height:100%}
.pr-pronto{background:#5aa27c}.pr-esboco{background:#8fb6d1}.pr-pendente{background:#c3d0da}.pr-externo{background:#d98c60}
.rep-progress p{font-size:10px;color:#62778b;margin:0}
.rep-progress b{color:#20364a}

/* ---------- barra de sincronia (legado) ---------- */
.sync-bar{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #d5e0e7;border-radius:10px;padding:12px 16px;margin-bottom:16px;box-shadow:0 2px 7px #24384a0c}
.sync-node{display:flex;align-items:center;gap:9px;min-width:0}
.sync-logo{height:32px;width:32px;border-radius:8px;display:grid;place-items:center;font:800 12px Manrope;flex:none}
.sync-logo.kommo{background:#e6ecfb;color:#5b68b4}
.sync-logo.pm{background:#e2f1f6;color:#3f8ba6}
.sync-logo.os{background:#dcecf6;color:#2f6c98}
.sync-node b{display:block;font-size:11px;color:#20364a}
.sync-node em{display:block;font-style:normal;font-size:9.5px;color:#74879a;margin-top:2px}
.sync-link{flex:1;height:1px;background:repeating-linear-gradient(to right,#c3d5e0 0,#c3d5e0 5px,transparent 5px,transparent 10px);position:relative;min-width:30px}
.sync-link span{position:absolute;top:-9px;left:50%;transform:translateX(-50%);background:#fff;padding:0 7px;font-size:9px;color:#7d90a2;white-space:nowrap}
.sync-state{margin-left:auto;display:flex;align-items:center;gap:9px;flex:none}
.sync-pill{font-size:9.5px;padding:4px 8px;border-radius:5px;background:#fff0e4;color:#9d5a37;font-weight:600}
.sync-pill.ok{background:#dff1e8;color:#35775a}
.sync-bar .secondary{padding:7px 11px}

/* ---------- KPIs do CRM ---------- */
.crm-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:11px;margin-bottom:20px}
.crm-kpis article{background:#fff;border:1px solid #d5e0e7;border-radius:9px;padding:13px 14px;box-shadow:0 2px 7px #24384a0c}
.crm-kpis p{font-size:10px;color:#62778b;margin:0 0 7px;line-height:1.35}
.crm-kpis h2{font:700 20px Manrope;margin:0;letter-spacing:-.6px;color:#182a3d}
.crm-kpis em{display:block;font-style:normal;font-size:9px;color:#74879a;margin-top:5px}
.crm-kpis article.alert{border-color:#e7c3a8;background:#fffaf6}
.crm-kpis article.alert h2{color:#9d5a37}
.src{display:inline-block;font-size:8px;font-weight:700;letter-spacing:.4px;padding:2px 4px;border-radius:3px;vertical-align:2px;margin-left:5px}
.src-k{background:#e6ecfb;color:#5b68b4}
.src-p{background:#e2f1f6;color:#3f8ba6}
.src-o{background:#dcecf6;color:#2f6c98}

/* ---------- abas ---------- */
.crm-tabs{display:flex;gap:24px;border-bottom:1px solid #d4e0e8;margin-bottom:20px;overflow-x:auto}
.crm-tabs button{border:0;background:none;padding:0 0 11px;color:#5d7084;font-size:12px;white-space:nowrap}
.crm-tabs .selected{color:#2e6e9b;border-bottom:2px solid #7aa4c5;font-weight:600}
.crm-tabs b{background:#ffe7d6;color:#9d5a37;border-radius:9px;padding:2px 6px;font-size:9px;margin-left:5px}
.crm-view{display:none}
.crm-view.active{display:block}

/* ---------- filtros ---------- */
.crm-filters{display:flex;gap:8px;align-items:center;margin-bottom:13px;flex-wrap:wrap}
.crm-search{height:34px;flex:1;min-width:190px;background:#fff;border:1px solid #cbd9e3;border-radius:7px;display:flex;align-items:center;gap:7px;padding:0 10px;color:#7d90a2}
.crm-search input{border:0;background:transparent;outline:0;flex:1;font:12px 'DM Sans';color:#182a3d}
.chip{border:1px solid #cbd9e3;background:#fff;border-radius:20px;padding:6px 12px;font-size:11px;color:#486980}
.chip.on{background:#dcecf6;border-color:#8fb6d1;color:#2f6c98;font-weight:600}
.crm-filters select{height:34px;border:1px solid #cbd9e3;border-radius:7px;background:#fff;font:11px 'DM Sans';color:#486980;padding:0 8px;outline-color:#89aecf}

/* ---------- tabela de pessoas ---------- */
.people-table{background:#fff;border:1px solid #d5e0e7;border-radius:10px;overflow:hidden;box-shadow:0 2px 7px #24384a0c}
.people-head,.people-row{display:grid;grid-template-columns:2.2fr 1.5fr 1fr .9fr 1.3fr 92px;gap:12px;align-items:center;padding:11px 16px}
.people-head{background:#edf3f6;color:#6c8194;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.people-row{border-top:1px solid #e0e8ed;font-size:11px;color:#5d7084;cursor:pointer;background:#fff;text-align:left;width:100%;border-left:0;border-right:0;border-bottom:0;font-family:inherit}
.people-row:hover{background:#f4f9fc}
.people-row .who{display:flex;align-items:center;gap:10px;min-width:0}
.people-row .who p{margin:0;min-width:0}
.people-row .who b{display:block;font-size:11.5px;color:#20364a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.people-row .who em{display:block;font-style:normal;font-size:9.5px;color:#74879a;margin-top:3px}
.bond{display:inline-block;font-size:9px;padding:3px 6px;border-radius:4px;margin-right:4px;white-space:nowrap}
.bond-pac{background:#dff1e8;color:#35775a}
.bond-lead{background:#e1eff8;color:#336c94}
.bond-aluno{background:#e9e9f8;color:#5d6398}
.bond-leitor{background:#fff0e4;color:#9d5a37}
.bond-resp{background:#f1f4f6;color:#5d7084}
.money{font-weight:600;color:#20364a}
.link-state{display:flex;align-items:center;gap:6px;font-size:9.5px}
.led{height:7px;width:7px;border-radius:50%;flex:none}
.led.ok{background:#5aa27c}
.led.warn{background:#d98c60}
.led.off{background:#b9c6d0}
.people-row .go{text-align:right;color:#7d90a2;font-size:15px}
.table-foot{padding:12px 16px;border-top:1px solid #e0e8ed;font-size:10px;color:#74879a;display:flex;justify-content:space-between;align-items:center;background:#fafcfd}

/* ---------- ficha 360 (drawer) ---------- */
.drawer-wrap{position:fixed;inset:0;background:#21384a42;z-index:40;opacity:0;pointer-events:none;transition:.2s}
.drawer-wrap.visible{opacity:1;pointer-events:auto}
.drawer{position:absolute;right:0;top:0;bottom:0;width:470px;max-width:100vw;background:#f7fafc;border-left:1px solid #cbd9e2;box-shadow:-14px 0 40px #152d4230;transform:translateX(100%);transition:.24s cubic-bezier(.4,0,.2,1);overflow-y:auto}
.drawer-wrap.visible .drawer{transform:translateX(0)}
.drawer-top{background:#fff;padding:22px 22px 18px;border-bottom:1px solid #d5e0e7;position:relative}
.drawer-top .modal-close{top:14px;right:16px}
.drawer-id{display:flex;align-items:center;gap:13px}
.drawer-id .big-avatar{margin:0;flex:none;height:52px;width:52px}
.drawer-id h2{font:700 18px Manrope;margin:0 0 6px;letter-spacing:-.4px}
.drawer-bonds{display:flex;flex-wrap:wrap;gap:4px}
.drawer-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:17px}
.drawer-quick div{background:#f4f9fc;border:1px solid #e0eaf0;border-radius:7px;padding:9px}
.drawer-quick span{display:block;font-size:9px;color:#74879a;margin-bottom:4px}
.drawer-quick b{font-size:12px;color:#20364a}
.dsec{background:#fff;border:1px solid #d5e0e7;border-radius:9px;margin:14px 16px;padding:15px 16px}
.dsec h4{font:700 11px Manrope;margin:0 0 12px;display:flex;align-items:center;gap:7px}
.dsec h4 .src{margin-left:auto}
.dfield{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #eef3f6;font-size:11px}
.dfield:last-child{border:0}
.dfield span{color:#74879a;flex:none}
.dfield b{color:#20364a;font-weight:600;text-align:right;min-width:0}
.dfield.diverge{background:#fffaf6;margin:0 -8px;padding:7px 8px;border-radius:5px;border-bottom-color:#f2e2d5}
.dfield.diverge b{color:#9d5a37}
.dfield .flag{font-size:9px;color:#9d5a37;display:block;font-weight:400;margin-top:3px}
.timeline{position:relative;padding-left:17px}
.timeline:before{content:"";position:absolute;left:4px;top:5px;bottom:5px;width:1px;background:#dde7ee}
.tl-item{position:relative;padding:0 0 14px}
.tl-item:last-child{padding-bottom:0}
.tl-item:before{content:"";position:absolute;left:-16px;top:4px;height:9px;width:9px;border-radius:50%;background:#fff;border:2px solid #8fb6d1}
.tl-item.k:before{border-color:#8d9ad4}
.tl-item.p:before{border-color:#6fb0c6}
.tl-item b{display:block;font-size:11px;color:#20364a}
.tl-item em{display:block;font-style:normal;font-size:9.5px;color:#74879a;margin-top:3px;line-height:1.5}
.drawer-actions{display:flex;gap:8px;padding:0 16px 22px}
.drawer-actions .primary,.drawer-actions .secondary{margin:0;flex:1;text-align:center}

/* ---------- reconciliação ---------- */
.recon-hero{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;background:#fff;border:1px solid #d5e0e7;border-radius:10px;padding:20px 24px;margin-bottom:16px;box-shadow:0 2px 7px #24384a0c}
.recon-side{text-align:center}
.recon-side p{font-size:10px;color:#62778b;margin:0 0 7px}
.recon-side h3{font:700 26px Manrope;margin:0;letter-spacing:-1px;color:#182a3d}
.recon-side em{display:block;font-style:normal;font-size:9.5px;color:#74879a;margin-top:6px}
.recon-gap{text-align:center;padding:0 20px;border-left:1px solid #e4ecf1;border-right:1px solid #e4ecf1}
.recon-gap span{display:block;font-size:9px;letter-spacing:1px;color:#9d5a37;font-weight:700;margin-bottom:6px}
.recon-gap b{font:700 22px Manrope;color:#9d5a37;letter-spacing:-.7px}
.recon-list{background:#fff;border:1px solid #d5e0e7;border-radius:10px;overflow:hidden;box-shadow:0 2px 7px #24384a0c}
.recon-list>header{padding:16px 18px;border-bottom:1px solid #e0e8ed;display:flex;justify-content:space-between;align-items:center}
.recon-list>header h3{font:700 14px Manrope;margin:0 0 4px}
.recon-list>header p{font-size:10.5px;color:#62778b;margin:0}
.recon-row{display:flex;gap:13px;padding:15px 18px;border-bottom:1px solid #e0e8ed;align-items:flex-start}
.recon-row:last-child{border:0}
.recon-sev{height:30px;width:30px;border-radius:8px;display:grid;place-items:center;font-size:14px;flex:none}
.sev-alta{background:#fbe3e6;color:#a8505f}
.sev-media{background:#ffefe1;color:#a6683b}
.sev-baixa{background:#e6eef4;color:#4f7a9c}
.recon-row>div{flex:1;min-width:0}
.recon-row b{font-size:12px;color:#20364a;display:block;margin-bottom:5px}
.recon-row p{font-size:10.5px;color:#5d7084;margin:0;line-height:1.6}
.recon-row p code{background:#eef3f6;border-radius:3px;padding:1px 4px;font-size:10px;color:#2e6e9b}
.recon-fix{background:#f4f9fc;border:1px solid #dde9f0;border-radius:6px;padding:8px 10px;margin-top:9px;font-size:10px;color:#3d617e;line-height:1.6}
.recon-fix b{display:inline;font-size:10px;color:#2e6e9b}
.recon-count{flex:none;text-align:right}
.recon-count strong{display:block;font:700 17px Manrope;color:#182a3d}
.recon-count em{font-style:normal;font-size:9px;color:#74879a}
.recon-row .secondary{flex:none;align-self:center}

/* ---------- funis ---------- */
.funnel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:18px}
.funnel-card{background:#fff;border:1px solid #d5e0e7;border-radius:9px;padding:15px;box-shadow:0 2px 7px #24384a0c}
.funnel-card header{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.funnel-card .mini-dot{margin:0}
.funnel-card h4{font:700 12px Manrope;margin:0;flex:1}
.funnel-card .src{margin:0}
.funnel-card .nums{display:flex;gap:16px;margin-bottom:11px}
.funnel-card .nums div span{display:block;font-size:9px;color:#74879a;margin-bottom:3px}
.funnel-card .nums div b{font:700 15px Manrope;color:#182a3d}
.stage-bar{display:flex;height:6px;border-radius:3px;overflow:hidden;background:#eef3f6;margin-bottom:9px}
.stage-bar i{display:block;height:100%}
.funnel-card>p{font-size:10px;color:#62778b;margin:0;line-height:1.55}
.callout{background:#fffaf6;border:1px solid #e7c3a8;border-radius:9px;padding:17px 19px}
.callout h4{font:700 13px Manrope;margin:0 0 9px;color:#9d5a37}
.callout p{font-size:11px;color:#5d7084;line-height:1.7;margin:0 0 11px}
.callout p:last-child{margin:0}
.callout table{width:100%;border-collapse:collapse;font-size:10.5px;margin:12px 0}
.callout th{text-align:left;color:#74879a;font-size:9px;letter-spacing:.4px;text-transform:uppercase;padding:0 8px 7px 0;font-weight:700}
.callout td{padding:6px 8px 6px 0;border-top:1px solid #f0e2d6;color:#5d7084}
.callout td b{color:#20364a}
.callout td.bad{color:#a8505f;font-weight:600}

/* ---------- modelo de dados ---------- */
.model-note{background:#fff;border:1px solid #d5e0e7;border-radius:9px;padding:16px 18px;margin-bottom:16px;font-size:11px;color:#5d7084;line-height:1.7;box-shadow:0 2px 7px #24384a0c}
.model-note b{color:#20364a}
.entity-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:13px}
.entity{background:#fff;border:1px solid #d5e0e7;border-radius:9px;overflow:hidden;box-shadow:0 2px 7px #24384a0c}
.entity header{padding:12px 14px;border-bottom:1px solid #e0e8ed;display:flex;align-items:center;gap:8px;background:#fafcfd}
.entity header span{height:26px;width:26px;border-radius:7px;display:grid;place-items:center;font-size:13px;background:#dcecf6;color:#2f6c98;flex:none}
.entity header b{font:700 12px Manrope;flex:1}
.entity ul{list-style:none;margin:0;padding:10px 14px 13px}
.entity li{font-size:10.5px;color:#5d7084;padding:4px 0;display:flex;justify-content:space-between;gap:9px}
.entity li i{font-style:normal;color:#9aa9b6;font-size:9px;flex:none}
.entity li.pk{color:#2e6e9b;font-weight:600}
.entity footer{padding:9px 14px;border-top:1px solid #eef3f6;font-size:9.5px;color:#74879a;background:#fafcfd}

/* ---------- estados de vínculo e pagamento ---------- */
.bond-ok{background:#dff1e8;color:#35775a}
.bond-new{background:#e1eff8;color:#336c94}
.bond-warn{background:#fff0e4;color:#9d5a37}
.bond-bad{background:#fbe3e6;color:#a8505f}
.bond-off{background:#eef3f6;color:#74879a}
.led.new{background:#5b8cb5}
.led.bad{background:#c0697a}
.pay{font-style:normal;font-size:9px;padding:2px 6px;border-radius:4px;margin-left:6px;font-weight:600;display:inline-block}
.pay-pago{background:#dff1e8;color:#35775a}
.pay-aberto{background:#fff0e4;color:#9d5a37}
.pay-faltando{background:#fbe3e6;color:#a8505f}
.pay-recorrência,.pay-recorrencia{background:#e9e9f8;color:#5d6398}
.pay-interno{background:#eef3f6;color:#74879a}
.freq{font-style:normal;font-size:9px;padding:2px 6px;border-radius:4px;font-weight:600;display:inline-block}
.freq-confirmada{background:#dff1e8;color:#35775a}
.freq-pendente{background:#fff0e4;color:#9d5a37}
.freq-aguardando{background:#e1eff8;color:#336c94}
.disclaimer{font-size:10px;color:#74879a;line-height:1.6;margin:12px 2px 0}
.disclaimer b{color:#5d7084}

/* ---------- agenda ---------- */
.ag-dia{font:700 13px Manrope;color:#20364a;padding:0 4px}
.ag-wrap{display:grid;grid-template-columns:56px 1fr;background:#fff;border:1px solid #d5e0e7;border-radius:10px;overflow:hidden;box-shadow:0 2px 7px #24384a0c}
.ag-hours{padding-top:66px;border-right:1px solid #d5e0e7;background:#fafcfd}
.ag-hours span{display:block;height:62px;font-size:10px;color:#8a9bab;text-align:center}
.ag-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.ag-col{border-right:1px solid #e4ecf1;position:relative;min-height:628px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 61px,#eef3f6 61px,#eef3f6 62px);background-position:0 66px}
.ag-col:last-child{border-right:0}
.ag-col h4{font:700 11px Manrope;margin:0;padding:14px 12px 0;position:relative;z-index:1}
.ag-col h4 em{display:block;font-style:normal;font-size:9px;color:#74879a;font-weight:400;margin-top:3px}
.ag-sessao{position:absolute;left:8px;right:8px;padding:8px 9px;border-radius:6px;border-left:3px solid;overflow:hidden;box-shadow:0 1px 3px #22394a1a}
.ag-sessao b{display:block;font-size:10.5px;line-height:1.3}
.ag-sessao span{display:block;font-size:9px;margin-top:3px;opacity:.85}
.ag-marks{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px;font-style:normal}
.ag-marks .val{font-style:normal;font-size:9px;padding:2px 6px;border-radius:4px;background:#ffffffcc;color:#20364a;font-weight:600}
.ag-externo{position:absolute;left:8px;right:8px;height:26px;display:flex;align-items:center;padding:0 9px;border-radius:5px;background:repeating-linear-gradient(135deg,#f1f5f8 0,#f1f5f8 6px,#e8eef3 6px,#e8eef3 12px);border:1px dashed #c6d4de;color:#7d90a2;font-size:9px}
.ag-externo-chip{font-style:normal;font-size:9px;padding:2px 7px;border-radius:4px;background:#eef3f6;border:1px dashed #c6d4de;color:#74879a}
.ag-legend{display:flex;flex-wrap:wrap;gap:16px;margin:13px 2px 18px;font-size:10px;color:#74879a;align-items:center}
.ag-legend span{display:flex;align-items:center;gap:6px}

/* ---------- financeiro ---------- */
.fin-kpis{grid-template-columns:repeat(6,1fr)}
.fin-head,.fin-row{display:grid;grid-template-columns:.9fr 1.6fr 1.4fr 1fr .8fr .9fr;gap:12px;align-items:center;padding:11px 16px}
.fin-head{background:#edf3f6;color:#6c8194;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.fin-row{border-top:1px solid #e0e8ed;font-size:11px;color:#5d7084}
.fin-row b{color:#20364a}
.fin-row .pay{margin:0}

/* ---------- produtos ---------- */
.prod-table{background:#fff;border:1px solid #d5e0e7;border-radius:10px;overflow:hidden;margin-top:18px;box-shadow:0 2px 7px #24384a0c}
.prod-table>header{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid #e0e8ed}
.prod-table h3{font:700 14px Manrope;margin:0 0 4px}
.prod-table header p{font-size:10.5px;color:#62778b;margin:0}
.prod-head,.prod-row{display:grid;grid-template-columns:2.4fr 1fr .7fr;gap:12px;align-items:center;padding:11px 18px}
.prod-head{background:#edf3f6;color:#6c8194;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.prod-row{border-top:1px solid #e0e8ed;font-size:11px;color:#5d7084}
.prod-row b{color:#20364a}
.prod-row .tag{justify-self:start}

/* ---------- cobrança recorrente ---------- */
.sec-title{font:700 15px Manrope;margin:26px 0 5px;color:#182a3d}
.sec-sub{font-size:11px;color:#62778b;margin:0 0 14px;line-height:1.6;max-width:840px}
.meio-chip{font-size:10px;padding:6px 11px;border-radius:20px;font-weight:600}
.meio-asaas{background:#e3f2ea;color:#2c6b4c;border:1px solid #b6dbc6}
.meio-nubank{background:#f0ecf9;color:#6a4f9c;border:1px solid #d3c7ea}

.modelos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.modelo{background:#fff;border:1px solid #d5e0e7;border-radius:10px;padding:16px 17px;display:flex;flex-direction:column;box-shadow:0 2px 7px #24384a0c}
.modelo.rec{border-color:#8dc4a5;box-shadow:0 2px 12px #3d8a6420}
.modelo header{display:flex;align-items:center;gap:9px;margin-bottom:11px}
.modelo-id{height:26px;width:26px;border-radius:7px;display:grid;place-items:center;background:#eef3f6;color:#5d7084;font:800 12px Manrope;flex:none}
.modelo.rec .modelo-id{background:#dff1e8;color:#2c6b4c}
.modelo h4{font:700 13px Manrope;margin:0;flex:1}
.rec-tag{font-size:9px;font-weight:700;padding:3px 7px;border-radius:4px;background:#dff1e8;color:#2c6b4c}
.modelo-como{font-size:10.5px;color:#5d7084;line-height:1.65;margin:0 0 12px}
.modelo-como code{background:#eef3f6;border-radius:3px;padding:1px 4px;font-size:10px;color:#2e6e9b}
.modelo ul{list-style:none;margin:0 0 9px;padding:0}
.modelo li{font-size:10.5px;line-height:1.5;padding:3px 0 3px 17px;position:relative;color:#5d7084}
.pros li:before{content:"+";position:absolute;left:2px;color:#4e9972;font-weight:700}
.contras li:before{content:"−";position:absolute;left:2px;color:#c07a55;font-weight:700}
.modelo footer{margin-top:auto;padding-top:11px;border-top:1px solid #eef3f6;font-size:10px;color:#74879a;line-height:1.55}

.regua{background:#fff;border:1px solid #d5e0e7;border-radius:10px;overflow:hidden;box-shadow:0 2px 7px #24384a0c}
.regua-item{display:flex;gap:14px;align-items:flex-start;padding:13px 18px;border-bottom:1px solid #e0e8ed;border-left:3px solid transparent}
.regua-item:last-child{border-bottom:0}
.regua-item.tom-ok{border-left-color:#5aa27c}
.regua-item.tom-alerta{border-left-color:#d98c60}
.regua-item.tom-critico{border-left-color:#c0697a}
.regua-item.tom-neutro{border-left-color:#c3d0da}
.regua-dia{flex:none;width:44px;font:700 11px Manrope;color:#20364a;padding-top:1px}
.regua-item>div{flex:1;min-width:0}
.regua-item b{display:block;font-size:11.5px;color:#20364a;margin-bottom:3px}
.regua-item p{font-size:10.5px;color:#5d7084;margin:0;line-height:1.6}
.regua-ev{flex:none;font-size:9px;font-family:ui-monospace,monospace;padding:3px 7px;border-radius:4px;background:#eef3f6;color:#4f7a9c;align-self:center}

.rec-head,.rec-row{display:grid;grid-template-columns:2.1fr 1.2fr 1.2fr .9fr 1.2fr 1.1fr;gap:12px;align-items:center;padding:11px 16px}
.rec-head{background:#edf3f6;color:#6c8194;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.rec-row{border-top:1px solid #e0e8ed;font-size:11px;color:#5d7084}
.rec-row .who{display:flex;align-items:center;gap:10px;min-width:0}
.rec-row .who p{margin:0;min-width:0}
.rec-row .who b{display:block;font-size:11.5px;color:#20364a}
.rec-row .who em{display:block;font-style:normal;font-size:9.5px;color:#9d5a37;margin-top:3px;line-height:1.4}
.mod{font-style:normal;font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px;margin-right:5px}
.mod-A{background:#dff1e8;color:#2c6b4c}
.mod-B{background:#e1eff8;color:#336c94}
.mod-C{background:#f0ecf9;color:#6a4f9c}
.mod--{background:#eef3f6;color:#8a9bab}
.st.st-vencida{background:#fbe3e6;color:#a8505f}

.api-box{background:#fff;border:1px solid #d5e0e7;border-radius:10px;overflow:hidden;box-shadow:0 2px 7px #24384a0c}
.api-base{padding:13px 18px;border-bottom:1px solid #e0e8ed;font-size:11px;color:#5d7084;background:#fafcfd}
.api-base b{color:#20364a;margin-right:9px}
.api-row{display:flex;gap:13px;padding:14px 18px;border-bottom:1px solid #e0e8ed;align-items:flex-start}
.verb{flex:none;font:700 9px ui-monospace,monospace;padding:4px 8px;border-radius:4px;background:#e1eff8;color:#2e6e9b;letter-spacing:.5px}
.api-row>div{flex:1;min-width:0}
.api-row b{display:block;font-size:12px;margin-bottom:4px}
.api-row p{font-size:10.5px;color:#5d7084;margin:0 0 4px;line-height:1.55}
.api-fields{font-family:ui-monospace,monospace;font-size:9.5px!important;color:#74879a!important}
.api-enums{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;padding:16px 18px;border-bottom:1px solid #e0e8ed}
.api-enums>div{min-width:0}
.api-enums b{display:block;font-size:10px;color:#20364a;margin-bottom:7px}
.api-enums code,.api-row code,.api-base code{background:#eef3f6;border-radius:3px;padding:2px 5px;font-size:9.5px;color:#2e6e9b;font-family:ui-monospace,monospace;display:inline-block;margin:0 4px 4px 0}
.api-warn{padding:13px 18px;font-size:10.5px;color:#5d7084;line-height:1.65;background:#fffaf6;border-bottom:1px solid #f2e2d5}
.api-warn:last-child{border-bottom:0}
.api-warn.ok{background:#f5faf7;border-bottom-color:#dcece3}
.api-warn b{color:#9d5a37}
.api-warn.ok b{color:#2c6b4c}
.mark-line{margin-top:4px!important}

.prod-moved{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid #d5e0e7;border-radius:10px;padding:16px 18px;margin-top:16px;box-shadow:0 2px 7px #24384a0c}
.prod-moved>span{font-size:20px;color:#719bbd;flex:none}
.prod-moved div{flex:1;font-size:11.5px;color:#5d7084;line-height:1.6}
.prod-moved div b{color:#20364a}
.prod-moved .secondary{flex:none}
:root[data-theme="dark"] .prod-moved{background:var(--surface);border-color:var(--border-2)}
:root[data-theme="dark"] .prod-moved div b{color:var(--ink)}
.fin-banco{display:block;font-style:normal;font-size:9px;color:#8a9bab;margin-top:2px}
:root[data-theme="dark"] .fin-banco{color:#8395a6}

.imp-drop{display:block;border:1.5px dashed #cbd9e3;border-radius:9px;padding:22px 16px;text-align:center;cursor:pointer;margin:6px 0 12px}
.imp-drop:hover{border-color:#8fb6d1;background:#f8fbfd}
.imp-drop span{display:block;font:600 12px 'DM Sans';color:#3d617e}
.imp-drop em{display:block;font-style:normal;font-size:10px;color:#8a9bab;margin-top:6px}
:root[data-theme="dark"] .imp-drop{border-color:var(--border-2)}
:root[data-theme="dark"] .imp-drop:hover{background:var(--surface-2)}

/* ---------- ficha unificada (módulos) ---------- */
.mod-flags{display:flex;flex-wrap:wrap;gap:7px;padding:2px 0}
.mod-flag{font-size:10px;font-weight:600;padding:5px 10px;border-radius:6px;background:#eef3f6;color:#8a9bab}
.mod-flag.on{background:#dcecf6;color:#2f6c98}
.ev-card{background:#fafcfd;border:1px solid #e0eaf0;border-radius:8px;padding:11px 13px;margin-bottom:9px}
.ev-card>b{display:block;font:700 12px Manrope;color:#20364a;margin-bottom:7px}
.ev-card:last-child{margin-bottom:0}
:root[data-theme="dark"] .mod-flag{background:var(--surface-3);color:#8395a6}
:root[data-theme="dark"] .mod-flag.on{background:#22354a;color:#93c1e6}
:root[data-theme="dark"] .ev-card{background:var(--surface-2);border-color:var(--border-2)}
:root[data-theme="dark"] .ev-card>b{color:var(--ink)}

/* ---------- duplicatas ---------- */
.dup-banner{display:flex;align-items:center;gap:13px;background:#fffaf6;border:1px solid #e7c3a8;border-radius:10px;padding:13px 16px;margin-bottom:14px}
.dup-banner .dup-ico{font-size:18px;color:#9d6b3d;flex:none}
.dup-banner>div{flex:1}
.dup-banner b{display:block;font-size:12px;color:#9d5a37}
.dup-banner em{font-style:normal;font-size:10.5px;color:#a07a5a}
.dup-banner .secondary{flex:none}
.dup-pair{border:1px solid #e0e8ed;border-radius:10px;padding:14px;margin:12px 0}
.dup-motivo{font-size:10px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:#9d6b3d;margin-bottom:10px}
.dup-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
.dup-card{background:#fafcfd;border:1px solid #eef3f6;border-radius:8px;padding:11px 12px}
.dup-card b{display:block;font-size:12px;color:#20364a;margin-bottom:5px}
.dup-card em{display:block;font-style:normal;font-size:10px;color:#74879a;margin-bottom:2px}
.dup-tag{display:inline-block;margin-top:6px;font-size:9px;font-weight:600;padding:3px 7px;border-radius:5px;background:#e1eff8;color:#336c94}
.dup-actions{display:flex;gap:8px;flex-wrap:wrap}
.dup-actions .primary,.dup-actions .secondary{margin:0}
:root[data-theme="dark"] .dup-banner{background:#241d17;border-color:#4a3826}
:root[data-theme="dark"] .dup-pair{border-color:var(--border-2)}
:root[data-theme="dark"] .dup-card{background:var(--surface-2);border-color:var(--border-2)}
:root[data-theme="dark"] .dup-card b{color:var(--ink)}

/* ---------- leads: todos / relatórios ---------- */
.todos-head,.todos-row{display:grid;grid-template-columns:1.8fr 1.4fr 1.2fr 1.6fr .8fr;gap:12px;align-items:center;padding:11px 16px}
.todos-head{background:#edf3f6;color:#6c8194;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.todos-row{border-top:1px solid #e0e8ed;font-size:11px;color:#5d7084}
.todos-row b{color:#20364a;font-size:11.5px}
.lr-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.lr-card{background:#fff;border:1px solid #d5e0e7;border-radius:11px;padding:16px 18px;box-shadow:0 2px 7px #24384a0c}
.lr-card h4{font:700 13px Manrope;margin:0 0 12px}
.lr-nums{display:flex;gap:22px;margin-bottom:12px}
.lr-nums span{display:block;font-size:9px;color:#74879a;text-transform:uppercase;letter-spacing:.4px;margin-bottom:4px}
.lr-nums b{font:700 18px Manrope;color:#182a3d}
.lr-bar{display:flex;gap:3px;height:9px}
.lr-bar i{background:#8fb6d1;border-radius:3px;min-width:6px}
:root[data-theme="dark"] .todos-row,:root[data-theme="dark"] .lr-card{background:var(--surface);border-color:var(--border-2)}
:root[data-theme="dark"] .todos-head{background:var(--surface-2);color:var(--muted)}
:root[data-theme="dark"] .todos-row b,:root[data-theme="dark"] .lr-nums b,:root[data-theme="dark"] .lr-card h4{color:var(--ink)}
@media(max-width:900px){.lr-grid{grid-template-columns:1fr}.todos-head,.todos-row{grid-template-columns:1.8fr 1fr .8fr}.todos-head span:nth-child(2),.todos-head span:nth-child(4),.todos-row>span:nth-child(2),.todos-row>span:nth-child(4){display:none}}

/* ---------- editar etapas do funil ---------- */
.etapas-list{border:1px solid #d5e0e7;border-radius:9px;overflow:hidden;margin:6px 0 12px}
.etapa-row{display:flex;align-items:center;gap:9px;padding:9px 12px;border-bottom:1px solid #eef3f6}
.etapa-row:last-child{border:0}
.etapa-drag{color:#b9c6d0;cursor:grab;font-size:12px;flex:none}
.etapa-nome{flex:1;border:1px solid #cbd9e3;border-radius:6px;padding:7px 9px;font:12px 'DM Sans';color:#20364a;outline-color:#89aecf;min-width:0}
.etapa-count{font-size:9.5px;color:#8a9bab;flex:none;white-space:nowrap}
.etapa-row .mini-btn{flex:none;padding:5px 8px;font-size:10px}
.etapa-row .mini-btn b{color:#2e6e9b}
.etapa-up,.etapa-del{border:1px solid #e0e8ed;background:#fff;border-radius:6px;height:28px;width:28px;color:#7d90a2;font-size:12px;flex:none}
.etapa-del:hover{background:#fbe3e6;border-color:#e0a5ad;color:#a8505f}
.gatilho-list{border:1px solid #d5e0e7;border-radius:9px;overflow:hidden;margin:6px 0 14px}
.gatilho-row{display:flex;align-items:center;gap:10px;padding:11px 13px;border-bottom:1px solid #eef3f6}
.gatilho-row:last-child{border:0}
.gatilho-row>div{flex:1;min-width:0}
.gatilho-row b{display:block;font-size:11.5px;color:#20364a}
.gatilho-row em{display:block;font-style:normal;font-size:10px;color:#74879a;margin-top:3px}
.gatilho-form{background:#fafcfd;border:1px solid #e0e8ed;border-radius:9px;padding:13px}
.gatilho-form label{display:block;font-size:10px;font-weight:600;color:#3d617e;margin:8px 0 0}
.gatilho-form label:first-child{margin-top:0}
.gatilho-form select,.gatilho-form input{width:100%;margin-top:4px;padding:8px;border:1px solid #cbd9e3;border-radius:6px;font:12px 'DM Sans';color:#20364a;outline-color:#89aecf}
.gatilho-form .primary{width:100%;margin:12px 0 0}
:root[data-theme="dark"] .etapas-list,:root[data-theme="dark"] .gatilho-list,:root[data-theme="dark"] .gatilho-form{background:var(--surface-2);border-color:var(--border-2)}
:root[data-theme="dark"] .etapa-nome,:root[data-theme="dark"] .gatilho-form select,:root[data-theme="dark"] .gatilho-form input{background:var(--surface-3);border-color:var(--border-2);color:var(--ink)}
:root[data-theme="dark"] .etapa-up,:root[data-theme="dark"] .etapa-del{background:var(--surface-3);border-color:var(--border-2);color:#b9c8d8}
:root[data-theme="dark"] .gatilho-row b,:root[data-theme="dark"] .etapa-nome{color:var(--ink)}

/* ---------- agendar unificado ---------- */
.agd-tipos{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:6px 0 4px}
.agd-tipo{text-align:left;border:1.5px solid #d5e0e7;background:#fff;border-radius:9px;padding:11px 12px}
.agd-tipo b{display:block;font:700 12px Manrope;color:#20364a}
.agd-tipo em{display:block;font-style:normal;font-size:9.5px;color:#74879a;margin-top:3px}
.agd-tipo:hover{border-color:#8fb6d1;background:#f8fbfd}
.agd-tipo.on{border-color:#6f9abe;background:#eef6fb}
.agd-tipo.on b{color:#2e6e9b}
:root[data-theme="dark"] .agd-tipo{background:var(--surface-3);border-color:var(--border-2)}
:root[data-theme="dark"] .agd-tipo b{color:var(--ink)}
:root[data-theme="dark"] .agd-tipo.on{background:#22354a;border-color:#39597a}

/* ---------- baixa manual: seleção de sessões ---------- */
.manual-tag{margin-left:auto;font-size:10px;padding:6px 11px;border-radius:20px;background:#eef3f6;color:#5d7084;border:1px dashed #c6d4de}
.meio-neutro{background:#eef3f6;color:#5d7084;border:1px solid #d5e0e7}
.baixa-wrap{background:#fff;border:1px solid #d5e0e7;border-radius:10px;overflow:hidden;box-shadow:0 2px 7px #24384a0c}
.baixa-toolbar{display:flex;gap:10px;align-items:center;padding:14px 16px;border-bottom:1px solid #e0e8ed;background:#fafcfd;flex-wrap:wrap}
.baixa-toolbar select{height:34px;min-width:270px;border:1px solid #cbd9e3;border-radius:7px;background:#fff;font:11px 'DM Sans';color:#486980;padding:0 8px}
.baixa-toolbar .secondary{padding:8px 11px}
.sel-resumo{margin-left:auto;display:flex;align-items:center;gap:13px;font-size:11px;color:#5d7084}
.sel-resumo strong{font:700 16px Manrope;color:#182a3d}
.baixa-toolbar .primary{margin:0}
.baixa-toolbar .primary:disabled{background:#c3d0da;box-shadow:none;cursor:not-allowed}
.sel-aviso{font-size:10.5px;color:#9d5a37;margin:0;padding:0 16px}
.sel-aviso:not(:empty){padding:9px 16px;background:#fffaf6;border-bottom:1px solid #f2e2d5}
.sess-head,.sess-row{display:grid;grid-template-columns:34px 2.3fr 1fr 1.1fr .9fr;gap:12px;align-items:center;padding:11px 16px}
.sess-head{background:#edf3f6;color:#6c8194;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.sess-row{border-top:1px solid #e0e8ed;font-size:11px;color:#5d7084;cursor:pointer;position:relative}
.sess-row:hover{background:#f4f9fc}
.sess-check{opacity:0;position:absolute;pointer-events:none}
.sess-box{width:17px;height:17px;border:1.5px solid #b6c6d3;border-radius:5px;display:block;position:relative;transition:.12s}
.sess-check:checked+.sess-box{background:#397aa8;border-color:#397aa8}
.sess-check:checked+.sess-box:after{content:"";position:absolute;left:5px;top:1px;width:4px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.sess-check:checked~.sess-pessoa b{color:#2e6e9b}
.sess-pessoa b{display:block;font-size:11.5px;color:#20364a}
.sess-pessoa em{display:block;font-style:normal;font-size:9.5px;color:#74879a;margin-top:3px}

/* ---------- planos financeiros ---------- */
.plano-head,.plano-row{display:grid;grid-template-columns:2.3fr 1.5fr .8fr .9fr 1.2fr 74px;gap:12px;align-items:center;padding:11px 16px}
.plano-head{background:#edf3f6;color:#6c8194;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.plano-row{border-top:1px solid #e0e8ed;font-size:11px;color:#5d7084}
.plano-row.sem{background:#fffaf6}
.plano-row .who{display:flex;align-items:center;gap:10px;min-width:0}
.plano-row .who p{margin:0;min-width:0}
.plano-row .who b{display:block;font-size:11.5px;color:#20364a}
.plano-row .who em{display:block;font-style:normal;font-size:9.5px;color:#74879a;margin-top:3px}
.plano-row.sem .who em{color:#9d5a37}
.mod-sessao{background:#f0ecf9;color:#6a4f9c}
.mod-mensal{background:#dff1e8;color:#2c6b4c}
.reg{font-style:normal;font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px}
.reg-pre{background:#e1eff8;color:#336c94}
.reg-pos{background:#fff0e4;color:#9d5a37}
.desc-cell{color:#2c6b4c;font-weight:600}
.bk{font-style:normal;font-size:9px;font-weight:600;padding:2px 7px;border-radius:4px}
.bk-asaas{background:#e3f2ea;color:#2c6b4c}
.bk-nubank{background:#f0ecf9;color:#6a4f9c}
.bk-neutro{background:#eef3f6;color:#5d7084}
.nf-on{font-style:normal;font-size:9px;font-weight:700;padding:2px 5px;border-radius:4px;background:#e1eff8;color:#2e6e9b;margin-left:4px}
.mini-btn{border:1px solid #cbd9e3;background:#fff;border-radius:6px;padding:6px 10px;font:11px 'DM Sans';color:#3d617e;font-weight:600}
.mini-btn:hover{background:#eef6fa;border-color:#8fb6d1}
.mini-btn.urg{border-color:#e0b596;color:#9d5a37;background:#fff6ef}

/* ---------- matriz de modelos ---------- */
.matriz-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}
.matriz-card{background:#fff;border:1px solid #d5e0e7;border-radius:10px;padding:15px 17px;box-shadow:0 2px 7px #24384a0c}
.matriz-card.rec{border-color:#8dc4a5}
.matriz-card header{display:flex;align-items:center;gap:7px;margin-bottom:10px;flex-wrap:wrap}
.mx-tipo,.mx-regime{font:700 11px Manrope;padding:4px 9px;border-radius:5px}
.mx-tipo{background:#eef3f6;color:#20364a}
.mx-regime{background:#f4f9fc;color:#3d617e;border:1px solid #dde9f0}
.mx-sep{color:#a3b3c0;font-size:11px}
.matriz-card .rec-tag{margin-left:auto}
.mx-como{font-size:10.5px;color:#5d7084;line-height:1.6;margin:0 0 8px}
.mx-venc{font-size:10px;color:#3d617e;margin:0 0 8px;font-weight:600}
.mx-atencao{font-size:10px;color:#74879a;line-height:1.55;margin:0;padding-top:8px;border-top:1px solid #eef3f6}

/* ---------- histórico de baixas ---------- */
.baixa-head,.baixa-row{display:grid;grid-template-columns:.8fr 2.1fr .9fr .7fr .9fr .9fr 1fr;gap:12px;align-items:center;padding:11px 16px}
.baixa-head{background:#edf3f6;color:#6c8194;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.baixa-row{border-top:1px solid #e0e8ed;font-size:11px;color:#5d7084}
.baixa-row b{display:block;color:#20364a;font-size:11.5px}
.baixa-row em{display:block;font-style:normal;font-size:9.5px;color:#74879a;margin-top:3px}
.baixa-row code{background:#eef3f6;border-radius:3px;padding:2px 5px;font-size:9.5px;color:#4f7a9c;font-family:ui-monospace,monospace}

/* ---------- pontas da nota fiscal ---------- */
.nf-head,.nf-row{display:grid;grid-template-columns:1.1fr 2.8fr 1.1fr;gap:12px;align-items:center;padding:11px 16px}
.nf-head{background:#edf3f6;color:#6c8194;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.nf-row{border-top:1px solid #e0e8ed;font-size:11px;color:#5d7084}
.nf-row b{color:#20364a}
.nf-o{line-height:1.6}
.nf-o code{background:#eef3f6;border-radius:3px;padding:1px 5px;font-size:9.5px;color:#2e6e9b;font-family:ui-monospace,monospace}

/* ---------- botão de ausência na agenda ---------- */
.ag-falta{position:absolute;right:6px;bottom:6px;border:1px solid #d7c0ae;background:#fffdfb;color:#9d5a37;border-radius:5px;padding:3px 7px;font:600 9px 'DM Sans';opacity:0;transition:.14s}
.ag-sessao:hover .ag-falta{opacity:1}
.ag-falta:hover{background:#fff0e4;border-color:#c9a184}

/* ---------- formulários dos modais ---------- */
.modal.wide{width:470px;max-width:calc(100vw - 28px);max-height:calc(100vh - 50px);overflow-y:auto}
.modal h2{margin-bottom:4px}
.modal-sub{font-size:11px;color:#62778b;margin:0 0 16px}
.form-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-2 label{margin:13px 0 0}
.hint{display:block;font-style:normal;font-size:9.5px;color:#74879a;margin-top:5px;font-weight:400}
.valor-final{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f4f9fc;border:1px solid #dde9f0;border-radius:8px;padding:12px 14px;margin:15px 0 4px}
.valor-final span{font-size:11px;color:#3d617e;font-weight:600}
.valor-final b{font:700 18px Manrope;color:#182a3d}
.modal .valor-final.grande input{width:150px;flex:none;text-align:right;font:700 17px Manrope;color:#182a3d;border:1px solid #b6cddd;border-radius:7px;padding:7px 10px;margin:0;background:#fff}
.check-line{display:flex!important;align-items:flex-start;gap:9px;margin:16px 0 6px!important;font-weight:400!important;cursor:pointer}
.check-line input{width:auto!important;margin:1px 0 0!important;flex:none}
.check-line span{font-size:11.5px;color:#20364a;font-weight:600;line-height:1.4}
.form-note{font-size:10px;color:#74879a;line-height:1.6;margin:0 0 4px}
.form-note b{color:#5d7084}
.form-note .dif{color:#9d5a37}
.form-note .dif b{color:#9d5a37}
.modal .full{margin-top:18px}
.baixa-sessoes{border:1px solid #dde9f0;border-radius:8px;overflow:hidden;margin:6px 0 8px}
.bx-sess{display:flex;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid #eef3f6;background:#fff}
.bx-sess:last-child{border-bottom:0}
.bx-sess>div{flex:1;min-width:0}
.bx-sess b{display:block;font-size:11.5px;color:#20364a}
.bx-sess em{display:block;font-style:normal;font-size:9.5px;color:#74879a;margin-top:3px}
.modal .bx-valor{width:104px;flex:none;display:block;margin:0;text-align:right;border:1px solid #cbd9e3;border-radius:6px;padding:7px 9px;font:600 12px 'DM Sans';color:#20364a;outline-color:#89aecf}
.aus-opts{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:6px 0 16px}
.aus-opt{border:1.5px solid #d5e0e7;background:#fff;border-radius:9px;padding:13px;text-align:left;transition:.14s}
.aus-opt b{display:block;font:700 13px Manrope;color:#20364a;margin-bottom:5px}
.aus-opt em{display:block;font-style:normal;font-size:10px;color:#74879a;line-height:1.5}
.aus-opt:hover{border-color:#8fb6d1;background:#f8fbfd}
.aus-opt[data-aus="cobrar"].on{border-color:#8fb6d1;background:#eef6fa}
.aus-opt[data-aus="cobrar"].on b{color:#2e6e9b}
.aus-opt[data-aus="isentar"].on{border-color:#8dc4a5;background:#f1f9f4}
.aus-opt[data-aus="isentar"].on b{color:#2c6b4c}
.modal textarea{display:block;width:100%;padding:10px;margin-top:6px;border:1px solid #dfe7ed;border-radius:6px;font:12px 'DM Sans';outline-color:#8baec9;resize:vertical}
.modal .primary.full:disabled{background:#c3d0da;box-shadow:none;cursor:not-allowed}

/* ---------- cobertura / substituição ---------- */
.cov-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}
.cov-sum{background:#fff;border:1px solid #d5e0e7;border-radius:9px;padding:14px 16px;border-left-width:4px;box-shadow:0 2px 7px #24384a0c}
.cov-sum b{display:block;font:700 24px Manrope;letter-spacing:-.8px;color:#182a3d}
.cov-sum span{display:block;font-size:11px;font-weight:600;color:#20364a;margin:3px 0 5px}
.cov-sum em{display:block;font-style:normal;font-size:9.5px;color:#74879a}
.cov-sum.st-pronto{border-left-color:#5aa27c}
.cov-sum.st-esboco{border-left-color:#8fb6d1}
.cov-sum.st-pendente{border-left-color:#c3d0da}
.cov-sum.st-externo{border-left-color:#d98c60}
.cov-head,.cov-row{display:grid;grid-template-columns:1fr .8fr 2.2fr 1.7fr 1.1fr;gap:12px;align-items:center;padding:11px 16px}
.cov-head{background:#edf3f6;color:#6c8194;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.cov-row{border-top:1px solid #e0e8ed;font-size:11px;color:#5d7084}
.cov-row b{color:#20364a;font-weight:600}
.orig{font-size:9px;padding:3px 7px;border-radius:4px;justify-self:start;font-weight:600}
.orig-K{background:#e6ecfb;color:#5b68b4}
.orig-P{background:#e2f1f6;color:#3f8ba6}
.st{font-style:normal;font-size:9px;padding:3px 7px;border-radius:4px;font-weight:600;display:inline-block}
.st.st-pronto{background:#dff1e8;color:#2c6b4c}
.st.st-esboco{background:#e1eff8;color:#336c94}
.st.st-pendente{background:#eef3f6;color:#6c8194}
.st.st-externo{background:#ffeadc;color:#9d5a37}
.dep-block{margin-top:18px}
.dep-row{display:flex;gap:13px;padding:15px 18px;border-bottom:1px solid #e0e8ed;align-items:flex-start}
.dep-row:last-child{border:0}
.dep-risk{font-size:9px;padding:4px 8px;border-radius:5px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;flex:none;min-width:64px;text-align:center}
.risk-crítico,.risk-critico{background:#fbe3e6;color:#a8505f}
.risk-alto{background:#ffefe1;color:#a6683b}
.risk-médio,.risk-medio{background:#e6eef4;color:#4f7a9c}
.dep-row b{font-size:12px;color:#20364a;display:block;margin-bottom:5px}
.dep-row p{font-size:10.5px;color:#5d7084;margin:0;line-height:1.6}
.callout .mark{background:#fff0e4;color:#9d5a37;padding:1px 5px;border-radius:3px;font-size:10px}
.callout code{background:#eef3f6;border-radius:3px;padding:1px 4px;font-size:10px;color:#2e6e9b}
.model-note code{background:#eef3f6;border-radius:3px;padding:1px 4px;font-size:10px;color:#2e6e9b}

/* ---------- responsivo ---------- */
.people-head,.people-row{grid-template-columns:2.1fr 1.4fr .9fr .8fr 1.4fr 1.2fr 30px}

@media(max-width:1250px){
  .crm-kpis,.fin-kpis{grid-template-columns:repeat(3,1fr)}
  .funnel-grid{grid-template-columns:repeat(2,1fr)}
  .cov-summary{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:1050px){
  .people-head,.people-row{grid-template-columns:2.1fr 1.4fr .9fr 1.2fr 30px}
  .cov-head,.cov-row{grid-template-columns:1fr 2.4fr 1.2fr}
  .fin-head,.fin-row{grid-template-columns:.9fr 1.8fr .8fr .9fr}
  .rec-head,.rec-row{grid-template-columns:2.1fr .9fr 1.1fr}
  .sess-head,.sess-row{grid-template-columns:34px 2.3fr .9fr}
  .plano-head,.plano-row{grid-template-columns:2.3fr .9fr 74px}
  .baixa-head,.baixa-row{grid-template-columns:2.1fr .9fr 1fr}
  .nf-head,.nf-row{grid-template-columns:1.1fr 1.1fr}
  .modelos-grid,.matriz-grid{grid-template-columns:1fr}
  .sess-head span:nth-child(3),.sess-head span:nth-child(4),
  .plano-head span:nth-child(2),.plano-head span:nth-child(3),.plano-head span:nth-child(5),
  .baixa-head span:nth-child(1),.baixa-head span:nth-child(3),
  .baixa-head span:nth-child(4),.baixa-head span:nth-child(5),
  .nf-head span:nth-child(2){display:none}
  .nf-o{display:none}
  .people-head span:nth-child(4),.people-head span:nth-child(5),
  .cov-head span:nth-child(2),.cov-head span:nth-child(4),
  .fin-head span:nth-child(3),.fin-head span:nth-child(4),
  .rec-head span:nth-child(2),.rec-head span:nth-child(3),.rec-head span:nth-child(5),
  .hide-md{display:none}
  .api-enums{grid-template-columns:1fr}
  .replace-bar{grid-template-columns:1fr;gap:14px}
  .rep-arrow{transform:rotate(90deg)}
}
@media(max-width:700px){
  .crm-kpis,.fin-kpis{grid-template-columns:repeat(2,1fr);gap:9px}
  .funnel-grid,.cov-summary{grid-template-columns:1fr}
  .sync-bar{flex-wrap:wrap}
  .sync-link{display:none}
  .sync-state{width:100%;margin:0}
  .people-table{overflow-x:auto}
  .people-head,.people-row,.cov-head,.cov-row,.fin-head,.fin-row,.rec-head,.rec-row,
  .sess-head,.sess-row,.plano-head,.plano-row,.baixa-head,.baixa-row{min-width:520px}
  .baixa-wrap{overflow-x:auto}
  .baixa-toolbar{min-width:520px}
  .baixa-toolbar select{min-width:0;flex:1}
  .sel-resumo{margin-left:0;width:100%;justify-content:space-between}
  .form-2,.aus-opts{grid-template-columns:1fr}
  .valor-final.grande input{width:120px}
  .ag-falta{opacity:1}
  .ag-wrap{overflow-x:auto}
  .ag-grid{min-width:620px}
  .drawer{width:100%}
  .dep-row{flex-wrap:wrap}
  .crm-filters{gap:6px}
}
