@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700;900&display=swap');
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
:root{
  --white: #f6f6f6;
  --black: #212529;
}
body {
  font-family: 'Roboto', sans-serif;
  font-size: 16px;
  background-color: var(--white);
}
::selection {
  background-color: var(--black);
  color: var(--white);
}
/* width */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
/* Track */
::-webkit-scrollbar-track {
  background-color: var(--white);
}
/* Handle */
::-webkit-scrollbar-thumb {
  background: var(--black);
  border-radius: 10px;
}
/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
  margin-bottom: 0;
}

p {
  line-height: 1.5;
  margin-bottom: 0;
}

a {
  text-decoration: none;
}
nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
input:focus,
select:focus,
optgroup:focus,
textarea:focus {
  border-color: rgba(33, 37, 41, 0.8) !important;
  box-shadow: 0 1px 1px rgba(33, 37, 41, 0.075) inset, 0 0 8px rgba(33, 37, 41, 0.6) !important;
  outline: 0 none !important;
}

.btn-outline-dark{
  border: 1px solid #008000 !important;
  color: #006600 !important;
}

.btn-outline-dark:hover{
  background-color: #006600 !important;
  color: var(--white) !important;
}


.px13{
  font-size: 13px;
}
hr.dashes-hr{
  border-top: 8px dashed var(--black);
}
.container {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}
  @media (min-width: 768px) {
    .container {
      width: 750px;
    }
  }
  @media (min-width: 992px) {
    .container {
      width: 970px;
    }
  }
  @media (min-width: 1200px) {
    .container {
      width: 1170px;
    }
  }


  @media only screen and (max-width: 768px) {

  }

/* ****************************** Login Page  */
.login-form{
  position: relative;
  width: 100%;
  height: 100dvh;
}
.login-form-body{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.my-form{
  width: 550px !important;
  border: 1px solid var(--black) !important;
  padding: 50px 25px;
  border-radius: 5px;
}
.my-form input{
  border-color: rgba(33, 37, 41, 0.3) !important;
}

.mobile-btn{
  visibility: hidden;
}

@media only screen and (max-width: 768px) {
  .my-form{
    width: 100vw !important;
  }
  .login-form-body{
    top: 30%;
  }
  .pc-buttons{
    display: none;
  }
  .mobile-btn{
    visibility:visible;
  }
}
/* ****************************** dashboard design */
.nav-bg{
  border: 1px solid var(--black);
  color: var(--black);
}
.nav-body{
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px;
}
.nav-right-items{
  display: flex !important;
  align-items: center;
  gap: 10px;
}

.welcome-message{
  text-align: center;
  margin: 30px 0;
}

/* Dropdown Button */
.dropbtn {
  color: var(--black);
  font-size: 30px;
  border: none;
  font-weight: 900;
  cursor: pointer;
}

/* The container <div> - needed to position the dropdown content */
.dropdown {
  position: relative;
  display: inline-block;
}

/* Dropdown Content (Hidden by Default) */
.dropdown-content {
  display: none;
  position: absolute;
  background-color: var(--white);
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  z-index: 1;
  right: 0;
}

/* Links inside the dropdown */
.dropdown-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}

.dropdown-content a:hover {
  background-color: var(--black) !important;
  color: var(--white) !important;
}

.show {
  display:block;
}


/* Side nav */

/* The side navigation menu */
.dashboard-left-content{
  z-index: 1;  
}
.dashboard-headline{
  color: #000;
  padding: 25px;
  box-shadow: rgba(255, 255, 255, 0.3) 0px 30px 60px -12px inset, rgba(255, 255, 255, 0.3) 0px 18px 36px -18px inset;
}
.sidenav {
  height: 100%; /* 100% Full-height */
  width: 200px; /* 0 width - change this with JavaScript */
  position: fixed; /* Stay in place */
  z-index: 0;
  left: 0;
  background-color: var(--black); /* Black*/
  overflow-x: hidden; /* Disable horizontal scroll */
  padding-top: 20px; /* Place content 60px from the top */
  transition: 0.5s; /* 0.5 second transition effect to slide in the sidenav */
}

/* The navigation menu links */
.sidenav a {
  padding: 8px 8px 8px 32px;
  text-decoration: none;
  font-size: 25px;
  color: #ccc;
  display: block;
  transition: 0.3s;
}

/* When you mouse over the navigation links, change their color */
.sidenav a:hover {
  color: #f1f1f1;
}


.sidenav .closebtn {
  display: none;
}

/* Style page content - use this if you want to push the page content to the right when you open the side navigation */
#main {
  transition: margin-left .5s;
  padding: 20px;
}

.hamburger-icon{
  cursor: pointer;
  font-size: 30px;
  display: none;
}


/* Content section */
.content{
  margin-left: 200px;
}

/* On smaller screens, where height is less than 450px, change the style of the sidenav (less padding and a smaller font size) */
@media screen and (max-height: 450px) {
  .sidenav {padding-top: 15px;}
  .sidenav a {font-size: 18px;}
}


/* Side nav dropdown */

/* Style the sidenav links and the dropdown button */
.sidenav a, .dropdown-btn {
  padding: 6px 8px 6px 16px;
  text-decoration: none;
  font-size: 20px;
  color: #ccc;
  display: block;
  border: none;
  background: none;
  width: 100%;
  text-align: left;
  cursor: pointer;
  outline: none;
}

/* On mouse-over */
.sidenav a:hover, .dropdown-btn:hover {
  color: #f1f1f1;
}
/* Dropdown container (hidden by default). Optional: add a lighter background color and some left padding to change the design of the dropdown content */
.dropdown-container {
  display: none;
  background-color: #262626;
  padding-left: 8px;
}


/* Optional: Style the caret down icon */
.fa-caret-down {
  float: right;
  padding-right: 8px;
}

/* ************************ Dashboard product display */
.productCard{
  width: 15rem;
}

.cke_notifications_area{
  display: none !important;
}

@media only screen and (max-width: 768px){
  .sidenav{
    height: 100%;
    width: 0;
    position: fixed;
    z-index: 3;
    left: 0;
    background-color: var(--black);
    overflow-x: hidden;
    padding-top: 40px;
    transition: 0.5s;
  }
  .sidenav .closebtn {
    position: absolute !important;
    top: 0 !important;
    left: 200px !important;
    font-size: 26px !important;
    display: block !important;
  }
  .dashboard-headline{
    display: none;
  }
  .hamburger-icon{
    display: inline-block;
  }
  .content{
    margin-left: 0;
  }
}


/* ================================================
 Home Page
================================================ */
.filter-category{
  width: fit-content;
  padding: 3px;
}
.filter-category a{
  color: #ff0000;
}
.product-action-btn{
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.mobile-footer{
  display: none;
}

.gallery-cell {
  width: 66%;
  height: auto;
  margin-right: 10px;
  background: #8c8;
  opacity: 0.5;
  /* transition: cubic-bezier(0.075, 0.82, 0.165, 1); */
  /* counter-increment: gallery-cell; */
}

.is-selected {
  opacity: 1 !important;
}

.image {
  width: 100%;
  height: 20dvh;
  object-fit: cover;
}

.card-img-top{
  width: 100%;
  height: 250px;
  object-fit: contain !important;
  border: 1px solid #008000;
}
/* cell number */
.gallery-cell:before {
  display: block;
  text-align: center;
  /* content: counter(gallery-cell); */
  line-height: 200px;
  font-size: 80px;
  color: white;
}

@media only screen and (max-width: 768px){
  .product-action-btn{
    /* flex-direction: column;
    gap: 10px !important; */
  }
  /* Footer */
.mobile-footer{
  display: block;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #F0F8FF;
  z-index: 99;
  text-align: center;
  padding: 5px 0;
}
.mobile-footer-body{
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 8px;
}
.pcCategory{
  display: none;
}
.card-img-top{
  height: 200px;
}
}





/* ================================================
 Cart Page
================================================ */

.cart-page{
  min-height: 100vh !important;
}

.single-cart-item{
  display: flex;
  justify-content: space-between;
  /* align-items: center; */
}
.single-cart-item-section-top{
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.single-cart-item-section-middle{
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}
.single-cart-item-section-bottom{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
  flex-wrap: wrap;
}
.cancel-btn{
  align-self: center;
}

.quantity-control {
  display: flex;
  align-items: center !important;
  border: 1px solid var(--black);
}
.quantity-control span{
 padding: 2px 6px;
 font-weight: 900;
}

.quantity-control span:hover{
  cursor: pointer;
}
.decrease-quantity{
  border-right: 1px solid var(--black) !important;
} 

.increase-quantity{
  border-left: 1px solid var(--black) !important;
} 

.quantity{
  margin: 0 !important;
  border: none;
  text-align: center;
  width: 40px !important;
}
.subtotal{
  width: 60px !important;
  border: none;
  text-align: right;
  margin: 0 !important;
}
.update-btn{
  display: none;
  color: #006600;
  border: none;
  background-color: transparent;
  border: 1px solid #006600;
  outline: none;
  cursor: pointer;
  transition: all .3s ease;
}

@media only screen and (max-width: 768px){
  .single-cart-item{
    flex-direction: column;
    justify-content: space-between;
    gap: 20px;
  }
  .single-cart-item-section-middle{
    flex-direction: row;
  }
}



/*  */
.my-nav{
  padding: 0 !important;
  z-index: 1 !important;
}
.icon{
  width: 170px;
  height: 60px;
  object-fit: contain;
}
.logo-img {
  width: 250px;
  height: auto;
  object-fit: contain;
}

.banner-image{
  width: 300px;
  height: auto;
  object-fit: contain;
}
