/* ── Caixa de documentos: abas, lista recolhida/miniaturas, painel de envio (30/09/2026) ──
 * Mesmo visual de Prazos e DJEN (marinho #0f172a + slate). Reaproveita .pz-barra, .pz-chip,
 * .pz-n, .pz-busca, .pz-dia e .pz-vazio de prazos_djen.css; o resto fica sob `.cxd`. */
.cxd .cxd-bx { position: relative; margin-left: auto; flex: 0 1 320px; min-width: 200px }
.cxd .cxd-bx .pz-busca { width: 100%; margin: 0 }
.cxd .cxd-dd { position: absolute; right: 0; top: 38px; width: 100%; min-width: 320px; background: #fff; border: 1px solid #e2e8f0;
  border-radius: 10px; box-shadow: 0 14px 34px rgb(15 23 42 / .16); padding: 6px; z-index: 30; max-height: 60vh; overflow: auto }
.cxd .cxd-dd[hidden] { display: none }
.cxd .cxd-dd .cxd-gr { font-size: 10.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #94a3b8; padding: 8px 10px 4px }
.cxd .cxd-dd button { display: flex; align-items: center; gap: 10px; width: 100%; padding: 8px 10px; border: 0; border-radius: 7px;
  background: none; font: inherit; font-size: 13px; color: #0f172a; text-align: left; cursor: pointer }
.cxd .cxd-dd button:hover, .cxd .cxd-dd button.on { background: #f1f5f9 }
.cxd .cxd-dd button i { font-size: 16px; color: #64748b }
.cxd .cxd-dd button span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap }
.cxd .cxd-dd button small { margin-left: auto; color: #64748b; font-size: 11.5px; white-space: nowrap }
.cxd mark { background: #fde68a; color: inherit; border-radius: 2px; padding: 0 1px }
.cxd .cxd-ver { display: flex; align-items: center; gap: 8px; font-size: 12px; color: #64748b }
.cxd .cxd-alt { display: flex; gap: 2px; padding: 3px; background: #f1f5f9; border-radius: 8px }
.cxd .cxd-alt button { width: 30px; height: 26px; border: 0; border-radius: 6px; background: none; color: #64748b; font-size: 15px;
  display: grid; place-items: center; cursor: pointer }
.cxd .cxd-alt button.on { background: #fff; color: #0f172a; box-shadow: 0 1px 2px rgb(15 23 42 / .08) }

.cxd .cxd-split { display: grid; grid-template-columns: minmax(0,1fr); gap: 14px; align-items: start }
.cxd .cxd-split.aberto { grid-template-columns: minmax(0,1fr) 420px }
.cxd .cxd-lista { display: flex; flex-direction: column; gap: 12px; min-width: 0 }
.cxd .cxd-lista.rec { gap: 0; background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; overflow: hidden }

/* envio (grupo de arquivos do mesmo remetente) */
.cxd .cxd-env { background: #fff; border: 1px solid #e2e8f0; border-radius: 12px }
.cxd .cxd-env.foco { border-color: #0f172a; box-shadow: 0 0 0 1px #0f172a }
.cxd .cxd-eh { display: flex; align-items: center; gap: 12px; padding: 12px 16px }
.cxd .cxd-env.ab .cxd-eh { border-bottom: 1px solid #eef2f6 }
.cxd .cxd-av { width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; font-weight: 700; font-size: 13px;
  background: #e2e8f0; color: #334155; flex-shrink: 0 }
.cxd .cxd-av.scan { background: #eff6ff; color: #1e40af; font-size: 17px }
.cxd .cxd-en { min-width: 0; flex: 1 }
.cxd .cxd-en b { font-size: 14px; color: #0f172a }
.cxd .cxd-en small { color: #64748b; font-size: 12px; margin-left: 6px }
.cxd .cxd-sub { font-size: 12px; color: #64748b; margin-top: 2px; display: flex; gap: 8px; align-items: center; flex-wrap: wrap }
.cxd .cxd-pill { display: inline-flex; align-items: center; gap: 4px; font-size: 11px; font-weight: 650; padding: 2px 8px; border-radius: 20px; white-space: nowrap }
.cxd .cxd-pill.a { background: #fffbeb; color: #92400e }
.cxd .cxd-pill.g { background: #ecfdf5; color: #065f46 }
.cxd .cxd-acts { margin-left: auto; display: flex; gap: 6px; align-items: center; flex-shrink: 0 }
.cxd .cxd-ic { width: 32px; min-width: 32px; padding: 0; justify-content: center; font-size: 16px }
.cxd .cxd-chev { border: 0; background: none; width: 28px; height: 28px; display: grid; place-items: center; color: #64748b;
  font-size: 18px; cursor: pointer; border-radius: 7px; flex-shrink: 0 }
.cxd .cxd-chev:hover { background: #f1f5f9 }

/* linha da lista recolhida */
.cxd .cxd-lin { display: flex; align-items: center; gap: 12px; padding: 10px 16px; border-bottom: 1px solid #eef2f6; font-size: 13px; cursor: pointer }
.cxd .cxd-lin:hover { background: #fbfcfd }
.cxd .cxd-lin.ab { background: #f8fafc }
.cxd .cxd-lin.foco { box-shadow: inset 3px 0 0 #0f172a }
.cxd .cxd-lin .cxd-av { width: 30px; height: 30px; font-size: 12px }
.cxd .cxd-lin .cxd-nome { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #0f172a; font-weight: 600 }
.cxd .cxd-lin .cxd-nome small { font-weight: 400; color: #64748b; font-size: 12px; margin-left: 4px }
.cxd .cxd-lin .cxd-qt { color: #64748b; font-size: 12px; width: 84px; flex-shrink: 0 }
.cxd .cxd-lin .cxd-dt { color: #64748b; font-size: 12px; width: 104px; flex-shrink: 0 }
.cxd .cxd-docs { padding: 4px 16px 12px 58px; background: #f8fafc; border-bottom: 1px solid #eef2f6 }
.cxd .cxd-drow { display: flex; align-items: center; gap: 10px; padding: 6px 10px; border-radius: 7px; font-size: 12.5px; background: #fff;
  border: 1px solid #eef2f6; margin-top: 6px }
.cxd .cxd-drow.sel { border-color: #0f172a }
.cxd .cxd-drow .cxd-nm { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; color: #0f172a }
.cxd .cxd-drow .cxd-nm:hover { text-decoration: underline }
.cxd .cxd-drow .cxd-tp { color: #64748b; font-size: 11.5px; white-space: nowrap }
.cxd .cxd-drow .cxd-ac { margin-left: auto; display: flex; gap: 4px; flex-shrink: 0 }
.cxd .cxd-mini { width: 28px; height: 28px; border-radius: 7px; display: grid; place-items: center; color: #475569; font-size: 15px;
  border: 1px solid #e2e8f0; background: #fff; cursor: pointer; padding: 0 }
.cxd .cxd-mini:hover { background: #f1f5f9; color: #0f172a }
.cxd .cxd-mini.perigo:hover { background: #fef2f2; color: #b91c1c; border-color: #fecaca }
.cxd .cxd-grip { cursor: grab; color: #94a3b8; font-size: 16px }
.cxd .cxd-pos { width: 20px; height: 20px; border-radius: 50%; background: #0f172a; color: #fff; font-size: 11px; font-weight: 700;
  display: grid; place-items: center; flex-shrink: 0 }
.cxd .cxd-ck { width: 16px; height: 16px; accent-color: #0f172a; cursor: pointer; flex-shrink: 0; margin: 0 }
.cxd .cxd-drag { opacity: .4 }
.cxd .cxd-alvo { box-shadow: -3px 0 0 #0f172a }
.cxd .cxd-drow.cxd-alvo { box-shadow: 0 -3px 0 #0f172a }

/* grade de miniaturas */
.cxd .cxd-grade { display: flex; gap: 12px; padding: 14px 16px; flex-wrap: wrap }
.cxd .cxd-doc { width: 132px; position: relative }
.cxd .cxd-pg { height: 150px; border: 1px solid #e2e8f0; border-radius: 8px; background: #f8fafc; position: relative; overflow: hidden;
  display: grid; place-items: center; cursor: pointer; padding: 0; width: 100% }
.cxd .cxd-pg img { max-width: 100%; max-height: 100%; object-fit: contain; display: none }
.cxd .cxd-pg .receb-thumb-fallback { font-size: 30px; color: #94a3b8 }
.cxd .cxd-doc .cxd-pos { position: absolute; top: 6px; left: 6px; z-index: 1 }
.cxd .cxd-doc .cxd-ck { position: absolute; top: 7px; right: 7px; z-index: 1 }
.cxd .cxd-doc.sel .cxd-pg { outline: 2px solid #0f172a; outline-offset: 1px }
.cxd .cxd-doc .cxd-nm { font-size: 12px; font-weight: 600; margin-top: 6px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #0f172a }
.cxd .cxd-doc .cxd-tp { font-size: 11px; color: #64748b }
.cxd .cxd-hov { position: absolute; top: 116px; left: 0; right: 0; display: flex; justify-content: center; gap: 4px; opacity: 0; transition: opacity .12s }
.cxd .cxd-doc:hover .cxd-hov, .cxd .cxd-doc:focus-within .cxd-hov { opacity: 1 }
.cxd .cxd-hov button { width: 28px; height: 28px; border-radius: 7px; border: 0; background: rgb(15 23 42 / .82); color: #fff;
  display: grid; place-items: center; font-size: 15px; cursor: pointer; padding: 0 }
.cxd .cxd-dica { font-size: 11.5px; color: #94a3b8; padding: 0 16px 12px; display: flex; gap: 6px; align-items: center }

/* menu ⋯ */
.cxd-menu { position: fixed; z-index: 10050; width: 310px; background: #fff; border: 1px solid #e2e8f0; border-radius: 10px;
  box-shadow: 0 12px 30px rgb(15 23 42 / .16); padding: 6px; display: flex; flex-direction: column }
.cxd-menu button { display: flex; align-items: center; gap: 9px; padding: 8px 10px; border-radius: 7px; font: inherit; font-size: 13px;
  color: #0f172a; border: 0; background: none; cursor: pointer; text-align: left; white-space: nowrap }
.cxd-menu button:hover { background: #f1f5f9 }
.cxd-menu button i { font-size: 16px; color: #475569 }
.cxd-menu hr { border: 0; border-top: 1px solid #eef2f6; margin: 4px 0 }
.cxd-menu .perigo, .cxd-menu .perigo i { color: #b91c1c }
.cxd-menu small { margin-left: auto; padding-left: 8px; white-space: nowrap; font-size: 10.5px; color: #94a3b8 }

/* barra de seleção e aviso com "Desfazer" */
.cxd-selbar { position: fixed; left: 50%; bottom: 22px; transform: translateX(-50%); background: #0f172a; color: #fff; border-radius: 12px;
  padding: 8px 8px 8px 16px; display: flex; align-items: center; gap: 8px; box-shadow: 0 10px 30px rgb(15 23 42 / .35); font-size: 13px; z-index: 10010 }
.cxd-selbar[hidden] { display: none }
.cxd-selbar b { margin-right: 8px; white-space: nowrap }
.cxd-selbar button { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px; border-radius: 8px; font: inherit;
  font-size: 12.5px; font-weight: 600; cursor: pointer; background: rgb(255 255 255 / .1); border: 1px solid rgb(255 255 255 / .15); color: #fff }
.cxd-selbar button.w { background: #fff; color: #0f172a; border-color: #fff }
.cxd-aviso { position: fixed; right: 24px; bottom: 22px; background: #0f172a; color: #fff; border-radius: 10px; padding: 10px 12px 10px 14px;
  display: flex; align-items: center; gap: 12px; font-size: 13px; box-shadow: 0 10px 30px rgb(15 23 42 / .3); z-index: 10060; max-width: 560px }
.cxd-aviso button { border: 0; background: none; font: inherit; cursor: pointer; color: #93c5fd; font-weight: 700; padding: 0 }
.cxd-aviso button.x { color: #fff; opacity: .6; font-size: 15px }

/* painel lateral "Enviar ao processo" */
.cxd .cxd-painel { background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 18px; display: flex; flex-direction: column;
  gap: 14px; position: sticky; top: 12px; max-height: calc(100vh - 110px); overflow: auto }
.cxd .cxd-painel[hidden] { display: none }
.cxd .cxd-lbl { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #64748b }
.cxd .cxd-pt { display: flex; justify-content: space-between; align-items: flex-start; gap: 8px }
.cxd .cxd-pt h3 { font-size: 16px; margin: 2px 0 0; color: #0f172a }
.cxd .cxd-passo { border: 1px solid #e2e8f0; border-radius: 10px; padding: 12px }
.cxd .cxd-passo .cxd-cab { display: flex; align-items: center; gap: 8px; font-weight: 650; font-size: 13px; margin-bottom: 8px; color: #0f172a }
.cxd .cxd-passo .cxd-num { width: 20px; height: 20px; border-radius: 50%; background: #0f172a; color: #fff; font-size: 11px; display: grid; place-items: center }
.cxd .cxd-passo.ok .cxd-num { background: #047857 }
.cxd .cxd-passo .cxd-cab button { margin-left: auto; border: 0; background: none; color: #1e40af; font: inherit; font-size: 12px; font-weight: 600; cursor: pointer }
.cxd .cxd-opcoes { max-height: 260px; overflow: auto }
.cxd .cxd-esc { display: flex; align-items: center; gap: 10px; padding: 9px 10px; border-radius: 8px; border: 1px solid #e2e8f0; margin-top: 6px;
  cursor: pointer; width: 100%; background: #fff; font: inherit; text-align: left; color: #0f172a }
.cxd .cxd-esc:hover { border-color: #cbd5e1 }
.cxd .cxd-esc.on { border-color: #0f172a; background: #f8fafc }
.cxd .cxd-esc.novo { border-style: dashed }
.cxd .cxd-esc i { font-size: 17px; color: #475569 }
.cxd .cxd-esc b { font-size: 13px; display: block }
.cxd .cxd-esc .cxd-mono { font-family: ui-monospace, 'JetBrains Mono', monospace; font-size: 11.5px; color: #475569 }
.cxd .cxd-esc small { font-size: 11.5px; color: #64748b }
.cxd .cxd-esc .cxd-rd { margin-left: auto; width: 16px; height: 16px; border-radius: 50%; border: 1.5px solid #94a3b8; flex-shrink: 0 }
.cxd .cxd-esc.on .cxd-rd { border: 5px solid #0f172a }
.cxd .cxd-sep { font-size: 10.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: #94a3b8; margin: 10px 0 0 }
.cxd .cxd-nota { font-size: 12px; color: #475569; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; padding: 9px 10px;
  display: flex; gap: 8px; line-height: 1.45 }
.cxd .cxd-nota i { font-size: 16px; flex-shrink: 0 }
.cxd .cxd-rod { display: flex; gap: 8px; justify-content: flex-end }
.cxd .cxd-novo .ig { margin: 8px 0 0 }

/* aba Enviados / Descartados */
.cxd .cxd-tab { background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; overflow: hidden }
.cxd .cxd-tr { display: grid; grid-template-columns: 70px minmax(0,1.1fr) minmax(0,1.5fr) minmax(0,1.1fr) 130px; gap: 14px; align-items: center;
  padding: 11px 16px; border-bottom: 1px solid #eef2f6; font-size: 12.5px; color: #0f172a }
.cxd .cxd-tr:last-child { border-bottom: 0 }
.cxd .cxd-tr.th { font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: #64748b; background: #f8fafc; padding: 9px 16px }
.cxd .cxd-tr > span { min-width: 0; overflow: hidden; text-overflow: ellipsis }
.cxd .cxd-tr .cxd-sm { color: #64748b; font-size: 11.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis }
.cxd .cxd-tr .cxd-mono { font-family: ui-monospace, 'JetBrains Mono', monospace; font-size: 11.5px; color: #475569 }
.cxd .cxd-tr .cxd-ac { display: flex; gap: 6px; justify-content: flex-end }
.cxd .cxd-tr a.cxd-mini { text-decoration: none }

body.dark-mode .cxd .cxd-env, body.dark-mode .cxd .cxd-lista.rec, body.dark-mode .cxd .cxd-painel, body.dark-mode .cxd .cxd-tab { background: #1e293b; border-color: #334155 }
@media (max-width: 1100px) {
  .cxd .cxd-split.aberto { grid-template-columns: minmax(0,1fr) }
  .cxd .cxd-lin .cxd-dt, .cxd .cxd-lin .cxd-qt { display: none }
  .cxd .cxd-tr { grid-template-columns: 60px minmax(0,1fr) minmax(0,1fr) 110px }
  .cxd .cxd-tr > span:nth-child(3) { display: none }
}
