/* Peças do servidor do CQ (10/11/2026): tela de entrada, Configuração › Planilhas, Trilha de auditoria e o Sair do menu. */

/* ---------- entrada ---------- */
.cq-entrada { position: fixed; inset: 0; z-index: 200; display: grid; overflow-y: auto; padding: 24px; place-items: center; }
.cq-entrada__fundo { position: fixed; inset: 0; z-index: -1; background: radial-gradient(90% 70% at 85% 10%, rgba(31, 163, 159, 0.35), transparent 60%), radial-gradient(70% 60% at 0% 100%, rgba(18, 112, 122, 0.3), transparent 60%), linear-gradient(140deg, #04121a, #0a2734 55%, #0d3f4c); }
.cq-entrada__fundo::after { position: absolute; right: -6vw; bottom: -8vh; width: min(52vw, 620px); aspect-ratio: 847 / 946; background: url("../comum/marca/pin-sistema.png") no-repeat center / contain; opacity: 0.08; content: ""; }
.cq-entrada__cartao { display: grid; gap: 13px; width: min(420px, 100%); padding: 32px 30px 24px; border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 22px; background: rgba(8, 28, 38, 0.72); color: #e8f3f5; box-shadow: 0 30px 80px -30px rgba(0, 0, 0, 0.7); backdrop-filter: blur(16px); animation: cq-entra 320ms ease-out; }
@keyframes cq-entra { from { opacity: 0; transform: translateY(10px) scale(0.98); } }
.cq-entrada__cartao > img { justify-self: start; }
.cq-entrada__cartao > small { color: #7fd6cf; font-size: 10.5px; font-weight: 800; letter-spacing: 0.18em; text-transform: uppercase; }
.cq-entrada__cartao h1 { margin: 0; font-size: 26px; letter-spacing: -0.02em; }
.cq-entrada__cartao > p { margin: 0; color: #a9c3ca; font-size: 13px; line-height: 1.55; }
.cq-entrada__cartao label { display: grid; gap: 5px; color: #b8cfd6; font-size: 12px; font-weight: 650; }
.cq-entrada__cartao label small { color: #8fb0ba; font-weight: 500; }
.cq-entrada__cartao input { height: 42px; padding: 0 13px; border: 1px solid rgba(255, 255, 255, 0.16); border-radius: 11px; background: rgba(255, 255, 255, 0.06); color: #fff; font: inherit; font-size: 14px; outline: none; transition: border-color 0.15s, box-shadow 0.15s; }
.cq-entrada__cartao input:focus { border-color: #2bb8b2; box-shadow: 0 0 0 3px rgba(43, 184, 178, 0.25); }
.cq-entrada__cartao button { height: 44px; margin-top: 4px; border: 0; border-radius: 12px; background: linear-gradient(135deg, #1fa39f, #12707a); color: #fff; font: inherit; font-size: 14px; font-weight: 750; cursor: pointer; box-shadow: 0 10px 24px -10px rgba(31, 163, 159, 0.8); transition: transform 0.15s, filter 0.15s; }
.cq-entrada__cartao button:hover { filter: brightness(1.08); }
.cq-entrada__cartao button:active { transform: translateY(1px); }
.cq-entrada__cartao button:disabled { opacity: 0.6; cursor: wait; }
.cq-entrada__erro { margin: 0; padding: 9px 12px; border-radius: 10px; background: rgba(255, 107, 94, 0.14); color: #ffb3ab; font-size: 12.6px; font-weight: 600; }
.cq-entrada__erro[hidden] { display: none; }
.cq-entrada__pe { display: flex; gap: 7px; align-items: center; justify-content: center; color: #7f9ea8; font-size: 11px; }

/* ---------- menu: a pessoa da sessão ---------- */
.cq-rail__quem--sessao { cursor: default; }
.cq-rail__sair { display: grid; flex: none; width: 30px; height: 30px; margin-left: auto; border: 0; border-radius: 9px; background: rgba(255, 255, 255, 0.07); color: #a7bbc1; cursor: pointer; place-items: center; transition: background 0.15s, color 0.15s; }
.cq-rail__sair:hover { background: rgba(255, 107, 94, 0.18); color: #ffb3ab; }
.cq--recolhido .cq-rail__sair { display: none; }

/* Exportar planilha é da Eduarda; os demais exportam só as fichas. */
.cq-so-fichas :is([data-exportar], [data-gq-excel], [data-iq-excel], [data-gs-excel], [data-st-excel-conf], [data-eq-excel]) { display: none !important; }

/* ---------- Configuração › Planilhas ---------- */
.pt-bloco { display: grid; gap: 16px; padding: 20px 22px; }
.pt-cab { display: flex; gap: 14px; align-items: flex-start; }
.pt-cab__ic { display: grid; flex: none; width: 42px; height: 42px; border-radius: 12px; background: linear-gradient(135deg, color-mix(in srgb, var(--nx-teal-500) 22%, transparent), color-mix(in srgb, var(--nx-navy-500, #1d4e5f) 18%, transparent)); color: var(--nx-teal-600); font-size: 18px; place-items: center; }
.pt-cab h2 { margin: 0 0 4px; font-size: 16px; }
.pt-cab > div:first-of-type { flex: 1; min-width: 0; }
.pt-integra { display: flex; flex: none; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: flex-end; }
@media (max-width: 720px) { .pt-trilha .pt-cab { flex-wrap: wrap; } .pt-integra { width: 100%; justify-content: flex-start; } }
.pt-cab p { margin: 0; color: var(--nx-ink-2); font-size: 12.8px; line-height: 1.55; }
.pt-passos { display: flex; flex-wrap: wrap; gap: 8px 22px; }
.pt-passo { display: inline-flex; gap: 8px; align-items: center; color: var(--nx-ink-2); font-size: 12.4px; font-weight: 600; }
.pt-passo b { display: grid; width: 22px; height: 22px; border-radius: 50%; background: var(--nx-teal-600); color: #fff; font-size: 11px; place-items: center; }
.pt-form { display: grid; gap: 14px; }
.pt-solta { display: grid; gap: 4px; justify-items: center; padding: 26px 18px; border: 2px dashed color-mix(in srgb, var(--nx-teal-500) 45%, var(--nx-line)); border-radius: 16px; background: color-mix(in srgb, var(--nx-teal-500) 4%, var(--nx-surface)); color: var(--nx-ink-2); text-align: center; cursor: pointer; transition: border-color 0.15s, background 0.15s; }
.pt-solta > .pi { color: var(--nx-teal-600); font-size: 26px; }
.pt-solta small { color: var(--nx-ink-3); }
.pt-solta:hover, .pt-solta--sobre { border-color: var(--nx-teal-500); background: color-mix(in srgb, var(--nx-teal-500) 9%, var(--nx-surface)); }
.pt-escolhidos { color: var(--nx-teal-700, var(--nx-teal-600)); font-size: 12px; font-weight: 650; }
.pt-campos { display: flex; flex-wrap: wrap; gap: 10px 12px; align-items: flex-end; }
.pt-campos .cq-campo em { font-style: normal; font-weight: 500; letter-spacing: 0; text-transform: none; }
.pt-previa { display: grid; gap: 14px; padding: 20px 22px; border-color: color-mix(in srgb, var(--nx-teal-500) 40%, var(--nx-line)); }
.pt-previa > header { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between; }
.pt-previa > header small { color: var(--nx-teal-600); font-size: 10.5px; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; }
.pt-previa h3 { margin: 2px 0 0; font-size: 17px; }
.pt-projetos { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 12px; align-items: stretch; }
.pt-projeto { display: grid; grid-template-rows: auto auto 1fr; gap: 10px; padding: 14px 16px; border: 1px solid var(--nx-line); border-radius: 14px; background: var(--nx-surface); }
.pt-projeto header { display: grid; gap: 2px; }
.pt-projeto header small { color: var(--nx-ink-3); font-size: 11.5px; }
.pt-numeros { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 0; }
.pt-numeros div { padding: 8px 10px; border-radius: 10px; background: var(--nx-surface-2); }
.pt-numeros dt { color: var(--nx-ink-3); font-size: 10px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; }
.pt-numeros dd { margin: 2px 0 0; font-size: 20px; font-weight: 800; font-variant-numeric: tabular-nums; }
.pt-novo { color: var(--nx-ok); } .pt-muda { color: var(--nx-warn); }
.pt-gates { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 0; color: var(--nx-ink-3); font-size: 12px; }
.pt-gates b { color: var(--nx-ink); }
.pt-sem { display: flex; gap: 14px; align-items: flex-start; padding: 20px 22px; }
.pt-sem > .pi { color: var(--nx-teal-600); font-size: 22px; }
.pt-sem p { margin: 4px 0 0; color: var(--nx-ink-2); font-size: 13px; line-height: 1.6; }

/* ---------- trilha de auditoria ---------- */
.pt-trilha { display: grid; gap: 10px; padding: 20px 22px; }
.pt-filtro { display: flex; flex-wrap: wrap; gap: 6px; }
.pt-linhas { display: grid; margin: 0; padding: 0; list-style: none; }
.pt-linhas li { display: grid; grid-template-columns: 44px 32px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 9px 4px; border-top: 1px solid var(--nx-line); }
.pt-linhas li:first-child { border-top: 0; }
.pt-hora { color: var(--nx-ink-3); font-size: 12px; font-variant-numeric: tabular-nums; }
.pt-oque { display: grid; gap: 3px; min-width: 0; font-size: 13px; }
.pt-oque__linha { display: flex; flex-wrap: wrap; gap: 6px 9px; align-items: center; }
.pt-oque small { overflow: hidden; color: var(--nx-ink-3); font-size: 11.6px; text-overflow: ellipsis; white-space: nowrap; }
.pt-alvo { color: var(--nx-ink-2); font-size: 12px; }
.pt-detalhe { display: grid; gap: 10px; margin-top: 8px; padding: 14px; border: 1px solid var(--nx-line); border-radius: 14px; background: var(--nx-surface-2); }
.pt-detalhe header { display: flex; align-items: center; justify-content: space-between; }
.pt-detalhe pre { max-height: 340px; overflow: auto; margin: 0; padding: 10px; border-radius: 10px; background: var(--nx-surface); font-size: 11px; line-height: 1.45; white-space: pre-wrap; }
@media (max-width: 700px) { .pt-linhas li { grid-template-columns: 40px minmax(0, 1fr); } .pt-linhas li .cq-avatar, .pt-linhas li .nx-btn { display: none; } .pt-numeros { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* conta já preparada na ativação e a tela de avisos por e-mail (11/11/2026) */
.cq-entrada__conta { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 4px 14px; margin: 0; padding: 12px 14px; border: 1px solid rgba(255, 255, 255, 0.14); border-radius: 12px; background: rgba(255, 255, 255, 0.05); font-size: 13px; }
.cq-entrada__conta dt { color: #8fb0ba; font-weight: 650; }
.cq-entrada__conta dd { margin: 0; color: #fff; font-weight: 650; overflow-wrap: anywhere; }
.av-form { margin: 0; }
.av-tipos { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 10px; margin: 0; padding: 0; border: 0; }
.av-tipos legend { margin-bottom: 8px; padding: 0; color: var(--nx-ink-2); font-size: 12px; font-weight: 700; }
.av-tipos label { display: flex; gap: 10px; align-items: flex-start; padding: 11px 13px; border: 1px solid var(--nx-line); border-radius: 12px; background: var(--nx-surface-2); cursor: pointer; }
.av-tipos label:has(input:checked) { border-color: var(--nx-info-forte-bd); background: var(--nx-info-bg); }
.av-tipos input { margin-top: 3px; }
.av-tipos span { display: grid; gap: 2px; font-size: 13px; }
.av-tipos small { color: var(--nx-ink-2); font-size: 12px; line-height: 1.45; }
.av-lista { margin-bottom: 14px; }
.av-lista li { line-height: 1.5; }
