ul.dropdown-menu.show {
    max-height: 178px;
    overflow: auto;
}

/* Estilos tablas scroll */
::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 10px;
    height: 10px;
}

::-webkit-scrollbar-button:increment,
::-webkit-scrollbar-button {
    display: none;
}

::-webkit-scrollbar-thumb {
    background-color: #ffab60;
    /*border-radius: 10px;*/
}

:hover::-webkit-scrollbar-thumb {
    background-color: #d4470f;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
}

.form-check-input:checked {
    background-color: #ffab60;
    border-color: #ffab60;
}

/*.btn-check:active,*/
.btn-check:active + .btn.btn-outline-primary,
.btn-outline-secondary.dropdown-toggle.show,
.btn-primary.disabled,
.btn-primary:disabled,
.btn-primary,
.btn-outline-primary:active,
.btn-outline-primary:hover,
.btn-check:checked + .btn-outline-primary {
    color: #fff;
    background-color: #ffab60;
    border-color: #ffab60;
}

.form-select,
.form-control {
    border-color: #ffab60;
    caret-color: #ffab60;
}


.btn-check:focus + .btn-outline-primary,
.form-select:focus,
.form-control:focus,
.form-check-input:focus {
    border-color: #ffab60;
    box-shadow: 0 0 0 0.25rem rgb(255 171 96 / 50%) !important;
}

.btn-outline-secondary,
.btn-outline-primary {
    color: #ffab60;
    border-color: #ffab60;
}

.btn-check:focus {
    box-shadow: none !important;
}

.btn-check:focus,
.btn-outline-primary:focus,
.btn-outline-secondary:focus,
.btn-check:focus + .btn-primary,
.btn-primary:focus,
.btn-outline-primary:focus {
    box-shadow: 0 0 0 0.25rem rgb(255 171 96 / 50%) !important;
}

.btn-outline-secondary:hover,
.btn-primary:hover,
.btn-check:focus + .btn-primary,
.btn-primary:focus {
    background-color: #d4470f;
    border-color: #d4470f;
}

h4.card-title.mt-0.text-uppercase.border-bottom {
    color: #ffab60;
    text-transform: lowercase !important;
}

h4.card-title.mt-0.text-uppercase.border-bottom:first-letter {
    text-transform: capitalize;
}

.w-75.py-1.me-auto > *,
.w-100.py-1.me-auto > *,
.w-50.py-1.me-auto > * {
    vertical-align: middle;
}

i.fa-circle-info.fa-solid.ms-1.text-black-50,
input[type='radio'] + label:hover,
li.dropdown-item:hover,
input[type='checkbox']:hover,
input[type='radio']:hover {
    cursor: pointer;
}

ul.list-group.programas li.list-group-item input[type='checkbox']:disabled,
.btn-check:disabled + .btn,
.btn-check[disabled] + .btn,
.list-group-item.disabled .btn.btn-outline-primary,
.form-control:disabled,
.btn-outline-secondary:disabled {
    background-color: #e9ecef;
    border-color: #6c757d;
    opacity: 1;
    color: #6c757d;
}

.dropdown-toggle::after {
    display: none;
}

li.list-group-item.disabled,
li.list-group-item.disabled input {
    background-color: rgb(245, 248, 250);
}


.card-body.fondo {
    background-image: url(../img/calculator.png);
    background-position: center;
    background-repeat: no-repeat;
    height: 255.19px;
    background-size: 35%;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
    background-color: rgb(245, 248, 250) !important;
    --bs-table-accent-bg: none !important;
}

p,
label,
span,
h5,
table * {
    color: #091e35;
}

.dropdown-item:focus,
.dropdown-item:hover {
    background-color: rgb(245, 248, 250) !important;
    color: #091e35;
}

.dropdown-item.active,
.dropdown-item:active {
    background-color: #ffab60 !important;
    color: white !important;
}

@media (max-width: 446px) {
    table.table.table-striped {
        margin: auto;
        display: block;
        overflow-x: scroll;
        overflow-y: hidden;
    }
}

.form-switch .form-check-input:checked {
    background-color: #ffab60;
    border-color: #ffab60;
}

.form-switch input[type="checkbox"]:focus {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
    border: 1px solid rgba(0, 0, 0, .25);
}

.form-switch input[type="checkbox"]:checked:focus {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
    border: 1px solid rgba(255, 171, 96, .25);
}

.form-switch input[type="checkbox"]:checked:focus {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
    border: 1px solid rgba(255, 171, 96, .25);
}

.form-switch .form-check-input:hover:checked {
    background-color: #d4470f;
    border-color: #d4470f;
}

.form-switch input[type="checkbox"]:hover:focus {
    border: 1px solid rgba(0, 0, 0, .25);
}

.form-switch input[type="checkbox"]:hover:checked:focus {
    border: 1px solid rgba(212, 71, 15, .25);
}

ul.list-group.serviciosAdd li.list-group-item,
ul.list-group.mt-2.serviciosAdd.shadow-sm,
ul.list-group.servicios {
    display: none;
}

ul.list-group.serviciosAdd.shadow-sm.mt-2 {
    list-style: none;
}

li.bottom-0.list-group-item.position-sticky,
li.bottom-0.list-group-item.position-sticky.disabled,
label.fw-bold.list-group-item.position-sticky.top-0 {
    z-index: 9;
}

li.bottom-0.list-group-item.position-sticky,
li.bottom-0.list-group-item.position-sticky.disabled {
    box-shadow: 0 -.125rem .25rem rgba(0, 0, 0, .075) !important;
}

img.rounded.logo {
    width: 200px;
}

input#flexSwitchCheckDefault[type='checkbox'] + label:hover,
input#Starter[type='checkbox'] + label:hover,
input#Personalizado[type='checkbox'] + label:hover,
ul.list-group.programas li.list-group-item input[type='checkbox'] + label:hover {
    cursor: pointer;
}

@media print {
    @page {
        margin-top: 0;
        margin-bottom: 0;
    }

    table.table.table-striped {
        margin-bottom: 0px;
    }

    .table > :not(caption) > * > * {
        padding: .25rem .5rem;
    }

    h4.border-bottom.card-title.mt-0.text-uppercase,
    .card-footer h5.card-title.mb-0,
    .card-footer h5.card-title.mb-1 {
        margin-bottom: 0 !important;
    }

    .d-flex.justify-content-start {
        justify-content: center !important;
    }

    i.fa-solid.fa-circle-info {
        display: none !important;
    }

    .card-footer hr {
        margin: 0.25rem 0 !important;
    }

    /* ul.list-group.serviciosAdd.shadow-sm.mt-2 {
        page-break-inside: avoid;
        break-inside: avoid;
    }*/

    ul.list-group.serviciosAdd .list-group-item {
        padding: 0.25rem 1rem !important;
    }

    img.rounded.logo {
        width: 150px;
    }
}

/** Nuevos estilos */
.badge {
    cursor: default;
}

.bg-Core {
    background-color: #ea4335 !important;
}

.bg-Personas {
    background-color: #46bdc6 !important;
}

.bg-Tiempo {
    background-color: #34a853 !important;
}

.bg-Talento {
    background-color: #4285f4 !important;
}

.bg-Finanzas {
    background-color: #ff6d01 !important;
}

.bg-Soporte {
    background-color: #46bdc6 !important;
}

.bg-SoportePremium {
    background-color: #34a853 !important;
}

.bg-SoporteEnterprise {
    background-color: #ff6d01 !important;
}

table.programas tbody th {

    text-align: center;
    /* Centra el texto horizontalmente dentro de la celda */
    vertical-align: middle;
    /* Centra el texto verticalmente dentro de la celda */
    color: white;
    text-transform: uppercase;
}

.table > :not(:first-child) {
    color: #ffab60;
}

table.programas thead tr th {
    background-color: #ffab60 !important;
    color: white;
    text-align: center;
    vertical-align: middle;
}

table.programas tbody th.bg-Personas,
table.programas tbody th.bg-Talento,
table.programas tbody th.bg-Finanzas {
    writing-mode: vertical-rl;
    text-orientation: upright;
}

input[type='checkbox'] + label:hover {
    cursor: pointer;
}

table.programas button:disabled i {
    background-color: #e9ecef;
    border-color: #6c757d;
    opacity: 1;
    color: #6c757d;
}

table.programas button.btn-outline-secondary:not(:disabled) i,
table.programas button.btn-outline-primary:not(:disabled) i {
    color: #ffab60 !important;
}

table.programas button.btn-outline-secondary:not(:disabled):hover i,
table.programas button.btn-outline-primary:not(:disabled):hover i {
    color: white !important;
}

html,
body,
body > * {
    font-family: Poppins, sans-serif !important;
}

.rounded-4 {
    border-radius: 1rem !important;
}

.rounded-top-4 {
    border-top-left-radius: 1rem !important;
    border-top-right-radius: 1rem !important;
}

.rounded-bottom-4 {
    border-bottom-left-radius: 1rem !important;
    border-bottom-right-radius: 1rem !important;
}

/* Corrige fondo reducido para impresión */
.card-body.fondo {
    background-size: 25%;
}

@media print {

    /* Corrige fondo reducido para impresión */
    .card-body.fondo {
        background-size: 25%;
    }

    /* Oculta secciones y divs vacíos */
    section:empty,
    div:empty {
        display: none !important;
    }

    /* Previene saltos dentro de bloques */
    div,
    body {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    /* Previene salto al principio */
    html,
    body,
    body > * {
        margin: 0 !important;
        padding: 0 !important;
        break-before: auto !important;
        page-break-before: auto !important;
        font-family: Poppins, sans-serif !important;
    }

    /* Elimina márgenes que pueden generar página en blanco */
    body {
        margin: 0 !important;
        padding: 0 !important;
    }

    * {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    /* Soluciona problemas de primera página en blanco */
    body::before {
        content: "";
        display: none;
    }

    /* Margen estándar en impresión */
    @page {
        margin: 2mm;
        /* Ajusta según tu necesidad */
    }

    img {
        max-width: 100%;
        height: auto;
        display: block;
        page-break-after: always;
        break-after: page;
    }

    body {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    #fondoPage {
        margin-top: 9px !important;
    }
}