


.fontTitle{
    font-weight: bold;
    padding:10px;
    border:10px;
    color:#3f51b5 !important;
    font-size: 20px !important;
    display:flex;
}

.columnOne{
    vertical-align: middle;
    text-align: right;
    width:100%;
}
.columnMain{
    vertical-align: top;
    margin:0px;
    padding:0px;

}
.columnMainb{
    vertical-align: top;
    text-align: center;

}
.columnTwo{
    vertical-align: middle;
    text-align: left;
}
.columnThree{
    vertical-align: middle;
    text-align: left;
}
.columnTop{
    vertical-align: top;
}



.colMain1{
    vertical-align: top;
    text-align: left;
    min-width:218px;
    width:218px;

}
.colMain1s{
    vertical-align: top;
    text-align: left;
    min-width:58px;
    width:58px;
}
.colMain2{
    vertical-align: top;
    text-align: left;
    overflow-y: visible;


}
.wrapper {
    width: 100%;
    min-width: 1000px;
    min-height: 100%;
    height: 100%;
}
/* Header
-----------------------------------------------------------------------------*/
.header {
    height: 42px;
}
html {
    height: 100%;
}
body {
    height: 100%;
}
#content {
    min-height: 100%;
}

/* Middle
-----------------------------------------------------------------------------*/
.middle {
    width: 100%;
    height:100%;
    position: relative;
}
.middle:after {
    height:100%;
    clear: both;
    content: '';
}
.container {
    width: 100%;
    height:100%;
    float: left;
}
.content {
    padding: 0 0 0 210px;
}


/* Left Sidebar
-----------------------------------------------------------------------------*/
.left-sidebar {
    float: left;
    width: 200px;
    margin-left: -100%;
    height: 100%;
    position: relative;
    background: #B5E3FF;
    z-index:5000;
}

::-webkit-scrollbar {
    width: 8px;
    height: 0px;
}
::-webkit-scrollbar-button {
    width: 17px;
    height: 17px;
}
::-webkit-scrollbar-thumb {
    background: #aaccff;
    border: 1px ridge #6a7cffa6;
    border-radius: 16px;
}

::-webkit-scrollbar-track {
    background: #cbcbcb47;
}

::-webkit-scrollbar-thumb:hover {
    background:#00000063;
}

table.calendar {
    border: 1px solid #1C6EA4;
    width: 100%;
    text-align: left;
    border-collapse: collapse;
}
table.calendar td, table.calendar th {
    border: 1px solid #AAAAAA;
    padding: 3px 2px;
}
table.calendar tbody td {
    font-size: 13px;
}
table.calendar tr:nth-child(even) {
    background: #D0E4F5;
}
table.calendar thead {
    background: #EC9B59;
    border-bottom: 0px solid #444444;
}
table.calendar thead th {
    font-size: 14px;
    font-weight: normal;
    color: #FFFFFF;
    text-align: center;
    border-left: 2px solid #D0E4F5;
}
table.calendar thead th:first-child {
    border-left: none;
}

table.calendar tfoot {
    font-size: 14px;
    font-weight: bold;
    color: #FFFFFF;
    background: #D0E4F5;
    background: -moz-linear-gradient(top, #dcebf7 0%, #d4e6f6 66%, #D0E4F5 100%);
    background: -webkit-linear-gradient(top, #dcebf7 0%, #d4e6f6 66%, #D0E4F5 100%);
    background: linear-gradient(to bottom, #dcebf7 0%, #d4e6f6 66%, #D0E4F5 100%);
    border-top: 2px solid #444444;
}
table.calendar tfoot td {
    font-size: 14px;
}
table.calendar tfoot .links {
    text-align: right;
}
table.calendar tfoot .links a{
    display: inline-block;
    background: #1C6EA4;
    color: #FFFFFF;
    padding: 2px 8px;
    border-radius: 5px;
}

.ninebox{
    border-radius: 50px 50px 50px 50px;
    width:50px;
    height: 50px;
    padding: 15px;
}

.ausencia {
    background-color: #F5C48F !important;
    color: #D17737 !important;
}

.vacacion {
    background-color: #A3F58C !important;
    color: #11822D !important;
}
.hora {
    background-color: #8AC8F5 !important;
    color: #3954D1 !important;
}

.cumple {
    background-color: #F5C5E2 !important;
    color: #821B3F !important;
}

/*==================================================
 * Effect 8
 * ===============================================*/
.effect8
{
    position:relative;
    border-radius: 10px;
    -webkit-box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
    -moz-box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
    box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
}
.effect8:before, .effect8:after
{
    content:"";
    position:absolute;
    z-index:-1;
    -webkit-box-shadow:0 0 20px rgba(0,0,0,0.8);
    -moz-box-shadow:0 0 20px rgba(0,0,0,0.8);
    box-shadow:0 0 20px rgba(0,0,0,0.8);
    top:10px;
    bottom:10px;
    left:0;
    right:0;
    -moz-border-radius:100px / 10px;
    border-radius:100px / 10px;
}
.effect8:after
{
    right:10px;
    left:auto;
    -webkit-transform:skew(8deg) rotate(3deg);
    -moz-transform:skew(8deg) rotate(3deg);
    -ms-transform:skew(8deg) rotate(3deg);
    -o-transform:skew(8deg) rotate(3deg);
    transform:skew(8deg) rotate(3deg);
}

/* ── Espere / loading dialog — unified new design ─────────────────────────
   Works for every module that loads /neoHrisBase/css/hris.css.
   The dialog itself is transparent; PrimeFaces modal overlay provides the
   dark backdrop. Add styleClass="hris-espere-dlg" to the p:dialog tag.   */
.hris-espere-dlg.ui-dialog {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
}
.hris-espere-dlg .ui-dialog-content {
    background: transparent !important;
    padding: 0 !important;
    overflow: visible !important;
}
/* Dark blurred backdrop — scoped via :has so it only applies when the
   espere dialog is open and does not disturb other dialogs.             */
body:has(.hris-espere-dlg.ui-dialog-visible) .ui-widget-overlay {
    background: rgba(8, 18, 45, 0.78) !important;
    backdrop-filter: blur(6px) !important;
    -webkit-backdrop-filter: blur(6px) !important;
}
/* Spinner box */
.hris-espere-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    padding: 8px 20px;
}
/* Ring animation */
@keyframes hris-espere-spin { to { transform: rotate(360deg); } }
.hris-espere-ring {
    width: 58px;
    height: 58px;
    border-radius: 50%;
    border: 3.5px solid rgba(255, 255, 255, 0.13);
    border-top-color: #f59e0b;
    animation: hris-espere-spin 0.75s linear infinite;
}
/* Label */
.hris-espere-box span {
    color: rgba(255, 255, 255, 0.80);
    font-size: 12.5px;
    font-weight: 500;
    letter-spacing: 0.4px;
    font-family: Nunito, Verdana, sans-serif;
    white-space: nowrap;
}


.button-red{
    background-color: #F5796D !important;
}
.button-red:hover{
    background-color: #42525d !important;
}

.button-green{
    background-color: #ADD68A !important;
}
.button-green:hover{
    background-color: #42525d !important;
}

.button-bar{
    transition: all .2s ease-in-out;
}

.button-bar:hover{
    transform: scale(1.3);
    animation-name: spin;
    animation-duration: 0.4s;
    animation-iteration-count: 1;
    animation-timing-function: linear;
    background: #E91E63;
}

@keyframes spin {
    from {
        transform:rotate(0deg);
    }
    to {
        transform:rotate(360deg);
    }
}

body.layout-compact .ui-datagrid-content {
    background-color: transparent !important;
}


.container{
    display: grid;
    grid-template-columns: repeat(10, 100px);
    grid-column-gap: 5px;
    margin-top: 100px;
    margin-bottom: 100px;
    margin-left: 50px;
    width: 1040px;
    position: relative;
    margin-left: auto;
    margin-right: auto;
}

.item{
    grid-column: span 2;
    width: 200px;
    padding: 0 0 231px 0;
    -o-transform: rotate(-60deg) skewY(30deg);
    -moz-transform: rotate(-60deg) skewY(30deg);
    -webkit-transform: rotate(-60deg) skewY(30deg);
    -ms-transform: rotate(-60deg) skewY(30deg);
    transform: rotate(-60deg) skewY(30deg);
    background: #fd005f;
    overflow: hidden;
    visibility: hidden;
    margin-top: -50px;
}

.item:nth-child(9n+1){
    grid-column-start: 1;
}
.item:nth-child(9n+2){
    grid-column-start: 3;
}
.item:nth-child(9n+3){
    grid-column-start: 5;
}
.item:nth-child(9n+4){
    grid-column-start: 7;
}
.item:nth-child(9n+5){
    grid-column-start: 9;
}
.item:nth-child(9n+6){
    grid-column-start: 2;
}
.item:nth-child(9n+7){
    grid-column-start: 4;
}
.item:nth-child(9n+8){
    grid-column-start: 6;
}
.item:nth-child(9n){
    grid-column-start: 8;
}

.hexagon{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #303a52;
    color:#ffffff;
    -o-transform: skewY(-30deg) rotate(60deg);
    -moz-transform: skewY(-30deg) rotate(60deg);
    -webkit-transform: skewY(-30deg) rotate(60deg);
    -ms-transform: skewY(-30deg) rotate(60deg);
    transform: skewY(-30deg) rotate(60deg);
    overflow: hidden;
    text-align: center;

}

.item *{
    visibility: visible
}

/**** Responsive wizardry ****/

@media(max-width: 1100px){
    .container{
        grid-template-columns: repeat(8, 100px);
        width: 830px
    }
    .item:nth-child(7n+1){
        grid-column-start: 1;
    }
    .item:nth-child(7n+2){
        grid-column-start: 3;
    }
    .item:nth-child(7n+3){
        grid-column-start: 5;
    }
    .item:nth-child(7n+4){
        grid-column-start: 7;
    }
    .item:nth-child(7n+5){
        grid-column-start: 2;
    }
    .item:nth-child(7n+6){
        grid-column-start: 4;
    }
    .item:nth-child(7n){
        grid-column-start: 6;
    }
}

@media(max-width: 850px){
    .container{
        grid-template-columns: repeat(6, 100px);
        width: 620px
    }
    .item:nth-child(5n+1){
        grid-column-start: 1;
    }
    .item:nth-child(5n+2){
        grid-column-start: 3;
    }
    .item:nth-child(5n+3){
        grid-column-start: 5;
    }
    .item:nth-child(5n+4){
        grid-column-start: 2;
    }
    .item:nth-child(5n){
        grid-column-start: 4;
    }
}

@media(max-width: 720px){
    .container{
        grid-template-columns: repeat(4, 100px);
        width: 410px;
    }
    .item:nth-child(3n+1){
        grid-column-start: 1;
    }
    .item:nth-child(3n+2){
        grid-column-start: 3;
    }
    .item:nth-child(3n){
        grid-column-start: 2;
    }
}
