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

   ESCOPO: #ubs-clinical-modal (o overlay criado por units/02.js ja tem .aur).
   O aurora-legacy-reset NAO alcanca este host (ele e filho direto do <body>),
   entao aqui e preciso vencer 12-modais.css / 09-reception.css / 14-kanban
   explicitamente. Especificidade 1,x,x: o id sozinho ja ganha dos seletores de
   classe do legado; o !important e para os casos em que o legado tambem usa.

   Paineis atendidos: Regular paciente, Documentos do atendimento, Agenda da UBS,
   Perfis+Profissionais (fundidos), Estabelecimento+Municipio (fundidos),
   Paciente 360 (#paciente360-box, que vive dentro do mesmo modal).
   ========================================================================== */

/* ============================================================
   0. ANTIDOTO — devolve o kit dentro do modal clinico
   ============================================================ */

/* A caixa: superficie do sistema, tipografia do kit.
   ESCOPADO ao conteudo DESTE grupo: o mesmo .modal-box hospeda o SOAP de
   units/03.js (outro dono), entao a regra so vale quando o filho direto e um
   painel montado aqui (`<div class="aur pc">`). O Paciente 360 (.pc-360) fica
   de fora de proposito: ele vive DENTRO do modal do 03 e ja carrega .aur, nao
   precisa (nem pode) repintar a caixa alheia. */
#ubs-clinical-modal .modal-box:has(> .pc){
  color:var(--ink) !important;
  font-family:var(--font) !important;
  font-size:14.5px !important;
  line-height:1.5 !important;
}
body.theme-dark #ubs-clinical-modal .modal-box:has(> .pc){
  background:var(--glass) !important;
  backdrop-filter:blur(22px) saturate(1.5) !important;
  -webkit-backdrop-filter:blur(22px) saturate(1.5) !important;
  color:var(--ink) !important;
  box-shadow:var(--shadow) !important;
}

/* Botoes: 12-modais.css:355 pinta de branco todo `.btn` que nao seja
   `.btn-primary` — o que inclui o `.btn.primary` do kit, ou seja, a ACAO
   PRIMARIA de todos estes paineis. Aqui ela volta a ser o gradiente roxo. */
#ubs-clinical-modal :is(.pc,.pc-360) .btn{
  font-family:var(--font) !important;
  font-size:13px !important;
  font-weight:600 !important;
  height:auto !important;
  padding:9px 14px !important;
  border-radius:11px !important;
  border:1px solid var(--line) !important;
  background:transparent !important;
  color:var(--ink) !important;
  box-shadow:none !important;
  transition:.18s !important;
}
#ubs-clinical-modal :is(.pc,.pc-360) .btn:hover{ transform:translateY(-1px) !important }
#ubs-clinical-modal :is(.pc,.pc-360) .btn.ghost{ background:rgba(255,255,255,.35) !important }
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .btn.ghost{ background:rgba(255,255,255,.07) !important }
#ubs-clinical-modal :is(.pc,.pc-360) .btn.soft{
  color:var(--brand) !important;
  background:rgba(92,111,58,.12) !important;
  border-color:rgba(92,111,58,.24) !important;
}
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .btn.soft{ color:var(--brand2) !important; background:rgba(147,185,80,.16) !important }
#ubs-clinical-modal :is(.pc,.pc-360) .btn.primary{
  color:#fff !important;
  border:none !important;
  background:linear-gradient(135deg,var(--brand) 0%,#64793f 55%,#7f9b4e 100%) !important;
  box-shadow:0 10px 24px -8px rgba(78,98,44,.7) !important;
}
#ubs-clinical-modal :is(.pc,.pc-360) .btn.danger{
  color:#fff !important;
  border:none !important;
  background:linear-gradient(135deg,var(--err),#ff7a9a) !important;
}
#ubs-clinical-modal :is(.pc,.pc-360) .btn:disabled,
#ubs-clinical-modal :is(.pc,.pc-360) .btn[disabled]{
  opacity:.42 !important; cursor:not-allowed !important; filter:grayscale(.4) !important;
  transform:none !important; box-shadow:none !important;
}
#ubs-clinical-modal :is(.pc,.pc-360) .btn.sm{ padding:6px 10px !important; font-size:12px !important }
#ubs-clinical-modal :is(.pc,.pc-360) .btn i, #ubs-clinical-modal :is(.pc,.pc-360) .btn svg{ width:15px; height:15px; flex:none }

/* Campos: 12-modais.css:232 forca `label{display:block}` e mata o
   `.au-fld{display:flex;flex-direction:column}` do kit — 04/05 usam
   <label class="au-fld">, entao o rotulo e o input colavam. */
#ubs-clinical-modal :is(.pc,.pc-360) .au-fld{
  display:flex !important;
  flex-direction:column !important;
  gap:5px !important;
  margin:0 !important;
  font-size:10.5px !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
  color:var(--ink-soft) !important;
  line-height:1.35 !important;
  min-width:0;
}
#ubs-clinical-modal :is(.pc,.pc-360) .au-fld input,
#ubs-clinical-modal :is(.pc,.pc-360) .au-fld select,
#ubs-clinical-modal :is(.pc,.pc-360) .au-fld textarea{
  font-family:var(--font) !important;
  font-size:13px !important;
  font-weight:500 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  color:var(--ink) !important;
  background:rgba(255,255,255,.55) !important;
  border:1px solid var(--line) !important;
  border-radius:11px !important;
  padding:9px 12px !important;
  height:auto !important;
  min-height:40px !important;
  width:100% !important;
  margin:0 !important;
  box-shadow:none !important;
}
#ubs-clinical-modal :is(.pc,.pc-360) .au-fld textarea{ min-height:84px !important; resize:vertical !important; line-height:1.5 !important }
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .au-fld input,
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .au-fld select,
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .au-fld textarea{ background:rgba(255,255,255,.08) !important }
#ubs-clinical-modal :is(.pc,.pc-360) .au-fld input:focus,
#ubs-clinical-modal :is(.pc,.pc-360) .au-fld select:focus,
#ubs-clinical-modal :is(.pc,.pc-360) .au-fld textarea:focus{
  border-color:var(--brand2) !important;
  box-shadow:0 0 0 3px rgba(92,111,58,.18) !important;
}
#ubs-clinical-modal :is(.pc,.pc-360) .au-fld.is-invalid input,
#ubs-clinical-modal :is(.pc,.pc-360) .au-fld.is-invalid select{
  border-color:var(--err) !important; box-shadow:0 0 0 3px rgba(226,58,109,.15) !important;
}

/* `.au-hint` fora de um .au-fld nao tem regra nenhuma no kit — era a causa
   dos 76 style="color:var(--ink-soft)" inline de 04.js/05.js. */
#ubs-clinical-modal :is(.pc,.pc-360) .au-hint{
  font-size:12px !important;
  font-weight:500 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  color:var(--ink-soft) !important;
  line-height:1.45 !important;
  margin:0 !important;
}

/* Titulos e blocos base */
#ubs-clinical-modal .pc h3,
#ubs-clinical-modal .pc h4{ margin:0 !important; letter-spacing:-.02em; color:var(--ink) !important }
#ubs-clinical-modal .pc h3{ font-size:17px; font-weight:700 }
#ubs-clinical-modal .pc h4{ font-size:13px; font-weight:700 }
#ubs-clinical-modal :is(.pc,.pc-360) .au-empty{
  padding:26px 20px !important; text-align:center; font-size:13px; color:var(--ink-soft) !important;
  border:1px dashed var(--line); border-radius:16px; background:rgba(255,255,255,.32); line-height:1.5;
}
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .au-empty{ background:rgba(255,255,255,.05) }
#ubs-clinical-modal :is(.pc,.pc-360) .au-empty strong{ display:block; color:var(--ink) !important; font-size:14.5px; margin-bottom:3px }

/* Tabela do kit dentro do modal (Agenda) */
#ubs-clinical-modal :is(.pc,.pc-360) .au-table{ width:100%; border-collapse:separate; border-spacing:0; font-size:13px }
#ubs-clinical-modal :is(.pc,.pc-360) .au-table th{
  text-align:left; font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.06em;
  color:var(--ink-soft) !important; padding:8px 10px; border-bottom:1px solid var(--line); white-space:nowrap; background:none;
}
#ubs-clinical-modal :is(.pc,.pc-360) .au-table td{ padding:10px; border-bottom:1px solid var(--line); vertical-align:middle; color:var(--ink) !important }
#ubs-clinical-modal :is(.pc,.pc-360) .au-table tbody tr:last-child td{ border-bottom:none }
#ubs-clinical-modal :is(.pc,.pc-360) .au-table tbody tr:hover{ background:rgba(92,111,58,.07) }
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .au-table tbody tr:hover{ background:rgba(147,185,80,.1) }
#ubs-clinical-modal :is(.pc,.pc-360) .au-table-wrap{ overflow-x:auto; scrollbar-width:thin; border:1px solid var(--line); border-radius:14px }

/* Selo de estado (.st do kit) — o legado escurece span dentro do modal */
#ubs-clinical-modal :is(.pc,.pc-360) .st{
  font-style:normal; font-size:10.5px; font-weight:700; padding:4px 10px; border-radius:20px;
  display:inline-flex; align-items:center; gap:5px; white-space:nowrap;
}
#ubs-clinical-modal :is(.pc,.pc-360) .st::before{ content:""; width:6px; height:6px; border-radius:50%; background:currentColor }
/* Cor do selo: quem manda e o kit (.aur .st.*). No CLARO nao ha nada a vencer,
   por isso nao ha redeclaracao aqui. No ESCURO, 02-base.css:613 forca
   `color:var(--text-main) !important` em TODO <span> dentro de .modal-box e
   apaga a semantica do selo — so entao devolvemos a cor, e pelos TOKENS de
   estado do kit (--ok/--warn/--err/--info), nunca clonando os hex do core:
   ajuste de paleta no kit continua valendo aqui dentro. */
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .st.defer{ color:var(--ok) !important }
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .st.pend{ color:var(--warn) !important }
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .st.neg{ color:var(--err) !important }
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .st.neu{ color:var(--ink-soft) !important }

/* Abas do kit dentro do modal */
#ubs-clinical-modal .pc-tabs{ display:flex; gap:4px; padding:5px; background:rgba(92,111,58,.08); border-radius:15px; align-self:flex-start; flex-wrap:wrap }
body.theme-dark #ubs-clinical-modal .pc-tabs{ background:rgba(147,185,80,.1) }
#ubs-clinical-modal :is(.pc,.pc-360) .pc-tabs .tab{
  font-family:var(--font); font-size:13px; font-weight:600; color:var(--ink-soft);
  background:transparent; border:none; padding:8px 16px; border-radius:12px; cursor:pointer; white-space:nowrap;
}
#ubs-clinical-modal :is(.pc,.pc-360) .pc-tabs .tab.active{
  color:#fff; background:linear-gradient(135deg,var(--brand),#64793f);
  box-shadow:0 8px 20px -8px rgba(78,98,44,.7);
}

/* ============================================================
   1. CASCA DOS PAINEIS (.pc)
   ============================================================ */

/* Raiz unica de todo painel: vira o unico filho direto de .modal-box, o que
   neutraliza o `> * + * {margin-top:12px}` implicito do 12-modais.css. */
#ubs-clinical-modal .pc{ display:flex; flex-direction:column; gap:14px }
/* o <form> e so um agrupador: o ritmo vertical e o mesmo do painel */
#ubs-clinical-modal .pc form{ display:flex; flex-direction:column; gap:14px; margin:0 }
#ubs-clinical-modal .pc h3 i, #ubs-clinical-modal .pc h3 svg{ width:18px; height:18px; vertical-align:-3px }

/* Cabecalho: volta + titulo + acao secundaria de contexto */
#ubs-clinical-modal .pc-head{ display:flex; align-items:flex-start; justify-content:space-between; gap:12px; flex-wrap:wrap }
#ubs-clinical-modal .pc-head-txt{ display:flex; flex-direction:column; gap:3px; min-width:0 }
#ubs-clinical-modal .pc-nav{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:2px }

/* Identificacao do paciente — dado clinico, separado do texto de interface */
#ubs-clinical-modal .pc-ident{
  display:flex; align-items:center; gap:12px;
  padding:11px 14px; border-radius:14px;
  background:rgba(92,111,58,.09); border:1px solid var(--line);
}
body.theme-dark #ubs-clinical-modal .pc-ident{ background:rgba(147,185,80,.12) }
#ubs-clinical-modal .pc-av{
  width:36px; height:36px; border-radius:12px; flex:none; display:grid; place-items:center;
  color:#fff; font-size:12px; font-weight:800; letter-spacing:.02em;
  background:linear-gradient(135deg,var(--brand),#64793f);
}
#ubs-clinical-modal .pc-ident b{ font-size:14.5px; font-weight:700; color:var(--ink) !important; display:block; line-height:1.3 }
#ubs-clinical-modal .pc-ident .pc-doc{ font-size:12px; color:var(--ink-soft) !important; font-variant-numeric:tabular-nums }

/* Faixa de feedback dentro do painel (substitui alert()) */
#ubs-clinical-modal .pc-status{
  display:none; align-items:flex-start; gap:8px;
  padding:10px 13px; border-radius:12px; font-size:12px; line-height:1.45;
  border:1px solid var(--line); background:rgba(255,255,255,.4); color:var(--ink) !important;
  white-space:pre-line;
}
body.theme-dark #ubs-clinical-modal .pc-status{ background:rgba(255,255,255,.06) }
#ubs-clinical-modal .pc-status.show{ display:flex }
#ubs-clinical-modal .pc-status.err{ border-color:rgba(226,58,109,.4); background:rgba(226,58,109,.1) }
#ubs-clinical-modal .pc-status.ok{ border-color:rgba(63,157,106,.4); background:rgba(63,157,106,.1) }
#ubs-clinical-modal .pc-status.work{ border-color:rgba(92,111,58,.35); background:rgba(92,111,58,.1) }

/* Rodape de acoes: primaria a direita, sem competir com a saida */
#ubs-clinical-modal .pc-actions{
  display:flex; align-items:center; justify-content:flex-end; gap:9px; flex-wrap:wrap;
  margin:4px -30px -22px; padding:13px 30px;
  border-top:1px solid var(--line);
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(8px);
  border-radius:0 0 20px 20px;
  position:sticky; bottom:-22px; z-index:5;
}
body.theme-dark #ubs-clinical-modal .pc-actions{ background:rgba(46,52,36,.86) }
#ubs-clinical-modal .pc-actions .pc-left{ margin-right:auto }

/* Scroller de lista longa */
#ubs-clinical-modal .pc-scroll{ max-height:56vh; overflow:auto; display:flex; flex-direction:column; gap:10px; padding-right:2px }

/* Secao com titulo dentro do painel */
#ubs-clinical-modal .pc-sec{ display:flex; flex-direction:column; gap:9px }
#ubs-clinical-modal .pc-sec-head{ display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap }

/* Cartao generico (linha de documento, ficha de profissional, perfil) */
#ubs-clinical-modal .pc-card{
  border:1px solid var(--line); border-radius:14px; padding:12px 14px;
  background:rgba(255,255,255,.42); display:flex; flex-direction:column; gap:9px;
}
body.theme-dark #ubs-clinical-modal .pc-card{ background:rgba(255,255,255,.05) }
#ubs-clinical-modal .pc-card.is-dirty{ border-color:rgba(198,138,44,.55); background:rgba(232,134,58,.09) }
#ubs-clinical-modal .pc-card-head{ display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap }
#ubs-clinical-modal .pc-card-head b{ font-size:13px; font-weight:700; color:var(--ink) !important }
#ubs-clinical-modal .pc-row-actions{ display:flex; align-items:center; gap:6px; flex-wrap:wrap }
#ubs-clinical-modal .pc-row-actions.end{ justify-content:flex-end }

/* Grade de checkboxes (permissoes / perfis) */
#ubs-clinical-modal .pc-checks{ display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:4px 14px }
#ubs-clinical-modal .pc-chk{
  display:flex !important; align-items:center; gap:7px; margin:0 !important;
  font-size:12px !important; font-weight:500 !important; text-transform:none !important;
  letter-spacing:0 !important; color:var(--ink) !important; cursor:pointer; line-height:1.35;
}
#ubs-clinical-modal .pc-chk input[type=checkbox]{ width:15px !important; height:15px !important; margin:0 !important; accent-color:var(--brand2); flex:none }
#ubs-clinical-modal .pc-mod{
  font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.06em;
  color:var(--ink-soft) !important; border-bottom:1px solid var(--line); padding-bottom:3px; margin-top:6px;
}

/* Busca em largura total (barra de comando, nao caixinha) */
#ubs-clinical-modal .pc-search{
  display:flex; align-items:center; gap:10px;
  background:rgba(255,255,255,.5); border:1px solid var(--line); border-radius:14px; padding:4px 14px;
}
body.theme-dark #ubs-clinical-modal .pc-search{ background:rgba(255,255,255,.06) }
#ubs-clinical-modal .pc-search:focus-within{ border-color:var(--brand2); box-shadow:0 0 0 3px rgba(92,111,58,.18) }
#ubs-clinical-modal .pc-search input{
  flex:1; border:none !important; background:transparent !important; box-shadow:none !important; outline:none;
  font-family:var(--font) !important; font-size:14.5px !important; color:var(--ink) !important; height:40px !important; padding:0 !important;
}
#ubs-clinical-modal .pc-search i, #ubs-clinical-modal .pc-search svg{ color:var(--ink-soft); flex:none }

/* Etiqueta de pendencia */
#ubs-clinical-modal .pc-tag{
  font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.06em;
  padding:3px 9px; border-radius:20px; color:var(--ink-soft) !important; background:rgba(77,90,54,.1); white-space:nowrap;
}
#ubs-clinical-modal .pc-tag.warn{ color:#ad631e !important; background:rgba(232,134,58,.16) }
body.theme-dark #ubs-clinical-modal .pc-tag.warn{ color:#ffb877 !important }

/* Campo-chave: o dado que quebra o arquivo/documento se faltar */
#ubs-clinical-modal .pc-key{
  border:1px solid rgba(92,111,58,.3); background:rgba(92,111,58,.08);
  border-radius:14px; padding:12px 14px; display:grid; gap:10px;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
}
body.theme-dark #ubs-clinical-modal .pc-key{ background:rgba(147,185,80,.12) }
#ubs-clinical-modal .pc-key-note{ grid-column:1/-1 }

/* Pre-visualizacao do cabecalho do documento */
#ubs-clinical-modal .pc-preview{
  border:1px dashed var(--line); border-radius:14px; padding:14px 16px; text-align:center;
  background:rgba(255,255,255,.5); line-height:1.45;
}
body.theme-dark #ubs-clinical-modal .pc-preview{ background:rgba(255,255,255,.05) }
#ubs-clinical-modal .pc-preview b{ display:block; font-size:13px; color:var(--ink) !important }
#ubs-clinical-modal .pc-preview span{ display:block; font-size:12px; color:var(--ink-soft) !important }

/* ============================================================
   2. REGULAR PACIENTE — linhas de encaminhamento
   (sobrepoe 09-reception.css:532-541, que nao e meu para podar)
   ============================================================ */
#ubs-clinical-modal :is(.pc,.pc-360) .reg-itens{ display:flex; flex-direction:column; gap:8px }
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-row{
  display:grid; grid-template-columns:180px 1fr 34px; gap:8px; align-items:center;
  border:1px solid var(--line); border-radius:14px; padding:8px 10px; background:rgba(255,255,255,.42);
}
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .reg-item-row{ background:rgba(255,255,255,.05) }
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-row .reg-item-tipo,
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-row .reg-item-input{
  font-family:var(--font) !important; font-size:13px !important; color:var(--ink) !important;
  background:rgba(255,255,255,.6) !important; border:1px solid var(--line) !important;
  border-radius:10px !important; padding:8px 11px !important; height:auto !important; min-height:38px !important;
  width:100% !important; margin:0 !important; box-shadow:none !important;
}
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .reg-item-row .reg-item-tipo,
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .reg-item-row .reg-item-input{ background:rgba(255,255,255,.08) !important }
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-row .reg-item-input:focus,
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-row .reg-item-tipo:focus{ border-color:var(--brand2) !important; box-shadow:0 0 0 3px rgba(92,111,58,.18) !important }
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-ac{ min-width:0 }
/* O × mentia: com uma linha so ele apenas limpava o campo. Some quando nao remove. */
#ubs-clinical-modal :is(.pc,.pc-360) .reg-itens .reg-item-row:only-child .reg-item-remove{ display:none !important }
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-remove{
  width:32px !important; height:32px !important; padding:0 !important; justify-self:center;
  border-radius:10px !important; border:1px solid var(--line) !important;
  background:transparent !important; color:var(--ink-soft) !important;
  font-size:17px !important; line-height:1 !important; cursor:pointer;
  display:inline-flex !important; align-items:center; justify-content:center;
}
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-remove:hover{ color:var(--err) !important; border-color:rgba(226,58,109,.45) !important; background:rgba(226,58,109,.1) !important }
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-add{ align-self:flex-start }
/* Linha ja enviada (protocolo criado): fica visivelmente fechada, para o usuario
   ver que aquele item nao vai ser reenviado numa nova tentativa. */
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-row.is-sent{
  border-color:rgba(63,157,106,.35); background:rgba(63,157,106,.08);
}
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .reg-item-row.is-sent{ background:rgba(102,214,154,.1) }
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-row.is-sent :is(.reg-item-tipo,.reg-item-input){ opacity:.7 }
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-sent{
  grid-column:1 / -1; font-size:10.5px; font-weight:700; color:var(--ok) !important;
  display:inline-flex; align-items:center; gap:5px;
}
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-sent::before{ content:"✓" }
@media (max-width:640px){
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-row{ grid-template-columns:1fr 34px; grid-template-areas:"tipo rm" "ac ac" }
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-row .reg-item-tipo{ grid-area:tipo }
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-ac{ grid-area:ac }
#ubs-clinical-modal :is(.pc,.pc-360) .reg-item-remove{ grid-area:rm }
}
/* Autocomplete: estrutura vem de 14-kanban (contrato do _regSuggest/_regPick).
   Aqui so a pintura, em tokens. */
/* z-index NAO entra aqui: 14-kanban:766 ja da 9999 a lista, e rebaixar para 20
   deixaria a sugestao a merce de qualquer overlay futuro dentro do modal. */
#ubs-clinical-modal :is(.pc,.pc-360) .reg-ac-list{
  background:rgba(255,255,255,.98) !important; border:1px solid var(--line) !important;
  border-radius:12px !important; box-shadow:var(--shadow) !important;
}
/* Escuro: superficie de vidro do kit (o mesmo par background+blur de .glass),
   em vez de um hex de superficie que nao existe no design system. */
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .reg-ac-list{
  background:var(--glass) !important;
  backdrop-filter:blur(22px) saturate(1.5) !important;
  -webkit-backdrop-filter:blur(22px) saturate(1.5) !important;
}
#ubs-clinical-modal :is(.pc,.pc-360) .reg-ac-item{
  color:var(--ink) !important; font-family:var(--font) !important; font-size:13px !important;
  background:transparent !important; border:none !important; text-align:left; width:100%;
}
#ubs-clinical-modal :is(.pc,.pc-360) .reg-ac-item:hover{ background:rgba(92,111,58,.12) !important }
#ubs-clinical-modal :is(.pc,.pc-360) .reg-ac-code{ color:var(--brand) !important; font-weight:700 }
/* aviso de CBO de execucao incompativel (nao impeditivo) */
#ubs-clinical-modal :is(.pc,.pc-360) .reg-ac-warn{ color:var(--warn) !important; font-weight:700 }
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .reg-ac-code{ color:var(--brand2) !important }

/* Justificativa pre-preenchida: o campo parece respondido, e nao esta revisado. */
#ubs-clinical-modal .pc-prefill{
  display:inline-flex; align-items:center; gap:6px;
  font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.06em;
  color:#ad631e !important; background:rgba(232,134,58,.16); padding:3px 9px; border-radius:20px;
}
body.theme-dark #ubs-clinical-modal .pc-prefill{ color:#ffb877 !important }
#ubs-clinical-modal :is(.pc,.pc-360) .au-fld.pc-just{ gap:6px !important }
#ubs-clinical-modal .pc-fld-head{ display:flex; align-items:center; justify-content:space-between; gap:8px; flex-wrap:wrap }

/* ============================================================
   3. DOCUMENTOS DO ATENDIMENTO
   (sobrepoe .reg-doc-list/.reg-doc-row de 14-kanban:775-777)
   ============================================================ */
#ubs-clinical-modal :is(.pc,.pc-360) .reg-doc-list{ display:flex; flex-direction:column; gap:9px; max-height:52vh; overflow:auto; padding:0 !important; border:none !important; background:none !important }
#ubs-clinical-modal :is(.pc,.pc-360) .reg-doc-row{
  display:flex !important; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap;
  border:1px solid var(--line) !important; border-radius:14px !important; padding:11px 14px !important;
  background:rgba(255,255,255,.42) !important;
}
body.theme-dark #ubs-clinical-modal :is(.pc,.pc-360) .reg-doc-row{ background:rgba(255,255,255,.05) !important }
#ubs-clinical-modal :is(.pc,.pc-360) .reg-doc-row strong{ font-size:13px; font-weight:700; color:var(--ink) !important }
#ubs-clinical-modal .pc-doc-meta{ display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-top:3px }
#ubs-clinical-modal .pc-doc-detail{
  flex-basis:100%; border-top:1px dashed var(--line); margin-top:4px; padding-top:9px;
  font-size:12px; color:var(--ink-soft) !important; white-space:pre-line; line-height:1.5;
}

/* ============================================================
   4. AGENDA DA UBS
   ============================================================ */
#ubs-clinical-modal .pc-filters{ display:flex; gap:10px; align-items:flex-end; flex-wrap:wrap }
#ubs-clinical-modal :is(.pc,.pc-360) .pc-filters .au-fld{ min-width:150px }
#ubs-clinical-modal .pc-filters .pc-right{ margin-left:auto }
#ubs-clinical-modal .pc-inline-form{
  border:1px solid rgba(92,111,58,.3); background:rgba(92,111,58,.08);
  border-radius:16px; padding:14px; display:flex; flex-direction:column; gap:12px;
}
body.theme-dark #ubs-clinical-modal .pc-inline-form{ background:rgba(147,185,80,.12) }
#ubs-clinical-modal .pc-ag-nome{ font-weight:600; color:var(--ink) !important }
#ubs-clinical-modal .pc-ag-hora{ font-weight:700; font-variant-numeric:tabular-nums; color:var(--ink) !important }
#ubs-clinical-modal .pc-ag-acoes{ display:flex; align-items:center; gap:6px; flex-wrap:nowrap; justify-content:flex-end }

/* ============================================================
   5. PACIENTE 360 (#paciente360-box, dentro do mesmo modal)
   ============================================================ */
#ubs-clinical-modal .pc-360{
  border:1px solid var(--line); border-radius:16px; padding:14px;
  background:rgba(255,255,255,.42); display:flex; flex-direction:column; gap:12px; margin:8px 0;
}
body.theme-dark #ubs-clinical-modal .pc-360{ background:rgba(255,255,255,.05) }
#ubs-clinical-modal .pc-360-head{ display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap }
#ubs-clinical-modal .pc-360-head b{ display:flex; align-items:center; gap:7px; font-size:14.5px; font-weight:700; color:var(--ink) !important }
#ubs-clinical-modal .pc-360-head b i, #ubs-clinical-modal .pc-360-head b svg{ width:16px; height:16px; flex:none; color:var(--brand) }
body.theme-dark #ubs-clinical-modal .pc-360-head b i, body.theme-dark #ubs-clinical-modal .pc-360-head b svg{ color:var(--brand2) }
/* Hierarquia: o que muda conduta hoje ocupa a faixa larga; o resto e consulta. */
#ubs-clinical-modal .pc-360-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(270px,1fr)); gap:10px }
#ubs-clinical-modal .pc-360-grid.sec{ grid-template-columns:repeat(auto-fit,minmax(230px,1fr)) }
#ubs-clinical-modal .pc-360-sub{
  font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.06em;
  color:var(--ink-soft) !important; margin-top:2px;
}
#ubs-clinical-modal .pc-sec-card{
  border:1px solid var(--line); border-radius:14px; padding:11px 13px; background:rgba(255,255,255,.5);
  display:flex; flex-direction:column; gap:7px;
}
body.theme-dark #ubs-clinical-modal .pc-sec-card{ background:rgba(255,255,255,.06) }
#ubs-clinical-modal .pc-sec-card.lead{ border-color:rgba(92,111,58,.32); background:rgba(92,111,58,.07) }
body.theme-dark #ubs-clinical-modal .pc-sec-card.lead{ background:rgba(147,185,80,.12) }
#ubs-clinical-modal .pc-sec-card > .pc-sec-title{
  display:flex; align-items:center; gap:7px; font-size:12px; font-weight:700; color:var(--ink) !important;
}
#ubs-clinical-modal .pc-sec-card > .pc-sec-title i, #ubs-clinical-modal .pc-sec-card > .pc-sec-title svg{ width:15px; height:15px; flex:none; color:var(--brand) }
body.theme-dark #ubs-clinical-modal .pc-sec-card > .pc-sec-title i,
body.theme-dark #ubs-clinical-modal .pc-sec-card > .pc-sec-title svg{ color:var(--brand2) }
#ubs-clinical-modal .pc-sec-title .pc-count{
  margin-left:auto; font-size:10.5px; font-weight:700; color:var(--ink-soft) !important;
  background:rgba(77,90,54,.1); border-radius:20px; padding:2px 9px;
}
body.theme-dark #ubs-clinical-modal .pc-sec-title .pc-count{ background:rgba(147,185,80,.14) }
#ubs-clinical-modal .pc-list{ display:flex; flex-direction:column; gap:5px }
#ubs-clinical-modal .pc-li{ font-size:12px; line-height:1.45; color:var(--ink) !important; display:flex; gap:7px; align-items:flex-start }
#ubs-clinical-modal .pc-li .pc-when{ color:var(--ink-soft) !important; font-variant-numeric:tabular-nums; flex:none }
#ubs-clinical-modal .pc-li .pc-note{ display:block; color:var(--ink-soft) !important; font-size:12px; margin-top:1px }
#ubs-clinical-modal .pc-risco{ width:8px; height:8px; border-radius:50%; flex:none; margin-top:5px; background:var(--ink-soft) }
#ubs-clinical-modal .pc-risco.r0{ background:var(--p0) } /* vermelho */
#ubs-clinical-modal .pc-risco.r1{ background:var(--p1) } /* laranja */
#ubs-clinical-modal .pc-risco.r2{ background:var(--p2) } /* amarelo */
#ubs-clinical-modal .pc-risco.r3{ background:var(--p3) } /* verde */
#ubs-clinical-modal .pc-risco.r4{ background:var(--info) } /* azul */
#ubs-clinical-modal .pc-more{
  align-self:flex-start; font-family:var(--font); font-size:12px; font-weight:700;
  color:var(--brand) !important; background:none !important; border:none !important; padding:2px 0 !important;
  cursor:pointer; text-decoration:underline; text-underline-offset:2px;
}
body.theme-dark #ubs-clinical-modal .pc-more{ color:var(--brand2) !important }

/* ============================================================
   6. RESPONSIVO
   ============================================================ */
@media (max-width:720px){
#ubs-clinical-modal .pc-actions{ margin-left:-20px; margin-right:-20px; padding-left:20px; padding-right:20px }
#ubs-clinical-modal .pc-checks{ grid-template-columns:1fr }
}
