/* Aurora — painel: units01
   Arquivo EXCLUSIVO deste grupo. Carrega depois do kit e antes do
   aurora-legacy-reset.css (que segue sendo a ultima camada antidoto).

   Paineis: Farmácia (modulo da unidade, com o livro 344/98 dentro),
   Painel Regulacao (unidade), Chamados, Painel Executante e a vitrine de
   unidades (#view-units). Tudo escopado — nada aqui vaza para outro grupo.

   Um unico literal de cor no arquivo: o branco sobre superficie de marca,
   declarado como token local (--u1-on-brand) e consumido so por var(). */
.aur{ --u1-on-brand:#fff }

/* ═══════════════ 1. IDENTIDADE DO PAINEL NO HEADER DA UNIDADE ═══════════════
   O header do shell nomeia a UNIDADE; o painel aberto nao se nomeava em lugar
   nenhum (a pilula do rail some com o rail colapsado a 78px). Em vez de um
   SEGUNDO cabecalho no corpo, o nome do painel entra na linha de contexto que
   ja existe — mesma altura, zero pixel a mais. */
.aur .intranet-header-kicker{ display:flex; align-items:center; gap:8px; flex-wrap:wrap }
.aur #ubs-panel-chip{
  font-size:10.5px; font-weight:800; letter-spacing:.07em; text-transform:uppercase;
  color:var(--u1-on-brand); background:linear-gradient(135deg,var(--brand),var(--acc));
  border-radius:20px; padding:3px 10px; line-height:1.5;
  box-shadow:0 8px 18px -10px var(--brand);
}

/* ═══════════════ 2. VITRINE DE UNIDADES — icone por categoria ═══════════════
   Substitui os 10 hex literais que _unitIcon injetava via style= inline.
   A categoria vem do JS em data-cat; a cor vem dos tokens (vira dark sozinha). */
#view-units .u-ico{ color:var(--u1-on-brand); box-shadow:var(--shadow) }
#view-units .u-ico[data-cat="basica"]{ background:linear-gradient(135deg,var(--brand),var(--brand2)) }
#view-units .u-ico[data-cat="regulacao"]{ background:linear-gradient(135deg,var(--ink),var(--brand)) }
#view-units .u-ico[data-cat="especializada"]{ background:linear-gradient(135deg,var(--acc),var(--lilac)) }
#view-units .u-ico[data-cat="movel"]{ background:linear-gradient(135deg,var(--warn),var(--p1)) }
#view-units .u-ico[data-cat="caps"]{ background:linear-gradient(135deg,var(--p0),var(--brand2)) }

/* ═══════════════ 3. MODULO FARMACIA — as duas metades da mesma sala ═══════════
   Estoque/Dispensar/Inventário/Relatórios/Indicadores e, no MESMO modulo, o
   livro de controlados (344/98). O filete + rotulo separam as metades sem
   precisar de dois pontos distantes no rail.

   ESCOPO: a barra de abas (.mod-subtabs / #ubs-submenu-tabs) e do shell e serve
   TODOS os modulos da unidade (Sala de Vacina, Laboratorio, Ciclo do Atendimento,
   units/06...). Por isso nada aqui casa com `.mod-tab-sep` puro: o gancho e o
   atributo `data-sep`, que o proprio item declara com o SEU rotulo
   (units/01.js, _buildTabsHtml). Hoje so a Farmácia declara — modulo de outro
   grupo nao e tocado nem herda o rotulo "344/98". */
.aur .mod-subtabs:has(.mod-tab-sep[data-sep]){ padding-top:14px } /* espaco p/ o rotulo */
.aur .mod-tab-sep[data-sep]{ position:relative; margin-left:22px }
.aur .mod-tab-sep[data-sep]::before{
  content:""; position:absolute; left:-12px; top:8px; bottom:8px;
  width:1px; background:var(--line);
}
.aur .mod-tab-sep[data-sep]::after{
  content:attr(data-sep); position:absolute; left:14px; top:-9px;
  font-size:10.5px; font-weight:800; letter-spacing:.09em; color:var(--brand2);
}

/* corpo embutido do BPA (era style= inline) */
.aur .u1-embed-root{ padding:18px 20px; min-height:60vh }
.aur .u1-embed-erro{ padding:24px; color:var(--err); font-weight:600 }

/* ═══════════════ 4. REGULACAO / CHAMADOS EMBUTIDOS NA UNIDADE ═══════════════
   O contrato de embed passou a esconder tambem o `.reg-header` e a teleportar
   o `.reg-header-actions` para o slot do header do shell (units/01.js).

   O teleporte tira os botoes de dentro de #view-regulacao, e TODO o estilo de
   `.reg-hbtn` mora sob esse ancestral (css/16/07.css:298-306 e
   css/aurora-reg.css:108-112): fora dele eles perdem display flex, altura,
   padding, raio e cor, e o "Atualizar" (sem rotulo) perde ate a largura fixa.
   Entao aqui repomos a GEOMETRIA no slot e so depois tratamos a hierarquia.
   Nenhuma acao e escondida: hierarquia se faz com peso, nao com display:none. */
#ubs-header-actions-slot .reg-header-actions{
  display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin:0;
}
#ubs-header-actions-slot .reg-hbtn{
  display:inline-flex; align-items:center; justify-content:center; gap:6px;
  height:38px; padding:0 13px; border-radius:12px;
  border:1px solid var(--line); background:var(--glass); color:var(--ink-soft);
  font-family:var(--font); font-size:12px; font-weight:600; line-height:1;
  white-space:nowrap; cursor:pointer; box-shadow:none;
}
#ubs-header-actions-slot .reg-hbtn:hover{ color:var(--brand); border-color:var(--brand2) }
#ubs-header-actions-slot .reg-hbtn svg{ flex:none }

/* A acao primaria lidera: "Nova solicitação" e a razao de o usuario abrir a fila.
   Ancorada no onclick (o marcador estavel do botao em reg/11-design.js:263) — nao
   em :first-of-type, que conta por TIPO de elemento e casaria no botao errado. */
#ubs-header-actions-slot .reg-hbtn[onclick*="openRequestModal"]{
  color:var(--u1-on-brand); background:linear-gradient(135deg,var(--brand),var(--acc));
  border-color:transparent; box-shadow:0 10px 22px -12px var(--brand);
}
#ubs-header-actions-slot .reg-hbtn[onclick*="openRequestModal"]:hover{
  color:var(--u1-on-brand); border-color:transparent; filter:brightness(1.06);
}

/* "Atualizar" nao tem rotulo: e um icone quadrado, e a largura fixa ficou para tras
   em #view-regulacao .reg-hbtn-pri (16/07.css:303). Reposta aqui, com peso neutro —
   recarregar a lista nao e a acao principal da tela. */
#ubs-header-actions-slot .reg-hbtn-pri{
  width:38px; padding:0; color:var(--ink-soft); background:transparent;
}
#ubs-header-actions-slot .reg-hbtn-pri:hover{ color:var(--brand); background:var(--glass) }

/* "Sair" chama app.auth.logout() (reg/11-design.js:267) — ENCERRA A SESSAO. O rodape
   do rail so oferece "Sair da unidade" (app.units.render(true), shell.js:117), que
   volta para a lista de unidades sem deslogar. Sao acoes diferentes, entao o logout
   CONTINUA na tela: perde o peso de acao primaria e vai para o fim da linha. */
#ubs-header-actions-slot .reg-hbtn-danger{
  order:2; color:var(--ink-soft); background:transparent; box-shadow:none;
}
#ubs-header-actions-slot .reg-hbtn-danger:hover{ color:var(--err); border-color:var(--err) }

/* Dentro do card do shell o painel nao repete card: sem largura fixa, sem uma
   segunda superficie de vidro por cima da primeira. */
#view-ubs-intranet #ubs-main-content #view-regulacao .reg-shell{
  width:auto !important; max-width:none !important; margin:0 !important; padding:0 !important;
  background:transparent !important; border:none !important; box-shadow:none !important;
}

/* A faixa "Filtros" consumia uma linha inteira mesmo fechada, empurrando a fila
   (o que o usuario veio ver) para baixo da dobra. Fechada, e uma pilula. */
#view-ubs-intranet #ubs-main-content .reg-filters-toggle-row{
  width:max-content; margin-left:auto; padding:6px 12px; border-radius:20px;
  font-size:12px; color:var(--ink-soft); cursor:pointer;
}
#view-ubs-intranet #ubs-main-content .reg-filters-toggle-row:hover,
#view-ubs-intranet #ubs-main-content .reg-filters-toggle-row.open{ color:var(--brand) }

/* Modo Chamados: a faixa de filtros da Regulacao (especialidade / tipo /
   prioridade) nao filtra NADA de agenda — sai da tela. A classe
   .reg-mode-chamados ja tinha consumidor (css/19-panel-refine.css:205-206, que
   achata os placeholders de estado); aqui ela ganha mais um, DENTRO da unidade. */
#view-ubs-intranet #view-regulacao.reg-mode-chamados .reg-filters-wrap{ display:none }

/* ═══════════════ 5. EXECUTANTE — o codigo de autorizacao lidera ═══════════════
   A acao repetida a cada chegada de paciente e admitir pelo codigo. Ela vinha
   DEPOIS da navegacao por data, em duas faixas de vidro empilhadas disputando o
   topo. Ordem invertida: barra de comando em largura total primeiro, data como
   linha secundaria (sem card proprio). */
#ubs-main-content[data-u1="exec"] .reg-exec-admit,
#ubs-main-content[data-u1="exec"] .reg-exec-readonly{ order:-2 }
#ubs-main-content[data-u1="exec"] .reg-exec-bar{ order:-1 }

#ubs-main-content[data-u1="exec"] .reg-exec-admit{
  align-items:center; gap:12px; padding:16px 18px; border-radius:18px;
  border:1px solid var(--glass-brd);
  background:var(--glass); /* fallback antes do color-mix */
  background:linear-gradient(135deg,color-mix(in srgb,var(--brand2) 12%,transparent),transparent 65%);
}
#ubs-main-content[data-u1="exec"] .reg-exec-admit .field.search{ flex:1 1 380px; min-width:0; height:48px }
#ubs-main-content[data-u1="exec"] .reg-exec-admit .field.search input{ font-size:14.5px }
#ubs-main-content[data-u1="exec"] .reg-exec-admit > .btn.primary{ height:48px; padding:0 20px; font-size:14.5px }

/* Somente-leitura: a regra vira estrutura (faixa fina no lugar da barra de
   comando), em vez de um bloco vazio explicando a propria interface. */
#ubs-main-content[data-u1="exec"] .reg-exec-readonly{
  display:flex; align-items:baseline; gap:10px; flex-wrap:wrap;
  padding:11px 16px; border-radius:16px; text-align:left;
}
#ubs-main-content[data-u1="exec"] .reg-exec-readonly strong{ display:inline; margin:0; font-size:13px }

/* A barra de data e navegacao, nao comando: perde o card e o peso. */
#ubs-main-content[data-u1="exec"] .reg-exec-bar{
  padding:2px 2px 10px; background:transparent; border:none; box-shadow:none;
  backdrop-filter:none; -webkit-backdrop-filter:none;
  border-bottom:1px solid var(--line); border-radius:0;
}

/* Coluna "Acao": rotina a esquerda, destrutivo/desfazer a direita — agrupados
   por natureza, nao por proximidade. */
#ubs-main-content[data-u1="exec"] .au-table td .au-toolbar{ gap:6px }
#ubs-main-content[data-u1="exec"] .au-table td .au-toolbar .btn.danger{ margin-left:14px }
#ubs-main-content[data-u1="exec"] .au-table td .au-toolbar .btn.danger,
#ubs-main-content[data-u1="exec"] .au-table td .au-toolbar .icon-btn[title="Desfazer admissão"]{
  color:var(--ink-soft); background:transparent; border:1px solid var(--line); box-shadow:none;
}
#ubs-main-content[data-u1="exec"] .au-table td .au-toolbar .btn.danger:hover{ color:var(--err); border-color:var(--err) }
#ubs-main-content[data-u1="exec"] .au-table td .au-toolbar .icon-btn[title="Desfazer admissão"]:hover{ color:var(--brand) }

/* ═══════════════ 6. RESPONSIVO ═══════════════ */
@media (max-width:720px){
  #ubs-main-content[data-u1="exec"] .reg-exec-admit{ align-items:stretch }
  #ubs-main-content[data-u1="exec"] .reg-exec-admit > .btn.primary{ width:100% }
  .aur #ubs-panel-chip{ font-size:10.5px }
}
