﻿@media all {
    /******************************************************************
    estilosNet.css — Aplicaciones del Portal (plantilla.master)
    Contiene SOLO los estilos de app que NO se comparten con
    principal.aspx. Todo lo del contenido de la app queda acotado
    a #contenido_inside (dentro de #contenido) para no chocar con
    el marco responsivo, que vive en estilosResponsive.css.
    ******************************************************************/

    /******************************************************************
    CONTENIDO DE APP (#contenido_inside)
    ******************************************************************/

    #contenido_inside {
        min-width: 0;
        width: 100%;
        color: #004457;
        font-size: 13px;
    }

    /*TITULOS Y PÁRRAFOS*/
    #contenido_inside h1, #contenido_inside h2:not(.modal-title), #contenido_inside h3, #contenido_inside h4, #contenido_inside h5 {
        text-align: center;
        margin: 0px;
        padding: 0px;
    }

    #contenido_inside h1 {
        font-size: 22px;
    }

    #contenido_inside h2:not(.modal-title) {
        font-size: 18px;
    }

    #contenido_inside h3 {
        font-size: 16px;
    }

    #contenido_inside h4 {
        font-size: 14px;
    }

    #contenido_inside h5 {
        font-size: 12px;
    }

    #contenido_inside FIELDSET {
        border: 1px solid #004457;
        padding: 5px;
        margin: 0px;
    }

    #contenido_inside FIELDSET LEGEND {
        font-size: 14px;
        border: 1px solid #004457;
    }

    #contenido_inside P {
        margin: 0px;
        padding: 0px;
    }

    /*ENLACES*/
    #contenido_inside A {
        color: #666666;
        text-decoration: none;
        font-weight: bold;
        cursor: pointer !important;
    }



    #contenido_inside A:visited {
        color: #666666;
    }

    #contenido_inside A:active {
        color: #666666;
    }

    #contenido_inside A:hover {
        color: #004457;
        text-decoration: none;
        text-decoration: underline;
    }

    #contenido_inside OL {
        margin: 0px;
        padding: 0px;
    }

    #contenido_inside DL {
        margin: 0px;
        padding: 0px;
    }

    #contenido_inside DL DT {
    }

    #contenido_inside DL DT DD {
    }

    /*FORMULARIOS*/
    #contenido_inside INPUT[type=text], #contenido_inside INPUT[type=password] {
        font-family: "Century Gothic", Verdana, Arial, Helvetica-Normal !important;
        font-size: 14px;
        border: 1px solid #004457;
        background-color: #FFFFFF;
        border-radius: 5px;
        -moz-border-radius: 5px;
    }

    #contenido_inside INPUT.sololectura {
        font-family: "Century Gothic", Verdana, Arial, Helvetica-Normal;
        font-size: 14px;
        border: 1px solid #DDCB11;
        background-color: #FFFFFF;
        border-radius: 5px;
        -moz-border-radius: 5px;
    }

#contenido_inside .botonDes {
        color: #888;
    } #contenido_inside SELECT {
        font-family: "Century Gothic", Verdana, Arial, Helvetica-Normal;
        font-size: 11px;
        border: 1px solid #004457;
        background-color: #FFFFFF;
        border-radius: 5px;
        -moz-border-radius: 5px;
    } #contenido_inside SELECT.sololectura {
        font-family: "Century Gothic", Verdana, Arial, Helvetica-Normal;
        font-size: 11px;
        border: 0.0626em solid #DDCB11;
        background-color: #E2EDEF;
        border-radius: 5px;
        -moz-border-radius: 5px;
    } #contenido_inside TEXTAREA:not(.select2-search__field) {
        font-family: "Century Gothic", Verdana, Arial, Helvetica-Normal;
        font-size: 11px;
        border: 1px solid #004457;
        background-color: #FFFFFF;
        border-radius: 5px;
        -moz-border-radius: 5px;
    } #contenido_inside TEXTAREA:not(.select2-search__field).sololectura {
        font-family: "Century Gothic", Verdana, Arial, Helvetica-Normal;
        font-size: 11px;
        border: 1px solid #DDCB11;
        background-color: #FFFFFF;
        border-radius: 5px;
        -moz-border-radius: 5px;
    }
        /*TABLA FORMULARIO*/
        #contenido_inside TABLE.tabla_formulario {
        background-color: #FFFFFF;
        margin: 1em auto;
        border: thin solid #004457;
        text-align: left;
        -webkit-border-bottom-left-radius: 7px;
        -webkit-border-bottom-right-radius: 7px;
        -moz-border-radius-bottomleft: 7px;
        -moz-border-radius-bottomright: 7px;
        border-bottom-left-radius: 7px;
        border-bottom-right-radius: 7px;
    }
        /*TABLADATOS*/
        #contenido_inside TABLE.tabladatos {
        margin: 0px auto;
        border-collapse: collapse;
        background-color: #004457;
        -webkit-border-top-left-radius: 7px;
        -webkit-border-top-right-radius: 7px;
        -moz-border-radius-topleft: 7px;
        -moz-border-radius-topright: 7px;
        border-top-left-radius: 7px;
        border-top-right-radius: 7px;
    } #contenido_inside TABLE.tabladatos > THEAD > TR {
        color: #FFFFFF;
        text-align: center;
        border: 0px;
        text-transform: uppercase;
        height: 22px;
        font-weight: bold;
    } #contenido_inside TABLE.tabladatos > THEAD > TR > TD {
        color: #FFFFFF;
        text-align: center;
        vertical-align: middle;
        border: 0px;
        text-transform: uppercase;
        height: 22px;
        font-weight: bold;
    } #contenido_inside TABLE.tabladatos > THEAD > TR > TD.fondoamarillo, #contenido_inside TABLE.tabladatos > THEAD > TR > TD.aprobadaJefe, #contenido_inside TABLE.tabladatos > THEAD > TR.fondoamarillo > TD, #contenido_inside TABLE.tabladatos > THEAD > TR.aprobadaJefe > TD {
        color: #212529;
    } #contenido_inside TABLE.tabladatos > THEAD > TR:not(.fondoamarillo):not(.aprobadaJefe) > TD:not(.fondoamarillo):not(.aprobadaJefe) label {
        color: rgba(255, 255, 255, 0.85);
        font-weight: normal;
        text-transform: none;
    } #contenido_inside TABLE.tabladatos > THEAD > TR:not(.fondoamarillo):not(.aprobadaJefe) > TD:not(.fondoamarillo):not(.aprobadaJefe) INPUT[type=checkbox] {
        accent-color: #DDCB11;
    } #contenido_inside TABLE.tabladatos > THEAD > TR > TD:has(INPUT[type=checkbox]) input[type=checkbox], #contenido_inside TABLE.tabladatos > THEAD > TR > TD:has(INPUT[type=checkbox]) label {
        vertical-align: middle;
    } #contenido_inside TABLE.tabladatos > THEAD > TR > TD:has(INPUT[type=submit]) > p, #contenido_inside TABLE.tabladatos > THEAD > TR > TD:has(INPUT[type=button]) > p {
        display: flex;
        align-items: center;
        justify-content: center;
    } #contenido_inside TABLE.tabladatos > TFOOT > TR {
        border-bottom: 1px solid #004457;
        text-align: right;
        background-color: #ffffff;
    } #contenido_inside TABLE.tabladatos > TFOOT > TR > TD {
        border-bottom: 1px solid #004457;
        text-align: right;
    } #contenido_inside TABLE.tabladatos > TBODY > TR {
        vertical-align: middle;
        border-bottom: 1px solid #CCC;
        background-color: #ffffff;
    } #contenido_inside TABLE.tabladatos > tbody > TR.cabecera {
        background-color: #004457;
        color: #FFFFFF;
        text-align: center;
        border: 0px;
        text-transform: uppercase;
        font-weight: bold;
        height: 22px;
    } #contenido_inside TABLE.tabladatos TD {
        border-bottom: 1px solid #CCC;
        vertical-align: middle;
    } #contenido_inside TABLE.tabladatos TR.impares {
        border-bottom: 1px solid #CCC;
        vertical-align: middle;
    }
        /*COLUMNA STICKY DE TOTALES (fichajes)*/
        #contenido_inside TABLE.tabladatos TD.acumulado {
        position: sticky;
        right: 0;
        background-color: inherit;
        border-left: 1px solid #CCC;
        z-index: 1;
    } #contenido_inside TABLE.tabladatos > THEAD > TR > TD.acumulado {
        position: sticky;
        right: 0;
        background-color: #004457;
        z-index: 2;
    }
        /*COLUMNA STICKY DE FECHA (fichajes)*/
        #contenido_inside TABLE.tabladatos TD.fecha {
        position: sticky;
        left: 0;
        background-color: inherit;
        border-right: 1px solid #CCC;
        z-index: 1;
    } #contenido_inside TABLE.tabladatos > THEAD > TR > TD.fecha {
        position: sticky;
        left: 0;
        background-color: #004457;
        z-index: 2;
    }
        /*FILAS Y CELDAS COMUNES*/
        /*FILAS*/
        #contenido_inside TABLE TR.resultado {
        color: #FF0000;
        font-weight: bold;
        text-align: center;
    } #contenido_inside TABLE TR.azul {
        background-color: #004457;
        color: #FFFFFF;
    } #contenido_inside TABLE TR.azulnegrita {
        background-color: #004457;
        color: #FFFFFF;
        font-weight: bold;
    } #contenido_inside TABLE TR.pistacho {
        background-color: #ddcb11;
        color: #004457;
    } #contenido_inside TABLE TR.pistachonegrita {
        background-color: #ddcb11;
        color: #004457;
        font-weight: bold;
    }
        /*FONDOS DE CELDAS Y FILAS: clases independientes. Sustituyen a las imágenes
       de fondo 1x1 comunNet/fondocelda*.png por su color plano; el !important
       evita que TABLE.tabladatos > TBODY > TR pinte de blanco (mismo patrón que
       #contenido_inside TABLE TR.fila_cabecera). Sirven igual sobre TR y sobre TD. */
        #contenido_inside .impares {
        background-color: #DCE5E8;
    } #contenido_inside .fondoazul, #contenido_inside .aprobadaAoyc {
            background-color: #E4ECEE !important;
        } #contenido_inside .fondoamarillo, #contenido_inside .aprobadaJefe {
            background-color: #F0FAC4 !important;
        } #contenido_inside .fondonaranja, #contenido_inside .denegadaAssi {
            background-color: #F7C17A !important;
        } #contenido_inside .fondorojo, #contenido_inside .denegadaJefe {
            background-color: #F77A7B !important;
        } #contenido_inside .fondoverde, #contenido_inside .aprobadaEncCompras {
            background-color: #7AFA7B !important;
        } #contenido_inside .fondogris, #contenido_inside .aprobadaAssi {
        background-color: #999999 !important;
    } #contenido_inside .fondomagenta, #contenido_inside .denegadaAoyc {
        background-color: #990099 !important;
        color: #FFFFFF;
    } #contenido_inside .fondoverdeoscuro {
        background-color: #3A9B00 !important;
    } #contenido_inside .fondoazuloscuro {
        background-color: #3000FF !important;
    } #contenido_inside .fondoazulclaro {
        background-color: #00FFF6 !important;
    } #contenido_inside .fondorosa {
            background-color: #F6A0F5 !important;
        } #contenido_inside .fondoteletrabajo {
            background-color: #39ad39 !important;
        } #contenido_inside TABLE TR.cabecera {
        background-color: #004457;
        color: #FFFFFF;
        text-align: center;
        border: 0px;
        text-transform: uppercase;
        font-weight: bold;
        height: 22px;
    } #contenido_inside TABLE TR.pie {
        border-bottom: 1px solid #004457;
        text-align: right;
    }
        /*CELDAS*/
        #contenido_inside TABLE TD.resultado {
        color: #FF0000;
        font-weight: bold;
        text-align: center;
    } #contenido_inside TABLE TD.arriba {
        vertical-align: top;
    } #contenido_inside TABLE TD.arribaderecha {
        vertical-align: top;
        text-align: right;
    } #contenido_inside TABLE TD.arribacentro {
        vertical-align: top;
        text-align: center;
    } #contenido_inside TABLE TD.derecha {
        text-align: right;
    } #contenido_inside TABLE TD.centro {
        text-align: center;
    } #contenido_inside TABLE TD.azul {
        background-color: #004457;
        color: #FFFFFF;
    } #contenido_inside TABLE TD.azulnegrita {
        background-color: #004457;
        color: #FFFFFF;
        font-weight: bold;
    } #contenido_inside TABLE TD.pistacho {
        background-color: #ddcb11;
        color: #004457;
    } #contenido_inside TABLE TD.pistachonegrita {
        background-color: #ddcb11;
        color: #004457;
        font-weight: bold;
    } #contenido_inside TABLE TD.cabeceradibujo {
        background-color: #004457;
        color: #dcbb11;
        text-align: center;
        background-image: url(/portalempleado/imagenes/comunNet/thead.png);
        background-position: top right;
        background-repeat: no-repeat;
        border: 0px;
        text-transform: uppercase;
        padding-left: 3px;
        padding-right: 15px;
        height: 22px;
        font-weight: bold;
    } #contenido_inside TABLE TD.cabecera {
        background-color: #004457;
        color: #FFFFFF;
        text-align: center;
        border: 0px;
        text-transform: uppercase;
        font-weight: bold;
        height: 22px;
    } #contenido_inside TABLE TD.pie {
        border-bottom: 1px solid #004457;
        text-align: right;
    }
        /*ESTILOS PARA LAS SUBFILAS*/
        #contenido_inside TABLE TR.fila_cabecera {
        background-color: #004457 !important;
        color: #FFFFFF;
        border: 0px;
        height: 22px;
        font-weight: bold;
    }
        /******************************************************************
    UTILIDADES DE APP (overlays, ajax, autocomplete, sortable)
    ******************************************************************/
        /*******Estilos LIGHTBOX*******/
        .contenidoLightBox {
        border: 0px solid #004457;
    } .contenidoLightBox .contenidoCabecera {
        width: 100%;
    } .contenidoLightBox .contenidoCabecera .contenidoCabecera1 {
        float: left;
        width: 80%;
        border: 0px solid #000000;
    } .contenidoLightBox .contenidoCabecera .contenidoCabecera1 P {
        margin: 0px;
        padding: 0px;
        background-color: #004457;
        color: #ffffff;
        height: 20px;
        text-align: left;
        font-size: 18px;
        font-weight: bold;
    } .contenidoLightBox .contenidoCabecera .contenidoCabecera2 {
        float: right;
        width: 20%;
        border: 0px solid #000000;
    } .contenidoLightBox .contenidoCabecera .contenidoCabecera2 P {
        margin: 0px;
        padding: 0px;
        background-color: #004457;
        color: #ffffff;
        vertical-align: top;
        height: 20px;
        text-align: right;
    } .contenidoLightBox .contenidoCabecera .contenidoCabecera2 IMG {
        cursor: pointer;
    } .contenidoLightBox .contenidoCuerpo {
        width: 99.8%;
        height: 92.5%;
        margin: 0px auto;
        border: 0px solid #000000;
        overflow: auto;
    } .contenidoLightBox .contenidoCuerpo .contenidoCuerpo_contenido {
        border: 1px solid #004457;
        width: 600px;
        margin: 10px auto;
        background: #FFFFFF url(/portalempleado/imagenes/comunNet/fondodivmensajeria.png) repeat-y center;
        padding: 20px;
    } .contenidoLightBox .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_cabecera P {
        font-weight: bold;
        font-size: 14px;
        padding: 0px;
        margin: 0px;
        text-align: justify;
        text-decoration: underline;
    } .contenidoLightBox .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_cabecera P SPAN {
        font-size: 12px;
        color: #666;
        font-style: italic;
    } .contenidoLightBox .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_cuerpo UL {
        list-style: none;
        padding: 0px;
        margin: 0px;
    } .contenidoLightBox .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_cuerpo UL LI {
        margin: 0px;
        padding: 0px;
    } .contenidoLightBox .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_cuerpo UL P {
        font-size: 12px;
        font-weight: bold;
        text-decoration: underline;
    } .contenidoLightBox .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_cuerpo P {
        text-align: justify;
    } .contenidoLightBox .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_cuerpo TABLE.tiempo {
        width: 100%;
        height: 95px;
        border-collapse: collapse;
        margin: 0px auto;
        border: 1px solid #004457;
    } .contenidoLightBox .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_cuerpo TABLE.tiempo TR.cabecera {
        background-color: #004457;
        color: #FFFFFF;
    } .contenidoLightBox .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_cuerpo TABLE.tiempo TD.celdaizq {
        text-align: center;
        width: 100px;
    } .contenidoLightBox .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_cuerpo TABLE {
        margin: 0px auto;
        width: 100%;
    } .contenidoLightBox .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_cuerpo TABLE TD.celdaizq {
        vertical-align: top;
        width: 100px;
    } .contenidoLightBox .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_cuerpo TABLE TD.celdader {
        text-align: justify;
        vertical-align: top;
    } .contenidoLightBox .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_pie P {
        text-align: right;
        font-size: 12px;
        color: #666666;
        font-weight: bold;
    } .divboxJquery {
        background-color: #FFFFFF;
        background-repeat: no-repeat;
        background-position: center;
    } .divboxJquery .contenidoCuerpo_contenido {
        border: 1px solid #004457;
        width: 600px;
        margin: 10px auto;
        background: #FFFFFF url(/portalempleado/imagenes/comunNet/fondodivmensajeria.png) repeat-y center;
        padding: 20px;
    }
        /*TABLA FORMULARIO CLÁSICA*/
        .tabla_formulario {
        background-color: #FFFFFF;
        margin: 1em auto;
        border: thin solid #004457;
        text-align: left;
    }
        /*********Estilos para Peticiones Asincronas*******/
        #sombreadoAJAX1 {
        position: absolute;
        width: 100%;
        height: 100%;
        background-color: #CCCCCC;
        filter: alpha(opacity=50);
        opacity: .5;
        z-index: 10001;
    } #sombreadoAJAX2 {
        background-color: #FFFFFF;
        width: 50%;
        position: absolute;
        top: 35%;
        left: 25%;
        border: 1px dashed #000000;
        text-align: center;
        padding-top: 50px;
        padding-bottom: 50px;
        vertical-align: middle;
        font-weight: bold;
        font-size: 12px;
        z-index: 10001;
    } #sombreadoAJAX2 .brevesmomentos {
        font-size: 10px;
    }
        /*********Sortable (promociones)*******/
        #columnas {
        width: 480px;
        margin: 0px auto;
    } #banners_activos, #banners_ocultos {
        margin: 0;
        float: left;
        margin-right: 50px;
        padding: 0;
        width: 190px;
        min-height: 92px;
        background-image: url("/portalempleado/imagenes/comunNet/fondoceldaimpares.png");
        background-repeat: repeat;
    } #ul_activos, #ul_ocultos {
        margin: 0;
        padding: 0;
        width: 190px;
        min-height: 68px;
    } #ul_activos li, #ul_ocultos li {
        list-style: none;
        margin: 5px;
        padding: 4px;
        width: 167px;
        height: 48px;
    }
        /******************************************************************
    DEFAULTS — contenido de app (movido desde estilosResponsive.css)
    Deben ir al final: sustituyen a las reglas legacy de este mismo
    archivo para las páginas no modificadas.
    ******************************************************************/
        /* Controles heredados: aspecto compatible con Bootstrap y sin anchos rígidos. */
        #contenido_inside input[type="text"], #contenido_inside input[type="password"], #contenido_inside input[type="email"], #contenido_inside input[type="number"], #contenido_inside input[type="date"], #contenido_inside input[type="file"], #contenido_inside select, #contenido_inside textarea:not(.select2-search__field) {
        max-width: 100%;
    } #contenido_inside textarea:not(.select2-search__field) {
        min-height: 5rem;
        resize: vertical;
    } #contenido_inside input[readonly], #contenido_inside textarea:not(.select2-search__field)[readonly], #contenido_inside select[disabled], #contenido_inside input.sololectura, #contenido_inside select.sololectura, #contenido_inside textarea:not(.select2-search__field).sololectura {
        background-color: #eef2f4;
        border: 1px dashed #b9c4ca;
        color: #5f6c72;
        cursor: not-allowed;
        box-shadow: none;
        opacity: 1;
    } #contenido_inside input[readonly]:focus, #contenido_inside textarea:not(.select2-search__field)[readonly]:focus, #contenido_inside input.sololectura:focus, #contenido_inside select.sololectura:focus, #contenido_inside textarea:not(.select2-search__field).sololectura:focus {
        border-color: #b9c4ca;
        box-shadow: none;
    } #contenido_inside table:not(.tabla-datos):not(.table) {
        max-width: 100%;
    } @media (max-width: 767.98px) {
        #contenido_inside fieldset {
            padding: .75rem;
        }

        #contenido_inside input[type="text"],
        #contenido_inside input[type="password"],
        #contenido_inside input[type="email"],
        #contenido_inside input[type="number"],
        #contenido_inside input[type="date"],
        #contenido_inside input[type="file"],
        #contenido_inside select,
        #contenido_inside textarea:not(.select2-search__field) {
            width: 100%;
        }
    }
        /* DEFAULTS — páginas sin modificar (estilosNet.css eliminado);
       aplican dentro de #contenido_inside (master pages) */
        #contenido_inside h1, #contenido_inside h2:not(.modal-title), #contenido_inside h3, #contenido_inside h4 {
        color: var(--color-primario);
        margin-bottom: 0.75rem;
        font-weight: 600;
    } #contenido_inside h1 {
        font-size: 1.5rem;
    } #contenido_inside h2:not(.modal-title) {
        font-size: 1.3rem;
    } #contenido_inside h3 {
        font-size: 1.1rem;
    } #contenido_inside h4 {
        font-size: 1rem;
    } #contenido_inside fieldset {
        border: 1px solid var(--color-borde);
        border-radius: 4px;
        padding: 1rem;
        margin-bottom: 1rem;
    } #contenido_inside fieldset legend {
        font-weight: 600;
        color: var(--color-primario);
        border: 0;
        padding: 0 0.5rem;
        width: auto;
        font-size: 0.9rem;
    } #contenido_inside input[type="text"], #contenido_inside input[type="password"], #contenido_inside textarea:not(.select2-search__field), #contenido_inside select {
        border: 1px solid var(--color-borde);
        border-radius: 4px;
        /*padding: 0.35rem 0.5rem;*/
        line-height:normal !important;
        font-size: 0.9rem;
        color: var(--color-texto);
    } #contenido_inside input[type="text"]:focus, #contenido_inside input[type="password"]:focus, #contenido_inside textarea:not(.select2-search__field):focus, #contenido_inside select:focus {
        border-color: var(--color-secundario);
        outline: none;
        box-shadow: 0 0 0 2px rgba(0, 107, 138, 0.15);
    } #contenido_inside a {
        color: var(--color-secundario);
    } #contenido_inside a:hover {
        color: var(--color-primario);
    } #contenido_inside .paginador-tabla tfoot td {
        text-align: center;
        padding: 0.75rem 0;
    } #contenido_inside .paginador-tabla tfoot td a, #contenido_inside .paginador-tabla tfoot td span {
        display: inline-block;
        padding: 0.3rem 0.6rem;
        border: 1px solid var(--color-borde);
        border-radius: 3px;
        text-decoration: none;
        color: var(--color-primario);
        background: #fff;
        margin: 0 0.1rem;
        font-size: 0.85rem;
    } #contenido_inside .paginador-tabla tfoot td span {
        background: var(--color-primario);
        color: #fff;
        font-weight: 600;
    } #contenido_inside .paginador-tabla tfoot td a:hover {
        background: var(--color-secundario);
        color: #fff;
    }
        /* Search/label tables inside content */
        #contenido_inside table:not(.tabla-datos):not(.table) {
        border-collapse: collapse;
        margin-bottom: 0.75rem;
    } #contenido_inside table:not(.tabla-datos):not(.table) td, #contenido_inside table:not(.tabla-datos):not(.table) th {
        padding: 0.3rem 0.5rem;        
    } #contenido_inside table:not(.tabla-datos):not(.table) tbody td label {
        font-weight: 500;
        color: #555;
        white-space: nowrap;
    } #contenido_inside hr {
        border: none;
        border-top: 1px solid var(--color-borde);
        margin: 1rem 0;
    }
        /* No data row */
        #contenido_inside .sin-registros {
        text-align: center;
        padding: 2rem;
        color: #999;
        font-style: italic;
    }
        /* Responsive image defaults */
        #contenido_inside .imgboton {
        cursor:pointer !important;
    }
        /* Fix spacing for Bootstrap container content */
        #contenido_inside > form > br:first-child {
        display: none;
    }
        /* Legend + fieldset toggle display */
        #contenido_inside fieldset:first-child {
        margin-top: 0;
    }
        /* Validation summary */
        #contenido_inside .validation-summary-errors {
        color: #721c24;
        background: #f8d7da;
        border: 1px solid #f5c6cb;
        border-radius: 4px;
        padding: 0.75rem;
        margin-bottom: 1rem;
    } #contenido_inside .validation-summary-errors ul {
        margin: 0;
        padding-left: 1.25rem;
    }
        /* Mensajes informativos en páginas no modificadas */
        #contenido_inside span[id$="_mensaje"], #contenido_inside .mensaje {
        display: block;
        padding: 0.5rem;
        border-radius: 4px;
        margin-bottom: 0.5rem;
        font-size: 0.9rem;
    }
        /* Compatibilidad para aplicaciones todavía no responsivas.
       Permite desplazar el contenido ancho sin ensanchar el marco. */
        #contenido_inside {
        max-width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: auto;
        scrollbar-color: rgba(0, 107, 138, .78) rgba(0, 68, 87, .08);
    } #contenido_inside::-webkit-scrollbar {
        height: var(--portal-scrollbar-size, 12px);
    } #contenido_inside::-webkit-scrollbar-track {
        border-radius: 999px;
        background: rgba(0, 68, 87, .08);
    } #contenido_inside::-webkit-scrollbar-thumb {
        border-radius: 999px;
        background: rgba(0, 107, 138, .78);
    } #contenido_inside::-webkit-scrollbar-thumb:hover {
        background: rgba(220, 187, 17, .95);
    }
        /* ============================================================
       TARJETA DE PERFIL — modificarDatosPersonales.aspx
       ============================================================ */
        #contenido_inside .tarjeta-perfil {
        max-width: 860px;
        margin: 1rem auto;
        background: #fff;
        border: 1px solid var(--color-borde);
        border-radius: .75rem;
        box-shadow: 0 .35rem 1rem rgba(0, 68, 87, .14);
        overflow: hidden;
    } #contenido_inside .tarjeta-perfil-cabecera {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 1rem;
        padding: 1.25rem 1.5rem;
        background: linear-gradient(135deg, var(--color-primario), var(--color-subcabecera-oscuro));
        color: #fff;
    } #contenido_inside .tarjeta-perfil-cabecera h1 {
        margin: 0;
        color: #fff;
    } #contenido_inside .tarjeta-perfil-titulo {
        flex: 1 1 auto;
        min-width: 200px;
    } #contenido_inside .icono-tarjeta {
        font-size: 1.6rem;
        color: rgba(255, 255, 255, .9);
    } #contenido_inside .foto-preview {
        width: 150px;
        height: 150px;
        object-fit: cover;
        border: 1px solid var(--color-borde);
        border-radius: .5rem;
        box-shadow: 0 .2rem .5rem rgba(0, 68, 87, .12);
        background: #f7fafb;
    } #contenido_inside .campo-control--alto {
        height: 8rem;
    } #contenido_inside .mensaje:empty {
        display: none;
    } #contenido_inside .tarjeta-perfil-avatar {
        position: relative;
        display: flex;
        flex: 0 0 auto;
        align-items: center;
        justify-content: center;
        width: 88px;
        height: 88px;
        overflow: hidden;
        border: 3px solid rgba(255, 255, 255, .8);
        border-radius: 50%;
        background: linear-gradient(135deg, var(--color-primario), var(--color-subcabecera-oscuro));
        color: #fff;
    } #contenido_inside .tarjeta-perfil-avatar .tarjeta-perfil-foto {
        width: 100%;
        height: 100%;
        object-fit: cover;
        background: #fff;
    } #contenido_inside .tarjeta-perfil-iniciales {
        position: absolute;
        inset: 0;
        display: none;
        align-items: center;
        justify-content: center;
        font-size: 2rem;
        font-weight: 700;
        letter-spacing: .05em;
        text-transform: uppercase;
        color: #fff;
    } #contenido_inside .tarjeta-perfil-icono-fallback {
        display: none;
        font-size: 2.4rem;
        color: rgba(255, 255, 255, .85);
    } #contenido_inside .tarjeta-perfil-avatar.sin-foto.has-iniciales .tarjeta-perfil-iniciales {
        display: flex;
    } #contenido_inside .tarjeta-perfil-avatar.sin-foto:not(.has-iniciales) .tarjeta-perfil-icono-fallback {
        display: inline-block;
    } #contenido_inside .tarjeta-perfil-cuerpo {
        padding: 1.5rem;
    } #contenido_inside .campo {
        display: block;
        width: 100%;
        margin: 0;
    } #contenido_inside .campo-etiqueta {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: .35rem;
        margin-bottom: .3rem;
        font-size: .72rem;
        font-weight: 700;
        letter-spacing: .04em;
        text-transform: uppercase;
        color: var(--color-primario);
    } #contenido_inside .campo-control {
        width: 100%;
        padding: .45rem .65rem;
    } #contenido_inside .badge-sololectura {
        display: inline-flex;
        align-items: center;
        gap: .3rem;
        padding: .12rem .55rem;
        font-size: .62rem;
        font-weight: 700;
        letter-spacing: .05em;
        text-transform: uppercase;
        color: #5f6c72;
        background: #e9eef1;
        border: 1px solid #d3dce1;
        border-radius: 999px;
    } #contenido_inside .tarjeta-perfil-pie {
        padding: 1rem 1.5rem;
        background: #f7fafb;
        border-top: 1px solid var(--color-borde);
    } #contenido_inside .tarjeta-perfil-acciones {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        place-content:center;        
        gap: .5rem;
        margin-top: .75rem;
    } #contenido_inside .tarjeta-perfil-acciones .btn {
        margin: 0;
        white-space: normal;
    }
        /* Keep full-width account actions, using the shared Bootstrap button theme. */
        #contenido_inside .btn-suave { display: block; width: 100%;
    } @media (max-width: 575.98px) {
        #contenido_inside .tarjeta-perfil-acciones {
            justify-content: stretch;
        }

        #contenido_inside .tarjeta-perfil-acciones .btn {
            width: 100%;
        }
    }
        /******************************************************************
    DIÁLOGOS BOOTSTRAP — estilos del contenido de aplicación.
    Los controles conservan sus IDs y su formulario de servidor.
    ******************************************************************/
        .portal-dialog-root .portal-dialog-body input[type="text"], .portal-dialog-root .portal-dialog-body input[type="password"], .portal-dialog-root .portal-dialog-body input[type="email"], .portal-dialog-root .portal-dialog-body input[type="number"], .portal-dialog-root .portal-dialog-body input[type="date"], .portal-dialog-root .portal-dialog-body input[type="file"], .portal-dialog-root .portal-dialog-body select, .portal-dialog-root .portal-dialog-body textarea:not(.select2-search__field) {
        width: 100%;
        font-family: "Century Gothic", Verdana, Arial, sans-serif;
        border: 1px solid #004457;
        background-color: #FFFFFF;
        border-radius: 5px;
        -moz-border-radius: 5px;
        box-sizing: border-box;
        max-width: 100%;
    } .portal-dialog-root .portal-dialog-body input[type="text"], .portal-dialog-root .portal-dialog-body input[type="password"], .portal-dialog-root .portal-dialog-body input[type="email"], .portal-dialog-root .portal-dialog-body input[type="number"], .portal-dialog-root .portal-dialog-body input[type="date"], .portal-dialog-root .portal-dialog-body input[type="file"] {
        font-size: 14px;
    } .portal-dialog-root .portal-dialog-body select, .portal-dialog-root .portal-dialog-body textarea:not(.select2-search__field) {
        font-size: 11px;
    } .portal-dialog-root .portal-dialog-body table:not(.tabla-datos):not(.table) {
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 0.75rem;
        max-width: 100%;
    } .portal-dialog-root .portal-dialog-body table:not(.tabla-datos):not(.table) td, .portal-dialog-root .portal-dialog-body table:not(.tabla-datos):not(.table) th {
        padding: 0.3rem 0.5rem;
        vertical-align: middle;
    } .portal-dialog-root .portal-dialog-body table:not(.tabla-datos):not(.table) td label {
        font-weight: 500;
        color: #555;
        white-space: nowrap;
    } .portal-dialog-root .portal-dialog-body a {
        color: #666666;
        text-decoration: none;
        font-weight: bold;
    } .portal-dialog-root .portal-dialog-body a:hover {
        color: #004457;
        text-decoration: underline;
    } .portal-dialog-root .portal-dialog-body {
        max-height: calc(86vh - 4rem);
        overflow-y: auto;
    }
        /******************************************************************
    LIGHTBOX LEGACY (agregarContenidoLightBox) — contenido anexado al
    formulario dentro de un .portal-dialog-root. Aplicamos el look tarjeta de
    .portada-lightbox-item al contenido antiguo (.contenidoLightBox,
    .contenidoCuerpo_contenido*, .divboxJquery). La cadena de selectores
    replica la ruta real del DOM para ganar a las reglas legacy de este
    mismo archivo.
    ******************************************************************/
        body .portal-dialog-root .portal-dialog-body .contenidoLightBox {
        border: 0;
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo {
        width: 100%;
        height: auto;
        overflow-y: auto;
        border: 0;
        margin: 0;
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido {
        box-sizing: border-box;
        width: auto;
        max-width: 100%;
        margin: 0 auto;
        padding: 1rem 1.1rem;
        border: 1px solid rgba(0, 68, 87, .12);
        border-radius: .8rem;
        background: #fafafa;
    } body .portal-dialog-root .portal-dialog-body .divboxJquery .contenidoCuerpo_contenido {
        box-sizing: border-box;
        width: auto;
        max-width: 100%;
        margin: 0 auto;
        padding: 1rem 1.1rem;
        border: 1px solid rgba(0, 68, 87, .12);
        border-radius: .8rem;
        background: #fafafa;
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cabecera P {
        margin: 0 0 .4rem;
        padding: 0;
        color: var(--color-primario);
        font-size: 1.05rem;
        font-weight: 700;
        line-height: 1.3;
        text-align: left;
        text-decoration: none;
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cabecera P SPAN {
        display: block;
        margin-top: .25rem;
        color: #6c757d;
        font-size: .8rem;
        font-weight: 400;
        font-style: normal;
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo P {
        margin: 0 0 .5rem;
        padding: 0;
        text-align: justify;
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo UL {
        margin: .5rem 0 0;
        padding: 0;
        list-style: none;
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo UL P {
        margin: 0 0 .25rem;
        color: var(--color-primario);
        font-weight: 700;
        text-decoration: none;
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo UL LI {
        margin: .25rem 0;
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo UL LI A {
        color: var(--color-secundario);
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo TABLE {
        width: 100%;
        max-width: 100%;
        margin: 0;
        border-collapse: collapse;
        border: 1px solid rgba(0, 68, 87, .12);
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo TABLE .celdaizq {
        width: 7.5rem;
        padding: .25rem 1rem .25rem 0;
        text-align: center;
        vertical-align: top;
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo TABLE .celdaizq IMG {
        max-width: 100%;
        height: auto;
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo TABLE .celdader {
        padding: .25rem 0;
        text-align: justify;
        vertical-align: top;
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_cuerpo TABLE.tiempo {
        height: auto;
        margin: .5rem 0 0;
        border: 1px solid rgba(0, 68, 87, .12);
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo .contenidoCuerpo_contenido .contenidoCuerpo_contenido_cuerpo TABLE.tiempo TR.cabecera {
        background:
            radial-gradient(circle at 12% 0, rgba(220, 187, 17, .13), transparent 35%),
            linear-gradient(145deg, rgba(0, 68, 87, .98), rgba(0, 68, 87, .98));
        color: #fff;
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo TABLE.tiempo TD.celdaizq {
        width: 5rem;
        text-align: center;
    } body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_pie P {
        margin: .6rem 0 0;
        color: #6c757d;
        font-size: .8rem;
        font-weight: 700;
        text-align: right;
    } body .portal-dialog-root .portal-dialog-body .contenidoCabecera, body .portal-dialog-root .portal-dialog-body .contenidoCabecera .contenidoCabecera1, body .portal-dialog-root .portal-dialog-body .contenidoCabecera .contenidoCabecera2 {
        width: auto;
        float: none;
        border: 0;
    } body .portal-dialog-root .portal-dialog-body .contenidoCabecera P {
        height: auto;
        background: transparent;
        color: inherit;
        text-align: left;
        font-size: inherit;
    } @media (max-width: 575.98px) {
        body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido,
        body .portal-dialog-root .portal-dialog-body .divboxJquery .contenidoCuerpo_contenido {
            padding: .8rem .9rem;
        }

        body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo TABLE,
        body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo TABLE.tiempo {
            display: block;
            width: 100%;
        }

        body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo TABLE TBODY,
        body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo TABLE TR,
        body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo TABLE TD {
            display: block;
            width: 100%;
        }

        body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo TABLE .celdaizq {
            width: auto;
            padding: 0 0 .5rem;
        }

        body .portal-dialog-root .portal-dialog-body .contenidoCuerpo_contenido_cuerpo TABLE .celdader {
            padding: 0;
        }
    }
        /* SelectorPortal: solo el control optativo, no los select nativos. */
        .select2-container.portal-selector-container {
        max-width: 100%;
        min-width: 0;
        /* El texto seleccionado no debe imponer el ancho mínimo de una tarjeta flex. */
        contain: inline-size;
        vertical-align: middle;
    } .portal-selector-container .select2-selection--single {
        border: 1px solid var(--color-borde, #ccc);
        border-radius: 4px;
        min-height: 28px;
    } .portal-selector-container .select2-selection__rendered {
        text-overflow: ellipsis;
    } .select2-dropdown.portal-selector-dropdown {
        box-sizing: border-box;
        z-index: 12000;
    } .portal-selector-dropdown .select2-results__options {
        max-height: 260px;
        overflow-y: auto;
        overflow-x: hidden;
        overscroll-behavior: contain;
    } .portal-selector-dropdown .select2-results__option {
        white-space: normal;
        overflow-wrap: anywhere;
        font: 13px/1.4 Calibri, "Segoe UI", Arial, sans-serif;
    } .portal-selector-dropdown .select2-search__field {
        width: 100%;
        box-sizing: border-box;
    }
        /* Datos personales: controles Bootstrap y ajustes acotados a esta pagina. */
        #contenido_inside .perfil-datos-pagina { padding: 0; } #contenido_inside .perfil-datos { margin: 0 auto; } #contenido_inside .perfil-datos .tarjeta-perfil-cabecera {
        flex-wrap: nowrap;
        gap: 1rem;
        padding: 1.25rem 1.5rem;
    } #contenido_inside .perfil-datos .tarjeta-perfil-titulo {
        flex: 1 1 0;
        min-width: 0;
    } #contenido_inside .perfil-datos .tarjeta-perfil-titulo h1 {
        text-align: left;
        font-size: 1.5rem;
        line-height: 1.2;
    } #contenido_inside .perfil-datos .tarjeta-perfil-titulo .btn {
        margin-top: .65rem;
        white-space: normal;
        min-height: 36px;
    } #contenido_inside .perfil-datos .tarjeta-perfil-cuerpo { padding: 1.5rem; } #contenido_inside .perfil-datos-seccion + .perfil-datos-seccion {
        margin-top: 1.5rem;
        padding-top: 1.5rem;
        border-top: 1px solid #e3ebee;
    } #contenido_inside .perfil-datos .perfil-datos-seccion-titulo {
        margin: 0 0 1rem;
        text-align: left;
        font-size: 1rem;
        font-weight: 700;
        line-height: 1.35;
    } #contenido_inside .perfil-datos .campo-etiqueta {
        margin-bottom: .4rem;
        font-size: .875rem;
        line-height: 1.4;
        letter-spacing: normal;
        text-transform: none;
    } #contenido_inside .perfil-datos .campo-control {
        box-sizing: border-box;
        min-width: 0;
        max-width: 100%;
        width: 100%;
        min-height: 44px;
        padding: .6rem .75rem;
        border: 1px solid #b9cbd1;
        border-radius: .5rem;
        background-color: #fff;
        color: #004457;
        font-family: inherit;
        font-size: 16px;
        line-height: 1.35 !important;
    } #contenido_inside .perfil-datos .form-select { padding-right: 2.25rem; } #contenido_inside .perfil-datos .campo-control:focus {
        border-color: #006b8a;
        outline: none;
        box-shadow: 0 0 0 3px rgba(0, 107, 138, .15);
    } #contenido_inside .perfil-datos .campo-control[readonly], #contenido_inside .perfil-datos .campo-control:disabled {
        background-color: #edf2f4;
        color: #536971;
        border-color: #d6e0e4;
        box-shadow: none;
    } #contenido_inside .perfil-datos .badge-sololectura {
        padding: .15rem .4rem;
        font-size: .7rem;
    } #contenido_inside .perfil-datos .perfil-datos-validacion {
        display: block;
        margin-top: .35rem;
        font-size: .875rem;
        color: #b42318;
    } #contenido_inside .perfil-datos-acciones {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .75rem;
    } #contenido_inside .perfil-datos .perfil-datos-acciones .btn {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-width: 0;
        min-height: 44px;
        margin: 0;
        padding: .65rem .8rem;
        white-space: normal;
        overflow-wrap: anywhere;
        text-decoration: none;
    } #contenido_inside .perfil-datos .perfil-datos-documento {
        grid-column: 1 / -1;
    } #contenido_inside .perfil-datos .perfil-datos-acciones a.btn {
        color: var(--bs-btn-color);
    } #contenido_inside .perfil-datos .perfil-datos-acciones a.btn:hover, #contenido_inside .perfil-datos .perfil-datos-acciones a.btn:focus-visible {
        color: var(--bs-btn-hover-color);
    } #contenido_inside .perfil-datos .tarjeta-perfil-pie { padding: 1rem 1.5rem; } #contenido_inside .perfil-datos .tarjeta-perfil-acciones { margin-top: 0; } #contenido_inside .perfil-datos .mensaje:not(:empty) {
        display: block;
        margin-bottom: 1rem;
        overflow-wrap: anywhere;
    } #contenido_inside .perfil-datos .tarjeta-perfil-acciones .btn {
        min-height: 44px;
        min-width: 10rem;
        font-size: 1rem;
        border-radius: .5rem;
    } @media (max-width: 575.98px) {
        #contenido_inside .perfil-datos .tarjeta-perfil-cabecera { padding: 1rem; }
        #contenido_inside .perfil-datos .tarjeta-perfil-avatar { width: 64px; height: 64px; }
        #contenido_inside .perfil-datos .tarjeta-perfil-titulo h1 { font-size: 1.3rem; }
        #contenido_inside .perfil-datos .tarjeta-perfil-cuerpo,
        #contenido_inside .perfil-datos .tarjeta-perfil-pie { padding: 1rem; }
        #contenido_inside .perfil-datos-acciones { grid-template-columns: minmax(0, 1fr); }
        #contenido_inside .perfil-datos .tarjeta-perfil-acciones .btn { width: 100%; }
    }
        /* Formularios de cuenta: comparten el aspecto de datos personales. */
        #contenido_inside .perfil-gestiones .icono-tarjeta { flex: 0 0 auto; font-size: 2rem; } #contenido_inside .perfil-gestiones .campo { min-width: 0; margin-bottom: 0; } #contenido_inside .perfil-gestiones .campo-etiqueta { overflow-wrap: anywhere; } #contenido_inside .perfil-gestiones .tarjeta-perfil-acciones {
        display: flex; flex-wrap: wrap; gap: .75rem;
    } #contenido_inside .perfil-gestiones .btn:not(.campo-ojo) {
        min-height: 44px; padding: .65rem .8rem;
        white-space: normal; overflow-wrap: anywhere;
    } #contenido_inside .perfil-gestiones a.btn { color: var(--bs-btn-color); text-decoration: none; } #contenido_inside .perfil-gestiones a.btn:hover, #contenido_inside .perfil-gestiones a.btn:focus-visible { color: var(--bs-btn-hover-color); } #contenido_inside .perfil-gestiones .perfil-recargar {
        display: flex; align-items: center; justify-content: center;
    } #contenido_inside .perfil-gestiones .text-muted { font-size: .9375rem; line-height: 1.5; } #contenido_inside .perfil-delegaciones-tabla { max-width: 100%; overflow-x: auto; } #contenido_inside .perfil-delegaciones-tabla .tabla-datos { width: 100%; margin: 0; table-layout: fixed; } #contenido_inside .perfil-delegaciones-tabla th, #contenido_inside .perfil-delegaciones-tabla td { padding: .75rem; overflow-wrap: anywhere; white-space: normal; } #contenido_inside .perfil-delegaciones-tabla th:last-child { width: 22%; } #contenido_inside .perfil-gestiones .campo-contrasena > input { padding-right: 2.75rem; } #contenido_inside .perfil-delegaciones-tabla input[type=checkbox] {
        width: 1.25rem; height: 1.25rem; min-height: 0; margin: .5rem;
        accent-color: #004457; vertical-align: middle;
    } #contenido_inside .perfil-cargando {
        position: fixed; inset: 0; z-index: 9999999; display: flex;
        align-items: center; justify-content: center; padding: 1rem; background: rgba(0,0,0,.7);
    } #contenido_inside .perfil-cargando span {
        padding: 1.5rem; border-radius: .5rem; background: #fff; font-size: 1.25rem;
    } @media (max-width: 575.98px) {
        #contenido_inside .perfil-gestiones .tarjeta-perfil-acciones { flex-direction: column; }
        #contenido_inside .perfil-gestiones .tarjeta-perfil-cuerpo .btn:not(.campo-ojo) { width: 100%; }
        #contenido_inside .perfil-delegaciones-tabla th,
        #contenido_inside .perfil-delegaciones-tabla td { padding: .5rem; font-size: .875rem; }
    }
        /* Links and filters using Bootstrap button styles. */
        #contenido_inside .portal-button.btn {
        text-decoration: none;
        color: var(--bs-btn-color) !important;
    } #contenido_inside .portal-button.btn:hover, #contenido_inside .portal-button.btn:focus-visible { color: var(--bs-btn-hover-color) !important; } #contenido_inside .portal-button.btn.active, #contenido_inside .portal-button.btn:active { color: var(--bs-btn-active-color) !important; }
        /* Bootstrap tab navigation inside application content. */
        #contenido_inside .portal-tabs > .nav-tabs {
        padding-left: 0; margin: 0 0 1rem; gap: .25rem;
        flex-wrap: wrap;
    } #contenido_inside .portal-tabs > .nav-tabs > .nav-item { list-style: none; } #contenido_inside .portal-tabs > .nav-tabs > .nav-item > .nav-link {
        color: var(--bs-nav-link-color); text-decoration: none;
    } #contenido_inside .portal-tabs > .nav-tabs > .nav-item > .nav-link:hover { color: var(--bs-nav-link-hover-color); } #contenido_inside .portal-tabs > .nav-tabs > .nav-item > .nav-link.active {
        color: var(--bs-nav-tabs-link-active-color);
        background-color: var(--bs-nav-tabs-link-active-bg);
    }
        /* Reordering handles: keep form controls selectable and touch scrolling available. */
        #contenido_inside .portal-order-handle { cursor: grab; touch-action: none; } #contenido_inside .portal-order-handle:active { cursor: grabbing; } #contenido_inside .portal-order-ghost { opacity: .4; } #contenido_inside .portal-order-chosen { outline: 2px solid #006b8a; } #contenido_inside .portal-promotion { border: 1px solid #ccc; background: #f7f9fa; } #contenido_inside .portal-promotion.portal-order-disabled { opacity: .6; } #contenido_inside .portal-order-handle { margin-right: .35rem; } #contenido_inside .portal-promotion { position: relative; } #contenido_inside .portal-promotion > .portal-order-handle { position: absolute; top: 2px; left: 2px; z-index: 1; }
}

/* Facturas: reserve space for cost centre and project selectors in the allocation form. */
#contenido_inside table[id$="formulario_lineasReparto"] {
    width: 100%;
    max-width: 1050px;
    table-layout: fixed;
}
#contenido_inside table[id$="formulario_lineasReparto"] tr:first-child th:nth-child(1) { width: 18%; }
#contenido_inside table[id$="formulario_lineasReparto"] tr:first-child th:nth-child(2),
#contenido_inside table[id$="formulario_lineasReparto"] tr:first-child th:nth-child(3) { width: 25%; }
#contenido_inside table[id$="formulario_lineasReparto"] tr:first-child th:nth-child(4) { width: 8%; }
#contenido_inside table[id$="formulario_lineasReparto"] tr:first-child th:nth-child(5) { width: 24%; }
#contenido_inside table[id$="formulario_lineasReparto"] .portal-datascroller { width: 100%; }

/* Facturas: explicit columns avoid shrinking selectors initialized inside hidden dialogs. */
.portal-dialog-root .portal-dialog-body table.facturas-conformar {
    width: 100%;
    table-layout: fixed;
}
.portal-dialog-root .portal-dialog-body .facturas-conformar tr:first-child > td:first-child { width: 25%; }
.portal-dialog-root .portal-dialog-body .facturas-conformar textarea { width: 100%; max-width: 100%; box-sizing: border-box; }

/* Shared time controls: readable by default, constrained by their parent. */
#contenido_inside input.portal-timepicker-field { min-width: min(var(--portal-control-min-width, 110px), 100%); max-width: 100%; box-sizing: border-box; }

/* Action buttons without Bootstrap classes: same geometry and states as .btn.
   Specialized widgets keep their own styles; no markup or postback changes. */
:is(#contenido_inside, .portal-dialog-root .portal-dialog-body) :is(input[type="button"], input[type="submit"], input[type="reset"], button):not(.btn):not(.accordion-button):not(.portal-dialog-close):not(.btn-close):not(.select2-selection__clear):not(.select2-selection__choice__remove):not(.dropdown-item):not(.page-link):not(.flatpickr-prev-month):not(.flatpickr-next-month) {
    display: inline-block;
    padding: .375rem .75rem;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    user-select: none;
    box-sizing: border-box;
    border: 1px solid var(--bs-btn-border-color, #004457);
    border-radius: var(--bs-border-radius, .375rem);
    color: var(--bs-btn-color, #fff);
    background-color: var(--bs-btn-bg, #004457);
    background-image: none;
    text-decoration: none;
    white-space: normal;
    max-width: 100%;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}
:is(#contenido_inside, .portal-dialog-root .portal-dialog-body) :is(input[type="button"], input[type="submit"], input[type="reset"], button):not(.btn):not(.accordion-button):not(.portal-dialog-close):not(.btn-close):not(.select2-selection__clear):not(.select2-selection__choice__remove):not(.dropdown-item):not(.page-link):not(.flatpickr-prev-month):not(.flatpickr-next-month):hover:not(:disabled):not(.disabled) {
    color: var(--bs-btn-hover-color, #fff);
    background-color: var(--bs-btn-hover-bg, #003a4a);
    border-color: var(--bs-btn-hover-border-color, #003645);
}
:is(#contenido_inside, .portal-dialog-root .portal-dialog-body) :is(input[type="button"], input[type="submit"], input[type="reset"], button):not(.btn):not(.accordion-button):not(.portal-dialog-close):not(.btn-close):not(.select2-selection__clear):not(.select2-selection__choice__remove):not(.dropdown-item):not(.page-link):not(.flatpickr-prev-month):not(.flatpickr-next-month):focus-visible {
    color: var(--bs-btn-hover-color, #fff);
    background-color: var(--bs-btn-hover-bg, #003a4a);
    border-color: var(--bs-btn-hover-border-color, #003645);
    outline: 0;
    box-shadow: 0 0 0 .25rem rgba(var(--bs-btn-focus-shadow-rgb, 0, 68, 87), .5);
}
:is(#contenido_inside, .portal-dialog-root .portal-dialog-body) :is(input[type="button"], input[type="submit"], input[type="reset"], button):not(.btn):not(.accordion-button):not(.portal-dialog-close):not(.btn-close):not(.select2-selection__clear):not(.select2-selection__choice__remove):not(.dropdown-item):not(.page-link):not(.flatpickr-prev-month):not(.flatpickr-next-month):active:not(:disabled):not(.disabled) {
    color: var(--bs-btn-active-color, #fff);
    background-color: var(--bs-btn-active-bg, #003645);
    border-color: var(--bs-btn-active-border-color, #003341);
}
:is(#contenido_inside, .portal-dialog-root .portal-dialog-body) :is(input[type="button"], input[type="submit"], input[type="reset"], button):not(.btn):not(.accordion-button):not(.portal-dialog-close):not(.btn-close):not(.select2-selection__clear):not(.select2-selection__choice__remove):not(.dropdown-item):not(.page-link):not(.flatpickr-prev-month):not(.flatpickr-next-month):is(:disabled, .disabled) {
    color: var(--bs-btn-disabled-color, #fff);
    background-color: var(--bs-btn-disabled-bg, #004457);
    border-color: var(--bs-btn-disabled-border-color, #004457);
    opacity: .65;
    pointer-events: none;
}

:is(#contenido_inside, .portal-dialog-root .portal-dialog-body) a.btn { color: var(--bs-btn-color); }
:is(#contenido_inside, .portal-dialog-root .portal-dialog-body) a.btn:is(:hover, :focus-visible) { color: var(--bs-btn-hover-color); }
:is(#contenido_inside, .portal-dialog-root .portal-dialog-body) a.btn:is(:active, .active) { color: var(--bs-btn-active-color); }
:is(#contenido_inside, .portal-dialog-root .portal-dialog-body) a.btn.disabled { color: var(--bs-btn-disabled-color); }
