/* =========================================================================
 * CEDAR · cedar_exame_tela1_redesign.css
 * Redesign da Tela 1 do exame (Paciente / Exame) — Claude Design, turno 1.
 * Fonte: "Exame Colonoscopia - Tela 1 Paciente Exame - Redesign.dc.html"
 * (projeto claude.ai/design a5cfc31c · frames 1a–1e, specs 1f–1k).
 *
 * TUDO escopado em :root[data-cedar-tela1="on"] — o addon põe/tira esse
 * atributo, então o kill-switch reverte 100 % do visual sem reload.
 * Tokens CEDAR Fase 0: marrom #785533 · areia #F4EADF/#F6F0EA ·
 * bordas #E6D8C8/#D8C4AC · texto #2B211B/#6F6258 ·
 * estados #B3261E (bloqueio) / #92610C (alerta) / #177245 (ok) / #1D4ED8 (info).
 * ========================================================================= */

:root[data-cedar-tela1="on"] {
  --t1-brown: #785533;
  --t1-brown-dark: #66462B;
  --t1-sand: #F4EADF;
  --t1-sand-2: #F6F0EA;
  --t1-line: #E6D8C8;
  --t1-line-2: #D8C4AC;
  --t1-ink: #2B211B;
  --t1-ink-soft: #6F6258;
  --t1-ink-mute: #9C8D7D;
  --t1-ink-faint: #B0A79D;
  --t1-danger: #B3261E;
  --t1-danger-bg: #FBEDEC;
  --t1-danger-line: #F2CFCC;
  --t1-warn: #92610C;
  --t1-warn-bg: #FEF6E7;
  --t1-warn-line: #F3E0BD;
  --t1-ok: #177245;
  --t1-ok-bg: #EDF7F1;
  --t1-ok-line: #C4E3D2;
  --t1-info: #1D4ED8;
  --t1-info-bg: #EFF4FE;
  --t1-info-line: #C7DAFB;

  --t1-drawer-w: 360px;
  --t1-rail-w: 224px;
  /* preenchidos em runtime pelo addon (base da barra contextual / topo do rodapé) */
  --t1-drawer-top: 100px;
  --t1-drawer-bottom: 22px;
}

/* =====================================================================
 * 1. BARRA CONTEXTUAL (48px) — fonte ÚNICA da identidade do exame
 * ===================================================================== */

:root[data-cedar-tela1="on"] #cedar_exame_subheader {
  flex-direction: row;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 16px;
  background: #FFFFFF;
  border-bottom: 1px solid var(--t1-line-2);
  box-shadow: 0 2px 8px rgba(43, 33, 27, .05);
}
:root[data-cedar-tela1="on"] #cedar_exame_subheader .cedar-exsub-l1 {
  flex: 1 1 auto;
  min-width: 0;
  gap: 9px;
  flex-wrap: nowrap;
  overflow: hidden;
}
:root[data-cedar-tela1="on"] #cedar_exame_subheader .cedar-exsub-l2 {
  flex: 0 0 auto;
  gap: 8px;
  flex-wrap: nowrap;
}
:root[data-cedar-tela1="on"] #cedar_exame_subheader .tb-context {
  gap: 9px;
  flex: 0 1 auto;
  align-items: center;
}
:root[data-cedar-tela1="on"] #cedar_exame_subheader .tb-nome {
  font-size: 15px;
  font-weight: 800;
  letter-spacing: -.01em;
  color: var(--t1-ink);
  white-space: nowrap;
}
:root[data-cedar-tela1="on"] #cedar_exame_subheader .tb-data,
:root[data-cedar-tela1="on"] .cedar-t1-ctx-item {
  font-size: 12.5px;
  color: var(--t1-ink-soft);
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
:root[data-cedar-tela1="on"] .cedar-t1-ctx-dot {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: var(--t1-line-2);
  flex: none;
}
:root[data-cedar-tela1="on"] #cedar_exame_subheader .tb-tipo-pill {
  padding: 2px 8px;
  border-radius: 5px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .03em;
}
:root[data-cedar-tela1="on"] #cedar_exsub_status {
  padding: 2px 8px;
  border-radius: 5px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .03em;
  text-transform: uppercase;
  background: var(--t1-warn-bg);
  color: var(--t1-warn);
  border: 1px solid var(--t1-warn-line);
}
:root[data-cedar-tela1="on"] #cedar_exsub_status[data-val="assinado"],
:root[data-cedar-tela1="on"] #cedar_exsub_status[data-val="finalizado"] {
  background: var(--t1-ok-bg);
  color: var(--t1-ok);
  border-color: var(--t1-ok-line);
}
/* O autosave vira telemetria discreta: sem cápsula, para não parecer um SEGUNDO
   badge de status ao lado de #cedar_exsub_status (que já diz RASCUNHO). */
:root[data-cedar-tela1="on"] #cedar_exame_subheader #autosave_state {
  background: none !important;
  border: none !important;
  padding: 0 !important;
  font-size: 10.5px;
  font-weight: 500;
  color: var(--t1-ink-faint);
  text-transform: lowercase;
}

/* --- Botão "Resumo e validações" ------------------------------------- */
:root[data-cedar-tela1="on"] #cedar_t1_btn_resumo {
  height: 32px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0 11px;
  border-radius: 8px;
  border: 1px solid var(--t1-line-2);
  background: #fff;
  color: #4A3221;
  font-size: 12px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  white-space: nowrap;
}
:root[data-cedar-tela1="on"] #cedar_t1_btn_resumo:hover { background: var(--t1-sand-2); }
:root[data-cedar-tela1="on"] #cedar_t1_btn_resumo[aria-expanded="true"] {
  background: var(--t1-sand);
  border-color: #B3864F;
}
:root[data-cedar-tela1="on"] .cedar-t1-badge-bloq {
  min-width: 17px;
  height: 17px;
  padding: 0 4px;
  border-radius: 9px;
  background: #dc2626;
  color: #fff;
  font-size: 9.5px;
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
:root[data-cedar-tela1="on"] .cedar-t1-badge-ok {
  color: #16a34a;
  display: inline-flex;
  align-items: center;
}

/* --- Botão "Assinar" (nó REAL #btn_go_sign, só re-vestido) ------------ */
:root[data-cedar-tela1="on"] #cedar_exame_subheader #btn_go_sign {
  height: 32px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0 13px;
  border-radius: 8px;
  border: 1px solid transparent;
  background: #16a34a;
  color: #fff;
  font-size: 12.5px;
  font-weight: 700;
  font-family: inherit;
  margin-left: 0;
}
:root[data-cedar-tela1="on"] #cedar_exame_subheader #btn_go_sign[data-cedar-t1-gate="blocked"] {
  background: #F1EAE1;
  color: var(--t1-ink-mute);
  border-color: var(--t1-line);
  cursor: not-allowed;
}
:root[data-cedar-tela1="on"] #cedar_exame_subheader #btn_go_sign[data-cedar-t1-gate="blocked"] .cdr-ico { display: none; }
:root[data-cedar-tela1="on"] .cedar-t1-lock { display: none; align-items: center; }
:root[data-cedar-tela1="on"] #btn_go_sign[data-cedar-t1-gate="blocked"] .cedar-t1-lock { display: inline-flex; }
:root[data-cedar-tela1="on"] #btn_go_sign .cedar-t1-badge-bloq {
  background: var(--t1-danger-bg);
  color: var(--t1-danger);
  border: 1px solid var(--t1-danger-line);
  min-width: 16px;
  height: 16px;
  font-size: 9px;
}

/* =====================================================================
 * 2. MENU DE ETAPAS (224px) — ícone de estado + rótulo + subtítulo + badge
 * ===================================================================== */

:root[data-cedar-tela1="on"] #screen_exame.active > .sidenav {
  background: #FBFAF8;
  border-right: 1px solid var(--t1-line);
  box-shadow: none;
  padding: 8px 0 0;
  gap: 0;
}
:root[data-cedar-tela1="on"] .cedar-t1-rail-head {
  font: 700 9px ui-monospace, monospace;
  color: var(--t1-ink-mute);
  letter-spacing: .08em;
  padding: 4px 12px 7px;
  display: block;
}
:root[data-cedar-tela1="on"] .sidenav .nav-item {
  position: relative;
  display: block;
  height: auto;
  min-height: 40px;
  padding: 7px 30px 7px 32px;
  border-radius: 0;
  border: none;
  border-left: 3px solid transparent;
  background: transparent;
  color: var(--t1-ink);
  font-size: 12.5px;
  line-height: 1.25;
  white-space: normal;
}
:root[data-cedar-tela1="on"] .sidenav .nav-item:hover { background: #F7F3ED; }
:root[data-cedar-tela1="on"] .sidenav .nav-item.active {
  background: var(--t1-sand);
  border-left-color: var(--t1-brown);
  color: var(--t1-ink);
  font-weight: 800;
}
/* mata o estilo antigo de "borda colorida por modalidade" (a etapa já diz o tipo) */
:root[data-cedar-tela1="on"] .sidenav .nav-item.tab-colono,
:root[data-cedar-tela1="on"] .sidenav .nav-item.tab-eda { border-left-color: transparent; }
:root[data-cedar-tela1="on"] .sidenav .nav-item.tab-colono.active,
:root[data-cedar-tela1="on"] .sidenav .nav-item.tab-eda.active { border-left-color: var(--t1-brown); }
/* o ponto de status legado vira redundante com o ícone + badge */
:root[data-cedar-tela1="on"] .sidenav .nav-item .nav-dot { display: none; }

/* 2026-07-29 (decisão do Dr.): o ◐ da topbar (#lv2_btn_ctx, layout_v2) alternava o
   painel direito FIXO. Neste redesign o contexto virou GAVETA, com botão próprio —
   o ◐ não comanda mais nada. Sai da topbar. (!important porque _ctxBtnSync escreve
   display inline ao entrar na tela de exame.) Desligar o redesign devolve o botão. */
:root[data-cedar-tela1="on"] #lv2_btn_ctx { display: none !important; }

:root[data-cedar-tela1="on"] .cedar-t1-step-ico {
  position: absolute;
  left: 9px;
  top: 8px;
  width: 15px;
  height: 15px;
  display: block;
  pointer-events: none;
}
:root[data-cedar-tela1="on"] .cedar-t1-step-ico svg { display: block; }
:root[data-cedar-tela1="on"] .cedar-t1-step-sub {
  display: block;
  font-size: 9px;
  margin-top: 1px;
  letter-spacing: .02em;
  font-weight: 500;
  color: var(--t1-ink-faint);
}
:root[data-cedar-tela1="on"] .nav-item[data-cedar-step="ok"] .cedar-t1-step-sub { color: var(--t1-ok); }
:root[data-cedar-tela1="on"] .nav-item[data-cedar-step="pend"] .cedar-t1-step-sub { color: var(--t1-danger); }
:root[data-cedar-tela1="on"] .nav-item[data-cedar-step="alerta"] .cedar-t1-step-sub { color: var(--t1-warn); }
:root[data-cedar-tela1="on"] .nav-item.active .cedar-t1-step-sub { color: var(--t1-brown); }
:root[data-cedar-tela1="on"] .cedar-t1-step-badge {
  position: absolute;
  right: 8px;
  top: 9px;
  min-width: 17px;
  height: 17px;
  padding: 0 4px;
  border-radius: 9px;
  background: var(--t1-danger-bg);
  color: var(--t1-danger);
  border: 1px solid var(--t1-danger-line);
  font-size: 9.5px;
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
:root[data-cedar-tela1="on"] .cedar-t1-step-badge[data-sev="alerta"] {
  background: var(--t1-warn-bg);
  color: var(--t1-warn);
  border-color: var(--t1-warn-line);
}
:root[data-cedar-tela1="on"] .cedar-t1-step-badge[hidden] { display: none; }
:root[data-cedar-tela1="on"] .cedar-t1-rail-note {
  margin-top: auto;
  padding: 9px 12px 10px;
  font: 500 8.5px ui-monospace, monospace;
  color: var(--t1-ink-mute);
  letter-spacing: .02em;
  line-height: 1.55;
  border-top: 1px solid #EFE6DB;
  text-transform: uppercase;
}
/* rail colapsado (layout v2): só o número + ícone */
:root[data-cedar-tela1="on"][data-rail="collapsed"] .cedar-t1-step-sub,
:root[data-cedar-tela1="on"][data-rail="collapsed"] .cedar-t1-rail-note,
:root[data-cedar-tela1="on"][data-rail="collapsed"] .cedar-t1-rail-head { display: none; }
:root[data-cedar-tela1="on"][data-rail="collapsed"] .sidenav .nav-item { padding: 7px 6px 7px 26px; }

/* =====================================================================
 * 3. GRID 274 / 1fr / 336 — colunas com ALTURAS INDEPENDENTES
 * ===================================================================== */

:root[data-cedar-tela1="on"] #screen_exame.active > .content { background: var(--t1-sand-2); }
:root[data-cedar-tela1="on"] #s_pac_exame .pex-panels {
  display: grid;
  grid-template-columns: 274px minmax(0, 1fr) 336px;
  gap: 16px;
  align-items: start;
}
:root[data-cedar-tela1="on"] #s_pac_exame .cedar-t1-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}
/* nada de "esticar cartão": cada quadro tem a altura do seu conteúdo */
:root[data-cedar-tela1="on"] #s_pac_exame .cedar-t1-col > * { align-self: start; width: 100%; box-sizing: border-box; }

@media (max-width: 1279px) {
  :root[data-cedar-tela1="on"] #s_pac_exame .pex-panels { grid-template-columns: minmax(0, 1fr) 336px; }
  :root[data-cedar-tela1="on"] #s_pac_exame .cedar-t1-col--a { grid-column: 1 / -1; flex-direction: row; flex-wrap: wrap; }
  :root[data-cedar-tela1="on"] #s_pac_exame .cedar-t1-col--a > * { width: calc(50% - 8px); }
}

/* identidade duplicada some — 1g "FORA": nome 3×, badge de tipo 2×, convênio/data 2× */
:root[data-cedar-tela1="on"] #s_pac_exame .pex-hero,
:root[data-cedar-tela1="on"] #cedar_pex_v2_summary { display: none !important; }

:root[data-cedar-tela1="on"] #s_pac_exame .pex-card {
  background: #fff;
  border: 1px solid var(--t1-line);
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(43, 33, 27, .06);
  margin: 0;
}
:root[data-cedar-tela1="on"] #s_pac_exame .pex-card-head {
  font: 700 9.5px ui-monospace, monospace;
  color: var(--t1-ink-mute);
  letter-spacing: .07em;
  text-transform: uppercase;
  background: transparent;
  border-bottom: 1px solid #EFE6DB;
  padding: 11px 14px 9px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
:root[data-cedar-tela1="on"] #s_pac_exame .pex-label {
  font: 700 8.5px ui-monospace, monospace;
  color: var(--t1-ink-mute);
  letter-spacing: .06em;
  text-transform: uppercase;
}
:root[data-cedar-tela1="on"] #s_pac_exame .cedar-pex-v2-details {
  background: transparent;
  border: none;
  padding: 0;
}
:root[data-cedar-tela1="on"] #s_pac_exame #cedar_pex_v2_paciente_details > summary { display: none; }
:root[data-cedar-tela1="on"] #s_pac_exame .cedar-pex-v2-details-body { padding: 0; }

/* Cabeçalho do cartão Paciente: rótulo · "Modificar" (ajuste pontual, layout_v2) ·
   "Abrir cadastro" (ficha completa). Cada rótulo é indivisível (white-space),
   mas o cabeçalho do cartão Paciente PODE quebrar: os três não cabem nos 274px
   da coluna A e o `overflow:hidden` do cartão cortava o "Abrir cadastro" no
   meio. Quebrando, o link desce inteiro para a 2ª linha, alinhado à direita. */
:root[data-cedar-tela1="on"] #s_pac_exame .pex-card-head {
  flex-wrap: nowrap;
  white-space: nowrap;
}
:root[data-cedar-tela1="on"] #s_pac_exame .pex-card-head:has(.cedar-t1-cardlink) {
  flex-wrap: wrap;
  row-gap: 5px;
}
:root[data-cedar-tela1="on"] #s_pac_exame .pex-card-head .lv2-modify-toggle {
  margin-left: auto !important;
  height: 22px !important;
  padding: 0 8px !important;
  font-size: 10.5px !important;
  border-radius: 6px !important;
  border-color: var(--t1-line) !important;
  color: var(--t1-ink-soft) !important;
  flex: none;
}
:root[data-cedar-tela1="on"] #s_pac_exame .pex-card-head .lv2-modify-toggle .cdr-ico { display: none; }

/* "Abrir cadastro" no cabeçalho do cartão Paciente (delega ao botão real) */
:root[data-cedar-tela1="on"] .cedar-t1-cardlink {
  /* cresce para ocupar o resto da linha (própria ou compartilhada) e ancora o
     texto à direita — assim o link fica no mesmo lugar, caiba ou não na 1ª linha */
  flex: 1 1 auto;
  justify-content: flex-end;
  margin-left: 10px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border: none;
  background: none;
  padding: 0;
  color: var(--t1-brown);
  font-size: 11.5px;
  font-weight: 700;
  font-family: inherit;
  cursor: pointer;
  text-transform: none;
  letter-spacing: 0;
}
:root[data-cedar-tela1="on"] .cedar-t1-cardlink:hover { color: var(--t1-brown-dark); }
/* Coluna A tem 274px: campos que dividiam a linha (Nascimento+idade | Sexo)
   empilham, senão o badge de idade cavalga o segmentado F/M. */
:root[data-cedar-tela1="on"] #s_pac_exame .cedar-t1-col--a .pex-row {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 9px;
}
:root[data-cedar-tela1="on"] #s_pac_exame .cedar-t1-col--a .pex-field { width: 100%; min-width: 0; }
:root[data-cedar-tela1="on"] #s_pac_exame .cedar-t1-col--a .pex-birth-group {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: nowrap;
}
:root[data-cedar-tela1="on"] #s_pac_exame .cedar-t1-col--a .pex-birth-group input { flex: 1 1 auto; min-width: 0; }
:root[data-cedar-tela1="on"] #s_pac_exame .cedar-t1-col--a .pex-age-badge {
  position: static;
  flex: none;
  white-space: nowrap;
}
:root[data-cedar-tela1="on"] #s_pac_exame .cedar-t1-col--a .seg-ctrl { width: 100%; }

/* toggle do rail (layout_v2) entra na moldura do menu, sem virar caixa solta */
:root[data-cedar-tela1="on"] #screen_exame.active > .sidenav #lv2_btn_rail {
  margin: 0 10px 6px;
  width: auto;
  align-self: flex-start;
  padding: 0 9px;
  border: 1px solid var(--t1-line);
  background: #fff;
  border-radius: 7px;
  color: var(--t1-ink-mute);
  height: 24px;
  font-size: 12px;
  line-height: 1;
  flex: none;
}

:root[data-cedar-tela1="on"] .cedar-t1-readonly-note {
  font-size: 10px;
  color: var(--t1-ink-faint);
  font-style: italic;
  border-top: 1px solid #F7F3ED;
  padding: 8px 14px 10px;
  display: block;
}

/* Bloco principal da etapa (coluna B) ganha respiro */
:root[data-cedar-tela1="on"] #s_pac_exame .cedar-t1-col--b .pex-card-body { padding: 13px 16px 16px; }
:root[data-cedar-tela1="on"] .cedar-t1-head-hint {
  font: 500 8.5px ui-monospace, monospace;
  color: var(--t1-ink-faint);
  letter-spacing: .05em;
  text-transform: uppercase;
}

/* flash âmbar de "ir para o campo" — 2 ciclos, ~2 s (spec 1j) */
@keyframes cedarT1Flash {
  0%   { box-shadow: 0 0 0 0 rgba(217, 119, 6, 0); }
  20%  { box-shadow: 0 0 0 5px rgba(217, 119, 6, .55); }
  65%  { box-shadow: 0 0 0 5px rgba(217, 119, 6, .22); }
  100% { box-shadow: 0 0 0 0 rgba(217, 119, 6, 0); }
}
:root[data-cedar-tela1="on"] .cedar-t1-flash {
  animation: cedarT1Flash 1s ease 2;
  border-radius: 9px;
}

/* --- Sugestão ASA: 3 estados (spec 1f/1j) ---------------------------- */
:root[data-cedar-tela1="on"] #asa_sugestao_badge {
  background: var(--t1-info-bg) !important;
  border: 1px solid var(--t1-info-line) !important;
  color: var(--t1-info) !important;
  border-radius: 8px !important;
  padding: 9px 11px !important;
  font-size: 11.5px !important;
}
/* data-sugestao="" = motor não conseguiu pontuar ⇒ estado INCONSISTENTE (âmbar) */
:root[data-cedar-tela1="on"] #asa_sugestao_badge[data-sugestao=""] {
  background: var(--t1-warn-bg) !important;
  border-color: var(--t1-warn-line) !important;
  color: var(--t1-warn) !important;
}
:root[data-cedar-tela1="on"] #asa_sugestao_badge[data-sugestao=""] #btn_asa_aplicar { display: none !important; }
:root[data-cedar-tela1="on"] #asa_sugestao_motivo { color: var(--t1-ink-soft) !important; }
:root[data-cedar-tela1="on"] .cedar-t1-asa-hint {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 6px;
  font-size: 10.5px;
  color: var(--t1-ink-soft);
  line-height: 1.4;
}
:root[data-cedar-tela1="on"] .cedar-t1-asa-note {
  display: block;
  margin-top: 4px;
  font: 500 8.5px ui-monospace, monospace;
  color: var(--t1-ink-mute);
  letter-spacing: .02em;
  text-transform: uppercase;
}

/* =====================================================================
 * 4. GAVETA "RESUMO E VALIDAÇÕES" (360px)
 *    < 1600px overlay (sombra, sem backdrop, sem reflow)
 *    >= 1600px acoplada (reserva a coluna, sem sombra)
 * ===================================================================== */

/* A altura do exame passa a descontar a BARRA CONTEXTUAL: styles.css usa
   calc(100vh - 52px) contando só a topbar, e a faixa contextual (48px) empurrava
   a tela ~48px para fora da viewport — o rodapé do menu de etapas ficava cortado
   e o rodapé institucional cobria a última etapa. --t1-drawer-top/-bottom são
   medidos em runtime (base da barra contextual / altura de #cdr_footer). */
:root[data-cedar-tela1="on"] main.layout:has(#screen_exame.active),
:root[data-cedar-tela1="on"] #screen_exame.active {
  height: calc(100vh - var(--t1-drawer-top) - var(--t1-drawer-bottom));
}

/* fechada: a 3ª coluna do grid some — o conteúdo ocupa a linha inteira */
:root[data-cedar-tela1="on"] #screen_exame.active {
  grid-template-columns: var(--t1-rail-w) minmax(0, 1fr);
}
:root[data-cedar-tela1="on"] #screen_exame.active > .rightpane { display: none !important; }

/* aberta (qualquer largura): a gaveta aparece */
:root[data-cedar-tela1="on"][data-cedar-t1-drawer="open"] #screen_exame.active > .rightpane {
  display: flex !important;
  flex-direction: column;
  width: var(--t1-drawer-w);
  box-sizing: border-box;
  background: #FFFFFF;
  border-left: 1px solid var(--t1-line-2);
  padding: 0;
  overflow: hidden;
  z-index: 40;
}
/* < 1600px → OVERLAY: fora do fluxo, não reflui o grid */
:root[data-cedar-tela1="on"][data-cedar-t1-drawer="open"][data-cedar-t1-dock="overlay"] #screen_exame.active > .rightpane {
  position: fixed;
  top: var(--t1-drawer-top);
  bottom: var(--t1-drawer-bottom);
  right: 0;
  transform: none;
  box-shadow: -8px 0 24px rgba(43, 33, 27, .16);
}
/* >= 1600px → ACOPLADA: reserva 360px na linha, sem sombra */
:root[data-cedar-tela1="on"][data-cedar-t1-drawer="open"][data-cedar-t1-dock="docked"] #screen_exame.active {
  grid-template-columns: var(--t1-rail-w) minmax(0, 1fr) var(--t1-drawer-w);
}
:root[data-cedar-tela1="on"][data-cedar-t1-drawer="open"][data-cedar-t1-dock="docked"] #screen_exame.active > .rightpane {
  position: relative;
  box-shadow: none;
}

/* cabeçalho fixo da gaveta + corpo com scroll próprio */
:root[data-cedar-tela1="on"] #cedar_t1_drawer_head {
  flex: none;
  padding: 11px 14px 9px;
  border-bottom: 1px solid #EFE6DB;
  display: flex;
  flex-direction: column;
  gap: 4px;
  background: #fff;
}
:root[data-cedar-tela1="on"] .cedar-t1-drawer-title {
  display: flex;
  align-items: center;
  gap: 8px;
}
:root[data-cedar-tela1="on"] .cedar-t1-drawer-title > span {
  font-size: 13.5px;
  font-weight: 800;
  flex: 1;
  color: var(--t1-ink);
}
:root[data-cedar-tela1="on"] #cedar_t1_drawer_close {
  width: 28px;
  height: 28px;
  border: 1px solid var(--t1-line);
  background: #fff;
  border-radius: 7px;
  color: var(--t1-ink-soft);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  flex: none;
}
:root[data-cedar-tela1="on"] #cedar_t1_drawer_close:hover { background: var(--t1-sand-2); }
:root[data-cedar-tela1="on"] #cedar_t1_pendline {
  font-size: 10.5px;
  color: var(--t1-ink-soft);
}

/* corpo: os pane-blocks REAIS, reordenados por flex order (sem mover DOM) */
:root[data-cedar-tela1="on"][data-cedar-t1-drawer="open"] .rightpane > .pane-block {
  border-bottom: none;
  padding: 12px 14px 4px;
}
:root[data-cedar-tela1="on"] #cedar_t1_drawer_body {
  flex: 1;
  min-height: 0;
  overflow: auto;
  display: flex;
  flex-direction: column;
  padding-bottom: 14px;
}
/* 1g "FORA": a identidade já está na barra contextual — no painel era a 4ª cópia */
:root[data-cedar-tela1="on"] .rightpane .pane-block--case { display: none !important; }
:root[data-cedar-tela1="on"] .rightpane .pane-block h4 {
  font: 700 9.5px ui-monospace, monospace;
  color: var(--t1-ink-mute);
  letter-spacing: .07em;
  text-transform: uppercase;
  margin: 0 0 6px;
}
/* a lista/filtros nativos continuam no DOM (refreshAlerts segue escrevendo),
   mas quem aparece é o render da gaveta — mesma origem, motor validateExam */
:root[data-cedar-tela1="on"] #side_val_filters,
:root[data-cedar-tela1="on"] #alerts_list,
:root[data-cedar-tela1="on"] .rightpane .side-val-header #alert_count,
:root[data-cedar-tela1="on"] .rightpane .side-val-header #btn_next_issue { display: none !important; }

:root[data-cedar-tela1="on"] .cedar-t1-ok-banner {
  background: var(--t1-ok-bg);
  border: 1px solid var(--t1-ok-line);
  border-radius: 8px;
  padding: 9px 11px;
  display: flex;
  gap: 8px;
  align-items: center;
  margin-bottom: 8px;
  font-size: 11.5px;
  color: var(--t1-ok);
  font-weight: 600;
  line-height: 1.4;
}
:root[data-cedar-tela1="on"] .cedar-t1-filters {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  margin-bottom: 4px;
}
:root[data-cedar-tela1="on"] .cedar-t1-filter {
  height: 24px;
  padding: 0 9px;
  border-radius: 12px;
  border: 1px solid var(--t1-line);
  background: #fff;
  color: var(--t1-ink-soft);
  font-size: 10.5px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
}
:root[data-cedar-tela1="on"] .cedar-t1-filter[aria-pressed="true"] {
  background: var(--t1-brown);
  border-color: var(--t1-brown);
  color: #fff;
}
:root[data-cedar-tela1="on"] .cedar-t1-val-group {
  font: 700 9px ui-monospace, monospace;
  letter-spacing: .07em;
  margin: 9px 0 3px;
  display: block;
  text-transform: uppercase;
}
:root[data-cedar-tela1="on"] .cedar-t1-val-group[data-sev="b"] { color: var(--t1-danger); }
:root[data-cedar-tela1="on"] .cedar-t1-val-group[data-sev="a"] { color: var(--t1-warn); }
:root[data-cedar-tela1="on"] .cedar-t1-val-group[data-sev="i"] { color: var(--t1-info); }
:root[data-cedar-tela1="on"] .cedar-t1-val-empty {
  font-size: 11px;
  color: var(--t1-ink-faint);
  font-style: italic;
  padding: 6px 0;
  display: block;
}
:root[data-cedar-tela1="on"] .cedar-t1-val-row {
  display: flex;
  gap: 9px;
  padding: 8px 0;
  border-bottom: 1px solid #F3EEE7;
  align-items: flex-start;
}
:root[data-cedar-tela1="on"] .cedar-t1-val-ico {
  width: 24px;
  height: 24px;
  flex: none;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
}
:root[data-cedar-tela1="on"] .cedar-t1-val-row[data-sev="b"] .cedar-t1-val-ico { background: var(--t1-danger-bg); color: var(--t1-danger); }
:root[data-cedar-tela1="on"] .cedar-t1-val-row[data-sev="a"] .cedar-t1-val-ico { background: var(--t1-warn-bg); color: var(--t1-warn); }
:root[data-cedar-tela1="on"] .cedar-t1-val-row[data-sev="i"] .cedar-t1-val-ico { background: var(--t1-info-bg); color: var(--t1-info); }
:root[data-cedar-tela1="on"] .cedar-t1-val-txt {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
:root[data-cedar-tela1="on"] .cedar-t1-val-txt > b {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  color: var(--t1-ink);
}
:root[data-cedar-tela1="on"] .cedar-t1-val-code {
  font: 500 9px ui-monospace, monospace;
  color: var(--t1-ink-mute);
  margin-top: 3px;
  letter-spacing: .03em;
}
:root[data-cedar-tela1="on"] .cedar-t1-val-go {
  width: 26px;
  height: 26px;
  flex: none;
  border: 1px solid var(--t1-line);
  background: #fff;
  border-radius: 7px;
  color: var(--t1-brown);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
:root[data-cedar-tela1="on"] .cedar-t1-val-go:hover { background: var(--t1-sand); border-color: #B3864F; }

/* resumo clínico / lesões / metadados na tipografia da gaveta */
:root[data-cedar-tela1="on"] .rightpane #side_clinical > div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 5.5px 0;
  border-bottom: 1px solid #F7F3ED;
  align-items: baseline;
  font-size: 11px;
}
:root[data-cedar-tela1="on"] .rightpane #side_clinical > div > *:last-child {
  font-size: 11.5px;
  font-weight: 600;
  text-align: right;
  color: var(--t1-ink);
}
:root[data-cedar-tela1="on"] .rightpane .pane-block--meta summary {
  font: 700 9.5px ui-monospace, monospace;
  color: var(--t1-ink-mute);
  letter-spacing: .07em;
  text-transform: uppercase;
}

/* impressão: nada disto vai para o papel */
@media print {
  :root[data-cedar-tela1="on"] #cedar_t1_drawer_head,
  :root[data-cedar-tela1="on"] .cedar-t1-rail-note,
  :root[data-cedar-tela1="on"] .cedar-t1-step-badge { display: none !important; }
}
