@import url("https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700&family=Manrope:wght@300;400;500;600;700&display=swap");
/* ==========================================================================
   Manual de marca SIGA (Design System Paraná) aplicado al Portal Productores — SÓLO QA
   Capa visual pura: colores, tipografía, radios, sombras. NO altera tamaños, visibilidad,
   orden ni comportamiento de ningún componente. Para revertir: quitar el <link> de index.html.
   Fuente de tokens: art-nm-core/ui/src/shared/tokens.css + ui/src/v1/theme.css (SIGA).
   ========================================================================== */
:root {
  --sg-navy-deep:#071A30; --sg-navy:#0A2440; --sg-navy-2:#0E2E52; --sg-ink:#0B1C2F;
  --sg-blue:#1d2ad7; --sg-blue-h:#1722b0; /* = SIGA Parametrización › Color primario vigente (token base del manual: #2F80D6) */ --sg-blue-bright:#469CF2; --sg-sky:#76AFE6;
  --sg-green:#1E9E8A; --sg-amber:#C8803A; --sg-red:#B23A48;
  --sg-paper:#FFFFFF; --sg-mist:#F4F7FB; --sg-mist-2:#EAF1F9; --sg-line:#E2E9F1;
  --sg-muted:#5C6B7E; --sg-muted-light:#9DB0C4;
  --sg-font-d:"Archivo","Manrope",system-ui,sans-serif;
  --sg-font-b:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  --sg-radius:14px; --sg-radius-sm:10px;
  --sg-shadow:0 1px 2px rgba(10,36,64,.04),0 8px 24px -12px rgba(10,36,64,.12);
}

/* ---------- Tipografía global ---------- */
html body, body #root, body #root *:not(.anticon):not(code):not(pre), body [class*="ant-"]:not(.anticon), body button, body input, body textarea, body select, body label {
  font-family: var(--sg-font-b) !important;
}
body h1, body h2, body h3, body h4, body h5,
body .ant-typography h1, body .ant-typography h2, body .ant-typography h3, body .ant-typography h4, body .ant-typography h5,
body h1.ant-typography, body h2.ant-typography, body h3.ant-typography, body h4.ant-typography, body h5.ant-typography,
body .ant-modal-title, body .ant-card-head-title, body .ant-drawer-title {
  font-family: var(--sg-font-d) !important; color: var(--sg-ink); letter-spacing: -.2px;
}
body { color: var(--sg-ink); -webkit-font-smoothing: antialiased; }
body .anticon { font-family: anticon !important; }

/* ---------- Fondo de trabajo ---------- */
body, body .ant-layout, body .ant-layout-content { background: var(--sg-mist) !important; }

/* ---------- Barra lateral (navy SIGA) ---------- */
body .ant-layout-sider, body .ant-layout-sider-light {
  background: linear-gradient(180deg, var(--sg-navy) 0%, var(--sg-navy-deep) 100%) !important;
  box-shadow: none !important;
}
body .ant-layout-sider .ant-menu, body .ant-layout-sider .ant-menu-light, body .ant-layout-sider .ant-menu-sub {
  background: transparent !important; color: #DCE7F4 !important; border-inline-end: 0 !important;
}
body .ant-layout-sider .ant-menu-item, body .ant-layout-sider .ant-menu-submenu-title {
  color: #DCE7F4 !important; border-radius: var(--sg-radius-sm) !important;
}
body .ant-layout-sider .ant-menu-item .anticon, body .ant-layout-sider .ant-menu-submenu-title .anticon,
body .ant-layout-sider .ant-menu-item svg, body .ant-layout-sider .ant-menu-submenu-title svg,
body .ant-layout-sider .ant-menu-submenu-arrow { color: #DCE7F4 !important; }
body .ant-layout-sider .ant-menu-item:hover, body .ant-layout-sider .ant-menu-submenu-title:hover {
  background: rgba(118,175,230,.10) !important; color: #fff !important;
}
body .ant-layout-sider .ant-menu-item-selected, body .ant-layout-sider .ant-menu-submenu-selected > .ant-menu-submenu-title {
  background: rgba(70,156,242,.18) !important; color: #fff !important; box-shadow: inset 3px 0 0 var(--sg-blue-bright);
}
body .ant-layout-sider .ant-menu-item-selected .anticon, body .ant-layout-sider .ant-menu-item-selected svg { color:#fff !important; }
body .ant-layout-sider-trigger {
  background: rgba(255,255,255,.05) !important; color: #C5D4E6 !important;
  border-top: 1px solid rgba(255,255,255,.08);
}
body .ant-layout-sider-trigger:hover { background: rgba(118,175,230,.14) !important; color:#fff !important; }
/* Íconos que son <img> SVG navy (no toman currentColor) → claros sobre navy */
body .ant-layout-sider .ant-menu-item-icon > img, body .ant-layout-sider .anticon > img { filter: brightness(0) invert(.87); }
body .ant-layout-sider .ant-menu-item-selected .ant-menu-item-icon > img { filter: brightness(0) invert(1); }
/* Nombre del usuario en la cabecera del sider (texto oscuro por defecto) */
body .ant-layout-sider .ant-typography { color: #fff !important; font-family: var(--sg-font-d) !important; font-weight: 600; }
/* Logo navy del portal → blanco sobre navy (regla de marca: ART blanco directo sobre navy) */
body .ant-layout-sider .ant-image img { filter: brightness(0) invert(1); }
/* Menús flotantes del sider colapsado */
body .ant-menu-submenu-popup > .ant-menu, body .ant-menu-submenu-popup .ant-menu-sub {
  background: var(--sg-navy) !important; border-radius: var(--sg-radius-sm) !important;
}
body .ant-menu-submenu-popup .ant-menu-item { color:#DCE7F4 !important; }
body .ant-menu-submenu-popup .ant-menu-item:hover { background: rgba(118,175,230,.14) !important; color:#fff !important; }
body .ant-menu-submenu-popup .ant-menu-item-selected { background: rgba(70,156,242,.22) !important; color:#fff !important; }

/* ---------- Migas / títulos ---------- */
body .ant-breadcrumb, body .ant-breadcrumb a, body .ant-breadcrumb-link { color: var(--sg-muted) !important; }
body .ant-breadcrumb li:last-child, body .ant-breadcrumb li:last-child a { color: var(--sg-ink) !important; font-weight: 600; }

/* ---------- Botones ---------- */
body .ant-btn { border-radius: var(--sg-radius-sm) !important; font-weight: 600; box-shadow: none !important; }
body .ant-btn-primary:not(.ant-btn-dangerous), body .ant-btn-color-primary.ant-btn-variant-solid {
  background: var(--sg-blue) !important; border-color: var(--sg-blue) !important; color:#fff !important;
}
body .ant-btn-primary:not(.ant-btn-dangerous):not(:disabled):hover { background: var(--sg-blue-h) !important; border-color: var(--sg-blue-h) !important; }
body .ant-btn-primary:disabled, body .ant-btn-primary[disabled] { background: var(--sg-mist-2) !important; border-color: var(--sg-line) !important; color: var(--sg-muted-light) !important; }
body .ant-btn-default:not(.ant-btn-dangerous), body .ant-btn-variant-outlined:not(.ant-btn-dangerous) {
  background: var(--sg-paper) !important; border-color: var(--sg-line) !important; color: var(--sg-muted) !important;
}
body .ant-btn-default:not(.ant-btn-dangerous):not(:disabled):hover { background: var(--sg-mist-2) !important; color: var(--sg-ink) !important; border-color: var(--sg-line) !important; }
body .ant-btn-color-primary.ant-btn-variant-outlined { color: var(--sg-blue) !important; border-color: rgba(29,42,215,.40) !important; }
body .ant-btn-color-primary.ant-btn-variant-filled { background: rgba(29,42,215,.08) !important; color: var(--sg-blue) !important; }
body .ant-btn-link, body a { color: var(--sg-blue); }
body .ant-btn-dangerous.ant-btn-primary { background: var(--sg-red) !important; border-color: var(--sg-red) !important; }

/* ---------- Campos ---------- */
body .ant-input, body .ant-input-affix-wrapper, body .ant-input-number, body .ant-picker,
body .ant-select:not(.ant-select-customize-input) .ant-select-selector, body .ant-select-selector {
  border-radius: var(--sg-radius-sm) !important; border-color: var(--sg-line) !important; background-color: var(--sg-paper);
  color: var(--sg-ink);
}
body .ant-input-affix-wrapper > input.ant-input { border-radius: 0 !important; }
body .ant-input:focus, body .ant-input-focused, body .ant-input-affix-wrapper-focused, body .ant-input-affix-wrapper:focus-within,
body .ant-picker-focused, body .ant-select-focused .ant-select-selector, body .ant-input-number-focused {
  border-color: var(--sg-blue) !important; box-shadow: 0 0 0 3px rgba(29,42,215,.14) !important;
}
body .ant-input:hover, body .ant-input-affix-wrapper:hover, body .ant-select:hover .ant-select-selector, body .ant-picker:hover { border-color: var(--sg-sky) !important; }
body .ant-input-group-addon { background: var(--sg-mist-2) !important; border-color: var(--sg-line) !important; color: var(--sg-muted) !important; font-weight: 600; font-size: 12.5px; }
body .ant-input-group > .ant-input-group-addon:first-child { border-radius: var(--sg-radius-sm) 0 0 var(--sg-radius-sm) !important; }
body .ant-input-group > .ant-input:last-child { border-radius: 0 var(--sg-radius-sm) var(--sg-radius-sm) 0 !important; }
body .ant-form-item-label > label { color: var(--sg-ink) !important; font-weight: 600; font-size: 12.5px; }
body .ant-checkbox-checked .ant-checkbox-inner, body .ant-radio-checked .ant-radio-inner, body .ant-switch-checked {
  background-color: var(--sg-blue) !important; border-color: var(--sg-blue) !important;
}
body .ant-select-item-option-selected:not(.ant-select-item-option-disabled) { background: rgba(29,42,215,.08) !important; color: var(--sg-ink) !important; }

/* ---------- Tablas ---------- */
body .ant-table-wrapper .ant-table { background: var(--sg-paper) !important; border: 1px solid var(--sg-line); border-radius: var(--sg-radius) !important; box-shadow: var(--sg-shadow); }
body .ant-table-wrapper .ant-table-container { border-radius: var(--sg-radius) !important; }
body .ant-table-thead > tr > th, body .ant-table-thead > tr > td {
  background: var(--sg-mist) !important; color: var(--sg-muted) !important; font-weight: 600 !important;
  font-size: 11.5px !important; text-transform: uppercase; letter-spacing: .6px; border-bottom: 1px solid var(--sg-line) !important;
}
body .ant-table-thead > tr > th::before { background-color: var(--sg-line) !important; }
body .ant-table-tbody > tr > td { border-bottom: 1px solid var(--sg-line) !important; color: var(--sg-ink); }
body .ant-table-tbody > tr.ant-table-row:hover > td { background: var(--sg-mist) !important; }
body .ant-table-container table > thead > tr:first-child > *:first-child { border-start-start-radius: var(--sg-radius) !important; }
body .ant-table-container table > thead > tr:first-child > *:last-child { border-start-end-radius: var(--sg-radius) !important; }
body .ant-empty-description { color: var(--sg-muted-light) !important; }
body .ant-pagination .ant-pagination-item { border-radius: 8px !important; }
body .ant-pagination .ant-pagination-item-active { border-color: var(--sg-blue) !important; background: rgba(29,42,215,.07) !important; }
body .ant-pagination .ant-pagination-item-active a { color: var(--sg-blue) !important; }

/* ---------- Pestañas ---------- */
body .ant-tabs-card > .ant-tabs-nav .ant-tabs-tab { background: var(--sg-mist-2) !important; border-color: var(--sg-line) !important; border-radius: var(--sg-radius-sm) var(--sg-radius-sm) 0 0 !important; }
body .ant-tabs-card > .ant-tabs-nav .ant-tabs-tab-active { background: var(--sg-paper) !important; }
body .ant-tabs .ant-tabs-tab-active .ant-tabs-tab-btn { color: var(--sg-blue) !important; font-weight: 600; }
body .ant-tabs .ant-tabs-tab:hover .ant-tabs-tab-btn { color: var(--sg-blue-h) !important; }
body .ant-tabs .ant-tabs-ink-bar { background: var(--sg-blue) !important; }
body .ant-tabs > .ant-tabs-nav::before { border-color: var(--sg-line) !important; }

/* ---------- Tarjetas / paneles / modales ---------- */
body .ant-card { border-radius: var(--sg-radius) !important; border: 1px solid var(--sg-line) !important; box-shadow: var(--sg-shadow) !important; background: var(--sg-paper) !important; }
body .ant-card-head { border-bottom-color: var(--sg-line) !important; }
body .ant-modal .ant-modal-content, body .ant-modal-content { border-radius: var(--sg-radius) !important; }
body .ant-collapse { border-radius: var(--sg-radius) !important; border-color: var(--sg-line) !important; background: var(--sg-paper) !important; }
body .ant-collapse > .ant-collapse-item { border-color: var(--sg-line) !important; }
body .ant-steps .ant-steps-item-process .ant-steps-item-icon { background: var(--sg-blue) !important; border-color: var(--sg-blue) !important; }
body .ant-steps .ant-steps-item-finish .ant-steps-item-icon { border-color: var(--sg-blue) !important; }
body .ant-steps .ant-steps-item-finish .ant-steps-item-icon .ant-steps-icon { color: var(--sg-blue) !important; }
body .ant-divider { border-color: var(--sg-line) !important; }

/* ---------- Estados / etiquetas (paleta SIGA) ---------- */
body .ant-tag { border-radius: 999px !important; font-weight: 600; font-size: 11px; }
body .ant-tag-success, body .ant-tag-green { background: rgba(30,158,138,.12) !important; color:#137a6a !important; border-color: transparent !important; }
body .ant-tag-processing, body .ant-tag-blue { background: rgba(47,128,214,.12) !important; color:#1f5fa6 !important; border-color: transparent !important; }
body .ant-tag-warning, body .ant-tag-gold, body .ant-tag-orange { background: rgba(200,128,58,.14) !important; color:#9a5e22 !important; border-color: transparent !important; }
body .ant-tag-error, body .ant-tag-red { background: rgba(178,58,72,.1) !important; color:#9c2f3b !important; border-color: transparent !important; }
body .ant-badge-count { background: var(--sg-red) !important; }
body .ant-message-notice-content, body .ant-notification-notice { border-radius: var(--sg-radius-sm) !important; }
body .ant-spin-dot-item { background-color: var(--sg-blue) !important; }

/* ---------- Colores fijos en línea del portal → paleta SIGA ---------- */
body #root [style*="color: rgb(9, 109, 217)"] { color: var(--sg-blue) !important; }
body #root [style*="border-color: rgb(9, 109, 217)"] { border-color: rgba(29,42,215,.40) !important; }
body #root [style*="color: rgb(0, 47, 94)"] { color: var(--sg-ink) !important; }
body #root [style*="background-color: rgb(0, 47, 94)"], body #root [style*="background: rgb(0, 47, 94)"] { background-color: var(--sg-blue) !important; }
body #root [style*="background-color: rgb(9, 109, 217)"], body #root [style*="background: rgb(9, 109, 217)"] { background-color: var(--sg-blue) !important; }

/* ---------- Restos detectados por escaneo (build 1.8.7.6) ---------- */
body .ant-tabs .ant-tabs-tab.ant-tabs-tab-active { color: var(--sg-blue) !important; }
/* Círculos numerados de pasos del alta (styled-components; clase propia de este build) */
body #root .sc-dPqFhK { background-color: var(--sg-blue) !important; }
/* Franja gris entre tarjetas del alta */
body #root .sc-jcgtOs { background-color: var(--sg-mist) !important; }

/* ---------- Login: fondo blanco como el login de SIGA (el logo trae fondo blanco propio) ---------- */
body:has(input[placeholder="XX-XXXXXXXX-X"]), body:has(input[placeholder="XX-XXXXXXXX-X"]) #root,
body:has(input[placeholder="XX-XXXXXXXX-X"]) #root > * { background: var(--sg-paper) !important; }
/* Paso a paso con puntos */
body .ant-steps .ant-steps-item-process .ant-steps-icon-dot, body .ant-steps .ant-steps-item-finish .ant-steps-icon-dot { background: var(--sg-blue) !important; }
body .ant-steps .ant-steps-item-finish > .ant-steps-item-container > .ant-steps-item-tail::after { background-color: var(--sg-blue) !important; }
/* Tarjetas-acceso con ícono (Grupo / Organizador…): ícono en azul SIGA, tarjeta con radio y borde SIGA */
body #root button:not(.ant-btn):has(> .anticon), body #root button:not(.ant-btn):has(.anticon-team), body #root button:not(.ant-btn):has(.anticon-apartment) {
  color: var(--sg-blue) !important; border-radius: var(--sg-radius) !important; border: 1px solid var(--sg-line) !important; box-shadow: var(--sg-shadow) !important; background: var(--sg-paper) !important;
}
body #root button:not(.ant-btn) .anticon-team, body #root button:not(.ant-btn) .anticon-apartment { color: var(--sg-blue) !important; }
/* Aviso "Estado de cuenta" (rojo salmón) → rojo SIGA */
body #root [style*="color: rgb(242, 108, 118)"] { color: var(--sg-red) !important; }
body #root [style*="rgb(242, 108, 118)"] { border-color: rgba(178,58,72,.45) !important; }
/* Calendario */
body .ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner::before { border-color: var(--sg-blue) !important; }
body .ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner,
body .ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,
body .ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner { background: var(--sg-blue) !important; }
body .ant-picker-range .ant-picker-active-bar { background: var(--sg-blue) !important; }
body .ant-picker-dropdown .ant-picker-panel-container { border-radius: var(--sg-radius) !important; }

/* ==========================================================================
   v2 (24/09) — cobertura de TODAS las subpáginas: cada color escrito en línea en el
   bundle del portal (inventario completo de style:{...}) → equivalente SIGA.
   ========================================================================== */
/* Etiqueta sin color propio → badge neutro SIGA */
body .ant-tag:not([style*="background"]) { background: var(--sg-mist-2) !important; color: var(--sg-muted) !important; border-color: transparent !important; }
/* Estados de cotización / solicitud (Tag con background+color en línea) → badges SIGA */
body #root [style*="background: rgb(240, 245, 255)"], body #root [style*="background-color: rgb(240, 245, 255)"] { background: rgba(47,128,214,.12) !important; border-color: transparent !important; }
body #root [style*="color: rgb(16, 35, 158)"] { color: #1f5fa6 !important; }
body #root [style*="background: rgb(246, 255, 237)"], body #root [style*="background-color: rgb(246, 255, 237)"] { background: rgba(30,158,138,.12) !important; border-color: transparent !important; }
body #root [style*="color: rgb(35, 120, 4)"] { color: #137a6a !important; }
body #root [style*="background: rgb(250, 235, 235)"], body #root [style*="background-color: rgb(250, 235, 235)"],
body #root [style*="background: rgb(255, 241, 240)"], body #root [style*="background-color: rgb(255, 241, 240)"] { background: rgba(178,58,72,.10) !important; border-color: transparent !important; }
body #root [style*="color: rgb(205, 92, 92)"], body #root [style*="color: rgb(207, 19, 34)"], body #root [style*="color: rgb(255, 77, 79)"] { color: #9c2f3b !important; }
/* Ícono de observación / advertencia (naranja) → ámbar SIGA */
body #root [style*="color: rgb(212, 107, 8)"] { color: #98602A !important; }
/* Fondos claros y grises en línea → mist SIGA */
body #root [style*="background-color: rgb(245, 251, 255)"], body #root [style*="background: rgb(245, 251, 255)"],
body #root [style*="background-color: rgb(245, 245, 245)"], body #root [style*="background: rgb(245, 245, 245)"] { background-color: var(--sg-mist) !important; }
body #root [style*="background-color: rgb(230, 241, 250)"], body #root [style*="background: rgb(230, 241, 250)"] { background-color: var(--sg-mist-2) !important; }
/* Azules y navys sueltos en línea */
body #root [style*="color: rgb(44, 128, 219)"] { color: var(--sg-blue) !important; }
body #root [style*="color: rgb(4, 58, 117)"], body #root [style*="color: rgb(0, 51, 102)"] { color: var(--sg-ink) !important; }
/* Grises de texto en línea → muted / ink SIGA */
body #root [style*="color: rgba(0, 0, 0, 0.65)"], body #root [style*="color: rgb(102, 102, 102)"], body #root [style*="color: rgb(115, 115, 116)"] { color: var(--sg-muted) !important; }
body #root [style*="color: rgb(49, 49, 49)"], body #root [style*="color: rgb(43, 43, 43)"], body #root [style*="color: rgba(0, 0, 0, 0.88)"] { color: var(--sg-ink) !important; }
/* Modales / popovers se montan FUERA de #root: mismas reglas para su contenedor */
body .ant-modal-root [style*="color: rgb(9, 109, 217)"], body .ant-popover [style*="color: rgb(9, 109, 217)"] { color: var(--sg-blue) !important; }
body .ant-modal-root [style*="color: rgb(0, 47, 94)"], body .ant-popover [style*="color: rgb(0, 47, 94)"] { color: var(--sg-ink) !important; }
body .ant-modal-root [style*="background: rgb(240, 245, 255)"] { background: rgba(47,128,214,.12) !important; }
body .ant-modal-root [style*="color: rgb(16, 35, 158)"] { color: #1f5fa6 !important; }
body .ant-modal-root [style*="color: rgb(212, 107, 8)"] { color: #98602A !important; }

/* ==========================================================================
   v3 (24/09) — panel izquierdo idéntico a SIGA (.v1-side / .v1-nav-item medidos en vivo)
   ========================================================================== */
/* Anchos: SIGA 264 px expandido / 76 px colapsado (antd trae 280 / 80 en línea) */
body .ant-layout-sider:not(.ant-layout-sider-collapsed) { flex: 0 0 264px !important; max-width: 264px !important; min-width: 264px !important; width: 264px !important; }
body .ant-layout-sider.ant-layout-sider-collapsed { flex: 0 0 76px !important; max-width: 76px !important; min-width: 76px !important; width: 76px !important; }
/* Botón colapsar: sin franja ni borde (en SIGA no hay barra inferior) */
body .ant-layout-sider-trigger { background: transparent !important; border-top: 0 !important; color: #C5D4E6 !important; }
body .ant-layout-sider-trigger:hover { background: rgba(118,175,230,.10) !important; color: #fff !important; }
/* Ítems: tipografía, color, margen y radio de .v1-nav-item */
body .ant-layout-sider .ant-menu-item, body .ant-layout-sider .ant-menu-submenu-title {
  font-size: 14px !important; font-weight: 500 !important; color: #C5D4E6 !important;
}
body .ant-layout-sider:not(.ant-layout-sider-collapsed) .ant-menu-inline > .ant-menu-item,
body .ant-layout-sider:not(.ant-layout-sider-collapsed) .ant-menu-inline > .ant-menu-submenu > .ant-menu-submenu-title {
  margin-inline: 16px !important; width: calc(100% - 32px) !important;
}
body .ant-layout-sider .ant-menu-sub .ant-menu-item { font-size: 13.5px !important; color: #C5D4E6 !important; }
body .ant-layout-sider .ant-menu-item .anticon, body .ant-layout-sider .ant-menu-submenu-title .anticon,
body .ant-layout-sider .ant-menu-item svg, body .ant-layout-sider .ant-menu-submenu-title svg,
body .ant-layout-sider .ant-menu-submenu-arrow { color: #C5D4E6 !important; }
body .ant-layout-sider .ant-menu-item-icon, body .ant-layout-sider .ant-menu-item .anticon, body .ant-layout-sider .ant-menu-submenu-title .anticon { font-size: 15px !important; }
body .ant-layout-sider .ant-menu-item-icon > img { width: 16px !important; height: 16px !important; }
body .ant-layout-sider .ant-menu-item-selected, body .ant-layout-sider .ant-menu-item-selected .anticon { color: #fff !important; }
/* Nombre del usuario = tipografía de marca de SIGA (.v1-brand h1) */
body .ant-layout-sider .ant-typography { font-size: 16px !important; font-weight: 700 !important; letter-spacing: .2px; }
/* Títulos en Archivo (la regla tipográfica global tiene especificidad de id: se iguala con #root) */
body #root h1, body #root h2, body #root h3, body #root h4, body #root h5,
body #root .ant-typography h1, body #root .ant-typography h2, body #root .ant-typography h3, body #root .ant-typography h4, body #root .ant-typography h5,
body #root .ant-layout-sider .ant-typography, body .ant-modal-title, body .ant-card-head-title { font-family: var(--sg-font-d) !important; }
/* Ritmo vertical de ítems igual a SIGA: 43 px + 3 px */
body .ant-layout-sider .ant-menu-root > .ant-menu-item, body .ant-layout-sider .ant-menu-root > .ant-menu-submenu > .ant-menu-submenu-title {
  height: 43px !important; line-height: 43px !important; margin-block: 1.5px !important;
}

/* ==========================================================================
   v4 (24/09) — logo y botón colapsar como SIGA (.v1-brand / .v1-side-colapsar medidos en vivo)
   ========================================================================== */
/* El sider ya no reserva 48 px abajo para el botón (el botón pasa arriba) */
body .ant-layout-sider.ant-layout-sider-has-trigger { padding-bottom: 0 !important; }
/* Fila de marca: logo + nombre (.v1-brand) y, debajo, el lugar del botón colapsar */
body .ant-layout-sider-children > .ant-flex > div:first-child > .ant-flex:first-child { height: 135px !important; align-items: flex-start !important; }
body .ant-layout-sider-collapsed .ant-layout-sider-children > .ant-flex > div:first-child > .ant-flex:first-child { height: 127px !important; }
body .ant-layout-sider-children > .ant-flex > div:first-child > .ant-flex:first-child > div:first-child { padding: 28px 0 0 24px !important; flex: 0 0 auto !important; }
body .ant-layout-sider-collapsed .ant-layout-sider-children > .ant-flex > div:first-child > .ant-flex:first-child > div:first-child { padding: 26px 0 0 13px !important; }
/* Logo: el mismo archivo que usa SIGA (logo ART blanco horizontal, 50×34). La imagen original queda
   en su lugar, transparente (no se quita ni se oculta del árbol: conserva cualquier clic) */
body .ant-layout-sider .ant-image { width: 50px !important; height: 34px !important;
  background: url("/marca-siga-logo-art.png?v=20260924") center / contain no-repeat !important;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,.35)); }
body .ant-layout-sider .ant-image img { opacity: 0 !important; filter: none !important; }
/* Nombre del usuario en el lugar del título de SIGA */
body #root .ant-layout-sider .ant-typography { margin-top: 26px !important; margin-left: 12px !important; line-height: 1.25 !important; font-size: 16px !important; }
/* Botón colapsar: arriba, como "« Achicar menú" de SIGA */
body .ant-layout-sider:not(.ant-layout-sider-collapsed) .ant-layout-sider-trigger, body .ant-layout-sider .ant-layout-sider-trigger {
  position: absolute !important; top: 88px !important; bottom: auto !important; left: 16px !important; width: 232px !important;
  height: 39px !important; line-height: normal !important; box-sizing: border-box !important;
  display: flex !important; align-items: center !important; justify-content: flex-start !important; gap: 11px !important; padding: 8px 12px !important;
  border: 1px solid rgba(255,255,255,.14) !important; border-radius: 10px !important; background: rgba(255,255,255,.05) !important;
  color: #C5D4E6 !important; font-size: 12.5px !important; font-weight: 400 !important; transition: background .12s, color .12s;
}
body .ant-layout-sider .ant-layout-sider-trigger:hover { background: rgba(118,175,230,.14) !important; color: #fff !important; }
body .ant-layout-sider .ant-layout-sider-trigger .anticon { display: none !important; }
body .ant-layout-sider .ant-layout-sider-trigger::before { content: "\00AB"; font-size: 15px; width: 18px; text-align: center; }
body .ant-layout-sider .ant-layout-sider-trigger::after { content: "Achicar menú"; }
body .ant-layout-sider.ant-layout-sider-collapsed .ant-layout-sider-trigger { top: 80px !important; left: 10px !important; width: 56px !important; padding: 8px 0 !important; justify-content: center !important; gap: 0 !important; }
body .ant-layout-sider.ant-layout-sider-collapsed .ant-layout-sider-trigger::before { content: "\00BB"; }
body .ant-layout-sider.ant-layout-sider-collapsed .ant-layout-sider-trigger::after { content: none; }

/* v5 (24/09) — título "Portal Productores" en lugar del nombre del usuario (como "SIGA" en .v1-brand h1).
   El texto original queda en el DOM (sin tamaño visible); sólo cambia lo que se ve. */
body #root .ant-layout-sider .ant-typography { font-size: 0 !important; line-height: 0 !important; color: transparent !important; white-space: nowrap !important; }
body #root .ant-layout-sider .ant-typography::before {
  content: "Portal Productores"; display: block; font-family: var(--sg-font-d); font-size: 18px; font-weight: 700;
  line-height: 22px; letter-spacing: .3px; color: #fff;
}
