/* background-image: linear-gradient(#90c3fd, #ba71ff, #ff71b8); */
:root {
  --white-100: #ffffff;  /* pure white */
  --white-200: #fafafa;  /* very light gray */
  --white-300: #f5f5f5;  /* light gray */
  --white-400: #eeeeee;  /* slightly darker gray */
  --white-500: #e0e0e0;  /* soft border gray */
  
  /*Blue*/
  --highlightcolor: #1aa2f0;
  --primarycolor: #1aa2f0;
  --assentcolor: #1aa1f07a;
  --secondarycolor: #ebf2f9; 
  --absentcolor: #aa462f;
  --presentcolor: #caf5ae;
  --halfdayabsentcolor : #ebcb1aa1;
  --weekoffcolor: #ff990063;
  --miscolo: #fba636b4;

  /*Green*/
  /*--primarycolor: #1af09a;*/

  /*Orange
  --highlightcolor:#f08c1a;
  --primarycolor: #f0b71a;
  --assentcolor: #f0b71a79;
  --secondarycolor:#f0b71a10;
*/
}

.grid {
  display: grid;
  grid-template-columns: 150px 150px;
  gap: 10px;
}

.item1 {
  grid-row: span 2; /* ✅ Like rowspan="2" */
  background: lightblue;
}

.item2, .item3 {
  background: lightgray;
}

body {
  --sb-width: 0%;
  --sb-width-main: 100%;
  width: 100%;
  font:400 16px 'Calibri','Arial';
  color: #333;
 /* margin-right: 5px;
  padding: 5px;*/
  margin: 0;
  padding: 5px;
  font-size: 14px;
  height: 100vh;
  display: grid;
  grid-template-rows: auto 1fr;
}

.table-container1 {
    overscroll-behavior: contain;
    margin-top: 2px;
    height:calc(100vh - 80px);
    overflow-y: auto;      /* Scroll only vertically */
}

.field-container {
    overscroll-behavior: contain;
    margin-top: 5px;
    height:calc(100vh - 100px);
    overflow-y: auto;      /* Scroll only vertically */
    font-size: 16px;
}

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 60px;
  
  padding-left: 5px;
  padding-right: 10px;
  display: flex;
  justify-content: space-between;
  
  align-items: center;
  text-align: center;

  background: white;
  font-size: small;
  box-shadow: 2px 0 5px rgba(0, 0, 0, 0.5);
}
/*
aside {
    position: fixed;
    margin-top: 50px;
    left: 0px;
    inset: 0 0 0 0;
    width: var(--sb-width);
    background-color: white;
    transition: width 0.75s ease-in-out;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    padding-bottom: 5px;
    box-shadow: 2px 0 5px #e0e0e0;

  }
*/

aside {
  position: fixed;
  margin-top: 50px;
  left: 0;
  width: var(--sb-width);
  height: calc(100vh - 60px);
  background-color: rgb(241, 244, 248);
}
/*
main {
  position:fixed;
  margin-top: 65px;
  width: var(--sb-width-main);
  height:90%;
  background-color: var(--white-100);
}
  */

  main {
  position: relative;
  margin-top: 60px;
  margin-left: var(--sb-width);
  width: calc(100% - var(--sb-width));
  height: calc(100vh - 60px);
  overflow: auto;
}

.tabMenu {
    color: #333;
    padding: 5px;
    border: none;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    cursor: pointer;
    font-size:13px;
    background-color: var(--white-100);
    border-right: 3px solid #ddd;
    outline:#333;    
}

.tabMenu.active{
  color: var(--primarycolor);
  border-right: 3px solid var(--primarycolor);
}

.top-menu.active{
  color: var(--primarycolor);
  border-right: 3px solid var(--primarycolor);
}

.containerMiddleMenu {
  max-width: 100%;
  margin-right: 5px;
  padding: 5px;
  border: 0;
  background-color: var(--white-100);
  border-radius: 5px;
  height: 500px;
  
}

.containerFields {
  box-shadow: 4px 4px 5px rgba(0,0,0,0.3);
  padding: 20px;
  border: 1px solid var(--white-500);
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  margin-right: 5px;
  font-size: 16px;
}

.containerHeading {
  padding: 5px;
  margin-top: 10px;
  margin-right: 5px;
  border: 1px solid var(--white-500);
  background-color: var(--primarycolor);
  color: white;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;

}

.containerFooter {
  max-width: 100%;
  margin-right: 5px;
  border: 0;
  padding: 1px;
  background-color: var(--white-100);
  border-radius: 5px;
  height: 80px;
}

iframe {
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  text-align: center;
  /*border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px;*/
}

nav {
  width: 100%;
  height: 100%;
  margin-left: 10px;
  margin-top: 20px;
  overflow-y: scroll;
  text-align: center;
}

nav ul {
  list-style: none;
  height: 100%;
  display: flex;
  flex-flow: column;
  gap: 0.25rem;
  /*font-weight: bold;*/
}

nav ul ul {
  position:relative;
  text-align: left;
  display: flex;
}
nav ul li ul {
  display: block;
  width: auto;
  padding-left: 10px;
  margin: 0;
  color: #ccc;
}

nav ul > ul {
  display: none;
  }

nav li:last-child {
  margin-top: auto;
}

nav a {
  display:flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.425rem 0.875rem;
  font-size: 14px;
  line-height: 1;
  text-decoration:none;
  transition: background-color 0.5s ease-in-out, color 0.5s ease-in-out;
  border-top-right-radius: 80px;
  border-bottom-right-radius: 80px;

}


nav a:hover,
nav a:focus-visible {
  outline: none;
}

nav a.active{
  background-color: var(--primarycolor);
  border-top-right-radius: 80px;
  border-bottom-right-radius: 80px;
  color:black;
}

a {text-decoration: none;
  color:var(--highlightcolor); 
  /*color:#d1e4fa;*/
}



nav a span {
  font-size: 0.9rem;
  opacity: 5;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}

.sb-expanded nav a span {
  opacity: 10;
  visibility: visible;
  color:#333;
}

.sb-expanded aside .bx-chevrons-right {
  rotate: 180deg;
}

a.active{
  padding: 10px;
  border-radius: 10px;
  font-weight:bolder;
  color: white;
}

.containerDashboardTop {
  background-color:white;
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
  box-shadow: 5px 5px 10px #888888;
  font-family:'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
  padding: 10px;
  color: var(--highlightcolor);
  
}

.dashboardTop{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    gap: 15px;
    grid-auto-flow: row dense; /* compact cards tightly */
}

.dashboardMiddle{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 15px;
    grid-auto-flow: row dense; /* compact cards tightly */
}

.dashboard{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    gap: 15px;
    grid-auto-flow: row dense; /* compact cards tightly */
    align-items: start;
}

.span-2 {
    grid-column: span 2;
}

.containerDashboard {
  padding: 5px;
  background: #fff;
  /*border-radius: 10px;*/
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

.containerDashboardTimeinout {
  padding: 1px;
  background: #fff;
  /*border-radius: 10px;*/
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

.containerHeader {
  max-width: 100%;
  margin: 0 auto;
  border: 0;
}

.containerContent {
  background: #fff;
  box-shadow: 0px 4px 10px rgba(0,0,0,0.1);
  padding: 20px;
  border-radius: 20px;
  margin-right: 5px;
  height: 590px;
}

.containerTopMenu {
  max-width: 100%;
  margin: 0 auto;
  padding: 0px;
  border: 0;
  border-radius: 25px;
  background-color: rgb(115, 215, 248);  /*#38b6ff*/;
}

.container {
    max-width: 100%;
    margin: 0 auto;
    padding: 10px;
    border: 0;
    border-radius: 10px;
    background-color: rgb(115, 215, 248); /*#64c6ff*/ /*#38b6ff*/;
    font-size: medium;
    overflow: auto;
}

.containerCenterAlign {
  max-width: 100%;
  margin: 0 auto;
  padding: 5px;
  border: 0;
  border-radius: 10px;
  font-size: medium;
  text-align: center;
}

.containerhome {
  max-width: 100%;
  margin: 0 auto;
  padding: 20px;
  border: 0;
  border-radius: 20px;
  background-color: rgb(115, 215, 248);
  font-size: medium;
}


.containerTab {
  max-width: 100%;
  margin: 0 auto;
  padding: 10px;
  /*text-align: center;*/
  border: 0;
  border-radius: 25px;
  background-color: rgb(115, 215, 248);
  /*overflow-y: scroll;*/ /* Add the ability to scroll */
  
}

.containerInside {
  max-width: 100%;
  margin: 0 auto;
  padding: 10px;
  /*padding-left: 20px;*/
  /*padding-right: 20px;*/
  /*text-align: center;*/
  border: 0;
  /*color:rgb(10, 150, 197);*/
  border-radius: 10px;
  background-color: white;
}

.containerSameColor {
  max-width: 100%;
  margin: 0 auto;
  padding: 10px;
  padding-left: 20px;
  padding-right: 20px;
  /*text-align: center;*/
  border: 0;
  /*color:rgb(10, 150, 197);*/
  border-radius: 10px;
  background-color: rgb(115, 215, 248);
}

.containerDemo {
  max-width: 100%;
  margin: 0 auto;
  padding: 10px;
  /*text-align: center;*/
  border: 0;
  border-radius: 30px;
  background-color:rgb(115, 215, 248);
  
}

.poem {
    overflow: scroll;
    /*white-space: wrap;*/
    height: 100%;
    width: 100%;
    background-color: #f2f2f2;
  }
  
  .poem::-webkit-scrollbar{
    width: 5px;
    height: 5px;
  }
  
  .poem::-webkit-scrollbar-thumb{
    background-color: rgb(4, 135, 179); 
  }
  
  .poem::-webkit-scrollbar-track{background-color: rgb(115, 215, 248);}

::-webkit-scrollbar{
    width: 5px;
    height: 5px;
  }

.containerFull {
    max-width: 100%;
    margin: 0 auto;
    padding: 20px;
    /*text-align: center;*/
    border: 0;
    border-radius: 15px;
    background-color: rgb(115, 215, 248);
    overflow: hidden;
}

.containerModule {
    max-width: 100%;
    margin: 0 auto;
    padding: 10px;
    /*text-align: center;*/
    border: 0;
    border-radius: 10px;
    background-color:  rgb(115, 215, 248);
    
}

.containerWorkflow {
    max-width: 98%;
    margin: 0 auto;
    padding: 10px;
    /*text-align: center;*/
    border: 0;
    border-radius: 25px;
    background-color: rgb(115, 215, 248);
    
}

.containerTable {
    max-width: 100%;
    margin: 10px auto;
    padding: 10px;
    border-radius: 25px;
}

.containerTableScroll {
    max-width: 100%;
    margin: 0px auto;
    /*padding: 10px;*/
    padding-bottom: 10px;
    display: block;
    overflow-x: auto;
    /*border-radius: 25px;*/
}

.tableHeader {
    max-width: 100%;
    margin: 0 auto;
    border-radius: 25%;
}

label {
font-weight: bold;
display: block;
margin-top: 12px;
margin-bottom: 6px;
color: #333;
}


#filteredData{
    height: 100%;
    overflow-y: auto;
}


input[type="text"],
input[type="email"],
input[type="textarea"],
input[type="Date"],
input[type="datetime-local"],
input[type="password"],
input[type="number"],
input[type="time"],
select,
date {
    width: 100%;
    height:30px;
    padding-left: 10px;
    margin-bottom: 5px;
    /*border: 1px solid #2675a2;*/
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
    /*background-color: rgb(224, 243, 252);*/
    /*line-height: 10px;*/
    font-size: 12px;
}

textarea {
    width: 100%;
    height:115px;
    padding: 8px;
    margin-bottom: 10px;
    border: 1px solid #2675a2;
    border-radius: 5px;
    box-sizing: border-box;
    /*background-color: rgb(224, 243, 252);*/
    line-height: 10px;

}


#attperiod{
  width: 200px;
  padding-left: 10px;
  margin-bottom: 5px;
  border: 1px solid #2675a2;
  border-radius: 15px;
  box-sizing: border-box;
  line-height: 5px;
}


#filterInput{
  width: 300px;
  padding-left: 10px;
  margin-bottom: 5px;
  /*border: 1px solid #2675a2;*/
  border-radius: 15px;
  box-sizing: border-box;
  line-height: 5px;
}

input:read-only{
  background-color:  rgb(240, 244, 246);
}

:required {
    box-shadow: 1px 1px 2px #2675a2;
  }
    

input:required:focus {
    border: 1px solid #2675a2;
    outline: none;
}

input:required:hover {
  opacity: 1;
}

select {
  text-indent: 5px;
}
/*
button {
    color: #d1e4fa;
    background-image: linear-gradient(#90c3fd, black);
    padding: 10px 20px;
    border: none;
    border-radius: 25px;
    cursor: pointer;
    font-size:small;
    font-weight:bold;
    text-transform: uppercase;
}
    */

.button-group {
  display: flex;
  /*justify-content: space-between;*/
  margin-top: 10px;
}
button {
  padding: 10px 18px;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  font-size: 11px;
  font-weight: bold;
  background: var(--primarycolor);
  color: white;
}
.btn-cancel {
  background: #e0e0e0;
  color: black;
  margin-left: 10px;
  width: 100px;
}
.btn-save {
  background: var(--primarycolor);
  color: white;
  margin-left: 10px;
  width: 100px;
}
.btn-save:hover {
  background: var(--highlightcolor);
}
.btn-gen-payslip {
  background: #28a745;
  color: white;
  margin-left: 10px;
  width: 200px;
}

/*
button:hover {
    background-color: #45a049;
}

button:focus{font-size:x-large;}
*/

button:scope{
    color: black;
}

.grid-container {
    border: 1px solid #ccc;
    border-collapse: collapse;
    margin-top: 20px;
}

.grid-header, .grid-row {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #ccc;
}

.grid-cell {
    flex: 1;
    padding: 10px;
}

.grid-cell:nth-child(odd) {
    background-color: #f2f2f2;
}

table { 
  border-spacing: 1; 
  border-collapse: collapse; 
  border-radius:10px;
  width:100%;
  position:relative;
  
  td,th           { padding-left:8px}

  thead th{
    border: 1px solid #ccc;
    position:sticky;    
    top: 0;
    z-index: 1;
    text-align: center;
  }

  thead tr        { 
    height:40px;
    /*background-image: linear-gradient(#90c3fd, rgb(247, 240, 240) );*/
    background: var(--primarycolor);
    font-size:14px;
    position:sticky;
    top: 0;
    color:white;
    text-transform: uppercase;
    text-align: center;
  }
  
  tbody tr        { 
    height:40px; 
    font-size:15px;
    border-bottom:1px solid #E3F1D5 ;
    &:last-child  { border:0; }
    vertical-align:middle;
    text-align: center;
  }

  td,th           { text-align:center;
    &.l           { text-align:right }
    &.c           { text-align:center }
    &.r           { text-align:center }
  }
  
  tbody:nth-child(odd) {
    background: var(--secondarycolor);
  }
  
  tbody:nth-child(even) {
    background: white;
  }

}

#tableDashboardTiny { 
  border-spacing: 1; 
  border-collapse: collapse; 
  border-radius:10px;
  width:100%;
  position:relative;
  
  td,th           { padding-left:8px}

  thead th{
    position:sticky;    
    top: 0;
    z-index: 1;
  }

  thead tr        { 
    height:20px;
    /*background-image: linear-gradient(#90c3fd, rgb(247, 240, 240) );*/
    background: var(--primarycolor);
    font-size:10px;
    position:sticky;
    top: 0;
    color:white;
    text-transform: uppercase;
  }
  
  tbody tr        { 
    height:20px; 
    font-size:10px;
    border-bottom:1px solid #E3F1D5 ;
    &:last-child  { border:0; }
    vertical-align:middle;
    text-align: center;
  }

  td,th           { text-align:left;
    &.l           { text-align:right }
    &.c           { text-align:center }
    &.r           { text-align:center }
  }
  
  tbody:nth-child(odd) {
    background: var(--secondarycolor);
  }
  
  tbody:nth-child(even) {
    background: white;
  }

}

#tableRegular          { 
  border-spacing: 1; 
  border-collapse: collapse; 
  border-radius:10px;
  width:100%;
  position:relative;
  
  td,th { padding-left:8px}

  thead th{
    position:sticky;    
    top: 0;
    z-index: 1;
    padding: 6px;
  }

  thead tr        { 
    /*height:30px;*/
    /*background-image: linear-gradient(#90c3fd, rgb(247, 240, 240) );*/
    background: var(--primarycolor);
    /*font-size:11px;*/
    position:sticky;
    top: 0;
    color:white;
    text-transform: uppercase;
    padding: 6px;
  }
  
  tbody tr        { 
    height:30px; 
    font-size:15px;
    border-bottom:1px solid #E3F1D5 ;
    &:last-child  { border:0; }
    vertical-align:middle;
    text-align: center;
  }

  td,th           { text-align:center;
    &.l           { text-align:right }
    &.c           { text-align:center }
    &.r           { text-align:center }
  }
    

  tbody:nth-child(odd) {
    background: var(--secondarycolor);
  }
  
  tbody:nth-child(even) {
    background: white;
  }

}

#tableCompact             { 
  border-spacing: 1; 
  border-collapse: collapse; 
  /*border-radius:10px;*/
  /*overflow:hidden;*/
  width:100%;
  position:relative;
  
  
  /**           { position:relative }*/
  
  td,th           { padding-left:8px}

  thead th{
    position:sticky;    
    top: 0;
    z-index: 1;
  }

  thead tr        { 
    height:30px;
    /*background-image: linear-gradient(#90c3fd, rgb(247, 240, 240) );*/
    background: var(--primarycolor);
    font-size:11px;
    position:sticky;
    top: 0;
    color:#fff;
    text-transform: uppercase;
  }
  
  tbody tr        { 
    height:30px; 
    font-size:15px;
    border-bottom:1px solid #E3F1D5 ;
    &:last-child  { border:0; }
    vertical-align:middle;
    text-align: center;
  }

  td,th           { text-align:left;
    &.l           { text-align:right }
    &.c           { text-align:center }
    &.r           { text-align:center }
  }

}


#tabletoprowhighlight             { 
  border-spacing: 1; 
  border-collapse: collapse; 
  /*border-radius:10px;*/
  /*overflow:hidden;*/
  width:100%;
  position:relative;
  
  
  /**           { position:relative }*/
  
  td,th           { padding-left:8px}

  thead th{
    position:sticky;    
    top: 0;
    z-index: 1;
  }

  thead tr        { 
    height:30px;
    background: var(--primarycolor);
    font-size:12px;
    position:sticky;
    top: 0;
    color:#fff;
    text-transform: uppercase;
  }
  
  tbody tr        { 
    height:30px; 
    font-size:15px;
    border-bottom:1px solid #E3F1D5 ;
    &:last-child  { border:0; }
    vertical-align:middle;
    text-align: center;
  }

  td,th           { text-align:center;
    &.l           { text-align:right }
    &.c           { text-align:center }
    &.r           { text-align:center }
  }

}

#tablePayslip            { 
  border-spacing: 1; 
  border-collapse: collapse; 
  width:100%;
  position:relative;
  
  td,th           { padding-left:8px}

  thead th{
    position:sticky;    
    top: 0;
    z-index: 1;
  }

  thead tr        { 
    height:30px;
    background: var(--primarycolor);
    font-size:12px;
    position:sticky;
    top: 0;
    color:#fff;
    text-transform: uppercase;
  }
  
  tbody tr        { 
    height:30px; 
    font-size:15px;
    border-bottom:1px solid #E3F1D5 ;
    &:last-child  { border:0; }
    vertical-align:middle;
    text-align: center;
  }

  td,th           { text-align:center;
    &.l           { text-align:right }
    &.c           { text-align:center }
    &.r           { text-align:center }
  }

  tbody:nth-child(2) {    
    background-color: rgba(89, 13, 175, 0.349);
    font-weight:bolder;
    font-size: 50px;
  }

}

#topActions{
  text-align: right;
}

h1{
    margin: 0%;
    text-align: center;
    color: var(--primarycolor);
    }
    
h2{
    vertical-align:middle;
    margin: 0%;
    padding: 0px;
    color: var(--primarycolor);
    }

h3{
    vertical-align:middle;
    margin: 0%;
    color: var(--primarycolor);
    }

h4{
    margin: 0%;
    }

h5{
    margin: 0%;
    }

    /* Hide scrollbar for Chrome, Safari and Opera */

.container::-webkit-scrollbar {
    display: none;
    width: 0;
    background: transparent;
}


/* Hide scrollbar for IE, Edge and Firefox */
.container {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}



  * {
    box-sizing: border-box;
  }
  
  /* Create two equal columns that floats next to each other */
  .column15 {
    float: left;
    width: 15%;
    margin: 5px;
    /*background-color: rgb(115, 215, 248);*/
  }

  .column16 {
    float: left;
    width: 16.66%;
    padding: 2px;
    /*background-color: rgb(115, 215, 248);*/
  }

  .column20 {
    float: left;
    width: 20%;
    padding: 5px;
    /*background-color: rgb(115, 215, 248);*/
    /*margin: 10px;*/
  }

  .column25 {
    float: left;
    width: 25%;
    padding: 5px;
    /*background-color: rgb(115, 215, 248);*/
    /*margin: 10px;*/
  }


  .column33 {
    float: left;
    width: 33.3%;
    padding: 2px;
    /*background-color: rgb(115, 215, 248);*/
  }

  .column30 {
    float: left;
    width: 30%;
    padding: 2px;
    /*background-color: rgb(115, 215, 248);*/
  }

  .column40 {
    float: left;
    width: 40%;
    padding: 2px;
    /*background-color: rgb(115, 215, 248);*/
  }

  .column48 {
    float: left;
    width: 48%;
    padding: 2px;
    /*background-color: rgb(115, 215, 248);*/
  }

  .column {
    float: left;
    width: 50%;
    padding: 2px;
    /*background-color: rgb(115, 215, 248);*/
  }

  .column60 {
    float: left;
    width: 60%;
    padding: 2px;
    /*background-color: rgb(115, 215, 248);*/
  }

  .column75 {
    float: left;
    width: 75%;
    padding: 2px;
    /*background-color: rgb(115, 215, 248);*/
  }

  .column80 {
    float: left;
    width: 80%;
    padding: 2px;
    /*background-color: rgb(115, 215, 248);*/
  }

 .column85 {
    float: left;
    width: 85%;
    padding: 2px;
    /*background-color: rgb(115, 215, 248);*/
  }

 .row{
  vertical-align: top;
 }
  
  /* Clear floats after the columns */
  .row:after {
    content: "";
    display: table;
    clear: both;
  }

  .rowsingle {
        display: flex;
        gap: 10px; /* space between items */
    }

  @media screen and (max-width: 450px) {
    .column15 {
      width: 45%;
    }
    .column16 {
      width: 100%;
    }
    .column25 {
      float: left;
      width: 100%;
      padding: 3px;
    }
    .column30 {
      float: left;
      width: 100%;
      padding: 10px;
    }
    .column33 {
      float: left;
      width: 100%;
      padding: 10px;
    }
    .column40 {
      float: left;
      width: 100%;
      padding: 10px;
    }
    .column48 {
      float: left;
      width: 100%;
      padding: 10px;
    }
    .column {
      float: left;
      width: 100%;
      padding: 10px;
    }
    .column60 {
      float: left;
      width: 100%;
      padding: 10px;
    }
    .column75 {
      float: left;
      width: 100%;
      padding: 10px;
      text-align: center;
    }
    .column85 {
      width: 100%;
    }
    div.mobilehide {
      display: none;
    }
    .mobilecolhide {
      display: none;
    }
    #filterInput{
      width: 100%;}
    #attperiod{
      width: 200px;}

    .btn-gen-payslip{
      width: 70px;
    }
    #topActions{
      text-align: left;
    }
    .drawer {
        width: 100% !important;
        border-radius: 0;
    }
  }

  
  video {
    width: 150px;
    height: 150px;
    object-fit: cover;
  }

  .video-checkin {
    width: 300px;
    height: 300px;
    object-fit: cover;
  }

  .photoimg {
    width: 150px;
    height: 150px;
  }

  /*#expanded menu*/

  * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  

  body.sb-expanded {
    --sb-width: 12.5rem;
    --sb-width-main:83%;
  }

  body.sb-collapsed {
    --sb-width: 0%;
    --sb-width-main:100%;
  }
  
  h1 {
    font-size: 11px;
    font-weight: bold;
  }
  
  p {
    margin-bottom: 1.5rem;
  }
  
   
  @media (min-width: 768px) {
    main {
      margin-left: var(--sb-width);
    }
  }
  
  .placeholder {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.625rem;
    min-height: 600px;
  }
  
  .placeholder > div {
    background-color: rgb(238, 238, 252);
    border-radius: 0.375rem;
  }
  
  .ph-1 {
    grid-area: 1 / 1 / 2 / 3;
  }
  
  .ph-2 {
    grid-area: 1 / 3 / 2 / 4;
  }
  
  .ph-3 {
    grid-area: 2 / 1 / 3 / 2;
  }
  
  .ph-4 {
    grid-area: 2 / 2 / 3 / 4;
  }
  
  .ph-5 {
    grid-area: 3 / 1 / 4 / 2;
  }
  
  .ph-6 {
    grid-area: 3 / 2 / 4 / 3;
  }
  
  .ph-7 {
    grid-area: 3 / 3 / 4 / 4;
  }
  
  .ph-8 {
    grid-area: 4 / 1 / 5 / 4;
  }
    


.selected{
  background-color:green;
}
.bad{
  background-color:red;
}


.floating-window {
  position: fixed; /* Or absolute */
  right: 0; /* Initial position off-screen */
  top: 20px; /* Adjust for desired vertical position */
  width: 300px; /* Or any desired width */
  height: 200px; /* Or any desired height */
  background-color: #fff; /* Set a background color */
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); /* Add a subtle shadow */
  z-index: 1000; /* Ensure it stays on top */
  animation: slideIn 0.5s ease-in-out forwards; /* Apply the animation */
}

@keyframes slideIn {
  from {
    transform: translateX(100%); /* Start off-screen */
  }
  to {
    transform: translateX(0); /* Slide into view */
  }
}

.window-content {
  padding: 20px;
}

.sortable {
    cursor: pointer;
    user-select: none;
}

.sortable .sort-icon {
    font-size: 12px;
    padding-left: 4px;
    opacity: 0.5;
}

/* Style the checkbox */
input[type="checkbox"] {
    width: 12px;  /* Set size */
    height: 12px; /* Set size */
    accent-color: green; /* Set the check mark color */
    cursor: pointer; /* Change cursor when hovering over the checkbox */
}

.labelpayslip {
font-weight:bold;
display: block;
margin-top: 5px;
margin-bottom: 5px;
color: #9e9e9e;
}

.labelresult {

    display: block;
    margin-top: 5px;
    margin-bottom: 5px;    
    font-weight:bold;
    color: #333;
}

.fixed-footer {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: white;           /* Change if needed */
    padding: 10px;
    text-align: left;
    box-shadow: 0px -2px 8px rgba(0,0,0,0.2);
}
/*
.fixed-footer button {
    padding: 10px 20px;
    margin: 0 10px;
    font-size: 16px;
}
    */

.line-item {
    display: inline-block; 
    margin-right: 10px;   /* space between items */
}

#contentArea {
    height: 100%;
    overflow: hidden; 
}

.table-wrapper {
    overflow-x: auto;
    margin-top: 10px;
}

#itemsTable {
    width: 100%;
    border-collapse: collapse;
}

#itemsTable th, #itemsTable td {
    border: 1px solid #ccc;
    padding: 6px;
    text-align: center;
}

#itemsTable input {
    width: 100%;
    border: none;
    outline: none;
    text-align: center;
}

.btn-add {
    background: #28a745;
    color: white;
    padding: 6px 12px;
    border: none;
    margin-bottom: 10px;
    cursor: pointer;
    height: 30px;
}

.poTotals {
    text-align: right;
    margin-top: 15px;
    font-size: 16px;
}

/* RIGHT SLIDE DRAWER */
.drawer {
    position: fixed;
    top: 0px;                 /* below header */
    right: 0;
    width: 25%;
    height: calc(100vh);
    background: white;
    box-shadow: -4px 0 12px rgba(0,0,0,0.2);
    transform: translateX(100%);  /* hidden */
    transition: transform 0.4s ease-in-out;
    z-index: 2000;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    overflow: hidden;
}

/* When open */
.drawer.open {
    transform: translateX(0);
}

/* Iframe inside */
.drawer-content {
    height: 100%;
    width: 100%;
}

.drawer iframe {
    width: 100%;
    height: 100%;
    border: none;
}

