.oba-auction-wrap {
	max-width: 1200px;
	margin: 0 auto;
	padding: 16px;
	position: relative;
}

.oba-explainer-wrap {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 16px 12px;
}

.oba-explainer {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
	margin-bottom: 20px;
}

.icon {
	width: 18px;
	height: 18px;
	stroke: currentColor;
	fill: none;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
	display: inline-block;
}

.oba-step-pill {
	background: #f5f7fb;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	padding: 12px;
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-rows: auto auto;
	gap: 4px 10px;
	align-items: center;
}

.oba-step-pill .badge {
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #fff;
	border: 2px solid #cbd5e1;
	color: #0f172a;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	font-size: 13px;
	position: relative;
}

.oba-step-pill .badge-number {
	display: inline-block;
}

.oba-step-pill .badge-check {
	display: none;
	color: #22c55e;
	align-items: center;
	justify-content: center;
}

.oba-step-pill .badge-check svg {
	width: 16px;
	height: 16px;
}

.oba-step-pill .label {
	font-weight: 700;
	color: #0f172a;
}

.oba-step-pill .desc {
	grid-column: 2 / span 1;
	font-size: 13px;
	color: #475569;
}

.oba-step-pill.is-active {
	border-color: #3b82f6;
	background: #eff6ff;
}

.oba-step-pill.is-active .badge {
	background: #3b82f6;
	border-color: #3b82f6;
	color: #fff;
}

.oba-step-pill.is-complete .badge {
	border-color: #22c55e;
	background: #ecfdf3;
	color: #166534;
}

.oba-step-pill:not(.is-active):not(.is-complete) .badge {
	background: #fff;
	border-color: #cbd5e1;
}

.oba-layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: 18px;
}

/* === Custom shortcode shell === */
.oba-shortcode-custom {
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
	max-width: 100%;
	margin: 32px auto;
	padding: 0 35px 24px;
	overflow: hidden;
}
.oba-sc-left,
.oba-sc-right {
	display: flex;
	flex-direction: column;
	gap: 12px;
	height: auto;
}
.oba-sc-header {
	grid-column: 1 / -1;
}
.oba-sc-card {
	border: 1px solid #d7dde6;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 6px 18px rgba(15,23,42,0.06);
	min-height: 0;
	padding: 12px;
	position: relative;
}
.oba-sc-placeholder {
	height: 180px;
	border: 1px dashed #cbd5e1;
	border-radius: 10px;
	background: repeating-linear-gradient(45deg, #f8fafc, #f8fafc 10px, #e2e8f0 10px, #e2e8f0 20px);
}
.oba-sc-placeholder.title-placeholder {
	height: 90px;
}
.oba-sc-title {
	margin: 0;
	padding: 12px;
	font-size: 24.487px !important;
	line-height: 1.25;
	color: #0f172a;
}
.oba-header-inline {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
}
.oba-sc-label {
	position: absolute;
	top: 10px;
	left: 12px;
	padding: 4px 8px;
	border-radius: 999px;
	background: #0f172a;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.5px;
}
/* Media split: main + thumbs */
.oba-sc-gallery {
	display: flex;
	flex-direction: column;
	gap: 12px;
	align-items: center;
	min-height: 0;
	max-height: fit-content;
	padding: 12px 12px 16px;
}
.oba-media-main {
	width: 50%;
	display: flex;
	justify-content: center;
}
.oba-main-image {
	max-width: 100%;
	height: auto;
	object-fit: contain;
	border-radius: 10px;
	box-shadow: 0 4px 14px rgba(15,23,42,0.08);
}
.oba-media-main img {
	max-width: 100%;
	height: auto;
	object-fit: contain;
	border-radius: 10px;
	box-shadow: 0 4px 14px rgba(15,23,42,0.08);
}
.oba-media-thumbs {
	width: 100%;
	display: flex;
	justify-content: center;
}
.oba-thumb-list {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	justify-content: center;
}
.oba-thumb-image {
	display: block;
	max-width: 100%;
	height: auto;
	border-radius: 10px;
	box-shadow: 0 3px 8px rgba(0,0,0,0.12);
}
.oba-lightbox {
	position: fixed;
	inset: 0;
	background: rgba(15, 23, 42, 0.7);
	display: none;
	align-items: center;
	justify-content: center;
	z-index: 99999;
	padding: 24px;
}
.oba-lightbox.is-open {
	display: flex;
}
.oba-lightbox-content {
	position: relative;
	max-width: 90vw;
	max-height: 90vh;
	display: flex;
	align-items: center;
	justify-content: center;
}
.oba-lightbox-img {
	max-width: 90vw;
	max-height: 85vh;
	border-radius: 12px;
	box-shadow: 0 12px 40px rgba(0,0,0,0.35);
}
.oba-lightbox-close,
.oba-lightbox-prev,
.oba-lightbox-next {
	position: absolute;
	background: rgba(0,0,0,0.55);
	color: #fff;
	border: none;
	border-radius: 999px;
	width: 38px;
	height: 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	font-size: 18px;
}
.oba-lightbox-close { top: -46px; right: 0; }
.oba-lightbox-prev { left: -46px; top: 50%; transform: translateY(-50%); }
.oba-lightbox-next { right: -46px; top: 50%; transform: translateY(-50%); }
.oba-lightbox-counter {
	position: absolute;
	bottom: -32px;
	left: 50%;
	transform: translateX(-50%);
	color: #e2e8f0;
	font-weight: 700;
}
body.oba-lightbox-open {
	overflow: hidden;
}
.oba-thumb-list li,
.oba-thumb-list figure {
	list-style: none;
	margin: 0;
}
.oba-thumb-list img {
	width: 68px;
	height: 68px;
	object-fit: cover;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	box-shadow: 0 2px 6px rgba(15,23,42,0.05);
}
.thumb-placeholder {
	height: 70px;
}
.oba-buy-block {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.oba-sc-divider.inline {
	text-align: center;
	margin: 14px 0;
	color: #475569;
	font-weight: 700;
	letter-spacing: 0.5px;
	display: flex;
	align-items: center;
	gap: 10px;
}
.oba-sc-divider.inline:before,
.oba-sc-divider.inline:after {
	content: "";
	flex: 1;
	height: 1px;
	background: #e2e8f0;
}
.oba-buy-inline {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}
.oba-buy-price {
	order: 0;
	flex: 0 0 auto;
}
.oba-price-pill {
	display: inline-flex;
	align-items: center;
	padding: 8px 12px;
	border: 1px solid #d7dde6;
	border-radius: 999px;
	background: #f8fafc;
	font-weight: 700;
	color: #0f172a;
	gap: 6px;
	white-space: nowrap;
}
.oba-price-prefix {
	font-weight: 700;
	color: #334155;
	font-size: 14px;
}
.oba-buy-block {
	flex: 1 1 auto;
}
.oba-buy-form {
	flex: 1 1 auto;
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 12px !important;
	width: 100% !important;
	box-sizing: border-box !important;
}
.oba-buy-form form.cart {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 10px !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	flex: 1 1 auto;
}
.oba-buy-form .quantity {
	max-width: 65px !important;
	width: 65px !important;
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	margin: 0 !important;
	flex-shrink: 0 !important;
}

/* Force show buy elements inside custom layout even if global hides exist */
body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy form.cart,
body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy p.price,
body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy .price,
body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy .single_add_to_cart_button,
body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy .quantity {
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
}
.oba-sc-buy .price,
.oba-sc-buy p.price,
.oba-sc-buy form.cart,
.oba-sc-buy .quantity,
.oba-sc-buy .single_add_to_cart_button {
	display: flex !important;
}
body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy p.price,
body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy .price {
	align-items: baseline;
	gap: 6px;
}
body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy form.cart {
	flex-direction: row !important;
	align-items: center !important;
	gap: 10px !important;
	flex-wrap: nowrap !important;
}

/* Button first, quantity to the right */
body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy .single_add_to_cart_button {
	order: 1;
	justify-content: center;
	align-items: center;
	width: auto !important;
	min-width: 140px;
	display: flex !important;
	margin: 0 !important;
	flex-grow: 1 !important;
	padding: 12px 20px !important;
	padding-top: 14px !important;
	white-space: nowrap !important;
	border-radius: 12px !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	min-height: 60px !important;
	height: 60px !important;
	line-height: 1.2 !important;
}
body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy .quantity {
	order: 2;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	width: 65px !important;
	margin: 0 !important;
	gap: 6px;
	display: inline-flex !important;
	flex: 0 0 auto;
}
body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy .quantity input.qty {
	width: 100% !important;
	max-width: 100% !important;
	text-align: center;
}
.oba-buy-form button,
.oba-buy-form .single_add_to_cart_button {
	justify-content: center;
	align-items: center;
}

/* Desktop: keep buy row on one line */
@media (min-width: 961px) {
	.oba-buy-inline { flex-wrap: nowrap !important; }
	.oba-buy-form { flex: 1 1 auto; flex-wrap: nowrap !important; }
	.oba-buy-form form.cart { flex-wrap: nowrap !important; }
}
.oba-buy-form button,
.oba-buy-form .single_add_to_cart_button {
	width: auto !important;
	flex: 1 1 auto;
}
.oba-sc-card .button,
.oba-sc-card .button-primary,
.oba-sc-card button {
	border-radius: 12px !important;
}
.oba-buy-points-line {
	font-size: 14px;
	font-weight: 600;
	color: #334155;
	border-top: 1px solid #e2e8f0;
	padding-top: 8px;
}
.oba-buy-points-line.inline {
	border-top: none;
	padding-top: 0;
	margin-bottom: 12px;
}
.oba-details-tabs {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.oba-tabs-nav {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}
.oba-tabs-nav li {
	cursor: pointer;
	padding: 8px 12px;
	border-radius: 10px;
	border: 1px solid #d7dde6;
	background: #f8fafc;
	font-weight: 700;
	color: #0f172a;
}
.oba-tabs-nav li.is-active {
	background: #0f172a;
	color: #fff;
	border-color: #0f172a;
}
.oba-tabs-body {
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 12px 14px;
	background: #fff;
}
.oba-tab-panel {
	display: none;
}
.oba-tab-panel.is-active {
	display: block;
}
.oba-sc-buy .price,
.oba-sc-buy p.price,
.oba-sc-buy form.cart,
.oba-sc-buy .quantity,
.oba-sc-buy .single_add_to_cart_button {
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
}
.oba-sc-divider {
	text-align: center;
	margin: 10px 0;
	color: #475569;
	font-weight: 700;
	letter-spacing: 0.5px;
	display: flex;
	align-items: center;
	gap: 10px;
}
.oba-sc-divider:before,
.oba-sc-divider:after {
	content: "";
	flex: 1;
	height: 1px;
	background: #e2e8f0;
}
.oba-tab-panel h2,
.oba-tab-panel h1,
.oba-tab-panel h3 {
	font-size: 20px !important;
	margin-top: 0;
}
/* Woo gallery inside media panel */
.oba-sc-gallery .woocommerce-product-gallery {
	margin: 8px 0 0;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	align-items: start;
}
.oba-sc-gallery .woocommerce-product-gallery__wrapper {
	grid-column: 1 / 3;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}
.oba-sc-gallery .woocommerce-product-gallery__image:first-child {
	grid-column: 1 / 2;
}
.oba-sc-gallery .woocommerce-product-gallery__image:not(:first-child) {
	grid-column: 2 / 3;
}
.oba-sc-gallery .flex-control-thumbs {
	grid-column: 1 / 3;
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.oba-sc-gallery .flex-control-thumbs li {
	width: 68px;
}
@media only screen and (min-width: 1025px) {
	.oba-shortcode-custom {
		grid-template-columns: 58% 42%;
		align-items: stretch;
		overflow: visible;
	}
	/* Prevent right-column cards from shrinking when viewport height is reduced; let the column scroll instead */
	.oba-sc-right > * {
		flex: 0 0 auto;
	}
	.oba-buy-form,
	.oba-buy-form form.cart {
		flex-wrap: nowrap !important;
	}
	.oba-sc-left {
		max-height: none;
		overflow: visible;
	}
	.oba-sc-right {
		position: sticky;
		top: 110px;
		max-height: calc(100vh - 120px);
		overflow-y: auto;
		overflow-x: hidden;
		align-self: flex-start;
		padding-right: 8px;
	}
}

@media only screen and (min-width: 1025px) and (max-width: 1280px) {
	.oba-auction-buy-inline { gap: 10px; }
	.oba-buy-form { gap: 10px !important; }
	.oba-buy-form form.cart { gap: 8px !important; }
	.oba-price-pill { padding: 6px 10px; font-size: 16px; }
	body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy .single_add_to_cart_button {
		padding: 10px 16px !important;
		min-height: 52px !important;
	}
}

/* Hide theme summary bits for auction products (we re-render inside panels) */
.single-product.product-type-auction .product_infos .product_summary_top,
.single-product.product-type-auction .product_infos .product_summary_middle,
.single-product.product-type-auction .product_infos > p.price:not(.oba-buy-panel *),
.single-product.product-type-auction .product_infos > .price:not(.oba-buy-panel *),
.single-product.product-type-auction .product_infos > form.cart:not(.oba-buy-panel *),
.single-product.product-type-auction .product_infos > .cart,
.single-product.product-type-auction .product_infos > .single_add_to_cart_button,
.single-product.product-type-auction .product_infos > .quantity {
	display: none !important;
}

/* === Split-screen sticky layout (desktop only) === */
@media only screen and (min-width: 1025px) {
	/* 1. Reset container layout */
	.product_content_wrapper > .row {
		display: flex !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		max-width: 100% !important;
		width: 100% !important;
		gap: 10px !important;
	}

	/* 2. Left column: gallery + tabs (scrollable) */
	.product_content_wrapper > .row > .columns:nth-child(1) {
		flex: 0 0 60% !important;
		max-width: 60% !important;
		height: calc(100vh - 140px) !important;
		max-height: calc(100vh - 140px) !important;
		align-self: stretch !important;
		display: flex !important;
		flex-direction: column !important;
		overflow-y: auto !important;
		overflow-x: hidden !important;
		padding: 8px !important;
		background: #fff;
	}

	/* Left column panels: keep gallery static, make tabs/description scrollable */
	.product_content_wrapper > .row > .columns:nth-child(1) .woocommerce-product-gallery {
		flex: 0 0 auto !important;
	}
	.product_content_wrapper > .row > .columns:nth-child(1) .woocommerce-tabs {
		display: block !important;
		visibility: visible !important;
		flex: 1 1 auto !important;
		overflow-y: auto !important;
		margin-top: 12px !important;
		padding-right: 4px !important;
		max-height: none !important;
	}
	.product_content_wrapper > .row > .columns:nth-child(1) .single_product_summary_related {
		flex: 0 0 auto !important;
		margin-top: 12px !important;
	}

	/* Match card styling on both columns */
	.product_content_wrapper > .row > .columns:nth-child(1),
	.product_content_wrapper > .row > .columns:nth-child(3) {
		border: 1px solid #d7dde6 !important;
		border-radius: 12px !important;
		box-shadow: 0 3px 10px rgba(15,23,42,0.05) !important;
		background: #fff !important;
		padding: 8px !important;
		box-sizing: border-box;
	}

	/* 3. Right column: static, compact */
	.product_content_wrapper > .row > .columns:nth-child(3) {
		flex: 0 0 40% !important;
		max-width: 40% !important;
		position: sticky !important;
		top: 120px !important;
		height: auto !important;
		max-height: none !important;
		align-self: flex-start !important;
		margin-left: 0 !important;
		z-index: 1;
		overflow: visible !important;
	}

	/* 4. Compact right panel */
	.product_infos { transform: scale(0.9); transform-origin: top left; width: 106%; }
	.product_infos .product_title { font-size: 1.1rem !important; margin-bottom: 4px !important; }
	.oba-buy-panel, .oba-auction-wrap { padding: 8px !important; margin: 6px 0 !important; border-radius: 8px !important; }
	.oba-auction-wrap .oba-phase-card { padding: 8px !important; }
	.oba-auction-wrap .oba-phase-title { font-size: 0.88rem !important; }
	.oba-auction-wrap .button, .oba-auction-wrap .button-primary { padding: 7px 9px !important; font-size: 0.84rem !important; }
	.oba-buy-panel .single_add_to_cart_button { padding: 9px 11px !important; font-size: 0.86rem !important; }

	/* 5. Hide spacers / redundant columns */
	.product_content_wrapper > .row > .columns:nth-child(2),
	.product_content_wrapper > .row > .columns:nth-child(4),
	.product_summary_top,
	.product_meta { display: none !important; }

	/* 6. Ensure sticky elements elsewhere don't clip */
	#st-container, .st-container, .st-content { overflow: visible !important; }
}

.oba-card {
	background: #fff;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
	padding: 18px;
}

.oba-product-card h1 {
	margin: 0 0 10px;
	font-size: 24px;
	color: #0f172a;
}

.oba-product-image {
	border-radius: 10px;
	overflow: hidden;
	margin-bottom: 12px;
}

.oba-product-desc {
	color: #475569;
	line-height: 1.6;
	font-size: 14px;
}

.oba-phase-card {
	margin-bottom: 12px;
	position: relative;
	overflow: hidden;
}

.oba-phase-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	cursor: pointer;
}

.oba-phase-title {
	font-weight: 700;
	color: #0f172a;
	display: flex;
	align-items: center;
	gap: 8px;
}

.oba-phase-icon {
	display: inline-flex;
	color: #94a3b8;
}

.oba-phase-icon .icon {
	display: none;
}

.oba-phase-icon.icon-lock .icon-lock { display: inline-flex; color: #94a3b8; }
.oba-phase-icon.icon-check .icon-check { display: inline-flex; color: #22c55e; }
.oba-phase-icon.icon-up .icon-up { display: inline-flex; color: #3b82f6; }
.oba-phase-icon.icon-down .icon-down { display: inline-flex; color: #0f172a; }
.oba-phase-header .oba-phase-icon {
	display: inline-flex;
}

.oba-tip {
	position: absolute;
	background: #0f172a;
	color: #fff;
	padding: 8px 10px;
	border-radius: 8px;
	font-size: 12px;
	line-height: 1.4;
	box-shadow: 0 8px 20px rgba(0,0,0,0.2);
	transform: translate(-50%, -8px);
	white-space: nowrap;
	z-index: 140000;
	display: none;
}

.oba-phase-body {
	margin-top: 14px;
}

.oba-phase-card.is-collapsed .oba-phase-body {
	display: none;
}

.oba-lock-overlay {
	position: absolute;
	inset: 0;
	background: rgba(255,255,255,0.85);
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
	font-weight: 700;
	color: #991b1b;
	z-index: 10;
}

.oba-bar {
	background: #f1f5f9;
	border-radius: 8px;
	height: 10px;
	overflow: hidden;
	margin: 10px 0;
}

.oba-bar span {
	display: block;
	height: 100%;
	background: #3b82f6;
	width: 0%;
	transition: width 0.3s ease;
}

.oba-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 700;
}

.oba-badge.success {
	background: #ecfdf3;
	color: #166534;
}

.oba-badge.danger {
	background: #fef2f2;
	color: #991b1b;
}

.oba-badge.info {
	background: #eff6ff;
	color: #1d4ed8;
}

.oba-actions {
	margin-top: 14px;
}

.oba-actions .button,
.oba-actions .button-primary {
	width: 100%;
	padding: 12px;
	font-size: 15px;
}

.oba-autobid-toggle {
	background: #e2e8f0;
	color: #0f172a;
	border-color: #cbd5e1;
	font-weight: 700;
	transition: all 0.15s ease;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.oba-autobid-toggle.is-on {
	background: linear-gradient(90deg, #0ea5e9 0%, #2563eb 100%);
	color: #fff;
	border-color: #1d4ed8;
	box-shadow: 0 8px 18px rgba(37, 99, 235, 0.25);
}

.oba-autobid-toggle[disabled] {
	opacity: 0.5;
	cursor: not-allowed;
	box-shadow: none;
}

.oba-autobid-status {
	background: linear-gradient(90deg, #0ea5e9 0%, #22d3ee 100%);
	color: #000;
	border-radius: 8px;
	padding: 10px 12px;
	font-size: 15px;
	display: inline-block;
	box-shadow: 0 6px 16px rgba(14, 165, 233, 0.25);
}

.oba-history {
	list-style: none;
	padding: 0;
	margin: 10px 0;
}

.oba-history-head {
	display: grid;
	grid-template-columns: 1fr 0.7fr 0.8fr;
	gap: 8px;
	font-size: 12px;
	font-weight: 700;
	color: #475569;
	margin-top: 12px;
	margin-bottom: 4px;
	padding: 0 4px;
}

.oba-history li {
	display: grid;
	grid-template-columns: 1fr 0.7fr 0.8fr;
	gap: 8px;
	padding: 8px 10px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	margin-bottom: 6px;
	background: #f8fafc;
	font-size: 13px;
	color: #0f172a;
}

.oba-history-auto {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: #0ea5e9;
	font-weight: 700;
	font-size: 12px;
}

.oba-timer-large {
	font-size: 28px;
	font-weight: 800;
	color: #0f172a;
	margin: 8px 0;
}

.oba-legend {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
}
.oba-legend .oba-card {
	padding: 10px 12px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.oba-legend .oba-legend-label {
	font-size: 13px;
	color: #475569;
	margin-right: 8px;
}
.oba-legend .oba-legend-value {
	font-size: 15px;
	font-weight: 700;
	color: #0f172a;
}
.oba-legend .oba-bidder-status-card .oba-legend-value {
	font-size: 16px;
	padding: 10px 12px;
	border-radius: 10px;
}
.oba-bid-cost-inline {
	display: inline-flex;
	align-items: center;
	gap: 4px;
}
.oba-bid-cost-inline .amount,
.oba-bid-cost-inline .woocommerce-Price-amount,
.oba-bid-cost-inline .woocommerce-Price-currencySymbol {
	display: inline !important;
}

.oba-legend .oba-card {
	padding: 12px;
}

.oba-membership-links {
	margin-top: 10px;
	padding: 12px;
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	background: #f8fafc;
}
.oba-membership-links .oba-membership-message {
	font-weight: 600;
	margin-bottom: 8px;
}
.oba-membership-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.oba-membership-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 14px;
	border-radius: 10px;
	border: none;
	color: #fff;
	text-decoration: none;
	font-weight: 700;
}
.oba-membership-btn-silver { background: #94a3b8; }
.oba-membership-btn-bronze { background: #b45309; }
.oba-membership-btn-gold { background: #d97706; }
.oba-membership-btn-dark { background: #0f172a; }

.oba-outcome {
	border: 1px solid transparent;
	border-radius: 10px;
	padding: 14px;
	margin: 12px 0;
}

.oba-outcome--win {
	background: #ecfdf3;
	border-color: #34d399;
	color: #065f46;
}

.oba-outcome--lose {
	background: #fef2f2;
	border-color: #fca5a5;
	color: #7f1d1d;
}

.oba-win-save,
.oba-lose-save {
	margin-top: 8px;
	font-weight: 700;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	align-items: center;
}

.oba-save-highlight {
	background: #22c55e;
	color: #fff;
	padding: 4px 8px;
	border-radius: 10px;
	box-shadow: 0 6px 14px rgba(34, 197, 94, 0.3);
}

.oba-lose-save .oba-save-highlight {
	background: #0ea5e9;
	box-shadow: 0 6px 14px rgba(14, 165, 233, 0.3);
}

.oba-refund-note {
	margin: 6px 0 6px;
	font-size: 13px;
	opacity: 0.9;
}

.oba-alert {
	padding: 10px 12px;
	border-radius: 10px;
	margin: 12px 0;
	font-size: 14px;
}

.oba-alert-info {
	background: #e0f2fe;
	color: #0c4a6e;
}

.oba-alert-error {
	background: #fee2e2;
	color: #991b1b;
}

.oba-toast {
	position: fixed;
	left: 50%;
	top: 20px;
	transform: translateX(-50%);
	background: #0f766e;
	color: #fff;
	padding: 10px 14px;
	border-radius: 6px;
	box-shadow: 0 8px 18px rgba(0,0,0,0.2);
	z-index: 120010;
	display: none;
}

.oba-share-buttons {
	display: flex;
	gap: 8px;
	margin-top: 6px;
	flex-wrap: wrap;
}

.oba-share-buttons .oba-share-btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	padding: 8px 10px;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
	color: #0f172a;
	background: #fff;
	cursor: pointer;
}

.oba-share-buttons .oba-share-btn:hover {
	background: #f1f5f9;
}
.oba-toast.oba-error {
	background: #b91c1c;
}

.oba-modal-overlay,
.oba-credit-overlay,
.oba-info-overlay,
.oba-terms-overlay {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.4);
	z-index: 120000;
	display: none;
}

.oba-claim-modal,
.oba-credit-modal,
.oba-info-modal,
.oba-terms-modal {
	position: fixed;
	left: 50%;
	top: 120px;
	transform: translateX(-50%);
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 20px 40px rgba(0,0,0,0.25);
	z-index: 120001;
	min-width: 280px;
	max-width: 90%;
	max-height: calc(100vh - 200px);
	overflow: auto;
	padding: 18px;
	display: none;
}

.oba-claim-modal h4,
.oba-info-modal h4 {
	margin-top: 0;
}

.oba-claim-options {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 12px 0;
}

.oba-claim-error {
	color: #b91c1c;
	margin-top: 8px;
	display: none;
}

.oba-credit-modal__inner,
.oba-info-modal__inner,
.oba-terms-modal__inner {
	position: relative;
}

.oba-autobid-modal,
.oba-autobid-overlay {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: none;
}
.oba-autobid-overlay {
	background: rgba(0,0,0,0.4);
	z-index: 120000;
}
.oba-autobid-modal {
	z-index: 120001;
	display: none;
}
.oba-autobid-modal__inner {
	position: fixed;
	left: 50%;
	top: 120px;
	transform: translateX(-50%);
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 20px 40px rgba(0,0,0,0.25);
	min-width: 280px;
	max-width: 90%;
	max-height: calc(100vh - 200px);
	overflow: auto;
	padding: 18px;
}

.oba-credit-close,
.oba-info-close,
.oba-terms-close {
	position: absolute;
	top: 8px;
	right: 10px;
	background: transparent;
	border: 0;
	font-size: 20px;
	cursor: pointer;
}

.oba-credit-options {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-top: 12px;
}

.oba-credit-options a {
	display: inline-block;
	padding: 10px 12px;
	border-radius: 8px;
	background: #0f172a;
	color: #fff;
	text-decoration: none;
	font-weight: 600;
	box-shadow: 0 4px 10px rgba(0,0,0,0.12);
}

.oba-info-content ol {
	padding-left: 18px;
	margin: 0;
}

.oba-info-content li {
	margin-bottom: 8px;
}


.oba-terms {
	margin: 10px 0;
}

.oba-pill-row {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	margin-bottom: 12px;
	flex-wrap: wrap;
}

.oba-credit-pill {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: #111827;
	color: #fff;
	padding: 10px 14px;
	border-radius: 999px;
	font-weight: 700;
	box-shadow: 0 8px 20px rgba(15, 23, 42, 0.18);
}

.oba-credit-label {
	opacity: 0.85;
	font-weight: 600;
}

.oba-credit-amount {
	font-weight: 700;
}
.oba-points-add { color: #16a34a; font-weight: 700; }
.oba-points-deduct { color: #dc2626; font-weight: 700; }

.oba-credit-floating {
	position: fixed;
	right: 16px;
	bottom: 16px;
	z-index: 9999;
}

.oba-membership-overlay {
	position: absolute;
	inset: 0;
	display: none;
	background: rgba(255, 255, 255, 0.85);
	backdrop-filter: blur(6px);
	z-index: 9000;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 20px;
	min-height: 100%;
	pointer-events: auto;
}

.oba-points-overlay {
	position: absolute;
	inset: 0;
	display: none;
	background: rgba(255, 255, 255, 0.85);
	backdrop-filter: blur(6px);
	z-index: 9999;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 20px;
	min-height: 100%;
	pointer-events: auto;
}

.oba-lock-overlay {
	position: absolute;
	inset: 0;
	display: none;
	background: rgba(255, 255, 255, 0.8);
	backdrop-filter: blur(4px);
	z-index: 5;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 20px;
}

.oba-lock-overlay__inner {
	background: rgba(255, 255, 255, 0.95);
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 14px 16px;
	box-shadow: 0 10px 25px rgba(15, 23, 42, 0.08);
}

.oba-lock-title {
	font-weight: 700;
	margin-bottom: 12px;
	color: #111827;
}

.oba-membership-links a {
	display: inline-block;
	margin: 4px;
	padding: 10px 14px;
	border-radius: 10px;
	border: 1px solid #111827;
	background: #111827;
	color: #fff;
	text-decoration: none;
	font-weight: 600;
}

.oba-membership-links a:nth-child(2) { background: #2563eb; border-color: #2563eb; }
.oba-membership-links a:nth-child(3) { background: #16a34a; border-color: #16a34a; }

.oba-membership-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 6px;
}

.oba-terms a {
	text-decoration: underline;
}

.oba-terms-error {
	border: 1px solid #ef4444;
	padding: 8px;
	border-radius: 6px;
	box-shadow: 0 8px 12px 0 rgba(239, 68, 68, 0.35);
}

.oba-lobby-count {
	margin: 6px 0 6px;
	color: #0f172a;
	font-weight: 600;
}

.oba-register-note {
	margin-top: 8px;
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}

.oba-register-note .oba-registered-note {
	font-size: 14px;
	color: #0f172a;
}
.oba-points-row {
	margin: 6px 0;
	font-weight: 600;
}

.oba-pending-banner {
	margin-bottom: 10px;
	padding: 10px 12px;
	background: #fef9c3;
	border: 1px solid #f59e0b;
	color: #92400e;
	border-radius: 10px;
	font-weight: 600;
}

.oba-login-cta {
	margin-top: 10px;
	padding: 12px;
	border: 1px solid #e5e7eb;
	background: #fff7ed;
	border-radius: 10px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}
.oba-login-cta__text {
	font-size: 13px;
	color: #7c2d12;
	font-weight: 600;
}
.oba-login-cta .button {
	margin-left: auto;
}

.oba-last-refreshed {
	display: none;
}

@media (max-width: 960px) {
	.oba-layout {
		grid-template-columns: 1fr;
	}
	.oba-explainer {
		grid-template-columns: repeat(2, 1fr);
	}
	.oba-shortcode-custom {
		grid-template-columns: 1fr;
		padding: 0 12px 20px;
		max-width: 100%;
		width: 100%;
		overflow: hidden;
	}
	.oba-sc-left,
	.oba-sc-right {
		max-height: none;
		overflow: visible;
		display: contents;
	}
	.oba-sc-right {
		position: static;
		top: auto;
	}
	/* Mobile order: Title, Media, Buy, Auction, Details */
	.oba-sc-header { order: 1; }
	.oba-sc-gallery { order: 2; }
	.oba-sc-auction { order: 3; }
	.oba-sc-info { order: 4; }
	.oba-sc-divider.inline { order: 5; }
	.oba-sc-buy { order: 6; }
	/* Media sizing on mobile */
	.oba-media-main { width: 100%; }
	.oba-media-main img { max-width: 100%; width: 100%; height: auto; }
	.oba-sc-card { width: 100%; box-sizing: border-box; }
}

@media (max-width: 640px) {
	.oba-auction-wrap {
		padding: 10px;
	}
	.oba-explainer {
		grid-template-columns: 1fr;
	}
	.oba-credit-pill {
		padding: 8px 12px;
		font-size: 12px;
	}
	/* Wrap buy row to prevent overflow on very small screens */
	.oba-buy-inline { flex-wrap: wrap !important; gap: 10px !important; }
	.oba-buy-price { flex: 1 1 100%; }
	.oba-price-pill { width: 100%; justify-content: center; }
	.oba-buy-form form.cart { flex-wrap: wrap !important; }
	body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy .single_add_to_cart_button {
		width: 100% !important;
	}
	body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy .quantity {
		width: 100% !important;
		max-width: 100% !important;
		justify-content: center;
	}
	body.single-product.product-type-auction .oba-shortcode-custom .oba-sc-buy .quantity input.qty {
		max-width: 120px !important;
	}
}
.oba-auction-wrap[data-auction-tab="auction"] .oba-auction-panel .price,
.oba-auction-wrap[data-auction-tab="auction"] .oba-auction-panel p.price,
.oba-auction-wrap[data-auction-tab="auction"] .oba-auction-panel .woocommerce-Price-amount,
.oba-auction-wrap[data-auction-tab="auction"] .oba-auction-panel .woocommerce-price-suffix { display:none !important; }
.oba-auction-wrap[data-auction-tab="auction"] .oba-buy-panel .price,
.oba-auction-wrap[data-auction-tab="auction"] .oba-buy-panel p.price,
.oba-auction-wrap[data-auction-tab="auction"] .oba-buy-panel .woocommerce-Price-amount,
.oba-auction-wrap[data-auction-tab="auction"] .oba-buy-panel .woocommerce-price-suffix,
.oba-auction-wrap[data-auction-tab="auction"] .oba-buy-panel .price bdi { display:flex !important; visibility:visible !important; opacity:1 !important; }

/* Hide theme title/price/cart in the default summary for auction products only (we re-render inside Buy panel) */
.single-product.product-type-auction .summary .product_title:not(.oba-buy-panel *),
.single-product.product-type-auction .summary p.price:not(.oba-buy-panel *),
.single-product.product-type-auction .summary .price:not(.oba-buy-panel *),
.single-product.product-type-auction .summary form.cart:not(.oba-buy-panel *),
.single-product.product-type-auction .summary .single_add_to_cart_button:not(.oba-buy-panel *),
.single-product.product-type-auction .summary .quantity:not(.oba-buy-panel *),
.single-product.product-type-auction .summary .woocommerce-Price-amount:not(.oba-buy-panel *),
.single-product.product-type-auction .summary .woocommerce-price-suffix:not(.oba-buy-panel *)
{ display:none !important; }
