/* ISI Side bar for desktop view */
*{

  margin: 0;
  padding: 0;
  box-sizing: border-box;

}

.menu-icon{
  position: relative;
  padding: 10px 10px 10px 10px ;
}

.menu-profile-icon{

  padding: 5px 10px 5px 10px ;
}

.error-message {
  color: red;
  font-size: 0.9em;
  margin-top: 4px;
}

.has-error {
  border: 2px solid red !important;
}

.form_error_failure {


  padding: 10px 10px 10px 10px ;
  color: #AD073D;


}

.form_error_failure {


  padding: 10px 10px 10px 10px ;
  color: #2d8003;


}



.report-title{
  
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1.5em;
  color: #000000 !important;

}


.report-sub-title{
  
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1em;
  color: #737373 !important;

}

.isi-sidebar-nav{

  position: fixed;
  width: 60px;
  height: 100vh;
  background: #fcfcfc;
  overflow: hidden;
  transition: 0.5s;
  z-index: 21400000000;

}

.isi-sidebar-nav:hover {

  width: 300px;

}


.isi-sidebar-nav ul {

  position: relative;
  height: 100vh;
  padding: 0px;
  
}

.isi-sidebar-nav ul li {

  list-style: none;
  
}


.isi-sidebar-nav ul li:hover {

  background: #f3f3f3;
  
}

.isi-sidebar-nav ul li a {

  position: relative;
  display: flex;
  white-space: nowrap;
  text-decoration: none;

}


.isi-sidebar-nav ul li a .icon {

  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 60px;
  height: 60px;
  font-size: 1.5em;
  color: #333333;
  
}

.isi-action-bar-icon {

  font-size: 1.5em;
  color: #333333;

}


.isi-sidebar-nav ul li a .text {

  position: relative;
  display: flex;
  align-items: center;
  height: 60px;
  font-size: 1.0em;
  color: #333333;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  
}


.isi-sidebar-nav ul .logo {

  margin-bottom: 50px;
}

.isi-sidebar-nav ul .logo:hover {

  background: #ffffff;
}



.isi-sidebar-nav ul .logo .icon {

  font-size: 2em;

}


.isi-sidebar-nav ul .logo .text {

  font-size: 1.2em;
  font-weight: 500;
  
}



.isi-sidebar-bottom {

  position: absolute;
  bottom: 0;
  width: 100%;
  
}


.imgbox{

  position: relative;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  overflow: hidden;
  
}



.imgbox img{

  position: absolute;
  top:0;
  bottom: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.profile-picture {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  overflow: hidden;
  background-color: rgb(250,250,250);
  display: flex;
  align-items: center;
  justify-content: center;
}

.profile-picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: flex;
}

.shopping_cart_button::before {

  position: absolute;
  content: attr(data-item-count);

  top: 7px;
  right: 6px;

  width: 15px;
  height: 15px;

  color: #ffffff;
  background-color: #AD073D;

  border-radius: 50%;

  text-align: center;
  line-height: 15px;

  font-size: 10px;

  z-index: 2140010000;;
}



.shopping_cart_sm_button::before {

  position: absolute;
  content: attr(data-item-count);

  top: 7px;
  right: 6px;

  width: 15px;
  height: 15px;

  color: #ffffff;
  background-color: #AD073D;

  border-radius: 50%;

  text-align: center;
  line-height: 15px;

  font-size: 10px;

  z-index: 2140010000;;
}




.isi-history-card-info {
  border-top-right-radius: 3px; 
  border-bottom-right-radius: 3px; 
  border-top: solid 1px; 
  border-right: solid 1px; 
  border-bottom: solid 1px; 
  border-color: #000000; 
  text-decoration: ellipsis ;
}

.isi-history-card-color {
  border-top-left-radius: 3px; 
  border-bottom-left-radius: 3px; 
  border-top: solid 1px; 
  border-right: solid 1px; 
  border-bottom: solid 1px; 
  border-color: #000000; 
  text-decoration: ellipsis ;
}


/* Z Index hacks */
/* Date picker z-index hack */
.datepicker {

  z-index: 50000 !important;
}

/* Modal Hacks to show above navbar in bootstrap 5 */
.modal-backdrop {
  z-index: 1000000 !important;
}

.modal {
  z-index: 1000001 !important;
  margin-top: 30px;
}

/* User avatar circle */
.avatar-circle {
  width: 40px;
  height: 40px;
  color:#ffffff;
  background-color: #AD073D;
  text-align: center;
  font-size: 23px;
  font-family: sans-serif;
  vertical-align: middle;       
  line-height: 33px; /* <-- this is what you must define */
  
  padding-top: 5px;

  margin-left: 7px;
  margin-right: 7px;

  display:inline-block; 
  cursor: pointer;

  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;


}


.isi-navbar-button {

  padding: 0px;

  margin-left: 7px;
  margin-right: 7px;
  
  display:inline-block; 
  cursor: pointer;



}

.action-buttons {
  padding: 12px 0px 0px 12px; 
}


.logo_text_span {
  padding-top: 10px;
  display: inline-block;
}


.isi-ticket-labels {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.7em;
  max-height: 0.7em;
  padding: 0 0 0 0;
  
  position: relative;
  top:-5px;
}

.isi-ticket-bordered-account-label {
  
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.8em;
  line-height: 1em;
  color: #000000;

  border-top: solid; 
  border-left: solid; 
  border-right: solid; 
  border-bottom: none; 
  border-color:#000000; 
  border-width: 1px;

  padding-top: 3px;

}

.isi-ticket-bordered-label {
  
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.8em;
  
  overflow:hidden;
  white-space:nowrap;

  line-height: 1em;
  color: #000000;

  border: solid; 
  border-color:#000000; 
  border-width: 1px;

  padding: 3px  3px  3px  3px;
  
  min-height: 21px;


  
}


.isi-invoice-labels {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.7em;
  max-height: 0.7em;
  padding: 0 0 0 0;
  
  position: relative;
  top:5px;
}

.isi-invoice-underlined-label {
  
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.8em;
  line-height: 1em;
  color: #000000;

  padding-top: 5px;
  padding-left: 3px;
  padding-bottom: 3px;
  padding-right: 3px;

  min-height: 21px;

  position: relative;
}


.isi-ticket-bordered-text-box {
  
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.8em;
  line-height: 1em;
  color: #000000;

  border: solid; 
  border-color:#000000; 
  border-width: 1px;

  min-height: 90px;

  padding-top: 5px;
  padding-left: 5px;

}


.isi-invoice-address-text-box {
  
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.8em;
  line-height: 1em;
  color: #000000;

  min-height: 90px;

  padding-top: 5px;
  padding-left: 25px;

}

.isi-ticket-bordered-comment-box {
  
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.8em;
  line-height: 1em;
  color: #000000;

  border: solid; 
  border-color:#000000; 
  border-width: 1px;

  min-height: 70px;

  padding-top: 5px;
  padding-left: 5px;

}



.isi-ticket-underlined-row {
  
  border-bottom: solid; 
  border-color:#000000; 
  border-width: 2px;

  padding-top: 3px;

  min-height: 21px;

}




.isi-form-labels {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.7em;
  max-height: 0.7em;
  padding-top: 5px;

}

.isi-display-labels {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.6em;
  line-height: 0.6em;
  padding-top: 20px;
  color: #490c0c;

}

.isi-display-field {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 1em;
  line-height: 1em;
  color: #000000;
  top: -5px;
}

/* .isi-larger-labels {
  font-size: 1.1em;
  line-height: 1.1em;
} */


.isi-90px {
  min-width:90px;
}

.isi-100p {
  width:100%;
}



.isi-header-value {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11pt;
  font-weight: 300;

  padding: 5px 10px 5px 10px;

  border: solid;
  border-width: 1px;
  border-color: #7d7d7d;

  color: #000000;

}


.isi-th {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.8em;
  font-weight: 300;

  padding: 5px 10px 5px 10px;

  border: solid;
  border-width: 1px;
  border-color: #000000;

  background-color: #AD073D;
  color: #FFFFFF;

  cursor: pointer;

}

.isi-th-sm {
  font-size: 9pt;
  padding: 3px 5px 3px 5px;
}


.isi-td {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 11pt;
    font-weight: 100;
  
    padding: 5px 10px 5px 10px;
  
    border: solid;
    border-width: 1px;
    border-color: #7d7d7d;
  
    color: #000000;
  
}


.isi-td-nbt {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11pt;
  font-weight: 100;

  padding: 10px 10px 0px 10px;

  color: #000000;

}

.isi-td-nbm {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11pt;
  font-weight: 100;

  padding: 0px 10px 0px 10px;

  color: #000000;

}
.isi-td-nbb {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11pt;
  font-weight: 100;

  padding: 0px 10px 10px 10px;

  color: #000000;

}

.isi-td-input {

    margin: 0 0 0 0;
    border: none;
    background-color:rgba(0, 0, 0, 0)  !important;
  
}

.isi-td-center {
    display: flex;
    align-items: center;
    justify-content: center;
}


.isi-header {
    background:#ffffff; 
    top:50px;
}


.isi-header-label {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11pt;
  font-weight: 600;

  padding: 5px 10px 5px 10px;

  border: solid;
  border-width: 1px;
  border-color: #000000;

  background-color: #AD073D;
  color: #FFFFFF;

}




.isi-td-inverted {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 11pt;
  font-weight: 600;

  padding: 5px 10px 5px 10px;

  border: solid;
  border-width: 1px;
  border-color: #000000;

  background-color: #AD073D;
  color: #FFFFFF;

}



.isi-td-sm {
  font-size: 9pt;
  padding: 3px 5px 3px 5px;
}


.isi-td-sub {
  font-size: 9pt;
  color: #707070;
}

.isi-td-sup {
  font-size: 9pt;
  color: #707070;
  vertical-align: super;
}

.isi-td-w-100 {
  min-width: 100px;
}

.isi-td-col-1 {
  position: sticky; 
  overflow: hidden;
  text-overflow:  ellipsis;
  min-width:120px; 
  max-width:120px; 
  left:0px; 
}

.isi-td-col-2 {
  position: sticky; 
  overflow: hidden;
  text-overflow:  ellipsis;
  min-width:120px; 
  max-width:120px; 
  left:120px; 
}

.isi-feather-16{
  width: 16px;
  height: 16px;
}

.isi-feather-24{
  width: 24px;
  height: 24px;
}

.isi-feather-30{
  width: 30px;
  height: 30px;
}
  
.isi-feather-40{
  width: 40px;
  height: 40px;
}


.isi-bold {
  font-weight: bold;
}

.isi-print-only-table-header{
  display: none;
}

.isi-print-only-logo-div {

  display: none;

}



.isi-swatch-text {
    display: block;
    display: -webkit-box;
    max-width: 400px;
    
    font-size: 0.9em;
    color: #000000;

    margin: 0 auto;
    line-height: 1.2;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;

}

@media print {
  
  .isi-print-only-table-header{
    display: table-header-group;
  }

  
  .isi-print-only-logo-div {

    display: block;
  
  }
  


}
      



@media 
only screen and (min-width: 760px) {

    .isi-navbar {

        position:fixed; 
        top:56px; left:0px; 
        z-index:1100;
    
    }

    
    .action-buttons {
      padding: 24px 0px 0px 12px; 
    }


    
}

/* 
Max width before this PARTICULAR table gets nasty
This query will take effect for any screen smaller than 760px
and also iPads specifically.
*/
@media 
only screen and (max-width: 760px)  {


    .isi-navbar {

        position:fixed; 
        bottom:0px; 
        left:0px; 
        max-height: 56px;
        z-index:1100;
        width:100%;

    }
    
	/* Force table to not be like tables anymore */
	table, thead, tbody, th, td, tr { 
		display: block; 
	}
	
	/* Hide table headers */
	thead .isi-tr-head { 
		display: none;
	}
	
	.isi-header-label{
		display: none;
  }


  .isi-tr-body {

    border: 1;
    border-width: 1px;
    border-color: #bebebe;


  }

	.isi-td { 

    border: none;
    border-width: 0px;
    border-color: #7d7d7d;

		/* Behave  like a "row" */
		position: relative;
	}
	
  .isi-td-long-text {
    word-wrap: break-word; 
    white-space: pre-wrap; 
    overflow-wrap: break-word; 
    word-break: break-word; 
}


	.isi-td:before { 
    font-family: Arial, Helvetica, sans-serif;
    font-size: 11pt;
    font-weight: 100;
  
    padding: 5px 10px 5px 10px;
  
    border: solid;
    border-width: 1px;
    border-color: #000000;
  
    background-color: #AD073D;
    color: #FFFFFF;
  
    cursor: pointer;
  
    /* Set label from data-isi-label */
    content: attr(data-isi-label);
		/* Now like a table header */
		position: absolute;
		/* Top/left values mimic padding */
		top: 0px;
		left: 0px;
		width: 33%; 
		padding-right: 10px; 
		/* white-space: nowrap; */
	}
	
}