/* ECOMED — screen-only application chrome. Clinical report/PDF styles are untouched. */
@media screen {
  :root { --ecomed-ink:#163e34; --ecomed-canvas:#f5f6ef; --ecomed-line:#dce3d8; --ecomed-accent:#1b523d; }
  body { background:var(--ecomed-canvas); color:var(--ecomed-ink); font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif; -webkit-font-smoothing:antialiased; }
  body .ml-navbar { background:#173f33; box-shadow:0 3px 14px #153f3510; }
  body .laudos-sidebar,body .fp-sidebar,body .config-sidebar,body .bs-sidebar { background:#eaf0e1; border-color:#d0dcc6; }
  body .laudos-sidebar { padding:14px 10px; width:240px; min-width:240px; max-width:240px; scrollbar-color:#b9c9ac transparent; }
  body .laudos-sidebar::-webkit-scrollbar-thumb { background:#cfdcc2; }
  body .laudos-sidebar .laudos-sidebar-head { padding:8px 11px 14px; margin-bottom:10px; border:0!important; }
  body .laudos-sidebar-head-icon { background:#dce7cf; color:#174c39; box-shadow:inset 0 0 0 1px #174c3914; }
  body .laudos-sidebar-head-top,body .laudos-sidebar-head-top i,body .laudos-sidebar-title { color:var(--ecomed-ink); }
  body .laudos-sidebar-subtitle,body .laudos-head-subtitle { color:#5c715e; }
  /* line-height do subtitulo NAO e redefinido aqui: a referencia Laudario usa
     1.35 (15.552px), fixado no bloco de geometria de index.html. */
    /* Somente COR. Geometria (altura, padding, margem, tamanho de fonte) vem do
     bloco de paridade em index.html, copiado da referencia Laudario. */
  body .laudos-sidebar .nav-link-laudo { color:#45614c!important; }
  body .laudos-sidebar .nav-link-laudo:hover { background:#dce7cf!important; color:#163e34!important; }
  body .fp-item-exame:hover,body .bs-aba:hover { background:#dce7cf; }
  body .laudos-sidebar .nav-link-laudo.active { background:#174c39!important; color:#fff!important; font-weight:700; }
  body .laudos-sidebar .laudos-sidebar-head:hover { background:transparent!important; color:var(--ecomed-ink)!important; }
  body .fp-item-exame[aria-selected=true],body .bs-aba[aria-selected=true],body .bs-passo.ativo { background:#dce8c9; color:var(--ecomed-ink); }
  body .laudos-content,body .bs-pagina,body .config-content,body .fp-conteudo { background:var(--ecomed-canvas); }
  body .laudos-head { padding:14px 0 16px; border-bottom:1px solid var(--ecomed-line); margin-bottom:18px; }
  body .laudos-head-left .title-laudo { color:var(--ecomed-ink); font-size:1.45rem; font-weight:550; letter-spacing:-.04em; }
  body .laudos-search-wrap { background:#fffef9; border:1px solid #c4d1bf; border-radius:10px; min-height:34px; padding:4px 10px; }
  body .laudos-search-wrap:focus-within { outline:3px solid #73925655; outline-offset:2px; }
  body .laudos-head-actions { align-items:center; }
  body .laudos-head-actions .btn-group .btn { min-height:34px; }
  body .laudos-search-input { color:var(--ecomed-ink); }
  /* Sidebar de seções do editor: padding esquerdo para afastar do canto */
  body #pillsLaudoAutomatico { padding-left:14px; padding-right:8px; }
  body .abasUS-wrap { border-color:var(--ecomed-line); }
  body .abasUS-tab { min-height:44px; color:#526b55; }
  body .abasUS-tab[aria-selected=true] { color:#174c39; border-bottom-color:#557d48; background:#e8efdc; }
  /* Evita quebra do ')' após valor calculado em campos inline (ex: mm ( _ mL )) */
  body .option-border .form-label { white-space:nowrap; }
  body .option-border,body .fp-frase-card,body .fp-categoria,body .bs-grupo,body .bs-rec { border-color:var(--ecomed-line); border-radius:12px; }
  body .laudos-exame .option-border { background:#fffefb; box-shadow:0 3px 12px #163e3407; transition:box-shadow .15s,border-color .15s; }
  body .laudos-exame:hover .option-border { border-color:#8aa46c; box-shadow:0 9px 20px #163e3410; }
  body .ec-table th { background:#eaf0e1; color:#405c43; }
  body .ec-table tbody tr:hover { background:#eff4e7; }
  body .ec-input,body .ec-search,body .bs-input,body textarea[data-frase-ta],body .form-control,body .form-select { border-color:#c4d1bf; border-radius:8px; }
  body .ec-input,body .ec-search,body .bs-input { min-height:40px; }
  body .fp-filtro-btn[aria-pressed=true],body .fp-acoes button.fp-primaria,body .bs-btn-pri,body .btn-primary { background:#1b523d; border-color:#1b523d; color:#fff; }
  body .btn-primary:hover { background:#123e2e; border-color:#123e2e; }
  body .fp-chip-var { border-color:#6d8755; color:#396448; }
  body .fp-chip-var:hover { background:#153f35; color:#fff; }
  body .bs-drop { background:#f8faf2; border-color:#adbf99; border-radius:15px; }
  body .bs-sexo-op.ativo { background:#eaf0e1; color:#153f35; border-color:#64804e; }
  body .editor-toolbar { background:#eaf0e1; border-color:var(--ecomed-line); }
  body .fmt-toolbar { border-color:var(--ecomed-line); }
  body .editor-preview-wrap { background:#e9eee3; }
  body:has(#form-login),body:has(#btn-recuperar),body:has(#btn-redefinir) { box-sizing:border-box; padding:24px; background:radial-gradient(ellipse at 15% 25%,#d8e6bc,transparent 65%),var(--ecomed-canvas); }
  body:has(#form-login)>.card { border:1px solid var(--ecomed-line); border-radius:20px; box-shadow:0 24px 65px #153f3512; max-width:430px; padding:38px; box-sizing:border-box; }
  body:has(#form-login) h1 { font-size:28px; letter-spacing:-.04em; font-weight:550; }
  body:has(#form-login) input { min-height:46px; border-color:#c4d1bf; }
  body:has(#form-login) #btn-entrar { background:#1b523d; min-height:46px; }
  body:has(#form-login) #btn-ecomed { background:#e4ecd8!important; color:#163e34; border:1px solid #c4d1bf; min-height:44px; }
  :focus-visible { outline:3px solid #66864c; outline-offset:3px; }
  @media(max-width:768px) { /* padding NAO muda em mobile: a referencia Laudario
     mantem 14px 10px nos dois breakpoints. */
    body .laudos-sidebar { width:100%; min-width:0; max-width:none; } body .laudos-head-left .title-laudo { font-size:1.25rem; } body .laudos-head-actions { width:100%; flex-wrap:wrap; justify-content:flex-end; } body .laudos-search-wrap { flex:1 1 120px; max-width:none; min-width:0; } body .laudos-search-input { width:100%; min-width:0; } body:has(#form-login)>.card { padding:28px 22px; } }
  @media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
}
