@charset "utf-8";
/* CSS Document */
body {
	background-color: #f8f9fa;
    font-size: 14px; /* or 13px or any size you prefer */

}

/* Extra font-size classes */
.fs-7 { font-size: 12px!important; }
.fs-8 { font-size: 10px!important; }
.fs-9 { font-size: 8px!important; }
.fs-10 { font-size: 6px!important; }

/* Extra width-size classes */
.w-5 { width: 5%!important; }
.w-10 { width: 10%!important; }
.w-15 { width: 15%!important; }
.w-20 { width: 20%!important; }

.w-30 { width: 30%!important; }
.w-35 { width: 35%!important; }
.w-40 { width: 40%!important; }
.w-45 { width: 45%!important; }

.w-55 { width: 55%!important; }
.w-60 { width: 60%!important; }
.w-65 { width: 65%!important; }
.w-70 { width: 70%!important; }

.w-80 { width: 80%!important; }
.w-85 { width: 85%!important; }
.w-90 { width: 90%!important; }
.w-95 { width: 95%!important; }  

/* Width using viewport */
.w-vw-1 { width: 1vw; }
.w-vw-2 { width: 2vw; }
.w-vw-3 { width: 3vw; }
.w-vw-4 { width: 4vw; }
.w-vw-5 { width: 5vw; }
.w-vw-10 { width: 10vw; }
.w-vw-15 { width: 15vw; }
.w-vw-20 { width: 20vw; }
.w-vw-25 { width: 25vw; }
.w-vw-30 { width: 30vw; }
.w-vw-35 { width: 35vw; }
.w-vw-40 { width: 40vw; }
.w-vw-45 { width: 45vw; }
.w-vw-50 { width: 50vw; }
.w-vw-55 { width: 55vw; }
.w-vw-60 { width: 60vw; }
.w-vw-70 { width: 70vw; }
.w-vw-75 { width: 75vw; }
.w-vw-80 { width: 80vw; }
.w-vw-85 { width: 85vw; }
.w-vw-90 { width: 90vw; }
.w-vw-100 { width: 100vw; }

/* Height using viewport */
.h-vh-10 { height: 10vh; }
.h-vh-20 { height: 20vh; }
.h-vh-25 { height: 25vh; }
.h-vh-30 { height: 30vh; }
.h-vh-40 { height: 40vh; }
.h-vh-50 { height: 50vh; }
.h-vh-60 { height: 60vh; }
.h-vh-70 { height: 70vh; }
.h-vh-75 { height: 75vh; }
.h-vh-80 { height: 80vh; }
.h-vh-90 { height: 90vh; }
.h-vh-100 { height: 100vh; }

.header-nav{
	position: fixed;
	width: 100vw;
	top:0;
	z-index:8;
}

/* == POPUP STYLE START ===*/
.modal .header-nav,
.modal .submenu {
	display:none!important;
}

.modal form {
	position: relative;
    width: 100%;
    padding-top: 0px !important;
}

.modal .sub_header{
	width: 100% !important;
    top: 0rem !important;
    left: 0 !important;
    right: 0 !important;
    position: relative !important;
}

.modal .hide-on-popup{
	display:none!important;
}





/* == POPUP STYLE END ===*/

.main-body{
	margin-top:60px;
}

.home_menu_cont{
	

}

.home_menu{
	
}

.home_menu a{
    text-align: center;
    text-decoration: none;
    color: black;
    margin: 10px;

}

.app_menu_icon{
	background-color: white;
    width: 80px;
    height: 80px;
    padding: 20px;
    margin: 0 0px;
    border: solid 1px #ccc;
    border-radius: 5px;     display: inline-block;
}

.app_menu_name{}

.submenu{
    position: fixed;
    height: 51px;
    top: 0;
    z-index: 999;
    margin-left: 15px;
}
.submenu a{
	color: lightgray!important; 
	padding: 10px !important;
}
.submenu li.dropdown a{
	color: lightgray!important;
	margin-bottom: 0!important;
	padding: 16px 0 12px!important;
}
.submenu li.dropdown a.active{
	color: dodgerblue !important;
}
.submenu ul.dropdown-menu {
	padding:0px;
	border-radius: 0;     
	
}
.submenu ul.dropdown-menu li a.dropdown-item{
	color: #333 !important;
	padding: 5px 10px!important;     
	border-bottom: 1px dotted #999;
}
.app_inside_name{
	padding: 0px 0px!important;
}

.sidebar{
	/*position: fixed;*/
	/*width: 100%;*/
}

.sidebar li{
	
}

.sidebar li a{
	color: #eee;
    font-size: 13px;
}

.sidebar li a.active, a.active, a.blue{
	color:dodgerblue!important;
	font-weight: bold!important; 
	border-bottom: solid;
}
.sidebar li a:hover{
	color: white!important;
}

.sub_header{
	background-color: #fff;
	z-index: 99;
	top: 51px;
	left:0;
} 

ul.pagination{
	margin-bottom:2px!important;
}

.form_1{
	padding-top: 100px !important;
    display: block;
}

.dropdown-menu{
	z-index: 999;

}

a.dropdown-toggle{
	margin-right: 20px;
	padding-bottom: 6px;
}

a.dropdown-item{
	color: darkslategray !important;
    padding: 5px 10px;
    font-size: 14px;
}

.form-secondary{

}

.form-secondary input,
.form-secondary select{
	border: 0!important;
    border-bottom: solid 1px!important;
	border-radius:0!important;
    background: none!important;
}


.form-control:disabled {
	border: 0!important;
	background-color: #f8f9fa!important;
}


footer{
    font-size: 10px;
}

.main-content{
	/*margin-left: 250px;*/
}

.centered-container {
    display: flex;
    justify-content: center;   /* Horizontal center */
    align-items: center;       /* Vertical center */
    min-height: 70vh;         /* Full height of viewport */
    background-color: #f8f9fa; /* Optional: light background */
}

.centered-box {
    background: #f8f9fa;
    padding: 2rem 3rem;
    border-radius: 8px;
    box-shadow: 0 0 15px rgba(0,0,0,0.1);
    width: 100%;
    max-width: 400px;
}

.bg-lightgrey{
    background-color: #f8f9fa; /* Optional: light background */
}


.section-title-link{
	float: right;
}


label {
	color: darkgray;
	font-size: small;
}

.add-record{
    position: relative;
    float: left;
	margin: 0 20px 10px 0; 
}

.section-box {
  border-top: 2px solid #ccc;
  position: relative; 
	/*margin-top: 50px;*/
}

.section-title {
  position: absolute;
  top: -14px;
  /*left: 50%;
  transform: translateX(-50%);*/
}

.action-link{
	margin: 0 5px;
    font-size: small; 
	text-decoration: none;
}

.active-link{
	color:#0d6efd !important;
	font-weight:bold !important; text-decoration: underline!important;
}

.published{ color: green; }
.unpublished { color: red; }


.pagination_cont { float: left; clear:both;  }
.pagination_cont div { float: left; }
ul.pagination li { margin: 0 3px; padding: 0 4px;}
ul.pagination li.active { 
	background-color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));
    
}
ul.pagination li.active a { 
    color: white;
}

/* Targets all placeholder text */
::placeholder {
  color: lightgray;
  opacity: 1; /* Fully opaque for consistent appearance */
}

/* For older versions of browsers */
::-webkit-input-placeholder { color: lightgray; }
:-ms-input-placeholder { color: lightgray; }
::-ms-input-placeholder { color: lightgray; }

/* Global form input and textarea styling */
input.form-control,
textarea.form-control,
select.form-select {
  font-size: 0.875rem; /* smaller font size */
  padding: 0.375rem 0.5rem; /* reduced padding */
  height: auto; /* override Bootstrap's fixed height if needed */
}

/* Optional: style placeholder smaller and grey */
::placeholder {
  color: grey;
  font-size: 0.875rem;
  opacity: 1;
}

.nav-two{
	text-decoration: none !important;
	color: black;

}

.table_view_template{
    border-collapse: separate;
    border-spacing: 20px 0;

}

.table_view_template tr {


}

.table_view_template tr td {
	padding: 5px 5px 5px 0!important;
	border-bottom: dashed 1px #e0e0e0!important

}

.section-header{
	margin-left: -18px;
}

.cont-staff-leave{
	padding: 20px 0;
}

.cont-leave-days{
	


}

.cont-leave-calendar{
	


}

.table_calender_header{
	background-color: #333;
	color: #eee;
}

.table_calender_header a{
	text-decoration: none;
	color: #eee;     
	padding: 0 10px;
}

.table_calendar{
	text-align: right;
	border: solid 1px #eee;
	background-color: #F7F4F4;
}

.table_calendar th{
	background: lightgrey!important;
	border: solid 1px #eee;
}

.table_calendar td{
	border: solid 1px #eee;
	background-color: #F7F4F4;     
	height: 60px;    
	width: 14.28%;
}

.table_calendar .weekend{
	 color: cadetblue!important;
    background-color: aliceblue;
	
}

.table_calendar .today{
}

.table_calendar td span.calendar_day{
	font-weight: bold;
}
.table_calendar .today span.calendar_day{
	background-color: deepskyblue;
	padding: 2px 7px;
    border-radius: 5px;
	
}

.table_calendar td span.leave_name{
	font-weight: bold;
	background-color:darkkhaki;
    border-radius: 5px;
    font-size: 11px;
    margin-top:3px; 
}

.table_calendar td span.holiday_name{
	font-weight: bold;
    font-size: 12px;
	color: green;

}

.scrollable_cont {
    position: absolute;
    left: 0;
    right: 0;
    overflow: auto;
}

/* 👇 THIS is key for horizontal scroll */
.scrollable_content_cont {
    border-collapse: collapse;
    width: max-content;    /* ensures it expands horizontally */
    border-collapse: separate;
    border-spacing: 2;
}

.scrollable_content_cont th,
.scrollable_content_cont td {
    padding:0px;
    border: 1px solid #ccc;
    white-space: nowrap;   /* prevents text wrapping */
} 
.scrollable_content_cont th{
	padding:2px 8px;
}

.scrollable_content_cont th.th-empty{
    border: 0px!important;
    background: #f8f9fa!important;

}

.scrollable_content_cont thead th {
    position: sticky;
    top: 0;
    background: #000!important;
    color: lightgray!important;
    z-index: 2; font-weight:normal;
}
/* First column */
.scrollable_content_cont th:first-child,
.scrollable_content_cont td:first-child {
    border: 1px solid #ccc;
    width: 15vw;
    position: sticky;
    left: 0;
    background: #fff;
    color: #000;
    z-index: 3; /* higher so it stays on top */ border-right: 1px solid #dee2e6;
    box-shadow: 2px 0 5px rgba(0,0,0,0.1);
}

/* Second column */
/*.scrollable_content_cont th:nth-child(2),
.scrollable_content_cont td:nth-child(2) {
    border: 1px solid #ccc;
    width: 15vw;
    position: sticky;
    left: 15vw; /* 👈 MUST match first column width 
    background: #fff;
    color: #000;
    z-index: 2;
}*/

.scrollable_content_cont thead th.schedule_week_header{
    background-color:#ffc107!important; 
    font-weight: bold;
    color: #000!important;
}

.scrollable_content_cont td input,
.scrollable_content_cont td select {
    border-radius: 0!important;
    border: 0!important;     
    padding: 3px 0.5rem!important;
    font-size: 12px;
}

.scrollable_content_cont td select {
	background-color:#ffc107!important; 
}

table.retainer td{

}

.cont-results{
	margin-top: 80px;
    position: absolute;
    left: 0;
    right: 0;
}

table.table-results{

}

.cont-form{
	border: solid 1px #eee;
    background: #fff;
}

.cont-form th{
    background-color: #F9FAFB;
}

.cont-form th, 
.cont-form td{
	padding: 10px;
}

.cont-form input, 
.cont-form select, 
.cont-form textarea {
	width:100%;
	border: 0;
    background: #fff;
}



.quotation-template {
	border-collapse: separate;
    border-spacing: 5px;
} 

.quotation-template th,
.quotation-template td {
} 

table.quotation{
	
}

table.quotation thead tr th {
  background-color: #f2f2f2!important;
}

table.quotation tbody tr:nth-child(odd) {
  background-color: #ffffff!important;
}

table.quotation tbody tr:nth-child(even) {
  background-color: #f2f2f2!important;
}
table.quotation tbody tr:nth-child(even) textarea {
  background-color: #f2f2f2!important;
}


.quote-td{
	padding:0 5px!important;
	border: 0;
	border-bottom:solid 1px #ccc!important;
	position:relative;
	background:none!important;
}

.quotation td input,
.quotation td select{
	font-size:14px!important;
	border-radius: 0 !important;
    border: 0;
    padding: 10px 0!important;
	background:none!important;
}

td input.totals {
	font-size:14px!important;
	border-radius: 0 !important;
    border: 0;
    padding: 0!important;
	background:none!important;
}

.quotation td select.no-arrow {
  appearance: none!important;
  background: transparent!important;
}

.quotation .product-results {
	z-index:999!important;
	
}

.quotation .product-description{
	padding: 0 10px 10px;
	font-size:12px!important;
}

table.quotation-totals{
	border-top: solid 1px #f8f9fa;
	border-bottom: solid 1px #f8f9fa;
}

table.quotation-totals td{
	border: 0;
	border-bottom:solid 1px #ccc!important;
	position:relative;
	background:none!important;
}