/* Variable Declarations */
:root {
    --main-color: #137a63;
    --main-color-dark25: #0e5b4a;
    --main-color-dark50: #093c31;
    --main-color-dark75: #041e18;

    --main-color-transparent-10: rgba(19, 122, 99, 0.10);
    --main-color-transparent-25: rgba(19, 122, 99, 0.25);

    --error-red-light: #f5c2c7;
    --error-red-dark: #842029;

    --error-red-light-dark25: #e56370;
    --error-red-dark-dark25: #63181e;

    --collecto-blue: #0e0e92;

    --dark-grey: rgba(0,0,0,0.75);
    --grey: rgba(0,0,0,0.5);
    --light-grey: rgba(0,0,0,0.25);
    --lightbetween-grey: rgba(0,0,0,0.15);
    --lighter-grey: rgba(0,0,0,0.05);

    --palette-primary: linear-gradient(to bottom, 
    rgb(77, 89, 255) 0%, 
    rgb(41, 55, 255) 50%, 
    rgb(7, 22, 255) 100%);

    --palette-primary-content: #9cf0dd;
    --palette-primary-light: #1aa687;
    --palette-primary-dark: #0c4e3f;

    --palette-secondary: #135d7a;
    --palette-secondary-content: #9cd8f0;
    --palette-secondary-light: #1a7fa6;
    --palette-secondary-dark: #0c3b4e;

    --palette-foreground: #fbfbfb;
    --palette-background: #eff1f0;
    --palette-border: #dde2e0;
    --palette-copy: #232928;
    --palette-copy-light: #5e6e6a;
    --palette-copy-lighter: #849591;

    --palette-success: #137a13;
    --palette-success-content: #9cf09c;
    --palette-warning: #7a7a13;
    --palette-warning-content: #f0f09c;
    --palette-error: #7a1313;
    --palette-error-content: #f09c9c;



}

/* Fonts  */
@import url('https://fonts.googleapis.com/css2?family=Exo+2:ital,wght@0,100..900;1,100..900&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css");

.thin {
    /* Montserrat Thin = 100 */
    font-weight: 100;
    font-family: Montserrat, "Open Sans", Helvetica, Arial, sans-serif;
}

.extralight {
    /* Montserrat Extra Light = 200 */
    font-weight: 200;
    font-family: Montserrat, "Open Sans", Helvetica, Arial, sans-serif;
}


.light {
    /* Montserrat Light = 300 */
    font-weight: 300;
    font-family: Montserrat, "Open Sans", Helvetica, Arial, sans-serif;
}


.regular {
    /* Montserrat Regular = 400 */
    font-weight: 400;
    font-family: Montserrat, "Open Sans", Helvetica, Arial, sans-serif;
}


.medium {
    /* Montserrat Medium = 500 */
    font-weight: 500;
    font-family: Montserrat, "Open Sans", Helvetica, Arial, sans-serif;
}


.semibold {
    /* Montserrat Semi-bold = 600 */
    font-weight: 600;
    font-family: Montserrat, "Open Sans", Helvetica, Arial, sans-serif;
}


.bold {
    /* Montserrat Bold = 700 */
    font-weight: 700;
    font-family: Montserrat, "Open Sans", Helvetica, Arial, sans-serif;
}


.extrabold {
    /* Montserrat Extra Bold = 800 */
    font-weight: 800;
    font-family: Montserrat, "Open Sans", Helvetica, Arial, sans-serif;
}


.black {
    /* Montserrat Black = 900 */
    font-weight: 900;
    font-family: Montserrat, "Open Sans", Helvetica, Arial, sans-serif;
}

.italic {
	font-style: italic;
}


/* Main */

body {
	/*background-color: #fcfcfc;
	background-image:  repeating-linear-gradient(45deg, #ffffff 25%, transparent 25%, transparent 75%, #ffffff 75%, #ffffff), repeating-linear-gradient(45deg, #ffffff 25%, #fcfcfc 25%, #fcfcfc 75%, #ffffff 75%, #ffffff);
	background-position: 0 0, 10px 10px;
	background-size: 20px 20px;*/
/*	background: linear-gradient(to right, rgba(19, 122, 99,0.1) 0%, rgba(255,255,255,0.25) 20%, rgba(255,255,255,0.25) 80%, rgba(19, 122, 99,0.1) 100%) fixed, scroll center top transparent*/
	/*background: var(--palette-background) !important;*/
	background: linear-gradient(to bottom, #f9faff 0%, #ffffff 100%);

	font-family: Montserrat, "Open Sans", Helvetica, Arial, sans-serif !important;
}










.page-container {
	width: 100%;
}

.height-100 {
	height: 100%;
}

.btn-primary {
	background: var(--palette-primary) !important;
	border-color: var(--palette-border) !important;
	border-radius: 3px !important;
}

.btn-primary:hover {
	background: var(--palette-) !important;
	border-color: var(--palette-border) !important;
}

.btn-primary-reverse {
	background: white !important;
	border-color: var(--palette-primary) !important;
	border-radius: 3px !important;
}

.btn-primary-reverse:hover {
	background: rgba(0,0,0,0.05) !important;
	border-color: var(--main-color-dark50) !important;
}

.btn-error {
	background: var(--error-red-light) !important;
	border-color: var(--error-red-dark) !important;
	border-radius: 3px !important;
}

.btn-error:hover {
	background: var(--error-red-light-dark25) !important;
	border-color: var(--error-red-dark-dark25) !important;
}

.fill-white {
	fill: white;
}

.navbar {
	width: 100%;
	min-height: 3.5rem;
	padding: 0 !important;
	color: var(--palette-primary);
	font-weight: 500;
}

.navbar-row {
	width:100%;
	display: flex;
	justify-content: center;
/*	align-items: center;*/
	border-bottom: 2px solid var(--palette-primary);
	padding: 0.5rem;
	background-color: rgba(255,255,255,255);
}

.navbar-user-dropdown {
	
}

#dropdownMenuButton {
	color: var(--palette-primary);
	font-weight: 500;
	border: none;
	font-size: 1rem;
	height: 100%;
}

.language-dropdown-menu {
	padding: 0 !important;
}

.navigation-purchases-unpaid-orders-text {
	color: red;
	font-size: 0.75rem;
}


.seller-reputation {

}

.seller-level-icon {
	width: 32px;
	height: 32px;
}

.seller-user-level {
	background: rgba(0,0,0, 0.05);
	border-radius: 3px;
	padding-left: 0.25rem;
	padding-right: 0.25rem;
}

/* Custom styling based on user level */

.seller-user-level-1 {
	
}
.seller-user-level-2 {
	/*color: white;
	background: rgb(200,158,0);
	background: linear-gradient(90deg, rgba(200,158,0,1) 0%, rgba(189,120,0,1) 86%);*/
}

.seller-user-level-3 {
	
}

.seller-user-level-4 {
	
}

.seller-user-level-5 {
	
}

.seller-user-level-6 {
	
}

.seller-user-level-7 {
	
}

.seller-user-level-8 {
	
}


.seller-items-sold {
	background: rgba(0,0,0, 0.05);
	border-radius: 3px;
	padding-left: 0.25rem;
	padding-right: 0.25rem;
}

.unpaid-order-green {
/*	color: green !important;*/
}

.unpaid-order-red-btn {
	border-color: black !important;
	border-width: 1px !important;
	background-color: #cc0000 !important;
	transition: 0.25s !important;

	background-image: repeating-linear-gradient(
	  -45deg,
	  red,
	  red 15px,
	  orange 15px,
	  orange 25px
	) !important;
}

.unpaid-order-red-btn:hover {
	background-color: #cc0000 !important;
	background-image: repeating-linear-gradient(
	  -45deg,
	  red,
	  red 15px,
	  orange 15px,
	  orange 25px
	) !important;

	opacity: 0.85;
}

.navigation-current-selected-locale {
	background-color: #f8f9fa !important;
}

.navigation-shopping-cart, .navbar-user-dropdown-toggle {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	color: var(--palette-primary);
	transition: 0.5s;
	padding-left: 1rem;
	padding-right: 1rem;
}

.navigation-shopping-cart-contents {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding-left: 0.5rem;
} 

.navigation-shopping-cart-header {
	font-size: 1.5rem;
}

.navigation-shopping-cart-amount {
	font-size: 0.75rem;
}

.navigation-shopping-cart-empty-true {
	opacity: 0.5;
}

.navigation-item {
 	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
/*	padding-left: 0.5rem;*/
/*	padding-right: 0.5rem;*/
}

.navigation-item a:hover {
	text-decoration: none;
	color: var(--palette-primary);
}
.navigation-item:hover {
	background-color: var(--main-color-transparent-10);
	transition: 0.5s;
	text-decoration: none;
	color: var(--palette-primary);
}


.navbar-col-start {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.navbar-col-center {
	display: flex;
	justify-content: center;
	align-items: center;
}

.navbar-col-end {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.navbar-col-end-logged-in {
	align-items: stretch;
}

.navigation-menu {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.navigation-menu-logged-in {
	align-items: stretch;
}


/* Navbar Login */

.navbar-login-form {
	display: flex;
	flex-direction: row;
	gap: 1rem;
}

.login-input {
	border: 1px solid rgba(120,120,120,0.25);
	border-radius: 6px;
	font-size: 1rem;
	outline: none !important;
	transition: 0.33s;
	background-color: white !important;
}

.login-input:focus-visible {
	border: 1px solid rgba(50,50,50,0.85);
	border-radius: 6px;
}

.login-input-username {
	background: url(/shop-assets/images/icons/user.png) no-repeat scroll 0.33rem 50%;
	padding-left:30px;
}

.login-input-password {
	background: url(/shop-assets/images/icons/key.png) no-repeat scroll 0.33rem 50%;
	padding-left:30px;
}

.login-input-button {
	text-decoration: none;
	border-radius: 6px;
	padding-left: 0.4rem;
	padding-right: 0.4rem;
	font-weight: 500;
}

.login-input-button:hover {
	text-decoration: none;
	transition: 0.5s;
}

.button-login {
	border: 1px solid white;
	background: var(--palette-primary);
	color: white;
	transition: 0.5s;
}

.button-login:hover {
	background: var(--palette-primary);
	color: white;
	transition: 0.5s;
}

.button-signup {
	border: 1px solid white;
	background: var(--palette-primary);
	color: white;
	transition: 0.5s;
}

.button-signup:hover {
	/*border: 1px solid var(--palette-primary);
	background: white;
	color: var(--palette-primary);
	transition: 0.5s;*/
	transform: translateY(-2px);
	box-shadow: 0 4px 8px rgba(0,0,0,0.2);
	text-decoration: none;
	color: white;
	transition: 0.25s;
}

.listing-report-flag {
/*	color: #FF9933;*/
}

.listing-report-flag:hover {
	text-decoration: underline;
	cursor: pointer;
}

.listing-report-flag-open-report {
	color: grey;
	cursor: default;
}

.listing-report-textarea {
    border: var(--bs-border-width) solid var(--bs-border-color);
	border-radius: 6px;
	width: 50% !important;
}

.navbar-row {
	background: var(--palette-primary);
	color: white;
}

.searchbar {
	width:50%;
	display: flex;
	justify-content: center;
	align-items: center;
	/*background: var(--palette-primary);*/
/*	padding: 0rem 1rem;*/
}

.searchBarForm, .product-search-form {
	width: 100%;
	padding: 0.5rem;
}

.search-bar-container {
	padding-left: 0 !important;
}

#itemSearchInput {
	font-size: 1rem !important;
	font-weight: 500;
}

.search-btn {
	background-color: white;
	padding-left: 2rem !important;
	padding-right: 2rem !important;
	border-left: 1px solid var(--palette-primary) !important;
	border: 1px solid #ced4da !important;
}

.search-btn:hover {
	background-color: lightgrey;
}

.search-result-row {
	display: flex;
    justify-content: space-between;
    align-items: center;
}

.search-result-set-name {
	font-size: 0.75rem;
	font-style: italic;
	font-weight: bold;
	opacity: 0.5;
	color: grey;
	text-align: right;
}

.search-results-popup {
	display: block;
	top: 100%;
	left: 0;
	right: 0;
}

.main-logo-container {
	display: flex;
	flex-direction: row;
}

.main-logo {
	max-width: 2.5rem;
}


.main-logo-text {
	margin-left: 1rem;
	font-size: 1.5rem;
	font-weight: bold;
	font-family: 'Montserrat', sans-serif;
	color: white;
}


.random-cards {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
}

.random-card-item {
	padding: 1rem;
	max-width: 25%;
}

.random-card-item-link {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: black;
	font-weight: 400;
}

.random-card-img {
	height: 330px;
	width: 240px;
	border-radius: 12px;
	box-shadow: 0 3px 10px rgba(0,0,0,0.15);
}

.search-result-img {
	height: 64px;
	width: 48px;
}

/* Product Page */

.product-page-container {
	max-width: 70% !important;
}

.product-menu {
	display: flex;
	justify-content: flex-end;
}

.product-menu-btn {
	border-radius: 0px !important;
	border-bottom: none !important;
}

.product-menu-btn:first-child {
	border-right: none;
}

.product-menu-btn:last-child {
/*	border-left: none;*/
}

.menu-btn-selected { 
	background: var(--main-color-dark25) !important;
	border-color: var(--main-color-dark50) !important;
}

.product-info {
	margin-top: 2rem;
	display: flex;
	flex-direction: column;
}

.product-info-name {
	font-size: 3rem;
	font-weight: bold;
}

.product-info-set-name {
	font-size: 1.5rem;
	font-style: italic;
	font-weight: bold;
	opacity: 0.5;
}

.product-info-sell-form-notallowed {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 100%;
}

.product-info-sell-form-notallowed span {
	color: rgba(0,0,0,0.8);
	font-style: italic;
}

/* Product Sales History */

.product-sales-history-header {
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;
}

.product-sales-history {
	border: 1px solid rgba(0,0,0,0.15);
	border-radius: 6px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-direction: column;
	background: var(--lighter-grey);
	overflow: auto;
	max-height: 17rem;
	font-weight: bold;
	font-size: 0.75rem;

	width: 100%;
}

.tickLabel { font-size: 1rem }

.product-sales-history-header-row {
	display: flex;
	justify-content: space-around;
	align-items: center;
}

.product-sales-history-row {
	width: 100%;
	display: flex;
	justify-content: space-around;
	align-items: center;
}

.product-sales-history-row-odd {
	background: var(--lightbetween-grey);
}

.product-sales-history-chart-container {
	box-sizing: border-box;
    padding: 20px 15px 15px 15px;
    margin: 15px auto 30px auto;
    border: 1px solid #ddd;
    background: #fff;
    background: linear-gradient(#f6f6f6 0, #fff 50px);
    background: -o-linear-gradient(#f6f6f6 0, #fff 50px);
    background: -ms-linear-gradient(#f6f6f6 0, #fff 50px);
    background: -moz-linear-gradient(#f6f6f6 0, #fff 50px);
    background: -webkit-linear-gradient(#f6f6f6 0, #fff 50px);
    box-shadow: 0 3px 10px rgba(0,0,0,0.15);
    -o-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    -ms-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    -moz-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    -webkit-box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    display: flex;
    flex-direction: row;

    margin-top: 0px; 
    border-top: 0px;
}

.product-sales-history-chart-legend-container {
	
}

.product-sales-history-tabs-container {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.product-sales-history-tabs {
	display: flex;
	flex-direction: row;
}

.product-sales-history-tabs-right {
	display: flex;
	flex-direction: row;
}

.product-sales-chart-tab-btn {
	padding: 0.1rem;
	border: 0px solid black !important;
	border-radius: 0px !important;
	background: var(--lighter-grey) !important;
	background: -webkit-linear-gradient(#ccc 0, #f6f6f6 25px) !important;
}

.product-sales-chart-tab-btn:focus,.product-sales-chart-tab-btn:active {
   outline: none !important;
   box-shadow: none !important;
}

.product-sales-chart-tab-btn-selected {
	background: -webkit-linear-gradient(#777 0, #f6f6f6 25px) !important;
}

.product-sales-chart-tab-btn-selected:hover {
	background: -webkit-linear-gradient(#444 0, #f6f6f6 25px) !important;
}

.product-sales-chart-tab-btn:hover {
	background: -webkit-linear-gradient(#999 0, #f6f6f6 25px) !important;
}

.product-sales-history-tab-nm {
	border-top-left-radius: 6px !important;
/*	border-bottom-left-radius: 6px !important;*/
}

.product-sales-history-tab-all {
	border-top-right-radius: 6px !important;
/*	border-bottom-right-radius: 6px !important;*/
}

.product-sales-history-tab-list {
	border-top-left-radius: 6px !important;
	border-top-right-radius: 6px !important;
}

.chart-sale-tooltip-condition-icon {
	width: 32px;
	height: 16px;
}

.chart-no-sales-yet {
	display: flex;
	justify-content: center;
	align-items: center;
	font-style: italic;
	color: rgba(0,0,0,0.5);
	font-weight: bold;
	font-size: 0.85rem;
	height: 80%;
}

.empty-listing-row {
	display: flex;
	justify-content: center;
	align-items: center;
	opacity: 0.75;
	font-style: italic;
}

.product-listings {
	margin-top: 2rem;
}

.product-listing-grading-company-icon {
	height: 16px;
	width: 16px;
	border-radius: 3px;
}

.product-listing-table {
	border: 1px solid rgba(0, 0, 0, 0.1);
}

.border-right-1-grey {
	border-right: 1px solid rgba(0,0,0, 0.1);
}

.product-info-main {
	background: rgba(255,255,255, 0.95);
	border: 1px solid rgba(0,0,0,0.05);
	border-radius: 6px;
	padding: 1rem;
}

/* Product Sell Tab */

.product-listing-grade {
/*	border: 1px solid black;*/
	border-radius: 6px;
	padding-left: 0.25rem;
	padding-right: 0.25rem;
	margin-left: 0.35rem;
	user-select: none;
	font-style: normal;
}

.product-listing-condition-row	{
    display: flex;
    justify-content: center;
    align-items: center;
}

.sell-form-row {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
}

.sell-form-row label {
	font-weight: 500;
	width: 50%;
}

.sell-form-row input, .sell-form-row select {
	width: 50%;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    border: var(--bs-border-width) solid var(--bs-border-color);
    border-radius: 6px;
}

.sell-form-row select {
	padding: .35rem 2.2rem .35rem .75rem;
}

.nice-select {
	width: 50%;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    border: var(--bs-border-width) solid var(--bs-border-color);
    border-radius: 6px;
    padding: .35rem 2.2rem .35rem .75rem;
}

.custom-file-label {
	width: 100% !important;
	max-width: 100%;
}

#sell_price {
	text-align: right;
}

.form-group-price {
	margin-bottom: 0 !important;
}

.formatted-price-display, .formatted-price-display_kr {
	display: flex;
	justify-content: flex-end;
	opacity: 0.5;
	text-decoration: italic;
}

.edit-formatted-price-display, .edit-formatted-price-display_kr {
	display: flex;
	justify-content: flex-end;
	opacity: 0.5;
	text-decoration: italic;
}

.sell-form-graded-options {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: 50%;
}

.btn-list-item, .btn-edit-listing {
	width: 100%;
}


/* Listing Display */

.product-listing-row {
	display: flex;
	flex-direction: row;

	font-size: 0.8rem;
	font-weight: 500;

/*	height: 2rem;*/
}

.product-listing-comment {
	font-style: italic;
	color: rgba(0,0,0,0.5);
	white-space: nowrap; 
	overflow:hidden;
	text-overflow: ellipsis;
}


.product-listing-image-icon {
	font-style: normal;
	font-size: 1rem;
	color: darkblue;
}

.btn-edit {
	font-size: 0.75rem;
	background: #dfc463;
	border-radius: 3px;
	color: black;
	padding: 0.25rem;
/*	padding-left: 0.25rem;*/
/*	padding-right: 0.25rem;*/
/*	border: 1px solid rgba(0,0,0, 0.25);*/
	display: flex;
	justify-content: center;
	align-items: center;
}

.btn-remove {
	font-size: 0.75rem;
	background: #ff3333;
	border-radius: 3px;
	color: white;
	padding: 0.25rem;
	display: flex;
	justify-content: center;
	align-items: center;
}

.listing-cart-btn {
/*	font-size: 0.75rem;*/
/*	background: var(--collecto-blue);*/
/*	border-radius: 3px;*/
	color: black;
	padding: 0.25rem;
/*	padding-left: 0.25rem;
/*	padding-right: 0.25rem;*/
/*	display: flex;*/
/*	justify-content: center;*/
/*	align-items: center;*/*/
	
}


.product-listing-buy {
	display: flex;
    justify-content: flex-end;
    align-items: center;
}

.product-listing-buy-amount-dropdown {
	width: 80%;
	border: var(--bs-border-width) solid var(--bs-border-color);
	border-radius: 6px;
}

.product-listing-buy-btn, .edit-listing-btn{
	margin-left: 0.25rem;
}

.admin-edit-listing-btn {
	background: red;
	color: white;
}

.product-listing-buy-btn {
	font-size: 0.75rem;
	background: var(--main-color-dark25);
	border-radius: 3px;
	color: white;
	padding: 0.15rem;
	padding-left: 0.25rem;
	padding-right: 0.25rem;
/*	border: 1px solid rgba(0,0,0, 0.05);*/
	display: flex;
	justify-content: center;
	align-items: center;
}

.product-listing-edit-group {

}

.product-listing-price, .product-listing-quantity {
	text-align: left;
}

.product-listing-comment-content {
	margin-left: 0.5rem;
}

.product-listing-actions {
	display: flex;
	justify-content: space-around;
	align-items: center;
}

.product-listing-condition {
	border-radius: 6px;
/*	padding-left: 0.25rem;*/
/*	padding-right: 0.25rem;*/
	width: 32px;
	height: 16px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.product-listing-seller-row {
	display: flex;
	justify-content: center;
	align-items: center;
}

.product-listing-info-row {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
}

.product-listing-row-dark-true div {
	background: #f5f5f5;
}

.product-listing-row-dark-false {
	background: white;
}

.product-listing-is-cart-true {
	border-bottom: 4px solid var(--palette-primary);
}

/* Edit Listings */
.edit-listing-modal-dialog {
	max-width: 50% !important;
}

.bg-maincolor {
	background-color: var(--palette-primary) !important;
}

.listing-row-col {
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;
	color: white;
}


/* Search Bar */

.submit-form-input {
/*	border-radius: 6px;*/
/*	font-size: 1.5rem;*/
/*	padding: 0.5rem;*/
/*	margin-top: 1rem;*/
	color: black;
}

.copy-amount-input {
	width: 50%;
}

.form-element {
	display: flex;
	flex-direction: column;
	margin-left: 2rem;
}

.card-search-container {
	margin-top: 1rem;
}

.card-search-dropdown-hint {
	color: white;
	font-style: italic;
}

.card-search-dropdown {
	width: 100%;
	border-radius: 3px;

	font-size: 1.25rem;
	padding: 0.5rem;
	font-weight: 500;

	border: 2px double transparent;
	background: black;
	color: white;
/*	background-origin: border-box;*/
/*    background-clip: padding-box, border-box;*/
    color: white;

	border: 3px solid #a2d246;
}

/*Select2*/


#fancy-card-selector{
    width: 100%;
    height: 4rem;
}

.select2-container {
	width: 100% !important;
}

.select2-selection {
/*	height: 4rem !important;*/
	display: flex;
    justify-content: space-between;
    align-items: center;
}

#fancy-card-selector + .select2-container .select2-selection__rendered img, .card-suggestion-preview{
    width:32px;
    height:48px;
    margin-right: 5px;
    vertical-align: middle;
}

.select2-selection__rendered {
/*	display: none !important;*/
}

#select2-card-name-input-container .fancy-select-row .card-suggestion-preview {
	width: 16px;
	height: 24px;
}

.card-suggestion-preview-flag {
	margin-right: 3px;
	width: 16px;
	height: 11px;

}

.select2-selection__rendered span {
	display: flex;
    justify-content: flex-start;
    align-items: center;
}

.select2-selection--single {
	display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
}

.select2-results__option span {
	display: flex;
    justify-content: flex-start;
    align-items: center;
}

.card-suggestion-preview-image {
	position: absolute;
	z-index: 100000;
	max-width: 256px;

	pointer-events: none;
}

#fancy-card-selector + .select2-container .select2-dropdown {
    display: none;
}

.select2-container--default .select2-selection--single {
    background-color: #ECF2FF;
    border: 1px solid #aaa;
}

.card-search-dropdown {
	display: none;
}

.select2-results__options {
   max-height: 500px !important;
}

.search-bar-show-all-row {
	padding: 6px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.search-bar-show-all-row:hover {
/*	background: #5897fb;*/
}

/* Purchases page */

.purchases-page-container {
	margin-top: 2rem;
}

.purchases-tabs {
	display: flex;
	width: 100%;
}

.purchases-tab-btn {
	border: 1px solid black !important;
	border-radius: 6px !important;
	border-bottom: none !important;
	border-bottom-left-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}

.purchases-info {
	border-top: 2px solid var(--palette-primary);
	border-left: 1px solid rgba(0,0,0,0.5);
	border-right: 1px solid rgba(0,0,0,0.5);
	border-bottom: 1px solid rgba(0,0,0,0.5);
}

.purchases-tab-btn-selected {
	background: var(--palette-primary) !important;
	border-color: var(--palette-border) !important;
	color: white !important;
	font-weight: 500 !important;
}

.purchases-tab-btn-selected:hover {
	background: var(--main-color-dark25) !important;
	border-color: var(--main-color-dark50) !important;
}

.purchases-table {
	margin-bottom: 0 !important;
}

.purchases-id-col {
	color: rgba(0,0,0,0.5);
	white-space: nowrap; 
	overflow:hidden;
	text-overflow: ellipsis;
}

.purchases-actions-col {
	padding: 1px !important;
}

.btn-purchases-pay-now {
	max-height: 100%;
	display: flex !important;
	justify-content: center;
	align-items: center;
}

.purchases-list-column {
	display: flex;
	justify-content: center;
	align-items: center;
}

.purchases-list-actions {
	display: flex;
	justify-content: space-around;
}

/* View Order Page */

/*.view-order-wrapper {
	width: 100%;
}*/

.view-order-summary {
	border: 1px solid rgba(0,0,0,0.25);
	border-radius: 3px;
	padding: 1rem;
}

.view-order-summary-title {
	font-weight: bold;
}

.view-order-summary-content {
	margin-bottom: 0 !important;
}

.order-page-table {
	margin-bottom: 0 !important;
}

.view-order-item-row {
	display: flex;
	flex-direction: row;
	font-size: 0.8rem;
	font-weight: 500;
}

.view-order-item-product-info {
	display: flex;
    align-items: center;
    gap: 1rem;
}

.view-order-item-preview {
	max-width: 3rem;
}

/* Shopping Cart Page */

.cart-page-wrapper {
	display: flex;
}

.cart-page-container {
	max-width: 90% !important;
	display: flex;
	flex-direction: row;
}

.cart-order-info-container, .view-order-info-container {
	display: flex;
	flex-direction: row;
}

.view-order-info-container {
	gap: 1rem;
	justify-content: center;
}

.view-order-pay-container {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.view-order-cancel-container {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.order-cancel-disclaimer {
	font-size: 0.75rem;
	opacity: 0.75;
	text-align:center;
	font-style: italic;
}

.cart-order-shipping-option-select {
	width: 100%;
}

.cart-order-block, .cart-summary-container, .cart-shipping-address-container, .view-order-block {
	border: 1px solid black;
	background: white;
	border-radius: 6px;
	margin: 1rem;
	padding: 1rem;
}

.cart-summary-header, .cart-shipping-address-header {
	font-weight: 500;
}

.cart-shipping-address-info {
	display: flex;
	flex-direction: column;
	font-size: 0.95rem;
}

.cart-change-address-btn, .cart-checkout-btn {
	width: 100%;
}

.cart-summary-container {
	height: fit-content;
}

.cart-order-empty-header {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.cart-empty-text {
	opacity: 0.75;
	font-style: italic;
}

.cart-empty-back-btn {
	margin-top: 2rem;
	width: 100%;
}

.cart-order-seller-name {
	font-size: 1rem;
	font-weight: 500;
}

.cart-order-summary {
	border-right: 1px solid rgba(0,0,0,0.25);
}

.cart-order-summary-title {
	font-weight: 500;
}

.cart-order-summary-content dt {
	font-weight: 500;
}

.cart-order-summary-content dd {
	text-align: right;
	margin-bottom: 0;
}

.cart-total-summary-content dd {
	text-align: right;
}

.cart-order-item-name {
	text-align:left;
}

.cart-order-listing-actions {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.25rem;
}

/* Search Results (View All )*/

.search-page-header {
	font-size: 2rem;
	font-weight: bold;
}


/* Home  */

.home-auctions {
	margin-top: 1rem;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;

	padding-bottom: 1rem;
/*	border-top: 1px solid var(--grey);*/
	border-bottom: 1px solid rgba(0,0,0, 0.25);
}

.home-auctions-container {
	display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-gap: 1rem;
    width: 75%;
}

.home-auction-button:hover {
	text-decoration: none;
}

.home-auction-button {
	grid-column: span 4;
}

.home-auction-block {
	background: var(--grey);
	color: white;
	border: 1px solid var(--palette-border);
	border-radius: 6px;
	padding: 1rem;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	transition: 0.25s;


}

.home-auction-block-active {
	background: var(--palette-primary);
	color: var(--palette-primary-content);
}

.home-auction-block-active:hover {
	background: var(--palette-primary-light);
}

.home-auction-title {
	font-size: 2rem;
}

.home-auction-description {
	font-size: 1rem;
}

.home-auction-dates {
	font-weight: bold;
}

.home-auction-countdown {
	font-size: 2.5rem;
}

.home-block-header {
	font-size: 1.5rem;
	font-weight: ;
}

.home-hotitems {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
}

.home-hotitems-content {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

.home-hotitem-showcase-display {
	display: flex;
	flex-direction: row;
	gap: 1rem;
	margin-top: 2rem;
}

.home-hotitem-showcase {
	display: flex;
	flex-direction: column;
	border-radius: 6px;
}

.home-hotitem-setinfo {
	font-size: 0.9rem;
	opacity: 0.75;
}

.home-hotitem-showcase-list {
	display: flex;
	flex-direction: column;
	margin-top: 2rem;
}

.home-hotitem-list-row {
	display: flex;
	justify-content: space-between;
}

.home-hotitem-list-row-title {
	display: flex;
	gap: 0.5rem;
}

.home-hotitem-price {
	font-size: 1rem;
}

.home-hotitem-list-row-price-and-actions {
	display: flex;
	gap: 0.5rem;
}

.home-hotitem-noneavailable {
	font-style: italic;
	opacity: 0.8;
}

.home-hotitem-list-row-even {
	background: #f5f5f5;
}

.home-hotitem-list-row {

}


.select2-container--open .select2-dropdown--below {
  position: relative;
}

/*.select2-container--default .select2-search--dropdown .select2-search__field {
  position: absolute;
  top: -27px;
  border: 0px !important;
  width: 94%;
}*/

.select2-container--default .select2-search--dropdown .select2-search__field:focus-visible {
  outline: -webkit-focus-ring-color auto 0px;
}


.register-body {

}
.register-container {
	background: rgba(255, 255, 255, 0.95);
    border: 1px solid rgba(0, 0, 0, 0.05);
    border-radius: 6px;
    padding: 1rem;
    margin-top: 10rem;
    margin-bottom: 10rem;
}

.register-title {
	color: var(--palette-primary);
	font-size: 2rem;
	font-weight: bold;
}

.register-form {
	margin-top: 2rem;
}

.register-information-category-header {
	color: var(--palette-primary);
	font-size: 1.25rem;
	font-weight: bold;
}

.register-form-row {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.register-form-col {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.register-form-col {
	font-weight: 500;
}

#ui-datepicker-div {
	display: none;
}

.register-form-col {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.required-star {
	color: red;
	margin-left: 0.25rem;
}

.btn-register {
	width: 100%;
}



/* Card Shop Home */

.home-page-container {
	display: flex;
	flex-direction: row;
}


/*Home menu container*/


.home-menu {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	padding: 1rem;
	border-right: 1px solid #ddd;
	min-height: 100vh;
	width: 100%;
}

/* main buttons */
.home-menu-button {
	/*background: linear-gradient(to bottom, #4D59FF, #0716FF);*/
	/*color: white;*/
	font-weight: 600;
	font-size: 1rem;
	padding: 0.75rem 1rem;
	/*border: none;*/
	/*border-radius: 0.6rem;*/
	cursor: pointer;
	/*text-align: left;*/
	/*transition: all 0.25s ease;*/
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
	width: 100%;
	background: white;
	border: 1px solid #ddd;
	color: #222;
	border-radius: 8px;
	padding: 10px 16px;
	text-align: left;
	transition: all 0.2s ease;
}

.home-menu-button:hover {
	/*background: linear-gradient(to bottom, #5c68ff, #2430ff);*/
	transform: translateX(4px);
	box-shadow: 0 4px 8px rgba(0,0,0,0.2);
	text-decoration: none;
	/*color: white;*/
	background: #f2f4ff;
	border-color: #2f49ff;
	color: #2f49ff;
}

.home-menu-button.active {
	background: linear-gradient(to bottom, #2430ff, #0b0fbf);
}


/* collapsible buttons */
.collapsible::after {
	content: '▸';
	float: right;
	transition: transform 0.25s ease;
}
.collapsible.active::after {
	transform: rotate(90deg);
}

/* content inside collapsible section */
.menu-content {
	display: none; /* start hidden for jQuery */
	padding-left: 0.75rem;
}
/* sub-buttons */
.home-menu-subbutton {
	background: #eef1ff;
	color: #0716FF;
	font-size: 0.9rem;
	font-weight: 500;
	text-align: left;
	padding: 0.5rem 0.75rem;
	border: none;
	border-radius: 0.4rem;
	cursor: pointer;
	margin-top: 0.3rem;
	transition: background 0.2s ease;
	display: flex;
	flex-direction: row;
	width: 100%;
	gap: 0.5rem;
}

.home-menu-subbutton:hover {
	background: #dfe4ff;
}

/* nested collapsible content (languages) */
.menu-subcontent {
	display: none;
	padding-left: 1.5rem;
}

/* sub-sub buttons (Korean/Japanese) */
.home-menu-langbutton {
	display: block;
	background: #f8f9ff;
	color: #0716FF;
	font-size: 0.85rem;
	font-weight: 500;
	padding: 0.4rem 0.75rem;
	border-radius: 0.35rem;
	margin-top: 0.25rem;
	transition: background 0.2s ease;
	text-decoration: none;
}

.home-menu-langbutton:hover {
	background: #e3e7ff;
}

/* make sub-collapsibles look distinct */
.home-menu-subbutton.collapsible::after {
	content: '▸';
	margin-left: auto;
	transition: transform 0.25s ease;
}
.home-menu-subbutton.active::after {
	transform: rotate(90deg);
}


.home-menu-set-icon-container {
	width: 15%;
}

.home-menu-set-name-container {
	width: 75%;
	overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.product-menu-set-icon {
	background: black;
    border: 1px solid white;
    border-radius: 3px;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
    outline: 1px solid black;
    font-size: 0.75rem;
    color: white;
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    margin-right: 1rem;
}

.home-menu-set-icon {
	background: black;
    border: 1px solid white;
    border-radius: 3px;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
    outline: 1px solid black;
    font-size: 0.75rem;
    color: white;
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
}



/* Product display */


/* Reset any weird inherited styles */
.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    list-style: none;
    padding: 0;
    margin: 2rem 0;
    gap: 6px;
}

/* Pagination items */
.pagination li {
    display: inline-block;
}

/* Pagination links */
.pagination li a,
.pagination li span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    padding: 0 10px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 0.9rem;
    background-color: #fff;
    color: #1e3a8a;
    text-decoration: none;
    transition: all 0.2s ease;
}

/* Hover */
.pagination li a:hover {
    background: linear-gradient(to bottom, #4f75ff, #2c4bff);
    color: #fff;
    border-color: #2c4bff;
}

/* Active page */
.pagination li.active span {
    background: linear-gradient(to bottom, #4f75ff, #2c4bff);
    color: #fff;
    border-color: #2c4bff;
    font-weight: 600;
}

/* Disabled links (Previous/Next when inactive) */
.pagination li.disabled span {
    background: #f3f4f6;
    color: #a1a1aa;
    border-color: #d1d5db;
    cursor: not-allowed;
}

/* Previous / Next labels */
.pagination li:first-child a,
.pagination li:last-child a,
.pagination li:first-child span,
.pagination li:last-child span {
    padding: 0 16px;
    font-weight: 500;
}

/* For overall consistency */
.pagination li a,
.pagination li span {
    line-height: 1;
}



/* Hover image preview */
.product-image-preview {
	position: absolute;
    margin-right: 5px;
    vertical-align: middle;
    position: absolute;
    z-index: 100000;
    max-width: 25vw;
    pointer-events: none;
}


/*Home product container*/
.home-page-container-left {
	width: 15%;
}
.home-page-container-middle {
	width: 80%;
}
.home-page-container-right {
	width: 5%;
}


.product-set-banner {
	margin-top: 2rem;
	background: linear-gradient(to bottom, 
    rgb(77, 89, 255) 0%, 
    rgb(41, 55, 255) 50%, 
    rgb(7, 22, 255) 100%);
    color: white;
    border: 0;
    border-radius: 3px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-size: 1.5rem;
    padding-left: 3rem;
}

.product-filter-bar {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: 1rem;
    margin: 15px 0;
    font-size: 14px;
    padding: 12px 20px;
    border-radius: 12px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.05);
}

.product-filter-bar input[type="checkbox"] {
  accent-color: #2f49ff;
  transform: scale(1.2);
}

.filter-group label {
    margin-right: 4px;
    font-weight: 500;
}
.filter-group select {
    padding: 4px 8px;
    border-radius: 6px;
    border: 1px solid #ccc;
}

.home-hotitems-banner {
	background: linear-gradient(to bottom, 
    rgb(77, 89, 255) 0%, 
    rgb(41, 55, 255) 50%, 
    rgb(7, 22, 255) 100%);
    color: white;
    border: 0;
    border-radius: 3px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-size: 1.5rem;
    padding-left: 3rem;
}

.home-hotitems-banner-icon {
	margin-right: 1rem;
}

.home-highlighted-list {
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
  padding: 0;
  margin: 0;
  list-style: none;
}

.home-highlighted-list > .home-highlighted-card {
  flex: 1 1 8.5rem; /* or some base width */
  min-width: 0;    /* allows flexbox to shrink items */
  box-sizing: border-box; /* includes padding in width */
  word-wrap: break-word;  /* allows long words to break */
  overflow-wrap: break-word; /* same for modern browsers */
  display: flex;    /* optional, if you want content inside to align nicely */
  flex-direction: column;
}

.home-highlighted-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
	padding: 0.5rem;
	justify-content: space-between;
	border-radius: 12px;
	box-shadow: 0 2px 6px rgba(0,0,0,0.1);
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.home-highlighted-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 12px rgba(0,0,0,0.15);
}

.home-highlighted-card-info {
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
	padding: 0.4rem;
}

/* pseudo-element border that overlaps by 1px */
.home-highlighted-card::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: -1px; /* overlap to avoid gaps */
	bottom: -1px;
	/*border-right: 1px solid #ccc;*/
	/*border-bottom: 1px solid #ccc;*/
	pointer-events: none;
}

.view-product-btn {
	background: linear-gradient(to bottom, 
    rgb(77, 89, 255) 0%, 
    rgb(41, 55, 255) 50%, 
    rgb(7, 22, 255) 100%);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-color: blue;
    color: white;
    border-radius: 6px;
    border: 0;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    transition: 0.25s;
}

.view-product-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 8px rgba(0,0,0,0.2);
	text-decoration: none;
	color: white;
	transition: 0.25s;
}

/*.add-to-cart-btn:hover {
	background: linear-gradient(135deg, #1e90ff 0%, #0a1d47 100%);
	transform: translateY(-2px);
	box-shadow: 0 4px 8px rgba(0,0,0,0.2);
}

.add-to-cart-btn:active {
	transform: translateY(0);
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}*/

.home-highlighted-card-image-container {
	position: relative;
	width: 8rem;
	background-color: #f7f7f7; /* light placeholder */
	border-radius: 0.4rem;
	overflow: hidden;
}

.home-highlighted-card-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
/* sold-out state */
.home-product-sold-out .home-highlighted-card-image {
	opacity: 0.4;
}

/* the "SOLD OUT" overlay */
.sold-out-overlay {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: rgba(0, 0, 0, 0.3);
	color: rgba(255, 255, 255, 0.65);
	text-shadow: 2px 0 rgba(0,0,0, 0.07), -2px 0 rgba(0,0,0, 0.07), 0 2px rgba(0,0,0, 0.07), 0 -2px rgba(0,0,0, 0.07),
               1px 1px rgba(0,0,0, 0.07), -1px -1px rgba(0,0,0, 0.07), 1px -1px rgba(0,0,0, 0.07), -1px 1px rgba(0,0,0, 0.07);
	font-weight: 700;
	font-size: 1rem;
	padding: 1rem 1rem;
	border-radius: 50%;
	text-transform: uppercase;
	text-align: center;
	display: none; /* hidden by default */
	font-style: italic;
    pointer-events: none;
}

.edit-hide-set-btn, .edit-price-btn, .edit-stock-btn {
	border: none;
}

/* show overlay when sold out */
.home-product-sold-out .sold-out-overlay {
	display: flex;
	justify-content: center;
	align-items: center;
}

.home-highlighted-card-image {
	max-width: 8rem;
}



.home-highlighted-card-language {
	font-weight: bold;
    font-size: 0.8rem;
    color: #555;
}

.home-highlighted-card-name {
	font-size: 0.7rem;
	font-weight: bold;
	color: black;
	display: flex;
	text-align: center;
}

.home-highlighted-card-price {
	color: #1e1e1e;
	font-size: 0.95rem;
	font-weight: bold;
}

.home-highlighted-card-stock {
	font-size: 0.8rem;
	color: #666;
	font-weight: bold;
}

.home-highlighted-card-text {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
}


/* Hamburger Button */
.hamburger-menu, .hamburger-menu-close {
    display: none;
    background: none;
    border: none;
    font-size: 24px;
    cursor: pointer;
}

.hamburger-menu-close {
	width: 100%;
}

.navigation-item {
	height: 100%;
}

/* Slightly Smaller Styles (Laptop, iPad etc) */
@media (max-width: 1024px) {
	.home-page-container-left {
		width: 10%;
	}
	.home-page-container-middle {
		width: 80%;
	}
	.home-page-container-right {
		width: 10%;
	}
}

/* Mobile Styles */
@media (max-width: 768px) {

	.navbar-row {
		justify-content: space-between;
		padding-right: 0px;
	}

    .hamburger-menu {
    	color: black !important;
    	float: right !important;
        display: block;
    }

    .hamburger-menu-close {
    	display: block;
    	color: white;
    }

    .navbar-col-start {
    	max-width: 33% !important;
    }

	.navigation-menu {
	    visibility: hidden; /* Start as invisible */
	    opacity: 0; /* Fully transparent */
	    flex-direction: column;
	    justify-content: flex-start;
	    background-color: var(--palette-primary);
	    position: fixed; /* Change to fixed for full-screen height */
	    top: 0;
	    right: 0; /* Align to the right edge of the screen */
	    width: 100vw; /* Adjust the width as needed */
	    height: 100vh; /* Full screen height */
	    padding: 10px;
	    z-index: 100000;
	    border: 1px solid grey;
	    border-bottom-left-radius: 6px;
	    transform: translateX(100%); /* Start off-screen */
	    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out; /* Smooth animation */
	}

	.navigation-menu.show {
	    visibility: visible; /* Make it visible */
	    opacity: 1; /* Fully opaque */
	    transform: translateX(0); /* Slide into view */
	}


	.navigation-item {
		width: 100%;
		height: 3rem;
		display: flex;
		justify-content: center;
	}
    .navigation-item a {
    	color: white !important;
    }


    /* Home Adjustment */
    .home-page-container-left {
    	display: none;
    }

    .home-page-container-middle {
    	width: 100%;
    }

}   