:root{--v218-blue:#252772;--v218-red:#e40e20;--v218-bg:#f6f7fb;--v218-border:#e5e7ef;--v218-text:#171827;--v218-muted:#697084;--v218-ok:#19764b;--v218-warn:#9a6500}
.v218-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:#eef0ff;color:var(--v218-blue);font-size:12px;font-weight:700}
.v218-banner{padding:12px 14px;border:1px solid #d9dcf2;background:#f8f8ff;border-radius:10px;color:#444a63;font-size:13px;margin:0 0 16px}.v218-banner b{color:var(--v218-blue)}
.v218-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.v218-grid.cols3{grid-template-columns:repeat(3,minmax(0,1fr))}.v218-card{background:#fff;border:1px solid var(--v218-border);border-radius:14px;padding:16px}.v218-card h3{margin:0 0 12px;font-size:16px}.v218-card small{color:var(--v218-muted)}
.v218-stat{font-size:30px;font-weight:800;color:var(--v218-blue)}.v218-board{display:grid;grid-template-columns:repeat(5,minmax(220px,1fr));gap:12px;overflow:auto;padding-bottom:8px}.v218-col{background:#f4f5f9;border:1px solid var(--v218-border);border-radius:12px;padding:10px;min-height:260px}.v218-col h4{margin:0 0 10px;font-size:13px}.v218-empty{border:1px dashed #c8cbd8;border-radius:10px;padding:18px;text-align:center;color:var(--v218-muted);font-size:13px}
.v218-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.v218-field{display:flex;flex-direction:column;gap:6px}.v218-field.full{grid-column:1/-1}.v218-field label{font-size:12px;font-weight:700;color:#484d61}.v218-field input,.v218-field select,.v218-field textarea{width:100%;border:1px solid #d8dae5;border-radius:9px;padding:10px 11px;background:#fff;font:inherit}.v218-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v218-check{display:flex;gap:8px;align-items:flex-start;border:1px solid #e7e8ee;border-radius:9px;padding:9px}.v218-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:14px;flex-wrap:wrap}.v218-btn{border:0;border-radius:9px;padding:9px 13px;font-weight:700;cursor:pointer}.v218-btn.primary{background:var(--v218-blue);color:#fff}.v218-btn.secondary{background:#eef0f5;color:#25283a}.v218-btn.danger{background:#fff0f0;color:#b51f1f}.v218-btn:disabled{opacity:.5;cursor:not-allowed}.v218-table{width:100%;border-collapse:collapse;font-size:13px}.v218-table th,.v218-table td{text-align:left;border-bottom:1px solid #eceef3;padding:10px}.v218-pill{display:inline-flex;padding:4px 8px;border-radius:999px;background:#f1f2f7;font-size:11px;font-weight:700}.v218-pill.warn{background:#fff5da;color:#805600}.v218-pill.ok{background:#e9f7ef;color:#17683e}.v218-pill.red{background:#fdeaea;color:#a82020}
.v218-fin-preview{margin-top:10px;border:1px solid #dfe2f3;border-radius:12px;background:#fafaff;padding:12px}.v218-fin-preview strong{display:block;color:var(--v218-blue);margin-bottom:5px}.v218-fin-preview[data-state="over"]{border-color:#efb3b3;background:#fff7f7}.v218-fin-preview[data-state="over"] strong{color:#b62323}.v218-remap{margin-top:10px;padding:10px;border-radius:10px;background:#fff6df;border:1px solid #f0d08b;color:#745100}.v218-hidden{display:none!important}.v218-settings-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid #eceef3}.v218-switch{position:relative;width:48px;height:26px;border-radius:99px;background:#aaa;cursor:pointer}.v218-switch input{opacity:0;width:0;height:0}.v218-switch i{position:absolute;width:20px;height:20px;background:#fff;border-radius:50%;top:3px;left:3px;transition:.2s}.v218-switch.on{background:var(--v218-ok)}.v218-switch.on i{left:25px}.v218-ai-status{display:flex;gap:8px;align-items:center}.v218-ai-dot{width:9px;height:9px;border-radius:50%;background:var(--v218-ok)}
.v218-exception{margin-top:14px;padding:14px;border:1px solid #f0c7c7;background:#fff8f8;border-radius:12px}.v218-exception h4{margin:0 0 8px;color:#8f1b1b}.v218-exception .v218-form{margin-top:10px}
@media(max-width:900px){.v218-grid,.v218-grid.cols3,.v218-form{grid-template-columns:1fr}.v218-field.full{grid-column:1}.v218-checks{grid-template-columns:1fr}.v218-board{grid-template-columns:repeat(5,260px)}}

/* R8 — controle explícito ON/OFF Gemini */
.v218-ai-toggle{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.v218-ai-toggle-btn{min-width:130px;border:1px solid #cfd3df;background:#fff;color:#3f4556;border-radius:10px;padding:10px 14px;font-weight:800;cursor:pointer;transition:.15s}.v218-ai-toggle-btn:hover{border-color:var(--v218-blue)}.v218-ai-toggle-btn.active{background:var(--v218-ok);border-color:var(--v218-ok);color:#fff}.v218-ai-toggle-btn.active.off{background:#b42318;border-color:#b42318;color:#fff}


/* ===== CRM 2.18 R15 — estrutura aprovada: Faturamento/Recebimento dentro do Lead ===== */
.crm-card-service-type{font-size:11px;color:#667085;margin:-3px 0 7px;font-weight:600}
.crm-financial-flow{display:grid;gap:12px;margin-top:14px}
.crm-flow-steps{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 12px;border:1px solid #e4e7ec;border-radius:10px;background:#fff}
.crm-flow-steps span{padding:5px 10px;border-radius:999px;background:#f2f4f7;color:#667085;font-size:11px;font-weight:700}
.crm-flow-steps span.done{background:#ecfdf3;color:#027a48}.crm-flow-steps span.active{background:#eef0ff;color:#252772}.crm-flow-steps i{font-style:normal;color:#98a2b3}
.crm-stage-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 12px}
.crm-stage-summary>div,.crm-read-grid>div{border:1px solid #e4e7ec;border-radius:9px;padding:10px;background:#fff;min-width:0}.crm-stage-summary small,.crm-read-grid small{display:block;color:#667085;font-size:10px;margin-bottom:4px}.crm-stage-summary b,.crm-read-grid b{display:block;overflow-wrap:anywhere}
.crm-fin-stage{margin:0}.crm-fin-stage.is-locked{background:#f8f9fb}.crm-fin-stage.is-locked .panel-head,.crm-fin-stage.is-locked .panel-body{opacity:.72}
.crm-read-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.crm-read-grid .wide{grid-column:1/-1}.crm-read-grid a,.crm-doc-read a{color:#252772;font-weight:700;text-decoration:none}.crm-read-grid a:hover,.crm-doc-read a:hover{text-decoration:underline}
.crm-doc-checklist{display:grid;gap:7px}.crm-doc-row{display:block;border:1px solid #e4e7ec;border-radius:9px;padding:9px 10px;background:#fff}.crm-doc-row>span{display:block}.crm-doc-fields{display:grid;grid-template-columns:180px 1fr;gap:8px;margin-top:8px}.crm-doc-fields.is-hidden{display:none}.crm-doc-fields input{width:100%}
.crm-doc-read{display:grid;gap:7px}.crm-doc-read>div{display:grid;grid-template-columns:minmax(130px,1fr) minmax(120px,1fr) auto;gap:10px;align-items:center;padding:8px 10px;border:1px solid #e4e7ec;border-radius:8px;background:#fff}.crm-doc-read span{color:#667085}
.crm-receipt-lock{display:grid;justify-items:center;gap:5px;text-align:center;padding:20px;color:#667085}.crm-receipt-lock>b{color:#344054}.crm-receipt-lock span{max-width:620px;font-size:12px}
.crm-retention-toggle{border:1px dashed #d0d5dd;border-radius:8px;padding:9px}
@media(max-width:820px){.crm-stage-summary{grid-template-columns:1fr 1fr}.crm-doc-fields{grid-template-columns:1fr}.crm-read-grid{grid-template-columns:1fr}.crm-doc-read>div{grid-template-columns:1fr}}

/* 2.19.1: correção sem alteração estrutural adicional de CSS */

/* 2.19.2 — pré-readequação */
.v2192-readequacao{margin-top:10px;padding:12px;border:1px solid #e7b53a;border-radius:10px;background:#fff9e8}
.v2192-readequacao h4{margin:0 0 7px;color:#6e5200}
.v2192-readequacao p{margin:0 0 10px}
.v2192-grid{display:grid;grid-template-columns:2fr 1fr;gap:10px}
.v2192-grid label{display:flex;flex-direction:column;gap:5px;font-weight:700;font-size:12px}
.v2192-grid select,.v2192-grid input{width:100%;padding:9px;border:1px solid #d9dde5;border-radius:8px;background:#fff}
.v2192-summary{margin:10px 0;padding:9px;border-radius:8px;background:#fff;border:1px solid #ead9a8}
.readequacao-vedadas-list{max-height:240px;overflow:auto;border:1px solid #dfe3eb;border-radius:8px;padding:8px;background:#fafbfc}
.readequacao-vedadas-list label{display:flex;align-items:center;gap:7px;padding:5px 3px}
@media(max-width:900px){.v2192-grid{grid-template-columns:1fr}}
