/* Identidad conectada de módulos externos dentro de Clinic.
   Labs conserva verde; Supply/Insumos conserva cobre. */

:root{
  --labs-accent:#087868;
  --labs-accent-dark:#056354;
  --labs-soft:#dff4ed;
  --labs-soft-strong:#ccece3;
  --supply-accent:#b75a3c;
  --supply-accent-dark:#93452f;
  --supply-soft:#f8e8e1;
  --supply-soft-strong:#f1d8ce;
}

/* Sidebar: icono, halo y estado activo */
#nav-lab-orders .si,
#nav-supplies .si{
  position:relative;
  overflow:visible;
  border:1px solid transparent!important;
  transition:background-color .16s ease,color .16s ease,box-shadow .16s ease,border-color .16s ease;
}
#nav-lab-orders .si{
  background:var(--labs-soft)!important;
  border-color:rgba(8,120,104,.12)!important;
  color:var(--labs-accent)!important;
  box-shadow:0 0 0 3px rgba(8,120,104,.055)!important;
  background-image:none!important;
}
#nav-lab-orders .si>svg{display:none!important}
#nav-lab-orders .si::before{
  content:"";
  display:block;
  width:22px;
  height:22px;
  background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23087868%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%222.5%22%20y%3D%223.5%22%20width%3D%2214%22%20height%3D%2217%22%20rx%3D%222%22%2F%3E%3Cpath%20d%3D%22M7%204V3a2%202%200%200%201%202-2h2a2%202%200%200%201%202%202v1M5.5%208.5l1.2%201.2%202.1-2.2M10%208.7h3.5M5.5%2012.5l1.2%201.2%202.1-2.2M10%2012.7h2.5%22%2F%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M17.3%2011.9c-1.5-.9-3.3-.2-3.7%201.3-.5%201.5.4%202.8.7%204.2.4%201.8.7%203.1%201.4%203.1.7%200%20.7-2.1%201.6-2.1s.9%202.1%201.6%202.1c.8%200%201-1.3%201.4-3.1.3-1.4%201.2-2.7.7-4.2-.4-1.5-2.2-2.2-3.7-1.3Z%22%2F%3E%3C%2Fsvg%3E") center/contain no-repeat;
}
#nav-supplies .si{
  background:var(--supply-soft)!important;
  border-color:rgba(183,90,60,.13)!important;
  color:var(--supply-accent)!important;
  box-shadow:0 0 0 3px rgba(183,90,60,.055)!important;
}
#nav-supplies .si svg{
  color:var(--supply-accent)!important;
  stroke:currentColor!important;
}
#nav-lab-orders.active{
  background:var(--labs-soft)!important;
  color:var(--labs-accent-dark)!important;
}
#nav-supplies.active{
  background:var(--supply-soft)!important;
  color:var(--supply-accent-dark)!important;
}
#nav-lab-orders.active .si{
  background:#fff!important;
  border-color:rgba(8,120,104,.25)!important;
  box-shadow:0 0 0 5px rgba(8,120,104,.09),0 6px 14px rgba(8,120,104,.12)!important;
}
#nav-supplies.active .si{
  background:#fff!important;
  border-color:rgba(183,90,60,.25)!important;
  box-shadow:0 0 0 5px rgba(183,90,60,.09),0 6px 14px rgba(183,90,60,.12)!important;
}

/* Laboratorios: acción, dock, pestañas y controles */
#page-lab-orders .clinic-halo-action-dock{
  border-color:rgba(8,120,104,.20)!important;
  background:linear-gradient(90deg,#fff 0%,#fff 72%,rgba(223,244,237,.42) 100%)!important;
}
#page-lab-orders :is(.clinic-halo-primary,.btn-primary){
  background:var(--labs-accent)!important;
  border-color:var(--labs-accent)!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(8,120,104,.20)!important;
}
#page-lab-orders :is(.clinic-halo-primary,.btn-primary):hover{
  background:var(--labs-accent-dark)!important;
  border-color:var(--labs-accent-dark)!important;
}
#page-lab-orders .lab-status-filters button.is-active{
  background:var(--labs-soft)!important;
  border-color:var(--labs-accent)!important;
  color:var(--labs-accent-dark)!important;
}
#page-lab-orders .olab-row-actions .clinic-row-icon-action{
  border-color:rgba(8,120,104,.22)!important;
  color:var(--labs-accent)!important;
}
#page-lab-orders .olab-row-actions .clinic-row-icon-action:hover{
  background:var(--labs-soft)!important;
  border-color:var(--labs-accent)!important;
}
#page-lab-orders .olab-grid-order{color:var(--labs-accent)!important}

/* Insumos/Supply: acción, dock, pestañas y controles */
#page-supplies .clinic-halo-action-dock{
  border-color:rgba(183,90,60,.20)!important;
  background:linear-gradient(90deg,#fff 0%,#fff 72%,rgba(248,232,225,.54) 100%)!important;
}
#page-supplies :is(.clinic-halo-primary,.btn-primary,#supply-new-purchase){
  background:var(--supply-accent)!important;
  border-color:var(--supply-accent)!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(183,90,60,.20)!important;
}
#page-supplies :is(.clinic-halo-primary,.btn-primary,#supply-new-purchase):hover{
  background:var(--supply-accent-dark)!important;
  border-color:var(--supply-accent-dark)!important;
}
#page-supplies #tabsbar-supplies .os-utab.os-utab-active{
  background:var(--supply-soft)!important;
  border-color:var(--supply-accent)!important;
  color:var(--supply-accent-dark)!important;
}
#page-supplies #tabsbar-supplies .os-utab:hover{
  background:#fff8f5!important;
  border-color:#d49a84!important;
  color:var(--supply-accent-dark)!important;
}

/* El encabezado compacto conserva el color del portal conectado */
#clinic-adaptive-header[data-page="page-lab-orders"] .adaptive-header-icon{
  background:var(--labs-soft)!important;
  color:var(--labs-accent)!important;
  box-shadow:0 0 0 4px rgba(8,120,104,.07)!important;
}
#clinic-adaptive-header[data-page="page-lab-orders"] .adaptive-header-primary{
  background:var(--labs-accent)!important;
  border-color:var(--labs-accent)!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(8,120,104,.20)!important;
}
#clinic-adaptive-header[data-page="page-supplies"] .adaptive-header-icon{
  background:var(--supply-soft)!important;
  color:var(--supply-accent)!important;
  box-shadow:0 0 0 4px rgba(183,90,60,.07)!important;
}
#clinic-adaptive-header[data-page="page-supplies"] .adaptive-header-primary{
  background:var(--supply-accent)!important;
  border-color:var(--supply-accent)!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(183,90,60,.20)!important;
}

@media(max-width:768px){
  #page-lab-orders .clinic-halo-action-dock,
  #page-supplies .clinic-halo-action-dock{background:#fff!important}
}


/* Corrección de precedencia: el CTA de OLAB nunca hereda el azul de Clinic */
html body #screen-app #page-lab-orders.page .clinic-module-agent-hero
.clinic-halo-action-dock > button.clinic-halo-primary.btn.btn-primary,
html body #screen-app #page-lab-orders.page
button.clinic-halo-primary.btn.btn-primary{
  background-color:var(--labs-accent)!important;
  background-image:none!important;
  border-color:var(--labs-accent)!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(8,120,104,.22)!important;
}
html body #screen-app #page-lab-orders.page .clinic-module-agent-hero
.clinic-halo-action-dock > button.clinic-halo-primary.btn.btn-primary:hover,
html body #screen-app #page-lab-orders.page
button.clinic-halo-primary.btn.btn-primary:hover{
  background-color:var(--labs-accent-dark)!important;
  border-color:var(--labs-accent-dark)!important;
}
html body #clinic-adaptive-header[data-page="page-lab-orders"]
button.adaptive-header-primary.btn.btn-primary{
  background-color:var(--labs-accent)!important;
  background-image:none!important;
  border-color:var(--labs-accent)!important;
  color:#fff!important;
}


/* Laboratorios: eliminar el último azul de Clinic y proteger el pictograma */
#screen-app #page-lab-orders .olab-row-actions
button.clinic-row-icon-action.is-primary{
  background:var(--labs-accent)!important;
  border-color:var(--labs-accent)!important;
  color:#fff!important;
  box-shadow:0 5px 13px rgba(8,120,104,.18)!important;
}
#screen-app #page-lab-orders .olab-row-actions
button.clinic-row-icon-action.is-primary:hover{
  background:var(--labs-accent-dark)!important;
  border-color:var(--labs-accent-dark)!important;
}
#screen-app #page-lab-orders .olab-row-actions
button.clinic-row-icon-action.is-primary svg{
  color:#fff!important;
  stroke:#fff!important;
  fill:none!important;
  opacity:1!important;
  visibility:visible!important;
}
#screen-app #page-lab-orders .olab-row-actions
button.clinic-row-icon-action.is-primary svg path:last-child{
  fill:#fff!important;
  stroke:var(--labs-accent-dark)!important;
}

/* La tabla OLAB conserva su ancho operativo y desplaza horizontalmente */
@media(min-width:769px){
  #screen-app #page-lab-orders #lab-orders-table{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }
  #screen-app #page-lab-orders .olab-grid-scroll{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding-bottom:12px!important;
    scrollbar-gutter:stable!important;
    overscroll-behavior-x:contain!important;
    -webkit-overflow-scrolling:touch;
  }
  #screen-app #page-lab-orders .olab-grid-table{
    width:1480px!important;
    min-width:1480px!important;
    max-width:none!important;
    table-layout:fixed!important;
  }
  #screen-app #page-lab-orders .olab-grid-scroll::-webkit-scrollbar{height:12px!important}
  #screen-app #page-lab-orders .olab-grid-scroll::-webkit-scrollbar-track{
    background:#e7f3ef!important;
    border-radius:999px!important;
  }
  #screen-app #page-lab-orders .olab-grid-scroll::-webkit-scrollbar-thumb{
    background:#7ebcae!important;
    border:3px solid #e7f3ef!important;
    border-radius:999px!important;
  }
  #screen-app #page-lab-orders .olab-grid-scroll{
    scrollbar-color:#7ebcae #e7f3ef!important;
    scrollbar-width:auto!important;
  }
}


/* v4 · Sistema único de iconos del sidebar de Clinic */
#screen-app .sidebar .sb-link .si{
  display:grid!important;
  place-items:center!important;
  width:32px!important;
  height:32px!important;
  flex:0 0 32px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  border:1px solid rgba(48,83,113,.09)!important;
  border-radius:10px!important;
  background-color:#edf4fb!important;
  color:#3e709d!important;
  box-shadow:none!important;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important;
}
#screen-app .sidebar .sb-link .si svg{
  width:20px!important;
  height:20px!important;
  stroke:currentColor!important;
  stroke-width:1.75!important;
}
#screen-app .sidebar .sb-link .si img{
  display:block!important;
  width:23px!important;
  height:23px!important;
  max-width:23px!important;
  max-height:23px!important;
  border-radius:0!important;
  object-fit:contain!important;
  filter:none!important;
}
#screen-app .sidebar .sb-link:hover .si{transform:translateY(-1px)}
#screen-app .sidebar .sb-link.active .si{
  border-color:rgba(29,114,201,.20)!important;
  box-shadow:inset 0 0 0 1px rgba(29,114,201,.06)!important;
}
#screen-app .sidebar #nav-dashboard .si{background-color:#edf4fb!important;color:#3e709d!important}
#screen-app .sidebar #nav-notifications .si{background-color:#e9f5ff!important;color:#1471ce!important}
#screen-app .sidebar #nav-alerts .si{background-color:#fff2df!important;color:#c87300!important}
#screen-app .sidebar #nav-patients .si{background-color:#edf3fa!important;color:#4c708f!important}
#screen-app .sidebar #nav-lab-orders .si{
  overflow:hidden!important;
  background-color:var(--labs-soft)!important;
  border-color:rgba(8,120,104,.12)!important;
  color:var(--labs-accent)!important;
  box-shadow:none!important;
}
#screen-app .sidebar #nav-lab-orders .si::before{width:21px!important;height:21px!important}
#screen-app .sidebar #nav-connections .si{background-color:#e9f5ff!important;color:#0785d1!important}
#screen-app .sidebar #nav-discover .si{background-color:#f0ecff!important;color:#6f55d9!important}
#screen-app .sidebar #nav-supplies .si{
  background-color:var(--supply-soft)!important;
  border-color:rgba(183,90,60,.12)!important;
  color:var(--supply-accent)!important;
  box-shadow:none!important;
}
#screen-app .sidebar #nav-radiology-orders .si{
  background-color:#e9f5ff!important;
  color:#1471ce!important;
  background-size:20px 20px!important;
}
#screen-app .sidebar #nav-clinical-codes .si{background-color:#eaf1ff!important;color:#355f98!important}
#screen-app .sidebar #nav-esthetic-tools .si{background-color:#f0ecff!important;color:#7457d6!important}
#screen-app .sidebar #nav-marketing .si{background-color:#edf4fc!important;color:#3975a8!important}
#screen-app .sidebar #nav-equipment .si{background-color:#edf3f8!important;color:#526b83!important}
#screen-app .sidebar #nav-waste .si{background-color:#eaf7f2!important;color:#287c68!important}
#screen-app .sidebar #nav-prestaciones-sociales .si{background-color:#f0ecff!important;color:#7457d6!important}
#screen-app .sidebar #nav-habilitacion .si{background-color:#e9f8ef!important;color:#14825c!important}
#screen-app .sidebar #nav-lab-orders.active .si,
#screen-app .sidebar #nav-supplies.active .si{
  box-shadow:inset 0 0 0 1px rgba(29,114,201,.06)!important;
}
/* Alertas shares the sidebar's amber identity in desktop and mobile Halos. */
html body #clinic-adaptive-header[data-page="page-alerts"] .adaptive-header-inner::before{background:linear-gradient(100deg,#fff2df 0%,#fff9ef 58%,#fff 100%)!important}
html body #clinic-adaptive-header[data-page="page-alerts"] .adaptive-header-icon,
html body #screen-app #page-alerts .clinic-home-agent-icon{color:#c87300!important;background:#fff2df!important}
html body #clinic-adaptive-header[data-page="page-alerts"] :is(.adaptive-header-eyebrow,.adaptive-header-breadcrumb b),
html body #screen-app #page-alerts :is(.clinic-home-agent-identity>div>span,.clinic-home-breadcrumb strong){color:#965700!important}
html body #screen-app #page-alerts .clinic-home-agent-cover{background:linear-gradient(100deg,#fff2df,#fff9ef,#fff)!important}
html body #clinic-adaptive-header[data-page="page-alerts"] .adaptive-header-primary,
html body #screen-app #page-alerts .clinic-halo-primary{background:#965700!important;border-color:#965700!important;color:#fff!important}
html body #screen-app #nav-alerts.active{background:#fff2df!important;color:#965700!important}
