/* CRM interno | Instituto Harmonizare: sistema visual herdando as variáveis do site. */
.crm-page{background:var(--bg);color:var(--ink)}
.crm-page .header{z-index:70}
.crm-page .header nav{gap:clamp(9px,1.35vw,20px)}
.crm-page .header nav a{font-size:clamp(10px,.82vw,12px)}
.crm-page .head-actions .btn.small{white-space:nowrap}
.crm-main{min-height:calc(100vh - 170px);padding:46px clamp(18px,5.4vw,100px) 75px}
.crm-workspace{width:100%;max-width:1680px;margin:0 auto}
.crm-workspace[hidden],.crm-check[hidden],.crm-dialog [hidden]{display:none!important}
.crm-check{display:grid;gap:12px;text-align:center;place-content:center;min-height:65vh}
.crm-check .crm-mark{display:grid;place-items:center;margin:auto;width:56px;height:56px;border:1px solid var(--gold);border-radius:50%;font:30px Georgia,serif;color:var(--gold)}
.crm-check small{color:var(--gold);font-size:10px;letter-spacing:2px}
.crm-check h1{font:500 40px Georgia,serif;margin:0}
.crm-check p{font-size:13px;color:var(--muted);margin:0}
.crm-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:37px}
.crm-eyebrow{display:flex;align-items:center;gap:10px;letter-spacing:2.2px;font-size:9px;font-weight:800;color:var(--gold)}
.crm-eyebrow-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.crm-eyebrow-line{display:inline-block;width:22px;height:1px;background:var(--line)}
.crm-heading h1{font:500 clamp(38px,4vw,62px)/1.1 'Playfair Display',Georgia,serif;margin:12px 0}
.crm-heading h1 em{font-weight:500;color:var(--gold)}
.crm-heading p,.crm-board-heading p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}
.crm-heading-actions,.crm-form-action-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.crm-button{border-radius:12px;min-height:43px;padding:0 19px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:12px;font-weight:750;white-space:nowrap;transition:background .2s,border-color .2s,transform .2s;cursor:pointer}
.crm-button:hover:not(:disabled){transform:translateY(-1px)}
.crm-button:disabled{opacity:.45;cursor:not-allowed}
.crm-button span{font-size:19px;font-weight:400}
.crm-primary{color:#1e170f;background:linear-gradient(110deg,#e9c389,#c69a57);border:1px solid #d9ab6d}
.crm-outline{color:var(--ink);background:var(--paper);border:1px solid var(--line)}
.crm-outline:hover{border-color:var(--gold)}
.crm-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:25px}
.crm-metrics article{border:1px solid var(--line);border-radius:17px;background:var(--paper);padding:18px 20px;min-width:0;min-height:126px;display:flex;flex-direction:column;justify-content:space-between}
.crm-metrics article.crm-metric-alert{border-color:color-mix(in srgb,#d0a165 50%,var(--line));background:linear-gradient(135deg,var(--paper),color-mix(in srgb,var(--gold) 7%,var(--paper)))}
.crm-metric-label{display:flex;align-items:flex-start;gap:7px;justify-content:space-between}
.crm-metric-label>span:first-child{font-size:9px;letter-spacing:1.2px;font-weight:800;color:var(--muted);line-height:1.45}
.crm-metric-icon{font-size:21px;color:var(--gold);line-height:1;opacity:.9}
.crm-metrics strong{display:block;font:500 34px/1.1 'Playfair Display',Georgia,serif;color:var(--ink);margin-top:9px}
.crm-metrics small{font-size:10px;color:var(--muted);line-height:1.45}
.crm-board{border:1px solid var(--line);border-radius:20px;background:var(--paper);overflow:hidden}
.crm-board-heading{padding:28px 30px 22px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.crm-board-heading h2{margin:8px 0 5px;font:500 30px 'Playfair Display',Georgia,serif}
.crm-refresh{display:flex;align-items:center;gap:6px;color:var(--gold);background:none;border:1px solid var(--line);border-radius:10px;padding:9px 13px;font-size:12px}
.crm-refresh:hover{background:var(--paper2)}
.crm-filters{display:grid;grid-template-columns:minmax(235px,2fr) repeat(4,minmax(125px,1fr));gap:12px;padding:0 30px 22px}
.crm-filters label,.crm-form label{display:grid;gap:8px;min-width:0}
.crm-field-label{font-size:9px;font-weight:800;letter-spacing:1px;color:var(--muted)}
.crm-filters input,.crm-filters select,.crm-form input,.crm-form select,.crm-form textarea{outline:none;color:var(--ink);border:1px solid var(--line);background:var(--paper2);border-radius:10px;min-height:42px;padding:10px 12px;width:100%;min-width:0;font-size:12px;transition:border-color .2s,box-shadow .2s}
.crm-filters input:focus,.crm-filters select:focus,.crm-form input:focus,.crm-form select:focus,.crm-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 12%,transparent)}
.crm-filters input::placeholder,.crm-form input::placeholder,.crm-form textarea::placeholder{color:var(--muted);opacity:.72}
.crm-search-wrapper{display:flex;align-items:center;position:relative}
.crm-search-wrapper>span{position:absolute;left:13px;font-size:22px;color:var(--gold);pointer-events:none}
.crm-search-wrapper>input{padding-left:38px}
.crm-filters select,.crm-form select,.crm-status-select{color-scheme:light dark}
.crm-board-subline{border-top:1px solid var(--line);padding:14px 30px;display:flex;justify-content:space-between;align-items:center;gap:10px;background:color-mix(in srgb,var(--paper2) 55%,var(--paper))}
.crm-board-subline>span{color:var(--muted);font-size:11px}
.crm-text-button{font-size:11px;background:transparent;border:0;color:var(--gold);font-weight:750;padding:3px 0}
.crm-text-button:hover{text-decoration:underline}
.crm-table-wrap{overflow-x:auto;width:100%;overscroll-behavior-x:contain}
.crm-table{width:100%;border-collapse:collapse;text-align:left;min-width:1320px;table-layout:auto}
.crm-table th{background:var(--paper2);color:var(--muted);padding:15px 14px;white-space:nowrap;font-size:9px;text-transform:uppercase;letter-spacing:.7px;font-weight:800;border-bottom:1px solid var(--line)}
.crm-table th:first-child,.crm-table td:first-child{padding-left:30px}
.crm-table th:last-child,.crm-table td:last-child{padding-right:30px;text-align:right}
.crm-table td{font-size:11px;padding:16px 14px;border-bottom:1px solid var(--line);color:var(--ink);vertical-align:middle;max-width:230px}
.crm-table tbody tr:last-child td{border-bottom:0}
.crm-table tbody tr:hover{background:color-mix(in srgb,var(--gold) 3%,var(--paper))}
.crm-nowrap{white-space:nowrap}
.crm-customer{display:flex;align-items:center;gap:10px;min-width:170px}
.crm-avatar{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:11px;background:color-mix(in srgb,var(--gold) 12%,var(--paper2));color:var(--gold);font-size:15px;font-weight:700}
.crm-customer>div{min-width:0;display:grid;gap:4px}
.crm-customer strong{font-weight:800;font-size:12px}
.crm-customer small{font-size:9px;color:var(--muted)}
.crm-customer .crm-priority-high{color:#d59468}
.crm-muted{color:var(--muted)!important;font-size:11px}
.crm-phone{color:var(--gold);white-space:nowrap;font-weight:700}
.crm-phone span{font-size:12px;margin-left:5px}
.crm-phone:hover{text-decoration:underline}
.crm-procedure{display:inline-block;background:var(--paper2);border:1px solid var(--line);padding:6px 9px;border-radius:7px;line-height:1.4;white-space:normal}
.crm-status-select{display:block;min-width:159px;width:100%;border-radius:8px;padding:8px 27px 8px 9px;border:1px solid var(--line);background:var(--paper2);color:var(--ink);font-size:10px;font-weight:700;outline:none;cursor:pointer}
.crm-status-select.s-novo{color:#b98c5b;border-color:color-mix(in srgb,#b98c5b 40%,var(--line))}
.crm-status-select.s-acompanhamento{color:#80a9df;border-color:color-mix(in srgb,#80a9df 40%,var(--line))}
.crm-status-select.s-aguardando{color:#cea06f;border-color:color-mix(in srgb,#cea06f 40%,var(--line))}
.crm-status-select.s-agendado{color:#ab9be1;border-color:color-mix(in srgb,#ab9be1 40%,var(--line))}
.crm-status-select.s-atendido{color:#70b28c;border-color:color-mix(in srgb,#70b28c 40%,var(--line))}
.crm-status-select.s-nao_interessado{color:var(--muted)}
.crm-followup{display:inline-flex;align-items:center;white-space:nowrap;font-weight:700}
.crm-due-overdue{color:#e78c7a}
.crm-due-today{color:#d6a150}
.crm-note{display:block;min-width:90px;max-width:195px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}
.crm-edit{border:1px solid var(--line);background:transparent;color:var(--gold);border-radius:9px;padding:9px 12px;font-size:10px;font-weight:750;white-space:nowrap}
.crm-edit:hover{border-color:var(--gold);background:var(--paper2)}
.crm-edit span{padding-left:5px}
.crm-loading{text-align:center;padding:55px 18px!important;color:var(--muted)!important}
.crm-empty{display:flex;flex-direction:column;align-items:center;gap:7px;padding:45px 15px;text-align:center}
.crm-empty span{display:grid;place-items:center;width:55px;height:55px;border-radius:50%;background:var(--paper2);color:var(--gold);font-size:24px;margin-bottom:10px}
.crm-empty strong{font:500 22px 'Playfair Display',serif}
.crm-empty p{font-size:12px;color:var(--muted);margin:0}
.crm-pagination{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid var(--line);padding:16px 30px}
.crm-pagination>span,.crm-pagination>div>span{font-size:11px;color:var(--muted)}
.crm-pagination>div{display:flex;gap:14px;align-items:center}
.crm-pagination button{border:1px solid var(--line);background:var(--paper2);border-radius:8px;width:32px;height:32px;color:var(--ink)}
.crm-pagination button:disabled{opacity:.35;cursor:not-allowed}
.crm-confidential{margin:20px 0 0;text-align:center;font-size:10px;color:var(--muted)}
.crm-dialog{width:min(790px,calc(100vw - 24px));max-height:min(90vh,960px);padding:0;background:var(--paper);border:1px solid var(--line);color:var(--ink);border-radius:20px;box-shadow:0 30px 100px rgba(0,0,0,.43);overflow-y:auto}
.crm-dialog::backdrop{background:rgba(7,6,4,.68);backdrop-filter:blur(5px)}
.crm-dialog-header{position:sticky;top:0;z-index:3;display:flex;justify-content:space-between;align-items:flex-start;gap:15px;background:var(--paper);border-bottom:1px solid var(--line);padding:25px 30px 21px}
.crm-dialog-header small{font-weight:800;letter-spacing:1.8px;color:var(--gold);font-size:9px}
.crm-dialog-header h2{font:500 30px 'Playfair Display',serif;margin:9px 0 6px}
.crm-dialog-header p{color:var(--muted);font-size:12px;margin:0}
.crm-dialog-close{width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;border:1px solid var(--line);background:var(--paper2);border-radius:9px;font-size:23px}
.crm-dialog-close:hover{border-color:var(--gold)}
.crm-form{padding:22px 30px 26px}
.crm-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.crm-form-grid>.crm-form-wide{grid-column:1 / -1}
.crm-form label>span{font-size:10px;font-weight:750;color:var(--ink)}
.crm-form label>span b{color:var(--gold)}
.crm-form textarea{min-height:115px;resize:vertical;line-height:1.55}
.crm-history{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}
.crm-history-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.crm-history-heading h3{font-size:14px;margin:0 0 14px}
.crm-history-heading small{font-size:10px;color:var(--muted)}
#crmHistoryList{display:grid;gap:9px;max-height:210px;overflow-y:auto}
.crm-history-event{border:1px solid var(--line);background:var(--paper2);border-radius:10px;padding:11px 13px}
.crm-history-event>div{display:flex;justify-content:space-between;gap:12px;align-items:center}
.crm-history-event strong{font-size:11px}
.crm-history-event time{font-size:10px;color:var(--muted)}
.crm-history-event p{font-size:11px;line-height:1.5;margin:5px 0 0;color:var(--muted);overflow-wrap:anywhere}
.crm-form-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:25px;padding-top:21px}
.crm-delete{font-size:11px;color:#de8b83;background:transparent;border:0;padding:9px 0}
.crm-delete:hover{text-decoration:underline}
.crm-form-actions:has(.crm-delete[hidden]) .crm-form-action-group{margin-left:auto}
.crm-toast{position:fixed;z-index:300;right:25px;bottom:25px;max-width:min(420px,calc(100vw - 36px));border-radius:12px;border:1px solid var(--line);background:var(--paper2);color:var(--ink);font-size:12px;padding:14px 18px;box-shadow:0 10px 40px rgba(0,0,0,.3);opacity:0;pointer-events:none;transform:translateY(15px);transition:opacity .22s,transform .22s}
.crm-toast.visible{opacity:1;transform:none}
.crm-toast[data-kind="error"]{border-color:#ae6c67;color:#d88d84}
@media(max-width:1320px){.crm-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.crm-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.crm-filter-search{grid-column:span 2}}
@media(max-width:1080px){.crm-page .header nav{gap:14px}.crm-page .header nav a{font-size:12px}}
@media(max-width:760px){
 .crm-main{padding:28px 14px 48px}
 .crm-heading{align-items:flex-start;flex-direction:column;gap:19px;margin-bottom:24px}
 .crm-heading h1{font-size:42px}.crm-heading p{font-size:12px}
 .crm-heading-actions{width:100%}.crm-heading-actions .crm-button{flex:1}
 .crm-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .crm-metrics article{min-height:112px;padding:13px 14px}.crm-metrics strong{font-size:30px}
 .crm-metric-label>span:first-child{font-size:8px}.crm-metrics small{font-size:9px}
 .crm-board{border-radius:14px}.crm-board-heading{padding:22px 16px 18px}.crm-board-heading h2{font-size:25px}
 .crm-refresh{padding:8px}.crm-refresh span{display:none}
 .crm-filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 16px 18px;gap:11px}.crm-filter-search{grid-column:span 2}
 .crm-field-label{font-size:8px}.crm-board-subline{padding:12px 16px}
 .crm-table{min-width:0}.crm-table thead{display:none}.crm-table tbody{display:block}
 .crm-table tbody tr{display:grid;grid-template-columns:1fr 1fr;padding:14px;border-bottom:1px solid var(--line);gap:12px}
 .crm-table tbody tr:last-child{border-bottom:0}
 .crm-table tbody td{display:grid;padding:0!important;border:0;max-width:100%;font-size:11px;min-width:0;text-align:left!important;gap:5px}
 .crm-table tbody td::before{content:attr(data-label);font-size:8px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--muted)}
 .crm-table tbody td:first-child{grid-column:1 / -1}
 .crm-table tbody td:first-child:before{display:none}
 .crm-table tbody td:nth-child(5),.crm-table tbody td:nth-child(6),.crm-table tbody td:nth-child(10){grid-column:1 / -1}
 .crm-table tbody td:last-child{grid-column:1 / -1;text-align:left}
 .crm-table tbody td:last-child::before{display:none}
 .crm-table tbody td[colspan]{display:block;grid-column:1/-1}
 .crm-customer{min-width:0}.crm-customer strong{font-size:14px}
 .crm-status-select{min-width:0;width:100%;font-size:11px}
 .crm-note{max-width:100%;white-space:normal;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
 .crm-edit{width:100%;padding:11px}.crm-pagination{padding:14px 16px}
 .crm-dialog{max-height:94vh;border-radius:15px}.crm-dialog-header{padding:22px 17px 16px}.crm-form{padding:18px 17px 22px}
}
@media(max-width:470px){.crm-form-grid{grid-template-columns:1fr;gap:13px}.crm-form-grid>.crm-form-wide{grid-column:auto}.crm-form-actions{align-items:stretch;flex-direction:column-reverse}.crm-form-action-group{width:100%}.crm-form-action-group .crm-button{flex:1}.crm-delete{text-align:center}.crm-pagination>span{font-size:9px}}

/* v102: composição compacta, sem os títulos introdutórios nem o indicador de retornos. */
.crm-heading{margin-bottom:27px}
.crm-heading h1{margin:0}
.crm-board-heading{padding:16px 30px 12px;justify-content:flex-end}
@media(max-width:760px){.crm-board-heading{padding:13px 16px 10px}}

/* CRM 103: ações de exclusão e gerenciamento discreto do rodízio do bot. */
.crm-row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;white-space:nowrap}
.crm-remove{border:1px solid rgba(191,85,75,.5);background:transparent;color:#d88a82;border-radius:9px;padding:9px 11px;font-size:10px;font-weight:700;cursor:pointer}
.crm-remove:hover{background:rgba(191,85,75,.10);border-color:#d88a82}
.crm-bot-dialog{width:min(790px,calc(100vw - 24px))}
.crm-bot-content{padding:24px 30px 30px}
.crm-bot-list{display:grid;gap:8px;max-height:40vh;overflow-y:auto;margin-bottom:24px}
.crm-bot-person{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--paper2)}
.crm-bot-position{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:7px;background:var(--paper);color:var(--gold);font-size:12px;font-weight:700}
.crm-bot-person-info{display:grid;gap:3px;min-width:100px;flex:1}
.crm-bot-person-info strong{font-size:12px}
.crm-bot-person-info span{font-size:10px;color:var(--muted)}
.crm-bot-tools{display:flex;gap:5px;flex-wrap:wrap}
.crm-bot-tools button{padding:8px 10px;border-radius:7px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:10px;cursor:pointer}
.crm-bot-tools button:disabled{opacity:.35;cursor:default}
.crm-bot-tools button:not(:disabled):hover{border-color:var(--gold)}
.crm-bot-form{display:grid;gap:14px;border-top:1px solid var(--line);padding-top:20px}
.crm-bot-form h3{font-size:14px;margin:0}
.crm-bot-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.crm-bot-inputs label{display:grid;gap:7px;font-size:11px;font-weight:600}
.crm-bot-inputs input{width:100%;border:1px solid var(--line);background:var(--paper2);color:var(--ink);border-radius:9px;padding:12px;font:inherit}
.crm-bot-footer{display:flex;justify-content:flex-end;gap:10px}
@media(max-width:670px){.crm-bot-person{flex-wrap:wrap}.crm-bot-tools{width:100%;justify-content:flex-end}.crm-bot-inputs{grid-template-columns:1fr}.crm-bot-content{padding:20px}}

.crm-heading-actions [hidden]{display:none!important}
