/* ALOS · superfícies operacionais essenciais
   Informação de responsabilidade nos cards e orientação progressiva nos módulos jurídicos. */

/* Esteira: a decisão está no card, sem um painel gigante indicando por onde começar. */
#esteiraBody .qd-card {
  padding: 13px 12px;
  border-radius: 12px;
  background: var(--card);
  border-color: var(--border);
  border-left-color: transparent;
  box-shadow: 0 2px 5px -3px rgba(15, 35, 52, .2);
  transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}
#esteiraBody .qd-card.crit { border-left-color: var(--danger); }
#esteiraBody .qd-card.soon { border-left-color: var(--warning); }
#esteiraBody .qd-card:hover {
  border-color: color-mix(in srgb, var(--primary) 30%, var(--border));
  background: var(--card);
  box-shadow: 0 6px 16px -12px rgba(15, 35, 52, .4);
  transform: none;
}
#esteiraBody .qd-card.crit:hover { border-left-color: var(--danger); }
#esteiraBody .qd-card.soon:hover { border-left-color: var(--warning); }
#esteiraBody .qd-card:active { transform: none; }
#esteiraBody .qd-card .qd-cli {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
#esteiraBody .qd-document-progress {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 11px;
  padding: 9px 0;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}
#esteiraBody .qd-document-progress > span:first-child {
  color: var(--text-soft);
  font: 600 12px/1.45 Manrope, "Segoe UI", sans-serif;
}
#esteiraBody .qd-document-progress .qd-badge.ck {
  min-height: 32px;
  padding: 5px 7px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  white-space: normal;
}
#esteiraBody .qd-document-progress .qd-badge.ck.receipt {
  background: color-mix(in srgb, #287f8c 9%, var(--card));
  color: #256a77;
}
#esteiraBody .qd-document-progress .qd-badge.ck.receipt.complete {
  background: color-mix(in srgb, #bb812c 10%, var(--card));
  color: #8c611d;
}
#esteiraBody .qd-document-progress .qd-badge.ck.done {
  background: color-mix(in srgb, #287653 10%, var(--card));
  color: #287653;
}
#esteiraBody .qd-document-progress .qd-badge.ck:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}
#esteiraBody .qd-card :is(.qd-sub,.qd-xref,.qd-tese,.qd-pap,.qd-lb,.qd-lbmore,.qd-badge,.qd-mini) {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0;
}
#esteiraBody .qd-card :is(.qd-tese,.qd-pap) {
  padding: 3px 7px;
  border-radius: 6px;
  text-transform: none;
  background: var(--bg2);
  box-shadow: inset 0 0 0 1px var(--border);
}
#esteiraBody .qd-card .qd-tese { color: var(--text-soft); }
#esteiraBody .qd-card .qd-tese > .ic { color: var(--tc); }
#esteiraBody .qd-card .qd-tese-l { white-space: normal; overflow-wrap: anywhere; }
#esteiraBody .qd-card :is(.qd-teserow,.qd-cardhead) { margin: 10px 0 0; }
#esteiraBody .qd-card .qd-cardhead { gap: 7px; flex-wrap: wrap; }
#esteiraBody .qd-card .qd-owner-row {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-height: 36px;
  margin: 10px 0 2px;
}
#esteiraBody .qd-card .qd-owner-row .qd-avs { margin-left: 0; padding-left: 0; }
#esteiraBody .qd-card .qd-owner-row .qd-av {
  width: 34px;
  height: 34px;
  font-size: 14px;
  border-color: var(--card);
}
#esteiraBody .qd-card .qd-lb { padding: 2px 6px; border-radius: 5px; }
#esteiraBody .qd-card .qd-labels { gap: 5px; }
#esteiraBody .qd-card :is(.qd-sub,.qd-xref) {
  max-width: 100%;
  padding: 0;
  margin-top: 10px;
  color: var(--muted);
  background: transparent;
  overflow-wrap: anywhere;
}
#esteiraBody .qd-card .qd-badges { gap: 6px 9px; margin-top: 9px; }
#esteiraBody .qd-card .qd-badge.prio.alta {
  color: #a43239;
  background: color-mix(in srgb, var(--danger) 9%, var(--card));
  font-weight: 600;
}
#esteiraBody .qd-card .qd-badge.due.crit { color: #b4232a; }
#esteiraBody .qd-card .qd-badge.due.soon { color: #986015; }
#esteiraBody .qd-card .qd-badge.due.ok { color: #287653; }
#esteiraBody .qd-card .qd-nc-t { font-size: 12px; font-weight: 600; line-height: 1.45; }
#esteiraBody :is(.qd-addcard,.qd-colmore) { min-height: 38px; font-size: 12px; font-weight: 600; }
#esteiraBody .qd-operational-meta {
  display: grid;
  gap: 6px;
  margin-top: 9px;
  padding-top: 0;
}
#esteiraBody .qd-operational-meta > span {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  gap: 6px;
  font: 500 12px/1.45 Manrope, "Segoe UI", sans-serif;
}
#esteiraBody .qd-operational-meta .ic {
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
}
#esteiraBody .qd-operational-meta .created { color: var(--muted); }
#esteiraBody .qd-operational-meta .accountability {
  width: fit-content;
  max-width: 100%;
  padding: 4px 7px;
  border: 1px solid transparent;
  border-radius: 7px;
  font-weight: 600;
  overflow-wrap: anywhere;
}
#esteiraBody .qd-operational-meta .accountability.client {
  color: #9a5c07;
  border-color: color-mix(in srgb, #d79125 25%, var(--border));
  background: color-mix(in srgb, #f4c66e 13%, var(--card));
}
#esteiraBody .qd-operational-meta .accountability.office {
  color: #176e76;
  border-color: color-mix(in srgb, #238f98 24%, var(--border));
  background: color-mix(in srgb, #5cc8c7 10%, var(--card));
}
#esteiraBody .qd-operational-meta .accountability.danger {
  color: #b4232a;
  border-color: color-mix(in srgb, var(--danger) 32%, var(--border));
  background: color-mix(in srgb, var(--danger) 9%, var(--card));
}
#esteiraBody .qd-operational-meta .accountability.done {
  color: #287653;
  border-color: color-mix(in srgb, #3ca276 24%, var(--border));
  background: color-mix(in srgb, #67c99a 10%, var(--card));
}
body.dark #esteiraBody .qd-operational-meta .accountability.client { color: #f0c277; }
body.dark #esteiraBody .qd-operational-meta .accountability.office { color: #79d7d4; }
body.dark #esteiraBody .qd-operational-meta .accountability.danger { color: #ff9da3; }
body.dark #esteiraBody .qd-operational-meta .accountability.done { color: #83d5ad; }
body.dark #esteiraBody .qd-card .qd-tese > .ic { color: color-mix(in srgb, var(--tc) 60%, #fff); }
body.dark #esteiraBody .qd-document-progress .qd-badge.ck.receipt { color: #8ad4d9; }
body.dark #esteiraBody .qd-document-progress .qd-badge.ck.receipt.complete { color: #e5bc79; }
body.dark #esteiraBody .qd-document-progress .qd-badge.ck.done,
body.dark #esteiraBody .qd-card .qd-badge.due.ok { color: #83d5ad; }
body.dark #esteiraBody .qd-card .qd-badge.prio.alta,
body.dark #esteiraBody .qd-card .qd-badge.due.crit { color: #ff9da3; }
body.dark #esteiraBody .qd-card .qd-badge.due.soon { color: #f0c277; }

/* Uma explicação curta fica recolhida; abre apenas para quem precisa aprender o módulo. */
.alos-workspace-guide {
  margin: 0 0 12px;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 13px;
  background: var(--card);
  box-shadow: 0 9px 22px -24px rgba(15, 35, 52, .65);
}
.alos-workspace-guide > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 48px;
  padding: 8px 13px;
  list-style: none;
  cursor: pointer;
}
.alos-workspace-guide > summary::-webkit-details-marker { display: none; }
.alos-workspace-guide > summary > span { min-width: 0; }
.alos-workspace-guide > summary b {
  display: block;
  color: var(--text-bright);
  font: 700 13px/1.4 Manrope, "Segoe UI", sans-serif;
}
.alos-workspace-guide > summary small {
  display: block;
  margin-top: 2px;
  color: var(--muted);
  font: 500 12px/1.45 Manrope, "Segoe UI", sans-serif;
}
.alos-workspace-guide > summary > svg {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  fill: none;
  stroke: var(--primary);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform .18s ease;
}
.alos-workspace-guide[open] > summary > svg { transform: rotate(180deg); }
.alos-workspace-guide-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  padding: 1px 0 0;
  border-top: 1px solid var(--border);
  background: var(--border);
}
.alos-workspace-guide-steps > div {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  padding: 12px 13px;
  background: var(--card);
}
.alos-workspace-guide-steps i {
  display: grid;
  width: 29px;
  height: 29px;
  flex: 0 0 29px;
  place-items: center;
  border-radius: 9px;
  color: var(--primary);
  background: var(--accent-soft);
  font: 600 12px/1 Manrope, "Segoe UI", sans-serif;
  font-style: normal;
}
.alos-workspace-guide-steps span { min-width: 0; }
.alos-workspace-guide-steps b {
  display: block;
  color: var(--text-bright);
  font: 600 13px/1.4 Manrope, "Segoe UI", sans-serif;
}
.alos-workspace-guide-steps small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font: 500 12px/1.45 Manrope, "Segoe UI", sans-serif;
}

/* Liminares: preserva o cockpit, mas devolve espaço à fila. */
#liminaresBody .lim-command-hero {
  min-height: 112px;
  padding: 16px 18px;
}
#liminaresBody .lim-command-hero .lim-ops-copy h2 { font-size: clamp(25px, 2vw, 34px); }
#liminaresBody .lim-command-hero .lim-ops-action strong { font-size: 19px; }
#liminaresBody .lim-card-task {
  min-height: 42px;
  border-radius: 11px;
}

/* Julgamentos: a atividade é ação primária e abre o formulário nativo do ALOS. */
#julgamentosBody .julg-hero {
  min-height: 148px;
  padding: 20px 22px;
}
#julgamentosBody .julg-hero h2 { font-size: clamp(27px, 2.25vw, 36px); }
#julgamentosBody .jc-actions .jc-task,
#julgamentosBody .jci-content .jc-actions .jc-task {
  border-color: #0f7778;
  color: #fff;
  background: #0d6d70;
}
#julgamentosBody .jc-actions .jc-task:hover,
#julgamentosBody .jci-content .jc-actions .jc-task:hover { background: #0a555b; }

/* Radar: mantém o visual tecnológico, mas a leitura do fluxo fica progressiva. */
#radarBody .rd6-ledger {
  min-height: 214px;
  padding: 23px 25px;
}
#radarBody .rd6-ledger > p { margin-bottom: 16px; }
#radarBody .rd6-board button {
  min-height: 91px;
  padding: 17px 19px 22px;
}
#radarBody .rd6-command { padding: 10px 13px; }
#radarBody .rd6-guide {
  margin: 11px 14px 14px;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 13px;
  background: var(--card);
}
#radarBody .rd6-guide > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 48px;
  padding: 8px 13px;
  list-style: none;
  cursor: pointer;
}
#radarBody .rd6-guide > summary::-webkit-details-marker { display: none; }
#radarBody .rd6-guide > summary b {
  display: block;
  color: var(--text-bright);
  font: 700 13px/1.4 Manrope, "Segoe UI", sans-serif;
}
#radarBody .rd6-guide > summary small {
  display: block;
  margin-top: 2px;
  color: var(--muted);
  font: 500 12px/1.45 Manrope, "Segoe UI", sans-serif;
}
#radarBody .rd6-guide > summary > .ic {
  width: 17px;
  height: 17px;
  color: var(--primary);
  transition: transform .18s ease;
}
#radarBody .rd6-guide[open] > summary > .ic { transform: rotate(180deg); }
#radarBody .rd6-guide .rd6-flow {
  margin: 0;
  border: 0;
  border-top: 1px solid var(--border);
  border-radius: 0;
  box-shadow: none;
}

/* Loading is separate from an empty board; cached cards remain usable on failures. */
#esteiraBody .est-load-status {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 16px;
  padding: 16px 18px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--card);
  color: var(--text-bright);
}
#esteiraBody .est-load-status > span { display: flex; color: var(--primary); }
#esteiraBody .est-load-status.warning > span { color: var(--amber, #b7791f); }
#esteiraBody .est-load-status > div { flex: 1; min-width: 0; }
#esteiraBody .est-load-status b { display: block; font-size: 14px; font-weight: 600; }
#esteiraBody .est-load-status small { display: block; margin-top: 4px; color: var(--muted); font-size: 12px; line-height: 1.55; }
#esteiraBody .est-load-status button,
#esteiraBody .est-unplaced-cards button {
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: var(--card);
  color: var(--primary);
  font: inherit;
  font-size: 13px;
  cursor: pointer;
}
#esteiraBody .est-load-status button:disabled { opacity: .6; cursor: wait; }
#esteiraBody .est-load-status button:focus-visible,
#esteiraBody .est-unplaced-cards button:focus-visible { outline: 2px solid var(--primary); outline-offset: 3px; }
#esteiraBody .est-unplaced { margin-bottom: 18px; }
#esteiraBody .est-unplaced-cards { display: flex; flex-wrap: wrap; gap: 10px; }
#esteiraBody .est-unplaced-cards button { display: flex; align-items: center; gap: 10px; max-width: 100%; text-align: left; }
#esteiraBody .est-unplaced-cards button span { overflow-wrap: anywhere; }
@media (max-width: 640px) {
  #esteiraBody .est-load-status { flex-wrap: wrap; padding: 14px; }
  #esteiraBody .est-load-status > div { flex-basis: calc(100% - 40px); }
  #esteiraBody .est-load-status > button { margin-left: 30px; }
}

@media (max-width: 900px) {
  .alos-workspace-guide-steps { grid-template-columns: 1fr; }
  #julgamentosBody .julg-hero { padding: 18px; }
}
@media (max-width: 640px) {
  #esteiraBody .qd-document-progress .qd-badge.ck { min-height: 40px; }
  #esteiraBody :is(.qd-addcard,.qd-colmore) { min-height: 44px; }
  .alos-workspace-guide > summary small,
  #radarBody .rd6-guide > summary small { white-space: normal; }
  #radarBody .rd6-ledger { min-height: 0; padding: 21px 18px; }
}
@media (prefers-reduced-motion: reduce) {
  #esteiraBody .qd-card,
  #esteiraBody .qd-col.qd-vazia,
  #esteiraBody .qd-card .qd-badge,
  #esteiraBody .qd-card .qd-lb-pb,
  .alos-workspace-guide > summary > svg,
  #radarBody .rd6-guide > summary > .ic { transition: none; }
  #esteiraBody .qd-card.qd-flash { animation: none; }
}
