@CHARSET "UTF-8";

@import url('https://fonts.googleapis.com/css?family=Comfortaa:300,400,500,600,700&display=swap');

body {
    font-size: 1rem;
    font-family: "Open Sans", "Helvetica Neue", sans-serif;
    overflow: auto;
    height: 100%;
    margin: 0;
    padding: 0;
}

.ToraxFont {
    font-family: "Open Sans", "Helvetica Neue", sans-serif;
}

.H1 {
    color: var(--corp-grey);
    font-weight: bold !important;
    font-size: 24pt;
}

.MobileTitle {
    top: 1%;
    right: 2%;
    position: fixed;
    z-index: 10000;
    font-size: 13pt;
}

.header {
    background-color: #eee;
    position: fixed;
    z-index: 1004;
    padding-top: 0.5%;
}


/** ESTADOS */

.status {
    border-radius: 10px;
    padding: 0.25em 0.5rem;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 0.3px;
}

.status-animal {
    border-radius: 17px;
    padding: 0.25em 0.5rem;
    font-weight: 500;
    font-size: 11px;
    height: 34px;
    width: 100%;
    margin: auto;
    align-content: center;
    text-align: center;
}

.status-green {
    background: #C8E6C9;
    color: #256029;
}

.status-yellow {
    background: #FEEDAF;
    color: #8A5340;
}

.status-red {
    background: #FFCDD2;
    color: #C63737;
}

.status-blue {
    background: #B3E5FC;
    color: #23547B;
}

.status-grey {
    background: #c0c0c0;
    color: #000000;
}

.status-purple {
    background: #ECCFFF !important;
    color: #694382 !important;
}

.status-black {
    background: #ECCFFF !important;
    color: #694382 !important;
}

.status-orange {
    background: #ffe2c3 !important;
    color: #f47e00 !important;
}


/** TAB VIEW **/


body .ui-tabs.ui-tabs-top > .ui-tabs-nav li.ui-state-hover {
    border-bottom: 6px solid #bbb !important;
}

body .ui-tabs.ui-tabs-top > .ui-tabs-nav {
    border-bottom: 0 !important;
    height: 35px;
}

body .ui-tabs .ui-tabs-nav {
    /* border-bottom: 2px solid lightgrey; */
}

body .ui-tabs .ui-tabs-nav li.ui-tabs-header a {
    color: #888;
}

body .ui-tabs .ui-tabs-nav li.ui-tabs-header.ui-state-default a {
    border-bottom: 0;
}

body .ui-tabs .ui-tabs-nav li.ui-tabs-header.ui-state-active a {
    color: var(--corp-grey);
}

body .ui-tabs .ui-tabs-nav li.ui-tabs-header {
    padding: 0.6rem 1rem;
    border-bottom: 2px solid transparent !important;
}

body .ui-tabs .ui-tabs-nav li.ui-tabs-header.ui-tabs-outline {
    box-shadow: inset 0 0 0 .2rem transparent !important;
}

body .ui-tabs-nav li.ui-tabs-header.ui-state-active,
body .ui-tabs-nav li.ui-tabs-header.ui-state-active.ui-state-hover {
    border-bottom: 6px solid var(--corp-green) !important;
    margin-bottom: -2px;
}

body .ui-tabs.ui-tabs-top > .ui-tabs-nav li.ui-tabs-header {
    background-color: transparent !important;
    margin-bottom: -2px;
}

body .ui-tabs-nav li.ui-tabs-header.ui-state-default.ui-state-hover {
    border-bottom: 6px solid #dee2e6 !important;
    margin-bottom: -2px;
}

body .ui-tabs .ui-tabs-nav li.ui-tabs-header.ui-state-active.ui-state-hover {
    border-bottom: 6px solid var(--corp-green) !important;
    margin-bottom: -2px;

}

body .ui-datatable thead th.ui-state-active {
    color: var(--corp-green);
}

body .ui-datatable thead th.ui-state-active:hover {
    color: var(--corp-green);
}

/*-------------------- REVISADO HASTA AQUÍ --------------------------------*/

body .ui-selectonebutton > .ui-button.ui-state-active {
    background: #deefed;
    color: #1c8676;
    border-color: var(--corp-green);
}


body .ui-selectonebutton > .ui-button.ui-state-active:not(.ui-state-disabled):hover {
    background: #e2edec;
    color: #1c8676;
    border-color: var(--corp-green);
}


.H3 {
    color: #adadad;
    font-weight: bold;
}

/* hide mobile version by default */
.logo .mobile {
    display: none;
}

/* when screen is less than 600px wide
   show mobile version and hide desktop */
@media (max-width: 415px) {
    .logo .mobile {
        display: block;
    }

    .logo .desktop {
        display: none;
    }
}

.logo.footer {
    margin-left: 10px;
}

.ui-sidebar-close {
    margin-top: -5px;
    margin-right: -5px;
}

img {
    border: none;
    background-color: transparent;
}

button {
    border-color: var(--corp-green) !important; /*  ff0080*/
    background-color: var(--corp-green) !important;
}

body .ui-linkbutton {
    border-color: var(--corp-green) !important; /*  ff0080*/
    background-color: var(--corp-green) !important;
}

body .ui-linkbutton.white {
    background-color: white !important;
    color: var(--corp-green) !important
}

body .ui-linkbutton.white:hover {
    border-color: grey !important;
    background-color: grey !important;
    color: white !important;
}

button.white {
    background-color: white !important;
    color: var(--corp-green) !important
}

.ui-autocomplete-dropdown {
    background-color: white !important;
    color: var(--corp-green) !important
}

button.ghost {
    background-color: transparent !important;
    color: var(--corp-green) !important
}

button.transparent {
    background-color: transparent !important;
    color: #555 !important;
    border-color: black !important;
}

button.rounded {
    border-radius: 50%;
    height: 2.357rem;
    width: 2.357rem !important;
}

span.ui-button-icon-left.farm, a.farm {
    background-image: url(/resources/vpd/images/farm_icon_2_black.png) !important;
    background-size: 25px;
    background-repeat: no-repeat;
    background-position-x: center;
    background-position-y: center;
}

.ui-fluid .ui-inputgroup .ui-button {
    width: 2.143em;
}

/*  TEXEDITOR */

.ql-snow.ql-toolbar button {
    background-color: #f4f4f4 !important;
}

.ql-snow.ql-toolbar button:active {
    background-color: grey !important;
}

body .ui-texteditor .ui-editor-toolbar {
    background-color: #f4f4f4 !important;
}

button:hover, button.white:hover {
    border-color: grey !important;
    background-color: grey !important;
    color: white !important;
}

label {
    font-weight: bold;
}

.sidenav {
    background-color: black;
    background-image: none !important;
    border-color: black;
}

.sidenav .ui-menu {
    background-color: black !important;
    background-image: none !important;
    border: none;
    width: 95% !important;
}

.sidenav a, .sidenav li, .sidenav ul {
    padding: 8px 8px 8px 16px;
    text-decoration: none;
    font-weight: bold;
    font-size: 15px;
    color: #818181;
    display: block;
    transition: 0.3s;
    background-color: black !important;
    background-image: none !important;
    border: none;
    width: 100%;
}

.sidenav a:hover, .sidenav .ui-menuitem li:hover, .offcanvas a:focus, .sidenav button:hover {
    color: #000000;
    background-color: white !important
}

.sidenav h3 {
    color: #818181;
    background-color: black !important;
    background-image: none !important;
    margin-left: -15px !important;
}

.sidenav h3:hover {
    color: #f1f1f1;
    background-color: black !important;
}

.sidenav .ui-sidebar-close {
    visibility: hidden !important;
}

.sidenav .ui-scrollpanel {
    width: 100% !important;
}

.sidenav .ui-scrollpanel-track {
    background-color: black;
}

.sidenav .ui-state-highlight {
    background-color: white !important;
}

.ui-scrollpanel-track .ui-state-highlight {
    background-color: #818181 !important;
}

.userName {
    font-size: 13pt;
    padding-left: 2%;
}

body .ui-chkbox .ui-chkbox-box.ui-state-active {
    background-color: var(--corp-green) !important;
    border-color: var(--corp-green) !important;
}

body .confirmDialog .ui-dialog-content {
    border-bottom: none;
    padding-bottom: 1rem;
    text-align: left !important;
    align-items: start !important;
}

.ui-confirm-dialog,
.confirmDialog {
    max-width: 600px; /* Ancho máximo en pantallas grandes */
    padding: 1.2rem; /* Espacio interior para evitar que el texto se pegue */
}

/* Adaptación en pantallas pequeñas */
@media (max-width: 600px) {
    .ui-confirm-dialog,
    .confirmDialog {
        width: 90% !important;
    }

    .ui-confirm-dialog-severity {
        font-size: 2rem !important; /* Icono ligeramente más pequeño en móvil */
    }
}

.ui-confirm-dialog-message,
.confirmDialog {
    line-height: 1.5rem !important;
    font-size: 1.0rem;
    margin-left: 1.5rem !important;
}


/* Advertencia - Rojo */
.ui-confirm-dialog-severity[data-icon="triangle-exclamation"] {
    color: #d9534f !important; /* Rojo de advertencia */
    font-size: 3.5rem !important;
    align-self: start;
}

/* Información - Azul */
.ui-confirm-dialog-severity[data-icon="circle-info"] {
    color: #0275d8 !important; /* Azul de información */
    font-size: 2.5rem !important;
}

/* Éxito - Verde */
.ui-confirm-dialog-severity[data-icon="circle-check"] {
    color: #5cb85c !important; /* Verde de éxito */
    font-size: 2.5rem !important;
}

/* Confirmación - Amarillo */
.ui-confirm-dialog-severity[data-icon="circle-question"] {
    color: #f0ad4e !important; /* Amarillo para confirmaciones */
    font-size: 2.5rem !important;
}


/* Adaptación en pantallas pequeñas */
@media (max-width: 600px) {
    .ui-confirm-dialog {
        width: 90% !important;
    }

    .ui-confirm-dialog-severity[data-icon="circle-info"] {
        font-size: 2rem !important; /* Icono ligeramente más pequeño en móvil */
    }

    .ui-confirm-dialog-message {
        line-height: 1.5rem !important;
        margin-left: 1.2rem !important;
    }

}


body .ui-radiobutton .ui-radiobutton-box.ui-state-active {
    background-color: var(--corp-green) !important;
    border-color: var(--corp-green) !important;
    color: #fff;
}

body .ui-datatable .ui-datatable-data > tr.ui-state-highlight {
    /*border: 1px solid #c8c8c8;*/
    /*background-color: gold !important;*/
    /*color: #333 !important;*/
    /*cursor: default;*/
}

/* confirm dialog */
body .ui-dialog .ui-dialog-content.ui-df-content {
    text-align: center;
}

.successDlg .ui-dialog-titlebar {
    display: none !important;
}

.successDlg .ui-dialog-content {
    background-color: #b7d8b7 !important;
}

.errorDlg .ui-dialog-titlebar {
    display: none !important;
}

.errorDlg .ui-dialog-content {
    background-color: #f8b7bd !important;
}

.noBorders * {
    border: none !important;
}

.numberCircle {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    padding: 0;
    margin: auto;
    width: 200px;
    height: 200px;
    background: #fff;
    border: 36px solid #e3e3e3 !important;
    text-align: center;
    font: bold 50px Arial !important;
}

.numberCircleLink a {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    padding: 0;
    margin: auto;
    width: 200px;
    height: 200px;
    background: #fff;
    border: 36px solid !important;
    text-align: center;
    font: bold 50px Arial !important;
    text-decoration: none;
}


.green, .green a {
    color: #03A64A !important;
    border-color: #03A64A !important;
}

.gold, .gold a {
    color: gold !important;
    border-color: gold !important;
    text-decoration: none !important;
}

.red, .red a {
    color: #d32f2f !important;
    border-color: #d32f2f !important;
    text-decoration: none !important;
    background-color: white !important;
}

.grey, .grey a {
    color: grey !important;
    border-color: grey !important;
    text-decoration: none !important;
    background-color: white !important;
}

.grey a:hover {
    border-color: lightgrey !important;
}

.danger, .danger a {
    color: white !important;
    border-color: #d32f2f !important;
    text-decoration: none !important;
    background-color: #d32f2f !important;
}

.green a:hover {
    color: #04D976;
    border-color: #04D976 !important;
    text-decoration: none !important;
}

.gold a:hover {
    color: #ffeb80;
    border-color: #ffeb80 !important;
    text-decoration: none !important;
}

.red a:hover {
    color: #ff8080;
    border-color: #ff8080 !important;
    text-decoration: none !important;
}

#ButtonsBar {
    width: 100%;
}

.ui-badge-top-right,
.ui-badge-top-left {
    overflow: visible !important;
}

body .ui-steps .ui-steps-item {
    width: 33%;
}

body .ui-steps .ui-steps-item.ui-state-highlight .ui-steps-number {
    background: #1D8777;
    color: #fff;
}

@media screen and (max-width: 415px) {
    .ui-datagrid-column {
        width: 100% !important;
    }
}

/*
@media screen and (min-width: 416px) and (max-width: 710px) {
	.ui-datagrid-column {
		width: 50% !important;
	}
}


@media screen and (min-width: 711px) {
	.ui-datagrid-column {
		width: 33% !important;
	}
}
*/
body.login {
    min-height: 100%;
    margin: 0;
}

body.error {
    min-height: 350px;
    margin: 0;
}

.contenido_login {
    height: 100%;
}

.contenido-print {
    padding: 0;
    margin: 0;
}

#TreatmentsBookFormPrint .ui-datatable table {
    width: min-content;
}

#TreatmentsBookFormPrint .ui-datatable thead th {
    padding: 3px 10px;
    font-weight: normal !important;
}

#TreatmentsBookFormPrint .ui-datatable td {
    padding: 0;
}

#TreatmentsBookFormPrint table {
    padding: 0;
    border-spacing: 0;
}

.contenido {
    min-height: calc(100vh - 105px);
    padding: 0 10px 25px 10px;
}

#ResetForm,
#InvalidSessionForm,
#LoginForm {
    height: 100%;
}

#LoginLogoContainer {
    position: absolute;
    margin: 10px;
}

#SignInLogoContainer {
    margin: 10px;
}

.LoginBoxWrapperWrapper {
    display: table;
    height: 100%;
    margin: 0 auto;

}

.LoginBoxWrapper {
    display: table-cell;
    width: 100%;
    text-align: center;
    vertical-align: middle;
    margin: 0 auto;
}

#ErrorDialogBox,
#LoginBox {
    text-align: left;
    padding: 20px;
}

#WithoutMenuWrapperSignIn {
    padding: 10px;
    max-width: 600px;
    margin: 0 auto;
}

#SignInForm\:DataForm {
    text-align: left;
}

#LoginForm\:LoginGBLogoContainer {
    text-align: center;
}

#SignInForm\:FarmForm {
    text-align: left;
}

body .ui-message {
    display: block;
}

body .ui-messages {
    display: block;
    margin: 0;
}

.LoginBox {
    max-width: 400px;
    min-width: 285px;
}

#LoginForm\:BigGuardianLogo {
    width: 100%;
    margin-bottom: 20px;
}

#SidebarForm\:BigGuardianLogoSideBar {
    width: 100%;
}

.scroll::-webkit-scrollbar {
    width: 5px;
    background-color: white;
}

.scroll::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background-color: #bbb;
}

.scroll::-webkit-scrollbar {
    width: 5px;
    background-color: white;
}

.scroll::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background-color: #bbb;
}

.alerts_col {
    width: 50px;
    text-align: center;
}


@media ( min-width: 641px) {
    .select_col {
        width: 25px !important;
        text-align: center !important;
    }

    .batt_col {
        width: 50px;
        text-align: center;
    }

    .salto_mobile {
        display: block;
    }

    .width_40_center_col {
        width: 40px;
        text-align: center;
    }

    .width_80_center_col {
        width: 80px;
        text-align: center;
    }

    .width_120_center_col {
        width: 120px;
        text-align: center;
    }

    .width_150_center_col {
        width: 150px;
        text-align: center;
    }

}


@media ( max-width: 640px) {
    .ui-column-title {
        font-weight: bold;
        min-width: 40% !important;
        width: 40%;
    }

    .alert_cell {
        text-align: right;
    }


    .salto_mobile {
        display: none;
    }
}


.cell_data {
    text-align: left;
}

.cell_data_r {
    text-align: right;
}


.copyright {
    color: #888;
    font-weight: bold;
}

.ui-dashboard-column {
    padding-bottom: 0;
}

body .ui-toggleswitch.ui-toggleswitch-checked .ui-toggleswitch-slider {
    background: var(--corp-green);
}

body .ui-paginator .ui-paginator-pages .ui-paginator-page.ui-state-active {
    background-color: #a0a0a0;
    color: #fff;
    border-radius: 100px;
    font-weight: 700;
    line-height: 27px;
}

body .ui-paginator .ui-paginator-pages .ui-paginator-page.ui-state-hover {
    border-radius: 100px;
}

body .ui-multiselectlistbox .ui-multiselectlistbox-listcontainer .ui-multiselectlistbox-list .ui-multiselectlistbox-item.ui-state-highlight {
    background-color: var(--corp-green);
    color: #fff;
}

.fa-rotate-45 {
    transform: rotate(45deg);
}

body .ui-paginator {
    padding: 5px 0;
    text-align: right;
    font-size: 13px;
}

.p-datepicker-panel {
    min-width: unset !important;
}

.field {
    margin-bottom: 0 !important;
}


.GatewayHeartbeatAlert,
.GatewayFreeSpaceAlert {
    color: #f00;
}

.treatments-date-header {
    writing-mode: vertical-lr;
    transform: rotate(190deg);
    background-color: transparent !important;
    font-size: smaller;
    font-weight: lighter !important;
}

.tratamientosFiebre {
    background-color: #FFCDD2;
}

.tratamientosFiebreLeve {
    background-color: #ffebda;
}

.tratamientosBajaTemperatura {
    background-color: #daf6ff;
}

.tratamientosNoRecibido {
    background-color: #dedede;
}

.tratamientosGranjaIncorrecta {
    background-color: #ff4646;
}

.tratamientosTemperaturaAnomala {
    background-color: #ff4646;
}

.tratamiento-gen {
    font-size: 9px;
    text-transform: uppercase;
    padding: 1px 5px;
    border-radius: 3px;
    vertical-align: middle;
}

#TreatmentsBookFormPrint .tratamiento-gen {
    font-size: 8px;
    text-transform: uppercase;
    padding: 1px 3px;
    border-radius: 3px;
    position: relative;
    top: -2px;
}

#TabView\:TreatmentsBookForm .ui-selectmanymenu .ui-selectlistbox-listcontainer .ui-selectlistbox-list .ui-selectlistbox-item > td,
#TreatmentsBookForm .ui-selectmanymenu .ui-selectlistbox-listcontainer .ui-selectlistbox-list .ui-selectlistbox-item > td {
    padding: 2px 5px;
    border: none;
    vertical-align: top;
}

/*
#TreatmentsBookForm .ui-selectmanymenu .ui-selectlistbox-listcontainer .ui-selectlistbox-list .ui-selectlistbox-item.ui-state-highlight {
  background-color: #fff;
  color: #fff;
}
*/

#TabView\:#TreatmentsBookForm .ui-selectonelistbox .ui-selectlistbox-listcontainer .ui-selectlistbox-list .ui-selectlistbox-item.ui-state-highlight .ui-chkbox .ui-chkbox-box,
#TabView\:#TreatmentsBookForm .ui-selectmanymenu .ui-selectlistbox-listcontainer .ui-selectlistbox-list .ui-selectlistbox-item.ui-state-highlight .ui-chkbox .ui-chkbox-box,
#TreatmentsBookForm .ui-selectonelistbox .ui-selectlistbox-listcontainer .ui-selectlistbox-list .ui-selectlistbox-item.ui-state-highlight .ui-chkbox .ui-chkbox-box,
#TreatmentsBookForm .ui-selectmanymenu .ui-selectlistbox-listcontainer .ui-selectlistbox-list .ui-selectlistbox-item.ui-state-highlight .ui-chkbox .ui-chkbox-box {
    border-color: #666;
}

#TabView\:#TreatmentsBookForm .ui-selectonelistbox .ui-selectlistbox-listcontainer .ui-selectlistbox-list .ui-selectlistbox-item.ui-state-highlight .ui-chkbox .ui-chkbox-box,
#TabView\:#TreatmentsBookForm .ui-selectmanymenu .ui-selectlistbox-listcontainer .ui-selectlistbox-list .ui-selectlistbox-item.ui-state-highlight .ui-chkbox .ui-chkbox-box > span::before,
#TreatmentsBookForm .ui-selectonelistbox .ui-selectlistbox-listcontainer .ui-selectlistbox-list .ui-selectlistbox-item.ui-state-highlight .ui-chkbox .ui-chkbox-box,
#TreatmentsBookForm .ui-selectmanymenu .ui-selectlistbox-listcontainer .ui-selectlistbox-list .ui-selectlistbox-item.ui-state-highlight .ui-chkbox .ui-chkbox-box > span::before {
    font-size: 0.7em;
    top: -0.3em;
    position: relative;
    left: 0.2em;
}


#TreatmentTypesForm .ui-datatable .ui-datatable-data td.ui-cell-editing {
    padding: 0.571em 0.857em;
}

.boton-transparente {
    background-color: transparent !important;
}

#TreatmentTypesForm .ui-chkbox .ui-chkbox-box.ui-state-active,
#TreatmentTypesForm .ui-chkbox-box .ui-widget .ui-corner-all .ui-state-default .ui-state-active {
    /*background-color: #fff !important;*/
    border-color: #a6a6a6 !important;
}


#TabView\:TreatmentsBookForm .ui-datatable table,
#TreatmentsBookForm .ui-datatable table {
    table-layout: auto;
    border-collapse: collapse;
    border-spacing: 0;
}

#TabView\:TreatmentsBookForm .ui-datatable .ui-datatable-data > tr > td,
#TreatmentsBookForm .ui-datatable .ui-datatable-data > tr > td {
    padding: 0;
    border: 1px solid #c8c8c8;
}

#TabView\:TreatmentsBookForm .ui-datatable .ui-datatable-data > tr,
#TreatmentsBookForm .ui-datatable .ui-datatable-data > tr {
    border: 1px solid;
    border-color: #c8c8c8;
}

#TabView\:TreatmentsBookForm\:j_idt30_frozenTbody,
#TreatmentsBookForm\:j_idt30_frozenTbody {
    border-right: 2px solid #c8c8c8;
}


#TBTableContainer {
    height: calc(100vh - 245px); /* Por defecto: pantallas grandes */
}

@media (max-width: 920px) {
    #TBTableContainer {
        height: calc(100vh - 285px);
    }
}

@media (max-width: 600px) {
    #TBTableContainer {
        height: calc(100vh - 315px);
    }
}

@media (max-width: 500px) {
    #TBTableContainer {
        height: calc(100vh - 305px);
    }
}


.contenido-print {
    padding: 0;
    margin: 0;
}

#TreatmentsBookFormPrint .ui-datatable table {
    width: min-content;
}

#TreatmentsBookFormPrint .ui-datatable thead th {
    padding: 3px 10px;
    font-weight: normal !important;
}

#TreatmentsBookFormPrint .ui-datatable td {
    padding: 0;
    border: 1px solid #ccc;
}

#TreatmentsBookFormPrint table {
    padding: 0;
    border-spacing: 0;
}


.card {
    border-radius: var(--border-radius);
    padding: 1rem !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03), 0 0 2px rgba(0, 0, 0, 0.06), 0 2px 6px rgba(0, 0, 0, 0.12) !important;
}

.surface-card-blue {
    background-color: var(--blue-100) !important;
}

.text-corp-grey {
    color: var(--corp-grey);
}

.text-red-500 {
    color: var(--red-500);
}

.text-grey-500 {
    color: var(--grey-500);
}

.text-white {
    color: var(--white) !important;
}

.text-l {
    font-size: var(--l) !important;
}

.text-xl {
    font-size: var(--xl) !important;
}

.text-xxl {
    font-size: var(--xxl) !important;
}

.text-xxxl {
    font-size: var(--xxxl) !important;
}

.bg-bluegray {
    background-color: var(--bluegray);
}

.bg-green {
    background-color: var(--green);
}

.bg-red {
    background-color: var(--red);
}

.bg-red-100 {
    background-color: var(--red-100);
}

.bg-grey-100 {
    background-color: var(--grey-100);
}

.bg-white {
    background-color: #ffffff;
}

.bg-login {
    background-color: #ffffff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25'%3E%3Cdefs%3E%3ClinearGradient id='a' gradientUnits='userSpaceOnUse' x1='0' x2='0' y1='0' y2='100%25' gradientTransform='rotate(230,960,468)'%3E%3Cstop offset='0' stop-color='%23ffffff'/%3E%3Cstop offset='1' stop-color='%231C8676'/%3E%3C/linearGradient%3E%3Cpattern patternUnits='userSpaceOnUse' id='b' width='526' height='438.3' x='0' y='0' viewBox='0 0 1080 900'%3E%3Cg fill-opacity='0.13'%3E%3Cpolygon fill='%23444' points='90 150 0 300 180 300'/%3E%3Cpolygon points='90 150 180 0 0 0'/%3E%3Cpolygon fill='%23AAA' points='270 150 360 0 180 0'/%3E%3Cpolygon fill='%23DDD' points='450 150 360 300 540 300'/%3E%3Cpolygon fill='%23999' points='450 150 540 0 360 0'/%3E%3Cpolygon points='630 150 540 300 720 300'/%3E%3Cpolygon fill='%23DDD' points='630 150 720 0 540 0'/%3E%3Cpolygon fill='%23444' points='810 150 720 300 900 300'/%3E%3Cpolygon fill='%23FFF' points='810 150 900 0 720 0'/%3E%3Cpolygon fill='%23DDD' points='990 150 900 300 1080 300'/%3E%3Cpolygon fill='%23444' points='990 150 1080 0 900 0'/%3E%3Cpolygon fill='%23DDD' points='90 450 0 600 180 600'/%3E%3Cpolygon points='90 450 180 300 0 300'/%3E%3Cpolygon fill='%23666' points='270 450 180 600 360 600'/%3E%3Cpolygon fill='%23AAA' points='270 450 360 300 180 300'/%3E%3Cpolygon fill='%23DDD' points='450 450 360 600 540 600'/%3E%3Cpolygon fill='%23999' points='450 450 540 300 360 300'/%3E%3Cpolygon fill='%23999' points='630 450 540 600 720 600'/%3E%3Cpolygon fill='%23FFF' points='630 450 720 300 540 300'/%3E%3Cpolygon points='810 450 720 600 900 600'/%3E%3Cpolygon fill='%23DDD' points='810 450 900 300 720 300'/%3E%3Cpolygon fill='%23AAA' points='990 450 900 600 1080 600'/%3E%3Cpolygon fill='%23444' points='990 450 1080 300 900 300'/%3E%3Cpolygon fill='%23222' points='90 750 0 900 180 900'/%3E%3Cpolygon points='270 750 180 900 360 900'/%3E%3Cpolygon fill='%23DDD' points='270 750 360 600 180 600'/%3E%3Cpolygon points='450 750 540 600 360 600'/%3E%3Cpolygon points='630 750 540 900 720 900'/%3E%3Cpolygon fill='%23444' points='630 750 720 600 540 600'/%3E%3Cpolygon fill='%23AAA' points='810 750 720 900 900 900'/%3E%3Cpolygon fill='%23666' points='810 750 900 600 720 600'/%3E%3Cpolygon fill='%23999' points='990 750 900 900 1080 900'/%3E%3Cpolygon fill='%23999' points='180 0 90 150 270 150'/%3E%3Cpolygon fill='%23444' points='360 0 270 150 450 150'/%3E%3Cpolygon fill='%23FFF' points='540 0 450 150 630 150'/%3E%3Cpolygon points='900 0 810 150 990 150'/%3E%3Cpolygon fill='%23222' points='0 300 -90 450 90 450'/%3E%3Cpolygon fill='%23FFF' points='0 300 90 150 -90 150'/%3E%3Cpolygon fill='%23FFF' points='180 300 90 450 270 450'/%3E%3Cpolygon fill='%23666' points='180 300 270 150 90 150'/%3E%3Cpolygon fill='%23222' points='360 300 270 450 450 450'/%3E%3Cpolygon fill='%23FFF' points='360 300 450 150 270 150'/%3E%3Cpolygon fill='%23444' points='540 300 450 450 630 450'/%3E%3Cpolygon fill='%23222' points='540 300 630 150 450 150'/%3E%3Cpolygon fill='%23AAA' points='720 300 630 450 810 450'/%3E%3Cpolygon fill='%23666' points='720 300 810 150 630 150'/%3E%3Cpolygon fill='%23FFF' points='900 300 810 450 990 450'/%3E%3Cpolygon fill='%23999' points='900 300 990 150 810 150'/%3E%3Cpolygon points='0 600 -90 750 90 750'/%3E%3Cpolygon fill='%23666' points='0 600 90 450 -90 450'/%3E%3Cpolygon fill='%23AAA' points='180 600 90 750 270 750'/%3E%3Cpolygon fill='%23444' points='180 600 270 450 90 450'/%3E%3Cpolygon fill='%23444' points='360 600 270 750 450 750'/%3E%3Cpolygon fill='%23999' points='360 600 450 450 270 450'/%3E%3Cpolygon fill='%23666' points='540 600 630 450 450 450'/%3E%3Cpolygon fill='%23222' points='720 600 630 750 810 750'/%3E%3Cpolygon fill='%23FFF' points='900 600 810 750 990 750'/%3E%3Cpolygon fill='%23222' points='900 600 990 450 810 450'/%3E%3Cpolygon fill='%23DDD' points='0 900 90 750 -90 750'/%3E%3Cpolygon fill='%23444' points='180 900 270 750 90 750'/%3E%3Cpolygon fill='%23FFF' points='360 900 450 750 270 750'/%3E%3Cpolygon fill='%23AAA' points='540 900 630 750 450 750'/%3E%3Cpolygon fill='%23FFF' points='720 900 810 750 630 750'/%3E%3Cpolygon fill='%23222' points='900 900 990 750 810 750'/%3E%3Cpolygon fill='%23222' points='1080 300 990 450 1170 450'/%3E%3Cpolygon fill='%23FFF' points='1080 300 1170 150 990 150'/%3E%3Cpolygon points='1080 600 990 750 1170 750'/%3E%3Cpolygon fill='%23666' points='1080 600 1170 450 990 450'/%3E%3Cpolygon fill='%23DDD' points='1080 900 1170 750 990 750'/%3E%3C/g%3E%3C/pattern%3E%3C/defs%3E%3Crect x='0' y='0' fill='url(%23a)' width='100%25' height='100%25'/%3E%3Crect x='0' y='0' fill='url(%23b)' width='100%25' height='100%25'/%3E%3C/svg%3E");
    background-attachment: fixed;
    background-size: cover;
}

.bg-error {
    background-color: #2AC9B1;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='207' height='207' viewBox='0 0 200 200'%3E%3Cdefs%3E%3ClinearGradient id='a' gradientUnits='userSpaceOnUse' x1='100' y1='33' x2='100' y2='-3'%3E%3Cstop offset='0' stop-color='%23000' stop-opacity='0'/%3E%3Cstop offset='1' stop-color='%23000' stop-opacity='1'/%3E%3C/linearGradient%3E%3ClinearGradient id='b' gradientUnits='userSpaceOnUse' x1='100' y1='135' x2='100' y2='97'%3E%3Cstop offset='0' stop-color='%23000' stop-opacity='0'/%3E%3Cstop offset='1' stop-color='%23000' stop-opacity='1'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='%2300aa94' fill-opacity='0.93'%3E%3Crect x='100' width='100' height='100'/%3E%3Crect y='100' width='100' height='100'/%3E%3C/g%3E%3Cg fill-opacity='0.93'%3E%3Cpolygon fill='url(%23a)' points='100 30 0 0 200 0'/%3E%3Cpolygon fill='url(%23b)' points='100 100 0 130 0 100 200 100 200 130'/%3E%3C/g%3E%3C/svg%3E");
}

.reportHeader {
    font-weight: bold;
    font-size: 18px !important;
    display: block;
    padding: 40px 0 10px 0;
}

.reportDateHeader {
    font-weight: bold;
    font-size: 25px;
    display: block;
    padding-bottom: 8px;
    color: var(--corp-green);
}

.reportTitle {
    font-weight: bold;
    color: var(--corp-grey);
    font-size: 28px;
    display: block;
}

.reportTitleFinal {
    font-weight: bold;
    font-size: 28px;
    display: block;
    border-radius: 5px;
    width: fit-content;
    padding: 5px 10px;
    background-color: #1e8677;
    color: #fff;
    float: left;
}

.reportSubtitle {
    font-weight: bold;
    color: #999;
    font-size: 18px;
    display: block;
    padding-bottom: 20px;
    clear: both;
}

.treatments-date-header-print {
    writing-mode: vertical-lr;
    transform: rotate(190deg);
    font-size: smaller;
}


#TabView\:TreatmentsBookForm\:TreatmentsTable\:j_idt30 .ui-column-title,
#TreatmentsBookForm\:TreatmentsTable\:j_idt30 .ui-column-title {
    position: relative;
    top: 30px;
}

#TabView\:TreatmentsBookForm .ui-datatable-scrollable-theadclone,
#TreatmentsBookForm .ui-datatable-scrollable-theadclone {
    display: none;
}


#TabView\:TreatmentsBookForm .ui-datatable thead th,
#TreatmentsBookForm .ui-datatable thead th {
    border: none;
}

@media ( max-width: 640px) {
    #TabView\:TreatmentsBookForm .ui-column-title,
    #TreatmentsBookFormPrint .inactive-day {
        float: none !important;
    }
}

#TabView\:TreatmentsBookForm\:j_idt29\:j_idt31 > span:nth-child(1),
#TreatmentsBookForm\:j_idt29\:j_idt31 > span:nth-child(1) {
    padding-top: 50px;
    display: block;
}

body a {
    color: var(--corp-green);
}

body a:hover {
    color: var(--corp-green);
}

#LoginForm\:j_idt13 > a:hover {
    text-decoration: underline !important;
}

#FarmsForm\:NoReceivingPensDlg {
    height: 95% !important;
}

#FarmsForm\:NoReceivingPensDlg_content {
    height: 90% !important;
}

#FarmMnmForm\:TreatmentDays > div.ui-selectlistbox-listcontainer > ul > li.ui-state-highlight {
    background-color: #fff;
    color: #000;
}

.disabled {
    color: #ddd;
}

.monospaced {
    font-family: courier, monospace;
}


.intensive-pen-date {
    background-color: #ffd39b;
    color: #d57700;
}

.intensive-pen-date.first {
    border-radius: 15px 0 0 15px;
}

.intensive-pen-date.last {
    border-radius: 0 15px 15px 0;
}

.intensive-pen-date-print {
    color: #ff7b3b;
}

body .ui-selectonebutton > .ui-button:not(:last-child), body .ui-selectmanybutton > .ui-button:not(:last-child) {
    border-width: 1px !important;
}

.selection.unselectedDay.rounded-button.mr-1 span.ui-button-text.ui-c,
.selection.selectedDay.rounded-button.mr-1 span.ui-button-text.ui-c {
    padding: 0;
    margin: 0;
}

body .ui-tabs .ui-tabs-panels .ui-tabs-panel {
    padding: 0;
}

div#PenMnmForm\:TabView.ui-tabs .ui-tabs-panels,
div#FarmMnmForm\:TabView.ui-tabs .ui-tabs-panels {
    padding: 1rem 0;
}

.ui-selectoneradio label {
    cursor: pointer;
    display: inline-block;
    margin: 0 16px 0 8px;
    vertical-align: middle;
    font-weight: normal !important;
}


body .ui-toggleswitch.ui-toggleswitch-checked .ui-toggleswitch-slider {
    background: #1c8676;
}


.ui-menu .ui-menuitem-link {
    font-weight: 400 !important;
}

body .ui-card .ui-card-title {
    font-size: 1.2rem;
}

#AddAnimalsForm .ui-datatable .ui-datatable-data > tr > td {
    padding-top: 0.3rem;
    padding-bottom: 0.3rem;
}

#AddAnimalsForm .ui-selectoneradio label {
    font-weight: normal !important;
}


.trash-button {
    width: 2rem !important;
    height: 2rem !important;
    background: rgba(0, 0, 0, 0) !important;
    color: #6c757d !important;
    transition: background-color .2s, color .2s, border-color .2s, box-shadow .2s, opacity .2s;
    border-radius: 50% !important;
    border: 0 none !important;
    text-align: center !important;
    line-height: 2rem !important;
    padding: 0 !important;
    user-select: none !important;
}

.trash-button:hover {
    background: #e9ecef !important;
    color: #495057 !important;
    border-color: rgba(0, 0, 0, 0) !important;
}

.menu-toggle-button {
    width: 2rem !important;
    height: 2rem !important;
    background: rgba(0, 0, 0, 0) !important;
    color: #d3d3d3 !important;
    transition: background-color .2s, color .2s, border-color .2s, box-shadow .2s, opacity .2s;
    border-radius: 50% !important;
    border: 0 none !important;
    text-align: center !important;
    line-height: 2rem !important;
    padding: 0 !important;
    user-select: none !important;
    box-shadow: none !important;
}

.menu-toggle-button:hover {

    color: #fff !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

body .menu-toggle-button.ui_state_focus {
    color: red !important;
    box-shadow: none !important;
}


/* Barra superior fija */
.top-bar {
    background-color: #eee;
    color: white;
    height: 50px;
    display: flex;
    align-items: center;
    padding: 2px 0.5rem 0 0.5rem;
    position: sticky;
    top: 0;
    z-index: 1500;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); /* Opcional: sombra para que destaque */
    overflow: hidden;
}

.ui-linkbutton a {
    text-decoration: none !important;
}

.ui-linkbutton.ui-button.ui-state-hover {
    background-color: grey !important;
}


#GlobalSearch_input {
    border: 0;
    border-radius: 999px;
}

@media (max-width: 570px) {
    #GlobalSearch_input {
        width: 230px;
    }
}

.user-button {
    color: #555 !important;
    background-color: transparent !important;
    border: 0 !important;
    text-decoration: none !important;
}

#UserForm\:UserButton_menu {
    z-index: 1600 !important;
}

#GlobalSearch_panel.ui-autocomplete-panel {
    z-index: 1600 !important;
}


.user-icon-button {
    background-color: transparent !important;
    border: 0 !important;
    color: black !important;
}

body .ui-menu .ui-menu-list .ui-menuitem .ui-menuitem-link .ui-menuitem-icon {
    margin-right: 0 !important;
    color: #555;
    width: 45px !important;
    text-align: center;
}

body .ui-menu .ui-menu-list .ui-menuitem .ui-menuitem-link {
    padding: .75rem .75rem .75rem 0;
}

.main-menu-item {
    color: white !important;

}

.main-menu-item .ui-menuitem-text {
    color: inherit !important;
    font-weight: 500;
    font-size: 17px;
}


.main-menu-item .ui-menuitem-icon {
    color: inherit !important;
}

.main-menu-item:hover {
    color: black !important;
}

.red .ui-menuitem-text {
    color: #e00 !important;
}

.red .ui-menuitem-icon {
    color: #e60000 !important;
}

body .ui-link {
    color: var(--corp-green);
}

body .ui-link:hover {
    text-decoration: underline;
    color: var(--corp-green);
}


#Form.grid {
    margin: 0 !important;
}

/* Breadcrumbs */

.ui-breadcrumb .ui-menuitem-link:hover {
    text-decoration: underline !important;
}

body .ui-breadcrumb .ui-breadcrumb-items li .ui-menuitem-link:focus {
    box-shadow: none;
}

body .ui-breadcrumb .ui-breadcrumb-items li .ui-menuitem-link .ui-menuitem-text {
    color: #1c8676;
    font-size: 21px;
    margin-left: 7px;
    font-weight: 600;
}

body .ui-breadcrumb .ui-breadcrumb-items li .ui-menuitem-link .ui-menuitem-icon {
    font-size: 21px;
    margin-left: 4px;
    color: #bbb !important;
}

body .ui-breadcrumb .ui-breadcrumb-items li:last-child .ui-menuitem-link .ui-menuitem-text {
    color: #495057;
}

body .ui-breadcrumb .ui-breadcrumb-items li:not(.ui-breadcrumb-chevron)::before {
    margin: 0 10px 0 15px;
    padding-top: 2px;
    font-size: 12px;
}

body .ui-breadcrumb {
    border: 0;
    padding: 0;
}

body .ui-breadcrumb .ui-state-disabled {
    opacity: 1 !important;
}

.page-title {
}

@media (max-width: 768px) {

    body .ui-breadcrumb .ui-breadcrumb-items li .ui-menuitem-link .ui-menuitem-text {
        color: #1c8676;
        font-size: 17px;
        margin-left: 7px;
        font-weight: 600;
    }

    body .ui-breadcrumb .ui-breadcrumb-items li .ui-menuitem-link .ui-menuitem-icon {
        font-size: 17px;
        margin-left: 4px;
        color: #bbb !important;
    }

}


/* Header y sidebar */

.logo {
    font-weight: bold;
    font-size: 1.2rem;
}

.user-actions img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
}

/* Menú lateral */
.sidebar2 {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    background-color: var(--corp-grey);
    height: calc(100vh - 50px);
    position: sticky;
    top: 50px;
    width: 253px;
    transition: width 0.9s ease-in-out !important;
    overflow: hidden;
}

.sidebar2.collapsed {
    transition: width 0.9s ease-in-out !important;
    width: 50px;
}

.sidebar2-header {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 0;
}

.menu-list {
    list-style: none;
    padding: 0;
    margin: 20px 0;
}

.menu-list li {
    display: flex;
    align-items: center;
    padding: 10px 20px;
    cursor: pointer;
    transition: background-color 0.3s;
}

.menu-list li:hover {
    background-color: #e0e0e0;
}

.menu-list .pi {
    margin-right: 10px;
}

.sidebar2.collapsed .menu-list li .pi {
    margin-right: 0;
    text-align: center;
}

.sidebar2.collapsed .menu-list li span {
    display: none;
}

.sidebar2-footer {
    margin-top: auto; /* Empuja el pie hacia el final del menú */
    text-align: center;
    padding: 10px;
    color: #fff;
    font-size: 10px;
    font-weight: lighter;
}

.sidebar2-footer span {
    display: inline-block;
    transition: opacity 0.3s ease;
}

.sidebar2.collapsed .menu-list li span,
.sidebar2.collapsed .sidebar-footer span {
    display: none; /* Oculta los textos cuando el menú está plegado */
}

.scrp {
    height: calc(100% - 110px);
    width: 253px;
    position: fixed;
    top: 75px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #acacac #888;
}

.scrp.collapsed {
    width: 50px;
}

span.ui-menuitem-icon.ui-icon.farm {
    background-image: url(/resources/vpd/images/farm_icon_2_black.png) !important;
    background-repeat: no-repeat !important;
    background-size: 18px !important;
    background-position: 0 0 !important;
    background-color: transparent !important;
    background-attachment: scroll !important;
}

.entity-icon {
    color: #777 !important;
    font-size: 42px !important;
    vertical-align: middle !important;
}

.floating-btn {
    position: fixed;
    bottom: 20px;
    right: 20px;
    display: none; /* Oculto por defecto */
    background-color: #007BFF;
    color: white;
    border: none;
    border-radius: 50%;
    padding: 15px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    font-size: 20px;
    transition: opacity 0.3s, transform 0.3s;
    z-index: 1000;
}

.floating-btn:hover {
    background-color: #0056b3;
    transform: scale(1.1); /* Efecto visual al pasar el ratón */
}

.ui-datatable .ui-datatable-data tr.ui-state-hover {
    cursor: default !important;
}

body .ui-dialog .ui-dialog-content {
    padding-bottom: 1rem;
}

body .ui-card .ui-card-content {
    padding: 0;
}


.ui-card .ui-card-header {
    font-weight: bold !important;
    margin: 4%;
}

.ear-tag,
.ear-tag-nh {
    background-image: url('/resources/vpd/images/ear_tag_xl.png');
    background-position: center;
    position: relative;
    width: 130px;
    height: 50px;
    background-size: 130px 50px;
    margin: -12px auto 0 auto;
}

.ear-tag-nh {
    margin: -6px 0 0 0;
}

.ear-tag:hover {
    scale: 115%;
}

.animal-id {
    position: absolute;
    top: 26px;
    width: 130px;
    text-align: center;
    font-weight: 800;
    font-size: 14px;
    font-family: 'Victor Mono', monospace;
    color: black;
}

.animal-id a {
    font-size: 14px;
    font-weight: 800;
    font-family: 'Victor Mono', monospace;
    color: black !important;
}

.animal-id-gd {
    background-color: #FFD701;
    border-radius: 7px;
    width: 130px;
    padding: 4px 0;
    text-align: center;
    font-weight: 800;
    font-size: 14px;
    font-family: 'Victor Mono', monospace;
    color: black;
}

.animal-id-gd a {
    font-size: 14px;
    font-weight: 800;
    font-family: 'Victor Mono', monospace;
    color: black !important;
}

.animal-id-tb {
    font-size: 12px;
    font-weight: 800;
    font-family: 'Victor Mono', monospace;
    color: black !important;
    background-color: #FFD701;
    padding: 3px 3px !important;
    border-radius: 5px;
    margin-top: 1px;
    display: block;
}

@media (max-width: 500px) {
    .animal-id-tb {
        font-size: 10px;
    }

    .ui-tabs-header {
        font-size: 14px;
    }

    .ui-outputlabel-label {
        font-size: 0.9rem;
    }

    .ui-button-text-icon-left .ui-button-text {
        font-size: 15px;
    }
}


.gateway-id {
    font-weight: bold !important;
    font-size: 22px !important;
}

.gateway-id a:hover {
    text-decoration: underline !important;
}

.guardian-device {
    position: relative;
    background-image: url('/resources/vpd/images/guardian_device.png');
    background-repeat: no-repeat;
    width: 140px;
    background-size: 140px 35px;
}

.no-guardian {
    opacity: 0.3;
    filter: grayscale(100%);
}

.guardian-id {
    position: absolute;
    width: 75px;
    top: 10px;
    left: 56px;
    color: #fff;
    font-size: 12px;
    font-family: 'Verdana', sans-serif;
    font-weight: 600;
    text-align: center;
}

.guardian-id a {
    color: #fff;
    font-size: 12px;
    font-family: 'Verdana', sans-serif;
    font-weight: 600;
}

.guardian-id a:hover {
    color: #fff;
}

.ui-dataview .ui-dataview-header {
    display: none !important;
}

#TabView\:AnimalsForm\:AnimalsTable_paginator_top {
    height: 55px;
    align-content: center;
    margin-bottom: 5px;
}


body .ui-datatable thead th {
    background-color: #d3d7db;
}

body .ui-datatable thead th .ui-column-title {
    font-weight: 600;
}

.ui-datatable .ui-datatable-frozen-container {
    width: auto;
}

#TabView\:TreatmentsBookForm\:TreatmentsTable\:j_idt181 > span:nth-child(1),
#TreatmentsBookForm\:TreatmentsTable\:j_idt181 > span:nth-child(1) {
    padding-top: 70px;
}

body .ui-datatable .ui-datatable-scrollable-header, body .ui-datatable .ui-datatable-scrollable-footer {
    background: #d3d7db;
}

#TabView\:TreatmentsBookForm\:TreatmentsTable\:j_idt184 > span:nth-child(1) {
    padding-top: 60px;
}

body .ui-button {
    background: var(--corp-green);
}

.toolBar {
    border: 0 !important;
    padding: 0.8rem 1rem !important;
    background-color: #f0f0f3 !important;
}


body .ui-scrollpanel {
    border: 0;
}

#TabView\:FarmPensForm\:PensGrid .ui-panel-titlebar {
    background-color: transparent;
}

.ui-datagrid-column {
    margin: auto;
}

.main-menu-link {
    width: 90% !important;
    padding-left: 18px !important;
    text-align: left !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    color: #eee !important;
}

.main-menu-link.ui-button.ui-widget.ui-state-default.ui-corner-all.ui-button-text-icon-left svg {
    padding-left: 5px;
}

.main-menu-link.ui-button.ui-widget.ui-state-default.ui-corner-all.ui-button-icon-only {
    height: 35px;
    margin-left: -5px;
}

.ui-datatable-data td[role="gridcell"] :focus, .ui-datatable-data td[role="grid"] [tabindex="0"]:focus {
    outline-style: none !important;
}

.ui-linkbutton.main-menu-link {
    background-color: transparent !important;
    border: 0;
    margin: 0.2rem 1rem;
}

.ui-linkbutton.main-menu-link.ui-state-focus {
    box-shadow: none;
}

.ui-linkbutton.main-menu-link:hover {
    background-color: var(--corp-green) !important;
}

body .ui-datepicker .ui-datepicker-next,
body .ui-datepicker .ui-datepicker-prev,
body .ui-datepicker .ui-picker-up,
body .ui-datepicker .ui-picker-down {
    color: white;
}

.ui-card-body {
    width: 100%;
}

.ui-card-content {
    padding: 0;
}

.ui-dataview-content {
    display: flex !important;
    flex-wrap: wrap !important;
}

.ui-dataview-row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 1.5rem;
}


@media screen and (min-width: 40.063em) {
    .ui-md-4 {
        width: 1% !important;
    }
}

#MyFarmsForm .ui-dataview-column,
#TabView\:AnimalsForm .ui-dataview-column,
#GuardiansForm .ui-dataview-column,
#TabView\:FarmPensForm .ui-dataview-column {
    min-width: 360px;
    max-width: 600px;
    flex: 1 0 auto !important;
    padding: 0;
}

#MainContent {
    padding: 1.5rem 1rem 1rem 1rem;
}

#MyFarmsForm\:MyFarmsDataView,
#GuardiansForm\:guardianesDataView,
#TabView\:AnimalsForm\:PenAnimalsDataView,
#TabView\:FarmPensForm\:PensGrid {
    width: 100%;
}

body .ui-tabs.ui-tabs-top > .ui-tabs-nav {
    padding-left: 1rem;
    margin-left: -1rem;
    margin-right: -1rem;
    border-bottom: 2px solid #dee2e6 !important;
}

body .ui-tabs.ui-tabs-top > .ui-tabs-nav::before {
    border-bottom: none !important;
}

/* En pantallas menores de 500px (móviles) */
@media (max-width: 500px) {

    #GuardiansForm\:guardianesDataView_content .ui-dataview-column,
    #MyFarmsForm\:MyFarmsDataView_content .ui-dataview-column,
    #TabView\:AnimalsForm\:PenAnimalsDataView_content .ui-dataview-column,
    #TabView\:FarmPensForm\:PensGrid_content .ui-dataview-column {
        width: 100% !important; /* Ocupa el 100% del ancho */
        min-width: 220px !important;
        max-width: unset !important;
    }

    #GuardiansForm\:guardianesDataView_content .ui-dataview-row,
    #MyFarmsForm\:MyFarmsDataView_content .ui-dataview-row,
    #TabView\:AnimalsForm\:PenAnimalsDataView_content .ui-dataview-row,
    #TabView\:FarmPensForm\:PensGrid_content .ui-dataview-row {
        width: 100% !important; /* Ocupa el 100% del ancho */
    }

    #MainContent {
        padding: 1rem 0.5rem 0.5rem 0.5rem;
    }

    body .ui-tabs.ui-tabs-top > .ui-tabs-nav {
        padding-left: 0.5rem;
        margin-left: -0.5rem;
        margin-right: -0.5rem;
    }

}


body .ui-paginator .ui-paginator-prev::before,
body .ui-paginator .ui-paginator-next::before,
body .ui-paginator .ui-paginator-first::before,
body .ui-paginator .ui-paginator-last::before {
    top: 1px;
    padding-right: 0.5rem;
}

body .ui-datatable .ui-paginator {
    padding: 10px 0 10px 0 !important;
}

#AnimalForm .ui-datatable .ui-paginator {
    padding: 0 !important;
}

.form-edit-button {
    background-color: transparent !important;
    border: 0 !important;
    color: #555 !important;
}

.ellipsis-button {
    background-color: transparent !important;
    border: 0 !important;
    color: #555 !important;
    width: auto !important;
}

.ellipsis-button:hover {
    background-color: transparent !important;
    color: #555 !important;
}

.registro-fiebre {
    background-color: #ffdada !important;
}

.font-normal {
    font-weight: 400 !important;
    color: #8b8b8b;
}

.no-header thead th {
    padding: 0 !important;
}

.date-expired {
    color: red;
}


.ui-dataview-list .ui-dataview-list-container {
    width: 100%;
}


#GuardiansForm\:AccordionPanel .ui-accordion-content {
    background-color: var(--gray-200);
}


body .ui-accordion .ui-accordion-header {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

body .ui-accordion .ui-accordion-header:focus {
    box-shadow: none;
}

body .ui-accordion .ui-accordion-header {
    font-weight: normal;
}


#GuardiansForm\:AccordionPanel\:FilterPanel .field > label {
    font-weight: 600;
    margin-bottom: 0.1rem;
    font-size: 15px;
}

#GuardiansForm\:AccordionPanel\:FilterPanel .field {
    padding: 0.2rem 0.5rem;
}

#GuardiansForm\:AccordionPanel\:FilterPanel .ui-inputfield {
    font-size: 15px !important;
}

#GuardiansForm\:AccordionPanel .ui-fluid .ui-autocomplete .ui-autocomplete-dropdown.ui-button {
    color: #6c757d !important;
    border-color: #ced4da !important;
    border-left: none;
}

#GuardiansForm\:AccordionPanel .ui-autocomplete .ui-autocomplete-dropdown.ui-button:hover {
    color: white !important;
    background-color: white !important;
}

#GuardiansForm\:AccordionPanel .ui-fluid .ui-autocomplete .ui-autocomplete-dropdown.ui-button {
    height: 2.3rem;
    position: absolute;
}

#GuardiansForm\:AccordionPanel .ui-autocomplete-panel .ui-autocomplete-items .ui-autocomplete-item {
    font-size: 15px !important;
}

#GuardiansForm .ui-dataview .ui-dataview-header {
    margin-top: 1rem;
    display: inherit !important;
    padding: 0;
    border: 0;
    background: transparent;
}

body .ui-selectonebutton > .ui-button.ui-state-active .ui-icon {
    color: var(--corp-green) !important;
}


/* Forzar el ancho del diálogo y que se adapte correctamente */
#TabView\:farmAdminForm\:addUserDialog {
    width: 90vw !important; /* Ocupa el 90% de la ventana */
    max-width: 500px !important; /* Nunca más de 500px */
}

/* Forzar el ancho del contenido */
#TabView\:farmAdminForm\:addUserDialog .ui-dialog-content {
    width: 100% !important;
}

.link-button {
    color: #555 !important;
}

.sidebar-toggler {
    background-color: var(--corp-green);
    color: white;
    border-radius: 5px;
    padding: 6px 5px 4px 5px;
}

.sidebar-toggler :hover {
    color: white !important;
}

.ui-tabs .ui-tabs-navscroller {
    padding: 0 !important;
    overflow: scroll !important;
}

/* Asegura que el scroll horizontal funcione en móviles */
.responsive-tabview .ui-tabs-navscroller {
    overflow-x: scroll !important;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
    scrollbar-width: none;
}

.responsive-tabview .ui-tabs-nav {
    white-space: nowrap;
    display: flex;
    flex-wrap: nowrap;
    min-width: max-content;
}

.ui-tabs-navscroller-btn-left,
.ui-tabs-navscroller-btn-right {
    display: none !important; /* opcional */
}

.ui-tabs-scrollable .ui-tabs-nav {
    width: auto !important;
}


body .ui-datepicker .ui-datepicker-calendar td {
    padding: 0;
}

.ui-menu {
    width: auto !important;
}

.inactive-day {
    background-size: 6px 6px;
    background-image: repeating-linear-gradient(135deg, #ccc 0, #ccc 1px, transparent 0, transparent 50%);
}

body ::placeholder {
    color: #a7b2bc;
    opacity: 1;
}

.centered-menuitem {
    text-align: center !important;
}


.select-one-mdn {
    display: flex !important;
    gap: 0.25rem;
    text-transform: uppercase;
}

.select-one-mdn .ui-button.ui-state-active {
    font-weight: 700;
}

.select-one-mdn .ui-button {
    border-radius: 9999px !important;
    font-size: 12px;
}

@media (max-width: 500px) {

    .select-one-mdn .ui-button {
        font-size: 11px;
    }

}


.pen-state-FINALIZED a {
    border-color: #a2c6e0 !important;
}

.pen-state-FINALIZED a:hover {
    border-color: #d1e4f1 !important;
    text-decoration: none;
}


/* Asegura que el diálogo esté por encima del sidebar o backdrop */
.ui-dialog {
    z-index: 1100 !important;
}

/* Reduce el z-index del overlay del layout si bloquea */
.pro-sidebar-backdrop,
.css-pro-layout-backdrop {
    z-index: 900 !important;
}

/* Z-index superior al overlay del layout externo */
.zfix {
    z-index: 1100 !important;
}


.pen-state-PENDING_COLLECTION a {
    border-color: #e0b6a2 !important;
}

.pen-state-PENDING_COLLECTION a:hover {
    border-color: #fcdbcb !important;
    text-decoration: none;
}

.pen-state-CLOSED a {
    border-color: #969696 !important;
}

.pen-state-CLOSED a:hover {
    border-color: #dad8d8 !important;
    text-decoration: none;
}

.imagen-desactivada {
    filter: grayscale(100%);
    opacity: 0.6;
}

.imagen-normal {
}

/* El ul que contiene los tabs */
.ui-tabs-nav {
    display: flex !important;
    flex-wrap: nowrap !important; /* Que no se partan en varias líneas */
    overflow-x: auto !important; /* Scroll horizontal con dedo */
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    height: 45px;
    padding-bottom: 2px !important;
}

/* Ocultar barra de scroll visual */
.ui-tabs-nav::-webkit-scrollbar {
    display: none;
}

.ui-tabs-nav {
    -ms-overflow-style: none; /* IE y Edge */
    scrollbar-width: none; /* Firefox */
}

/* Que cada tab no se encoja */
.ui-tabs-nav > li {
    flex: 0 0 auto;
}


/* El contenedor de botones que tiene la clase select-one-mdn */
.ui-selectonebutton.select-one-mdn {
    display: flex;
    flex-wrap: nowrap; /* No saltar de línea */
    overflow-x: auto; /* Scroll horizontal con el dedo */
    -webkit-overflow-scrolling: touch; /* Scroll suave en iOS */
    -ms-overflow-style: none; /* IE y Edge */
    scrollbar-width: none; /* Firefox */
}

/* Ocultar barra de scroll visual */
.ui-selectonebutton.select-one-mdn::-webkit-scrollbar {
    display: none;
}

/* Que cada botón no se encoja y el texto quede en una línea */
.ui-selectonebutton.select-one-mdn .ui-button {
    flex: 0 0 auto;
    white-space: nowrap;
}

.ui-selectonebutton.select-one-mdn .ui-state-focus {
    box-shadow: none !important;
}

.ui-datatable-tablewrapper {
    border-radius: 0.5rem;
}

.ui-datatable-frozenlayout-left {
    border-radius: 0.5rem 0 0 0;
}

.ui-datatable-frozenlayout-right {
    border-radius: 0 0.5rem  0 0;
}

#TabView\:AnimalsForm\:AnimalsTable_reflowDD {
    margin-top: 1rem;
}

@media (max-width: 640px) {
    #TabView\:AnimalsForm\:AnimalsTable span.ui-column-title {
        display: none;
    }
}

#UsersForm\:UsersTable td:nth-of-type(2) span.ui-column-title {
    display: none;
}

#BatchesForm\:BatchesTable td:nth-of-type(1) span.ui-column-title {
    display: none;
}

#GatewaysForm\:GatewaysTable td:nth-of-type(1) span.ui-column-title {
    display: none;
}

.ui-reflow-dropdown {
    color: #495057;
    background: #fff;
    padding: .5rem .5rem;
    border: 1px solid #ced4da;
    outline: 0 none;
    font-size: 1rem;
    border-radius: 4px;
    transition: background-color .2s, color .2s, border-color .2s, box-shadow .2s, opacity .2s;
    -webkit-appearance: none;
    appearance: none;
}

@media (max-width: 768px) {
    button#UserForm\:UserButton_button span.ui-button-text {
        text-indent: -9999px;
        display: inline-block; /* importante */
        overflow: hidden;
        width: 0;
    }

    button#UserForm\:UserButton_button {
        width: 2rem;
    }
}

.ui-breadcrumb {
    display: flex; /* para que los hijos estén en línea */
    white-space: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; /* inercia en iOS */
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE y Edge */
}

.ui-breadcrumb::-webkit-scrollbar {
    display: none; /* Chrome y Safari */
}


.ui-input-overlay {
    z-index: 1100 !important;
}


#ReportsForm .ui-dataview-row {
    border: none !important;
}

#TabView\:FarmPensForm\:StateFilter {
    margin: 0 -0.5rem;
    padding: 0.2rem 0.5rem;
}

#TabView\:AnimalEvolutionForm\:DateRangeFilter {
    margin: 0 -0.5rem;
    padding: 0.2rem 0.5rem;
}

.animal-header .ui-column-title {
    display: inline-block;
    padding-top: 27px;
}

.ui-scrolltop {
    bottom: 10px !important;
}

#TabView\:TreatmentsBookForm\:ApplyTreatmentsDlg {
    margin: 0.5rem;
    width: auto !important;
}

@media (max-width: 500px) {
    #TabView\:TreatmentsBookForm\:TreatmentsTable th.animal-header.ui-frozen-column {
        text-align: left !important;
    }
}

#TabView\:farmNoticesForm\:NoticesCard > div.ui-card-body {
    padding: 0;
}

#farmNoticesForm\:NoticesTable.ui-datatable .ui-datatable-data > tr > td,
#TabView\:farmNoticesForm\:NoticesTable.ui-datatable .ui-datatable-data > tr > td {
    padding: 0.5rem 0 !important;
}

#farmNoticesForm\:NoticesTable .tratamiento-gen,
#TabView\:farmNoticesForm\:NoticesTable .tratamiento-gen {
    font-size: 12px;
    vertical-align: unset;
}

#farmNoticesForm\:SymbolLegend .ui-panelgrid-cell,
#TabView\:farmNoticesForm\:SymbolLegend .ui-panelgrid-cell {
    padding-top: 1rem;
    padding-bottom: 0;
}

.gda:hover {
    scale: 115%;
}


.calendar-grid{
    display:grid;
    grid-template-columns: repeat(auto-fill, minmax(90px, 1fr));
    gap:12px;
}

.day{
    display:flex;
    flex-direction:column;
    border:1px solid #b8bbc0;
    border-radius:12px;
    overflow:hidden;
    background:#fff;
    box-shadow:0 1px 2px rgba(0,0,0,.04);
    min-height:70px;
}

.day__header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    padding:8px 10px;
    border-bottom:1px solid #eee;
    font-weight: 600;
    font-size: .75rem;
    margin: auto;
}

.day__alert{
    font-size:.75rem;
    padding:2px 8px;
    border-radius:9999px;
    line-height:1.6;
    border:1px solid currentColor;
    opacity:.9;
}

.day__body{
    flex:1;
    padding:8px;
    display:flex;
    flex-direction:column;
    gap:6px;
    /* el color de fondo lo inyectas inline desde el DTO (alertColorHex) */
}

.pill{
    display: inline-block;
    font-weight: 700;
    font-size: .8rem;
    padding: 4px 0;
    border-radius: 6px;
    line-height: 1.2;
    width: 40px;
    text-align: center;
    margin: 0 auto;
}

.empty{
    font-size:.8rem;
    opacity:.7;
}

.legend-panel {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin-top: 1rem;
    padding-top: 0.5rem;
    border-top: 1px solid #ddd;
    font-size: 0.9rem;
    align-items: center;
}

.legend-item {
    display: flex;
    align-items: center;
    gap: 6px;
}

.legend-color {
    display: inline-block;
    width: 18px;
    height: 18px;
    border-radius: 4px;
    box-shadow: inset 0 0 0 1px rgba(0,0,0,0.15);
}

/* Capitalizar el texto de los datePicker de meses */
#TabView\:fromMonth_input,
#TabView\:toMonth_input {
    text-transform: capitalize !important;
}

/* Cambiar los iconos + / - de jQuery UI por flechas arriba/abajo
   en TODOS los paneles toggleables de PrimeFaces */

/* Ocultar el icono jQuery UI (+ / -) */
.ui-panel-titlebar-icon .ui-icon {
    display: none !important;
}

/* Icono base del toggler */
.ui-panel-titlebar-icon::before {
    font-family: "PrimeIcons" !important;
    font-size: 1.1rem;
    content: "\e902"; /* pi-chevron-down por defecto */
    display: inline-block;
    vertical-align: middle;
}

/* Panel EXPANDIDO → poner chevron-up */
.ui-panel-titlebar[aria-expanded="true"] > .ui-panel-titlebar-icon::before {
    content: "\e903"; /* pi-chevron-up */
}

/* Panel COLAPSADO → chevron-down */
.ui-panel-titlebar[aria-expanded="false"] > .ui-panel-titlebar-icon::before {
    content: "\e902"; /* pi-chevron-down */
}