/*
 * soc.css — único CSS global/custom (index.html).
 * Cada componente: .razor + .razor.cs + .razor.css; estilos locales en ese .razor.css.
 */

:root {
    /* Manual de identidad SOC - Colores primarios */
    --color-primario: #006D4E;
    --color-verdeClaro: #4ED176;
    /*
     * PROPUESTA UI monocromática (Puntuación de metas + Bitácora + modales metas).
     * Un solo acento #4ED176; texto sobre relleno con buen contraste.
     * Revertir: poner --soc-propuesta-mono-accent: #11a579; o quitar estas dos líneas y restaurar refs en componentes.
     */
    --soc-propuesta-mono-accent: var(--color-primario);
    --soc-propuesta-mono-on-accent: #ffffff;
    /* Colores secundarios */
    --color-azulProfundo: #079DEF;
    --color-azulClaro: #52DEFF;
    --color-azulTerminacionBroker: #00C8FF;
    --color-naranjaSoc: #FF7150;
    --color-rosaClaro: #FF9FCF;
    --color-rosaMedio: #FF9C9C;
    --color-rosaSuave: #FFBDDE;
    /* Compatibilidad con estilos existentes */
    --color-verdeSecundario: #0fac78;
    /* Botones (definitivo #0fac78) */
    --btn-success-bg: var(--color-verdeSecundario);
    --btn-success-border: var(--color-verdeSecundario);
    --btn-success-hover-bg: #008f68;
    --btn-success-hover-border: #008f68;
    --btn-success-focus-ring: rgba(15, 172, 120, 0.38);
    --color-secundario: #95cd51;
    --color-rosaSoc: #f08cb9;
    --color-azulSoc: #4ac1ec;
    --color-azulSocSecundario: #3aa6ff;
    --colorRojoSoc: #ff4f4f;
    --highdmin-nav-link-hover-color: #0fac78 !important;
    /* Títulos de pantalla / sección homologados (mismo color y tamaño en todo el sistema) */
    --soc-title-text: #515151;
    --soc-title-size: 1.1rem;
    /* Buscadores riesgo potencial (bróker + acreditado por pedido) — título principal */
    --potential-risk-module-title-color: #1E6B5A;
    /* Esquinas de botones SOC (Telerik .k-button, .btn-aceptar, etc.) */
    --soc-button-radius: 5px;
    --soc-grid-icon-btn-size: 36px;
}

/* =========================================================
   Títulos de página / sección / card — UN solo tamaño en SICAFI
   Token: --soc-title-size (1.1rem). No redefinir font-size en .razor.css.
   ========================================================= */
.doc-quality-trays-page-title,
.doc-quality-trays-page-title--split .doc-quality-trays-page-title-prefix,
.doc-quality-trays-page-title--split .doc-quality-trays-page-title-sep,
.doc-quality-trays-page-title--split .doc-quality-trays-page-title-line,
.detail-card-title,
.titulo-tabla,
.users-section-title,
.shared-search-section-title,
.advanced-search-card-title,
.overdue-portfolio-section-title,
.edit-role-heading,
.edit-user-permissions p.titulo-tabla,
.edit-user-permissions p.users-section-title,
.broker-potential-risk-search-label,
.broker-potential-risk-search-heading,
.broker-prd-section-heading,
.detail-broker-title,
.accredited-detail-form-card-title,
.op-client-detail-summary__title,
.op-client-detail-summary__title--split .op-client-detail-summary__title-prefix,
.op-client-detail-summary__title--split .op-client-detail-summary__title-sep,
.op-client-detail-summary__title--split .op-client-detail-summary__title-line,
.op-client-form-card__title,
.op-client-details-card__title,
.op-client-details-card__history .overdue-portfolio-section-title,
.soc-modal-title,
.assign-modal h3,
.reentry-quality-modal h3,
.broker-validation-subtitle,
.goal-scoring-window__title,
.accredited-detail-orders-card .shared-search-section-title {
    font-size: var(--soc-title-size) !important;
}

.users-section-title,
.shared-search-section-title,
.overdue-portfolio-section-title {
    font-weight: 700 !important;
    color: var(--soc-title-text, #515151) !important;
}

/* Color compartido del título en buscadores riesgo potencial (bróker + pedido acreditado) */
.potential-risk-search-title-brand {
    color: var(--potential-risk-module-title-color) !important;
}

/* Bandejas por línea de negocio — mismo encabezado que Cartera vencida (dentro de .advanced-search-card) */
.doc-quality-trays-page-header {
    margin: 0 0 0.85rem;
    padding-bottom: 0.65rem;
    border-bottom: 1px solid #e5e7eb;
}

.doc-quality-trays-page-title {
    margin: 0;
    font-size: var(--soc-title-size, 1.1rem);
    font-weight: 700;
    color: var(--soc-title-text, #515151);
    letter-spacing: 0.01em;
}

/* Título compuesto "Calidad documental / Hipotecario": mismo tamaño, color y peso que Cartera vencida */
.doc-quality-trays-page-title--split {
    line-height: 1.35;
}

.doc-quality-trays-page-title--split .doc-quality-trays-page-title-prefix,
.doc-quality-trays-page-title--split .doc-quality-trays-page-title-sep,
.doc-quality-trays-page-title--split .doc-quality-trays-page-title-line {
    font-size: var(--soc-title-size, 1.1rem);
    font-weight: 700;
    color: var(--soc-title-text, #515151);
}

.doc-quality-trays-page-title--split .doc-quality-trays-page-title-sep {
    padding: 0 0.12em;
    font-weight: 700;
}

.mortgage-risk-trays-page .doc-quality-trays-page-header,
.auto-trays-page .doc-quality-trays-page-header,
.pyme-risk-trays-page .doc-quality-trays-page-header,
.goal-scoring-catalog-page .doc-quality-trays-page-header,
.document-analysis-page .doc-quality-trays-page-header {
    margin-top: 0;
}

/* Catálogos — patrón homologado (card 1.25rem + título + controles + grilla) */

/* Mismo espacio superior del título: solo padding del card */
.goal-scoring-catalog-page .goal-scoring-catalog-page-header.doc-quality-trays-page-header,
.goal-scoring-catalog-page .goal-scoring-points-catalog-page-header.doc-quality-trays-page-header,
.goal-scoring-catalog-page .goal-scoring-admin-page-header.doc-quality-trays-page-header,
.goal-scoring-catalog-page .goal-scoring-catalog-header-row {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Título solo (puntos, puntuación de metas) */
.goal-scoring-catalog-page .goal-scoring-points-catalog-page-header.doc-quality-trays-page-header,
.goal-scoring-catalog-page .goal-scoring-admin-page-header.doc-quality-trays-page-header {
    margin: 0 0 0 !important;
    padding: 0 0 0.65rem !important;
    border-bottom: 1px solid #e5e7eb;
}

/* Título + botón en una fila (permisos, adicionales PyME) */
.goal-scoring-catalog-page .goal-scoring-catalog-header-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 1rem;
    width: 100%;
    margin: 0 0 15px 0 !important;
    padding: 0 0 0.65rem !important;
    border-bottom: 1px solid #e5e7eb;
    box-sizing: border-box;
}

.goal-scoring-catalog-page .goal-scoring-catalog-header-row .doc-quality-trays-page-title {
    margin: 0 !important;
    flex: 1 1 auto;
    min-width: 0;
}

.goal-scoring-catalog-page .goal-scoring-catalog-header-row__toolbar {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex: 0 0 auto;
    margin: 0 !important;
    padding: 0 !important;
}

/* Fila pestañas + botón (catálogo de puntos, puntuación de metas) */
.goal-scoring-catalog-page .goal-scoring-points-catalog-actions-row,
.goal-scoring-catalog-page .goal-scoring-admin-actions-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 1rem;
    width: 100%;
    margin: 0 0 15px 0 !important;
    padding: 0.75rem 0 !important;
    border-bottom: none !important;
    box-sizing: border-box;
}

.goal-scoring-catalog-page .goal-scoring-product-line-tabs > .k-tabstrip > .k-tabstrip-content {
    padding-top: 0 !important;
}

.goal-scoring-catalog-page .goal-scoring-admin-actions-row .goal-scoring-manual-tab {
    border-bottom: none !important;
}

.goal-scoring-catalog-page .goal-scoring-admin-actions-row .goal-scoring-manual-tab.is-active {
    border-bottom: none !important;
}

.goal-scoring-catalog-page .goal-scoring-catalog-grid-wrap {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

.goal-scoring-catalog-page .goal-scoring-tabs .goal-scoring-product-line-tabs {
    margin: 0 0 15px 0 !important;
    padding: 0 !important;
}

/* Si no hay fila de botón, separar borde del título de la grilla */

/* Botón outline en catálogos (carga aunque falle el .razor.css aislado) */
.goal-scoring-catalog-page .goal-scoring-toolbar__add-btn.k-button {
    display: inline-flex !important;
    align-items: center;
    gap: 0.45rem;
    min-height: 2.5rem;
    padding: 0.5rem 1.25rem;
    font-size: 0.9375rem;
    font-weight: 600;
    white-space: nowrap;
    color: var(--color-primario) !important;
    border-color: var(--color-primario) !important;
    background: #fff !important;
    border-radius: 5px !important;
    border-width: 1px !important;
}

.goal-scoring-catalog-page .goal-scoring-toolbar__add-btn.k-button:hover,
.goal-scoring-catalog-page .goal-scoring-toolbar__add-btn.k-button.k-hover {
    background: var(--color-verdeSecundario, #0fac78) !important;
    color: #ffffff !important;
    border-color: var(--color-verdeSecundario, #0fac78) !important;
}

.goal-scoring-catalog-page .goal-scoring-points-catalog-actions-row__toolbar {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex: 1 1 auto !important;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    min-width: 0;
}

.goal-scoring-catalog-page .goal-scoring-points-catalog-actions-row .goal-scoring-manual-tabs--segmented {
    flex: 0 0 auto;
}

.goal-scoring-catalog-page .goal-scoring-toolbar__add-btn.k-button {
    display: inline-flex !important;
    align-items: center;
    gap: 0.45rem;
    min-height: 2.5rem;
    padding: 0.5rem 1.25rem;
    font-size: 0.9375rem;
    font-weight: 600;
    white-space: nowrap;
    color: var(--color-primario) !important;
    border-color: var(--color-primario) !important;
    background: #fff !important;
    border-radius: 5px !important;
}

.goal-scoring-catalog-page .goal-scoring-manual-tabs--segmented {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
    padding: 4px;
    background: #f3f4f6;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    width: fit-content;
    max-width: 100%;
}

.goal-scoring-catalog-page .goal-scoring-manual-tab {
    border: 1.5px solid transparent !important;
    border-radius: 8px !important;
    border-bottom: none !important;
    background: transparent;
    color: #6b7280;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.2;
    padding: 8px 22px;
    margin: 0;
    cursor: pointer;
}

.goal-scoring-catalog-page .goal-scoring-manual-tab.is-active {
    background: #ffffff !important;
    color: var(--color-primario) !important;
    border-bottom: none !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.goal-scoring-catalog-page .goal-scoring-manual-tab:hover:not(.is-active) {
    background: rgba(255, 255, 255, 0.55);
    color: #334155;
}

@font-face {
    font-family: "Nunito";
    src: url("../fonts/Nunito/Nunito-Regular.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Nunito";
    src: url("../fonts/Nunito/Nunito-SemiBold.ttf") format("truetype");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Nunito";
    src: url("../fonts/Nunito/Nunito-Bold.ttf") format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
/**HELPER`S**/
body{
    font-family: Nunito;
}
a{
    text-decoration: none;
}
svg{
    width: inherit !important;
    height: auto !important;
}
.p-0{
    padding: 0px !important;
}
.pt-10{
    padding-top: 10px;
}
.bg-soc{
    background-color: var(--color-primario);
}
.page-content{
    min-height: 100vh;
}
.footer{
    padding: 0px !important;
}
.boldSoc{
    color: var(--color-primario);
    font-weight: 600;
}
.text-verde{
    color: var(--color-primario);
}
.text-error{
    color: var(--colorRojoSoc);
    text-align: center;
    font-weight: 600;
}
.align-left{
    text-align: left;
}
.align-right{
    text-align: right;
}
.center{
    text-align: center;
}
.mt-10{
    margin-top: 10px;
}
.mt-3{
    margin-top: 30px;
}
.r-20{
    margin-right: 10px;
}
.mt-buscar{
    margin-top: 29px;
}
.left-check{
    padding-left: 50px;
}
.p-20{
    padding: 20px;
}
.border-top{
    border-top: 1px solid #e5e7eb;
    padding-top: 10px;
}
.border-none{
    border: none !important;
}
.font-small{
    font-size: 12px;
}
.card{
    background-color: #ffffff;
    border: 1px solid #ededed;
    border-radius: 5px;
    padding: 20px;
    margin: 20px 0;
}
.btn-success:active{
    border: 1px solid var(--color-primario);
    color: var(--color-primario);
}
.texto-secundario{
    color: #6c6c6c;
    font-size: 13px;
}
.center-flex{
    display:flex; 
    justify-content:center;
}

/* Botón solo icono en grillas (homologado con .btn-icon ver documento) */
.btn-icon,
.k-button.soc-grid-icon-btn {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: var(--soc-grid-icon-btn-size, 36px);
    min-height: var(--soc-grid-icon-btn-size, 36px);
    border-radius: var(--soc-button-radius, 5px);
    cursor: pointer;
    transition: background 0.2s ease, transform 0.1s ease, border-color 0.2s ease, color 0.2s ease;
}

.btn-icon {
    border: none;
    background: rgba(7, 157, 239, 0.12);
    color: var(--color-azulProfundo);
    padding: 8px 10px;
}

.btn-icon:hover {
    background: rgba(7, 157, 239, 0.2);
}

.btn-icon:active {
    transform: scale(0.96);
}
.input-buscador{
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
    width: 300px;
}
.bg-sicafi{
    background-color:var(--color-verdeSecundario) ;
    border: 1px solid var(--color-verdeSecundario);
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
}
.bg-sicafi:hover{
    background-color:var(--color-verdeSecundario) ;
    border: 1px solid var(--color-verdeSecundario);
}
.btn-search{
    background-color: var(--color-primario);
    color: #fff;
    width: 100%;
    transition: all 300ms cubic-bezier(0.500, 0.250, 0.500, 0.750); /* custom */
    transition-timing-function: cubic-bezier(0.500, 0.250, 0.500, 0.750); /* custom */
    max-width: 100px;
    height: 40px;
}
.btn-search:hover{
    background-color: #08956d;
    color: #fff;
    transition: all 300ms cubic-bezier(0.500, 0.250, 0.500, 0.750); /* custom */
    transition-timing-function: cubic-bezier(0.500, 0.250, 0.500, 0.750); /* custom */
}
.btn-clear{
    background-color: #0fac78;
    color: #ffffff;
    border: 2px solid #0fac78;
    width: 100%;
    transition: all 200ms ease;
    max-width: 100px;
}
.btn-clear:hover{
    background-color: #0fac78;
    color: #ffffff;
    border-color: #0fac78;
    width: 100%;
}
.label-soc{
    color: #006d4e;
    font-weight: 700;
}
.icono-boton{
    width: 25px;
    vertical-align: bottom;
    margin-right: 5px;
}
.btn-ver{
    background-color: #0fac78;
    border: 1px solid #0fac78;
    color: white;
    cursor: pointer;
    font-size: 14px;
    margin: 10px;
    border-radius: 25px;
    padding: 5px 20px;
}
.btn-ver:hover{
    background-color: #14c288;
    border: 1px solid #14c288;
    color: white;
    cursor: pointer;
    font-size: 14px;
    margin: 10px;
    border-radius: 25px;
    padding: 5px 20px;
}
/**LOADER***/
.content-loader {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    height: 100vh;
}

.content-loader .content-loader-text {
    margin: 0;
    max-width: min(90vw, 22rem);
    font-size: 1.125rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    line-height: 1.35;
    text-align: center;
    color: var(--color-primario);
}

.content-loader .loader-icon {
    flex-shrink: 0;
}

.loader-icon {
    width: 80px; 
    animation: spin 3s linear infinite;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
/**LOGIN**/
.auth-bg {
    background-color: #006a4c !important;
}
a, .btn-link {
    color: #1197f6;
    font-weight:bold;
}
.text-description{
    text-align: center !important;
    font-size: 13px !important;
    color: #717171 !important;
    padding: 0px !important;
}
.content-form{
    background-color: #ffffff !important;
}
.recuperar-contraseña {
    color: #4ed176 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: underline;
}
/**TOP NAV**/
.page-container {
    --highdmin-gutter-x: 0px !important;
    padding: 0px !important;
}
/********Telerik*******/
/* Bandejas CD/cobranza — borde izquierdo; el color vivo lo define cada paleta (--tray-color-*) */
tr.tray-row-process-priority > td:first-child {
    border-left: 7px solid var(--tray-color-priority, var(--color-verdeSecundario)) !important;
}

tr.tray-row-process-reentry > td:first-child {
    border-left: 7px solid var(--tray-color-reentry, var(--color-secundario)) !important;
}

tr.tray-row-process-duplicates > td:first-child {
    border-left: 7px solid var(--tray-color-duplicates, var(--color-azulProfundo)) !important;
}

tr.tray-row-process-renovacion > td:first-child {
    border-left: 7px solid var(--tray-color-cd-renewal, var(--color-naranjaSoc)) !important;
}

tr.tray-row-process-factoraje > td:first-child {
    border-left: 7px solid var(--tray-color-factoraje, var(--color-naranjaSoc)) !important;
}

tr.tray-row-process-missing-doc > td:first-child {
    border-left: 7px solid var(--tray-color-missing-doc, var(--color-azulProfundo)) !important;
}

tr.tray-row-process-terminacion-broker > td:first-child {
    border-left: 7px solid var(--tray-color-broker-termination, var(--color-azulTerminacionBroker)) !important;
}

.titulo-tabla{
    color: var(--soc-title-text);
    font-size: var(--soc-title-size);
    font-weight: 700;
   /* border-left: 3px solid #079def;*/
    padding-left: 5px;
}
.k-grid .k-grid-header .k-table-th {
    background: #006d4e;
    color: #ffffff;
}
.k-link{
    background-color: inherit;
    color: inherit !important;
    font-weight: 700;
}
.k-link:hover{
    background-color: #006d4e;
    color: inherit !important;
}
.k-grid-filter-row input {
    color: black;        
    caret-color: black;    
    background-color: white; 
}
.k-calendar .k-calendar-td.k-selected .k-calendar-cell-inner, .k-calendar .k-calendar-td.k-selected .k-link {
    color: #fff !important;
}
.iconoCheck{
    width: 25px;
}
.k-checkbox-wrap{
    display: unset !important;
}
.k-checkbox-wrap{
    margin-top: 10px;
}
.k-checkbox {
    width: 25px !important;
    height: 25px !important;
    border-radius: 50% !important;
    padding: 3px !important;
}
.k-checkbox:checked,
.k-checkbox.k-checked {
    background-color: #0fac78 !important;
    border-color: #0fac78 !important;
}
.k-checkbox:checked::before {
    color: #ffffff;
}
.k-checkbox:hover {
    border-color: #0fac78;
}
.k-checkbox:focus {
    box-shadow: 0 0 0 2px rgba(15, 172, 120, 0.3);
}
.btn-editar{
    background-color: #0fac78 !important;
    border: 1px solid #0fac78 !important;
    padding: 8px 15px !important;
}
.k-dropdown-operator {
    display: none !important;
}

.k-button.k-button-flat.k-button-primary {
    color: #006d4e !important;
}
.search-results-banner {
    background-color: #ebfff9;
    border-radius: 10px;
    color: var(--color-primario);
    width: 253px;
    padding: 5px 10px;
}
.results-info{
    text-align: right;
    color: #8a8a8a;
    font-size: 13px;
}
.k-grid{
    border: 0px !important;
}

/* Goal Scoring — catálogos (puntos / adicionales PyME): marco cerrado; el borde 0 global quitaba el lateral derecho */
.k-grid.goal-scoring-catalog-grid {
    border: 1px solid #e5e7eb !important;
    border-radius: 6px;
    overflow: hidden;
    box-sizing: border-box;
}

.k-grid .k-grid-header .k-table-th:first-child {
   border-top-left-radius: 5px;
   border-bottom-left-radius: 5px;
}
.k-grid .k-grid-header .k-table-th:last-child {
   border-top-right-radius: 5px;
   border-bottom-right-radius: 5px;
}
.chips-container {
    border-bottom: 0px solid #ebebeb;
    display: flex;
    gap: 10px;
    margin-bottom: 10px;
    padding-bottom: 20px;
}
.chips-container button {
    padding: 6px 16px;
    border-radius: 5px;
    font-size: 14px;
    cursor: pointer;
    background: none;
    outline: none;
    transition: 0.2s ease;
}
.k-tabstrip{
    border-radius:5px;
    border:1px solid #e5e5e5;
}

.k-tabstrip-items .k-item{
    border-radius:5px 5px 0 0;
    color:#006D4E;
    font-weight:500;
}

.k-tabstrip-items .k-item:hover{
    background:#f5f5f5;
}

.k-tabstrip-items .k-item.k-active{
    background:#006D4E;
    color:white;
    border-color:#006D4E;
}

.k-tabstrip-items .k-link{
    color:inherit;
}
.k-tabstrip-content{
    border-radius:0 0 5px 5px;
    padding:15px;
}
.k-tabstrip-items-wrapper .k-tabstrip-item.k-active{
    color: var(--color-primario) !important;
}
.k-tabstrip-items-wrapper .k-tabstrip-item:hover{
    color: #ffffff !important;
    transition: all 300ms cubic-bezier(0.500, 0.250, 0.500, 0.750); /* custom */
    transition-timing-function: cubic-bezier(0.500, 0.250, 0.500, 0.750); /* custom */
}
.k-toolbar.k-toolbar-scrollable{
    border: none;
    padding-top: 20px;
    background-color: #ffffff;
}
.k-grid-header {
    position: sticky;
    top: 0;
    z-index: 2;
}
.k-grid-header .k-header {
    background: #006D4E;
    color: white;
    font-weight: 500;
}

.k-grid tbody tr:hover {
    background-color: #f2f8f5;
    transition: background 0.2s ease;
}
.k-tabstrip-content{
    border: none !important;
    padding: 20px 0px !important;
}

.k-tabstrip-top>.k-tabstrip-items-wrapper .k-tabstrip-item.k-active{
    background-color: var(--color-verdeSecundario);
    color: #ffffff !important;
    border:none !important;
    border-radius: 50px !important;
}
.k-tabstrip .k-tabstrip-items .k-link{
    border-radius: 50px !important;
    padding: 10px 20px !important;
}
.k-tabstrip-top>.k-tabstrip-items-wrapper {
    border-color: #f6fafd;
    padding:6px;
}
.k-tabstrip-items-wrapper .k-tabstrip-item, .k-tabstrip-items-wrapper .k-item {
    border: 1px solid #0fac78 !important;
    border-radius: 50px !important;
    color: #006d4e;
    margin: 0 5px 20px !important;
}
/* ===== Pedido ===== */
.order-chip {
    background-color: #dcefff;
    border: 1px solid #38a6ff;
    color: #38a6ff;
}

.order-chip.active {
    background-color: var(--color-primario);
    color: white;
}

/* ===== Acreditado ===== */
.customer-chip {
    background-color: #ecfdf5;
    border: 1px solid #10b981;
    color: #10b981;
}

.customer-chip.active {
    background-color: #10b981;
    color: white;
}
.boton-regresar{
    background-color: #0fac78 !important;
    border: none !important;
    color: #fff !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    letter-spacing: .5px;
    padding: 10px 20px !important;
}


:root {
    --header-height: 3rem;
    --nav-width: 68px;
    --first-color: #4723D9;
    --first-color-light: #AFA5D9;
    --white-color: #F7F6FB;
    --body-font: 'Nunito', sans-serif;
    --normal-font-size: 1rem;
    --z-fixed: 100;
}
*,::before,::after {
    box-sizing: border-box;
}

body{
    background-color: #f3f6f8;
}

.icono-buscador{
    width: 25px;
    vertical-align: middle;
}
.content-orders{
    position: absolute;
}
.btn-add{
    background-color: #ffffff;
    border: 0px;
    color: #0fac78;
    height: 37px;
    font-weight: bold;
    font-size: 40px;
    padding: 0px;
    margin-top: -30px !important;
}
.btn-add:hover{
    background-color: #ffffff;
    border: 0px;
    color: #0fac78;
    height: 37px;
    font-weight: bold;
    font-size: 40px;
    padding: 0px;
    margin-top: -30px;
}
.btn-add:focus{
    background-color: #ffffff;
    border: 0px;
    color: #0fac78;
    height: 37px;
    font-weight: bold;
    font-size: 40px;
    padding: 0px;
    margin-top: -30px;
}

.k-chip, .k-chip.k-chip-base, .k-chip.k-chip-solid, .k-chip.k-chip-solid.k-chip-base {
    border-color: #dff3e7 !important;
    color: var(--color-primario) !important;
    background-color: #dff3e7 !important;
}
.loaderSoc{
    width: 150px;
    display: block;
}
.iconoSalir{
    width: 25px;
}

.k-button-flat-primary {
    color: #006d4e !important;
}
.btn.disabled, .btn:disabled, fieldset:disabled .btn {
    color: #ffffff !important;
    background: #52be9a !important;
}
.iconoBuscar{
    width: 50px;
}
/***********Busqueda*************/
.badge-pedido{
    background-color: var(--color-azulSocSecundario);
    border-radius: 10px;
    color: #ffffff;
    font-size: 20px;
    font-weight: 600;
    padding: 10px 20px;
}
.filter-chip{
    border:1px solid #198754;
    background:white;
    color:#198754;
    padding:6px 14px;
    border-radius:999px;
    font-size:13px;
    font-weight:600;
    cursor:pointer;
    transition:all .2s ease;
}

.filter-chip.active{
    background:#198754;
    color:white !important;
    transform:scale(1.05);
}

.order-chip{
    background-color:#dcefff;
    border:1px solid var(--color-primario);
    color:var(--color-primario);
}

.customer-chip{
    background-color:#ecfdf5;
    border:1px solid #10b981;
    color:#10b981;
}
.order-chip.active{
    background-color:var(--color-primario);
    color:white !important;
}
.customer-chip.active{
    background-color:#10b981;
    color:white !important;
}

/* Bitácora General / Interna (PROPUESTA: acento único vía --soc-propuesta-mono-accent) */
.chips-container.mortgage-bitacora-tabs {
    --bitacora-toggle-accent: var(--color-primario);
    --bitacora-toggle-hover: var(--color-verdeSecundario, #0fac78);
    gap: 6px;
    padding: 6px 0 20px 0;
    align-items: center;
    position: absolute;
    margin-top: -50px;
}

.chips-container.mortgage-bitacora-tabs button.filter-chip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    min-width: 0;
    padding: 10px 20px !important;
    border-radius: 8px !important;
    border: 1px solid var(--bitacora-toggle-accent) !important;
    background: #ffffff !important;
    color: var(--bitacora-toggle-accent) !important;
    font-weight: 600;
    font-size: 0.875rem;
    letter-spacing: 0.01em;
    transform: none !important;
    box-shadow: none !important;
    transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.chips-container.mortgage-bitacora-tabs button.filter-chip:hover:not(.active) {
    background-color: var(--bitacora-toggle-hover) !important;
    color: #ffffff !important;
    border-color: var(--bitacora-toggle-hover) !important;
}

.chips-container.mortgage-bitacora-tabs button.filter-chip.active {
    background-color: var(--bitacora-toggle-accent) !important;
    color: #ffffff !important;
    border: 1px solid var(--bitacora-toggle-accent) !important;
    transform: none !important;
    box-shadow: 0 1px 2px rgba(0, 109, 78, 0.3);
}

.chips-container.mortgage-bitacora-tabs button.filter-chip.active:hover {
    background-color: var(--bitacora-toggle-hover) !important;
    border-color: var(--bitacora-toggle-hover) !important;
    color: #ffffff !important;
}

/***********Buscador*************/
.card-buscador{
    background-color:#ffffff;
    border-radius:10px;
    padding:20px;
}
.card-buscador,
.action-card{
    height:100%;
}
/***********Tarjeta acción*************/
.action-card{
    background:var(--color-verdeSecundario);
    color:white;
    border-radius:12px;
    padding:20px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    min-height:140px;
}
.action-card-content{
    max-width:100%;
}
.action-card-content h5{
    font-weight:600;
    margin-bottom:8px;
}
.action-card-content p{
    font-size:13px;
    opacity:.9;
    margin-bottom:12px;
}
.btn-action{
    background:white;
    color:var(--color-verdeSecundario);
    border:none;
    padding:6px 14px;
    border-radius:6px;
    font-weight:600;
    cursor:pointer;
}
.btn-action:hover{
    background:#f1f5f9;
}
.action-card-icon{
    font-size:48px;
    opacity:.9;
}
.k-switch-label-on,
.k-switch-label-off{
    display:none !important;
}
.k-button.k-button-primary, .k-button.k-button-solid.k-button-primary{
    background-color: transparent !important;
    border: none !important;
    color: var(--color-verdeClaro) !important;
    font-weight: 700;
    padding: 5px 20px !important;

}
.input-search{
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
}
.btn-etapa-actividad-single{
    background-color: var(--color-verdeSecundario);
    border: 1px solid var(--color-verdeSecundario);
    color: #ffffff;
}
.btn-etapa-actividad-single:hover{
    background-color: var(--btn-success-hover-bg);
    border: 1px solid var(--btn-success-hover-border);
    color: #ffffff;
}
.etapas-card {
    border-left: 4px solid var(--color-verdeClaro) !important;
}

.advanced-search-card{
    background-color: #ffffff;
    border-radius: 6px;
    box-shadow: 0 2px 8px rgba(0,0,0,.08);
    padding: 1.25rem;
    margin-bottom: 1rem;
}

/* .card global (padding/margin 20px) no debe pisar catálogos homologados */
.goal-scoring-catalog-page.card.advanced-search-card {
    padding: 1.25rem !important;
    margin-top: 0 !important;
    margin-bottom: 1rem !important;
    border: none;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
.advanced-search-card-header{
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 1.25rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid #e5e7eb;
}
.advanced-search-card-title{
    font-weight: 700;
    font-size: var(--soc-title-size);
    color: var(--soc-title-text);
}
.advanced-search-card-subtitle{
    font-size: 0.875rem;
    color: #6c757d;
    line-height: 1.4;
}
.detail-card-title{
    font-weight: 700;
    font-size: var(--soc-title-size);
    color: var(--soc-title-text);
    margin-bottom: 10px;
}
.history-comments{
    margin-top: 10px;
}
/* Enlaces de texto en grillas — clases explícitas (ver sección Overrides Telerik al final) */
.k-grid a.advanced-search-link,
.k-grid a.shared-search-order-link,
.k-grid a.tray-pedido-link,
.k-grid .tray-pedido-link {
    color: var(--color-verdeClaro, #4ed176);
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
}

.k-grid a.advanced-search-link:hover,
.k-grid a.shared-search-order-link:hover,
.k-grid a.tray-pedido-link:hover {
    color: var(--color-verdeClaro, #4ed176);
    text-decoration: underline;
    text-underline-offset: 2px;
}
.k-tabstrip-item{
    margin-right: 10px !important;
}
.btn-duplicate{
    background-color: var(--color-verdeSecundario);
    border: 1px solid var(--color-verdeSecundario);
    padding: 8px 20px;
}

/* Modal Duplicados — columna Pedido: enlace (clase duplicate-credits-pedido-link) */
.duplicate-orders-modal .k-grid-bitacora a.duplicate-credits-pedido-link,
.duplicate-orders-modal .k-grid-bitacora a.duplicate-credits-pedido-link:visited {
    display: inline;
    margin: 0;
    padding: 0;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    color: var(--color-primario, #006d4e) !important;
    text-decoration: underline;
    text-underline-offset: 2px;
    cursor: pointer;
    vertical-align: baseline;
}

.duplicate-orders-modal .k-grid-bitacora a.duplicate-credits-pedido-link:hover {
    color: var(--color-primario, #006d4e) !important;
    opacity: 0.9;
}

.duplicate-orders-modal .k-grid-bitacora a.duplicate-credits-pedido-link:focus,
.duplicate-orders-modal .k-grid-bitacora a.duplicate-credits-pedido-link:focus-visible {
    outline: 1px solid var(--color-primario, #006d4e) !important;
    outline-offset: 2px;
}

.duplicate-orders-modal .k-grid-bitacora span.duplicate-credits-pedido-link {
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
}

/* =============================================================================
 * TOOLTIP SOC + Telerik (Kendo .k-tooltip / .k-callout)
 * -----------------------------------------------------------------------------
 * .soc-tooltip              → nodo con solo esta clase, o padre si Telerik mete .k-tooltip.
 * .soc-telerik-tooltip-popup → Class del TelerikTooltip (SocTooltip por defecto).
 * .broker-detail-dup-tooltip-offset → BrokerDetail / botón Duplicados (offset + colita).
 * Bottom: colita suele ir arriba del texto (primer hijo). Top: colita abajo (último hijo).
 * ============================================================================= */

/* Caja del popup: misma “piel” en base y en integración Telerik */
.k-filtercell-operator{
    display: none;
}
.soc-tooltip,
.soc-telerik-tooltip-popup .k-tooltip,
.soc-telerik-tooltip-popup.k-tooltip,
.soc-tooltip .k-tooltip,
.soc-tooltip.k-tooltip {
    font-size: 0.8125rem;
    line-height: 1.35;
    padding: 0.5rem 0.65rem;
    border-radius: 6px;
    background: #ecfdf5;
    color: var(--color-primario);
    border: 1px solid rgba(0, 109, 78, 0.22);
    box-shadow: 0 2px 10px rgba(0, 109, 78, 0.1);
    position: relative;
}

.soc-telerik-tooltip-popup .k-tooltip,
.soc-telerik-tooltip-popup.k-tooltip {
    max-width: none;
    /* Evita parpadeo: el popup no debe capturar el puntero (Telerik / foros). */
    pointer-events: none !important;
}

.soc-telerik-tooltip-popup .k-animation-container,
.soc-telerik-tooltip-popup .k-tooltip,
.soc-telerik-tooltip-popup.k-tooltip {
    overflow: visible !important;
}

.k-animation-container.soc-telerik-tooltip-popup,
.soc-telerik-tooltip-popup.k-animation-container {
    z-index: 20052 !important;
    pointer-events: none !important;
}

.soc-telerik-tooltip-popup .k-tooltip .k-tooltip-content {
    color: inherit;
    position: relative;
    z-index: 1;
}

/* Tooltip folio: a la derecha del ícono → colita en el lateral (Kendo), no arriba/abajo */
.soc-telerik-tooltip-popup.soc-tooltip-folio-multiline .k-tooltip .k-tooltip-content {
    white-space: normal;
    text-align: center;
    text-wrap: balance;
}

.soc-telerik-tooltip-popup.soc-tooltip-folio-multiline .k-tooltip,
.soc-telerik-tooltip-popup.soc-tooltip-folio-multiline.k-tooltip {
    max-width: 15rem;
}

.soc-telerik-tooltip-popup .k-tooltip .k-callout,
.soc-telerik-tooltip-popup .k-callout,
.soc-tooltip .k-tooltip .k-callout {
    color: #ecfdf5;
    z-index: 2;
    opacity: 1 !important;
    visibility: visible !important;
    filter: drop-shadow(0 0 0.65px rgba(0, 109, 78, 0.45)) drop-shadow(0 0 0.35px rgba(0, 109, 78, 0.3));
}

.soc-telerik-tooltip-popup .k-tooltip > .k-callout:first-child {
    margin-bottom: -1px;
}

.soc-telerik-tooltip-popup .k-tooltip > .k-callout:last-child:not(:only-child) {
    margin-top: 0;
    margin-bottom: 0;
}

.broker-detail-dup-tooltip-offset {
    transform: translateY(78px);
}

.header-icon-tooltip-offset {
    transform: translateY(70px);
}

.broker-detail-dup-tooltip-offset .k-tooltip .k-callout {
    filter: drop-shadow(0 0 1px rgba(0, 109, 78, 0.55)) drop-shadow(0 0 0.5px rgba(0, 109, 78, 0.35));
}

.documentos-download-btn{
    background-color: #ffffff !important;
    border: 1px solid var(--color-verdeSecundario) !important;
    color: var(--color-verdeSecundario) !important;
    padding: 8px 15px !important;
}

/* =========================================================
   Filas de documento — diseño homologado (Pyme, MR, Auto, SS, OP)
   ========================================================= */
.doc-card {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) auto auto;
    grid-template-areas: "icon info status view";
    align-items: center;
    gap: 10px 12px;
    padding: 12px 14px;
    border-radius: 8px;
    background: #f0f7ff;
    border: 1px solid rgba(7, 157, 239, 0.08);
    transition: background .2s, box-shadow .15s, border-color .2s;
    margin-bottom: 8px;
}

.doc-card .doc-icon {
    grid-area: icon;
}

.doc-card .doc-info {
    grid-area: info;
}

.doc-card .doc-status {
    grid-area: status;
}

.doc-card .btn-icon {
    grid-area: view;
}

.doc-card-with-actions {
    grid-template-columns: 40px minmax(0, 1fr) auto auto auto;
    grid-template-areas: "icon info status actions view";
}

.doc-card-with-actions .doc-actions {
    grid-area: actions;
    justify-content: flex-end;
    width: auto;
    flex-shrink: 0;
}

.doc-card:last-child {
    margin-bottom: 0;
}

.doc-card-empty {
    grid-template-columns: 1fr;
    background: #f1f5f9;
    color: #64748b;
}

.doc-card-empty .doc-name {
    font-weight: 500;
}

.doc-card:hover {
    background: #e8f4ff;
    border-color: rgba(7, 157, 239, 0.16);
    box-shadow: 0 2px 8px rgba(7, 157, 239, 0.1);
}

.doc-card-empty:hover {
    background: #e2e8f0;
    box-shadow: none;
}

.doc-icon {
    font-size: 22px;
    color: #ef4444;
}

.doc-info {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.doc-name {
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.doc-meta {
    font-size: 12px;
    color: #6b7280;
}

.doc-status {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    box-sizing: border-box;
    min-height: auto;
    padding: 0.28rem 0.7rem 0.28rem 0.55rem;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1.2;
    border-radius: 9999px;
    white-space: nowrap;
    border: none;
    cursor: default;
    pointer-events: none;
    user-select: none;
}

.doc-status::before {
    content: "";
    flex-shrink: 0;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: currentColor;
    opacity: 0.85;
}

.doc-status.ingresado,
.doc-status.submitted {
    background: #fff8e6;
    color: #9a6700;
}

.doc-status.validado,
.doc-status.validated {
    background: #e8f4ff;
    color: #0369a1;
}

.doc-status.aceptado {
    background: #e6f7ef;
    color: #0a5c42;
}

.doc-status.aceptado::before {
    width: auto;
    height: auto;
    border-radius: 0;
    background: none;
    opacity: 1;
    font-size: 0.85rem;
    line-height: 1;
    content: "✓";
    color: #0fac78;
}

.doc-status.rechazado {
    background: #fff0f0;
    color: #b42318;
}

.doc-status.rechazado::before {
    width: auto;
    height: auto;
    border-radius: 0;
    background: none;
    opacity: 1;
    font-size: 0.9rem;
    line-height: 1;
    content: "×";
    font-weight: 700;
    color: var(--colorRojoSoc, #ff4f4f);
}

.doc-card .btn-icon,
.btn-icon {
    border: 1px solid rgba(7, 157, 239, 0.18);
    background: rgba(7, 157, 239, 0.12);
    color: var(--color-azulProfundo);
    border-radius: 7px;
    padding: 0;
    width: var(--soc-grid-icon-btn-size, 36px);
    height: var(--soc-grid-icon-btn-size, 36px);
    min-width: var(--soc-grid-icon-btn-size, 36px);
    min-height: var(--soc-grid-icon-btn-size, 36px);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .1s ease;
}

.doc-card .btn-icon:hover,
.btn-icon:hover {
    background: rgba(7, 157, 239, 0.16);
    border-color: rgba(7, 157, 239, 0.35);
    box-shadow: 0 0 0 3px rgba(7, 157, 239, 0.12);
}

.doc-card .btn-icon:active,
.btn-icon:active {
    transform: scale(0.96);
}

.doc-card .btn-icon .bx {
    font-size: 1.15rem;
}

.doc-actions {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    flex-wrap: nowrap;
    justify-content: flex-end;
    width: auto;
}

.doc-actions .btn-aceptar,
.doc-actions .btn-cerrar {
    min-height: 34px;
    padding: 6px 14px !important;
    font-size: 0.8125rem !important;
    font-weight: 600 !important;
    white-space: nowrap;
}

.doc-actions .btn-aceptar.is-selected:disabled,
.doc-actions .btn-cerrar.is-selected:disabled {
    opacity: 1 !important;
    cursor: not-allowed;
}

.doc-actions .btn-aceptar.is-selected:disabled {
    background-color: #f3fffb !important;
    border-color: var(--color-verdeSecundario) !important;
    color: var(--color-verdeSecundario) !important;
}

.doc-actions .btn-cerrar.is-selected:disabled {
    background-color: #fff7f7 !important;
    border-color: var(--colorRojoSoc) !important;
    color: var(--colorRojoSoc) !important;
}

@media (max-width: 767.98px) {
    .doc-card,
    .doc-card-with-actions {
        grid-template-columns: 40px minmax(0, 1fr) auto auto;
        grid-template-areas:
            "icon info info info"
            "status status status status"
            "actions actions actions view";
    }

    .doc-card:not(.doc-card-with-actions) {
        grid-template-columns: 40px minmax(0, 1fr) auto;
        grid-template-areas:
            "icon info view"
            "status status status";
    }

    .doc-card-with-actions .doc-actions {
        justify-content: stretch;
        width: 100%;
        border-top: none;
        padding-top: 0;
    }

    .doc-card-with-actions .doc-actions .btn-aceptar,
    .doc-card-with-actions .doc-actions .btn-cerrar {
        flex: 1 1 0;
        min-width: 0;
    }
}

.boton-login{
    background-color: var(--color-primario) !important;
}
.k-switch-thumb {
    width: 20px !important;
    height: 20px !important;
    transform: translate(-70%, -50%) !important;
}
.k-switch .k-switch-track, .k-switch.k-switch-md .k-switch-track {
    height: 20px !important;
    max-width: 50px !important;
}
.k-switch-on .k-switch-track {
    color: var(--kendo-color-on-primary, #ffffff);
    background-color: var(--color-verdeSecundario) !important;
    border-color: var(--color-verdeSecundario) !important;
}
.k-switch-on:focus .k-switch-track, .k-switch-on.k-focus .k-switch-track  {
    outline: 3px solid rgba(2, 134, 95, 0.4) !important;
}
.detail-prioridad-pregunta{
    color: var(--color-azulProfundo) !important;
    font-weight: 800 !important;
}
.k-grid td, .k-grid .k-table-td{
    font-size: 12px;
}
.history-card{
    background-color: #ffffff;
    border-radius: 5px;
    border-left: 4px solid var(--color-verdeClaro);
    padding: 10px;
}
.k-tabstrip-items-wrapper .k-tabstrip-item:focus{
        box-shadow: inset 0 0 0 0px var(--kendo-color-border-alt, rgba(0, 0, 0, 0.16)) !important;
}
.mortgage-ingresados-pill {
    font-weight: 800 !important;
}
.mortgage-ingresados-pill--active{
    font-weight: 800 !important;
}

/* Bandejas: popup del selector "Mostrar X registros" ajustado a 3 opciones */
.tray-page-size-popup.k-popup,
.tray-page-size-popup.k-animation-container {
    height: auto !important;
}

.tray-page-size-popup .k-list-container,
.tray-page-size-popup .k-list-content {
    height: auto !important;
    max-height: none !important;
}

/* Bandejas hipotecario: popup del selector "Mostrar X registros" ajustado a 3 opciones */
.mortgage-tray-page-size-popup.k-popup,
.mortgage-tray-page-size-popup.k-animation-container {
    height: auto !important;
}

.mortgage-tray-page-size-popup .k-list-container,
.mortgage-tray-page-size-popup .k-list-content {
    height: auto !important;
    max-height: none !important;
}

/* Bandejas PyME: popup del selector "Mostrar X registros" ajustado a 3 opciones */
.pyme-tray-page-size-popup.k-popup,
.pyme-tray-page-size-popup.k-animation-container {
    height: auto !important;
}

.pyme-tray-page-size-popup .k-list-container,
.pyme-tray-page-size-popup .k-list-content {
    height: auto !important;
    max-height: none !important;
}
/* Bandejas cobranza hipotecario: popup del selector "Mostrar X registros" ajustado a 3 opciones */
.mortgage-collection-tray-page-size-popup.k-popup,
.mortgage-collection-tray-page-size-popup.k-animation-container {
    height: auto !important;
}

.mortgage-collection-tray-page-size-popup .k-list-container,
.mortgage-collection-tray-page-size-popup .k-list-content {
    height: auto !important;
    max-height: none !important;
}

/* Bandejas cobranza PyME: popup del selector "Mostrar X registros" ajustado a 3 opciones */
.pyme-collection-tray-page-size-popup.k-popup,
.pyme-collection-tray-page-size-popup.k-animation-container {
    height: auto !important;
}

.pyme-collection-tray-page-size-popup .k-list-container,
.pyme-collection-tray-page-size-popup .k-list-content {
    height: auto !important;
    max-height: none !important;
}

/* Bandejas Auto/TDC: popup del selector "Mostrar X registros" ajustado a 3 opciones */
.Auto-tray-page-size-popup.k-popup,
.Auto-tray-page-size-popup.k-animation-container {
    height: auto !important;
}

.Auto-tray-page-size-popup .k-list-container,
.Auto-tray-page-size-popup .k-list-content {
    height: auto !important;
    max-height: none !important;
}

#adv-order{
    max-width: 80% !important;
}
.block{
    display: block;
}

/* =========================================================
   PyME Calidad documental — tabs alineados a Hipotecario (segmented control).
   Detalle fino en PymeRiskTraysTelerik.razor.css (scoped).
   ========================================================= */
.pyme-risk-trays-page .pyme-tabs-modern .k-tabstrip-top > .k-tabstrip-items-wrapper,
.pyme-risk-trays-page .pyme-tabs-modern .k-tabstrip > .k-tabstrip-items-wrapper {
    border-bottom: none !important;
    padding: 4px !important;
    border-radius: 10px;
    background: #f3f4f6;
}

.pyme-risk-trays-page .pyme-tabs-modern .k-tabstrip-items-wrapper .k-tabstrip-item,
.pyme-risk-trays-page .pyme-tabs-modern .k-tabstrip-items-wrapper .k-item {
    border: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    color: #475569 !important;
}

.pyme-risk-trays-page .pyme-tabs-modern .k-tabstrip .k-tabstrip-items .k-link,
.pyme-risk-trays-page .pyme-tabs-modern .k-tabstrip .k-tabstrip-items-wrapper .k-link {
    border-radius: 8px !important;
    border-bottom: none !important;
    padding: 10px 18px !important;
    margin: 0 !important;
    color: inherit !important;
}

.pyme-risk-trays-page .pyme-tabs-modern > .k-tabstrip .k-tabstrip-items-wrapper .k-item:hover .k-link,
.pyme-risk-trays-page .pyme-tabs-modern > .k-tabstrip .k-tabstrip-items-wrapper .k-tabstrip-item:hover .k-link {
    background-color: rgba(255, 255, 255, 0.55) !important;
    color: #334155 !important;
}

.pyme-risk-trays-page .pyme-tabs-modern .k-tabstrip-top > .k-tabstrip-items-wrapper .k-tabstrip-item.k-active,
.pyme-risk-trays-page .pyme-tabs-modern .k-tabstrip-items-wrapper .k-tabstrip-item.k-active,
.pyme-risk-trays-page .pyme-tabs-modern .k-tabstrip-items-wrapper .k-item.k-active {
    background: transparent !important;
    border: none !important;
    color: var(--color-primario) !important;
}

.pyme-risk-trays-page .pyme-tabs-modern .k-tabstrip-items-wrapper .k-tabstrip-item.k-active .k-link,
.pyme-risk-trays-page .pyme-tabs-modern .k-tabstrip-items-wrapper .k-item.k-active .k-link {
    background: #ffffff !important;
    border-bottom: none !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    color: var(--color-primario) !important;
    font-weight: 600;
}

.pyme-risk-trays-page .pyme-tabs-modern .k-toolbar.k-toolbar-scrollable,
.pyme-risk-trays-page .pyme-tabs-modern .k-grid-toolbar {
    border: none !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    background: transparent !important;
}

/* =========================================================
   Homologacion tabs Auto (dentro de .card como bandejas Hipotecario / PyME)
   ========================================================= */
.card .auto-tabs-modern .k-tabstrip-top > .k-tabstrip-items-wrapper,
.card .auto-tabs-modern .k-tabstrip > .k-tabstrip-items-wrapper {
    border-bottom: 1px solid #f6fafd !important;
    padding: 0 !important;
}

.card .auto-tabs-modern .k-tabstrip-items-wrapper .k-tabstrip-item,
.card .auto-tabs-modern .k-tabstrip-items-wrapper .k-item {
    border: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    color: #475569 !important;
}

.card .auto-tabs-modern .k-tabstrip .k-tabstrip-items .k-link,
.card .auto-tabs-modern .k-tabstrip .k-tabstrip-items-wrapper .k-link {
    border-radius: 0 !important;
    padding: 10px 5px !important;
    margin: 0 5px;
    color: inherit !important;
}

.card .auto-tabs-modern > .k-tabstrip .k-tabstrip-items-wrapper .k-item:hover .k-link,
.card .auto-tabs-modern > .k-tabstrip .k-tabstrip-items-wrapper .k-tabstrip-item:hover .k-link {
    background-color: #fbfbfb !important;
    color: #334155 !important;
}

.card .auto-tabs-modern .k-tabstrip-top > .k-tabstrip-items-wrapper .k-tabstrip-item.k-active,
.card .auto-tabs-modern .k-tabstrip-items-wrapper .k-tabstrip-item.k-active,
.card .auto-tabs-modern .k-tabstrip-items-wrapper .k-item.k-active {
    background: transparent !important;
    border: none !important;
    color: var(--color-primario) !important;
}

.card .auto-tabs-modern .k-tabstrip-items-wrapper .k-tabstrip-item.k-active .k-link,
.card .auto-tabs-modern .k-tabstrip-items-wrapper .k-item.k-active .k-link {
    background: #ffffff !important;
    border-bottom: 2px solid var(--color-primario) !important;
    color: var(--color-primario) !important;
}

.card .auto-tabs-modern .k-toolbar.k-toolbar-scrollable,
.card .auto-tabs-modern .k-grid-toolbar {
    border: none !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    background: #fff !important;
}
.btn-guardar,
.btn-aceptar {
    background-color: #fff !important;
    border: 1px solid #0fac78 !important;
    border-radius: var(--soc-button-radius, 5px);
    color: #0fac78 !important;
    cursor: pointer;
    font-size: 14px;
    padding: 10px 18px;
    margin: 0;
    box-sizing: border-box;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.btn-guardar:hover:not(:disabled):not(.disabled),
.btn-aceptar:hover:not(:disabled):not(.disabled) {
    background-color: #f3fffb !important;
    border: 1px solid var(--color-verdeSecundario) !important;
    color: var(--color-verdeSecundario) !important;
    box-shadow: 0 0 0 2px rgba(15, 172, 120, 0.15) !important;
}

.btn-guardar:disabled,
.btn-guardar.disabled,
.btn-aceptar:disabled,
.btn-aceptar.disabled {
    background-color: #fbfbfb !important;
    border-color: #ced4da !important;
    color: #6c757d !important;
    cursor: not-allowed;
    opacity: 1;
}

.btn-cancelar,
.btn-cerrar {
    background-color: #fff !important;
    border: 1px solid #ff4f4f !important;
    border-radius: var(--soc-button-radius, 5px);
    color: #ff4f4f !important;
    cursor: pointer;
    font-size: 14px;
    padding: 10px 18px;
    margin: 0;
    box-sizing: border-box;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.btn-cancelar:hover:not(:disabled):not(.disabled),
.btn-cerrar:hover:not(:disabled):not(.disabled) {
    background-color: #fff7f7 !important;
    border: 1px solid #f31700 !important;
    color: #f31700 !important;
}

.btn-cancelar:disabled,
.btn-cancelar.disabled,
.btn-cerrar:disabled,
.btn-cerrar.disabled {
    background-color: #fbfbfb !important;
    border-color: #ced4da !important;
    color: #6c757d !important;
    cursor: not-allowed;
    opacity: 1;
}

/* Telerik en grillas — mismo outline que modales (Aceptar / Cerrar) */
.k-button.btn-aceptar,
.k-button.btn-guardar,
.k-button.soc-grid-action-btn.btn-aceptar {
    background-color: #fff !important;
    border: 1px solid #0fac78 !important;
    border-radius: var(--soc-button-radius, 5px) !important;
    color: #0fac78 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 6px 14px !important;
    min-height: auto !important;
    box-shadow: none !important;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.k-button.btn-aceptar:hover,
.k-button.btn-aceptar.k-hover,
.k-button.btn-guardar:hover,
.k-button.btn-guardar.k-hover,
.k-button.soc-grid-action-btn.btn-aceptar:hover,
.k-button.soc-grid-action-btn.btn-aceptar.k-hover {
    background-color: #f3fffb !important;
    border: 1px solid var(--color-verdeSecundario, #0fac78) !important;
    color: var(--color-verdeSecundario, #0fac78) !important;
    box-shadow: 0 0 0 2px rgba(15, 172, 120, 0.15) !important;
}

.k-button.btn-cerrar,
.k-button.btn-cancelar,
.k-button.soc-grid-action-btn.btn-cerrar {
    background-color: #fff !important;
    border: 1px solid #ff4f4f !important;
    border-radius: var(--soc-button-radius, 5px) !important;
    color: #ff4f4f !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 6px 14px !important;
    min-height: auto !important;
    box-shadow: none !important;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.k-button.btn-cerrar:hover,
.k-button.btn-cerrar.k-hover,
.k-button.btn-cancelar:hover,
.k-button.btn-cancelar.k-hover,
.k-button.soc-grid-action-btn.btn-cerrar:hover,
.k-button.soc-grid-action-btn.btn-cerrar.k-hover {
    background-color: #fff7f7 !important;
    border: 1px solid #f31700 !important;
    color: #f31700 !important;
    box-shadow: none !important;
}

/* Regresar — único estilo en todo SICAFI (no duplicar en .razor.css por página) */
.btn.btn-regresar,
.btn.btn-back,
a.btn.btn-regresar,
a.btn.btn-back,
button.btn.btn-regresar,
button.btn.btn-back,
.btn-regresar,
.btn-back {
  font-weight: 600;
  font-size: 0.875rem;
  line-height: 1.25;
  padding: 0.5rem 1rem;
  border-radius: 50rem;
  color: var(--color-verdeClaro) !important;
  text-decoration: none !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.btn.btn-regresar:hover,
.btn.btn-back:hover,
a.btn.btn-regresar:hover,
a.btn.btn-back:hover,
button.btn.btn-regresar:hover,
button.btn.btn-back:hover,
.btn-regresar:hover,
.btn-back:hover,
.btn.btn-regresar:focus,
.btn.btn-back:focus,
a.btn.btn-regresar:focus,
a.btn.btn-back:focus,
button.btn.btn-regresar:focus,
button.btn.btn-back:focus,
.btn-regresar:focus,
.btn-back:focus,
.btn.btn-regresar:active,
.btn.btn-back:active,
a.btn.btn-regresar:active,
a.btn.btn-back:active,
button.btn.btn-regresar:active,
button.btn.btn-back:active,
.btn-regresar:active,
.btn-back:active {
  color: var(--color-primario) !important;
  text-decoration: none !important;
  background-color: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

.btn.btn-regresar:focus-visible,
.btn.btn-back:focus-visible,
a.btn.btn-regresar:focus-visible,
a.btn.btn-back:focus-visible,
button.btn.btn-regresar:focus-visible,
button.btn.btn-back:focus-visible,
.btn-regresar:focus-visible,
.btn-back:focus-visible {
  color: var(--color-primario) !important;
  text-decoration: none !important;
  outline: 2px solid rgba(0, 109, 78, 0.35);
  outline-offset: 2px;
}

/* Botones homologados: radio único en todo el sistema.
   goal-scoring-manual-tab: pestañas con línea inferior (radio 0 en sus .razor.css). */
.btn,
button.btn,
.k-button {
    border-radius: var(--soc-button-radius) !important;
}

/* =========================================================
   Cabecera de modal (HTML y Telerik) — título alineado a --soc-title-size
   ========================================================= */
.soc-modal-titlebar {
    background-color: #ffffff;
    border-bottom: 1px solid #d9dee5;
    padding: 0.95rem 1.25rem;
    margin: 0;
    text-align: center;
}

.soc-modal-title {
    margin: 0;
    text-transform: none;
    font-size: var(--soc-title-size);
    font-weight: 700;
    letter-spacing: 0.01em;
    line-height: 1.25;
    color: var(--color-primario);
}

.duplicate-orders-modal__content {
    padding: 10px;
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.duplicate-orders-modal .modal-table-container {
    width: 100%;
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overflow-x: auto;
}

.duplicate-orders-modal .modal-buttons {
    flex-shrink: 0;
}

.duplicate-orders-modal .soc-modal-titlebar {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.duplicate-orders-modal-close {
    position: absolute;
    right: 1.25rem;
    border: 0;
    background: transparent;
    color: #64748b;
    font-size: 1.5rem;
    line-height: 1;
    padding: 0.15rem;
    border-radius: 4px;
    cursor: pointer;
}

.duplicate-orders-modal-close:hover,
.duplicate-orders-modal-close:focus-visible {
    color: #334155;
    background: #f1f5f9;
    outline: none;
}

/* Goal scoring: TelerikWindow puede montarse en portal (fuera del scope Blazor del padre) */
.goal-scoring-window .k-window-titlebar {
    background-color: #ffffff;
    color: var(--color-primario);
    border-bottom: 1px solid #d9dee5;
    padding: 0.95rem 1.25rem;
}

.goal-scoring-window .k-window-title {
    width: 100%;
    text-align: center;
}

.goal-scoring-window .k-window-content {
    padding: 1rem 1.25rem 1.25rem;
}

.goal-scoring-window .goal-scoring-field__label {
    font-weight: 600;
    color: var(--color-primario);
}

.goal-scoring-window .goal-scoring-modal-body {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.goal-scoring-window .goal-scoring-modal-primary.k-button {
    width: auto;
    min-width: 110px;
    min-height: 42px;
    justify-content: center;
    display: inline-flex;
    align-items: center;
    padding: 0.5rem 1.25rem !important;
    border-radius: 10px !important;
    font-weight: 600 !important;
    font-size: 0.9375rem !important;
    background: #ffffff !important;
    border: 1px solid var(--color-verdeSecundario, #0fac78) !important;
    color: var(--color-verdeSecundario, #0fac78) !important;
    box-shadow: none !important;
}

.goal-scoring-window .goal-scoring-modal-actions {
    margin-top: 0.25rem;
    display: flex;
    justify-content: flex-end;
    gap: 0.65rem;
}

.goal-scoring-window .goal-scoring-modal-cancel.k-button {
    min-width: 110px;
    min-height: 42px;
    padding: 0.5rem 1.25rem !important;
    border-radius: 10px !important;
    font-weight: 600 !important;
    font-size: 0.9375rem !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #ffffff !important;
    border: 1px solid #ff4f4f !important;
    color: #ff4f4f !important;
    box-shadow: none !important;
}

.goal-scoring-window .goal-scoring-modal-cancel.k-button:hover {
    background: #fff7f7 !important;
    border-color: #f31700 !important;
    color: #f31700 !important;
}

.goal-scoring-window .goal-scoring-modal-primary.k-button:hover {
    background: #f3fffb !important;
    border-color: var(--color-verdeSecundario, #0fac78) !important;
    color: #0fac78 !important;
}

/* Forzado extra para Telerik states (evita relleno rojo/verde por defecto fuera de hover) */
.goal-scoring-window .goal-scoring-modal-cancel.k-button.k-button-solid-error,
.goal-scoring-window .goal-scoring-modal-cancel.k-button.k-button-solid,
.goal-scoring-window .goal-scoring-modal-cancel.k-button.k-button-md {
    background: #ffffff !important;
    border-color: #ff4f4f !important;
    color: #ff4f4f !important;
}

.goal-scoring-window .goal-scoring-modal-primary.k-button.k-button-solid-primary,
.goal-scoring-window .goal-scoring-modal-primary.k-button.k-button-solid,
.goal-scoring-window .goal-scoring-modal-primary.k-button.k-button-md {
    background: #ffffff !important;
    border-color: var(--color-verdeSecundario, #0fac78) !important;
    color: var(--color-verdeSecundario, #0fac78) !important;
}

/* Estado normal/focus/active siempre outline (relleno solo en hover) */
.goal-scoring-window .goal-scoring-modal-cancel.k-button:not(:hover):not(.k-hover),
.goal-scoring-window .goal-scoring-modal-cancel.k-button.k-focus,
.goal-scoring-window .goal-scoring-modal-cancel.k-button:focus,
.goal-scoring-window .goal-scoring-modal-cancel.k-button.k-active,
.goal-scoring-window .goal-scoring-modal-cancel.k-button:active {
    background: #ffffff !important;
    border-color: #ff4f4f !important;
    color: #ff4f4f !important;
}

.goal-scoring-window .goal-scoring-modal-primary.k-button:not(:hover):not(.k-hover),
.goal-scoring-window .goal-scoring-modal-primary.k-button.k-focus,
.goal-scoring-window .goal-scoring-modal-primary.k-button:focus,
.goal-scoring-window .goal-scoring-modal-primary.k-button.k-active,
.goal-scoring-window .goal-scoring-modal-primary.k-button:active {
    background: #ffffff !important;
    border-color: var(--color-verdeSecundario, #0fac78) !important;
    color: var(--color-verdeSecundario, #0fac78) !important;
}
.btn-add:disabled,
.btn-add.disabled,
fieldset:disabled .btn-add,
.btn-add:disabled:hover,
.btn-add:disabled:focus,
.btn-add.disabled:hover,
.btn-add.disabled:focus {
    background-color: #ffffff !important;
    border: 0px;
    color: #0fac78 !important;
    height: 37px;
    font-weight: bold;
    font-size: 40px;
    padding: 0px;
    margin-top: -30px  !important;
}

/* --- Riesgo potencial (grilla): mismo interruptor que detalle bróker (BrokerPotentialRiskInfo) ---
   Estilos globales: el scoped del RCL no aplica al DOM interno de Kendo. */
.broker-potential-risk-search-grid .broker-potential-risk-switch-cell,
.mortgage-tabs-modern .broker-potential-risk-switch-cell {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}

/* Encabezados: salto de línea solo cuando no caben en el ancho de la columna (CSS), no <br /> forzados */
.broker-potential-risk-search-grid .broker-potential-risk-header-lines {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    white-space: normal !important;
    overflow-wrap: break-word;
    word-break: normal;
    line-height: 1.25;
    font-weight: 700;
    overflow: visible !important;
    text-overflow: clip !important;
    text-align: center;
    hyphens: auto;
}

.broker-potential-risk-search-grid .k-grid-header th.broker-potential-risk-header-wrap .k-cell-inner {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    height: 100%;
    box-sizing: border-box;
    padding-inline: 0 !important;
    margin-inline: 0 !important;
    white-space: normal !important;
}

.broker-potential-risk-search-grid .k-grid-header th.broker-potential-risk-header-wrap {
    text-align: center;
    vertical-align: middle;
    padding-inline: 0 !important;
    margin-inline: 0 !important;
}

.broker-potential-risk-search-grid .k-grid-header th.broker-potential-risk-header-wrap .k-link,
.broker-potential-risk-search-grid .k-grid-header th.broker-potential-risk-header-wrap .k-column-title {
    padding-inline: 0 !important;
    margin-inline: 0 !important;
}

/* Cuerpo de la grilla: alineación por defecto a la izquierda (solo los títulos van centrados con reglas de cabecera) */
.broker-potential-risk-search-grid .k-grid-content td.k-table-td,
.broker-potential-risk-search-grid .k-grid-content tbody td {
    text-align: start !important;
}

/* Enlace tipo botón (Nombre / Bróker): Bootstrap .btn centra el texto; alinear a la izquierda como el resto de celdas */
.broker-potential-risk-search-grid .k-grid-content td .broker-potential-risk-search-broker-link {
    display: inline-flex !important;
    justify-content: flex-start !important;
    text-align: start !important;
    width: 100%;
    max-width: 100%;
}

/* Misma pista y thumb que .broker-prd-switch en BrokerPotentialRiskInfo.razor.css */
.broker-potential-risk-search-grid .broker-prd-switch--grid,
.mortgage-tabs-modern .broker-prd-switch--grid {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin: 0;
    cursor: pointer;
    user-select: none;
    pointer-events: auto;
    line-height: 0;
}

.broker-potential-risk-search-grid .broker-prd-switch--grid .broker-prd-switch-input,
.mortgage-tabs-modern .broker-prd-switch--grid .broker-prd-switch-input {
    position: absolute !important;
    opacity: 0 !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    border: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    pointer-events: none !important;
}

.broker-potential-risk-search-grid .broker-prd-switch--grid .broker-prd-switch-track,
.mortgage-tabs-modern .broker-prd-switch--grid .broker-prd-switch-track {
    position: relative;
    width: 2.9rem;
    height: 1.35rem;
    flex-shrink: 0;
    background: #e5e7eb;
    border-radius: 999px;
    transition: background-color 0.2s ease;
    border: none;
    box-sizing: border-box;
}

.broker-potential-risk-search-grid .broker-prd-switch--grid .broker-prd-switch-track::after,
.mortgage-tabs-modern .broker-prd-switch--grid .broker-prd-switch-track::after {
    content: "";
    position: absolute;
    top: 2px;
    left: 2px;
    width: calc(1.35rem - 4px);
    height: calc(1.35rem - 4px);
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.22);
    transition: transform 0.2s ease;
}

.broker-potential-risk-search-grid .broker-prd-switch--grid .broker-prd-switch-input:checked + .broker-prd-switch-track,
.mortgage-tabs-modern .broker-prd-switch--grid .broker-prd-switch-input:checked + .broker-prd-switch-track {
    background: #62c8a5;
}

.broker-potential-risk-search-grid .broker-prd-switch--grid .broker-prd-switch-input:checked + .broker-prd-switch-track::after,
.mortgage-tabs-modern .broker-prd-switch--grid .broker-prd-switch-input:checked + .broker-prd-switch-track::after {
    transform: translateX(calc(2.9rem - 1.35rem));
}

.broker-potential-risk-search-grid .broker-prd-switch--grid .broker-prd-switch-input:disabled + .broker-prd-switch-track,
.mortgage-tabs-modern .broker-prd-switch--grid .broker-prd-switch-input:disabled + .broker-prd-switch-track {
    background: #e5e7eb;
}

.broker-potential-risk-search-grid .broker-prd-switch--grid .broker-prd-switch-input:disabled + .broker-prd-switch-track::after,
.mortgage-tabs-modern .broker-prd-switch--grid .broker-prd-switch-input:disabled + .broker-prd-switch-track::after {
    background: #f9fafb;
}

.broker-potential-risk-search-grid .broker-prd-switch--grid .broker-prd-switch-input:checked:disabled + .broker-prd-switch-track,
.mortgage-tabs-modern .broker-prd-switch--grid .broker-prd-switch-input:checked:disabled + .broker-prd-switch-track {
    background: #62c8a5;
}

.broker-potential-risk-search-grid .broker-prd-switch--grid .broker-prd-switch-input:checked:disabled + .broker-prd-switch-track::after,
.mortgage-tabs-modern .broker-prd-switch--grid .broker-prd-switch-input:checked:disabled + .broker-prd-switch-track::after {
    transform: translateX(calc(2.9rem - 1.35rem));
    background: #fff;
}

.broker-potential-risk-search-grid .broker-prd-switch--grid.broker-prd-switch--readonly,
.mortgage-tabs-modern .broker-prd-switch--grid.broker-prd-switch--readonly {
    cursor: not-allowed;
    pointer-events: none;
}

.broker-potential-risk-search-grid .broker-prd-switch--grid.broker-prd-switch--disabled,
.mortgage-tabs-modern .broker-prd-switch--grid.broker-prd-switch--disabled {
    cursor: not-allowed;
    opacity: 0.55;
    pointer-events: none;
}

/* =============================================================================
 * Formularios admin — permisos / módulos
 * ============================================================================= */
.permission-admin-form-page.goal-scoring-admin-page,
.module-admin-form-page.goal-scoring-admin-page {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-bottom: 2rem;
}

.goal-scoring-catalog-page .permission-admin-form-header.goal-scoring-catalog-header-row,
.goal-scoring-catalog-page .module-admin-form-header.goal-scoring-catalog-header-row {
    margin: 0 0 1.25rem !important;
}

.goal-scoring-catalog-page .permission-admin-form-actions,
.goal-scoring-catalog-page .module-admin-form-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 0.75rem;
    margin-top: 1.5rem;
    width: 100%;
}

.goal-scoring-catalog-page .permission-admin-form-actions .btn-guardar,
.goal-scoring-catalog-page .permission-admin-form-actions .btn-cerrar,
.goal-scoring-catalog-page .module-admin-form-actions .btn-guardar,
.goal-scoring-catalog-page .module-admin-form-actions .btn-cerrar {
    background-color: #fff !important;
    border-radius: var(--soc-button-radius, 5px) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 10px 18px !important;
    box-shadow: none !important;
}

.goal-scoring-catalog-page .permission-admin-form-actions .btn-guardar,
.goal-scoring-catalog-page .module-admin-form-actions .btn-guardar {
    border: 1px solid #0fac78 !important;
    color: #0fac78 !important;
}

.goal-scoring-catalog-page .permission-admin-form-actions .btn-guardar:hover:not(:disabled):not(.disabled),
.goal-scoring-catalog-page .module-admin-form-actions .btn-guardar:hover:not(:disabled):not(.disabled) {
    background-color: #f3fffb !important;
    border-color: var(--color-verdeSecundario, #0fac78) !important;
    color: var(--color-verdeSecundario, #0fac78) !important;
    box-shadow: 0 0 0 2px rgba(15, 172, 120, 0.15) !important;
}

.goal-scoring-catalog-page .permission-admin-form-actions .btn-cerrar,
.goal-scoring-catalog-page .module-admin-form-actions .btn-cerrar {
    border: 1px solid #ff4f4f !important;
    color: #ff4f4f !important;
}

.goal-scoring-catalog-page .permission-admin-form-actions .btn-cerrar:hover:not(:disabled):not(.disabled),
.goal-scoring-catalog-page .module-admin-form-actions .btn-cerrar:hover:not(:disabled):not(.disabled) {
    background-color: #fff7f7 !important;
    border-color: #f31700 !important;
    color: #f31700 !important;
}

.goal-scoring-catalog-page .permission-admin-form-page .form-label,
.goal-scoring-catalog-page .module-admin-form-page .form-label.label-soc {
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--soc-title-text, #515151);
    margin-bottom: 0.35rem;
}

.permission-admin-form-page .goal-scoring-catalog-page .k-input,
.permission-admin-form-page .goal-scoring-catalog-page .k-dropdownlist,
.permission-admin-form-page .goal-scoring-catalog-page .k-picker,
.permission-admin-form-page .goal-scoring-catalog-page .k-textbox,
.module-admin-form-page .goal-scoring-catalog-page .k-input,
.module-admin-form-page .goal-scoring-catalog-page .k-dropdownlist,
.module-admin-form-page .goal-scoring-catalog-page .k-picker,
.module-admin-form-page .goal-scoring-catalog-page .k-textbox,
.module-admin-form-page .goal-scoring-catalog-page .k-numerictextbox {
    min-height: 38px !important;
    height: 38px !important;
    max-height: 38px !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
}

.permission-admin-form-page .goal-scoring-catalog-page .k-input-inner,
.module-admin-form-page .goal-scoring-catalog-page .k-input-inner {
    min-height: 100% !important;
    height: 100% !important;
    padding-block: 0.375rem !important;
    font-size: 0.875rem !important;
    line-height: 1.25 !important;
    box-sizing: border-box !important;
}

.permission-admin-form-page .goal-scoring-catalog-page .k-input-button,
.module-admin-form-page .goal-scoring-catalog-page .k-input-button {
    align-self: stretch;
}

.goal-scoring-catalog-page .k-input,
.goal-scoring-catalog-page .k-dropdownlist,
.goal-scoring-catalog-page .k-picker {
    border-radius: var(--soc-button-radius, 5px) !important;
}

/* Buscador avanzado — estilos por componente: *.razor.css en Pages/Components/Telerik AdvancedSearch.
   Global aquí: .advanced-search-card*, .advanced-search-results-grid, .advanced-search-link. */

.advanced-search-results-grid.k-grid {
    border: 1px solid #e5e7eb !important;
    border-radius: 6px;
    overflow: hidden;
}

.advanced-search-results-grid .k-grid-header .k-table-th {
    background: var(--color-primario, #006d4e) !important;
    color: #fff !important;
    font-weight: 700 !important;
    padding: 8px 8px !important;
}

.advanced-search-results-grid .k-grid-header .k-link,
.advanced-search-results-grid .k-grid-header .k-column-title {
    color: #fff !important;
}

.advanced-search-results-grid .k-filter-row .k-table-td {
    padding: 4px 6px !important;
    background: #fff !important;
}

.advanced-search-results-grid .k-filter-row .k-spin-button,
.advanced-search-results-grid .k-filter-row .k-input-spinner,
.advanced-search-results-grid .k-filter-row .k-numerictextbox .k-spin-button {
    display: none !important;
}

.advanced-search-results-grid .k-filter-row .k-numerictextbox .k-input-inner,
.advanced-search-results-grid .k-filter-row .k-input input {
    padding-right: 0.5rem !important;
}

.advanced-search-results-grid .k-filter-row input[type="number"] {
    -moz-appearance: textfield !important;
    appearance: textfield !important;
}

.advanced-search-results-grid .k-filter-row input[type="number"]::-webkit-outer-spin-button,
.advanced-search-results-grid .k-filter-row input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

.advanced-search-results-grid .k-table-td {
    padding: 6px 8px !important;
    font-size: 12px;
    vertical-align: middle;
}

.advanced-search-results-grid .k-table-tbody tr.k-alt {
    background: #f9fafb;
}

.advanced-search-results-grid .date-time-cell .time {
    font-size: 0.68rem;
    line-height: 1.15;
    color: #6b7280;
}

.advanced-search-results-grid .k-grid-pager {
    padding: 4px 8px !important;
}

.advanced-search-results-grid .k-filter-row .k-input,
.advanced-search-results-grid .k-filter-row .k-picker,
.advanced-search-results-grid .k-filter-row .k-dropdownlist,
.advanced-search-results-grid .k-filter-row .k-textbox,
.advanced-search-results-grid .k-filter-row .k-numerictextbox {
    width: 100% !important;
    min-height: 32px !important;
    box-sizing: border-box !important;
}

/* =============================================================================
 * Validaciones IA — Análisis de comprobantes de ingresos
 * ============================================================================= */
.document-analysis-page.goal-scoring-catalog-page.card.advanced-search-card {
    padding: 1.25rem !important;
    margin-top: 0 !important;
    margin-bottom: 1rem !important;
    border: none;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.document-analysis-page .doc-quality-trays-page-header.document-analysis-page__header {
    margin: 0 0 1.25rem !important;
    padding: 0 0 0.65rem !important;
    border-bottom: 1px solid #e5e7eb !important;
}

.document-analysis-page .doc-quality-trays-page-title {
    margin: 0 !important;
    line-height: 1.35;
}

.document-analysis-page .document-analysis-upload__file.form-control {
    flex: 0 0 500px !important;
    width: 500px !important;
    max-width: 100% !important;
    height: 38px !important;
    min-height: 38px;
    border-radius: 5px;
}

.document-analysis-page .document-analysis-upload__row {
    flex-wrap: nowrap !important;
    align-items: center !important;
}

.document-analysis-page .document-analysis-upload__file.form-control:focus {
    border-color: var(--color-primario, #006d4e) !important;
    box-shadow: 0 0 0 0.2rem rgba(0, 109, 78, 0.15) !important;
}

.document-analysis-page .document-analysis-upload__actions .btn-search,
.document-analysis-page .document-analysis-upload__actions .btn-clear {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex-shrink: 0 !important;
    white-space: nowrap !important;
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
}

.document-analysis-page .document-analysis-results__section.card.advanced-search-card {
    box-shadow: none !important;
    border: 1px solid #e5e7eb !important;
    margin-bottom: 0 !important;
}

.document-analysis-page .document-analysis-results__grid-telerik.advanced-search-results-grid.k-grid {
    border: 1px solid #e5e7eb !important;
    border-radius: 6px !important;
}

/* =============================================================================
 * Catálogo de módulos / permisos — grilla admin
 * ============================================================================= */
.modules-admin-page.goal-scoring-admin-page {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-bottom: 2rem;
}

.k-grid.goal-scoring-catalog-grid {
    font-size: 0.875rem;
}

.k-grid.goal-scoring-catalog-grid .k-grid-header-wrap {
    background: #ffffff !important;
}

.k-grid.goal-scoring-catalog-grid .k-grid-header thead > tr:not(.k-filter-row) > .k-table-th,
.k-grid.goal-scoring-catalog-grid .k-grid-header .k-table-thead > tr:not(.k-filter-row) > .k-table-th {
    background: #006d4e !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    border-color: rgba(255, 255, 255, 0.15) !important;
    padding: 8px 8px !important;
}

.k-grid.goal-scoring-catalog-grid .k-grid-header thead > tr:not(.k-filter-row) .k-link,
.k-grid.goal-scoring-catalog-grid .k-grid-header thead > tr:not(.k-filter-row) .k-column-title,
.k-grid.goal-scoring-catalog-grid .k-grid-header .k-table-thead > tr:not(.k-filter-row) .k-link,
.k-grid.goal-scoring-catalog-grid .k-grid-header .k-table-thead > tr:not(.k-filter-row) .k-column-title {
    color: #ffffff !important;
}

.k-grid.goal-scoring-catalog-grid .k-filter-row > .k-table-td,
.k-grid.goal-scoring-catalog-grid .k-filter-row > .k-table-th,
.k-grid.goal-scoring-catalog-grid .k-grid-filter-row > .k-table-td,
.k-grid.goal-scoring-catalog-grid .k-grid-filter-row > .k-table-th {
    background: #ffffff !important;
    color: #212529 !important;
    border-color: #e5e7eb !important;
    padding: 4px 6px !important;
    vertical-align: middle !important;
}

.k-grid.goal-scoring-catalog-grid .k-filter-row .k-input,
.k-grid.goal-scoring-catalog-grid .k-filter-row .k-picker,
.k-grid.goal-scoring-catalog-grid .k-filter-row .k-dropdownlist,
.k-grid.goal-scoring-catalog-grid .k-filter-row .k-textbox,
.k-grid.goal-scoring-catalog-grid .k-filter-row .k-numerictextbox {
    width: 100% !important;
    min-height: 38px !important;
    height: 38px !important;
    max-height: 38px !important;
    background: #fff !important;
    border: 1px solid #ced4da !important;
    border-radius: 5px !important;
    box-sizing: border-box !important;
}

.k-grid.goal-scoring-catalog-grid .k-filter-row .k-input-inner {
    height: 100% !important;
    min-height: 100% !important;
    padding-block: 0.375rem !important;
    font-size: 0.875rem !important;
    color: #212529 !important;
}

.k-grid.goal-scoring-catalog-grid .k-filter-row .k-spin-button,
.k-grid.goal-scoring-catalog-grid .k-filter-row .k-input-spinner,
.k-grid.goal-scoring-catalog-grid .k-filter-row .k-numerictextbox .k-spin-button {
    display: none !important;
}

.k-grid.goal-scoring-catalog-grid .k-filter-row input[type="number"] {
    -moz-appearance: textfield !important;
    appearance: textfield !important;
}

.k-grid.goal-scoring-catalog-grid .k-grid-content tr.k-alt {
    background: #f9fafb !important;
}

.k-grid.goal-scoring-catalog-grid .k-grid-content tr:hover {
    background: #f2f8f5 !important;
}

.k-grid.goal-scoring-catalog-grid .k-grid-content td {
    border-color: #eef2f6 !important;
    vertical-align: middle !important;
}

.k-grid.goal-scoring-catalog-grid .k-grid-pager {
    border-top: 1px solid #e5e7eb !important;
    background: #fff !important;
}

/* =============================================================================
 * Permisos por rol
 * ============================================================================= */
.role-permissions-admin-page.goal-scoring-admin-page {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-bottom: 2rem;
}

.role-permissions-admin-page .role-permissions-admin-card.goal-scoring-catalog-page.card.advanced-search-card {
    padding: 1.25rem !important;
    margin-top: 0 !important;
    margin-bottom: 1rem !important;
}

.role-permissions-admin-page .role-permissions-page-header.advanced-search-card-header {
    margin-bottom: 1.25rem;
    padding-bottom: 0.65rem;
    border-bottom: 1px solid #e5e7eb;
}

.role-permissions-admin-page .role-permissions-page-header .doc-quality-trays-page-title {
    margin: 0 0 0.35rem;
}

.role-permissions-admin-page .role-permissions-filters-panel {
    margin-bottom: 1.25rem;
    padding: 1rem 1.25rem;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    box-sizing: border-box;
}

.role-permissions-admin-page .role-permissions-filters-panel .form-label.label-soc {
    margin-bottom: 0.35rem;
}

.role-permissions-admin-page .role-permissions-filters-panel .k-input,
.role-permissions-admin-page .role-permissions-filters-panel .k-dropdownlist,
.role-permissions-admin-page .role-permissions-filters-panel .k-picker,
.role-permissions-admin-page .role-permissions-filters-panel .k-textbox {
    width: 100% !important;
    min-height: 38px !important;
    height: 38px !important;
    max-height: 38px !important;
    box-sizing: border-box !important;
    border-radius: var(--soc-button-radius, 5px) !important;
    background: #fff !important;
}

.role-permissions-admin-page .role-permissions-filters-panel .k-input-inner {
    min-height: 100% !important;
    height: 100% !important;
    padding-block: 0.375rem !important;
    padding-inline: 0.65rem !important;
    font-size: 0.875rem !important;
}

.role-permissions-admin-page .role-permissions-toolbar-actions.module-admin-form-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    gap: 0.75rem;
    margin-top: 1rem;
    padding-top: 0.75rem;
    border-top: 1px solid #e5e7eb;
}

.role-permissions-admin-page .role-permissions-pending-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.75rem;
    border-radius: 999px;
    background: #fff7ed;
    color: #b45309;
    font-size: 0.875rem;
    font-weight: 600;
}

.role-permissions-admin-page .role-permissions-summary {
    color: #6c757d;
    font-size: 0.875rem;
    margin-bottom: 1rem;
}

.role-permissions-admin-page .role-permissions-full-access-banner {
    border-left: 4px solid #006d4e;
    margin-bottom: 1rem;
}

.role-permissions-admin-page .role-permissions-panels-scroll {
    max-height: calc(100vh - 22rem);
    overflow-y: auto;
    padding-right: 0.25rem;
}

.role-permissions-admin-page .role-permissions-module-section {
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #e5e7eb;
}

.role-permissions-admin-page .role-permissions-module-section:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
}

.role-permissions-admin-page .role-permissions-submodule-card {
    border: 1px solid #e8efec;
    border-radius: 6px;
    background: #f8faf9;
    padding: 0.75rem;
}

.role-permissions-admin-page .role-permissions-module-header,
.role-permissions-admin-page .role-permissions-submodule-header {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem 0.75rem;
    margin: 0;
}

.role-permissions-admin-page .role-permissions-module-header {
    margin-bottom: 0.5rem;
    padding: 0.5rem 0;
}

.role-permissions-admin-page .role-permissions-module-title {
    flex: 1 1 auto;
    min-width: 0;
    font-weight: 700;
    font-size: 1rem;
    color: var(--soc-title-text, #515151);
}

.role-permissions-admin-page .role-permissions-submodule-title {
    flex: 1 1 auto;
    min-width: 0;
    font-weight: 600;
    font-size: 0.95rem;
    color: var(--soc-title-text, #515151);
}

.role-permissions-admin-page .role-permissions-count-badge {
    flex: 0 0 auto;
    font-size: 0.8rem;
    color: #5f6f6b;
    background: #eef7f3;
    padding: 0.15rem 0.5rem;
    border-radius: 999px;
}

.role-permissions-admin-page .role-permissions-node-checkbox.custom-circle {
    width: 25px !important;
    height: 25px !important;
    border-radius: 50% !important;
    padding: 3px !important;
    margin: 0;
    flex: 0 0 auto;
    cursor: pointer;
}

.role-permissions-admin-page .role-permissions-node-checkbox.custom-circle:checked {
    background-color: #0fac78 !important;
    border-color: #0fac78 !important;
}

.role-permissions-admin-page .role-permissions-options-list {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin: 0;
    padding: 0;
}

.role-permissions-admin-page .role-permissions-options-list--module-root {
    margin-bottom: 0.5rem;
    padding-left: 1.75rem;
}

.role-permissions-admin-page .role-permissions-option-row {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0.625rem;
    width: 100%;
    box-sizing: border-box;
    padding: 0.5rem 0.625rem;
    margin: 0;
    border-radius: 6px;
    cursor: pointer;
}

.role-permissions-admin-page .role-permissions-option-row:hover {
    background: #f2f8f5;
}

.role-permissions-admin-page .role-permissions-option-label {
    flex: 1 1 auto;
    min-width: 0;
    color: #212529;
    font-size: 0.875rem;
    line-height: 1.4;
    word-break: break-word;
}

.role-permissions-admin-page .role-permissions-menu-badge {
    flex: 0 0 auto;
    margin-left: auto;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    background: #e6f4ef;
    color: #006d4e;
    padding: 0.1rem 0.45rem;
    border-radius: 4px;
    white-space: nowrap;
    font-weight: 600;
}

.role-permissions-admin-page .role-permissions-submodules-group {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
    padding-left: 1.75rem;
}

.role-permissions-admin-page .role-permissions-submodules-nested {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-top: 0.625rem;
    padding-left: 0.5rem;
}

@media (max-width: 768px) {
    .role-permissions-admin-page .role-permissions-options-list--module-root,
    .role-permissions-admin-page .role-permissions-submodules-group {
        padding-left: 0.75rem;
    }
}

/* =============================================================================
 * Overrides Telerik/Kendo (cargar soc.css después del theme Kendo)
 * ============================================================================= */

/* Encabezados de grillas: salto de línea (sin ellipsis) — todas las tablas Telerik */
.k-grid .k-grid-header-wrap,
.k-grid .k-grid-header,
.k-grid .k-grid-header-table {
    overflow: visible !important;
}

.k-grid .k-grid-header thead > tr:not(.k-filter-row) > .k-table-th,
.k-grid .k-grid-header .k-table-thead > tr:not(.k-filter-row) > .k-table-th,
.k-grid .k-grid-header tr:not(.k-filter-row) > .k-table-th,
.k-grid .k-grid-header th.k-table-th {
    overflow: visible !important;
    vertical-align: middle;
}

.k-grid .k-grid-header thead > tr:not(.k-filter-row) .k-cell-inner,
.k-grid .k-grid-header .k-table-thead > tr:not(.k-filter-row) .k-cell-inner,
.k-grid .k-grid-header tr:not(.k-filter-row) .k-cell-inner {
    white-space: normal !important;
    height: auto;
    align-items: center;
    overflow: visible !important;
    max-width: none !important;
}

.k-grid .k-grid-header thead > tr:not(.k-filter-row) .k-link,
.k-grid .k-grid-header thead > tr:not(.k-filter-row) .k-column-title,
.k-grid .k-grid-header .k-table-thead > tr:not(.k-filter-row) .k-link,
.k-grid .k-grid-header .k-table-thead > tr:not(.k-filter-row) .k-column-title,
.k-grid .k-grid-header tr:not(.k-filter-row) .k-link,
.k-grid .k-grid-header tr:not(.k-filter-row) .k-column-title {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: break-word;
    word-break: normal;
    line-height: 1.2;
    hyphens: auto;
}

/* DuplicateCreditsTelerik: scroll horizontal — anula overflow:visible global en header-wrap */
.duplicate-orders-modal .k-grid.duplicate-credits-grid .k-grid-header-wrap,
.duplicate-orders-modal .k-grid.duplicate-credits-grid .k-grid-header,
.duplicate-orders-modal .k-grid.duplicate-credits-grid .k-grid-header-table,
.k-grid.k-grid-bitacora.duplicate-credits-grid .k-grid-header-wrap,
.k-grid.k-grid-bitacora.duplicate-credits-grid .k-grid-header,
.k-grid.k-grid-bitacora.duplicate-credits-grid .k-grid-header-table {
    overflow: hidden !important;
}

/* Operations trays: scroll horizontal — anula overflow:visible global en header-wrap */
.operations-trays-page .k-grid.operations-tray-grid .k-grid-header-wrap,
.operations-trays-page .k-grid.operations-tray-grid .k-grid-header,
.operations-trays-page .k-grid.operations-tray-grid .k-grid-header-table,
.k-grid.operations-tray-grid .k-grid-header-wrap,
.k-grid.operations-tray-grid .k-grid-header,
.k-grid.operations-tray-grid .k-grid-header-table {
    overflow: hidden !important;
}

/* PendingCreditPotentialRisk: scroll horizontal — anula overflow:visible global en header-wrap */
.pending-credit-potential-risk-grid-host .k-grid .k-grid-header-wrap,
.pending-credit-potential-risk-grid-host .k-grid .k-grid-header,
.pending-credit-potential-risk-grid-host .k-grid .k-grid-header-table,
.k-grid.broker-potential-risk-search-grid.pending-credit-potential-risk-grid .k-grid-header-wrap,
.k-grid.broker-potential-risk-search-grid.pending-credit-potential-risk-grid .k-grid-header,
.k-grid.broker-potential-risk-search-grid.pending-credit-potential-risk-grid .k-grid-header-table {
    overflow: hidden !important;
}

.k-grid.broker-potential-risk-search-grid.pending-credit-potential-risk-grid .k-grid-header thead > tr:not(.k-filter-row) > .k-table-th,
.k-grid.broker-potential-risk-search-grid.pending-credit-potential-risk-grid .k-grid-header .k-table-thead > tr:not(.k-filter-row) > .k-table-th,
.k-grid.broker-potential-risk-search-grid.pending-credit-potential-risk-grid .k-grid-header th.broker-potential-risk-header-wrap {
    overflow: hidden !important;
    max-width: 100%;
    box-sizing: border-box;
}

.k-grid.broker-potential-risk-search-grid.pending-credit-potential-risk-grid .k-grid-header th.broker-potential-risk-header-wrap .k-cell-inner {
    overflow: hidden !important;
    max-width: 100% !important;
}

.k-grid.broker-potential-risk-search-grid.pending-credit-potential-risk-grid .broker-potential-risk-header-lines {
    overflow: hidden !important;
    max-width: 100%;
    box-sizing: border-box;
}

/* CustomerPotentialRiskCredits: mismo fix en detalle acreditado y detalle pedido marcado */
.customer-potential-risk-credits-grid-host .k-grid.broker-potential-risk-search-grid.customer-potential-risk-orders-grid .k-grid-header-wrap,
.customer-potential-risk-credits-grid-host .k-grid.broker-potential-risk-search-grid.customer-potential-risk-orders-grid .k-grid-header,
.customer-potential-risk-credits-grid-host .k-grid.broker-potential-risk-search-grid.customer-potential-risk-orders-grid .k-grid-header-table,
.k-grid.broker-potential-risk-search-grid.customer-potential-risk-orders-grid .k-grid-header-wrap,
.k-grid.broker-potential-risk-search-grid.customer-potential-risk-orders-grid .k-grid-header,
.k-grid.broker-potential-risk-search-grid.customer-potential-risk-orders-grid .k-grid-header-table {
    overflow: hidden !important;
}

.k-grid.broker-potential-risk-search-grid.customer-potential-risk-orders-grid .k-grid-header th.broker-potential-risk-header-wrap,
.k-grid.broker-potential-risk-search-grid.customer-potential-risk-orders-grid .broker-potential-risk-header-lines {
    overflow: hidden !important;
    max-width: 100%;
    box-sizing: border-box;
}

/* BrokerPotentialRiskResult: encabezados centrados (incluye el grupo DPS) */
.k-grid.broker-potential-risk-result-grid .k-grid-header tr:not(.k-filter-row) > .k-table-th {
    text-align: center !important;
}

.k-grid.broker-potential-risk-result-grid .k-grid-header tr:not(.k-filter-row) .k-cell-inner,
.k-grid.broker-potential-risk-result-grid .k-grid-header tr:not(.k-filter-row) .k-link {
    justify-content: center !important;
    text-align: center !important;
}

.k-grid.broker-potential-risk-result-grid .k-grid-header tr:not(.k-filter-row) .k-column-title {
    text-align: center !important;
}

/* Encabezado de dos filas: solo se redondean las esquinas exteriores */
.k-grid.broker-potential-risk-result-grid .k-grid-header tr:first-child > .k-table-th:last-child {
    border-bottom-right-radius: 0;
}

.k-grid.broker-potential-risk-result-grid .k-grid-header tr:not(.k-filter-row) + tr:not(.k-filter-row) > .k-table-th {
    border-radius: 0;
}

.k-grid.broker-potential-risk-result-grid .k-grid-header tr:not(.k-filter-row) + tr:not(.k-filter-row) > .k-table-th:last-child {
    border-bottom-right-radius: 5px;
}

/* Tablas HTML (no Telerik) */
table thead th {
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    overflow-wrap: break-word;
    word-break: normal;
    line-height: 1.2;
    hyphens: auto;
    vertical-align: middle;
}

.k-grid .tray-pedido-link,
.k-grid a.tray-pedido-link,
.k-grid span.tray-pedido-link,
.k-grid .advanced-search-link,
.k-grid a.advanced-search-link,
.k-grid .shared-search-order-link,
.k-grid a.shared-search-order-link,
.k-grid .pyme-order-link,
.k-grid a.pyme-order-link,
.k-grid .pyme-action-link,
.k-grid a.pyme-action-link,
.k-grid .auto-order-link,
.k-grid a.auto-order-link,
.k-grid .auto-action-link,
.k-grid a.auto-action-link,
.advanced-search-link,
a.advanced-search-link,
.fastsearch-link,
a.fastsearch-link,
.tray-pedido-link,
a.tray-pedido-link,
span.tray-pedido-link {
    color: var(--color-verdeClaro, #4ed176) !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    cursor: pointer;
}

.k-grid .tray-pedido-link:hover,
.k-grid a.tray-pedido-link:hover,
.k-grid .advanced-search-link:hover,
.k-grid a.advanced-search-link:hover,
.k-grid .shared-search-order-link:hover,
.k-grid a.shared-search-order-link:hover,
.k-grid .pyme-order-link:hover,
.k-grid a.pyme-order-link:hover,
.k-grid .pyme-action-link:hover,
.k-grid .auto-order-link:hover,
.k-grid a.auto-order-link:hover,
.advanced-search-link:hover,
a.advanced-search-link:hover,
.fastsearch-link:hover,
a.fastsearch-link:hover,
.tray-pedido-link:hover,
a.tray-pedido-link:hover {
    color: var(--color-verdeClaro, #4ed176) !important;
    text-decoration: underline !important;
    text-underline-offset: 2px;
}

/* SocTooltip: globo fijo #soc-fixed-tooltip (JS, position:fixed — grids/tablas con overflow). */
#soc-fixed-tooltip.soc-fixed-tooltip,
.soc-fixed-tooltip {
    position: fixed !important;
    z-index: 2147483646 !important;
    box-sizing: border-box;
    display: none;
    pointer-events: none;
    font-size: 0.8125rem;
    line-height: 1.35;
    font-weight: 400;
    padding: 0.5rem 0.65rem;
    border-radius: 6px;
    background: #ecfdf5;
    color: var(--color-primario, #006d4e);
    border: 1px solid rgba(0, 109, 78, 0.22);
    box-shadow: 0 2px 10px rgba(0, 109, 78, 0.1);
    text-align: center;
    white-space: normal;
    max-width: min(280px, 70vw);
    width: max-content;
}

#soc-fixed-tooltip.soc-fixed-tooltip.soc-tooltip-folio-multiline,
.soc-fixed-tooltip.soc-tooltip-folio-multiline {
    max-width: 15rem;
    text-wrap: balance;
}

#soc-fixed-tooltip.soc-fixed-tooltip.broker-offices-termination-tooltip,
.soc-fixed-tooltip.broker-offices-termination-tooltip {
    text-align: left;
    max-width: min(320px, 75vw);
    white-space: normal;
}

#soc-fixed-tooltip.soc-fixed-tooltip.broker-offices-termination-tooltip .broker-offices-termination-tooltip-line,
.soc-fixed-tooltip.broker-offices-termination-tooltip .broker-offices-termination-tooltip-line {
    display: block;
    margin: 0 0 0.25rem;
    word-break: break-word;
    overflow-wrap: anywhere;
}

#soc-fixed-tooltip.soc-fixed-tooltip.broker-offices-termination-tooltip .broker-offices-termination-tooltip-line:last-child,
.soc-fixed-tooltip.broker-offices-termination-tooltip .broker-offices-termination-tooltip-line:last-child {
    margin-bottom: 0;
}

#soc-fixed-tooltip.soc-fixed-tooltip::before,
.soc-fixed-tooltip::before {
    content: "";
    position: absolute;
    left: var(--soc-tip-arrow-left, 50%);
    transform: translateX(-50%);
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    filter: drop-shadow(0 0 0.65px rgba(0, 109, 78, 0.45)) drop-shadow(0 0 0.35px rgba(0, 109, 78, 0.3));
}

/* Colita: tooltip debajo del target → flecha arriba */
#soc-fixed-tooltip.soc-fixed-tooltip.soc-fixed-tooltip--below::before,
.soc-fixed-tooltip.soc-fixed-tooltip--below::before {
    bottom: 100%;
    top: auto;
    margin-bottom: -1px;
    border-top: none;
    border-bottom: 7px solid #ecfdf5;
}

/* Colita: tooltip arriba del target → flecha abajo */
#soc-fixed-tooltip.soc-fixed-tooltip.soc-fixed-tooltip--above::before,
.soc-fixed-tooltip.soc-fixed-tooltip--above::before {
    top: 100%;
    bottom: auto;
    margin-top: -1px;
    border-bottom: none;
    border-top: 7px solid #ecfdf5;
}

#soc-fixed-tooltip.soc-fixed-tooltip.soc-fixed-tooltip--left::before,
.soc-fixed-tooltip.soc-fixed-tooltip--left::before {
    left: 100%;
    top: var(--soc-tip-arrow-top, 50%);
    bottom: auto;
    transform: translateY(-50%);
    margin-left: -1px;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 7px solid #ecfdf5;
    border-right: none;
}

#soc-fixed-tooltip.soc-fixed-tooltip.soc-fixed-tooltip--right::before,
.soc-fixed-tooltip.soc-fixed-tooltip--right::before {
    left: auto;
    right: 100%;
    top: var(--soc-tip-arrow-top, 50%);
    bottom: auto;
    transform: translateY(-50%);
    margin-right: -1px;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-right: 7px solid #ecfdf5;
    border-left: none;
}

/* ReadonlyHintTrigger: disparador reutilizable; globo fijo #sicafi-cpro-readonly-tooltip (JS, cualquier tabla/grid). */
.soc-readonly-hint-trigger {
    display: inline-block;
    max-width: 100%;
    vertical-align: baseline;
    cursor: pointer;
    outline: none;
}

#sicafi-cpro-readonly-tooltip.sicafi-cpro-readonly-tooltip,
.sicafi-cpro-readonly-tooltip {
    position: fixed !important;
    z-index: 2147483645 !important;
    box-sizing: border-box;
    display: none;
    pointer-events: none;
    font-size: 0.8125rem;
    line-height: 1.35;
    font-weight: 400;
    padding: 0.5rem 0.65rem;
    border-radius: 6px;
    background: #ecfdf5;
    color: var(--color-primario, #006d4e);
    border: 1px solid rgba(0, 109, 78, 0.22);
    box-shadow: 0 2px 10px rgba(0, 109, 78, 0.1);
    text-align: center;
    white-space: normal;
    max-width: min(280px, 70vw);
    width: max-content;
    min-width: 11rem;
}

#sicafi-cpro-readonly-tooltip.sicafi-cpro-readonly-tooltip::before,
.sicafi-cpro-readonly-tooltip::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 100%;
    transform: translateX(-50%);
    margin-bottom: -1px;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: none;
    border-bottom: 7px solid #ecfdf5;
    filter: drop-shadow(0 0 0.65px rgba(0, 109, 78, 0.45)) drop-shadow(0 0 0.35px rgba(0, 109, 78, 0.3));
}

#sicafi-cpro-readonly-tooltip.sicafi-cpro-readonly-tooltip.sicafi-cpro-readonly-tooltip--above::before,
.sicafi-cpro-readonly-tooltip.sicafi-cpro-readonly-tooltip--above::before {
    bottom: auto;
    top: 100%;
    margin-bottom: 0;
    margin-top: -1px;
    border-top: 7px solid #ecfdf5;
    border-bottom: none;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
}

.k-grid a.duplicate-credits-pedido-link,
.k-grid a.duplicate-credits-pedido-link:visited,
.duplicate-orders-modal .k-grid-bitacora a.duplicate-credits-pedido-link,
.duplicate-orders-modal .k-grid-bitacora a.duplicate-credits-pedido-link:visited {
    color: var(--color-verdeClaro, #4ed176) !important;
    font-weight: 700 !important;
}

.k-grid a.duplicate-credits-pedido-link:hover,
.duplicate-orders-modal .k-grid-bitacora a.duplicate-credits-pedido-link:hover {
    color: var(--color-verdeClaro, #4ed176) !important;
}

.advanced-search-card a.advanced-search-link,
.advanced-search-card .k-grid a.advanced-search-link,
.advanced-search-card .k-table-td a.advanced-search-link {
    color: var(--color-verdeClaro, #4ed176) !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

.advanced-search-card a.advanced-search-link:hover,
.advanced-search-card .k-grid a.advanced-search-link:hover {
    color: var(--color-verdeClaro, #4ed176) !important;
    text-decoration: underline !important;
    text-underline-offset: 2px;
}

.k-grid .overdue-portfolio-view-btn,
.k-grid .overdue-portfolio-clients-view-btn {
    background-color: transparent !important;
    border: 1.5px solid var(--color-verdeSecundario, #0fac78) !important;
    border-radius: 10px !important;
    color: var(--color-verdeSecundario, #0fac78) !important;
    box-shadow: none !important;
}

.k-grid .overdue-portfolio-view-btn .bx,
.k-grid .overdue-portfolio-view-btn .bx::before,
.k-grid .overdue-portfolio-clients-view-btn .bx,
.k-grid .overdue-portfolio-clients-view-btn .bx::before {
    color: var(--color-verdeSecundario, #0fac78) !important;
}

.k-grid .overdue-portfolio-view-btn:hover:not(:disabled),
.k-grid .overdue-portfolio-clients-view-btn:hover:not(:disabled) {
    background-color: #f3fffb !important;
    border-color: var(--color-verdeSecundario, #0fac78) !important;
    color: var(--color-verdeSecundario, #0fac78) !important;
    box-shadow: 0 0 0 2px rgba(15, 172, 120, 0.15) !important;
}

.k-button,
.k-button.k-button-sm,
.k-button.k-button-md,
.k-button.k-button-lg,
button.btn:not(.overdue-portfolio-view-btn):not(.overdue-portfolio-clients-view-btn),
a.btn:not(.overdue-portfolio-view-btn):not(.overdue-portfolio-clients-view-btn),
.btn-aceptar,
.btn-cerrar,
.btn-guardar,
.btn-cancelar,
.btn-regresar,
.btn-back,
.btn-editar,
.goal-scoring-toolbar__add-btn.k-button,
.goal-scoring-catalog-page .goal-scoring-toolbar__add-btn.k-button {
    border-radius: var(--soc-button-radius, 5px) !important;
}

.goal-scoring-catalog-grid .permissions-grid-actions .k-button.soc-grid-icon-btn,
.goal-scoring-catalog-grid .modules-grid-actions .k-button.soc-grid-icon-btn,
.permissions-grid-actions .k-button.soc-grid-icon-btn,
.modules-grid-actions .k-button.soc-grid-icon-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 36px !important;
    min-height: 36px !important;
    width: 36px !important;
    height: 36px !important;
    padding: 0 !important;
    background: #fff !important;
    background-image: none !important;
    border-radius: var(--soc-button-radius, 5px) !important;
    border-width: 1px !important;
    border-style: solid !important;
    box-shadow: none !important;
}

.goal-scoring-catalog-grid .permissions-grid-actions .k-button.soc-grid-icon-btn .k-button-text {
    display: none !important;
}

.goal-scoring-catalog-grid .permissions-grid-actions .k-button.soc-grid-icon-btn--edit,
.goal-scoring-catalog-grid .modules-grid-actions .k-button.soc-grid-icon-btn--edit {
    background: #fff !important;
    border-color: #0fac78 !important;
    color: #0fac78 !important;
}

.goal-scoring-catalog-grid .permissions-grid-actions .k-button.soc-grid-icon-btn--edit .k-svg-icon,
.goal-scoring-catalog-grid .permissions-grid-actions .k-button.soc-grid-icon-btn--edit .k-button-icon,
.goal-scoring-catalog-grid .modules-grid-actions .k-button.soc-grid-icon-btn--edit .k-svg-icon,
.goal-scoring-catalog-grid .modules-grid-actions .k-button.soc-grid-icon-btn--edit .k-button-icon {
    color: #0fac78 !important;
}

.goal-scoring-catalog-grid .permissions-grid-actions .k-button.soc-grid-icon-btn--edit:hover,
.goal-scoring-catalog-grid .permissions-grid-actions .k-button.soc-grid-icon-btn--edit.k-hover,
.goal-scoring-catalog-grid .modules-grid-actions .k-button.soc-grid-icon-btn--edit:hover,
.goal-scoring-catalog-grid .modules-grid-actions .k-button.soc-grid-icon-btn--edit.k-hover {
    background: rgba(15, 172, 120, 0.12) !important;
}

.goal-scoring-catalog-grid .permissions-grid-actions .k-button.soc-grid-icon-btn--delete,
.goal-scoring-catalog-grid .modules-grid-actions .k-button.soc-grid-icon-btn--delete {
    background: #fff !important;
    border-color: #ff4f4f !important;
    color: #ff4f4f !important;
}

.goal-scoring-catalog-grid .permissions-grid-actions .k-button.soc-grid-icon-btn--delete .k-svg-icon,
.goal-scoring-catalog-grid .permissions-grid-actions .k-button.soc-grid-icon-btn--delete .k-button-icon,
.goal-scoring-catalog-grid .modules-grid-actions .k-button.soc-grid-icon-btn--delete .k-svg-icon,
.goal-scoring-catalog-grid .modules-grid-actions .k-button.soc-grid-icon-btn--delete .k-button-icon {
    color: #ff4f4f !important;
}

.goal-scoring-catalog-grid .permissions-grid-actions .k-button.soc-grid-icon-btn--delete:hover,
.goal-scoring-catalog-grid .permissions-grid-actions .k-button.soc-grid-icon-btn--delete.k-hover,
.goal-scoring-catalog-grid .modules-grid-actions .k-button.soc-grid-icon-btn--delete:hover,
.goal-scoring-catalog-grid .modules-grid-actions .k-button.soc-grid-icon-btn--delete.k-hover {
    background: rgba(255, 79, 79, 0.12) !important;
}

/* =============================================================================
 * Modal inactividad de sesión (TelerikWindow en portal)
 * ============================================================================= */
.k-window.idle-session-window {
    border: none !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: 0 24px 64px rgba(15, 23, 42, 0.22) !important;
}

.idle-session-window .k-window-titlebar {
    background: #f2f0e4 !important;
    border-bottom: none !important;
    padding: 1.1rem 1.35rem !important;
}

.idle-session-window .k-window-titlebar-actions,
.idle-session-window .k-window-titlebar-action {
    display: none !important;
}

.idle-session-window .k-window-title {
    width: 100%;
    margin: 0;
    padding: 0;
}

.idle-session-window .k-window-content {
    padding: 1.35rem 1.5rem 1.5rem !important;
    background: #ffffff !important;
}

.idle-session-window .idle-session-window__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.idle-session-window .idle-session-window__header {
    display: flex;
    align-items: center;
    gap: 0.85rem;
}

.idle-session-window .idle-session-window__header-icon {
    font-size: 2.25rem;
    color: var(--color-primario, #006d4e);
    line-height: 1;
    flex-shrink: 0;
}

.idle-session-window .idle-session-window__title {
    font-size: 1.05rem;
    font-weight: 700;
    color: #2f3a40;
}

.idle-session-window .idle-session-window__message {
    margin: 0 0 1.5rem;
    font-size: 0.98rem;
    line-height: 1.45;
    color: #4b5563;
    max-width: 22rem;
}

.idle-session-window .idle-session-window__timer {
    position: relative;
    width: 9.5rem;
    height: 9.5rem;
    margin-bottom: 1.75rem;
}

.idle-session-window .idle-session-window__timer-svg {
    width: 100%;
    height: 100%;
    display: block;
}

.idle-session-window .idle-session-window__timer-track,
.idle-session-window .idle-session-window__timer-progress {
    fill: none;
    stroke-width: 8;
    stroke-linecap: round;
}

.idle-session-window .idle-session-window__timer-track {
    stroke: #e8ece9;
}

.idle-session-window .idle-session-window__timer-progress {
    stroke: var(--color-primario, #006d4e);
    transition: stroke-dashoffset 0.35s linear;
}

.idle-session-window .idle-session-window__timer-text {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: #374151;
    font-variant-numeric: tabular-nums;
}

.idle-session-window .idle-session-window__actions {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    width: 100%;
}

.idle-session-window .idle-session-window__btn.k-button {
    min-width: 9.5rem;
    min-height: 42px;
    padding: 0.55rem 1.35rem !important;
    border-radius: 10px !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}

.idle-session-window .idle-session-window__btn--logout.k-button,
.idle-session-window .idle-session-window__btn--logout.k-button.k-button-solid,
.idle-session-window .idle-session-window__btn--logout.k-button.k-button-md {
    background: #eef2f4 !important;
    border: 1px solid transparent !important;
    color: var(--color-primario, #006d4e) !important;
}

.idle-session-window .idle-session-window__btn--logout.k-button:hover,
.idle-session-window .idle-session-window__btn--logout.k-button.k-hover {
    background: #e4eaec !important;
    border-color: transparent !important;
    color: var(--color-primario, #006d4e) !important;
}

.idle-session-window .idle-session-window__btn--stay.k-button,
.idle-session-window .idle-session-window__btn--stay.k-button.k-button-solid-primary,
.idle-session-window .idle-session-window__btn--stay.k-button.k-button-solid,
.idle-session-window .idle-session-window__btn--stay.k-button.k-button-md {
    background: var(--color-primario, #006d4e) !important;
    border: 1px solid var(--color-primario, #006d4e) !important;
    color: #ffffff !important;
}

.idle-session-window .idle-session-window__btn--stay.k-button:hover,
.idle-session-window .idle-session-window__btn--stay.k-button.k-hover {
    background: #005a41 !important;
    border-color: #005a41 !important;
    color: #ffffff !important;
}

body:has(.idle-session-window.k-window) .k-overlay {
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    background: rgba(15, 23, 42, 0.28) !important;
}

.auditwatch-detail-window .k-window-titlebar-actions,
.auditwatch-detail-window .k-window-actions,
.auditwatch-day-hourly-modal .k-window-titlebar-actions,
.auditwatch-day-hourly-modal .k-window-actions,
.auditwatch-active-sessions-modal .k-window-titlebar-actions,
.auditwatch-active-sessions-modal .k-window-actions {
    display: flex;
    align-items: center;
    margin-left: auto;
}

.auditwatch-detail-window .k-window-titlebar-action,
.auditwatch-detail-window .k-window-actions .k-window-action,
.auditwatch-day-hourly-modal .k-window-titlebar-action,
.auditwatch-day-hourly-modal .k-window-actions .k-window-action,
.auditwatch-active-sessions-modal .k-window-titlebar-action,
.auditwatch-active-sessions-modal .k-window-actions .k-window-action {
    width: 28px;
    height: 28px;
    color: #334155;
}