/* Controle de Qualidade e Inovação (mock à parte). Tokens do Nexus nos dois temas. Prefixo cq-. */
.cq-pagina { margin: 0; background: var(--nx-bg); color: var(--nx-ink); font-family: var(--nx-ff); -webkit-font-smoothing: antialiased; }
.cq-pagina *, .cq-pagina *::before, .cq-pagina *::after { box-sizing: border-box; }
.cq { display: grid; grid-template-columns: 264px minmax(0, 1fr); min-height: 100vh; transition: grid-template-columns 0.2s ease; }
.cq-rail { position: sticky; top: 0; display: flex; flex-direction: column; height: 100vh; overflow-y: auto; background: var(--nx-navy-900, #0b2230); color: #b9cad0; isolation: isolate; }
/* A marca do sistema (o globo em rede do GEO3X) atrás do menu, como no GEO3X (pedido da dona, 10/11/2026). */
.cq-rail::after { position: absolute; bottom: -36px; left: -96px; z-index: -1; width: 300px; aspect-ratio: 847 / 946; background: url("../comum/marca/pin-sistema.png") no-repeat center / contain; opacity: 0.07; filter: grayscale(0.2); content: ""; pointer-events: none; }
[data-theme=dark] .cq-rail::after { opacity: 0.09; }
.cq-rail__topo { display: flex; align-items: flex-start; justify-content: space-between; }
.cq-rail__marca { display: grid; flex: 1; gap: 8px; min-width: 0; padding: 20px 18px 14px; color: #fff; text-decoration: none; }
.cq-rail__simbolo { display: none; }
.cq-rail__recolher { display: grid; flex: none; width: 28px; height: 28px; margin: 20px 12px 0 0; border: 0; border-radius: 8px; background: rgba(255, 255, 255, 0.06); color: #a7bbc1; cursor: pointer; place-items: center; }
.cq-rail__recolher:hover { background: rgba(255, 255, 255, 0.14); color: #fff; }
.cq-rail__marca span { color: #8fb3bd; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; line-height: 1.35; text-transform: uppercase; }
.cq-rail__nav { display: grid; flex: 1; align-content: start; gap: 1px; padding: 0 10px 12px; }
.cq-rail__grupo { display: flex; gap: 10px; align-items: center; width: 100%; margin: 6px 0 0; padding: 9px 10px; border: 0; border-radius: 9px; background: none; color: #dbe7ea; font: inherit; font-size: 12.6px; font-weight: 650; text-align: left; text-decoration: none; cursor: pointer; }
.cq-rail__grupo span { flex: 1; min-width: 0; line-height: 1.3; }
.cq-rail__grupo:hover { background: rgba(255, 255, 255, 0.06); color: #fff; }
.cq-rail__grupo > .pi:first-child { color: #7fa3ad; }
.cq-rail__grupo--on > .pi:first-child { color: var(--nx-teal-300); }
.cq-rail__grupo--trava { color: #8fa6ad; }
.cq-rail__seta { color: #6f8a90; font-size: 11px; transition: transform 0.18s ease; }
.cq-rail__grupo[aria-expanded="true"] .cq-rail__seta { transform: rotate(180deg); }
.cq-rail__sub { display: grid; gap: 1px; margin: 1px 0 4px 17px; padding-left: 8px; border-left: 1px solid rgba(255, 255, 255, 0.1); }
.cq-rail__sub[hidden] { display: none; }
.cq-rail__sub .cq-rail__item { padding: 7px 10px; font-size: 12.4px; }
.cq-rail__item { display: flex; gap: 10px; align-items: center; padding: 8px 10px; border-radius: 9px; color: #a7bbc1; font-size: 12.8px; text-decoration: none; }
.cq-rail__item:hover { background: rgba(255, 255, 255, 0.06); color: #fff; }
.cq-rail__item--on { background: color-mix(in srgb, var(--nx-teal-500) 20%, transparent); color: #fff; font-weight: 600; }
.cq-rail__item--on .pi { color: var(--nx-teal-300); }
.cq-rail__quem { position: relative; display: flex; gap: 10px; align-items: center; margin: 8px 10px 14px; padding: 10px; border-radius: 12px; background: rgba(255, 255, 255, 0.05); cursor: pointer; }
.cq-rail__quem span:nth-child(2) { display: grid; min-width: 0; }
.cq-rail__quem b { overflow: hidden; color: #fff; font-size: 12.5px; text-overflow: ellipsis; white-space: nowrap; }
.cq-rail__quem small { overflow: hidden; color: #8aa3a9; font-size: 10.5px; text-overflow: ellipsis; white-space: nowrap; }
.cq-rail__quem select { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.cq-avatar { display: grid; flex: none; width: 32px; height: 32px; border-radius: 50%; background: var(--nx-teal-600); color: #fff; font-size: 11.5px; font-weight: 700; place-items: center; }
.cq-conteudo { min-width: 0; }
.cq-topo { position: sticky; top: 0; z-index: 5; display: flex; gap: 12px; align-items: center; min-height: 52px; padding: 8px 24px; border-bottom: 1px solid var(--nx-line); background: color-mix(in srgb, var(--nx-surface) 92%, transparent); backdrop-filter: blur(8px); }
.cq-topo__tit { display: grid; flex: 1; min-width: 0; }
.cq-topo__tit small { overflow: hidden; color: var(--nx-ink-3); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.cq-topo__tit b { overflow: hidden; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.cq-cortina { display: none; }
.cq-corpo { display: grid; gap: 16px; max-width: 1360px; padding: 22px 24px 48px; }
.cq-cab { display: flex; flex-wrap: wrap; gap: 12px 20px; align-items: flex-end; justify-content: space-between; }
.cq-cab h1 { margin: 0 0 4px; font-size: 22px; letter-spacing: -0.02em; }
.cq-cab p { max-width: 820px; margin: 0; color: var(--nx-ink-2); font-size: 13px; line-height: 1.55; }
.cq-cab__acoes { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.cq-sel { display: inline-flex; gap: 8px; align-items: center; color: var(--nx-ink-3); font-size: 12px; }
/* Barra de filtros de uma tela (fichas): os campos com o rótulo em cima, todos na mesma linha de base. */
.cq-ferramentas { display: flex; flex-wrap: wrap; gap: 10px 12px; align-items: flex-end; padding: 12px 14px; }
.cq-ferramentas > .nx-btn { margin-left: auto; }
.cq-campo { display: grid; flex: 1 1 160px; gap: 4px; min-width: 0; }
.cq-campo--largo { flex: 2 1 260px; } .cq-campo--curto { flex: 0 1 96px; }
.cq-campo small { color: var(--nx-ink-3); font-size: 10.5px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
.cq-campo .nx-select { width: 100%; }
.cq-card { min-width: 0; }
.cq-card__cab { display: flex; gap: 12px; align-items: center; justify-content: space-between; padding: 14px 16px 8px; }
.cq-card__cab h2 { margin: 0; font-size: 14.5px; }
.cq-card__cab p { margin: 2px 0 0; color: var(--nx-ink-3); font-size: 12px; }
.cq-card > :not(.cq-card__cab) { margin-inline: 16px; }
.cq-card > :last-child { margin-bottom: 14px; }
.cq-duas { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: stretch; }
.cq-grade { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 16px; align-items: stretch; }
/* Alinhamento (pedido da dona, 10/11/2026): cartões lado a lado têm a mesma altura e o pé de cada um fica no pé. */
.cq-duas > .cq-card, .cq-grade > .cq-card { display: flex; flex-direction: column; }
.cq-grade > .cq-card > p.cq-mu:last-child { margin-top: auto; padding-top: 10px; border-top: 1px dashed var(--nx-line-2); }
.cq-metas { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.cq-metas li { display: grid; gap: 4px; }
.cq-metas li > span { font-size: 13px; }
.cq-metas small { color: var(--nx-ink-3); font-size: 11.5px; line-height: 1.4; }
.cq-prog { display: block; height: 6px; overflow: hidden; border-radius: 999px; background: var(--nx-surface-2); }
.cq-prog i { display: block; height: 100%; border-radius: inherit; background: var(--nx-teal-500); }
.cq-linhas { display: grid; margin: 0; padding: 0; list-style: none; }
.cq-linhas li { border-top: var(--mk-borda); }
.cq-linhas li:first-child { border-top: 0; }
.cq-linhas li, .cq-linhas a { display: flex; gap: 10px; align-items: center; padding: 9px 0; color: var(--nx-ink); text-decoration: none; }
.cq-linhas a { width: 100%; padding: 0; }
.cq-linhas li > span:nth-child(2), .cq-linhas a > span:not(.mk-selo) { display: grid; flex: 1; min-width: 0; gap: 1px; }
.cq-linhas b { font-size: 13px; }
.cq-linhas small { color: var(--nx-ink-3); font-size: 11.5px; }
.cq-chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.cq-chips a { display: inline-flex; gap: 6px; align-items: center; padding: 6px 10px; border: 1px solid var(--nx-line); border-radius: 999px; color: var(--nx-ink); font-size: 12.5px; text-decoration: none; }
.cq-chips .pi { color: var(--nx-ok); }
.cq-chips small { color: var(--nx-ink-3); }
.cq-filtros .nx-chip { cursor: pointer; }
.cq-filtros .nx-chip--ativo { border-color: var(--nx-teal-600); background: var(--nx-info-bg); }
.cq-tabela-card { overflow: hidden; }
.cq-rola { overflow-x: auto; }
.cq-tabela { width: 100%; border-collapse: collapse; font-size: 12.5px; }
.cq-tabela th { padding: 9px 12px; border-bottom: 1px solid var(--nx-line); color: var(--nx-ink-3); font-size: 10.5px; font-weight: 700; letter-spacing: 0.06em; text-align: left; text-transform: uppercase; white-space: nowrap; }
.cq-tabela td { padding: 9px 12px; border-bottom: var(--mk-borda); vertical-align: middle; }
.cq-tabela tbody tr[data-abrir] { cursor: pointer; }
.cq-tabela tbody tr[data-abrir]:hover { background: var(--nx-surface-2); }
.cq-tabela .n { text-align: right; font-variant-numeric: tabular-nums; }
.cq-tabela td .mk-selo + .mk-selo { margin-left: 4px; }
/* Fila do gate: só o nome do imóvel quebra linha; o resto fica numa linha só, alinhado. */
.cq-tabela--gate td { white-space: nowrap; }
.cq-tabela--gate td.cq-gate__nome { min-width: 190px; white-space: normal; }
.cq-nota { display: flex; gap: 8px; align-items: center; margin: 0; color: var(--nx-ink-3); font-size: 12px; }
.cq-mu { color: var(--nx-ink-3); font-size: 12.5px; }
.cq-h4, .cq-bloco h4 { margin: 12px 0 6px; color: var(--nx-ink-3); font-size: 10.5px; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; }
.cq-bloco { margin-bottom: 6px; }
.cq-item { display: flex; gap: 12px; align-items: center; justify-content: space-between; padding: 6px 0; border-bottom: var(--mk-borda); font-size: 12.8px; }
.cq-item .nx-select { min-width: 170px; }
.cq-kv { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: 6px 14px; font-size: 12.8px; }
.cq-kv span { color: var(--nx-ink-3); }
.cq-kv--topo { padding: 10px 12px; border-radius: 10px; background: var(--nx-surface-2); }
.cq-rev { margin-bottom: 8px; padding: 8px 10px; border-left: 3px solid var(--nx-crit); border-radius: 6px; background: var(--nx-surface-2); font-size: 12.5px; }
.cq-rev--ok { border-left-color: var(--nx-ok); }
.cq-rev ul { margin: 6px 0 0; padding-left: 18px; }
.cq-rev .mk-selo { margin-left: 6px; }
.cq-alerta { display: flex; gap: 8px; align-items: flex-start; margin: 0 0 10px; padding: 8px 10px; border-radius: 10px; background: var(--nx-crit-bg); color: var(--nx-crit); font-size: 12.5px; }
.cq-alerta--warn { background: var(--nx-warn-bg); color: var(--nx-warn); }
.cq-parecer { margin: 10px 0; padding: 12px 14px; border-radius: 10px; font-size: 13.5px; font-weight: 800; text-align: center; }
.cq-parecer--ok { background: var(--nx-ok-bg); color: var(--nx-ok); }
.cq-parecer--nao { background: var(--nx-crit-bg); color: var(--nx-crit); }
.cq-acoes { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 14px; }
.cq-lista { display: grid; gap: 4px; margin: 0; padding-left: 18px; font-size: 12.8px; line-height: 1.45; }
.cq-pareto { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.cq-pareto li { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(80px, 1fr) 28px; gap: 10px; align-items: center; font-size: 12.5px; }
.cq-pareto li > span:first-child { display: grid; min-width: 0; }
.cq-pareto li > span:first-child b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cq-pareto small { color: var(--nx-ink-3); font-size: 11px; }
.cq-pareto__barra { height: 10px; overflow: hidden; border-radius: 999px; background: var(--nx-surface-2); }
.cq-pareto__barra i { display: block; height: 100%; background: var(--nx-warn); }
.cq-pareto li > b { text-align: right; }
.cq-passos { display: flex; flex-wrap: wrap; gap: 4px; margin: 0 0 8px; padding: 0; list-style: none; }
.cq-passos li { padding: 3px 8px; border-radius: 999px; background: var(--nx-surface-2); color: var(--nx-ink-3); font-size: 11px; }
.cq-passos li.feito { background: var(--nx-ok-bg); color: var(--nx-ok); }
.cq-passos li.atual { background: var(--nx-info-bg); color: var(--nx-info-forte); font-weight: 700; }
.cq-quadro { display: grid; grid-template-columns: repeat(8, minmax(140px, 1fr)); gap: 10px; overflow-x: auto; padding-bottom: 4px; }
.cq-coluna { display: grid; align-content: start; gap: 8px; padding: 10px; border: 1px solid var(--nx-line); border-radius: var(--nx-r-l); background: var(--nx-surface-2); }
.cq-coluna > header { display: flex; gap: 6px; align-items: center; font-size: 12px; }
.cq-coluna > header b { flex: 1; }
.cq-coluna > header span { padding: 0 7px; border-radius: 999px; background: var(--nx-surface); font-weight: 700; }
.cq-dm { display: grid; gap: 3px; padding: 10px; border: 1px solid var(--nx-line); border-radius: 10px; background: var(--nx-surface); color: var(--nx-ink); text-decoration: none; }
.cq-dm:hover { border-color: var(--nx-line-2); }
.cq-dm code { color: var(--nx-ink-3); font-size: 10.5px; }
.cq-dm b { font-size: 12.8px; line-height: 1.3; }
.cq-dm small { color: var(--nx-ink-3); font-size: 11px; }
/* Fichas: a grade das fichas; os dois modelos (Opção 1 e Opção 2) ficam em fichas.css */
.cq-fichas { display: grid; gap: 18px; justify-content: center; }
.cq-fichas--col1 { grid-template-columns: minmax(0, 1fr); }
.cq-fichas--col2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cq-fichas--compacta.cq-fichas--col1 { grid-template-columns: minmax(0, 210mm); }
.cq-fichas--larga.cq-fichas--col1 { grid-template-columns: minmax(0, 1100px); }
.cq-item > span { display: grid; gap: 2px; }
.cq-item__crit { color: var(--nx-ink-3); font-size: 11.5px; line-height: 1.4; }
.cq-item--campo .nx-input, .cq-item--campo .nx-textarea, .cq-item--campo .nx-select { min-width: 220px; }
/* Configuracao */
.cq-cfg-abas { display: flex; gap: 2px; overflow-x: auto; padding: 4px; border: 1px solid var(--nx-line); border-radius: 12px; background: var(--nx-surface); scrollbar-width: thin; }
.cq-cfg-abas a { display: inline-flex; flex: 1 0 auto; gap: 6px; align-items: center; justify-content: center; padding: 8px 10px; border-radius: 9px; color: var(--nx-ink-2); font-size: 12.6px; font-weight: 600; text-decoration: none; white-space: nowrap; }
.cq-cfg-abas a:hover { background: var(--nx-surface-2); }
.cq-cfg-abas--on { background: var(--nx-ink) !important; color: var(--nx-bg) !important; }
.cq-cfg-item { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 10px; padding: 12px 0; border-top: 1px solid var(--nx-line); }
.cq-cfg-item:first-child { border-top: 0; }
.cq-cfg-item--off { opacity: 0.55; }
.cq-cfg-item__mover { display: grid; align-content: start; gap: 2px; }
.cq-cfg-item__campos { display: grid; gap: 8px; min-width: 0; }
.cq-cfg-linha { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: flex-end; }
.cq-cfg-rot { display: grid; flex: 1 1 180px; gap: 4px; min-width: 0; color: var(--nx-ink-3); font-size: 11.5px; font-weight: 650; }
.cq-cfg-rot--largo { flex: 2 1 280px; }
.cq-cfg-rot--bloco { min-width: 260px; }
.cq-cfg-rot small { font-weight: 500; }
.cq-cfg-rot .nx-input, .cq-cfg-rot .nx-select, .cq-cfg-rot .nx-textarea { width: 100%; box-sizing: border-box; font-size: 13px; }
.cq-cfg-checks { display: grid; gap: 4px; margin: 0; padding: 0; list-style: none; }
.cq-cfg-checks label { display: flex; gap: 8px; align-items: flex-start; }
.cq-cfg-checks span { display: grid; } .cq-cfg-checks small { color: var(--nx-ink-3); font-size: 11px; }
.cq-cfg-checks--grade { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 6px 14px; }
.cq-cfg-checks--grade li { padding: 8px 10px; border: 1px solid var(--nx-line); border-radius: 10px; }
.cq-cfg-checks--grade li:has(input:checked) { border-color: color-mix(in srgb, var(--nx-teal-500) 45%, var(--nx-line)); background: color-mix(in srgb, var(--nx-teal-500) 5%, var(--nx-surface)); }
.cq-cfg-par { display: inline-flex; gap: 4px; }
.cq-cfg-tab td { vertical-align: middle; }
.cq-cfg-tab .nx-input, .cq-cfg-tab .nx-select { width: 100%; min-width: 120px; box-sizing: border-box; }
.cq-cfg-off td { opacity: 0.55; }
.cq-cfg-pessoas { display: grid; grid-template-columns: repeat(auto-fill, minmax(420px, 1fr)); gap: 14px; }
.cq-cfg-pessoa { display: grid; gap: 12px; padding: 14px 16px; }
.cq-cfg-assin { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 12px; align-items: center; }
.cq-cfg-assin__ver { display: grid; height: 70px; border: 1px dashed var(--nx-line-2); border-radius: 8px; background: #fff; place-items: center; }
.cq-cfg-assin__ver img { max-width: 200px; max-height: 60px; }
.cq-cfg-assin__acoes { display: flex; flex-wrap: wrap; gap: 6px; }
.cq-cfg-desenho { grid-column: 1 / -1; display: grid; gap: 6px; }
.cq-cfg-desenho canvas { width: 100%; height: 150px; border: 1px solid var(--nx-line-2); border-radius: 8px; background: #fff; touch-action: none; }
.cq-h3 { margin: 6px 0 0; font-size: 15px; }
/* Critérios de aceitação: uma tabela por gate */
.cq-crit td { line-height: 1.5; vertical-align: top; }
.cq-crit td:nth-child(2) { min-width: 200px; }
.cq-crit td:nth-child(2) small { display: block; }
.cq-crit td:nth-child(3) { min-width: 300px; color: var(--nx-ink-2); }
.cq-crit td:nth-child(4) { min-width: 190px; }
.cq-crit td .mk-selo { margin: 0 4px 4px 0 !important; }
.cq-crit__n { width: 44px; color: var(--nx-ink-4); font-weight: 700; font-variant-numeric: tabular-nums; }
.cq-crit__bloco th { padding: 9px 12px; background: var(--nx-surface-2); color: var(--nx-ink); font-size: 11px; letter-spacing: 0.06em; text-align: left; }
.cq-crit__bloco small { margin-left: 6px; color: var(--nx-ink-3); font-weight: 600; letter-spacing: 0; text-transform: none; }

/* Logo do cliente (10/11/2026): a Eduarda clica e carrega do computador; sem logo, o espaço "Logo do cliente aqui". */
.cq-logo { position: relative; display: grid; flex: none; gap: 2px; overflow: hidden; margin: 0; padding: 0; border: 1.5px dashed var(--nx-line-2); border-radius: 10px; background: var(--nx-surface-2); color: var(--nx-ink-3); font: inherit; font-size: 11px; font-weight: 650; line-height: 1.25; text-align: center; place-content: center; place-items: center; }
.cq-logo .pi { font-size: 15px; opacity: 0.8; }
.cq-logo small { font-size: 9.8px; font-weight: 500; opacity: 0.85; }
button.cq-logo { cursor: pointer; transition: border-color 0.15s, background 0.15s, color 0.15s; }
button.cq-logo:hover, button.cq-logo:focus-visible { border-color: var(--nx-teal-500); background: var(--nx-info-bg); color: var(--nx-teal-600); outline: none; }
.cq-logo--com { border: 1px solid var(--nx-line); background: #fff; }
.cq-logo img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; padding: 6px 8px; object-fit: contain; }
.cq-logo--p img { padding: 4px 5px; }
.cq-logo--p { width: 34px; height: 34px; border-radius: 8px; }
.cq-logo--p.cq-logo--com { width: 66px; }
.cq-logo--m { width: 136px; height: 58px; }
.cq-logo--g { width: 184px; height: 86px; border-radius: 12px; }
.cq-logo--g .pi { font-size: 19px; }
.cq-logo__trocar { position: absolute; inset: auto 0 0; display: flex; gap: 5px; align-items: center; justify-content: center; padding: 3px; background: rgba(11, 34, 48, 0.8); color: #fff; font-size: 10px; font-weight: 700; opacity: 0; transition: opacity 0.15s; }
.cq-logo__trocar .pi { font-size: 10px; }
button.cq-logo:hover .cq-logo__trocar, button.cq-logo:focus-visible .cq-logo__trocar { opacity: 1; }
.cq-logo--escuro.cq-logo--vazio { border-color: rgba(255, 255, 255, 0.45); background: rgba(255, 255, 255, 0.06); color: rgba(255, 255, 255, 0.86); }
button.cq-logo--escuro.cq-logo--vazio:hover, button.cq-logo--escuro.cq-logo--vazio:focus-visible { border-color: var(--nx-teal-300); background: rgba(255, 255, 255, 0.13); color: #fff; }

/* Cliente em execução: seletor no topo de todas as telas e faixa nas telas da produção */
.cq-cliente { display: flex; flex: none; gap: 8px; align-items: center; min-width: 0; }
.cq-cliente label { display: grid; gap: 1px; min-width: 0; }
.cq-cliente small { color: var(--nx-ink-3); font-size: 9.5px; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.cq-cliente .nx-select { min-width: 270px; height: 32px; font-size: 13px; font-weight: 600; }
.cq-faixa-cliente { display: flex; flex-wrap: wrap; gap: 12px 16px; align-items: center; padding: 10px 16px 10px 12px; border: 1px solid var(--nx-line); border-left: 4px solid var(--nx-teal-500); border-radius: 14px; background: var(--nx-surface); }
.cq-faixa-cliente--ficticio { border-left-color: var(--nx-warn); }
.cq-faixa-cliente__txt { display: grid; flex: 1; gap: 2px; min-width: 220px; }
.cq-faixa-cliente__txt small { color: var(--nx-teal-600); font-size: 10px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; }
.cq-faixa-cliente--ficticio .cq-faixa-cliente__txt small { color: var(--nx-warn); }
.cq-faixa-cliente__txt b { font-size: 16.5px; letter-spacing: -0.01em; }
.cq-faixa-cliente__txt b span { color: var(--nx-ink-3); font-weight: 600; }
.cq-faixa-cliente__txt > span { color: var(--nx-ink-3); font-size: 12px; }
.cq-faixa-cliente__lado { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.cq-sem-produto { display: grid; gap: 6px; justify-items: center; max-width: 640px; margin: 0 auto; padding: 30px 20px; text-align: center; }
.cq-sem-produto > .pi { display: grid; width: 50px; height: 50px; margin-bottom: 4px; border-radius: 50%; background: var(--nx-surface-2); color: var(--nx-ink-3); font-size: 20px; place-items: center; }
.cq-sem-produto b { font-size: 15px; }
.cq-sem-produto p { margin: 0; color: var(--nx-ink-2); font-size: 12.8px; line-height: 1.6; }
.cq-sem-produto .cq-acoes { justify-content: center; margin-top: 8px; }

/* Configuração › Clientes */
.cq-clis { display: grid; grid-template-columns: repeat(auto-fill, minmax(460px, 1fr)); gap: 14px; align-items: stretch; }
.cq-cli { display: grid; grid-template-columns: 184px minmax(0, 1fr); grid-template-rows: 1fr auto; gap: 14px 18px; padding: 16px 18px; }
.cq-cli--atual { border-color: var(--nx-teal-500); box-shadow: inset 0 0 0 1px var(--nx-teal-500); }
.cq-cli__txt { display: grid; align-content: start; gap: 4px; min-width: 0; }
.cq-cli__txt header { display: flex; flex-wrap: wrap; gap: 6px 8px; align-items: center; }
.cq-cli__txt header b { font-size: 15.5px; }
.cq-cli__txt > small { color: var(--nx-ink-3); font-size: 12px; }
.cq-cli__txt ul { margin: 6px 0 4px; padding-left: 17px; color: var(--nx-ink-2); font-size: 12.4px; line-height: 1.6; }
.cq-cli__pe { display: flex; flex-wrap: wrap; grid-column: 1 / -1; gap: 8px; padding-top: 12px; border-top: 1px dashed var(--nx-line-2); }

/* Configuração › Layout da ficha: os dois modelos lado a lado */
.cq-modelos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: auto 1fr; gap: 0 16px; }
.cq-modelo { display: grid; grid-row: span 2; grid-template-rows: subgrid; gap: 12px; min-width: 0; padding: 14px; border: 1.5px solid var(--nx-line); border-radius: 16px; background: var(--nx-surface); }
.cq-modelo--on { border-color: var(--nx-teal-500); box-shadow: 0 0 0 3px color-mix(in srgb, var(--nx-teal-500) 18%, transparent); }
.cq-modelo__cab { display: flex; gap: 12px; align-items: flex-start; justify-content: space-between; }
.cq-modelo__cab b { font-size: 15px; }
.cq-modelo__cab p { margin: 4px 0 0; color: var(--nx-ink-2); font-size: 12.4px; line-height: 1.5; }
.cq-modelo__cab .nx-btn, .cq-modelo__cab .mk-selo { flex: none; }
.cq-modelo__previa { min-width: 0; overflow: hidden; padding: 12px; border-radius: 12px; background: var(--nx-surface-2); }
.cq-modelo__escala { width: 820px; }
@media (max-width: 1100px) { .cq-modelos { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; gap: 16px; } .cq-modelo { grid-row: auto; grid-template-rows: auto 1fr; } }

@media (max-width: 760px) { .cq-fichas--col2 { grid-template-columns: minmax(0, 1fr); } .cq-cfg-assin { grid-template-columns: minmax(0, 1fr); } .cq-cfg-pessoas { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 1100px) { .cq-duas { grid-template-columns: minmax(0, 1fr); } }
/* Lateral retrátil (10/11/2026): recolhida, fica só a trilha de ícones; clicar num grupo abre o menu de novo. */
@media (min-width: 861px) {
    .cq--recolhido { grid-template-columns: 66px minmax(0, 1fr); }
    .cq--recolhido .cq-rail { overflow-x: hidden; }
    .cq--recolhido .cq-rail::after { bottom: -14px; left: -70px; width: 150px; }
    .cq--recolhido .cq-rail__topo { flex-direction: column; gap: 10px; align-items: center; padding-top: 16px; }
    .cq--recolhido .cq-rail__marca { flex: none; padding: 0; }
    .cq--recolhido .cq-rail__logo, .cq--recolhido .cq-rail__marca span, .cq--recolhido .cq-rail__item span, .cq--recolhido .cq-rail__grupo span, .cq--recolhido .cq-rail__seta, .cq--recolhido .cq-rail__sub, .cq--recolhido .cq-rail__quem > span:nth-child(2) { display: none; }
    .cq--recolhido .cq-rail__simbolo { display: block; }
    .cq--recolhido .cq-rail__recolher { margin: 0; }
    .cq--recolhido .cq-rail__nav { gap: 4px; padding: 12px 9px; }
    .cq--recolhido .cq-rail__item, .cq--recolhido .cq-rail__grupo { justify-content: center; margin: 0; padding: 11px 0; }
    .cq--recolhido .cq-rail__item .pi, .cq--recolhido .cq-rail__grupo .pi { font-size: 16px; }
    .cq--recolhido .cq-rail__grupo--on { background: color-mix(in srgb, var(--nx-teal-500) 20%, transparent); }
    .cq--recolhido .cq-rail__quem { justify-content: center; margin: 8px 9px 14px; padding: 8px 0; }
}
@media (max-width: 860px) {
    .cq { grid-template-columns: minmax(0, 1fr); }
    .cq-rail { position: fixed; z-index: 30; left: 0; width: min(290px, 86vw); transform: translateX(-104%); transition: transform 0.2s ease; }
    .cq--menu .cq-rail { transform: none; box-shadow: 0 0 40px rgba(0, 0, 0, 0.35); }
    .cq-cortina { position: fixed; inset: 0; z-index: 25; display: block; background: rgba(3, 18, 26, 0.5); opacity: 0; pointer-events: none; transition: opacity 0.2s; }
    .cq--menu .cq-cortina { opacity: 1; pointer-events: auto; }
    .cq-corpo { padding: 16px 14px 40px; }
    .cq-topo { padding: 8px 14px; }
    .cq-topo .nx-tag { display: none; }
    .cq-cliente small, .cq-cliente .cq-logo, .cq-topo__tit small { display: none; } .cq-topo__tit { min-width: 64px; } .cq-cliente .nx-select { min-width: 0; max-width: 46vw; }
    .cq-clis { grid-template-columns: minmax(0, 1fr); } .cq-cli { grid-template-columns: minmax(0, 1fr); }
    .cq-fichas, .cq-fichas--compacta.cq-fichas--col1, .cq-fichas--larga.cq-fichas--col1 { grid-template-columns: minmax(0, 1fr); }
}
@media print {
    .cq-rail, .cq-topo, .cq-cab__acoes, .cq-cortina, .cq-faixa-cliente, .cq-ferramentas { display: none !important; }
    .cq-logo--vazio { visibility: hidden; } .cq-logo__trocar { display: none; }
    .cq { display: block; }
    .cq-cfg-abas { display: none; }
    .cq-fichas { display: block; }
}

/* Três cartões lado a lado (Ocorrências, 10/11/2026) */
.cq-grade--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1100px) { .cq-grade--3 { grid-template-columns: minmax(0, 1fr); } }
