 body {
   color: rgb(135, 0, 0)
 }
 
 main {
    height: 100%;
    min-height: 100vh;
}

/* GLOBAL SCROLL BAR */
*:not(html, body)::-webkit-scrollbar {
	width: 10px;
	height: 10px;
	cursor: pointer;
}
*:not(html, body)::-webkit-scrollbar-track {
	background: transparent;
	border-radius: 5px;
}
*:not(html, body)::-webkit-scrollbar-thumb {
	background-color: var(--hh-red);
	border-radius: 5px;
	min-height: 40px;
	border: 2px solid var(--hh-white);
}
*:not(html, body)::-webkit-scrollbar-thumb:hover {
	background-color: color-mix(in srgb, var(--hh-red), var(--hh-medium-grey) 10%);
	cursor: pointer;
}
@supports not selector(::-webkit-scrollbar) {
	*:not(html, body) {
		scrollbar-width: thin;
		scrollbar-color: var(--hh-medium-red) transparent;
	}
}


.SearchApp {
  display: grid;
  grid-auto-flow: row;
  grid-template-rows: auto 1fr;
  grid-template-columns: 1fr;
  /* height: calc(100vh - 4rem); */
  position: sticky;
  top: 8rem;
}


.SearchApp .topMargin{
  margin-top: 1rem;
}

.SearchApp .filterSection {
  justify-content: space-between;
  margin-bottom: 15px !important;
}

@keyframes popover {
	from { 
		opacity: 0;
		transform: translateY(1em);}
	to { 
		opacity: 1; 
		transform: translateY(0);
	}
}
@keyframes popoverbackdrop {
	from { opacity: 0; }
	to { opacity: 1; }
}
[popover] {
	animation: popover 0.2s ease-out;
	background-color: rgba(255,255,255, 0.9);
	backdrop-filter: blur(30px);
	padding: 1.5em;
	border-radius: 0.5em;
	box-shadow: 0 0 1em rgba(0,0,0,0.2);
	border: 1px solid rgba(0,0,0,0.1);
}
[popover]::backdrop {
	animation: popoverbackdrop 0.2s ease-out;
	background-color: rgba(0, 0, 0, 0.2);
	backdrop-filter: blur(20px);
}

.Controls {
    display: flex
;
    gap: var(--gap);
    margin: 0;
    align-items: center;
}

.dropdown-filters {
    display: flex;
    align-items: center;
    gap: 5px !important
}

hh-panel:not([hidden]) {
    transform: translateX(-100%);
    transition: transform .25s ease;
}

.plpSorting {
    margin-left: auto;
}

@media (max-width: 1025px) {
    /* .FilterDesktop {
        display: none !important;
    } */    
}

@media (min-width: 1025px) {
    .FilterMobile {
        display: none !important;
    }
}
@media (max-width: 600px) {
  .HI_Search .FormTriColumns {
    grid-template-columns: 1fr !important
  }
}


/**Flyout css****/
.flyout-dialog {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  margin: 0 !important;
  padding: 0 !important;
  border: none;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  background: transparent;
  overflow: visible;
  z-index: 1000;
}

.flyout-dialog::backdrop {
  background: rgba(0, 0, 0, 0.3);
}

.flyout {
  background: white;
  width: 300px;
  height: 100vh;
  display: flex;
  flex-direction: column;
  padding: 1rem;
  position: relative;
  animation: slideIn 0.3s ease-out forwards;
  box-shadow: 2px 0 10px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.flyout.slide-out {
  animation: slideOut 0.3s ease-in forwards;
}

.flyout-content {
  flex: 1;
  overflow-y: auto; /* allow scrolling inside the flyout if needed */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.close {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  cursor: pointer;
}

.flyout-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.ControlButton {
	border: 2px solid var(--hh-red);
	border-radius: 24px;
	height: 45px;
	width: 45px;
	box-sizing: border-box;
	aspect-ratio: 1;
	display: flex;
	justify-content: center;
	align-items: center;
}

@keyframes slideIn {
	from {
		transform: translateX(-100%);
	}
	to {
		transform: translateX(0);
	}
}

@keyframes slideOut {
  from {
      transform: translateX(0);
  }
  to {
      transform: translateX(-100%);
  }
}

/**LOGIN******************/
.login-container {
	background: var(--hh-white);
	padding: calc(var(--gap) * 1.25) var(--gap);
	max-width: 640px;
	margin: auto;
	border-radius: 6px;
	overflow: hidden;
	> h2 {
		padding-bottom: calc(var(--gap) / 2);
	}
	> hgroup {
		padding-bottom: 0;
	}
	hgroup + .Form {
		padding-top: 0 !important;
	}
	> #loginForm fieldset {
		padding-bottom: calc(var(--gap) / 2) !important;
	}
	> #loginForm .ButtonGroup {
		width: 100% !important;
		justify-content: space-between;
		align-items: center;
		padding-top: calc(var(--gap) / 2) !important
	}
}

.password_with_icon {
	display: flex;
	position: relative;
}
.password-icon {
	position: absolute;
	right: 10px;
	top: 60%;
	transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
	#loginForm .ButtonGroup {
		flex-direction: column;
	}
	.login-button {
		width: auto;
	}
}

/*********Affiliated Items Product Popup******************/
.popup-print img {
  width: 20px !important;
  margin-top: 2px;
}