/* KM Classificador v3.3.1.012.004 — Clientes 360, produtividade e auditoria visual */

/* Branding: título do produto + escritório */
.km-side-brand{align-items:flex-start}
.km-side-brand>div{min-width:0;padding-top:2px}
.km-side-brand strong{font-size:13px;line-height:1.18;color:#f4f8fb;max-width:142px}
.km-side-brand small{display:block;margin-top:5px;color:#9fb4c7;font-size:9px;line-height:1.28;font-weight:650;max-width:142px}

/* Busca Global — ferramenta principal no desktop, compacta no mobile */
@media(min-width:901px){
  .km-global-search-btn{width:clamp(280px,24vw,340px);height:44px;padding:0 13px;border-radius:14px;justify-content:flex-start;transition:width .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}
  .km-global-search-btn .km-search-label{font-size:12px;flex:1;text-align:left}
  .km-global-search-btn:focus-visible,.km-global-search-btn:hover{width:clamp(310px,29vw,420px);border-color:#8fa9bd;box-shadow:0 8px 24px rgba(7,29,49,.11)}
  .theme-dark .km-global-search-btn:focus-visible,.theme-dark .km-global-search-btn:hover{border-color:#4d6a82;box-shadow:0 8px 26px rgba(0,0,0,.24)}
}

/* Clientes como área de primeira classe */
.km-clients-360 .searchline{margin-bottom:12px}
.km-client-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 15px;margin-bottom:12px;border:1px solid var(--line);border-radius:15px;background:var(--card)}
.km-client-toolbar>div:first-child strong{display:block;color:var(--text,var(--ink));font-size:14px}
.km-client-toolbar>div:first-child span{display:block;margin-top:3px;color:var(--muted);font-size:11px;line-height:1.4}
.km-client-toolbar>div:last-child{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.km-client-360-layout{display:grid;grid-template-columns:minmax(270px,.72fr) minmax(0,1.55fr);gap:14px;align-items:start}
.km-clients-360 #clientList{display:grid;gap:8px;max-height:calc(100vh - 285px);overflow:auto;padding-right:2px}
.km-client-360-card{cursor:pointer;grid-template-columns:minmax(0,1fr);gap:10px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,transform .16s ease}
.km-client-360-card:hover{transform:translateY(-1px);border-color:#b9cbd8}
.km-client-360-card.selected{border-color:#c58a43;box-shadow:0 0 0 2px rgba(197,138,67,.12);background:#fffaf3}
.km-client-card-actions{justify-content:flex-start}
.km-client-360-detail{min-width:0;border:1px solid var(--line);border-radius:18px;background:var(--card);padding:16px;box-shadow:0 10px 30px rgba(7,29,49,.04)}
.km-client-empty{min-height:280px;display:grid;place-items:center;align-content:center;text-align:center;color:var(--muted);gap:4px}
.km-client-empty strong{color:var(--text,var(--ink));font-size:16px}
.km-client-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:13px;border-bottom:1px solid var(--line)}
.km-client-detail-head h3{margin:3px 0 2px;font-size:20px;color:var(--text,var(--ink))}
.km-client-detail-head p{margin:0;color:var(--muted);font-size:12px}
.km-client-detail-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.km-c360-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:13px 0}
.km-c360-kpis>div{border:1px solid var(--line);border-radius:12px;background:var(--soft,#f6f9fb);padding:10px;text-align:center}
.km-c360-kpis b{display:block;color:var(--text,var(--ink));font-size:19px}
.km-c360-kpis span{display:block;color:var(--muted);font-size:9px;font-weight:700;margin-top:1px}
.km-c360-tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;margin-bottom:11px;scrollbar-width:thin}
.km-c360-tabs button{flex:0 0 auto;border:1px solid var(--line);background:var(--soft,#f5f8fa);color:var(--muted);border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800;cursor:pointer}
.km-c360-tabs button.active{background:#173954;border-color:#173954;color:#fff}
.km-c360-pane{display:none}.km-c360-pane.active{display:block}
.km-c360-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.km-c360-grid>section,.km-c360-section{border:1px solid var(--line);border-radius:14px;background:var(--soft,#f8fafc);padding:13px}
.km-c360-grid h4,.km-c360-section h4{margin:0 0 9px;font-size:12px;color:var(--text,var(--ink))}
.km-c360-subtitle{margin-top:16px!important;padding-top:12px;border-top:1px solid var(--line)}
.km-c360-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.km-c360-lines{display:grid;gap:0}
.km-c360-lines>div,.km-c360-line{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:11px}
.km-c360-lines>div:last-child,.km-c360-line:last-child{border-bottom:0}
.km-c360-lines span,.km-c360-line span{color:var(--muted);min-width:0;overflow-wrap:anywhere}
.km-c360-lines b,.km-c360-line b{color:var(--text,var(--ink));text-align:right;overflow-wrap:anywhere}
.km-identity-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.km-identity-row:last-child{border-bottom:0}
.km-identity-badge{font-size:8px;font-weight:900;letter-spacing:.04em;padding:4px 6px;border-radius:999px;background:#e9f0f5;color:#456176}
.km-identity-row strong{display:block;font-size:11px;color:var(--text,var(--ink));overflow-wrap:anywhere}
.km-identity-row small{display:block;margin-top:2px;color:var(--muted);font-size:10px}
.km-description-chips{display:flex;gap:6px;flex-wrap:wrap}
.km-description-chips span{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:6px 8px;color:var(--text,var(--ink));font-size:10px}
.km-c360-pairs{display:grid;gap:6px}
.km-c360-pairs>div,.km-c360-rule{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;border:1px solid var(--line);background:var(--card);border-radius:10px;padding:8px 9px;font-size:10px}
.km-c360-pairs span{color:var(--muted)}
.km-c360-rule strong{display:block;color:var(--text,var(--ink));font-size:11px}.km-c360-rule small{display:block;color:var(--muted);margin-top:2px;font-size:9px}
.km-c360-field{display:block}.km-c360-field>span{display:block;font-size:9px;font-weight:850;letter-spacing:.06em;color:var(--muted);margin-bottom:5px}.km-c360-field input{width:100%;box-sizing:border-box;border:1px solid var(--line);background:var(--card);color:var(--text,var(--ink));border-radius:10px;padding:10px 11px;font:inherit}
.km-c360-alt{margin-top:12px;display:grid;gap:5px}.km-c360-alt b{font-size:10px;color:var(--muted)}.km-c360-alt span{font-size:10px;padding:7px 9px;border:1px solid var(--line);border-radius:9px;background:var(--card);overflow-wrap:anywhere}

/* Mesclagem segura */
.km-merge-back{position:fixed;inset:0;z-index:11200;background:rgba(3,15,25,.66);backdrop-filter:blur(6px);display:grid;place-items:center;padding:18px}.km-merge-back.hidden{display:none!important}
.km-merge-modal{width:min(720px,100%);max-height:90dvh;overflow:auto;background:var(--card);color:var(--text,var(--ink));border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 28px 100px rgba(0,0,0,.32)}
.km-merge-modal h3{margin:3px 0 4px;font-size:22px}.km-merge-modal>p{margin:0 0 15px;color:var(--muted);font-size:12px;line-height:1.5}.km-merge-grabber{display:none}
.km-merge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.km-merge-grid .span2{grid-column:1/-1}.km-merge-grid label>span{display:block;color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.06em;margin-bottom:5px}.km-merge-grid select{width:100%;border:1px solid var(--line);background:var(--card);color:var(--text,var(--ink));border-radius:11px;padding:10px 11px}
.km-merge-preview{margin-top:13px;border:1px solid var(--line);border-radius:14px;background:var(--soft,#f7fafc);padding:12px;display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}.km-merge-preview>div:not(.km-merge-arrow) b{display:block;font-size:11px}.km-merge-preview>div:not(.km-merge-arrow) span{display:block;font-size:9px;color:var(--muted);margin-top:2px}.km-merge-arrow{font-size:20px;color:#ba7a35}.km-merge-preview p{grid-column:1/-1;margin:3px 0 0;padding-top:9px;border-top:1px solid var(--line);color:var(--muted);font-size:10px;line-height:1.45}.km-merge-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin-top:15px}

/* Descrição do cliente */
.km-client-desc-cell{min-width:170px;max-width:310px;white-space:normal;line-height:1.38;color:var(--text,var(--ink))}.km-client-desc-cell span:not(.muted){display:block;padding:5px 7px;border-radius:8px;background:#eef6fc;border:1px solid #dceaf3}
.km-client-desc-note,.km-client-desc-modal{display:grid;gap:2px;margin-top:8px;border:1px solid #cbddeb;background:#eef7fd;color:#24465d;border-radius:10px;padding:8px 9px;font-size:10px;line-height:1.4}.km-client-desc-note b,.km-client-desc-modal b{font-size:9px;text-transform:uppercase;letter-spacing:.045em}.km-client-desc-modal{margin:0 0 12px;font-size:12px}

/* Aprendizado — multiseleção e ações em lote */
.km-knowledge-bulk{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;margin:10px 0;padding:10px 11px;border:1px solid var(--line);border-radius:13px;background:var(--soft,#f6f9fb);position:sticky;top:0;z-index:4}
.km-select-all{display:flex;align-items:center;gap:7px;cursor:pointer;color:var(--text,var(--ink));font-size:10px;font-weight:750}.km-select-all input{width:17px;height:17px;accent-color:#1b5d87}
.km-knowledge-selection{display:flex;gap:4px;align-items:baseline;border-left:1px solid var(--line);padding-left:10px;color:var(--muted);font-size:9px}.km-knowledge-selection b{font-size:15px;color:var(--text,var(--ink))}
.km-knowledge-bulk-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.km-knowledge-bulk:not(.has-selection) .km-knowledge-selection{opacity:.65}
.km-knowledge-selectable{grid-template-columns:auto minmax(0,1fr) auto!important;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease}.km-knowledge-selectable.selected{border-color:#c98b42!important;background:#fff9f1!important;box-shadow:0 0 0 2px rgba(201,139,66,.1)}
.km-rule-check{display:grid;place-items:center;align-self:start;padding-top:2px;cursor:pointer}.km-rule-check input{width:18px;height:18px;accent-color:#1b5d87}

/* Auditoria global de contraste no modo escuro */
body.theme-dark{
  --km-surface:#0c1b29;
  --km-surface-2:#102231;
  --km-surface-3:#13283a;
  --km-text:#edf4f9;
  --km-muted:#a9bac9;
  --km-border:#2a4256;
}
body.theme-dark .rule-suite-head,
body.theme-dark .rule-builder-card,
body.theme-dark .rule-library-card,
body.theme-dark .simulator-card,
body.theme-dark .export-editor-card,
body.theme-dark .export-library-card,
body.theme-dark .teach-panel,
body.theme-dark .learned-rule,
body.theme-dark .dc-panel,
body.theme-dark .client-card,
body.theme-dark .knowledge-row,
body.theme-dark .km-client-toolbar,
body.theme-dark .km-client-360-detail,
body.theme-dark .km-c360-grid>section,
body.theme-dark .km-c360-section,
body.theme-dark .km-c360-kpis>div,
body.theme-dark .km-merge-preview,
body.theme-dark .km-knowledge-bulk{background:var(--km-surface)!important;border-color:var(--km-border)!important;color:var(--km-text)!important}
body.theme-dark .rule-suite-head h3,
body.theme-dark .rule-suite-head strong,
body.theme-dark .rule-builder-card h3,
body.theme-dark .rule-builder-card h4,
body.theme-dark .rule-library-card h3,
body.theme-dark .simulator-card h3,
body.theme-dark .export-editor-card h3,
body.theme-dark .export-library-card h3,
body.theme-dark .teach-panel h3,
body.theme-dark .learned-rule strong,
body.theme-dark .client-card strong,
body.theme-dark .knowledge-row strong,
body.theme-dark .km-client-toolbar strong,
body.theme-dark .km-client-detail-head h3,
body.theme-dark .km-c360-grid h4,
body.theme-dark .km-c360-section h4,
body.theme-dark .km-c360-lines b,
body.theme-dark .km-c360-line b,
body.theme-dark .km-c360-kpis b,
body.theme-dark .km-identity-row strong,
body.theme-dark .km-c360-rule strong,
body.theme-dark .km-select-all,
body.theme-dark .km-knowledge-selection b{color:var(--km-text)!important}
body.theme-dark .rule-suite-head p,
body.theme-dark .rule-builder-card p,
body.theme-dark .rule-library-card p,
body.theme-dark .simulator-card p,
body.theme-dark .client-meta,
body.theme-dark .knowledge-meta,
body.theme-dark .km-client-toolbar span,
body.theme-dark .km-client-detail-head p,
body.theme-dark .km-c360-lines span,
body.theme-dark .km-c360-line span,
body.theme-dark .km-identity-row small{color:var(--km-muted)!important}
body.theme-dark .visual-rule-item,
body.theme-dark .export-profile-item,
body.theme-dark .condition-row,
body.theme-dark .km-description-chips span,
body.theme-dark .km-c360-pairs>div,
body.theme-dark .km-c360-rule,
body.theme-dark .km-c360-alt span{background:var(--km-surface-2)!important;border-color:var(--km-border)!important;color:var(--km-text)!important}
body.theme-dark .km-c360-tabs button{background:var(--km-surface-2);border-color:var(--km-border);color:#c5d3df}body.theme-dark .km-c360-tabs button.active{background:#d39750;border-color:#d39750;color:#17212a}
body.theme-dark .km-client-360-card.selected,body.theme-dark .km-knowledge-selectable.selected{background:#2c241a!important;border-color:#b98043!important;box-shadow:0 0 0 2px rgba(201,139,66,.12)}
body.theme-dark .km-client-desc-cell span:not(.muted),body.theme-dark .km-client-desc-note,body.theme-dark .km-client-desc-modal{background:#102b3c;border-color:#28506a;color:#c6e3f4}
body.theme-dark .km-identity-badge{background:#173149;color:#c8d9e7}
body.theme-dark input,body.theme-dark select,body.theme-dark textarea,body.theme-dark .km-c360-field input,body.theme-dark .km-merge-grid select{background:#0b1a27!important;color:#eef5fa!important;border-color:#324a60!important}
body.theme-dark input::placeholder,body.theme-dark textarea::placeholder{color:#7f93a5!important;opacity:1}
body.theme-dark .btn.secondary{background:#13283a;color:#edf4f9;border:1px solid #2c455b}
body.theme-dark .btn.secondary:hover{background:#173149}
body.theme-dark .btn.danger{background:#381d22;color:#ffbcc2;border:1px solid #612d34}
body.theme-dark .mini-tag{background:#183148;color:#d4e2ed}body.theme-dark .mini-tag.off{background:#412126;color:#ffc1c6}body.theme-dark .mini-tag.global{background:#3b2b18;color:#f0cf9c}
body.theme-dark .field-help,body.theme-dark .rule-condition-summary,body.theme-dark .visual-rule-meta,body.theme-dark .export-profile-meta{color:#a8bac9!important}
body.theme-dark .sim-result.success{background:#102e20;border-color:#25563c;color:#bde5cb}body.theme-dark .sim-result.warning{background:#342815;border-color:#604a25;color:#f1d399}body.theme-dark .sim-result.danger{background:#371d22;border-color:#663139;color:#ffc1c5}
body.theme-dark .sim-match{background:#102231;border-color:#2b4357}
body.theme-dark .component input,body.theme-dark .component select{background:#0b1a27;color:#eef5fa;border-color:#324a60}
body.theme-dark .iconbtn{background:#14283a;color:#e6eef5}
body.theme-dark .km-merge-modal{background:#0d1d2b;color:#edf4f9;border-color:#2d465b}
body.theme-dark .km-client-empty strong{color:#edf4f9}

/* Mobile: seis itens de navegação e Clientes 360 sem 'sambar' */
@media(max-width:900px){
  .km-bottom-nav{grid-template-columns:repeat(6,minmax(0,1fr));height:66px;padding:4px}
  .km-mobile-btn{min-width:0;padding-left:2px!important;padding-right:2px!important}
  .km-mobile-btn svg{width:20px!important;height:20px!important}
  .km-mobile-btn span{font-size:8px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
  .km-client-toolbar{display:grid}.km-client-toolbar>div:last-child{justify-content:stretch}.km-client-toolbar .btn{flex:1}
  .km-client-360-layout{grid-template-columns:1fr}
  .km-clients-360 #clientList{max-height:none;overflow:visible}
  .km-client-360-detail{padding:13px}
  .km-client-detail-head{display:grid}.km-client-detail-actions{justify-content:flex-start}.km-client-detail-actions .btn{flex:1}
  .km-c360-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .km-c360-grid{grid-template-columns:1fr}
  .km-knowledge-bulk{grid-template-columns:1fr auto;position:static}.km-knowledge-bulk-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.km-knowledge-bulk-actions .btn{width:100%}
  .km-knowledge-selectable{grid-template-columns:auto minmax(0,1fr)!important}.km-knowledge-selectable .knowledge-actions{grid-column:2;justify-content:flex-start!important}
  .km-merge-back{place-items:end center;padding:0}.km-merge-modal{width:100%;border-radius:24px 24px 0 0;padding:10px 16px calc(18px + env(safe-area-inset-bottom));max-height:calc(100dvh - env(safe-area-inset-top));}.km-merge-grabber{display:block;width:48px;height:5px;border-radius:999px;background:#d2dce4;margin:0 auto 15px}.theme-dark .km-merge-grabber{background:#4b6274}.km-merge-grid{grid-template-columns:1fr}.km-merge-grid .span2{grid-column:auto}.km-merge-preview{grid-template-columns:1fr}.km-merge-arrow{transform:rotate(90deg);justify-self:center}.km-merge-actions{display:grid}.km-merge-actions .btn{width:100%}
  .km-client-desc-cell{min-width:150px}
}

@media(max-width:430px){
  .km-mobile-btn span{font-size:7.4px!important}
  .km-bottom-nav{left:6px;right:6px}
}
