/* PrimeFaces UI Framework Replica */
*, *::before, *::after {
    box-sizing: border-box;
}

.ui-helper-hidden {
    display: none;
}

.ui-widget {
    font-family: Roboto, Arial, sans-serif;
    font-size: 1em;
}

.ui-widget-content {
    border: 1px solid #d9d9d9;
    background: #ffffff;
    color: #222222;
}

.ui-widget-overlay {
    background: #666666;
    opacity: .5;
}

.ui-corner-all {
    border-radius: 3px;
}

.ui-state-default {
    border: 1px solid #d6d6d6;
    background: #ffffff;
    font-weight: normal;
    color: #555555;
}

/* Grid System */
.ui-grid {
    display: block;
    width: 100%;
    clear: both;
}

.ui-grid::after {
    content: "";
    display: table;
    clear: both;
}

.ui-grid-responsive .ui-grid-row {
    display: flex;
    flex-wrap: wrap;
}

.ui-grid-col-1 { width: 8.3333%; }
.ui-grid-col-2 { width: 16.6667%; }
.ui-grid-col-3 { width: 25%; }
.ui-grid-col-4 { width: 33.3333%; }
.ui-grid-col-5 { width: 41.6667%; }
.ui-grid-col-6 { width: 50%; }
.ui-grid-col-7 { width: 58.3333%; }
.ui-grid-col-8 { width: 66.6667%; }
.ui-grid-col-9 { width: 75%; }
.ui-grid-col-10 { width: 83.3333%; }
.ui-grid-col-11 { width: 91.6667%; }
.ui-grid-col-12 { width: 100%; }

.ui-panelgrid {
    border-collapse: collapse;
    width: 100%;
}

.ui-panelgrid-cell {
    padding: 4px 10px;
}

/* Fluid */
.ui-fluid {
    width: 100%;
}

/* Input */
.ui-inputfield {
    border: 1px solid #d6d6d6;
    background: #ffffff;
    color: #222222;
    padding: 0.429em;
    font-size: 1em;
    font-family: Roboto, Arial, sans-serif;
}

.ui-inputfield:focus {
    outline: none;
    border-color: #156090;
    box-shadow: 0 0 5px rgba(21, 96, 144, 0.3);
}

.ui-inputtext {
    padding: 0.429em;
}

/* Button */
.ui-button {
    display: inline-block;
    cursor: pointer;
    text-align: center;
    overflow: visible;
    padding: 0;
    margin-right: 0.4em;
}

.ui-button-text-only .ui-button-text {
    display: block;
    padding: 0.429em 1em;
}

.buttonBuscar {
    background: #9c2444 !important;
    border-color: #9c2444 !important;
    color: #fff !important;
    font-size: 14px;
    cursor: pointer;
    transition: background-color 0.2s;
}

.buttonBuscar:hover {
    background: #7a1c35 !important;
}

.buttonBuscar .ui-button-text {
    color: #fff;
}

/* Separator */
.ui-separator {
    border: none;
    border-top: 1px solid #d6d6d6;
    margin: 1em 0;
}

/* Message */
.ui-message {
    padding: 0.429em;
    margin: 0;
}

.ui-message-error {
    border: 1px solid #d4a017;
    background: #fefce8;
    color: #725c0c;
    padding: 8px 12px;
    border-radius: 3px;
    margin-top: 6px;
}

.ui-message-error-icon::before {
    content: "⚠";
    margin-right: 6px;
}

.ui-message-error-detail {
    font-size: 12.5px;
    font-weight: 400;
}

/* DataTable */
.ui-datatable {
    width: 100%;
}

.ui-datatable table {
    border-collapse: collapse;
    width: 100%;
    table-layout: auto;
}

.ui-datatable thead th {
    padding: 8px 10px;
    border: 1px solid #d6d6d6;
    background: #eaeaea;
    text-align: center;
    font-weight: bold;
    font-size: 12px;
}

.ui-datatable tbody td {
    padding: 8px 10px;
    border: 1px solid #d6d6d6;
}

.ui-datatable-even {
    background: #ffffff;
}

.ui-datatable-odd {
    background: #f9f9f9;
}

.ui-column-title {
    font-weight: bold;
}

/* Block UI / Dialog */
.ui-blockui {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}

.ui-blockui-content {
    background: #fff;
    padding: 1em;
    border: 1px solid #d6d6d6;
    border-radius: 3px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}

.ui-shadow {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

/* Output Label */
.ui-outputlabel {
    font-family: Roboto, Arial, sans-serif;
}

/* Table datos b */
.tabla-datos-b {
    border: 0;
    border-spacing: 0;
}

.tabla-datos-b td {
    padding: 2px 0;
}

/* Responsive */
@media only screen and (max-width: 35em) {
    .ui-grid-responsive .ui-grid-row > [class*="ui-grid-col-"] {
        width: 100%;
        padding: 0;
    }
    .ui-panelgrid-cell.ui-grid-col-2.border-right {
        border-right: none;
    }
}

/* Modal Overlay (Popup Aviso) */
.modal-overlay {
    display: none;
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}

.modal-content {
    position: relative;
    background-color: transparent;
    margin: 10px auto;
    padding: 10px;
    width: 95%;
    height: 95%;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
    border-radius: 0 0 8px 8px;
    text-align: center;
}

.close-btn {
    position: absolute;
    right: 100px;
    top: 10px;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    color: #aaa;
    width: 30px;
    height: 30px;
    z-index: 10;
}

.close-btn:hover {
    color: #000;
}

.modal-img {
    max-width: 100%;
    height: 80%;
    border-radius: 4px;
}

/* Animations */
.fade-enter-active, .fade-leave-active {
    transition: opacity .8s;
}

.fade-enter, .fade-leave-to {
    opacity: 0;
}

/* Nuevo11 link style */
.nuevo11 {
    color: #9c2444;
}

/* Acronym tooltip */
acronym {
    cursor: help;
    text-decoration: none;
    border-bottom: none;
}

acronym img {
    vertical-align: middle;
}
