/* Diseño compartido de CRONOS, extraído del dashboard de Resultados. */
.cronos-ui {
    --ui-fondo: #f3f5f7;
    --ui-cabecera: #17324d;
    --ui-panel: #fff;
    --ui-superficie: #eef5f8;
    --ui-texto: #17202a;
    --ui-secundario: #536471;
    --ui-borde: #dce2e6;
    --ui-borde-control: #b8c2c9;
    --ui-accion: #176b87;
    --ui-accion-texto: #176b87;
    --ui-boton-secundario: #45647c;
    --ui-boton-hover: #e8eff5;
    --ui-inactivo: #e3e7eb;
    --ui-inactivo-texto: #687783;
    --ui-foco: #176b87;
    --ui-error: #b42318;
    --ui-aviso: #e2b33c;
    --ui-radio: 10px;
    --ui-radio-control: 6px;
    --ui-sombra: 0 2px 8px #00000012;
    --ui-espacio: 12px;
    --ui-bloque: 18px;
    margin: 0; background: var(--ui-fondo); color: var(--ui-texto);
    font: 16px/1.5 Arial, sans-serif;
}
:where(.cronos-ui, .cronos-ui *) { box-sizing: border-box; }
:where(.cronos-ui) a { color: var(--ui-foco); }
:where(.cronos-ui) h2 { margin: 0 0 var(--ui-espacio); font-size: 1.15rem; }
:where(.cronos-ui) :is(h2, h3, p) { overflow-wrap: anywhere; }
:where(.cronos-ui) :where(input, select, textarea, button, a.ui-button) {
    font: inherit; color: inherit; min-height: 44px; max-width: 100%;
    padding: 8px 12px; border: 1px solid var(--ui-borde-control);
    border-radius: var(--ui-radio-control); background: var(--ui-panel);
}
:where(.cronos-ui) :where(button, a.ui-button) { cursor: pointer; background: var(--ui-panel); color: var(--ui-accion-texto); border: 1px solid var(--ui-accion); border-radius: 999px; padding: 5px 12px; font-weight: 600; }
:where(.cronos-ui) .ui-button { display: inline-flex; align-items: center; text-decoration: none; }
:where(.cronos-ui) input[type="checkbox"] { min-height: 0; padding: 0; }
:where(.cronos-ui) :is(button, a.ui-button).ui-secondary { color: var(--ui-boton-secundario); border-color: var(--ui-boton-secundario); }
:where(.cronos-ui) :where(button, a.ui-button):where(:hover:not(:disabled)) { background: var(--ui-boton-hover); }
:where(.cronos-ui) :is(button, a.ui-button):disabled { background: var(--ui-inactivo); color: var(--ui-inactivo-texto); border-color: var(--ui-borde-control); opacity: 1; cursor: not-allowed; }
:where(.cronos-ui) :focus-visible { outline: 3px solid var(--ui-foco); outline-offset: 3px; }
:where(.cronos-ui) .ui-panel { min-width: 0; padding: var(--ui-bloque); margin-bottom: var(--ui-bloque); background: var(--ui-panel); border: 1px solid var(--ui-borde); border-radius: var(--ui-radio); box-shadow: var(--ui-sombra); }
:where(.cronos-ui) :is(.error, .errorlist, .error-campo) { color: var(--ui-error); }
:where(.cronos-ui) .aviso { border-left: 4px solid var(--ui-aviso); padding-left: var(--ui-espacio); }
:where(.cronos-ui) .nota { color: var(--ui-secundario); font-size: .9rem; }
:where(.cronos-ui) .ui-table { border-collapse: collapse; width: 100%; font-size: .9rem; }
:where(.cronos-ui .ui-table) :is(th, td) { padding: 4px 8px; border-bottom: 1px solid var(--ui-borde); text-align: left; vertical-align: top; }
:where(.cronos-ui .ui-table) th { background: var(--ui-superficie); }
:where(.cronos-ui) .ui-header { min-height: 88px; padding: 10px 24px; display: grid; align-content: center; gap: 2px; background: #FFFFFF; color: #19344D; border-bottom: 1px solid #DCE4EB; }
:where(.cronos-ui) .ui-header__fila { display: flex; flex-wrap: wrap; align-items: center; gap: var(--ui-espacio); min-width: 0; }
:where(.cronos-ui) .ui-header__titulo { flex: 1 1 200px; min-width: 0; margin: 0; font-size: 24px; line-height: 1.25; overflow-wrap: anywhere; }
:where(.cronos-ui) .ui-header__contexto { margin: 0; font-size: 14px; line-height: 1.5; color: #526477; overflow-wrap: anywhere; }
:where(.cronos-ui) .ui-header--con-vuelta .ui-header__contexto { margin-left: 52px; }
:where(.cronos-ui) .ui-header__acciones { display: flex; flex-wrap: wrap; gap: 8px; flex: 0 1 auto; min-width: 0; max-width: 100%; margin-left: auto; }
:where(.cronos-ui) .ui-header__acciones form { margin: 0; min-width: 0; max-width: 100%; }
:where(.cronos-ui) .ui-header :is(button, a.ui-button) { white-space: normal; overflow-wrap: anywhere; }
:where(.cronos-ui) .ui-header :is(button, a.ui-button):hover:not(:disabled) { border-color: #19344D; }
:where(.cronos-ui) .ui-header button:disabled { background: var(--ui-inactivo); color: var(--ui-inactivo-texto); border-color: var(--ui-borde-control); opacity: 1; cursor: not-allowed; }
:where(.cronos-ui) .ui-header .ui-back { display: inline-flex; flex: 0 0 40px; align-items: center; justify-content: center; width: 40px; height: 40px; color: #19344D; border: 1px solid #DCE4EB; border-radius: var(--ui-radio-control); }
:where(.cronos-ui) .ui-header .ui-back svg { width: 24px; height: 24px; }
:where(.cronos-ui) .ui-header .ui-back:hover { background: #F3F5F7; }
:where(.cronos-ui) .ui-header :focus-visible { outline: 3px solid #19344D; outline-offset: 3px; }
:where(.cronos-ui) .ui-header__logo { display: block; max-height: 44px; max-width: min(160px, 100%); width: auto; height: auto; object-fit: contain; flex: 0 1 auto; }
@media (max-width: 600px) {
    :where(.cronos-ui) .ui-header { padding: 10px 14px; }
    :where(.cronos-ui) .ui-header__titulo { flex-basis: 100%; }
    :where(.cronos-ui) .ui-header--con-vuelta .ui-header__titulo { flex-basis: calc(100% - 52px); }
}
@media print {
    .cronos-ui { background: white; color: #111; }
    :where(.cronos-ui) .ui-header { min-height: 0; padding: 0; margin-bottom: 8px; display: block; break-inside: avoid; }
    :where(.cronos-ui) .ui-header__fila { display: flex; }
    :where(.cronos-ui) :is(.ui-back, .ui-header__acciones) { display: none; }
    :where(.cronos-ui) .ui-header__titulo { font-size: 14pt; overflow: visible; white-space: normal; flex-basis: 200px; }
    :where(.cronos-ui) .ui-header--con-vuelta .ui-header__contexto { margin-left: 0; }
    :where(.cronos-ui) .ui-header__contexto { font-size: 10pt; }
    :where(.cronos-ui) .ui-panel { box-shadow: none; background: white; }
    :where(.cronos-ui) .ui-table thead { display: table-header-group; }
}
