#bendie-shop-list {
	margin: 0 !important;
}
/* styled to appear as being included in above header container */
.shop-controls-background {
	margin: 0;
	padding: 0;
	background-color: var(--wp--preset--color--custom-green-accent) !important;
}
.shop-controls-container {
	display: flex;
	gap: 1.2rem;
	align-items: normal !important;
	flex-wrap: nowrap !important;
	max-width: 90vw;
    margin-left: auto !important;
    margin-right: auto !important;	
	margin-bottom:0;
	padding-bottom:var(--wp--preset--spacing--40);
}
.search-box-container {
	flex-grow: 0;
	margin: 0;
	min-width: 0;
    overflow-wrap: break-word;
    word-break: break-word;
}
.bendie-list-js-search-box {
	display: flex;
    flex: auto;
    flex-wrap: nowrap;
    max-width: 100%;
	margin-block-end: 0;
	margin-block-start: 0;
	overflow-wrap: break-word;
    word-break: break-word;
}
.bendie-list-js-search-box input {
	border-radius: 3.125rem;
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
	padding-top: 8px;
	padding-bottom: 8px;
	min-height: 40px;
	font-size: var(--wp--preset--font-size--medium);
    line-height: 1.6;
	scroll-margin: 100px;
	appearance: none;
    border: 0px;
    flex-grow: 1;
    font-family: inherit;
    font-style: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    margin-left: 0;
    margin-right: 0;
    min-width: 3rem;
    text-decoration: unset !important;
    text-transform: inherit;
}
.sort-by-outer-container {
	flex-grow: 0;
	margin: 0;
	min-width: 0;
    overflow-wrap: break-word;
    word-break: break-word;
}
.sort-by-buttons-container {
	display: flex;
	justify-content: flex-end;
	margin-block-end: 0;
	margin-block-start: 0;
	flex-wrap: wrap;
    align-items: center;
	gap: 1.2rem;
	overflow-wrap: break-word;
    word-break: break-word;
}
.sort-by-buttons-container p {
	margin: 0;
}
.sort-by-buttons {
    display: flex;
    flex-wrap: wrap;
	word-break: keep-all;
    justify-content: flex-end;
	gap: 8px;
	margin: 0;
	overflow-wrap: break-word;
}
.sort::after {
  content: "";
  margin-left: 6px;
  font-size: 0.8em;
}
.sort.asc::after {
  content: "▼";
}
.sort.desc::after {
  content: "▲";
}
.bendie-shop-list-for-sorting {
	list-style-type: none;
	margin-left: 0;
	margin-right: 0;
	padding: 0;
}
p.go-to-game-message {
	position: absolute;
	right: 60px;
	margin-top: -18px;
	margin-bottom: 0;
	font-size: 0.8rem;
	text-align: right;
}


/* styles and layouts for individual product description items */
	.product-block-container {
		display: block;
		position: relative;
		padding-right: var(--wp--style--root--padding-right);
		padding-left: var(--wp--style--root--padding-left);
	}
	.title-for-phone-display .bendie-edit-product-title {
		display: none;
	}
	.product-block-description-container {
		display: flex;
		margin-block-start: 0;
		margin-block-end: 0;
		margin-left: auto !important;
		margin-right: auto !important;
		margin-bottom: 0;
		padding-right: 0;
		padding-left:0;
		padding-top: 30px !important;
		gap: 1.2rem;
		align-items: normal !important;
		flex-wrap: nowrap !important;
		max-width: 90% !important;
	}
	.description-left-container {
		display: flex !important;
		flex-direction: column;
		align-items: flex-start !important;
		justify-content: flex-start;
		margin: 0;
	}
	.description-left-container-column {
		display: flex;
		flex-direction: column;
		align-items: flex-start !important;
		justify-content: flex-start;
		gap: 1.2rem;
		margin-block-end: 0px;
		margin-block-start: 0px;
		flex-grow: 1;
	}
	body.page-template-bendie-shop .description-left-container-column > * {
		margin: 0;
	}
	body.page-template-bendie-shop .bendie-edit-fun-description {
		font-size: var(--wp--preset--font-size--large);
	}
	.description-right-container {
		display: block;
		flex-grow: 0;
		min-width: 0;
		overflow-wrap: break-word;
		word-break: break-word;
		margin: 0;
	}
	
	
/* Attributes container and bars */
	.product-attributes-container {
		padding-top: 25px;
		padding-bottom: 25px;
		padding-left: 120px;
		padding-right: 120px;
		margin-top: 0px !important;
		margin-left: auto !important;
		margin-right: auto !important;
		margin-block-start: 1.2rem;
		margin-block-end: 0;
		max-width: 90% !important;
		box-sizing: border-box;
	}
	.strategy_game.product-attributes-container {
		background-color: #94ddde;
	}
	.party_game.product-attributes-container {
		background-color: #d8f7c5;
	}
	.character_game.product-attributes-container {
		background-color: #ffe8c8;
	}
	.product-attributes-flexbox {
		display: flex;
		flex-wrap: nowrap !important;
		align-items: center;
		justify-content: space-between;
		margin: 0;
		padding: 0;
	}
	.attribute-flex-item {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 1.2rem;
	}
	.attribute-flex-item > * {
		margin: 0;
	}
	.attribute-flex-item h2 {
		font-size: 1.5rem;
	}
	body.page-template-bendie-shop .hidden-for-search {
		display: none;
	}
	.stat-bar-container.player_size {
		background-color: unset;
	}
	.stat-bar-container.player_size p {
		font-size: var(--wp--preset--font-size--large);
		margin: 0;
	}
	.stat-bar-container {
		display: flex;
		background-color: white;
		opacity: 0.8;
		margin-left: 0;
		align-items: center;
		width: 8vw;
		height: 20px;
		border-radius: 5px;
		cursor: pointer;
	}
	.stat-bar-fill-block {
		display: inline-block;
		width: 15%;
		height: 14px;
		margin: 2.25%;
		border-radius: 4px;
	}
	.stat-bar-container.party_game .stat-bar-fill-block {
		background-color: #8aac76;
	}
	.stat-bar-container.strategy_game .stat-bar-fill-block {
		background-color: #76b1b2; 
	}	
	.stat-bar-container.character_game .stat-bar-fill-block {
		background-color: #cca159;
	}
	.attribute-detail-message {
		margin-top: 20px;
		margin-bottom: -10px;
	}
	.attribute-detail-message p {
		margin: 0;
		font-size: 0.7rem;
		text-align: center;
	}
	
	
	/* attribute popup box */
	.attribute-popup {
		display: none;
		position: absolute;
		z-index: 10000;
		width: 300px;
		background: #fff;
		border: 1px solid #ccc;
		box-shadow: 0 4px 8px rgba(0,0,0,0.2);
		border-radius: 6px;
		padding: 10px;
	}
	.popup-close-icon {
		display: block;
		margin-left: auto;
		cursor: pointer;
		border: none;
		background-color: unset;
		transition: transform 0.1s ease, translateY 0.1s ease;
	}
	.popup-close-icon:hover {
		transform: scale(1.2) translateY(-2px);
	}
	.popup-close-icon:active {
		transform: unset;
	}
	.attribute-popup-content {
		font-size: 0.9em;
		white-space: pre-line;
	}
	.attribute-popup.active {
		display: block;
	}
	.attribute-popup-content {
		margin-top: 0px;
		margin-bottom: 10px;
	}


.product-block-divider-line {
	border-width: 0 0 5px 0;
    border-color: black;
    border-style: solid;
    margin-top: 20px;
    margin-bottom: 40px;
    width: 100%;
	margin-left: auto !important;
    margin-right: auto !important;
	max-width: 90% !important;
} 
/* product category & tags styles for shop page (mostly copied from woo edits) */
.shop-product-cat-tags-container.tags-for-phone-display {
	display: none;
}
body.page-template-bendie-shop .shop-product-cat-tags-container {
	margin-top: auto !important;
}
body.page-template-bendie-shop .shop-product-cat-tags-container .category {
	margin-block-start: 0px;
    margin-block-end: 0px;
}
body.page-template-bendie-shop .tags-label-shop-page {
	font-size: 1.1rem;
}
body.page-template-bendie-shop .bendie-product-tags-collapsible {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-top: 0.2rem;
	margin-bottom: 0.2rem;
}
body.page-template-bendie-shop .bendie-product-tags-collapsible .tag-badge-shop-page {
	display: inline-block;
	font-size: 0.9rem;
	background: none;
	border: none;
	padding: 0px;
	margin: 0em 0.5em;
}
body.page-template-bendie-shop .bendie-tag-toggle {
	order: 999;
	margin-left: 0.5em;
	font-size: 0.9rem;
	text-decoration: underline;
	color: #ea8439;
	cursor: pointer;
}
body.page-template-bendie-shop .tag-badge-shop-page.hidden-extra-tags {
	display: none;
}
body.page-template-bendie-shop .tag-badge-shop-page.hidden-extra-tags.show {
	display: inline-block;
}
body.page-template-bendie-shop .game-type-tag {
	font-size: 1.1rem;
}
body.page-template-bendie-shop .category a {
	font-size: 1.2rem;
	margin-left: 0.4rem;
}

/* images */
.category_icon {
	position: absolute;
	z-index: -10;
	width: 400px;
	height: auto;
	top: 5px;
	left: 54vw;
	opacity: 0.2;
}
.strategy_game.category a {
	color: #94ddde;
}
.party_game.category a {
	color: #acd793;
}
.character_game.category a {
	color: #ffc96f;
}

/* Transition and tablet specfics */
@media only screen and (max-width: 1300px) and (min-width: 551px) {
	.shop-controls-container {
		flex-direction: column !important;
	}
	.sort-by-buttons-container {
		justify-content: flex-start !important;
		flex-wrap: nowrap !important;
		gap: 0.5rem !important;
	}
	.sort-by-buttons-container p {
		white-space: nowrap !important;
	}
	.description-left-container {
		flex-basis: clamp(60%, 60vw, 70%) !important;
	}
	.description-right-container {
		flex-basis: auto !important;
	}
	.shop-page-product-img img {
		width: clamp(200px, 30vw, 400px) !important;
	}
	.product-attributes-container {
		padding-left: 4vw !important;
		padding-right: 4vw !important;
	}
	.attribute-flex-item h2 {
		font-size: clamp(1rem, 1.8vw, 1.5rem) !important;
	}
	.stat-bar-container {
		width: 11vw !important;
	}
	.stat-bar-container.player_size p {
		font-size: clamp(1rem, 1.7vw, 1.5rem) !important;
	}
}

/* Phone screen styles */
@media only screen and (max-width: 550px) {
	.wp-block-spacer.mobile-responsive-spacer1 {
		margin-top: -150px !important;
	}
	.shop-controls-container {
		flex-direction: column !important;
	}
	.sort-by-buttons-container {
		justify-content: flex-start !important;
		flex-wrap: nowrap !important;
		gap: 0.5rem !important;
	}
	.sort-by-buttons-container p {
		white-space: nowrap !important;
	}
	.sort-by-buttons-container .sort-by-buttons button {
		font-size: 0.8rem !important;
		line-height: 1 !important;
		padding-top: 0.5rem !important;
		padding-right: 1rem !important;
		padding-bottom: 0.5rem !important;
		padding-left: 1rem !important;
	}
	p.go-to-game-message {
		right: 20px !important;
		margin-top: -18px !important;
		margin-bottom: 0 !important;
		font-size: 0.6rem !important;
		text-align: right !important;
	}
	.product-block-container {
		padding: 0 !important;
	}
	.product-block-container .product-block-description-container {
		max-width: 95% !important;
		gap: 0.5rem !important;
		padding-top: 0 !important;
	}
	.description-left-container {
		flex-basis: 50% !important;
	}
	
	
	/* remove/hide the usual cat/tags container on mobile and display full width one beneath */
	.description-left-container-column .shop-product-cat-tags-container {
		display: none !important;
	}
	body.page-template-bendie-shop .shop-product-cat-tags-container.tags-for-phone-display {
		display: block !important;
		margin-top: 20px !important;
		max-width: 95%;
		margin-left: auto;
		margin-right: auto;
	}
	.shop-product-cat-tags-container.tags-for-phone-display .tags-label-product-page {
		font-size: 0.9rem !important;
	}
	.shop-product-cat-tags-container.tags-for-phone-display .tag-bag-product-page {
		font-size: 0.9rem !important;
	}
	
	
	/* remove/hide title in column for mobile, and display other full width */
	.title-for-phone-display .bendie-edit-product-title {
		display: block !important;
	}
	.title-for-phone-display .bendie-edit-product-title {
		text-align: center !important;
	}
	.description-left-container-column .bendie-edit-product-title {
		display: none !important;
	}
	.description-left-container-column .bendie-edit-fun-description {
		font-size: 0.9rem !important;
	}
	.description-right-container {
		flex-basis: 50% !important;
	}
	
	
	/* product img and link container set to 100% to fill flex container */
	.description-right-container .shop-page-product-img {
		width: 100% !important;
	}
	.description-right-container .shop-page-product-img .shop-picture-link {
		width: 100% !important;
	}
	.description-right-container .shop-page-product-img img {
		width: 100% !important;
	}
	.description-right-container .shop-page-product-img h2 {
		display: none !important;
	}
	.description-right-container .category_icon {
		left: 0 !important;
		top: 50px !important;
		opacity: 0.1 !important;
	}
	
	
	/* responsive styles for attributes section */
	.product-attributes-container {
		max-width: 100% !important;
		padding-left:  50px !important;
		padding-right:  50px !important;
	}
	.product-attributes-flexbox {
		flex-direction: column !important;
		align-items: flex-start !important;
		justify-content: unset !important;
		gap: 10px !important;
	}
	.product-attributes-flexbox .attribute-flex-item {
		flex-direction: row !important;
		width: 100% !important;
	}
	.product-attributes-flexbox .attribute-flex-item h2 {
		font-size: 1.1rem !important;
		width: 110px !important;
	}
	.stat-bar-container {
		width: 133px !important;
	}
	.stat-bar-fill-block {
		width: 20px !important;
	}
	.stat-bar-container.player_size p {
		font-size: 1rem !important;
	}
	.attribute-detail-message {
		margin-left: auto;
		margin-right: 0 !important;
		margin-top: 5px !important;
		margin-bottom: 0 !important;
		width: 133px !important;
	}
	.attribute-detail-message p {
        font-size: 0.7rem;
        text-align: center;
        margin: 0px;
    }
	.attribute-popup {
		display: none;
		position: absolute;
		z-index: 10000;
		width: 200px;
		background: #fff;
		border: 1px solid #ccc;
		box-shadow: 0 4px 8px rgba(0,0,0,0.2);
		border-radius: 6px;
		padding: 10px;
	}
	.popup-close-icon {
		display: block;
		margin-left: auto;
		cursor: pointer;
		border: none;
		background-color: unset;
	}
	.attribute-popup-content {
		font-size: 0.9em;
		white-space: pre-line;
	}
	.attribute-popup.active {
		display: block;
	}
	.attribute-popup-content {
		margin-top: 0px;
		margin-bottom: 10px;
	}
}