@charset "UTF-8";
/*
 * Contrato cromático del Dashboard de Herramientas y su navegación global.
 * Esta hoja se compila aparte y se carga de última. No agregar colores fuera
 * de la allowlist ni construir variantes con transparencias o gradientes.
 *
 * 23/09/2026 · alineado a la identidad Nodal Environment V06. La allowlist ya
 * estaba construida sobre la familia verde aprobada —#15706B, #0C3D3A,
 * #68C4C1—; lo que le faltaba era la base: el documento congela el modo oscuro
 * en **carbón #1F2527**, y deja el verde profundo como tono de acento, no como
 * superficie de toda la aplicación. Los grises pasan a ser los tres aprobados.
 * Aquí no entra ningún color que no esté en la paleta.
 *
 * LOS OCHO   #1F2527  #0C3D3A  #15706B  #68C4C1
 *            #A7B4BB  #D9E0E2  #F4F7F7  #FFFFFF        excluido: #6B767B
 */
:root {
  --inside-carbon: #1f2527;
  --inside-green-main: #15706B;
  --inside-green-deep: #0C3D3A;
  --inside-green-accent: #68C4C1;
  --inside-white: #ffffff;
  --inside-black: #1f2527;
  --inside-gray-50: #F4F7F7;
  --inside-gray-100: #D9E0E2;
  --inside-gray-200: #A7B4BB;
  --inside-surface-page: #1f2527;
  --inside-surface-card: #1f2527;
  --inside-surface-muted: #0C3D3A;
  --inside-surface-accent: #15706B;
  --inside-text-primary: #ffffff;
  --inside-text-secondary: #D9E0E2;
  --inside-text-accent: #68C4C1;
  --inside-border: #15706B;
  --inside-border-accent: #68C4C1;
  --inside-action-surface: #15706B;
  --inside-action-text: #ffffff;
  --inside-action-hover-surface: #68C4C1;
  --inside-action-hover-text: #1f2527;
  --inside-icon: #68C4C1;
  --inside-icon-surface: #0C3D3A;
  --inside-focus: #68C4C1;
  --inside-progress: #68C4C1;
  --inside-progress-track: #0C3D3A;
  --inside-shadow: #1f2527;
  --inside-shadow-strong: #1f2527;
}

body.theme-light {
  --inside-surface-page: #F4F7F7;
  --inside-surface-card: #ffffff;
  --inside-surface-muted: #D9E0E2;
  --inside-surface-accent: #F4F7F7;
  --inside-text-primary: #1f2527;
  --inside-text-secondary: #0C3D3A;
  --inside-text-accent: #15706B;
  --inside-border: #D9E0E2;
  --inside-border-accent: #15706B;
  --inside-action-surface: #15706B;
  --inside-action-text: #ffffff;
  --inside-action-hover-surface: #0C3D3A;
  --inside-action-hover-text: #ffffff;
  --inside-icon: #15706B;
  --inside-icon-surface: #D9E0E2;
  --inside-focus: #15706B;
  --inside-progress: #15706B;
  --inside-progress-track: #D9E0E2;
  --inside-shadow: #D9E0E2;
  --inside-shadow-strong: #1f2527;
}

/* Idioma usa una sola instancia y un disclosure propio en todos los anchos.
 * No depende de un select nativo ni de una segunda versiÃ³n para escritorio. */
.inside-language-menu {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.inside-language-menu__trigger {
  width: 66px !important;
  min-width: 66px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 8px !important;
  display: grid !important;
  grid-template-columns: 18px minmax(20px, max-content) 12px !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  font: inherit !important;
  line-height: 1 !important;
  cursor: pointer;
  flex: 0 0 66px !important;
}

/* La forma redonda es del botón, no de su piel vieja: al pasar a Nodal
 * (nodal-selector-cabecera --propio) el guardián de abajo se llevó también el
 * 999px y quedó con los 6 px del componente, cuadrado. Cristian, 03/10/2026:
 * «que sea mejor circular». Solo en la barra: en el teléfono el mismo botón es
 * una fila más del menú del avatar y conserva el radio de sus vecinas. El
 * contenedor le da el peso para ganarle al radio del componente sin depender
 * del orden de las hojas. */
.inside-language-menu > .inside-language-menu__trigger:where(.nodal-selector-cabecera):not(:where(#budgetHeaderAvatarMenu *)) {
  border-radius: 999px;
}

.inside-language-menu__trigger:not(:where([class*=nodal-])) {
  border: 1px solid var(--inside-border-accent) !important;
  border-radius: 999px !important;
  color: var(--inside-white) !important;
  background: var(--inside-surface-page) !important;
  background-image: none !important;
  box-shadow: none !important;
}

body.theme-light .inside-language-menu__trigger:not(:where([class*=nodal-])) {
  color: var(--inside-green-deep) !important;
  border-color: var(--inside-green-main) !important;
  background: var(--inside-white) !important;
}

.inside-language-menu__trigger > .inside-mobile-action-label {
  display: none !important;
}

.inside-language-menu__trigger > svg:first-child {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  max-width: 18px !important;
  overflow: visible !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.inside-language-menu__current {
  min-width: 20px;
  font-size: 0.72rem;
  font-weight: 800;
  text-align: center;
}

.inside-language-menu__chevron {
  width: 12px !important;
  height: 12px !important;
  transition: transform 160ms ease;
}

.inside-language-menu__trigger[aria-expanded=true] .inside-language-menu__chevron {
  transform: rotate(180deg);
}

.inside-language-menu__options:not(:where([class*=nodal-])) {
  position: absolute;
  z-index: 12150;
  top: calc(100% + 6px);
  right: 0;
  width: 172px;
  padding: 6px;
  display: grid;
  gap: 4px;
  border: 1px solid var(--inside-border-accent);
  border-radius: 10px;
  color: var(--inside-white);
  background: var(--inside-surface-page);
  box-shadow: 0 8px 0 var(--inside-black);
}

.inside-language-menu__options:where(.nodal-menu) {
  position: absolute;
  z-index: 12150;
  top: calc(100% + 6px);
  right: 0;
  width: 172px;
  padding: 6px;
  display: grid;
  gap: 4px;
}

body.theme-light .inside-language-menu__options:not(:where([class*=nodal-])) {
  color: var(--inside-black);
  border-color: var(--inside-green-main);
  background: var(--inside-white);
  box-shadow: 0 8px 0 var(--inside-gray-200);
}

.inside-language-menu__options[hidden] {
  display: none !important;
}

.inside-language-menu__options > a:not(:where([class*=nodal-])) {
  min-height: 40px;
  padding: 0 9px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 16px;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--inside-border);
  border-radius: 8px;
  color: inherit !important;
  background: transparent !important;
  font-size: 0.78rem;
  font-weight: 700;
  text-decoration: none;
}

.inside-language-menu__options > a:not(:where([class*=nodal-])):is([aria-current=true], :hover, :focus-visible) {
  color: var(--inside-white) !important;
  border-color: var(--inside-green-accent) !important;
  background: var(--inside-green-main) !important;
}

.inside-language-menu__options > a:where(.nodal-menu__opcion) {
  min-height: 40px;
  padding: 0 9px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 16px;
  align-items: center;
  gap: 8px;
  font-size: 0.78rem;
  font-weight: 700;
  text-decoration: none;
}

.inside-language-menu__options > a:where(.nodal-menu__opcion)[aria-current=true] {
  background: var(--nodal-seleccion);
  color: var(--nodal-acento);
}

.inside-language-menu__options > a > svg {
  width: 16px;
  height: 16px;
}

.inside-language-menu__options > a:not([aria-current=true]) > svg {
  visibility: hidden;
}

/* El proyecto activo es contexto global, no una preferencia del menÃº de
 * cuenta. Este selector comparte el flujo autorizado del contexto canÃ³nico. */
.inside-header-project-selector {
  position: relative;
  min-width: 44px;
  max-width: 240px;
  flex: 1 1 220px;
}

.inside-header-project-slot {
  display: contents;
}

.inside-responsive-drawer__project-slot {
  display: none;
}

/* Nodal, 27/09/2026 · grupo 11 de la lámina 4B. El disparador toma la piel de
   nodal-selector-cabecera --propio y conserva su rejilla de icono, texto y
   flecha. Sus reglas no llevan gemela: se parten en dos, la forma con el
   selector de siempre y la piel aparte con el guardián, porque los contratos
   de la cabecera (headerProjectSelectorContract) leen estos selectores tal
   cual. Las listas compartidas con los demás botones de la cabecera (más
   abajo) llevan el guardián solo en la alternativa del disparador. */
.inside-header-project-selector__trigger {
  width: 100%;
  min-width: 0;
  height: 40px;
  padding: 3px 8px;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) 12px;
  align-items: center;
  gap: 6px;
  overflow: hidden;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.inside-header-project-selector__trigger:not(:where([class*=nodal-])) {
  border: 1px solid var(--inside-border-accent);
  border-radius: var(--nodal-radio);
  color: var(--inside-white);
  background: var(--inside-surface-page);
  box-shadow: none;
}

body.theme-light .inside-header-project-selector__trigger:not(:where([class*=nodal-])) {
  color: var(--inside-green-deep);
  border-color: var(--inside-green-main);
  background: var(--inside-white);
}

.inside-header-project-selector__trigger:not(:where([class*=nodal-])):is(:hover, :focus-visible),
.inside-header-project-selector__options > button:not(:where([class*=nodal-])):is(:hover, :focus-visible) {
  color: var(--inside-white);
  border-color: var(--inside-green-accent);
  background: var(--inside-green-main);
}

.inside-header-project-selector__trigger:disabled {
  cursor: default;
  opacity: 0.68;
}

.inside-header-project-selector__trigger > svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
}

.inside-header-project-selector__copy {
  min-width: 0;
  display: grid;
  gap: 1px;
}

.inside-header-project-selector__copy small,
.inside-header-project-selector__copy strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.inside-header-project-selector__copy small:not(:where([class*=nodal-])) {
  color: var(--inside-text-accent) !important;
}

.inside-header-project-selector__copy small {
  font-size: 0.56rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
}

.inside-header-project-selector__copy strong {
  font-size: 0.72rem;
  line-height: 1.15;
}

.inside-header-project-selector__chevron {
  width: 12px !important;
  height: 12px !important;
  transition: transform 160ms ease;
}

.inside-header-project-selector__trigger[aria-expanded=true] .inside-header-project-selector__chevron {
  transform: rotate(180deg);
}

/* Nodal, 27/09/2026 · el panel toma la piel de nodal-menu --propio y sus
   opciones la de nodal-menu__opcion --propia. Como en el disparador, las
   reglas se parten en forma (selector de siempre, que leen los contratos de
   la cabecera) y piel (con el guardián). */
body.inside-app-body #insideGlobalHeader .inside-header-project-selector__options {
  position: absolute;
  z-index: 12150;
  top: calc(100% + 6px);
  left: 0;
  width: max(100%, 240px);
  max-width: min(360px, 100vw - 16px);
  max-height: min(360px, 100dvh - 76px);
  padding: 6px;
  display: grid;
  gap: 4px;
  overflow-y: auto;
  overscroll-behavior: contain;
  opacity: 1 !important;
  isolation: isolate;
  mix-blend-mode: normal;
}

body.inside-app-body #insideGlobalHeader .inside-header-project-selector__options:not(:where([class*=nodal-])) {
  border: 1px solid var(--inside-border-accent);
  border-radius: 10px;
  color: var(--inside-white);
  background-color: var(--inside-surface-page) !important;
  background-image: none !important;
  box-shadow: 0 8px 0 var(--inside-black);
  backdrop-filter: none !important;
}

body.inside-app-body.theme-light #insideGlobalHeader .inside-header-project-selector__options:not(:where([class*=nodal-])) {
  color: var(--inside-black);
  border-color: var(--inside-green-main);
  background-color: var(--inside-white) !important;
  background-image: none !important;
  box-shadow: 0 8px 0 var(--inside-gray-200);
}

.inside-header-project-selector__options[hidden] {
  display: none !important;
}

.inside-header-project-selector__options > button:not(:where([class*=nodal-])) {
  border: 1px solid var(--inside-border);
  border-radius: 8px;
  color: inherit;
  background: transparent;
}

.inside-header-project-selector__options > button {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  padding: 7px 9px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 16px;
  align-items: center;
  gap: 8px;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: left;
  cursor: pointer;
}

.inside-header-project-selector__options > button > span {
  min-width: 0;
  overflow-wrap: break-word;
  word-break: normal;
}

.inside-header-project-selector__options > button > svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
}

.inside-header-project-selector__options > button:not([aria-selected=true]) > svg {
  visibility: hidden;
}

.inside-header-project-selector__empty {
  margin: 0;
  padding: 10px;
  color: inherit;
  font-size: 0.78rem;
  line-height: 1.35;
}

/* El estado del selector de proyecto es Nodal desde el 03/10/2026 (Cristian,
   opción C): «Cambiando proyecto…» es una línea de estado (info) y, si el
   cambio falla, un aviso con caja (error), que se lee flotando sobre la
   página. El guion cambia de una a otra. Aquí queda su lugar; la piel vieja,
   solo para la versión sin Nodal. */
.inside-header-project-selector__status {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  width: max-content;
  max-width: min(360px, 100vw - 16px);
  font-size: 0.7rem;
  font-weight: 700;
}

.inside-header-project-selector__status:not(:where([class*=nodal-])) {
  color: var(--inside-text-accent);
}

.inside-header-project-selector__status:empty {
  display: none;
}

/* La línea Nodal pone display: flex con más peso que la regla de arriba. */
.inside-header-project-selector__status.nodal-aviso:empty {
  display: none;
}

.inside-header-project-selector.has-error .inside-header-project-selector__status {
  padding: 6px 8px;
}

.inside-header-project-selector.has-error .inside-header-project-selector__status:not(:where([class*=nodal-])) {
  border: 1px solid var(--inside-border-accent);
  border-radius: 8px;
  color: var(--inside-white);
  background: var(--inside-surface-page);
}

/* En los dos estados, en fila con su glifo, a la letra y al glifo de la
   línea: la caja del error no salta de tamaño respecto de la línea. */
.inside-header-project-selector__status:where(.nodal-aviso) {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.8125rem;
}

.inside-header-project-selector__status.nodal-aviso::before {
  width: 14px;
  height: 14px;
  font-size: 0.625rem;
}

.inside-header-view-context,
.inside-header-context-details {
  display: contents;
}

@media (min-width: 1181px) {
  body.inside-app-body #insideGlobalHeader > .budget-product-topbar-left {
    overflow: visible !important;
  }
  body.inside-app-body #insideGlobalHeader > .budget-product-topbar-left > .budget-product-topbar-section {
    width: max-content;
    min-width: max-content;
    max-width: none;
    flex: 0 0 auto;
    overflow: visible;
  }
  body.inside-app-body #insideGlobalHeader .inside-header-project-selector {
    min-width: 96px;
    max-width: 220px;
    flex-basis: 220px;
  }
  body.inside-app-body #insideGlobalHeader .inside-language-menu {
    display: inline-flex;
  }
  body.inside-app-body #insideGlobalHeader .inside-language-direct-link {
    display: none !important;
  }
}
/* La BCT sustituyó la antigua barra de contexto que aportaba el margen superior
   a estas superficies. La cabecera es fija: el contenido debe comenzar después
   de su altura real (76 px en escritorio y 132 px en el HUD compacto). Se
   nombran solo las vistas que dependían de aquel margen para no duplicar el
   espacio de las rutas que ya reservan la cabecera mediante padding propio. */
body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct ~ :is(main.budget-summary-page,
main.budget-page,
main.budget-resource-builder,
main.budget-deps-page,
main.budget-formulas-page,
main.budget-assemblies-page,
main.geometry-templates-page),
body.inside-app-body.inside-budget-module.inside-page-creador-ensambles #insideGlobalHeader.inside-bct ~ main.formula-builder-page,
body.inside-app-body.planificador-app-body.planificador-admin-screen #insideGlobalHeader.inside-bct ~ main.planificador-admin-page {
  margin-top: var(--inside-app-topbar-height, 76px) !important;
}

@media (max-width: 1180px) {
  body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct ~ :is(main.time-work-page,
  main.reports-page,
  main.budget-resources-page) {
    margin-top: var(--inside-app-topbar-height, 132px) !important;
  }
}
@media (max-width: 520px) {
  body.inside-app-body.planificador-app-body.planificador-summary-screen #insideGlobalHeader.inside-bct ~ main.planificador-summary-page {
    margin-top: var(--inside-app-topbar-height, 56px) !important;
  }
}
@media (max-width: 1180px) {
  html body.inside-app-body.inside-dashboard-page {
    color: var(--inside-text-primary) !important;
    background: var(--inside-surface-page) !important;
    background-image: none !important;
    filter: none !important;
  }
  html body.inside-app-body.inside-dashboard-page .dashboard-page,
  html body.inside-app-body.inside-dashboard-page .dashboard-page * {
    background-image: none !important;
    filter: none !important;
    backdrop-filter: none !important;
    text-shadow: none !important;
  }
  html body.inside-app-body.inside-dashboard-page .dashboard-planning-columns > section {
    color: var(--inside-text-primary) !important;
  }
}
/* En escritorio la marca ya vive en la barra lateral. La BCT solo necesita
   identidad y acciones; declarar las columnas evita que el auto-placement
   deje una pista vacía y superponga cuenta/contexto. */
@media (min-width: 1181px) {
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context[data-inside-responsive-hud] {
    grid-template-columns: minmax(240px, 252px) minmax(0, 1fr) !important;
    column-gap: 12px !important;
  }
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context > .budget-product-topbar-left {
    grid-column: 1 !important;
    box-sizing: border-box !important;
    padding-inline-start: 14px !important;
  }
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context > .budget-product-topbar-actions {
    grid-column: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context .inside-bct-context {
    width: min(610px, 100%) !important;
    max-width: 610px !important;
    flex: 1 1 610px !important;
  }
}
body.inside-app-body #insideGlobalHeader,
body.inside-app-body .budget-product-topbar {
  color: var(--inside-text-primary) !important;
  border-color: var(--inside-border) !important;
  background: var(--inside-surface-page) !important;
  background-image: none !important;
  box-shadow: 0 2px 0 var(--inside-black) !important;
  filter: none !important;
  backdrop-filter: none !important;
}

body.inside-app-body.theme-light #insideGlobalHeader,
body.inside-app-body.theme-light .budget-product-topbar {
  color: var(--inside-black) !important;
  border-color: var(--inside-gray-200) !important;
  background: var(--inside-white) !important;
  box-shadow: 0 2px 0 var(--inside-gray-200) !important;
}

body.inside-app-body #insideGlobalHeader *:not(:where([class*=nodal-])) {
  color: inherit !important;
  border-color: var(--inside-border) !important;
  background-color: transparent !important;
  text-shadow: none !important;
}

body.inside-app-body #insideGlobalHeader .budget-product-search-icon,
body.inside-app-body #insideGlobalHeader .budget-product-search-icon svg,
body.inside-app-body #insideGlobalHeader .budget-product-search-icon path {
  color: var(--inside-green-accent) !important;
  stroke: currentColor !important;
}

body.inside-app-body #insideGlobalHeader .budget-product-search input {
  color: var(--inside-white) !important;
  border-color: var(--inside-green-accent) !important;
  background: var(--inside-surface-page) !important;
  background-image: none !important;
  box-shadow: none !important;
}

body.inside-app-body.theme-light #insideGlobalHeader .budget-product-search input {
  color: var(--inside-black) !important;
  border-color: var(--inside-green-main) !important;
  background: var(--inside-white) !important;
}

body.inside-app-body .budget-product-topbar-title-main,
body.inside-app-body #insideGlobalHeader .budget-product-topbar-section,
body.inside-app-body #insideGlobalHeader .inside-miga {
  color: inherit !important;
}

/* La miga sale del `inherit` de arriba · 24/09/2026 · grupo 10 de la lámina 4B.
 *
 * El `inherit` no nacía en esta regla: viene del `#insideGlobalHeader *` de más
 * arriba, que aplana todo lo que hay dentro de la barra para que un módulo con
 * hoja propia no le cambie el color. Sobre la miga eso borraba sus tres
 * niveles: el tramo anterior, el separador y la página actual salían del mismo
 * color y al mismo peso, y la ruta dejaba de decir dónde estás.
 * presupuestos-tema.css ya tenía la jerarquía escrita —`--banner-atenuado` para
 * los tramos, `--banner-tinta` para el actual— y nunca llegaba a pintarse.
 *
 * NO se añade un `!important` nuevo: se cambia lo que declara el que ya estaba
 * sobre estos mismos selectores. La especificidad con `#id` tampoco es un
 * capricho: es a `#insideGlobalHeader *` a quien hay que ganarle, y sin el id
 * no se le gana.
 *
 * Los valores son los mismos a los que ya resuelven los `--banner-*`; se
 * nombran los `--nodal-*` porque esta hoja es del contrato global y no del tema
 * de Presupuestos, y la miga se dibuja igual en las doce secciones. */
body.inside-app-body #insideGlobalHeader .inside-miga-tramo,
body.inside-app-body #insideGlobalHeader .inside-miga-sep,
body.inside-app-body .inside-miga-tramo,
body.inside-app-body .inside-miga-sep {
  color: var(--nodal-atenuado) !important;
}

body.inside-app-body #insideGlobalHeader .inside-miga-actual,
body.inside-app-body .inside-miga-actual {
  color: var(--nodal-texto) !important;
}

body.inside-app-body #insideGlobalHeader .inside-miga-tramo:hover,
body.inside-app-body #insideGlobalHeader .inside-miga-tramo:focus-visible,
body.inside-app-body .inside-miga-tramo:hover,
body.inside-app-body .inside-miga-tramo:focus-visible {
  color: var(--nodal-acento) !important;
}

body.inside-app-body #insideGlobalHeader .budget-product-logo {
  color: inherit !important;
}

body.inside-app-body #insideGlobalHeader .budget-product-topbar-brand,
body.inside-app-body #insideGlobalHeader .budget-product-logo {
  overflow: visible !important;
}

body.inside-app-body #insideGlobalHeader .budget-product-logo img {
  position: static !important;
  display: block;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

body.inside-app-body .budget-product-topbar-title-accent {
  color: var(--inside-green-accent) !important;
}

body.inside-app-body.theme-light .budget-product-topbar-title-accent {
  color: var(--inside-green-main) !important;
}

body.inside-app-body .inside-mobile-navigation-toggle:not(:where([class*=nodal-])),
body.inside-app-body .budget-product-theme-button:not(:where([class*=nodal-])),
body.inside-app-body .budget-product-language-link:not(:where([class*=nodal-])),
body.inside-app-body .budget-product-notification,
body.inside-app-body .budget-product-avatar,
body.inside-app-body .inside-contexto-disparador:not(:where([class*=nodal-])),
body.inside-app-body .inside-header-project-selector__trigger:not(:where([class*=nodal-])) {
  color: var(--inside-white) !important;
  border-color: var(--inside-green-accent) !important;
  background: var(--inside-surface-page) !important;
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
}

body.inside-app-body.theme-light .inside-mobile-navigation-toggle:not(:where([class*=nodal-])),
body.inside-app-body.theme-light .budget-product-theme-button:not(:where([class*=nodal-])),
body.inside-app-body.theme-light .budget-product-language-link:not(:where([class*=nodal-])),
body.inside-app-body.theme-light .budget-product-notification,
body.inside-app-body.theme-light .budget-product-avatar,
body.inside-app-body.theme-light .inside-contexto-disparador:not(:where([class*=nodal-])),
body.inside-app-body.theme-light .inside-header-project-selector__trigger:not(:where([class*=nodal-])) {
  color: var(--inside-green-deep) !important;
  border-color: var(--inside-green-main) !important;
  background: var(--inside-white) !important;
}

body.inside-app-body #insideGlobalHeader :is(.inside-mobile-navigation-toggle:not(:where([class*=nodal-])),
.budget-product-theme-button:not(:where([class*=nodal-])),
.budget-product-language-link:not(:where([class*=nodal-])),
.budget-product-notification,
.budget-product-avatar,
.inside-contexto-disparador:not(:where([class*=nodal-])),
.inside-header-project-selector__trigger:not(:where([class*=nodal-]))) {
  color: var(--inside-white) !important;
  border-color: var(--inside-green-accent) !important;
  background: var(--inside-surface-page) !important;
  background-image: none !important;
}

body.inside-app-body.theme-light #insideGlobalHeader :is(.inside-mobile-navigation-toggle:not(:where([class*=nodal-])),
.budget-product-theme-button:not(:where([class*=nodal-])),
.budget-product-language-link:not(:where([class*=nodal-])),
.budget-product-notification,
.budget-product-avatar,
.inside-contexto-disparador:not(:where([class*=nodal-])),
.inside-header-project-selector__trigger:not(:where([class*=nodal-]))) {
  color: var(--inside-green-deep) !important;
  border-color: var(--inside-green-main) !important;
  background: var(--inside-white) !important;
}

body.inside-app-body :is(.inside-mobile-navigation-toggle:not(:where([class*=nodal-])),
.budget-product-theme-button:not(:where([class*=nodal-])),
.budget-product-language-link:not(:where([class*=nodal-])),
.budget-product-notification,
.budget-product-avatar,
.inside-contexto-disparador:not(:where([class*=nodal-])),
.inside-header-project-selector__trigger:not(:where([class*=nodal-]))):is(:hover, :focus-visible) {
  color: var(--inside-black) !important;
  border-color: var(--inside-green-accent) !important;
  background: var(--inside-green-accent) !important;
}

body.inside-app-body :is(.inside-mobile-navigation-toggle:not(:where([class*=nodal-])),
.budget-product-theme-button:not(:where([class*=nodal-])),
.budget-product-language-link:not(:where([class*=nodal-])),
.budget-product-notification,
.budget-product-avatar,
.inside-contexto-disparador:not(:where([class*=nodal-])),
.inside-header-project-selector__trigger:not(:where([class*=nodal-]))) svg {
  color: inherit !important;
  fill: none;
  stroke: currentColor;
}

/* Nodal, 24/09/2026 (Cristian): el disparador «Proyecto › Presupuesto ▾» ya
   dice el proyecto, así que en escritorio el selector «PROYECTO …» sobra donde
   está el disparador, y su casita pasa al disparador. Donde no hay disparador
   —el Home, el Planificador— el selector se queda: es lo único que dice el
   proyecto. Bajo 1180 px no se toca: ahí el selector viaja al cajón. */
body.inside-app-body #insideGlobalHeader .inside-contexto-disparador__icono {
  flex: none;
  width: 16px;
  height: 16px;
  color: var(--nodal-acento) !important;
}

/* Con la piel Nodal el icono sigue en acento al pasar por encima, como el del
   selector de proyecto: el hover solo le cambia el borde (27/09/2026). */
body.inside-app-body #insideGlobalHeader .inside-contexto-disparador:not(:where([class*=nodal-])):is(:hover, :focus-visible) .inside-contexto-disparador__icono {
  color: inherit !important;
}

@media (min-width: 1181px) {
  body.inside-app-body #insideGlobalHeader:has([data-contexto-disparador]) [data-header-project-header-slot] {
    display: none !important;
  }
}
body.inside-app-body .inside-mobile-navigation-toggle {
  position: relative;
  isolation: isolate;
  touch-action: manipulation;
}

body.inside-app-body .inside-mobile-navigation-toggle > * {
  pointer-events: none;
}

body.inside-app-body .inside-responsive-account-ellipsis circle {
  fill: currentColor !important;
  stroke: none !important;
}

body.inside-app-body .budget-product-avatar-profile-glyph,
body.inside-app-body .budget-product-avatar-profile-glyph path {
  color: inherit !important;
  fill: currentColor !important;
  stroke: none !important;
}

body.inside-app-body #budgetHeaderAvatarMenu .inside-responsive-preferences-label,
body.inside-app-body #budgetHeaderAvatarMenu .inside-contexto-disparador__flecha,
body.inside-app-body #budgetHeaderAvatarMenu .budget-product-avatar-menu-icon {
  color: var(--inside-text-accent) !important;
}

body.inside-app-body #budgetHeaderAvatarMenu .budget-product-avatar-menu-icon {
  border-color: var(--inside-border) !important;
  background: var(--inside-surface-muted) !important;
}

body.inside-app-body #budgetHeaderAvatarMenu .budget-product-avatar-menu-item--danger {
  color: inherit !important;
  background: transparent !important;
}

body.inside-app-body #budgetHeaderAvatarMenu .budget-product-avatar-menu-item--danger:is(:hover, :focus-visible) {
  color: var(--inside-white) !important;
  background: var(--inside-green-main) !important;
}

body.inside-app-body .budget-product-notification-badge,
body.inside-app-body .budget-product-notification-dot {
  color: var(--inside-black) !important;
  border-color: var(--inside-green-deep) !important;
  background: var(--inside-green-accent) !important;
}

body.inside-app-body #insideGlobalHeader .inside-language-menu__options:not(:where([class*=nodal-])),
body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu:not(:where([class*=nodal-])),
body.inside-app-body #insideGlobalHeader #budgetHeaderNotificationMenu:not(:where([class*=nodal-])),
body.inside-app-body .budget-product-planner-page-navigation {
  color: var(--inside-white) !important;
  border-color: var(--inside-green-accent) !important;
  background: var(--inside-surface-page) !important;
  background-image: none !important;
  box-shadow: 0 12px 28px var(--inside-black) !important;
  filter: none !important;
  backdrop-filter: none !important;
  opacity: 1 !important;
  isolation: isolate;
  mix-blend-mode: normal !important;
}

body.inside-app-body.theme-light #insideGlobalHeader .inside-language-menu__options:not(:where([class*=nodal-])),
body.inside-app-body.theme-light #insideGlobalHeader #budgetHeaderAvatarMenu:not(:where([class*=nodal-])),
body.inside-app-body.theme-light #insideGlobalHeader #budgetHeaderNotificationMenu:not(:where([class*=nodal-])),
body.inside-app-body.theme-light .budget-product-planner-page-navigation {
  color: var(--inside-black) !important;
  border-color: var(--inside-green-main) !important;
  background: var(--inside-white) !important;
  box-shadow: 0 12px 28px var(--inside-gray-200) !important;
}

body.inside-app-body :is(.budget-product-avatar-menu-item,
.budget-product-notification-item,
.budget-product-notification-head,
.budget-product-notification-empty,
.budget-product-notification-link,
.budget-product-planner-page-navigation a,
.budget-product-planner-page-navigation__heading):not(:where([class*=nodal-])) {
  color: inherit !important;
  border-color: var(--inside-border) !important;
  background: transparent !important;
}

body.inside-app-body :is(.budget-product-avatar-menu-item,
.budget-product-notification-item,
.budget-product-notification-link,
.budget-product-planner-page-navigation a):is(:hover, :focus-visible):not(:where([class*=nodal-])),
body.inside-app-body .budget-product-planner-page-navigation a.is-current {
  color: var(--inside-white) !important;
  background: var(--inside-green-main) !important;
}

html body.inside-app-body .app-sidebar--standard {
  color: var(--inside-white) !important;
  border-color: var(--inside-green-accent) !important;
  background: var(--inside-surface-page) !important;
  background-image: none !important;
  box-shadow: 8px 0 0 var(--inside-black) !important;
  filter: none !important;
  backdrop-filter: none !important;
}

html body.inside-app-body:not(.theme-light) .app-sidebar.app-sidebar--standard {
  border-right-color: var(--inside-green-accent) !important;
}

html body.inside-app-body #insideAppSidebar.app-sidebar--standard {
  color: var(--inside-text-primary) !important;
  border-color: var(--inside-border-accent) !important;
  background: var(--inside-surface-card) !important;
  background-image: none !important;
  filter: none !important;
  backdrop-filter: none !important;
}

html body.inside-app-body #insideAppSidebar.app-sidebar--standard *,
html body.inside-app-body #insideAppSidebar.app-sidebar--standard svg {
  background-image: none !important;
  filter: none !important;
  backdrop-filter: none !important;
  text-shadow: none !important;
}

html body.inside-app-body.theme-light .app-sidebar--standard {
  color: var(--inside-green-deep) !important;
  border-color: var(--inside-green-main) !important;
  background: var(--inside-white) !important;
  box-shadow: 8px 0 0 var(--inside-gray-200) !important;
}

html body.theme-light.inside-app-body .app-sidebar--standard .app-sidebar-company > label,
html body.theme-light.inside-app-body .app-sidebar--standard .app-sidebar-nav-group-label {
  color: var(--inside-green-deep) !important;
}

html body.inside-app-body .app-sidebar--standard *:not(:where([class*=nodal-])),
html body.inside-app-body .app-sidebar--standard label:not(:where([class*=nodal-])) {
  color: inherit !important;
  border-color: var(--inside-border) !important;
  background-color: transparent !important;
  text-shadow: none !important;
}

html body.inside-app-body #insideAppSidebar.app-sidebar--standard::before,
html body.inside-app-body #insideAppSidebar.app-sidebar--standard::after {
  background: none !important;
  background-image: none !important;
  filter: none !important;
}

@media (max-width: 1180px) {
  body.inside-app-body.inside-dashboard-page::before,
  body.inside-app-body.inside-dashboard-page::after {
    background: none !important;
    background-image: none !important;
    filter: none !important;
  }
}
body.inside-app-body .app-sidebar--standard :is(.app-sidebar-brand,
.app-sidebar-company,
.app-sidebar-company-current,
.app-sidebar-nav-group-label,
.app-sidebar-bottom,
.app-sidebar-tool-block,
.app-sidebar-module-submenu) {
  color: inherit !important;
  border-color: var(--inside-border) !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

body.inside-app-body .app-sidebar--standard .app-sidebar-link:not(:where([class*=nodal-])),
body.inside-app-body .app-sidebar--standard .app-sidebar-module-toggle:not(:where([class*=nodal-])),
body.inside-app-body .app-sidebar--standard .app-sidebar-mobile-close:not(:where([class*=nodal-])),
body.inside-app-body .app-sidebar--standard .app-sidebar-project-card {
  color: inherit !important;
  border-color: var(--inside-border) !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
}

body.inside-app-body .app-sidebar--standard .app-sidebar-link:not(:where([class*=nodal-])):is(:hover, :focus-visible),
body.inside-app-body .app-sidebar--standard .app-sidebar-module-toggle:not(:where([class*=nodal-])):is(:hover, :focus-visible),
body.inside-app-body .app-sidebar--standard .app-sidebar-mobile-close:not(:where([class*=nodal-])):is(:hover, :focus-visible),
body.inside-app-body .app-sidebar--standard .app-sidebar-project-card:is(:hover, :focus-visible),
body.inside-app-body .app-sidebar--standard .app-sidebar-link.active {
  color: var(--inside-white) !important;
  border-color: var(--inside-green-accent) !important;
  background: var(--inside-green-main) !important;
}

body.inside-app-body .app-sidebar--standard .app-sidebar-module-submenu .app-sidebar-link {
  border-left-color: var(--inside-green-accent) !important;
}

body.inside-app-body.theme-light .app-sidebar--standard .app-sidebar-link:not(.active):not(:where([class*=nodal-])),
body.inside-app-body.theme-light .app-sidebar--standard .app-sidebar-module-toggle:not(:where([class*=nodal-])),
body.inside-app-body.theme-light .app-sidebar--standard .app-sidebar-mobile-close:not(:where([class*=nodal-])),
body.inside-app-body.theme-light .app-sidebar--standard .app-sidebar-project-card {
  color: var(--inside-green-deep) !important;
}

body.inside-app-body .app-sidebar--standard .app-sidebar-link-icon:not(:where(.nodal-accion > *)),
body.inside-app-body .app-sidebar--standard .app-sidebar-module-toggle:not(:where([class*=nodal-])),
body.inside-app-body .app-sidebar--standard .app-sidebar-project-arrow,
body.inside-app-body .app-sidebar--standard .app-sidebar-mobile-close:not(:where([class*=nodal-])) {
  color: var(--inside-green-accent) !important;
}

body.inside-app-body.theme-light .app-sidebar--standard .app-sidebar-link-icon:not(:where(.nodal-accion > *)),
body.inside-app-body.theme-light .app-sidebar--standard .app-sidebar-module-toggle:not(:where([class*=nodal-])),
body.inside-app-body.theme-light .app-sidebar--standard .app-sidebar-project-arrow,
body.inside-app-body.theme-light .app-sidebar--standard .app-sidebar-mobile-close:not(:where([class*=nodal-])) {
  color: var(--inside-green-main) !important;
}

/* 02/10/2026 · el hover y el foco se ven como el activo (Cristian). El
 * relleno del acento ya venía de la regla de hover de arriba, pero el texto
 * y el ícono no: en claro se quedaban oscuros (el ícono, del mismo
 * #15706B que el fondo, desaparecía) y en oscuro el ícono quedaba en el
 * acento claro sobre el acento. */
body.inside-app-body .app-sidebar--standard .app-sidebar-link.active :is(.app-sidebar-link-icon,
.app-sidebar-link-text),
body.inside-app-body .app-sidebar--standard .app-sidebar-link:not(:where([class*=nodal-])):is(:hover, :focus-visible) :is(.app-sidebar-link-icon,
.app-sidebar-link-text) {
  color: var(--inside-white) !important;
}

/* Una subruta activa es una selección secundaria. En tema claro conserva el
 * fondo neutro de su grupo y usa texto oscuro; blanco sobre ese fondo hacía
 * ilegible la ruta seleccionada. El módulo principal continúa verde/blanco. */
body.inside-app-body.theme-light .app-sidebar--standard .app-sidebar-module-submenu .app-sidebar-link.active {
  color: var(--inside-green-deep) !important;
  border-color: var(--inside-green-main) !important;
  background: var(--inside-gray-100) !important;
}

body.inside-app-body.theme-light .app-sidebar--standard .app-sidebar-module-submenu .app-sidebar-link.active .app-sidebar-link-text {
  color: inherit !important;
}

body.inside-app-body .app-sidebar--standard :is(.app-sidebar-module-toggle,
.app-sidebar-mobile-close):not(:where([class*=nodal-])):is(:hover, :focus-visible) {
  color: var(--inside-white) !important;
}

body.inside-app-body .app-sidebar--standard svg {
  color: inherit !important;
}

body.inside-app-body .app-sidebar--standard :is(.app-sidebar-link-icon,
.app-sidebar-module-toggle,
.app-sidebar-project-arrow,
.app-sidebar-mobile-close,
.app-sidebar-collapse-icon) svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
}

body.inside-app-body .app-sidebar-collapse-icon.is-reversed svg {
  transform: rotate(180deg);
}

body.inside-app-body .app-sidebar-mobile-backdrop {
  background: var(--inside-black) !important;
  opacity: 1 !important;
  filter: none !important;
  backdrop-filter: none !important;
}

body.inside-app-body :is(a, button):focus-visible {
  outline-color: var(--inside-focus) !important;
}

@media (max-width: 1180px) {
  body.inside-dashboard-page .dashboard-support-overview-card:not(:where([class*=nodal-])),
  body.inside-dashboard-page .dashboard-ticket-empty:not(:where([class*=nodal-])),
  body.inside-dashboard-page .dashboard-ticket-list,
  body.inside-dashboard-page .dashboard-ticket-item {
    color: var(--inside-text-primary) !important;
    border-color: var(--inside-border) !important;
    background: var(--inside-surface-card) !important;
    background-image: none !important;
    box-shadow: none !important;
  }
  body.inside-dashboard-page .dashboard-ticket-item:is(:hover, :focus-visible) {
    border-color: var(--inside-border-accent) !important;
    background: var(--inside-surface-accent) !important;
  }
}
body.inside-app-body .language-float {
  display: none !important;
}

.inside-responsive-context-actions {
  display: none;
}

@media (max-width: 1180px) {
  html[data-planificador-mode-v112] body.inside-app-body.planificador-app-body main#planificador.planificador-page .planificador-reference[data-planificador-reference-view=timeline] > .planificador-reference__panel--timeline > .planificador-reference-timeline__toolbar {
    display: grid !important;
    grid-template-columns: var(--reference-label-size, 0px) minmax(0, 1fr) !important;
    align-items: center !important;
    min-width: 0 !important;
  }
  html[data-planificador-mode-v112] body.inside-app-body.planificador-app-body main#planificador.planificador-page .planificador-reference[data-planificador-reference-view=timeline] > .planificador-reference__panel--timeline > .planificador-reference-timeline__toolbar > .planificador-reference-period-control-v101 {
    grid-column: 2 !important;
    justify-self: center !important;
    margin: 0 !important;
    pointer-events: none !important;
  }
  html[data-planificador-mode-v112] body.inside-app-body.planificador-app-body main#planificador.planificador-page .planificador-reference[data-planificador-reference-view=timeline] .planificador-reference-period-control-v101 > button {
    pointer-events: auto !important;
  }
  html[data-planificador-mode-v112] body.inside-app-body.planificador-app-body main#planificador.planificador-page .planificador-reference[data-planificador-reference-view=timeline] .planificador-reference-period-control-v101 > strong,
  html[data-planificador-mode-v112] body.inside-app-body.planificador-app-body main#planificador.planificador-page .planificador-reference[data-planificador-reference-view=timeline] .planificador-reference-period-viewport-v73 {
    color: var(--inside-text-primary) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
  }
  html[data-planificador-mode-v112] body.inside-app-body.planificador-app-body main#planificador.planificador-page:is(:fullscreen, .is-planificador-fallback-fullscreen) .planificador-reference[data-planificador-reference-view=timeline] > .planificador-reference__search-row[data-planificador-reference-primary-toolbar] {
    padding-right: 4px !important;
  }
  html[data-planificador-mode-v112] body.inside-app-body.planificador-app-body main#planificador.planificador-page:is(:fullscreen, .is-planificador-fallback-fullscreen) .planificador-reference[data-planificador-reference-view=timeline] > .planificador-reference__search-row[data-planificador-reference-primary-toolbar] > .planificador-reference-toolbar-button-v150--fullscreen {
    position: relative !important;
    inset: auto !important;
    width: auto !important;
    min-width: 58px !important;
    max-width: none !important;
    padding-inline: 7px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
  }
  .planificador-reference-fullscreen-exit-label-v166 {
    display: none;
  }
  html[data-planificador-mode-v112] body.inside-app-body.planificador-app-body main#planificador.planificador-page:is(:fullscreen, .is-planificador-fallback-fullscreen) .planificador-reference[data-planificador-reference-view=timeline] .planificador-reference-fullscreen-exit-label-v166 {
    display: inline !important;
    color: currentColor !important;
    font-size: 0.66rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
  }
}
@media (max-width: 700px) and (orientation: landscape) {
  html[data-planificador-mode-v112] body.inside-app-body.planificador-app-body main#planificador.planificador-page .planificador-reference[data-planificador-reference-view=timeline] > .planificador-reference__search-row[data-planificador-reference-primary-toolbar] {
    grid-template-columns: minmax(0, 1fr) repeat(2, var(--planner-responsive-control-size-v165)) minmax(58px, auto) !important;
  }
}
@media (min-width: 701px) and (max-width: 1180px) and (orientation: landscape) {
  html[data-planificador-mode-v112] body.inside-app-body.planificador-app-body main#planificador.planificador-page .planificador-reference[data-planificador-reference-view=timeline] > .planificador-reference__search-row[data-planificador-reference-primary-toolbar] {
    grid-template-columns: minmax(180px, 240px) var(--planner-responsive-control-size-v165) minmax(110px, 1fr) repeat(4, var(--planner-responsive-control-size-v165)) minmax(58px, auto) !important;
  }
}
body.inside-app-body .whatsapp-float,
body.inside-app-body .inside-support-help-float {
  box-sizing: border-box !important;
  min-width: 44px !important;
  min-height: 44px !important;
  color: var(--inside-white) !important;
  border-color: var(--inside-green-accent) !important;
  background: var(--inside-green-main) !important;
  background-image: none !important;
  box-shadow: 0 4px 0 var(--inside-black) !important;
  filter: none !important;
}

body.inside-app-body .inside-support-help-float {
  box-shadow: none !important;
}

body.inside-app-body .whatsapp-float:is(:hover, :focus-visible),
body.inside-app-body .inside-support-help-float:is(:hover, :focus-visible) {
  color: var(--inside-black) !important;
  background: var(--inside-green-accent) !important;
}

@media (max-width: 1180px) {
  html body.inside-app-body.inside-dashboard-page:has(> main.dashboard-page) .dashboard-responsive-view .dashboard-home {
    padding-top: 8px !important;
  }
  html body.inside-app-body.inside-dashboard-page:has(> main.dashboard-page) .dashboard-responsive-view [data-dashboard-summary-root] {
    min-height: 0 !important;
    padding-bottom: var(--dashboard-schedule-dock-reserve, 0px) !important;
  }
  html body.inside-app-body.inside-dashboard-page:has(> main.dashboard-page) > main.dashboard-page {
    margin-top: var(--inside-hud-height, 56px) !important;
    min-height: calc(100vh - var(--inside-hud-height, 56px)) !important;
    min-height: calc(100dvh - var(--inside-hud-height, 56px)) !important;
  }
  html body.inside-app-body.inside-dashboard-page:has(> main.dashboard-page) .dashboard-responsive-view .dashboard-home > .container.dashboard-shell {
    box-sizing: border-box !important;
    width: calc(100% - var(--dashboard-responsive-inline-gutter, 16px)) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-inline: 0 !important;
  }
  html body.inside-app-body.inside-dashboard-page:has(> main.dashboard-page) .dashboard-responsive-view .dashboard-command-center {
    width: 100% !important;
    max-width: none !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }
  body.inside-app-body.inside-dashboard-page .dashboard-responsive-view :is(.dashboard-title,
  .dashboard-subtitle,
  .dashboard-widget-kicker,
  .dashboard-widget-header h2,
  .dashboard-pulse-copy strong,
  .dashboard-pulse-copy span,
  .dashboard-list-empty,
  .dashboard-milestone-item strong,
  .dashboard-agenda-item strong,
  .dashboard-task-progress-item strong) {
    min-width: 0 !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
    writing-mode: horizontal-tb !important;
  }
  body.inside-app-body.inside-dashboard-page .dashboard-responsive-view :is(.dashboard-widget-action) {
    white-space: nowrap !important;
    overflow-wrap: normal !important;
  }
  body.inside-app-body.inside-dashboard-page .dashboard-responsive-view .dashboard-widget::before,
  body.inside-app-body.inside-dashboard-page .dashboard-responsive-view .dashboard-widget-header::after {
    display: none !important;
  }
  body.inside-app-body.inside-dashboard-page .dashboard-responsive-view :is(.dashboard-list-empty,
  .dashboard-project-dates) {
    color: var(--inside-text-primary) !important;
    border-color: var(--inside-border) !important;
    background: var(--inside-surface-accent) !important;
    background-image: none !important;
    box-shadow: none !important;
  }
  body.inside-app-body.inside-dashboard-page :is(.whatsapp-float,
  .inside-support-help-float) {
    display: none !important;
  }
  html body.inside-app-body #insideGlobalHeader > .inside-responsive-context-actions {
    position: fixed !important;
    z-index: 12120 !important;
    top: 6px !important;
    right: 58px !important;
    height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 4px !important;
  }
  html body.inside-app-body #insideGlobalHeader > .inside-responsive-context-actions > a {
    box-sizing: border-box !important;
    min-width: 44px !important;
    height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 5px !important;
    padding: 0 9px !important;
    color: var(--inside-text-primary) !important;
    border: 1px solid var(--inside-border-accent) !important;
    border-radius: 11px !important;
    background: var(--inside-surface-card) !important;
    background-image: none !important;
    box-shadow: none !important;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
  }
  html body.inside-app-body #insideGlobalHeader > .inside-responsive-context-actions > a:is(:hover, :focus-visible) {
    color: var(--inside-action-hover-text) !important;
    background: var(--inside-action-hover-surface) !important;
  }
  html body.inside-app-body #insideGlobalHeader > .inside-responsive-context-actions svg {
    width: 20px !important;
    height: 20px !important;
    flex: 0 0 20px !important;
  }
  html body.inside-app-body.planificador-app-body main.planificador-secondary-page.planificador-assignments-page > header.planificador-secondary-header {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 1180px) {
  html body.inside-app-body.inside-dashboard-page:has(> main.dashboard-page) .dashboard-responsive-view .dashboard-core-grid {
    width: 100% !important;
    max-width: none !important;
    grid-template-columns: minmax(360px, 1.35fr) minmax(300px, 0.85fr) !important;
    gap: 12px !important;
  }
}
@media (max-width: 700px) {
  html body.inside-app-body #insideGlobalHeader > .inside-responsive-context-actions > a > span {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }
  html body.inside-app-body #insideGlobalHeader > .inside-responsive-context-actions > a {
    width: 44px !important;
    max-width: 44px !important;
    padding: 0 !important;
  }
}
body.inside-app-body .inside-support-help-icon {
  color: var(--inside-black) !important;
  background: var(--inside-green-accent) !important;
}

body.inside-app-body .inside-support-backdrop {
  background: var(--inside-black) !important;
}

body.inside-app-body .inside-support-dialog:not(:where([class*=nodal-])) {
  color: var(--inside-text-primary) !important;
  border-color: var(--inside-border-accent) !important;
  background: var(--inside-surface-card) !important;
  background-image: none !important;
  box-shadow: 0 12px 28px var(--inside-black) !important;
}

body.inside-app-body :is(.inside-support-close,
.inside-support-screenshot-preview,
.inside-support-file-label):not(:where([class*=nodal-])) {
  color: var(--inside-text-primary) !important;
  border-color: var(--inside-border) !important;
  background: var(--inside-surface-muted) !important;
}

body.inside-app-body :is(.inside-support-field input[type=text],
.inside-support-field select,
.inside-support-field textarea) {
  color: var(--inside-text-primary) !important;
  border-color: var(--inside-border) !important;
  background: var(--inside-surface-muted) !important;
}

body.inside-app-body :is(.inside-support-kicker,
.inside-support-field > span,
.inside-support-field > label,
.inside-support-feedback) {
  color: var(--inside-text-accent) !important;
}

body.inside-app-body :is(.inside-support-dialog-header p,
.inside-support-field-hint,
.inside-support-file-name,
.inside-support-screenshot-preview-name) {
  color: var(--inside-text-secondary) !important;
}

body.inside-app-body .inside-support-submit {
  color: var(--inside-white) !important;
  border-color: var(--inside-green-accent) !important;
  background: var(--inside-green-main) !important;
}

body.inside-app-body .inside-support-remove-screenshot {
  color: var(--inside-green-accent) !important;
}

@media (max-width: 1180px) {
  body.inside-dashboard-page .dashboard-support-mini-ticket:not(:where([class*=nodal-])),
  body.inside-dashboard-page .dashboard-ticket-status:not(:where([class*=nodal-])),
  body.inside-dashboard-page .dashboard-ticket-status-abierto:not(:where([class*=nodal-])),
  body.inside-dashboard-page .dashboard-ticket-status-en_progreso:not(:where([class*=nodal-])) {
    color: var(--inside-text-primary) !important;
    border-color: var(--inside-border) !important;
    background: var(--inside-surface-muted) !important;
  }
  /* La fila de ticket y el estado vacío son Nodal desde el 03/10/2026: sus
     textos toman el color del componente (soporte-widget.css). */
  body.inside-dashboard-page .dashboard-support-mini-ticket:not(:where([class*=nodal-])) :is(span, strong) {
    color: var(--inside-text-primary) !important;
  }
  body.inside-dashboard-page .dashboard-support-mini-ticket:not(:where([class*=nodal-])) :is(small, em) {
    color: var(--inside-text-secondary) !important;
  }
  body.inside-dashboard-page .dashboard-ticket-status:not(:where([class*=nodal-])) {
    color: var(--inside-white) !important;
    border-color: var(--inside-green-accent) !important;
    background: var(--inside-green-main) !important;
  }
  body.inside-app-body.inside-dashboard-page .dashboard-welcome-card .dashboard-title #dashboardGreeting {
    color: var(--inside-text-primary) !important;
  }
  body.inside-app-body.inside-dashboard-page .dashboard-support-overview-list,
  body.inside-app-body.inside-dashboard-page .dashboard-support-empty-summary:not(:where([class*=nodal-])),
  body.inside-app-body.inside-dashboard-page .dashboard-support-empty-summary:not(:where([class*=nodal-])) strong {
    color: var(--inside-text-primary) !important;
  }
  body.inside-app-body.inside-dashboard-page .dashboard-support-empty-summary:not(:where([class*=nodal-])) p {
    color: var(--inside-text-secondary) !important;
  }
}
/* En Dashboard tablet, la marca ocupa el centro óptico del viewport como en
   la referencia aprobada. Esta excepción va después del HUD canónico para no
   alterar el orden global del header en las demás vistas. */
@media (min-width: 701px) and (max-width: 1180px) {
  html body.inside-app-body.inside-dashboard-page #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-topbar-brand {
    position: fixed !important;
    top: calc(var(--inside-hud-height, 56px) / 2) !important;
    right: auto !important;
    bottom: auto !important;
    left: 50vw !important;
    width: 118px !important;
    min-width: 118px !important;
    max-width: 118px !important;
    justify-self: auto !important;
    transform: translate(-50%, -50%) !important;
  }
  html body.inside-app-body.inside-dashboard-page #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-topbar-brand .budget-product-logo,
  html body.inside-app-body.inside-dashboard-page #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-topbar-brand .budget-product-logo-image {
    width: 118px !important;
    min-width: 118px !important;
    max-width: 118px !important;
  }
  html body.inside-app-body.inside-dashboard-page #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-topbar-left {
    display: none !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.inside-app-body .app-sidebar-collapse-icon svg {
    transition: none !important;
  }
}
/* BCT V01: la barra de trabajo conserva la paleta y su segunda fila interna
   después del HUD responsive global. No crea una barra de contexto aparte.

   Nodal, 24/09/2026. La ESTRUCTURA de esta barra es la del PR 325 de Gustavo
   (el módulo, los dos select de contexto, el botón de proyecto nuevo); los
   COLORES son los de Nodal. Lo decidió Gustavo a Cristian ese día a las 21:50
   —«todo lo que son estilos cae encima lo suyo»— y Cristian lo dejó escrito:
   lo visual es del frontend y sus commits mandan sobre lo visual.

   El PR pintaba la barra #0C3D3A en los dos temas, todo el texto blanco, el
   recuadro de la marca blanco, los botones cuadrados y los select en el verde
   de «campos» del Contrato V5, que no está en el registro. Ahora:
   - la barra, el recuadro de la marca, la miga y los botones que ya existían
     (tema, idioma, avisos, avatar, menú) NO se pintan aquí: vuelven a las
     reglas de antes de la fusión, carbón en oscuro y blanco en claro, con todo
     lo de adentro transparente. Pintarlos aquí volvía a aplanar la miga;
   - lo nuevo se pinta con los tokens Nodal, que cambian solos con el tema. */
body.inside-app-body #insideGlobalHeader.inside-bct .budget-product-logo img {
  filter: none !important;
}

body.inside-app-body #insideGlobalHeader.inside-bct :is(.inside-bct-module,
.inside-bct-field > label) {
  color: var(--nodal-texto-2) !important;
}

body.inside-app-body #insideGlobalHeader.inside-bct :is(.inside-bct-module svg,
.inside-bct-select-wrap > svg) {
  color: var(--nodal-acento) !important;
}

/* los select de contexto, como el control Nodal: superficie elevada, borde de
   control, radio del token y la flecha atenuada */
body.inside-app-body #insideGlobalHeader.inside-bct .inside-bct-field select {
  color: var(--nodal-texto) !important;
  border: 1px solid var(--nodal-borde-control) !important;
  border-radius: var(--nodal-radio) !important;
  background-color: var(--nodal-superficie-elevada) !important;
  background-image: linear-gradient(45deg, transparent 50%, var(--nodal-atenuado) 50%), linear-gradient(135deg, var(--nodal-atenuado) 50%, transparent 50%) !important;
}

/* el botón de proyecto nuevo es la acción de la barra: botón primario Nodal */
body.inside-app-body #insideGlobalHeader.inside-bct .inside-bct-new-project {
  color: var(--nodal-sobre-primario) !important;
  border-color: transparent !important;
  border-radius: var(--nodal-radio) !important;
  background: var(--nodal-primario) !important;
}

body.inside-app-body #insideGlobalHeader.inside-bct .inside-bct-new-project:is(:hover, :focus-visible) {
  color: var(--nodal-sobre-primario-hover) !important;
  background: var(--nodal-primario-hover) !important;
}

@media (max-width: 1180px) {
  /* solo con la barra de contexto puesta: sin ella, 132 px en todo
     Presupuestos rompían la cabecera responsive de antes */
  html body.inside-app-body.inside-budget-module:has(#insideGlobalHeader.inside-bct--with-context) {
    --inside-app-topbar-height: 132px;
    --inside-hud-height: 132px;
  }
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context[data-inside-responsive-hud] {
    width: 100% !important;
    height: 132px !important;
    min-height: 132px !important;
    max-height: 132px !important;
    padding: 8px 10px !important;
    display: grid !important;
    grid-template-columns: 44px 94px minmax(0, 1fr) 44px !important;
    grid-template-rows: 48px 62px !important;
    gap: 6px 8px !important;
  }
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context > .budget-product-topbar-actions {
    position: relative !important;
    inset: auto !important;
    grid-column: 1/-1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 62px !important;
    min-height: 62px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    place-items: stretch !important;
    overflow: visible !important;
  }
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context .inside-bct-context {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context > .budget-product-topbar-actions > .budget-product-user-menu {
    position: fixed !important;
    top: 10px !important;
    right: 10px !important;
    width: 44px !important;
    height: 44px !important;
  }
}
@media (max-width: 1180px) {
  html:has(> body.inside-dashboard-page) {
    height: auto !important;
    min-height: 100% !important;
    scroll-padding-top: calc(var(--inside-hud-height, 56px) + 8px) !important;
    overflow-anchor: none !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }
  html body.inside-app-body.inside-dashboard-page {
    height: auto !important;
    min-height: 100dvh !important;
    overflow-anchor: none !important;
    overflow-x: hidden !important;
    overflow-y: visible !important;
  }
  html body.inside-app-body.inside-dashboard-page main.dashboard-page {
    height: auto !important;
    min-height: calc(100vh - var(--inside-hud-height, 56px)) !important;
    min-height: calc(100dvh - var(--inside-hud-height, 56px)) !important;
    overflow: visible !important;
  }
  body.inside-app-body #insideGlobalHeader,
  body.inside-app-body .budget-product-topbar,
  body.inside-app-body .budget-product-topbar.budget-product-topbar--con-miga {
    grid-template-columns: 44px 104px minmax(0, 1fr) 44px !important;
  }
  body.inside-app-body #insideGlobalHeader .inside-mobile-navigation-toggle,
  body.inside-app-body #insideGlobalHeader .budget-product-topbar-actions,
  body.inside-app-body #insideGlobalHeader .budget-product-user-menu,
  body.inside-app-body #insideGlobalHeader .budget-product-avatar,
  body.inside-app-body .app-sidebar--standard .app-sidebar-mobile-close {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
  }
  body.inside-app-body #insideGlobalHeader .budget-product-logo,
  body.inside-app-body .app-sidebar--standard .app-sidebar-logo {
    min-height: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
  }
  body.inside-app-body #insideGlobalHeader .budget-product-topbar-brand,
  body.inside-app-body #insideGlobalHeader .budget-product-logo {
    width: 104px !important;
    max-width: 104px !important;
    height: 44px !important;
    flex-basis: 104px !important;
    overflow: visible !important;
  }
  body.inside-app-body #insideGlobalHeader .budget-product-logo img {
    width: 104px !important;
    max-width: 104px !important;
    min-width: 104px !important;
    height: 40px !important;
    max-height: 40px !important;
    flex: 0 0 104px !important;
    object-fit: contain !important;
    object-position: center !important;
  }
  body.inside-app-body #insideAppSidebar.app-sidebar--standard.is-mobile-open .app-sidebar-logo {
    width: 132px !important;
    max-width: 132px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    overflow: visible !important;
  }
  body.inside-app-body #insideAppSidebar.app-sidebar--standard.is-mobile-open .app-sidebar-logo-full {
    width: 132px !important;
    max-width: 132px !important;
    height: 40px !important;
    max-height: 40px !important;
    object-fit: contain !important;
    object-position: left center !important;
  }
  body.inside-app-body #insideAppSidebar.app-sidebar--standard.is-mobile-open .app-sidebar-logo-compact {
    display: none !important;
  }
  body.inside-app-body #insideGlobalHeader .budget-product-avatar,
  body.inside-app-body #insideGlobalHeader .budget-product-notification {
    touch-action: manipulation;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu:not(:where([class*=nodal-])) {
    --inside-header-menu-control-height: 44px;
    position: fixed !important;
    z-index: 12130 !important;
    top: 60px !important;
    right: 8px !important;
    bottom: auto !important;
    left: auto !important;
    width: min(320px, 100vw - 16px) !important;
    min-width: 0 !important;
    max-width: 320px !important;
    height: auto !important;
    max-height: calc(100dvh - 68px) !important;
    padding: 8px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: none !important;
    grid-auto-rows: max-content !important;
    align-content: start !important;
    gap: 4px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    border: 1px solid var(--inside-green-accent) !important;
    border-radius: 12px !important;
    color: var(--inside-white) !important;
    background: var(--inside-surface-page) !important;
    background-image: none !important;
    box-shadow: 0 6px 0 var(--inside-black) !important;
    filter: none !important;
    backdrop-filter: none !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu:where(.nodal-menu) {
    --inside-header-menu-control-height: 44px;
    position: fixed !important;
    z-index: 12130 !important;
    top: 60px !important;
    right: 8px !important;
    bottom: auto !important;
    left: auto !important;
    width: min(320px, 100vw - 16px) !important;
    min-width: 0 !important;
    max-width: 320px !important;
    height: auto !important;
    max-height: calc(100dvh - 68px) !important;
    padding: 8px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: none !important;
    grid-auto-rows: max-content !important;
    align-content: start !important;
    gap: 4px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }
  body.theme-light.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu:not(:where([class*=nodal-])) {
    border-color: var(--inside-green-main) !important;
    color: var(--inside-black) !important;
    background: var(--inside-white) !important;
    box-shadow: 0 6px 0 var(--inside-gray-200) !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu[hidden] {
    display: none !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-header-secondary-actions {
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: none !important;
    grid-auto-rows: max-content !important;
    align-content: start !important;
    gap: 4px !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu a.budget-product-language-link.inside-language-direct-link {
    display: none !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-language-menu {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: none !important;
    grid-auto-rows: max-content !important;
    align-content: start !important;
    gap: 4px !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-responsive-preferences-label {
    min-height: 18px !important;
    padding: 2px 4px !important;
    display: flex !important;
    align-items: center !important;
    color: var(--inside-green-accent) !important;
    font-size: 0.65rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
  }
  body.theme-light.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-responsive-preferences-label {
    color: var(--inside-green-main) !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu :is(.budget-product-theme-button,
  .budget-product-language-link,
  .budget-product-notification,
  .budget-product-avatar-menu-item):not(:where([class*=nodal-])) {
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: var(--inside-header-menu-control-height) !important;
    height: var(--inside-header-menu-control-height) !important;
    max-height: var(--inside-header-menu-control-height) !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    align-items: center !important;
    justify-content: stretch !important;
    gap: 8px !important;
    overflow: hidden !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: left !important;
    text-decoration: none !important;
    transform: none !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu :is(.budget-product-theme-button:not(:where([class*=nodal-])),
  .budget-product-language-link:not(:where([class*=nodal-])),
  .budget-product-notification,
  .budget-product-avatar-menu-item):not(:where([class*=nodal-])) {
    border: 1px solid var(--inside-green-main) !important;
    border-radius: 8px !important;
    color: var(--inside-white) !important;
    background: var(--inside-surface-page) !important;
    background-image: none !important;
    box-shadow: none !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu :is(.budget-product-theme-button,
  .budget-product-language-link,
  .budget-product-notification,
  .budget-product-avatar-menu-item):where(.nodal-menu__opcion) {
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: var(--inside-header-menu-control-height) !important;
    height: var(--inside-header-menu-control-height) !important;
    max-height: var(--inside-header-menu-control-height) !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    align-items: center !important;
    justify-content: stretch !important;
    gap: 8px !important;
    overflow: hidden !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: left !important;
    text-decoration: none !important;
    transform: none !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-language-menu__trigger {
    grid-template-columns: 24px minmax(0, 1fr) max-content 16px !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-language-menu__current {
    min-width: 24px !important;
    color: inherit !important;
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-align: right !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-language-menu__chevron {
    width: 16px !important;
    height: 16px !important;
    color: inherit !important;
    transform: none !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-language-menu__trigger[aria-expanded=true] .inside-language-menu__chevron {
    transform: rotate(180deg) !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-language-menu__options {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 0 0 32px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: none !important;
    grid-auto-rows: var(--inside-header-menu-control-height) !important;
    align-content: start !important;
    gap: 4px !important;
    box-sizing: border-box !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-language-menu__options[hidden] {
    display: none !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-language-menu__options > a {
    width: 100% !important;
    min-width: 0 !important;
    height: var(--inside-header-menu-control-height) !important;
    min-height: var(--inside-header-menu-control-height) !important;
    max-height: var(--inside-header-menu-control-height) !important;
    margin: 0 !important;
    padding: 0 10px !important;
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) 16px !important;
    align-items: center !important;
    gap: 8px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    color: var(--inside-white) !important;
    border: 1px solid var(--inside-green-main) !important;
    border-radius: 8px !important;
    background: var(--inside-surface-page) !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
  }
  body.theme-light.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-language-menu__options > a {
    color: var(--inside-black) !important;
    border-color: var(--inside-gray-200) !important;
    background: var(--inside-white) !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-language-menu__options > a:is([aria-current=true], :hover, :focus-visible) {
    color: var(--inside-white) !important;
    border-color: var(--inside-green-accent) !important;
    background: var(--inside-green-main) !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-language-menu__options > a > svg {
    width: 16px !important;
    height: 16px !important;
    color: inherit !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-language-menu__options > a:not([aria-current=true]) > svg {
    visibility: hidden !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-language-menu__code {
    font-size: 0.68rem !important;
    font-weight: 800 !important;
  }
  body.theme-light.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu :is(.budget-product-theme-button:not(:where([class*=nodal-])),
  .budget-product-language-link:not(:where([class*=nodal-])),
  .budget-product-notification,
  .budget-product-avatar-menu-item):not(:where([class*=nodal-])) {
    border-color: var(--inside-gray-200) !important;
    color: var(--inside-black) !important;
    background: var(--inside-white) !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu :is(.budget-product-theme-button:not(:where([class*=nodal-])),
  .budget-product-language-link:not(:where([class*=nodal-])),
  .budget-product-notification,
  .budget-product-avatar-menu-item):is(:hover, :focus-visible):not(:where([class*=nodal-])) {
    border-color: var(--inside-green-accent) !important;
    color: var(--inside-white) !important;
    background: var(--inside-green-main) !important;
  }
  body.theme-light.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu :is(.budget-product-theme-button:not(:where([class*=nodal-])),
  .budget-product-language-link:not(:where([class*=nodal-])),
  .budget-product-notification,
  .budget-product-avatar-menu-item):is(:hover, :focus-visible):not(:where([class*=nodal-])) {
    border-color: var(--inside-green-main) !important;
    color: var(--inside-white) !important;
    background: var(--inside-green-main) !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-contexto-disparador {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 44px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    overflow: hidden !important;
    border: 1px solid var(--inside-green-main) !important;
    border-radius: 8px !important;
    color: var(--inside-white) !important;
    background: var(--inside-surface-page) !important;
    box-shadow: none !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
  }
  body.theme-light.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-contexto-disparador {
    border-color: var(--inside-gray-200) !important;
    color: var(--inside-black) !important;
    background: var(--inside-white) !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-theme-icon {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 24px !important;
    height: 24px !important;
    display: grid !important;
    place-items: center !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu #budgetHeaderThemeText {
    grid-column: 2 !important;
    grid-row: 1 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu :is(.budget-product-theme-symbol,
  .budget-product-language-flag-svg,
  .budget-product-notification > svg,
  .budget-product-avatar-menu-icon,
  .budget-product-avatar-menu-icon svg) {
    width: 22px !important;
    min-width: 22px !important;
    height: 22px !important;
    max-height: 22px !important;
    color: inherit !important;
    fill: none !important;
    stroke: currentColor !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-avatar-profile-glyph,
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-avatar-profile-glyph path {
    fill: currentColor !important;
    stroke: none !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .inside-mobile-action-label {
    min-width: 0 !important;
    display: block !important;
    overflow: hidden !important;
    color: inherit !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-menu {
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 4px !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-dropdown:not(:where([class*=nodal-])) {
    position: static !important;
    inset: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    max-height: 220px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid var(--inside-green-main) !important;
    border-radius: 8px !important;
    color: var(--inside-white) !important;
    background: var(--inside-surface-page) !important;
    box-shadow: none !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-dropdown:where(.nodal-menu) {
    position: static !important;
    inset: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    max-height: 220px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
  body.theme-light.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-dropdown:not(:where([class*=nodal-])) {
    border-color: var(--inside-gray-200) !important;
    color: var(--inside-black) !important;
    background: var(--inside-white) !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-dropdown[hidden] {
    display: none !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-head:not(:where([class*=nodal-])) {
    min-height: 36px !important;
    padding: 6px 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    border-bottom: 1px solid var(--inside-green-main) !important;
    color: inherit !important;
    background: transparent !important;
    font-size: 0.72rem !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-head:where(.nodal-menu__cabecera) {
    min-height: 36px !important;
    padding: 6px 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    font-size: 0.72rem !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-link:not(:where([class*=nodal-])) {
    min-height: 32px !important;
    padding: 4px !important;
    display: inline-flex !important;
    align-items: center !important;
    color: var(--inside-green-accent) !important;
    background: transparent !important;
    font-size: 0.7rem !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-link:where(.nodal-boton) {
    min-height: 32px !important;
    padding: 4px !important;
    display: inline-flex !important;
    align-items: center !important;
    font-size: 0.7rem !important;
  }
  body.theme-light.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-link:not(:where([class*=nodal-])) {
    color: var(--inside-green-main) !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-list {
    display: grid !important;
    gap: 4px !important;
    max-height: 168px !important;
    padding: 4px !important;
    overflow-y: auto !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-item:not(:where([class*=nodal-])) {
    min-height: 52px !important;
    padding: 6px 8px !important;
    display: grid !important;
    grid-template-columns: 8px minmax(0, 1fr) !important;
    gap: 7px !important;
    align-items: start !important;
    overflow: hidden !important;
    border: 1px solid var(--inside-green-main) !important;
    border-radius: 7px !important;
    color: var(--inside-white) !important;
    background: var(--inside-black) !important;
    text-decoration: none !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-item:where(.nodal-menu__opcion) {
    min-height: 52px !important;
    padding: 6px 8px !important;
    display: grid !important;
    grid-template-columns: 8px minmax(0, 1fr) !important;
    gap: 7px !important;
    align-items: start !important;
    overflow: hidden !important;
    text-decoration: none !important;
  }
  body.theme-light.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-item:not(:where([class*=nodal-])) {
    border-color: var(--inside-gray-200) !important;
    color: var(--inside-black) !important;
    background: var(--inside-gray-200) !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-dot {
    width: 7px !important;
    height: 7px !important;
    margin-top: 4px !important;
    border-radius: 50% !important;
    background: var(--inside-green-accent) !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-content {
    min-width: 0 !important;
    display: grid !important;
    gap: 2px !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu :is(.budget-product-notification-title,
  .budget-product-notification-message) {
    display: -webkit-box !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    overflow-wrap: anywhere !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-title {
    color: inherit !important;
    font-size: 0.7rem !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    -webkit-line-clamp: 1 !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-message {
    color: inherit !important;
    font-size: 0.68rem !important;
    line-height: 1.2 !important;
    -webkit-line-clamp: 2 !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 3px 6px !important;
    color: var(--inside-green-accent) !important;
    font-size: 0.62rem !important;
    line-height: 1.2 !important;
  }
  body.theme-light.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-meta {
    color: var(--inside-green-main) !important;
  }
  body.inside-app-body #insideGlobalHeader #budgetHeaderAvatarMenu .budget-product-notification-empty {
    min-height: 44px !important;
    padding: 8px !important;
    display: flex !important;
    align-items: center !important;
    color: inherit !important;
    background: transparent !important;
    font-size: 0.72rem !important;
    line-height: 1.25 !important;
  }
  body.inside-app-body #budgetHeaderAvatarMenu :is(.inside-contexto-disparador,
  .budget-product-theme-button,
  .budget-product-language-link,
  .budget-product-notification,
  .budget-product-avatar-menu-item),
  body.inside-app-body .app-sidebar--standard .app-sidebar-link {
    min-height: 44px !important;
  }
  body.inside-app-body .app-sidebar--standard .app-sidebar-tool-row.has-toggle {
    grid-template-columns: minmax(0, 1fr) 44px !important;
  }
  body.inside-app-body .app-sidebar--standard .app-sidebar-module-toggle {
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
  }
}
@media (max-width: 380px) {
  body.inside-app-body #insideGlobalHeader,
  body.inside-app-body .budget-product-topbar,
  body.inside-app-body .budget-product-topbar.budget-product-topbar--con-miga {
    grid-template-columns: 44px 96px minmax(0, 1fr) 44px !important;
  }
  body.inside-app-body #insideGlobalHeader .budget-product-topbar-brand,
  body.inside-app-body #insideGlobalHeader .budget-product-logo,
  body.inside-app-body #insideGlobalHeader .budget-product-logo img {
    width: 96px !important;
    max-width: 96px !important;
    min-width: 96px !important;
    flex-basis: 96px !important;
  }
}
/* Auditoria de submenus responsive: hitboxes reales, drawer legible y una
 * apertura breve sin introducir colores fuera de la allowlist. */
@media (max-width: 1180px) {
  html[data-planificador-mode-v112] body.inside-app-body.planificador-app-body #insideGlobalHeader #insideMobileNavigationToggle,
  html body.inside-app-body.planificador-app-body.is-planificador-tablet-reference-v82 #insideGlobalHeader #budgetHeaderAvatarButton,
  html body.inside-app-body.planificador-app-body #insideGlobalHeader #budgetHeaderAvatarButton,
  html body.inside-app-body.inside-budget-module #insideGlobalHeader :is(#insideMobileNavigationToggle, #budgetHeaderAvatarButton) {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
  }
  html body.inside-app-body.planificador-app-body #insideGlobalHeader #budgetHeaderAvatarButton {
    position: fixed !important;
    top: 6px !important;
    right: 6px !important;
    bottom: auto !important;
    left: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    transform: none !important;
  }
  html body.inside-app-body #insideGlobalHeader > .budget-product-topbar-actions {
    position: fixed !important;
    z-index: 12121 !important;
    top: 6px !important;
    right: 6px !important;
    left: auto !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    display: grid !important;
    place-items: center !important;
    overflow: visible !important;
  }
  html body.inside-app-body #insideGlobalHeader > .budget-product-topbar-actions > .budget-product-user-menu {
    position: relative !important;
    width: 44px !important;
    height: 44px !important;
    display: inline-flex !important;
    overflow: visible !important;
  }
  html body.inside-app-body.planificador-app-body main#planificador#planificador :is(button:not(.planificador-reference-timeline__bar), input:not([type=hidden]):not([type=checkbox]):not([type=radio]), select, textarea, summary),
  body.inside-app-body.planificador-app-body main.planificador-secondary-page :is(button, input:not([type=hidden]):not([type=checkbox]):not([type=radio]), select, textarea, summary),
  body.inside-app-body.inside-budget-module main :is(button, input:not([type=hidden]):not([type=checkbox]):not([type=radio]), select, textarea, summary) {
    min-width: 44px !important;
    min-height: 44px !important;
    box-sizing: border-box !important;
  }
  html body.inside-app-body.planificador-app-body main#planificador#planificador a,
  body.inside-app-body.planificador-app-body main.planificador-secondary-page a,
  body.inside-app-body.inside-budget-module main a {
    min-width: 44px !important;
    min-height: 44px !important;
    display: inline-flex;
    align-items: center;
    box-sizing: border-box;
  }
  html body.inside-app-body .app-sidebar-mobile-backdrop {
    background: transparent !important;
    opacity: 1 !important;
    filter: none !important;
    backdrop-filter: none !important;
  }
  html body.inside-app-body #insideAppSidebar.app-sidebar--standard .app-sidebar-module-toggle {
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    display: grid !important;
    place-items: center !important;
    align-self: center !important;
  }
  html body.inside-app-body #insideAppSidebar.app-sidebar--standard .app-sidebar-module-toggle svg {
    width: 20px !important;
    height: 20px !important;
    stroke: currentColor !important;
  }
  /*
   * El drawer global debe ganar sobre los ocultamientos heredados de cada
   * modulo. La visibilidad la controla exclusivamente el estado accesible
   * `is-mobile-open` que mantiene app-header.ejs.
   */
  html body.inside-app-body #insideAppSidebar.app-sidebar.app-sidebar--standard:not(.is-mobile-open),
  html body.inside-app-body #insideAppSidebar.app-sidebar.app-sidebar--standard:not(.is-mobile-open) * {
    visibility: hidden !important;
    pointer-events: none !important;
  }
  html body.inside-app-body #insideAppSidebar.app-sidebar.app-sidebar--standard:not(.is-mobile-open) {
    overflow: hidden !important;
  }
  html body.inside-app-body #insideAppSidebar.app-sidebar.app-sidebar--standard.is-mobile-open,
  html body.inside-app-body.planificador-app-body #insideAppSidebar.app-sidebar.app-sidebar--standard.is-mobile-open {
    position: fixed !important;
    inset: 0 auto 0 0 !important;
    display: flex !important;
    width: min(88vw, 360px) !important;
    min-width: min(88vw, 360px) !important;
    max-width: 360px !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: none !important;
    clip-path: none !important;
    content-visibility: visible !important;
  }
}
@media (prefers-reduced-motion: no-preference) {
  body.inside-app-body .app-sidebar-module-submenu:not([hidden]) {
    animation: inside-submenu-reveal 140ms ease-out;
  }
}
@media (min-width: 992px) and (max-width: 1180px) {
  html body.inside-app-body.planificador-app-body #insideGlobalHeader > .budget-product-topbar-actions {
    position: fixed !important;
    z-index: 12121 !important;
    top: 7px !important;
    right: 8px !important;
    left: auto !important;
    width: 44px !important;
    height: 44px !important;
    display: grid !important;
    place-items: center !important;
    overflow: visible !important;
  }
  html body.inside-app-body.planificador-app-body #insideGlobalHeader > .budget-product-topbar-actions > .budget-product-user-menu {
    position: relative !important;
    width: 44px !important;
    height: 44px !important;
    display: inline-flex !important;
    overflow: visible !important;
  }
}
@keyframes inside-submenu-reveal {
  from {
    transform: translateY(-4px);
  }
  to {
    transform: translateY(0);
  }
}
/* =========================================================
   INSIDE | HUD GLOBAL RESPONSIVE CANÓNICO
   La fila autenticada tiene una sola geometría y cinco slots:
   navegación, marca, contexto, acciones de vista y cuenta.
   Ninguna página redefine su orden; desktop queda fuera.
   ========================================================= */
@media (max-width: 1180px) {
  html body.inside-app-body {
    --inside-hud-height: 56px;
    --inside-hud-control-size: 44px;
    --inside-hud-logo-width: 92px;
    --inside-hud-gap: 8px;
    --inside-hud-padding-inline: 8px;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] {
    position: fixed !important;
    inset: 0 0 auto !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: var(--inside-hud-height) !important;
    min-height: var(--inside-hud-height) !important;
    max-height: var(--inside-hud-height) !important;
    margin: 0 !important;
    padding-block: 0 !important;
    padding-inline: max(var(--inside-hud-padding-inline), env(safe-area-inset-left)) max(var(--inside-hud-padding-inline), env(safe-area-inset-right)) !important;
    display: grid !important;
    grid-template-columns: var(--inside-hud-control-size) var(--inside-hud-logo-width) minmax(0, 1fr) max-content var(--inside-hud-control-size) !important;
    grid-template-rows: var(--inside-hud-height) !important;
    align-items: center !important;
    gap: 0 var(--inside-hud-gap) !important;
    overflow: visible !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] > .inside-mobile-navigation-toggle {
    position: relative !important;
    inset: auto !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    box-sizing: border-box !important;
    width: var(--inside-hud-control-size) !important;
    min-width: var(--inside-hud-control-size) !important;
    max-width: var(--inside-hud-control-size) !important;
    height: var(--inside-hud-control-size) !important;
    min-height: var(--inside-hud-control-size) !important;
    max-height: var(--inside-hud-control-size) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    justify-self: start !important;
    margin: 0 !important;
    flex: 0 0 var(--inside-hud-control-size) !important;
    transform: none !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] > .planificador-reference-header-menu--legacy {
    display: none !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-topbar-brand {
    position: relative !important;
    inset: auto !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    box-sizing: border-box !important;
    width: var(--inside-hud-logo-width) !important;
    min-width: var(--inside-hud-logo-width) !important;
    max-width: var(--inside-hud-logo-width) !important;
    height: var(--inside-hud-control-size) !important;
    min-height: var(--inside-hud-control-size) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    justify-self: start !important;
    margin: 0 !important;
    overflow: visible !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .budget-product-logo {
    box-sizing: border-box !important;
    width: var(--inside-hud-logo-width) !important;
    min-width: var(--inside-hud-logo-width) !important;
    max-width: var(--inside-hud-logo-width) !important;
    height: var(--inside-hud-control-size) !important;
    min-height: var(--inside-hud-control-size) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 var(--inside-hud-logo-width) !important;
    overflow: visible !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .budget-product-logo > .budget-product-logo-image {
    position: static !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 36px !important;
    display: block !important;
    flex: 0 0 auto !important;
    object-fit: contain !important;
    object-position: center !important;
    overflow: visible !important;
    transform: none !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-topbar-left {
    position: relative !important;
    inset: auto !important;
    grid-column: 3 !important;
    grid-row: 1 !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: var(--inside-hud-control-size) !important;
    min-height: var(--inside-hud-control-size) !important;
    padding: 0 0 0 var(--inside-hud-gap) !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    overflow: visible !important;
    border: 0 !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-topbar-left::before {
    content: none !important;
    display: none !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-topbar-left > .budget-product-topbar-section {
    box-sizing: border-box !important;
    height: 36px !important;
    min-height: 36px !important;
    padding-inline-start: 12px !important;
    display: flex !important;
    align-items: center !important;
    border: 0 !important;
    border-inline-start: 1px solid rgba(31, 37, 39, 0.32) !important;
    box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.12) !important;
  }
  html body.inside-app-body.theme-light #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-topbar-left > .budget-product-topbar-section {
    border-inline-start-color: rgba(31, 37, 39, 0.22) !important;
    box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.72) !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-topbar-left .inside-miga {
    width: max-content !important;
    min-width: max-content !important;
    max-width: none !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    overflow: visible !important;
    white-space: nowrap !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .inside-header-project-selector {
    position: relative !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: min(280px, 100%) !important;
    height: 38px !important;
    flex: 1 1 160px !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .inside-header-project-selector__trigger {
    height: 38px !important;
    min-height: 38px !important;
    padding: 3px 6px !important;
    grid-template-columns: 16px minmax(0, 1fr) 10px !important;
    gap: 4px !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .inside-header-project-selector__trigger > svg:first-child {
    width: 16px !important;
    height: 16px !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .inside-header-project-selector__copy small {
    display: none !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .inside-header-project-selector__copy strong {
    font-size: 0.68rem !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .inside-header-project-selector__options {
    position: absolute !important;
    z-index: 12150 !important;
    top: calc(100% + 6px) !important;
    right: auto !important;
    left: 0 !important;
    width: max(100%, min(280px, 100vw - 16px)) !important;
    max-width: 320px !important;
    max-height: calc(100dvh - var(--inside-hud-height) - 14px) !important;
    opacity: 1 !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .inside-header-project-selector__options:not(:where([class*=nodal-])) {
    background-color: var(--inside-surface-page) !important;
    background-image: none !important;
  }
  html body.inside-app-body.theme-light #insideGlobalHeader[data-inside-responsive-hud] .inside-header-project-selector__options:not(:where([class*=nodal-])) {
    background-color: var(--inside-white) !important;
    background-image: none !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .inside-header-project-selector__status {
    position: absolute !important;
    z-index: 12151 !important;
    top: calc(100% + 6px) !important;
    right: auto !important;
    left: 0 !important;
    max-width: min(320px, 100vw - 16px) !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-search {
    display: none !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] > .inside-responsive-context-actions {
    position: static !important;
    inset: auto !important;
    z-index: auto !important;
    grid-column: 4 !important;
    grid-row: 1 !important;
    box-sizing: border-box !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: var(--inside-hud-control-size) !important;
    min-height: var(--inside-hud-control-size) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    justify-self: end !important;
    gap: 4px !important;
    margin: 0 !important;
    overflow: visible !important;
    transform: none !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-topbar-actions {
    position: relative !important;
    inset: auto !important;
    z-index: 2 !important;
    grid-column: 5 !important;
    grid-row: 1 !important;
    box-sizing: border-box !important;
    width: var(--inside-hud-control-size) !important;
    min-width: var(--inside-hud-control-size) !important;
    max-width: var(--inside-hud-control-size) !important;
    height: var(--inside-hud-control-size) !important;
    min-height: var(--inside-hud-control-size) !important;
    max-height: var(--inside-hud-control-size) !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: minmax(0, 1fr) !important;
    place-items: center !important;
    justify-self: end !important;
    gap: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    transform: none !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-topbar-actions > .inside-header-secondary-actions {
    display: none !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] :is(.inside-header-view-context, .inside-header-context-details) {
    display: none !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-topbar-actions > .budget-product-user-menu,
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] #budgetHeaderAvatarButton {
    position: relative !important;
    inset: auto !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    box-sizing: border-box !important;
    width: var(--inside-hud-control-size) !important;
    min-width: var(--inside-hud-control-size) !important;
    max-width: var(--inside-hud-control-size) !important;
    height: var(--inside-hud-control-size) !important;
    min-height: var(--inside-hud-control-size) !important;
    max-height: var(--inside-hud-control-size) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    flex: 0 0 var(--inside-hud-control-size) !important;
    transform: none !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] > .budget-product-topbar-actions > .budget-product-user-menu {
    align-self: center !important;
    justify-self: center !important;
    padding: 0 !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] #budgetHeaderAvatarButton :is(#headerAvatarImage, #headerAvatarText, .inside-mobile-action-label) {
    display: none !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] #budgetHeaderAvatarButton .inside-responsive-account-ellipsis {
    width: 22px !important;
    height: 22px !important;
    display: block !important;
    pointer-events: none !important;
  }
}
@media (max-width: 430px) {
  html body.inside-app-body {
    --inside-hud-logo-width: 72px;
    --inside-hud-gap: 4px;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .inside-header-project-selector__trigger {
    padding-inline: 5px !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .inside-header-project-selector__trigger > svg {
    display: none !important;
  }
}
@media (max-width: 600px) and (orientation: portrait) {
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .inside-header-project-selector__options,
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .inside-header-project-selector__status {
    right: 0 !important;
    left: auto !important;
    width: min(220px, 100vw - 16px) !important;
    max-width: min(220px, 100vw - 16px) !important;
  }
}
@media (max-width: 1180px) and (orientation: portrait) {
  html body.inside-app-body #insideGlobalHeader[data-inside-responsive-hud] .inside-header-project-slot {
    display: none !important;
  }
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer--authenticated .inside-responsive-drawer__project-slot {
    box-sizing: border-box !important;
    width: calc(100% - 10px) !important;
    min-width: 0 !important;
    margin: 8px 5px 10px !important;
    padding: 7px !important;
    display: block !important;
    border: 1px solid var(--inside-border-accent) !important;
    border-radius: 10px !important;
    background-color: var(--inside-surface-page) !important;
    background-image: none !important;
  }
  html body.theme-light.inside-app-body #insideAppSidebar.inside-responsive-drawer--authenticated .inside-responsive-drawer__project-slot {
    border-color: var(--inside-green-main) !important;
    background-color: var(--inside-white) !important;
  }
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer--authenticated .inside-responsive-drawer__project-slot .inside-header-project-selector {
    position: relative !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    display: grid !important;
    flex: none !important;
    gap: 6px !important;
  }
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer--authenticated .inside-header-project-selector__trigger {
    height: 46px !important;
    min-height: 46px !important;
    padding: 4px 9px !important;
    grid-template-columns: 18px minmax(0, 1fr) 12px !important;
    gap: 7px !important;
  }
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer--authenticated .inside-header-project-selector__copy small {
    display: block !important;
  }
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer--authenticated .inside-header-project-selector__copy strong {
    font-size: var(--inside-drawer-font-tool) !important;
  }
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer--authenticated .inside-header-project-selector__options {
    position: static !important;
    inset: auto !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    max-height: min(320px, 100dvh - 220px) !important;
    margin: 0 !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    opacity: 1 !important;
  }
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer--authenticated .inside-header-project-selector__options:not(:where([class*=nodal-])) {
    background-color: var(--inside-surface-page) !important;
    background-image: none !important;
  }
  html body.theme-light.inside-app-body #insideAppSidebar.inside-responsive-drawer--authenticated .inside-header-project-selector__options:not(:where([class*=nodal-])) {
    background-color: var(--inside-white) !important;
  }
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer--authenticated .inside-header-project-selector__status {
    position: static !important;
    width: 100% !important;
    max-width: none !important;
  }
}
/* =========================================================
   INSIDE | DRAWER RESPONSIVE UNIVERSAL V170
   Un solo shell para portada, Login y navegación autenticada.
   ========================================================= */
.inside-responsive-drawer--public,
.inside-responsive-drawer--public + .inside-responsive-drawer-backdrop {
  display: none;
}

@media (min-width: 1181px) {
  html body.inside-app-body {
    --app-sidebar-width: 252px;
  }
  html body.inside-app-body.app-sidebar-compact {
    --app-sidebar-width: 72px;
  }
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer.inside-responsive-drawer--authenticated.app-sidebar.app-sidebar--standard,
  html body.inside-app-body.planificador-app-body #insideAppSidebar.inside-responsive-drawer.inside-responsive-drawer--authenticated.app-sidebar.app-sidebar--standard.app-sidebar--planificador {
    display: flex !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: none !important;
  }
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer--authenticated .inside-responsive-drawer__navigation {
    min-width: 0;
    min-height: 0;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    overflow: hidden;
  }
}
@media (max-width: 1180px) {
  html body {
    --inside-drawer-width: min(86vw, 380px);
    --inside-drawer-row-height: 46px;
    --inside-drawer-control-size: 44px;
    --inside-drawer-inline: 12px;
    --inside-drawer-font-primary: 0.82rem;
    --inside-drawer-font-tool: 0.82rem;
    --inside-drawer-font-submenu: 0.72rem;
    --inside-drawer-font-group: 0.62rem;
    --inside-drawer-font-company-label: 0.75rem;
    --inside-drawer-font-company-name: 0.875rem;
    --inside-drawer-icon-size: 17px;
  }
  html body.inside-app-body.planificador-app-body {
    --app-sidebar-width: 0px !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  html body.inside-app-body.planificador-app-body :is(main#planificador.planificador-page, main.planificador-secondary-page) {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-left: 0 !important;
  }
  html:not(.is-planificador-immersive) body.inside-app-body.planificador-app-body main#planificador.planificador-page:not(:fullscreen):not(.is-planificador-fallback-fullscreen) > .planificador-shell {
    grid-template-rows: auto minmax(0, 1fr) !important;
    align-content: stretch !important;
  }
  html:not(.is-planificador-immersive) body.inside-app-body.planificador-app-body main#planificador.planificador-page:not(:fullscreen):not(.is-planificador-fallback-fullscreen) > .planificador-shell > .planificador-management-warning-v172 {
    height: auto !important;
    align-self: start !important;
  }
  html:not(.is-planificador-immersive) body.inside-app-body.planificador-app-body main#planificador.planificador-page:not(:fullscreen):not(.is-planificador-fallback-fullscreen) > .planificador-shell > .planificador-reference {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    align-self: stretch !important;
  }
  html body.is-inside-responsive-drawer-open {
    overflow: hidden !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer {
    position: fixed !important;
    inset: 0 auto 0 0 !important;
    z-index: 12100 !important;
    box-sizing: border-box !important;
    width: var(--inside-drawer-width) !important;
    min-width: var(--inside-drawer-width) !important;
    max-width: 380px !important;
    height: 100vh !important;
    height: 100dvh !important;
    height: var(--inside-responsive-drawer-height, 100dvh) !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto minmax(0, 1fr) auto !important;
    align-items: stretch !important;
    gap: 0 !important;
    overflow: hidden !important;
    color: #ffffff !important;
    border: 0 !important;
    border-right: 1px solid #68C4C1 !important;
    border-radius: 0 !important;
    background-color: var(--inside-surface-page, #1f2527) !important;
    background-image: linear-gradient(rgba(31, 37, 39, 0.18), rgba(31, 37, 39, 0.18)), url("/assets/hero-texture.webp") !important;
    background-repeat: no-repeat, no-repeat !important;
    background-position: center, center !important;
    background-size: cover, cover !important;
    box-shadow: 12px 0 28px rgba(31, 37, 39, 0.28) !important;
    filter: none !important;
    backdrop-filter: none !important;
    visibility: hidden !important;
    opacity: 1 !important;
    pointer-events: none !important;
    transform: translate3d(-102%, 0, 0) !important;
    transition: transform 180ms ease, visibility 180ms step-end !important;
    isolation: isolate;
  }
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer {
    color: #0C3D3A !important;
    border-right-color: #15706B !important;
    background-color: #ffffff !important;
    background-image: linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)), url("/assets/hero-texture.webp") !important;
    box-shadow: 12px 0 28px rgba(31, 37, 39, 0.16) !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer.is-mobile-open {
    display: grid !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate3d(0, 0, 0) !important;
    transition: transform 180ms ease, visibility 0s !important;
  }
  /* La navegación autenticada arrastra reglas históricas de mayor
     especificidad. Este puente sigue siendo del shell universal: iguala su
     caja raíz sin introducir excepciones por vista o módulo. */
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer.inside-responsive-drawer--authenticated.app-sidebar.app-sidebar--standard {
    position: fixed !important;
    inset: 0 auto 0 0 !important;
    box-sizing: border-box !important;
    width: var(--inside-drawer-width) !important;
    min-width: var(--inside-drawer-width) !important;
    max-width: 380px !important;
    height: var(--inside-responsive-drawer-height, 100dvh) !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto minmax(0, 1fr) auto !important;
    align-items: stretch !important;
    gap: 0 !important;
    overflow: hidden !important;
    color: #ffffff !important;
    border: 0 !important;
    border-right: 1px solid #68C4C1 !important;
    border-radius: 0 !important;
    background-color: var(--inside-surface-page, #1f2527) !important;
    background-image: linear-gradient(rgba(31, 37, 39, 0.18), rgba(31, 37, 39, 0.18)), url("/assets/hero-texture.webp") !important;
    background-repeat: no-repeat, no-repeat !important;
    background-position: center, center !important;
    background-size: cover, cover !important;
    box-shadow: 12px 0 28px rgba(31, 37, 39, 0.28) !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(-102%, 0, 0) !important;
    transition: transform 180ms ease, visibility 180ms step-end !important;
    isolation: isolate;
  }
  html body.theme-light.inside-app-body #insideAppSidebar.inside-responsive-drawer.inside-responsive-drawer--authenticated.app-sidebar.app-sidebar--standard {
    color: #0C3D3A !important;
    border-right-color: #15706B !important;
    background-color: #ffffff !important;
    background-image: linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.9)), url("/assets/hero-texture.webp") !important;
    box-shadow: 12px 0 28px rgba(31, 37, 39, 0.16) !important;
  }
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer.inside-responsive-drawer--authenticated.app-sidebar.app-sidebar--standard.is-mobile-open {
    display: grid !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate3d(0, 0, 0) !important;
    transition: transform 180ms ease, visibility 0s !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__header {
    position: relative !important;
    z-index: 2 !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 64px !important;
    margin: 0 !important;
    padding: max(8px, env(safe-area-inset-top)) var(--inside-drawer-inline) 8px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) var(--inside-drawer-control-size) !important;
    align-items: center !important;
    gap: 12px !important;
    color: inherit !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
    background: rgba(31, 37, 39, 0.08) !important;
    box-shadow: inset 0 -1px 0 rgba(31, 37, 39, 0.28), inset 0 -2px 0 rgba(255, 255, 255, 0.05) !important;
  }
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__header {
    border-bottom-color: rgba(31, 37, 39, 0.12) !important;
    background: rgba(255, 255, 255, 0.5) !important;
    box-shadow: inset 0 -1px 0 rgba(31, 37, 39, 0.12), inset 0 -2px 0 rgba(255, 255, 255, 0.72) !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__logo {
    box-sizing: border-box !important;
    width: 132px !important;
    min-width: 132px !important;
    max-width: 132px !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    overflow: visible !important;
    border: 0 !important;
    background: transparent !important;
  }
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer.inside-responsive-drawer--authenticated.app-sidebar.app-sidebar--standard .inside-responsive-drawer__logo {
    width: 132px !important;
    min-width: 132px !important;
    max-width: 132px !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__logo-image {
    width: 132px !important;
    min-width: 132px !important;
    max-width: 132px !important;
    height: 40px !important;
    max-height: 40px !important;
    display: none !important;
    object-fit: contain !important;
    object-position: left center !important;
    filter: none !important;
  }
  html body:not(.theme-light) :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__logo-image--dark,
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__logo-image--light {
    display: block !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__close {
    position: static !important;
    box-sizing: border-box !important;
    width: var(--inside-drawer-control-size) !important;
    min-width: var(--inside-drawer-control-size) !important;
    max-width: var(--inside-drawer-control-size) !important;
    height: var(--inside-drawer-control-size) !important;
    min-height: var(--inside-drawer-control-size) !important;
    max-height: var(--inside-drawer-control-size) !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    justify-self: end !important;
    cursor: pointer !important;
    touch-action: manipulation;
  }
  /* la «×» del cajón de la aplicación es nodal-modal__cerrar (01/10/2026): la
     caja táctil vale para las dos; la piel, solo para la vieja (la de la web
     pública sigue igual) */
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__close:not(:where([class*=nodal-])) {
    color: #ffffff !important;
    border: 1px solid #68C4C1 !important;
    border-radius: 10px !important;
    background: rgba(31, 37, 39, 0.08) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
  }
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__close:not(:where([class*=nodal-])) {
    color: #0C3D3A !important;
    border-color: #15706B !important;
    background: #ffffff !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__close svg {
    width: 20px !important;
    height: 20px !important;
    fill: none !important;
    stroke: currentColor !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__navigation {
    position: relative !important;
    z-index: 1 !important;
    box-sizing: border-box !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 12px var(--inside-drawer-inline) !important;
    display: block !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: #68C4C1 transparent;
    color: inherit !important;
    background: transparent !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__panel, .app-sidebar-tools-nav--standard) {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 5px !important;
    display: block !important;
    overflow: visible !important;
    color: inherit !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-radius: 12px !important;
    background: rgba(31, 37, 39, 0.09) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 1px 0 rgba(31, 37, 39, 0.18) !important;
  }
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__panel, .app-sidebar-tools-nav--standard) {
    border-color: rgba(31, 37, 39, 0.12) !important;
    background: rgba(255, 255, 255, 0.74) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 1px 0 rgba(31, 37, 39, 0.08) !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__row, .app-sidebar-link) {
    position: relative !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: var(--inside-drawer-row-height) !important;
    margin: 0 !important;
    padding: 7px 10px !important;
    display: grid !important;
    grid-template-columns: 30px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 10px !important;
    color: inherit !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: transparent !important;
    box-shadow: none !important;
    font: 700 var(--inside-drawer-font-primary)/1.35 "Inter", sans-serif !important;
    text-align: left !important;
    text-decoration: none !important;
    white-space: normal !important;
    transform: none !important;
    transition: color 140ms ease, background-color 140ms ease !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__row, .app-sidebar-link) + :is(.inside-responsive-drawer__row, .app-sidebar-link) {
    border-top: 1px solid rgba(255, 255, 255, 0.09) !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
  }
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__row, .app-sidebar-link) + :is(.inside-responsive-drawer__row, .app-sidebar-link) {
    border-top-color: rgba(31, 37, 39, 0.09) !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__row, .app-sidebar-link:not(:where([class*=nodal-]))):is(:hover, :focus-visible),
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__row, .app-sidebar-link):is(.active, .is-current) {
    color: #ffffff !important;
    background: #15706B !important;
    outline: none !important;
  }
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__row, .app-sidebar-link:not(:where([class*=nodal-]))):is(:hover, :focus-visible) {
    color: #0C3D3A !important;
    background: rgba(31, 37, 39, 0.06) !important;
  }
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__row, .app-sidebar-link):is(.active, .is-current) {
    color: #ffffff !important;
    background: #15706B !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__icon, .app-sidebar-link-icon) {
    box-sizing: border-box !important;
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
    margin: 0 !important;
    display: grid !important;
    place-items: center !important;
    color: #68C4C1 !important;
    border: 1px solid currentColor !important;
    border-radius: 8px !important;
    background: transparent !important;
  }
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__icon, .app-sidebar-link-icon) {
    color: #15706B !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.active, .is-current) :is(.inside-responsive-drawer__icon, .app-sidebar-link-icon) {
    color: #ffffff !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__icon, .app-sidebar-link-icon) svg {
    width: var(--inside-drawer-icon-size) !important;
    height: var(--inside-drawer-icon-size) !important;
    fill: none !important;
    stroke: currentColor !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__label, .app-sidebar-link-text) {
    display: block !important;
    min-width: 0 !important;
    overflow: hidden !important;
    color: inherit !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
  /* El modo compacto pertenece únicamente al sidebar de escritorio. En
     responsive el drawer universal siempre conserva logo, texto y proyecto,
     incluso si Presupuestos dejó ese estado persistido en localStorage. */
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer--authenticated.app-sidebar--budget.is-compact .inside-responsive-drawer__header {
    display: grid !important;
  }
  html body.inside-app-body #insideAppSidebar.inside-responsive-drawer--authenticated.app-sidebar--budget.is-compact :is(.app-sidebar-link-text, .inside-responsive-drawer__project-slot) {
    display: block !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__module-row, .app-sidebar-tool-row).has-toggle {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 44px !important;
    align-items: center !important;
    gap: 2px !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__module-row, .app-sidebar-tool-row).has-toggle > :is(.inside-responsive-drawer__row, .app-sidebar-link) {
    grid-template-columns: 30px minmax(0, 1fr) !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__submenu-toggle, .app-sidebar-module-toggle) {
    box-sizing: border-box !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__submenu-toggle, .app-sidebar-module-toggle):not(:where([class*=nodal-])) {
    color: #68C4C1 !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__submenu-toggle, .app-sidebar-module-toggle):not(:where([class*=nodal-])) {
    color: #15706B !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__submenu-toggle, .app-sidebar-module-toggle):not(:where([class*=nodal-])):is(:hover, :focus-visible) {
    color: #ffffff !important;
    background: #15706B !important;
    outline: none !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__submenu-toggle, .app-sidebar-module-toggle) svg {
    width: 19px !important;
    height: 19px !important;
    fill: none !important;
    stroke: currentColor !important;
    transition: transform 140ms ease !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__submenu-toggle, .app-sidebar-module-toggle)[aria-expanded=true] svg {
    transform: rotate(180deg) !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__submenu, .app-sidebar-module-submenu) {
    box-sizing: border-box !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 2px 5px 5px 40px !important;
    padding: 3px 0 3px 6px !important;
    display: grid !important;
    gap: 1px !important;
    overflow: visible !important;
    border: 0 !important;
    border-left: 1px solid #68C4C1 !important;
    background: transparent !important;
  }
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__submenu, .app-sidebar-module-submenu) {
    border-left-color: #15706B !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__submenu, .app-sidebar-module-submenu)[hidden] {
    display: none !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__submenu, .app-sidebar-module-submenu) :is(.inside-responsive-drawer__row, .app-sidebar-link) {
    min-height: 36px !important;
    padding-block: 6px !important;
    grid-template-columns: minmax(0, 1fr) !important;
    font-size: var(--inside-drawer-font-submenu) !important;
    line-height: 1.35 !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .app-sidebar-home {
    width: auto !important;
    margin: 0 0 8px !important;
    color: #ffffff !important;
    background: #15706B !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .app-sidebar-company {
    box-sizing: border-box !important;
    width: 100% !important;
    margin: 0 0 10px !important;
    padding: 10px 12px !important;
    display: grid !important;
    gap: 5px !important;
    color: inherit !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-radius: 10px !important;
    background: rgba(31, 37, 39, 0.09) !important;
  }
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .app-sidebar-company {
    border-color: rgba(31, 37, 39, 0.12) !important;
    background: rgba(255, 255, 255, 0.74) !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .app-sidebar-nav-group-label {
    position: relative !important;
    min-height: 24px !important;
    margin: 2px 4px 3px !important;
    padding: 7px 4px 3px !important;
    display: flex !important;
    align-items: center !important;
    color: #68C4C1 !important;
    border: 0 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
    background: transparent !important;
    font: 800 var(--inside-drawer-font-group)/1.35 "Inter", sans-serif !important;
    letter-spacing: 0.13em !important;
    text-transform: uppercase !important;
  }
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .app-sidebar-nav-group-label {
    color: #15706B !important;
    border-top-color: rgba(31, 37, 39, 0.12) !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__footer {
    position: relative !important;
    z-index: 2 !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 10px var(--inside-drawer-inline) max(10px, env(safe-area-inset-bottom)) !important;
    display: block !important;
    color: inherit !important;
    border: 0 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.14) !important;
    background: rgba(31, 37, 39, 0.12) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 -1px 0 rgba(31, 37, 39, 0.22) !important;
  }
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__footer {
    border-top-color: rgba(31, 37, 39, 0.12) !important;
    background: rgba(255, 255, 255, 0.72) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 -1px 0 rgba(31, 37, 39, 0.08) !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__footer[hidden] {
    display: none !important;
  }
  html body #insideAppSidebar.inside-responsive-drawer--authenticated .inside-responsive-drawer__footer {
    display: none !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__cta {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 8px 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    color: #ffffff !important;
    border: 1px solid #68C4C1 !important;
    border-radius: 9px !important;
    background: #15706B !important;
    box-shadow: 0 3px 8px rgba(31, 37, 39, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.14) !important;
    font: 800 var(--inside-drawer-font-primary)/1.3 "Inter", sans-serif !important;
    text-decoration: none !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__cta svg {
    width: 19px !important;
    height: 19px !important;
    flex: 0 0 19px !important;
    fill: none !important;
    stroke: currentColor !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__close, .inside-responsive-drawer__cta,
  .inside-responsive-drawer__row, .app-sidebar-link,
  .inside-responsive-drawer__submenu-toggle, .app-sidebar-module-toggle):not(:where([class*=nodal-])):focus-visible {
    outline: 2px solid #68C4C1 !important;
    outline-offset: 1px !important;
  }
  html body.theme-light :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__close, .inside-responsive-drawer__cta,
  .inside-responsive-drawer__row, .app-sidebar-link,
  .inside-responsive-drawer__submenu-toggle, .app-sidebar-module-toggle):not(:where([class*=nodal-])):focus-visible {
    outline-color: #15706B !important;
  }
  html body .inside-responsive-drawer-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 12090 !important;
    box-sizing: border-box !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    display: block !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: rgba(31, 37, 39, 0.42) !important;
    opacity: 1 !important;
    box-shadow: none !important;
    filter: none !important;
    backdrop-filter: none !important;
    cursor: pointer !important;
    touch-action: manipulation;
  }
  html body.inside-app-body button.inside-responsive-drawer-backdrop.app-sidebar-mobile-backdrop[data-inside-responsive-drawer-backdrop] {
    background: rgba(31, 37, 39, 0.42) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  html body .inside-responsive-drawer-backdrop[hidden] {
    display: none !important;
  }
  html body .site-header .site-desktop-navigation {
    display: none !important;
  }
  html body .site-header,
  html body.theme-light .site-header {
    z-index: 10060 !important;
    min-height: 56px !important;
    border-bottom: 1px solid #68C4C1 !important;
    background: var(--inside-surface-page, #1f2527) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  html body.theme-light .site-header {
    border-bottom-color: #d9e0e2 !important;
    background: #ffffff !important;
  }
  html body .site-header .header-inner {
    width: 100% !important;
    min-height: 56px !important;
    padding: 6px 12px !important;
    display: grid !important;
    grid-template-columns: 44px minmax(0, 1fr) 44px !important;
    align-items: center !important;
    gap: 8px !important;
  }
  html body .site-header .site-mobile-navigation-toggle,
  html body .site-header .site-public-preferences {
    display: block !important;
  }
  html body .site-header .site-mobile-navigation-toggle {
    grid-column: 1 !important;
  }
  html body .site-header .logo {
    grid-column: 2 !important;
    justify-self: center !important;
    width: min(132px, 100%) !important;
    min-width: 0 !important;
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: visible !important;
  }
  html body .site-header .logo img {
    width: 100% !important;
    max-width: 132px !important;
    height: 40px !important;
    object-fit: contain !important;
    object-position: center !important;
    filter: none !important;
  }
  html body .site-header .site-public-preferences {
    grid-column: 3 !important;
    justify-self: end !important;
  }
  html body .site-header :is(.site-mobile-navigation-toggle, .site-public-preferences-toggle) {
    position: relative !important;
    z-index: 10070 !important;
    box-sizing: border-box !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    color: #ffffff !important;
    border: 1px solid #68C4C1 !important;
    border-radius: 10px !important;
    background: var(--inside-surface-page, #1f2527) !important;
    box-shadow: none !important;
    cursor: pointer !important;
    touch-action: manipulation;
  }
  html body.theme-light .site-header :is(.site-mobile-navigation-toggle, .site-public-preferences-toggle) {
    color: #0C3D3A !important;
    border-color: #15706B !important;
    background: #ffffff !important;
  }
  html body .site-header :is(.site-mobile-navigation-toggle, .site-public-preferences-toggle) > * {
    pointer-events: none !important;
  }
  html body .site-header :is(.site-mobile-navigation-toggle, .site-public-preferences-toggle) svg {
    width: 24px !important;
    height: 24px !important;
    color: currentColor !important;
    stroke: currentColor !important;
  }
  html body .site-header .site-public-preferences-toggle svg {
    fill: currentColor !important;
    stroke: none !important;
  }
  html body .site-public-preferences-menu {
    position: absolute !important;
    z-index: 10074 !important;
    top: calc(100% + 8px) !important;
    right: 0 !important;
    box-sizing: border-box !important;
    width: min(304px, 100vw - 24px) !important;
    max-height: calc(100dvh - 72px - env(safe-area-inset-bottom)) !important;
    padding: 8px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    color: #ffffff !important;
    border: 1px solid #68C4C1 !important;
    border-radius: 12px !important;
    background: var(--inside-surface-page, #1f2527) !important;
    box-shadow: 0 12px 24px rgba(31, 37, 39, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
  }
  html body .site-public-preferences-menu[hidden] {
    display: none !important;
  }
  html body.theme-light .site-public-preferences-menu {
    color: #0C3D3A !important;
    border-color: #15706B !important;
    background: #ffffff !important;
    box-shadow: 0 12px 24px rgba(31, 37, 39, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
  }
  html body .site-public-preferences-title {
    margin: 0 !important;
    padding: 4px 6px 7px !important;
    color: inherit !important;
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.12em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
  }
  html body:not(.theme-light) .site-public-preferences-title {
    color: #ffffff !important;
  }
  html body.theme-light .site-public-preferences-title {
    color: #0C3D3A !important;
  }
  html body .site-public-preference-slot {
    min-width: 0 !important;
    display: grid !important;
  }
  html body .site-public-preference-slot + .site-public-preference-slot {
    margin-top: 6px !important;
  }
  html body .site-public-preference-slot > :is(.theme-toggle, .language-float) {
    position: static !important;
    inset: auto !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 7px 10px !important;
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    align-items: center !important;
    justify-content: stretch !important;
    gap: 10px !important;
    transform: none !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #ffffff !important;
    border: 1px solid #15706B !important;
    border-radius: 9px !important;
    background: var(--inside-surface-page, #1f2527) !important;
    box-shadow: none !important;
    text-align: left !important;
    text-decoration: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    touch-action: manipulation;
  }
  html body.theme-light .site-public-preference-slot > :is(.theme-toggle, .language-float) {
    color: #0C3D3A !important;
    border-color: #d9e0e2 !important;
    background: #ffffff !important;
  }
  html body .site-public-preference-slot :is(.theme-toggle-icon, .language-preference-icon) {
    width: 24px !important;
    height: 24px !important;
    display: grid !important;
    place-items: center !important;
    color: currentColor !important;
  }
  html body .site-public-preference-slot :is(.theme-toggle-copy, .language-float-copy) {
    min-width: 0 !important;
    display: grid !important;
    gap: 3px !important;
    color: inherit !important;
    line-height: 1.1 !important;
  }
  html body .site-public-preference-slot :is(.theme-toggle-preference-label, .language-float-copy strong) {
    display: block !important;
    color: inherit !important;
    font-size: 0.8rem !important;
    font-weight: 800 !important;
  }
  html body .site-public-preference-slot :is(.theme-toggle-text, .language-float-copy small) {
    display: block !important;
    color: inherit !important;
    font-size: 0.7rem !important;
    font-weight: 600 !important;
    opacity: 0.76 !important;
  }
  html body .site-public-preference-slot .language-flag {
    display: none !important;
  }
}
@media (max-width: 1180px) and (max-height: 520px) {
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__header {
    min-height: 56px !important;
    padding-top: max(6px, env(safe-area-inset-top)) !important;
    padding-bottom: 6px !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__navigation {
    padding-block: 8px !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__footer {
    padding-top: 8px !important;
    padding-bottom: max(8px, env(safe-area-inset-bottom)) !important;
  }
}
/* =========================================================
   INSIDE | ESCALA TIPOGRAFICA DEL DRAWER TABLET V171
   Una sola capa del shell universal; no altera smartphone ni desktop.
   ========================================================= */
@media (min-width: 768px) and (max-width: 1180px) {
  html body {
    --inside-drawer-row-height: 50px;
    --inside-drawer-font-primary: 16px;
    --inside-drawer-font-tool: 15px;
    --inside-drawer-font-submenu: 14px;
    --inside-drawer-font-group: 12.5px;
    --inside-drawer-font-company-label: 12.5px;
    --inside-drawer-font-company-name: 16px;
    --inside-drawer-icon-size: 20px;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__row, .app-sidebar-link) {
    min-height: var(--inside-drawer-row-height) !important;
    font-size: var(--inside-drawer-font-primary) !important;
    line-height: 1.35 !important;
  }
  html body #insideAppSidebar.inside-responsive-drawer .app-sidebar-tools-nav--standard .app-sidebar-link {
    font-size: var(--inside-drawer-font-tool) !important;
    line-height: 1.35 !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__label, .app-sidebar-link-text) {
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__submenu, .app-sidebar-module-submenu) :is(.inside-responsive-drawer__row, .app-sidebar-link) {
    min-height: 46px !important;
    font-size: var(--inside-drawer-font-submenu) !important;
    line-height: 1.4 !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .app-sidebar-nav-group-label {
    min-height: 28px !important;
    font-size: var(--inside-drawer-font-group) !important;
    line-height: 1.35 !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .app-sidebar-company > label {
    font: 800 var(--inside-drawer-font-company-label)/1.35 "Inter", sans-serif !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .app-sidebar-company-current {
    font: 750 var(--inside-drawer-font-company-name)/1.35 "Inter", sans-serif !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__icon, .app-sidebar-link-icon) {
    width: 32px !important;
    min-width: 32px !important;
    height: 32px !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__row, .app-sidebar-link),
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer :is(.inside-responsive-drawer__module-row, .app-sidebar-tool-row).has-toggle > :is(.inside-responsive-drawer__row, .app-sidebar-link) {
    grid-template-columns: 32px minmax(0, 1fr) !important;
  }
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer .inside-responsive-drawer__cta {
    min-height: 50px !important;
    font-size: 15px !important;
    line-height: 1.3 !important;
  }
}
@media (max-width: 1180px) {
  html body #insideAppSidebar.inside-responsive-drawer .app-sidebar-module-toggle svg,
  html body #siteMobileNavigation.inside-responsive-drawer .inside-responsive-drawer__submenu-toggle svg {
    width: 20px !important;
    min-width: 20px !important;
    max-width: 20px !important;
    height: 20px !important;
    min-height: 20px !important;
    max-height: 20px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  html body :is(#insideAppSidebar, #siteMobileNavigation).inside-responsive-drawer {
    transition: none !important;
  }
}
/* La BCT de Presupuestos usa dos filas dentro de la misma cabecera en el
   intervalo donde el HUD global se compacta. Debe ir después del HUD V171.
   Solo con la barra puesta (:has): sin ella, los 132 px caían sobre la
   cabecera de antes en todo Presupuestos. */
@media (max-width: 1180px) {
  html body.inside-app-body.inside-budget-module:has(#insideGlobalHeader.inside-bct--with-context) {
    --inside-app-topbar-height: 132px;
    --inside-hud-height: 132px;
  }
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context[data-inside-responsive-hud] {
    width: 100% !important;
    height: 132px !important;
    min-height: 132px !important;
    max-height: 132px !important;
    padding: 8px 10px !important;
    grid-template-columns: 44px 94px minmax(0, 1fr) 44px !important;
    grid-template-rows: 48px 62px !important;
    gap: 6px 8px !important;
  }
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context > .inside-mobile-navigation-toggle {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context > .budget-product-topbar-brand {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 94px !important;
    min-width: 94px !important;
    max-width: 94px !important;
    height: 48px !important;
    min-height: 48px !important;
  }
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context > .budget-product-topbar-left {
    grid-column: 3 !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 0 !important;
    display: grid !important;
    align-content: center !important;
    gap: 3px !important;
    overflow: hidden !important;
  }
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context > .budget-product-topbar-actions {
    position: relative !important;
    inset: auto !important;
    grid-column: 1/-1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 62px !important;
    min-height: 62px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    place-items: stretch !important;
    overflow: visible !important;
  }
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context .inside-bct-context {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 36px !important;
  }
  html body.inside-app-body.inside-budget-module #insideGlobalHeader.inside-bct--with-context > .budget-product-topbar-actions > .budget-product-user-menu {
    position: fixed !important;
    inset: 10px 10px auto auto !important;
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
  }
}

/*# sourceMappingURL=inside-command-center-allowlist.css.map */
