/* ALOS · Central de Liminares
   Dono visual do topo e do preparo. A fila e o mapa conservam seus componentes. */

body[data-view="liminares"] {
  --lmc-bg: #f3f6fa;
  --lmc-surface: #fff;
  --lmc-soft: #edf2f8;
  --lmc-line: #dbe3ee;
  --lmc-ink: #18283f;
  --lmc-muted: #52647c;
  --lmc-accent: #087d68;
  --lmc-accent-soft: #e2f3ed;
  --lmc-blue: #2466c6;
  --lmc-danger: #b32636;
  --lmc-danger-soft: #fff0f1;
  --lmc-warning: #85520b;
  --lmc-warning-soft: #fff6e7;
}
body.dark[data-view="liminares"] {
  --lmc-bg: #060b14;
  --lmc-surface: #0d1726;
  --lmc-soft: #121f33;
  --lmc-line: #25364e;
  --lmc-ink: #e5edf7;
  --lmc-muted: #a4b4ca;
  --lmc-accent: #55dab2;
  --lmc-accent-soft: #102e2b;
  --lmc-blue: #83b4ff;
  --lmc-danger: #ff9ca6;
  --lmc-danger-soft: #321a27;
  --lmc-warning: #f2c783;
  --lmc-warning-soft: #2b241b;
}
body[data-view="liminares"] .main { background: var(--lmc-bg); }
body[data-view="liminares"] #fbar {
  margin-block: 8px 6px;
  padding-block: 7px;
  min-height: 52px;
}
@media (min-width: 1100px) {
  body[data-view="liminares"] #fbar { flex-wrap: nowrap; align-items: center; }
  body[data-view="liminares"] #fbar .fbar-search { flex: 0 1 220px; width: 220px; min-width: 180px; }
  body[data-view="liminares"] #fbar .fbar-btns { flex: 1 1 auto; min-width: 0; }
  body[data-view="liminares"] #fbar .tb-glabel,
  body[data-view="liminares"] #fbar .fbar-right { display: none; }
  body[data-view="liminares"] #fbar .tb-group { gap: 0; }
}
body[data-view="liminares"] #liminaresBody {
  display: flow-root;
  box-sizing: border-box;
  width: 100%;
  padding-inline: 32px;
  color: var(--lmc-ink);
  font-family: "Manrope", sans-serif;
}

/* O mesmo dono existe desde a criação, antes da decoração assíncrona. */
#liminaresBody .lim-ops-hero.lmc-mast {
  position: relative;
  display: grid;
  grid-template-columns: minmax(210px, 1fr) minmax(280px, 1.1fr) minmax(180px, .7fr);
  align-items: center;
  gap: 14px 24px;
  min-height: 104px;
  margin: 0 0 8px;
  padding: 12px 0 16px;
  overflow: visible;
  border: 0;
  border-bottom: 1px solid var(--lmc-line);
  border-radius: 0;
  color: var(--lmc-ink);
  background: transparent;
  box-shadow: none;
}
#liminaresBody .lim-ops-hero.lmc-mast::before,
#liminaresBody .lim-ops-hero.lmc-mast::after { display: none; }
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-copy { min-width: 0; }
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-kicker {
  color: var(--lmc-accent);
  font-family: "JetBrains Mono", monospace;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .09em;
}
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-copy h2 {
  margin: 5px 0 0;
  color: var(--lmc-ink);
  font-family: "Archivo", "Manrope", sans-serif;
  font-size: 28px;
  font-weight: 650;
  line-height: 1.12;
  letter-spacing: -.035em;
}
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-copy > p,
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-search { display: none; }
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-carga {
  margin-top: 8px;
  padding: 7px 9px;
  color: var(--lmc-warning);
  background: var(--lmc-warning-soft);
  border-color: color-mix(in srgb, var(--lmc-warning) 30%, transparent);
  font-size: 12px;
  line-height: 1.45;
}
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-carga.is-erro { color: var(--lmc-danger); background: var(--lmc-danger-soft); }
#liminaresBody .lim-ops-hero.lmc-mast .legal-lim-kpis {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
#liminaresBody .lim-ops-hero.lmc-mast .legal-lim-kpis > summary { display: none; }
#liminaresBody .lim-ops-hero.lmc-mast .lim-command-counts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
}
#liminaresBody .lim-ops-hero.lmc-mast .lim-command-counts > button {
  display: grid;
  align-content: center;
  gap: 5px;
  min-width: 0;
  min-height: 62px;
  padding: 8px 12px;
  border: 1px solid transparent;
  border-left-color: var(--lmc-line);
  border-radius: 0;
  color: var(--lmc-muted);
  background: transparent;
  box-shadow: none;
  text-align: left;
  transition: background .15s, border-color .15s;
}
#liminaresBody .lim-ops-hero.lmc-mast .lim-command-counts > button:hover {
  background: var(--lmc-soft);
  border-color: var(--lmc-line);
  transform: none;
}
#liminaresBody .lim-ops-hero.lmc-mast .lim-command-counts > button b {
  display: block;
  color: var(--lmc-ink);
  font-family: "Archivo", sans-serif;
  font-size: 24px;
  font-weight: 600;
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
#liminaresBody .lim-ops-hero.lmc-mast .lim-command-counts > button span {
  color: var(--lmc-muted);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.3;
}
#liminaresBody .lim-ops-hero.lmc-mast .lim-command-counts > button.selected {
  border-color: var(--lmc-accent);
  background: var(--lmc-accent-soft);
}
#liminaresBody .lim-ops-hero.lmc-mast .lim-command-counts > button.urgent :is(b,span) { color: var(--lmc-danger); }
#liminaresBody .lim-ops-hero.lmc-mast .lim-command-counts > button.urgent.selected {
  border-color: var(--lmc-danger);
  background: var(--lmc-danger-soft);
}
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-action {
  display: grid;
  grid-column: auto;
  grid-row: auto;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 6px 8px;
  align-self: center;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-action > span {
  color: var(--lmc-muted);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0;
}
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-action > span svg { display: none; }
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-action strong {
  margin: 0;
  color: var(--lmc-ink);
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-action button {
  grid-column: 1 / -1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  margin: 0;
  padding: 10px 13px;
  border: 1px solid var(--lmc-accent);
  border-radius: 8px;
  color: #fff;
  background: #087d68;
  box-shadow: none;
  font: 600 12px "Manrope", sans-serif;
}
body.dark #liminaresBody .lim-ops-hero.lmc-mast .lim-ops-action button { color: #08251e; background: var(--lmc-accent); }
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-action button:not(:disabled):hover { filter: brightness(1.08); }
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-action button:disabled { opacity: .5; cursor: not-allowed; }
#liminaresBody .lim-ops-hero.lmc-mast .lim-ops-action small { display: none; }

/* Leituras saudáveis ficam depois do caso; falhas continuam explícitas antes da fila. */
#liminaresBody .lim-command-insights {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr);
  gap: 10px;
  margin: 16px 0 10px;
}
#liminaresBody .lim-command-insights[hidden] { display: none; }
#liminaresBody .lim-command-insights > :is(.lit-intel-panel,.ai-context-panel) {
  width: 100%;
  min-width: 0;
  min-height: 54px;
  margin: 0 !important;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--card);
  box-shadow: none;
}
#liminaresBody .lim-command-insights > .lit-intel-panel {
  grid-template-columns: minmax(0,1fr) auto;
  gap: 10px;
  padding: 9px 12px;
  border-left: 3px solid #168d88;
}
#liminaresBody .lim-command-insights .lit-intel-status b { font-size: 13px; }
#liminaresBody .lim-command-insights .lit-intel-status small {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  line-height: 1.45;
  font-weight: 500;
}
#liminaresBody .lim-command-insights .lit-intel-actions { gap: 6px; }
#liminaresBody .lim-command-insights .lit-intel-actions button { min-height: 44px; padding: 0 10px; font-size: 12px; }
#liminaresBody .lim-command-insights .lit-intel-metrics {
  gap: 5px;
  margin-top: 7px;
}
#liminaresBody .lim-command-insights .lit-intel-metric {
  min-height: 42px;
  padding: 6px 8px;
}
#liminaresBody .lim-command-insights .lit-intel-warning {
  margin-top: 7px;
  padding: 7px 9px;
  font-size: 12px;
  line-height: 1.4;
}
#liminaresBody .lim-command-insights > .ai-context-panel > summary {
  min-height: 52px;
  padding: 7px 11px;
}
#liminaresBody .lim-command-insights .ai-context-summary small { font-size: 12px; }
#liminaresBody .lim-command-insights .ai-context-summary b { font-size: 12.5px; }
#liminaresBody .lim-command-insights .ai-context-summary em { font-size: 12px; }
#liminaresBody .lim-command-insights .ai-context-open { font-size: 12px; white-space: nowrap; }

/* Resumo de situação deixa de ser uma segunda hero. */
#viewLiminares #liminaresBody .lim-command-summary {
  overflow: visible;
  margin: 0 0 6px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
#liminaresBody .lim-command-summary::after { display: none; }
#liminaresBody .lim-command-summary .lim-sitbar-head {
  display: flex;
  align-items: center;
  gap: 7px;
  min-height: 35px;
  margin: 0;
  overflow: visible;
  scrollbar-width: none;
}
#liminaresBody .lim-command-summary .lim-sitbar-head::-webkit-scrollbar { display: none; }
#liminaresBody .lim-command-summary .lim-sitbar-head > strong {
  margin-right: auto;
  color: var(--ink);
  font-family: "Manrope", sans-serif;
  font-size: 13px;
  white-space: nowrap;
}
#liminaresBody .lim-command-summary .lim-sitbar-head > button {
  min-height: 44px;
  padding: 0 10px;
  white-space: nowrap;
  font-size: 12px;
}
#liminaresBody .lim-command-summary .lim-sitbar-head > .legal-lim-distribution {
  position: relative;
  flex: 0 0 auto;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
#liminaresBody .lim-command-summary .lim-sitbar-head > .legal-lim-distribution > summary {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 0 9px;
  border: 1px solid var(--border);
  border-radius: 9px;
  background: var(--card);
}
#liminaresBody .lim-command-summary .legal-lim-distribution > summary b { display: none; }
#liminaresBody .lim-command-summary .legal-lim-distribution > summary small { display: none; }
#liminaresBody .lim-command-summary .legal-lim-distribution > summary .legal-disclosure-label { display: inline; font-size: 12px; }
#liminaresBody .lim-command-summary .alos-lim-actions > button,
#liminaresBody .lim-command-summary .lim-legitem { min-height: 44px; font-size: 12px; font-weight: 600; }
#liminaresBody .lim-command-summary .lim-seg :is(.seg-c,.seg-lbl) { font-size: 12px; font-weight: 500; text-shadow: none; }
#liminaresBody .lim-command-summary /* "Ver situacoes" NAO e menu: e um painel de 7 situacoes com barra e legenda,
   que a pessoa le enquanto filtra a fila. Como dropdown absoluto de 760px ele
   cobria o filtro de AREA e as abas da fila ("A tratar", "Em acompanhamento"...)
   -- relato do Filipe: "abre a aba toda estranha, tapando outras coisas".
   Em fluxo, ele empurra a pagina para baixo em vez de tapar. Telas estreitas ja
   faziam assim; agora vale em qualquer largura, e some o z-index e a sombra de
   flutuacao, que so existiam para parecer menu. */
.legal-lim-distribution[open] > .legal-secondary-content {
  position: static;
  width: 100%;
  margin-top: 8px;
  padding: 12px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--card);
}

/* Uma única régua para a fila; organização abre como menu auxiliar. */
#liminaresBody .lim-command-toolbar {
  position: relative;
  z-index: 8;
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 9px;
}
#liminaresBody .lim-command-toolbar .lim-filarow {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  padding: 0;
}
#liminaresBody .lim-command-toolbar .lim-filabar {
  min-height: 42px;
  padding: 4px;
  border: 1px solid var(--border);
  border-radius: 13px;
  background: var(--card);
  overflow-x: auto;
  scrollbar-width: none;
}
#liminaresBody .lim-command-toolbar .lim-filabar::-webkit-scrollbar { display: none; }
#liminaresBody .lim-command-toolbar .lim-sort-lbl { display: none; }
#liminaresBody .lim-command-toolbar .lim-filabtn {
  min-height: 44px;
  padding: 0 13px;
  border-radius: 9px;
  font-size: 12px;
  white-space: nowrap;
}
#liminaresBody .lim-command-toolbar .legal-lim-presentation {
  position: relative;
  flex: 0 0 auto;
  margin: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
#liminaresBody .lim-command-toolbar .legal-lim-presentation > summary {
  display: flex;
  align-items: center;
  min-width: 142px;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: var(--card);
}
#liminaresBody .lim-command-toolbar .legal-lim-presentation > summary b { font-size: 12px; }
#liminaresBody .lim-command-toolbar .legal-lim-presentation > summary small { display: none; }
#liminaresBody .lim-command-toolbar .legal-lim-presentation > summary .legal-disclosure-label { font-size: 12px; }
#liminaresBody .lim-command-toolbar .lim-filabtn .c,
#liminaresBody .lim-command-toolbar .legal-lim-kpis .lim-ops-kpis span { font-size: 12px; font-weight: 500; }
#liminaresBody .lim-command-toolbar .legal-lim-kpis .lim-ops-kpis button { min-height: 44px; }
#liminaresBody .lim-command-toolbar .legal-lim-presentation[open] > .legal-secondary-content {
  position: absolute;
  top: calc(100% + 7px);
  right: 0;
  z-index: 30;
  width: min(760px, calc(100vw - 76px));
  max-height: min(68vh, 560px);
  padding: 14px;
  overflow: auto;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--card);
  box-shadow: 0 22px 56px rgba(14, 36, 50, .18);
}

#liminaresBody :is(.lim-command-summary,.lim-command-toolbar) :is(button,summary),
#liminaresBody .lim-command-insights .lit-intel-actions button { font-weight: 600; }
#liminaresBody :is(.lim-command-summary,.lim-command-toolbar) :is(b,strong),
#liminaresBody .lim-command-insights :is(.lit-intel-status b,.ai-context-summary b) { font-weight: 700; }
#liminaresBody .lim-command-hero .lim-ops-action small,
#liminaresBody .lim-command-insights :is(small,em) { font-weight: 500; }
/* The shared quality layer uses !important on .main small; retain the 12px floor here. */
#liminaresBody :is(.lim-command-hero,.lim-command-insights) small { font-size: 12px !important; }

/* A fila começa logo depois da régua e mantém o mapa ramificado como protagonista. */
#liminaresBody .lim-grid-nav,
#liminaresBody .lim-deck-nav { margin-top: 6px; }
#liminaresBody .lim-deck { scroll-margin-top: 96px; }
#liminaresBody .liminar-card { animation: none; }
#liminaresBody .liminar-card.lim-card-swap-local { animation: none; }
/* Assunto é classificação, não alerta; o aviso de fonte sem data mantém sua cor. */
#liminaresBody .liminar-card .lc-assunto { --asb: var(--lmc-soft); --asc: var(--lmc-blue); }

@media (max-width: 1280px) {
  body[data-view="liminares"] #liminaresBody { padding-inline: 22px; }
  #liminaresBody .lim-command-insights .lit-intel-overview-label { display: none; }
}

@media (max-width: 1050px) {
  #liminaresBody .lim-ops-hero.lmc-mast { grid-template-columns: minmax(0, 1fr) minmax(180px, .6fr); }
  #liminaresBody .lim-ops-hero.lmc-mast .lim-command-counts { grid-column: 1 / -1; grid-row: 2; }
  #liminaresBody .lim-ops-hero.lmc-mast .lim-ops-action { grid-column: 2; grid-row: 1; }
  #liminaresBody .lim-ops-hero.lmc-mast .lim-command-counts > button { min-height: 48px; grid-template-columns: auto 1fr; align-items: center; gap: 8px; }
}

@media (max-width: 760px) {
  body[data-view="liminares"] #liminaresBody { padding-inline: 14px; }
  body[data-view="liminares"] #fbar { margin-block: 6px; }
  #liminaresBody .lim-ops-hero.lmc-mast { gap: 12px; padding: 10px 0 12px; }
  #liminaresBody .lim-ops-hero.lmc-mast .lim-ops-copy h2 { font-size: 23px; }
  #liminaresBody .lim-command-insights { grid-template-columns: 1fr; }
  #liminaresBody .lim-command-insights > .lit-intel-panel { grid-template-columns: minmax(0,1fr); }
  #liminaresBody .lim-command-insights .lit-intel-actions { grid-column: 1; justify-content: flex-start; }
  #liminaresBody .lim-command-summary .lim-sitbar-head > strong { display: none; }
  #liminaresBody .lim-command-summary .lim-sitbar-head {
    flex-wrap: wrap;
    overflow: visible;
  }
  #liminaresBody .lim-command-summary .lim-sitbar-head > .legal-lim-distribution { width: auto; }
  #liminaresBody .lim-command-summary .legal-lim-distribution[open] > .legal-secondary-content {
    position: static;
    width: 100%;
    max-height: none;
    margin-top: 7px;
    overflow: visible;
  }
  #liminaresBody .lim-command-toolbar { flex-wrap: wrap; align-items: stretch; }
  #liminaresBody .lim-command-toolbar .lim-filarow { flex: 1 1 0; }
  #liminaresBody .lim-command-toolbar .legal-lim-presentation { width: auto; }
  #liminaresBody .lim-command-toolbar .legal-lim-presentation[open] { flex-basis: 100%; }
  #liminaresBody .lim-command-toolbar .legal-lim-presentation > summary {
    min-width: 92px;
    width: auto;
    padding: 0 12px;
    justify-content: space-between;
  }
  #liminaresBody .lim-command-toolbar .legal-lim-presentation:not([open]) > summary > span:first-child { display: none; }
  #liminaresBody .lim-command-toolbar .legal-lim-presentation > summary .legal-disclosure-label {
    display: inline;
  }
  #liminaresBody .lim-command-toolbar .legal-lim-presentation[open] > .legal-secondary-content {
    position: static;
    width: 100%;
    max-height: none;
    margin-top: 7px;
    border-radius: 17px;
  }
}

@media (max-width: 430px) {
  #liminaresBody .lim-deck-side { width: 44px; height: 44px; }
  #liminaresBody .lim-deck-side.prev { left: -23px; }
  #liminaresBody .lim-deck-side.next { right: -23px; }
  #liminaresBody .lim-ops-hero.lmc-mast { grid-template-columns: minmax(0, 1fr); }
  #liminaresBody .lim-ops-hero.lmc-mast .lim-ops-action { grid-column: 1; grid-row: 3; grid-template-columns: 1fr auto; }
  #liminaresBody .lim-ops-hero.lmc-mast .lim-ops-action > span { display: none; }
  #liminaresBody .lim-ops-hero.lmc-mast .lim-ops-action button { grid-column: 2; }
  #liminaresBody .lim-ops-hero.lmc-mast .lim-command-counts > button { padding-inline: 8px; grid-template-columns: 1fr; gap: 4px; }
  #liminaresBody .lim-ops-hero.lmc-mast .lim-command-counts > button b { font-size: 22px; }
}

@media (prefers-reduced-motion: reduce) {
  #liminaresBody .liminar-card { animation: none; }
  #liminaresBody .lim-command-hero .lim-command-counts > button { transition: none; }
}

/* Filtros nativos, uma régua sem caixas sobrepostas. */
#liminaresBody .lim-command-summary .alos-lim-actions { gap: 6px; flex-wrap: wrap; }
#liminaresBody .lim-command-summary .lim-sitbar-head { gap: 6px; }
#liminaresBody .lim-command-summary .alos-lim-actions > button,
#liminaresBody .lim-command-summary .legal-lim-distribution > summary {
  min-height: 40px;
  padding: 7px 10px;
  border: 1px solid var(--lmc-line);
  border-radius: 8px;
  color: var(--lmc-muted);
  background: var(--lmc-surface);
}
#liminaresBody .lim-command-summary .alos-lim-actions > button.on { color: var(--lmc-blue); background: var(--lmc-soft); }
#liminaresBody :is(.lim-areabar,.lim-tesebar) {
  gap: 5px;
  margin: 0 0 6px;
  padding: 0;
  border: 0;
  background: transparent;
}
#liminaresBody :is(.lim-areagrp,.lim-tese-lbl) { color: var(--lmc-muted); font: 500 11px "JetBrains Mono", monospace; }
#liminaresBody .lmc-control {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 38px;
  padding: 7px 10px;
  border: 1px solid transparent;
  border-radius: 7px;
  color: var(--lmc-muted);
  background: transparent;
  font: 600 12px "Manrope", sans-serif;
  white-space: nowrap;
  cursor: pointer;
  transition: color .15s, background .15s, border-color .15s;
}
#liminaresBody .lmc-control:hover { border-color: var(--lmc-line); background: var(--lmc-soft); }
#liminaresBody .lmc-control.active,
#liminaresBody .lmc-control.on { color: var(--lmc-accent); border-color: color-mix(in srgb, var(--lmc-accent) 35%, transparent); background: var(--lmc-accent-soft); }
/* A tese ativa tinha cor inline; a seleção permanece idêntica, com contraste nos dois temas. */
#liminaresBody .lim-tesechip.lmc-control.active { background: var(--lmc-accent-soft) !important; }
#liminaresBody .lmc-control .c { color: inherit; background: transparent; font: 500 12px "JetBrains Mono", monospace; }
#liminaresBody .lim-command-toolbar { gap: 8px; margin-bottom: 8px; }
#liminaresBody .lim-command-toolbar .lim-filabar { min-height: 42px; padding: 0; border: 0; border-bottom: 1px solid var(--lmc-line); border-radius: 0; background: transparent; }
#liminaresBody .lim-command-toolbar .lim-filabtn { min-height: 42px; padding-inline: 12px; border-radius: 6px 6px 0 0; }
#liminaresBody .lim-command-toolbar .lim-filabtn.on { border-color: transparent; border-bottom: 2px solid var(--lmc-accent); }
#liminaresBody .lim-command-toolbar .legal-lim-presentation > summary { min-height: 42px; min-width: 116px; border-color: var(--lmc-line); border-radius: 8px; background: var(--lmc-surface); }

/* O invólucro não é substituído pelo polling: abertura e foco sobrevivem. */
#liminaresBody .lmc-preparation {
  margin: 0 0 10px;
  border: 1px solid var(--lmc-line);
  border-radius: 10px;
  color: var(--lmc-ink);
  background: var(--lmc-surface);
}
#liminaresBody .lmc-preparation-toggle {
  display: grid;
  grid-template-columns: minmax(170px, .7fr) minmax(0, 1.6fr) 18px;
  align-items: center;
  gap: 5px 16px;
  min-height: 58px;
  padding: 10px 14px;
  list-style: none;
  cursor: pointer;
}
#liminaresBody .lmc-preparation-toggle::-webkit-details-marker { display: none; }
#liminaresBody .lmc-preparation-title { display: grid; gap: 2px; font: 600 13px "Manrope", sans-serif; }
#liminaresBody .lmc-preparation-title > span { color: var(--lmc-muted); font-size: 12px; font-weight: 500; }
#liminaresBody .lmc-preparation-state { color: var(--lmc-muted); font-size: 12px; font-weight: 500; line-height: 1.5; }
#liminaresBody .lmc-preparation-indicator::before { content: '+'; color: var(--lmc-accent); font: 500 20px "Manrope", sans-serif; }
#liminaresBody .lmc-preparation[open] .lmc-preparation-indicator::before { content: '−'; }
#liminaresBody .lmc-preparation-notice { grid-column: 1 / -1; color: var(--lmc-muted); font-size: 12px; font-weight: 500; line-height: 1.5; overflow-wrap: anywhere; }
#liminaresBody .lmc-preparation-notice:empty { display: none; }
#liminaresBody .lmc-preparation.has-attention .lmc-preparation-state,
#liminaresBody .lmc-preparation.has-attention .lmc-preparation-notice { color: var(--lmc-warning); }
#liminaresBody .lmc-preparation.has-failure .lmc-preparation-state,
#liminaresBody .lmc-preparation.has-failure .lmc-preparation-notice { color: var(--lmc-danger); }
#liminaresBody .lmc-preparation > .limprep {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 16px;
  margin: 0;
  padding: 12px 14px;
  border: 0;
  border-top: 1px solid var(--lmc-line);
  border-radius: 0 0 10px 10px;
  background: transparent;
  box-shadow: none;
}
#liminaresBody .lmc-preparation .limprep-topo { grid-column: 1 / -1; }
#liminaresBody .lmc-preparation .limprep-topo > div > b,
#liminaresBody .lmc-preparation .limprep-maq { display: none; }
#liminaresBody .lmc-preparation .limprep-topo p { margin: 0; color: var(--lmc-muted); font-size: 12px; font-weight: 500; }
#liminaresBody .lmc-preparation .limprep-escopo { align-content: center; gap: 3px 10px; }
#liminaresBody .lmc-preparation .limprep-escopo small { color: var(--lmc-muted); font-size: 12px !important; font-weight: 500; }
#liminaresBody .lmc-preparation :is(.limprep-go,.limprep-cancel) { min-height: 40px; margin: 0; border-radius: 7px; font-size: 12px; }
#liminaresBody .lmc-preparation .limprep-go { color: var(--lmc-accent); background: var(--lmc-accent-soft); border: 1px solid color-mix(in srgb, var(--lmc-accent) 35%, transparent); }
#liminaresBody .lmc-preparation .limprep-cancel { color: var(--lmc-danger); background: var(--lmc-danger-soft); border-color: color-mix(in srgb, var(--lmc-danger) 35%, transparent); }
#liminaresBody .lmc-preparation :is(.limprep-nums,.limprep-etapa,.limprep-cond,.limprep-barra,.limprep-estado,.limprep-pacote) { grid-column: 1 / -1; min-width: 0; }
#liminaresBody .lmc-preparation :is(.limprep-etapa,.limprep-cond) { margin: 0; font-size: 12px; line-height: 1.5; }
#liminaresBody .lmc-preparation .limprep-cond { color: var(--lmc-warning); }
#liminaresBody .lmc-preparation .limprep-nums .ruim { color: var(--lmc-danger); }
#liminaresBody :is(.lmc-mast,.lim-command-summary,.lim-command-toolbar,.lmc-preparation) :is(button,summary):focus-visible,
#liminaresBody .lmc-control:focus-visible { outline: 2px solid var(--lmc-blue); outline-offset: 3px; }
@media (max-width: 760px) {
  /* Só contêineres sem semântica viram contents; botões e disclosure continuam nativos. */
  #liminaresBody .lim-command-toolbar { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 5px; }
  #liminaresBody .lim-command-toolbar .lim-filarow,
  #liminaresBody .lim-command-toolbar .lim-filabar { display: contents; }
  #liminaresBody .lim-command-toolbar .lim-filabtn { min-width: 0; min-height: 46px; padding: 6px; white-space: normal; overflow-wrap: anywhere; border-radius: 7px; line-height: 1.35; }
  #liminaresBody .lim-command-toolbar .legal-lim-presentation { min-width: 0; }
  #liminaresBody .lim-command-toolbar .legal-lim-presentation[open] { grid-column: 1 / -1; }
  #liminaresBody .lim-command-toolbar .legal-lim-presentation > summary { min-height: 46px; padding: 6px; }
  #liminaresBody .legal-lim-presentation :is(.lim-sortbar,.lim-viewbar) { min-width: 0; width: 100%; flex-wrap: wrap; overflow: visible; }
  #liminaresBody .lmc-preparation-toggle { grid-template-columns: minmax(0, 1fr) 18px; gap: 5px 10px; padding: 10px 12px; }
  #liminaresBody .lmc-preparation-title > span { display: none; }
  #liminaresBody .lmc-preparation-state { grid-column: 1; grid-row: 2; }
  #liminaresBody .lmc-preparation-indicator { grid-column: 2; grid-row: 1; }
  #liminaresBody .lmc-preparation > .limprep { grid-template-columns: minmax(0, 1fr); padding: 10px 12px; }
  #liminaresBody .lim-command-toolbar .legal-lim-presentation > summary { min-width: 92px; }
}
@media (max-width: 480px) {
  #liminaresBody .lim-command-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  #liminaresBody .lim-command-toolbar .lim-filabtn { overflow-wrap: normal; }
}
@media (prefers-reduced-motion: reduce) {
  #liminaresBody .lmc-control,
  #liminaresBody .lim-ops-hero.lmc-mast .lim-command-counts > button { transition: none; }
}

/* Com o painel em FLUXO (e nao mais dropdown absoluto), ele precisa ocupar a
   linha inteira quando aberto -- senao tentaria sentar ao lado dos botoes da
   barra e espremeria todos. A barra passa a quebrar linha em qualquer largura;
   antes isso so valia em tela estreita, que era justamente onde o painel ja
   abria em fluxo e nao incomodava ninguem.
   Especificidade proposital (1,4,0) para vencer o `flex: 0 0 auto` de
   `#liminaresBody .lim-command-summary .lim-sitbar-head > .legal-lim-distribution`. */
#liminaresBody .lim-sitbar-head,
#liminaresBody .lim-command-summary .lim-sitbar-head { flex-wrap: wrap; }
#liminaresBody .lim-sitbar-head > .legal-lim-distribution[open],
#liminaresBody .lim-command-summary .lim-sitbar-head > .legal-lim-distribution[open] {
  flex: 1 0 100%;
  width: 100%;
}
