@media print { 

  .change{
    font-size: 10px!important;
  }

  * {
    font-size: 12px;
    line-height: 18px;   
  }

  body{
    /* Physical page margin for the thermal printer */
    margin: 5mm 4mm;
  }

  td,th {padding: 1px 0;}

  #invoice-POS table tr{
    border-bottom: 2px dotted #05070b;
  }

  .invoice_logo{
    text-align: center;
  }
 

  @page {
    /* Extra safety margin so content never touches the paper edges */
    margin: 4mm;
  }

}

.pos_page{
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  min-height: 100vh;
}

#invoice-POS h1, 
#invoice-POS h2,  
#invoice-POS h3, 
#invoice-POS h4, 
#invoice-POS h5, 
#invoice-POS h6{
  color: #05070b;
  font-weight: bolder;
}
#pos .pos-detail{
  height: 42vh!important;
}
#pos .pos-detail .table-responsive{
  max-height: 40vh!important;
  height: 40vh!important;
  border-bottom: none!important;
}

#pos .pos-detail .table-responsive tr{
  font-size: 14px
}

#pos .card-order{
  min-height: 100%;
}

#pos .card-order .main-header{
  position: relative;
}

#pos .grandtotal{
  text-align: center;
  height: 40px;
  background-color: #7ec8ca;
  margin-bottom: 20px;
  font-size: 1.2rem;
  font-weight: 800;
  padding: 5px;
}
#pos .list-grid .list-item .list-thumb img {
  width: 100%!important;
  height: 100px!important;
  max-height: 100px!important;
  object-fit: cover;
}

#pos .list-grid{
  height: 100%;
  min-height: 100%;
  overflow: scroll;
}

#pos .brand-Active{
border: 2px solid;
}

.centred{
text-align: center;
align-content: center;
}

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

.text-right{
  text-align: right !important;
}

.text-left{
  text-align: left !important;
}



@media (min-width: 1024px){
  #pos .list-grid{
    height: 100vh;
    min-height: 100vh;
    overflow: scroll;
  };

}

#pos .card.o-hidden {
  width: 19%;;
  max-width: 19%;;
  min-width: 130px;
}
#pos .input-customer{
  position: relative;
  display: flex;
  flex-wrap: unset;
  align-items: stretch;
  width: 100%;
}

#pos .card.o-hidden:hover {
  cursor: pointer;
  border: 1px solid;
}

* {
  font-size: 14px;
  line-height: 20px;
  font-family: 'Ubuntu', sans-serif;
  text-transform: capitalize;

}

td,
th,
tr,
table {
    border-collapse: collapse;
}
tr {border-bottom: 2px dotted #05070b;}

table {width: 100%;}
tfoot tr th:first-child {text-align: left;}

.total{
  font-weight: bold;
  font-size: 12px;
}


.change{
  font-size: 10px;
  margin-top: 25px;
}
.centered {
    text-align: center;
    align-content: center;
}

#invoice-POS{
  /* Default thermal roll width; overridden by body.receipt-XX classes below */
  width: 80mm;
  max-width: 100%;
  /* Visible white space around all sides of the receipt */
  margin: 6mm auto;
  padding: 5mm 4mm;
  box-sizing: border-box;
}

body.receipt-58 #invoice-POS{
  width: 58mm;
}

body.receipt-80 #invoice-POS{
  width: 80mm;
}

body.receipt-88 #invoice-POS{
  width: 88mm;
}
  

#top .logo{
    height: 100px;
    width: 100px;
    background-size: 100px 100px;
}

.info{
  margin-bottom: 20px;
}

.info,
#invoice-POS .info {
  text-align: center;
}

/* Minimal bootstrap-like utilities used in receipt layout */
.d-flex{
  display: flex;
}

.justify-content-between{
  justify-content: space-between;
}

.w-100{
  width: 100%;
}

.mt-1{ margin-top: 2mm; }
.mt-2{ margin-top: 3mm; }
.mt-3{ margin-top: 4mm; }
.mb-1{ margin-bottom: 2mm; }
.mb-2{ margin-bottom: 3mm; }
.ml-2{ margin-left: 4mm; }

.info>h2{
  text-align: center;
  font-size: 1.5rem;

}
.title{
  float: right;
}
.title p{text-align: right;} 
table{
  width: 100%;
  border-collapse: collapse;
}
#invoice-POS table tr{
  border-bottom: 2px dotted #05070b;
}

.invoice_logo{
  text-align: center;
}

.invoice_logo img{
  text-align: center;
}

.tabletitle{
  font-size: .5em;
  background: #EEE;
}
#legalcopy{
  margin-top: 5mm;
}
#legalcopy p{
text-align: center;
}
#bar{
  text-align: center;
}

/* Responsive ZATCA QR in POS receipt */
#invoice-POS .zatca-qr{ display:flex; flex-direction:column; align-items:center; justify-content:center; width:100%; margin-left:auto; margin-right:auto; }
#invoice-POS .zatca-qr-title{ font-weight:700; font-size:12px; margin-bottom:6px; letter-spacing:1px; text-transform:uppercase; text-align:center; }
#invoice-POS .zatca-qr > div{ display:inline-block; margin:0 auto; }
#invoice-POS .zatca-qr img{ margin-left:auto !important; margin-right:auto !important; max-width:100% !important; width:auto !important; height:auto !important; }
#invoice-POS .zatca-qr canvas{ display:block !important; margin-left:auto !important; margin-right:auto !important; max-width:100% !important; width:auto !important; height:auto !important; }
#invoice-POS .zatca-qr table{ margin:0 auto !important; width:auto !important; transform-origin:center center; }
#invoice-POS .zatca-qr table tr{ border:none !important; }
@media print{
  #invoice-POS .zatca-qr{ width:100%; }
  #invoice-POS .zatca-qr-title{ font-size:12px; margin-bottom:6px; }
  #invoice-POS .zatca-qr img,
  #invoice-POS .zatca-qr canvas{ max-width:100% !important; width:100% !important; height:auto !important; }
  #invoice-POS .zatca-qr table{ transform:scale(0.8); width:auto !important; margin:0 auto !important; }
  #invoice-POS .zatca-qr table tr{ border:none !important; }
}

.quantity {
  max-width: 95px;
  width: 95px;
}  

.quantity input {
  text-align: center;
      border: none;
}

.quantity .form-control:focus {
    color: #374151;
    background-color:unset;
    border-color: #e1d5fd;
    outline: 0;
    box-shadow: unset;
}

.quantity span {
  padding: 8px;
}